/* ==========================================================================
   upclients · Zeiterfassung
   Hero mit Timer + Zeitenliste · Erfassen · Arbeitszeitmodell · Änderungsverlauf ·
   Team heute · Von der Stunde zur Rechnung · Export · Zusammenfluss
   Klassen tragen das Präfix zt- (Fragen: s-faq aus seiten.css).
   ========================================================================== */

@keyframes ztPop{0%{opacity:0;transform:translateY(-14px) scale(.96)}60%{opacity:1;transform:translateY(2px) scale(1.01)}100%{opacity:1;transform:none}}
@keyframes ztPulse{0%{box-shadow:0 0 0 0 rgba(131,211,158,.55)}100%{box-shadow:0 0 0 9px rgba(131,211,158,0)}}
@keyframes ztMarch{to{background-position:10px 0}}
@keyframes ztFly{0%{opacity:0;transform:translateX(-22px) scale(.96)}100%{opacity:1;transform:none}}

/* =====================================================================
   1 · HERO
   ===================================================================== */
.zt-hero{position:relative;color:#fff;overflow:clip;isolation:isolate;padding:calc(var(--hdr) + clamp(20px,4vh,50px)) 0 clamp(50px,8vh,90px)}
.zt-hero::before{content:"";position:absolute;left:50%;bottom:-6%;width:150vw;height:70vh;transform:translateX(-50%);background:radial-gradient(48% 40% at 50% 70%,rgba(121,164,242,.4),rgba(92,136,215,.14) 48%,rgba(92,136,215,0) 74%);pointer-events:none;z-index:-1;animation:dawn 9s ease-in-out infinite alternate}
.zt-hero__grid{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:clamp(24px,4vw,64px);align-items:center;min-height:min(80vh,780px)}
.zt-hero__text{max-width:600px}
.zt-eb{color:var(--p200);letter-spacing:.2em}
.zt-title{font-size:clamp(38px,4.4vw,70px);line-height:1.02;letter-spacing:-.043em;font-weight:800;margin-top:24px;text-wrap:balance;opacity:0;animation:fadeUp 1.1s var(--ease) .1s forwards}
.zt-sub{font-size:clamp(17px,1.4vw,20px);line-height:1.6;color:var(--p200);margin-top:24px;max-width:44ch;opacity:0;animation:fadeUp 1s var(--ease) .4s forwards}
.zt-cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:32px;opacity:0;animation:fadeUp 1s var(--ease) .55s forwards}
.zt-fine{font-size:13px;color:rgba(197,218,255,.72);margin-top:16px;opacity:0;animation:fadeUp 1s var(--ease) .7s forwards}
.rm .zt-title,.rm .zt-sub,.rm .zt-cta,.rm .zt-fine{opacity:1}

.zt-stage{position:relative;width:100%;max-width:560px;margin-left:auto;opacity:0;animation:fadeUp 1.2s var(--ease) .3s forwards}
.rm .zt-stage{opacity:1}
.zt-demo{text-align:center;font-size:12px;color:rgba(197,218,255,.55);margin-top:12px}

/* Timer */
.zt-timer{box-shadow:inset 0 0 0 .5px rgba(255,255,255,.26),inset 0 1px 0 0 rgba(255,255,255,.2),0 46px 90px -34px rgba(4,10,24,.55),0 18px 60px -30px rgba(4,10,24,.35);background:linear-gradient(160deg,rgba(255,255,255,.13) 0%,rgba(255,255,255,.05) 40%,rgba(255,255,255,.035) 70%,rgba(255,255,255,.07) 100%),rgba(20,30,48,.14);background-clip:padding-box;display:flex;align-items:center;gap:clamp(16px,2.4vw,28px);padding:20px 24px;border-radius:30px;position:relative;z-index:2}
.zt-timer__ring{position:relative;flex:none;width:clamp(128px,14vw,156px);aspect-ratio:1}
.zt-timer__ring svg{width:100%;height:100%;transform:rotate(-90deg);overflow:visible;filter:drop-shadow(0 0 7px rgba(154,190,255,.55))}
.zt-timer__ring circle{fill:none;stroke-width:7;stroke-linecap:round}
.zt-timer__ring .bg{stroke:rgba(255,255,255,.14)}
.zt-timer__ring .fg{stroke:#9ABEFF;stroke-dasharray:100;stroke-dashoffset:100}
.zt-timer__c{position:absolute;inset:0;display:grid;place-content:center;text-align:center}
.zt-timer__c b{font-size:clamp(20px,2.1vw,26px);letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.zt-timer__c small{margin-top:3px;font-size:10.5px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--p300)}
.zt-timer[data-s="1"] .zt-timer__c small{color:#83D39E}
.zt-timer__side{min-width:0;flex:1}
.zt-timer__job small{display:block;font-size:10.5px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--p300)}
.zt-timer__job b{display:block;margin-top:3px;font-size:14.5px;line-height:1.35;letter-spacing:-.01em}
.zt-timer__btns{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}
.zt-tb{display:inline-flex;align-items:center;gap:7px;padding:9px 15px 9px 12px;border-radius:999px;font-size:13px;font-weight:800;color:var(--p100);background:rgba(255,255,255,.09);box-shadow:inset 0 0 0 1px rgba(255,255,255,.18);transition:background .3s,color .3s,box-shadow .3s,transform .25s var(--spring)}
.zt-tb svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.zt-tb.is-on{background:#fff;color:var(--i950);box-shadow:0 12px 24px -10px rgba(154,190,255,.8)}
.zt-tb.is-press{transform:scale(.92)}
.zt-tb--go.is-on{background:var(--ok-mid);color:#0A2A1C}

/* Zeitenliste */
.zt-list{position:relative;margin-top:14px;padding:18px 18px 12px;border-radius:30px;background:linear-gradient(180deg,#fff,#F5F8FE);color:var(--i950);box-shadow:0 50px 90px -40px rgba(3,10,30,.85),inset 0 0 0 1px rgba(20,30,48,.06)}
.zt-list__hd{display:flex;align-items:center;gap:12px;padding:0 4px 12px;border-bottom:1px solid var(--i100)}
.zt-list__hd .gi{--s:38px}
.zt-list__hd b{display:block;font-size:15px;letter-spacing:-.015em}
.zt-list__hd small{display:block;font-size:12px;color:var(--i700)}
.zt-list__hd .s-chip{margin-left:auto}
.zt-rows{display:grid;gap:0}
.zt-row{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:12px;align-items:start;padding:11px 4px;border-bottom:1px solid var(--i100)}
.zt-row:last-child{border-bottom:0}
.zt-row time{font-size:11.5px;font-weight:800;line-height:1.25;color:var(--i700);font-variant-numeric:tabular-nums}
.zt-row>div:nth-child(2){min-width:0;display:flex;flex-wrap:wrap;align-items:center;gap:2px 8px}
.zt-row b{font-size:13px;letter-spacing:-.005em}
.zt-row small{font-size:12px;color:var(--i700)}
.zt-row p{flex-basis:100%;font-size:12.5px;line-height:1.4;color:var(--i800)}
.zt-row__h{text-align:right;display:grid;justify-items:end;gap:4px}
.zt-row__h em{font-style:normal;font-size:14.5px;font-weight:800;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.zt-mark{display:inline-flex;align-items:center;gap:4px;font-size:10.5px;font-weight:800;color:var(--ok)}
.zt-mark svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.zt-row--new{display:none}
.zt-row--new.is-in{display:grid;animation:ztPop .7s var(--spring) both;background:linear-gradient(90deg,rgba(221,245,229,.8),rgba(221,245,229,0));border-radius:14px}

.zt-feats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:clamp(36px,6vh,64px)}
.zt-feat{display:flex;gap:16px;align-items:flex-start;padding:22px 24px;border-radius:24px}
.zt-feat .gi{--s:54px}
.zt-feat h3{font-size:18px;font-weight:800;letter-spacing:-.02em}
.zt-feat p{font-size:14.5px;line-height:1.55;color:var(--p200);margin-top:5px}

/* =====================================================================
   Abschnitte allgemein
   ===================================================================== */
.zt-sec{position:relative;padding:clamp(90px,12vh,140px) 0}
.zt-split{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(28px,5vw,80px);align-items:center}
.zt-split--rev{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr)}
.zt-split--top{align-items:start;margin-top:clamp(40px,6vh,64px)}
.zt-split--gap{margin-top:clamp(70px,11vh,120px)}
.zt-split--wide{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}
.zt-sec .sec-head{max-width:1000px}
.zt-sec .sec-head .h2{font-size:clamp(32px,4.1vw,60px)}
.zt-split--rev.zt-split--top{align-items:center}
.zt-split__text .h2{margin-top:18px;font-size:clamp(30px,3.5vw,50px)}
.zt-h3{font-size:clamp(24px,2.5vw,36px);line-height:1.1;letter-spacing:-.035em;font-weight:800;text-wrap:balance}
.zt-p{font-size:clamp(15.5px,1.15vw,17px);line-height:1.7;color:var(--i800);margin-top:16px;max-width:56ch;text-wrap:pretty}
.zt-h3+.zt-p{margin-top:16px}
.zt-hint{margin-top:20px;font-size:14px;color:var(--i700)}
.zt-cap{margin-top:14px;font-size:11.5px;color:var(--i700);text-align:center}

/* Formular */
.zt-form{width:100%;max-width:560px;margin-left:auto;padding:22px 24px 18px;border-radius:30px;background:linear-gradient(180deg,#fff,#F7F9FD);box-shadow:0 50px 90px -50px rgba(20,40,90,.6),inset 0 0 0 1px rgba(20,30,48,.07)}
.zt-form__hd{display:flex;align-items:center;gap:12px;padding-bottom:14px;border-bottom:1px solid var(--i100)}
.zt-form__hd .gi{--s:40px}
.zt-form__hd b{font-size:17px;letter-spacing:-.02em}
.zt-field{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid var(--i100)}
.zt-field--col{display:block}
.zt-field__k{display:block;font-size:10.5px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--i700)}
.zt-field__k em{font-style:normal;font-weight:700;letter-spacing:0;text-transform:none;color:var(--i400);margin-left:6px}
.zt-date{font-size:15px;font-variant-numeric:tabular-nums}
.zt-arts{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}
.zt-arts button{padding:7px 13px;border-radius:999px;background:#fff;font-size:13px;font-weight:700;color:var(--i800);box-shadow:inset 0 0 0 1px rgba(20,30,48,.12);transition:background .3s,color .3s,box-shadow .3s,transform .35s var(--spring)}
.zt-arts button:hover{transform:translateY(-1px)}
.zt-arts button.is-on{background:var(--p800);color:#fff;box-shadow:0 10px 20px -10px rgba(49,83,146,.9)}
.zt-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px}
.zt-num{padding:10px 12px;border-radius:18px;background:var(--i50);box-shadow:inset 0 0 0 1px rgba(20,30,48,.06)}
.zt-num>span{display:block;font-size:10px;font-weight:800;letter-spacing:.11em;text-transform:uppercase;color:var(--i700)}
.zt-num>div{display:flex;align-items:center;justify-content:space-between;gap:4px;margin-top:6px}
.zt-num b{font-size:20px;letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.zt-num button{flex:none;width:28px;height:28px;border-radius:50%;background:#fff;font-size:17px;font-weight:700;line-height:1;color:var(--p800);box-shadow:inset 0 0 0 1px rgba(20,30,48,.12),0 5px 10px -7px rgba(20,30,48,.5);transition:background .25s,transform .35s var(--spring)}
.zt-num button:hover{background:var(--p100);transform:scale(1.1)}
.zt-req{display:flex;gap:9px;align-items:flex-start;margin-top:12px;font-size:12.5px;line-height:1.5;color:var(--i700);transition:opacity .3s}
.zt-req svg{flex:none;width:20px;height:20px;padding:3px;border-radius:50%;background:var(--ok-soft);fill:none;stroke:var(--ok);stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}
.zt-req.is-off{opacity:.35}
.zt-out{display:flex;align-items:baseline;justify-content:space-between;margin-top:10px;padding:12px 16px;border-radius:16px;background:linear-gradient(160deg,var(--p800),var(--p900));color:#fff}
.zt-out .zt-field__k{color:var(--p200)}
.zt-out b{font-size:26px;letter-spacing:-.035em;font-variant-numeric:tabular-nums}
.zt-seg{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}
.zt-seg button{padding:8px 14px;border-radius:14px;background:#fff;font-size:13px;font-weight:700;color:var(--i800);text-align:left;box-shadow:inset 0 0 0 1px rgba(20,30,48,.12);transition:background .3s,color .3s,box-shadow .3s}
.zt-seg button.is-on{background:var(--p100);color:var(--p900);box-shadow:inset 0 0 0 1.5px var(--p700)}
.zt-auf{display:flex;align-items:center;gap:8px;margin-top:10px;font-size:12.5px;font-weight:700;color:var(--ok);transition:opacity .3s}
.zt-auf svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.zt-auf.is-off{color:var(--i700)}
.zt-go{display:block;width:100%;margin-top:16px;padding:14px 20px;border-radius:14px;background:var(--p800);color:#fff;font-weight:800;font-size:15px;box-shadow:0 18px 30px -16px rgba(49,83,146,.9);transition:background .3s,transform .4s var(--spring)}
.zt-go:hover{background:var(--p700);transform:translateY(-2px)}
.zt-go:active{transform:scale(.98)}
.zt-go--sm{display:inline-block;width:auto;margin-top:14px;padding:10px 18px;font-size:13.5px;border-radius:12px}
.zt-done{display:grid;gap:8px;margin-top:12px}
.zt-done li{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;padding:9px 12px;border-radius:14px;background:var(--ok-soft);font-size:13px;animation:ztPop .6s var(--spring) both}
.zt-done b{font-weight:800}
.zt-done small{display:block;font-size:11.5px;color:var(--i800)}
.zt-done em{font-style:normal;font-weight:800;font-variant-numeric:tabular-nums}

/* Arbeitszeitmodell */
.zt-model{width:100%;max-width:560px;margin-left:0;margin-right:auto;padding:20px 22px 16px;border-radius:30px;background:linear-gradient(180deg,#fff,#F7F9FD);box-shadow:0 50px 90px -50px rgba(20,40,90,.6),inset 0 0 0 1px rgba(20,30,48,.07)}
.zt-model__hd{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:12px;border-bottom:1px solid var(--i100)}
.zt-model__hd b{display:block;font-size:17px;letter-spacing:-.02em}
.zt-model__hd small{display:block;font-size:12.5px;color:var(--i700)}
.zt-model__th,.zt-day{display:grid;grid-template-columns:minmax(0,1.3fr) .8fr .8fr 1.1fr .9fr;gap:8px;align-items:center;text-align:left;padding:0 6px}
.zt-model__th{padding-top:12px;padding-bottom:8px;font-size:10px;font-weight:800;letter-spacing:.11em;text-transform:uppercase;color:var(--i400)}
.zt-model__th span:last-child,.zt-day b{text-align:right}
.zt-day{width:100%;padding-top:10px;padding-bottom:10px;border-radius:12px;font-size:13.5px;color:var(--i950);font-variant-numeric:tabular-nums;transition:background .25s,color .25s,opacity .25s}
.zt-day span:first-child{font-weight:700}
.zt-day:hover{background:var(--i50)}
.zt-day:not(.is-on){color:var(--i400)}
.zt-day b{font-weight:800}
.zt-day.is-on b{color:var(--p800)}
.zt-model__ft{display:flex;justify-content:space-between;align-items:baseline;margin-top:8px;padding:14px 16px;border-radius:16px;background:linear-gradient(160deg,var(--p800),var(--p900));color:#fff;font-weight:700}
.zt-model__ft b{font-size:24px;letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.zt-models{width:100%;max-width:560px;margin-left:auto;padding:20px 22px 16px;border-radius:30px;background:linear-gradient(180deg,#fff,#F7F9FD);box-shadow:0 50px 90px -50px rgba(20,40,90,.6),inset 0 0 0 1px rgba(20,30,48,.07)}
.zt-models__hd{display:flex;align-items:center;gap:12px;padding-bottom:12px;border-bottom:1px solid var(--i100)}
.zt-models__hd .gi{--s:40px}
.zt-models__hd b{font-size:17px;letter-spacing:-.02em}
.zt-mod{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:10px;padding:14px 16px;border-radius:18px;background:#fff;box-shadow:0 12px 22px -18px rgba(20,30,48,.45),inset 0 0 0 1px rgba(20,30,48,.07);transition:transform .45s var(--ease)}
.zt-mod:hover{transform:translateX(4px)}
.zt-mod.is-std{box-shadow:0 12px 22px -18px rgba(20,30,48,.45),inset 0 0 0 1.5px var(--p600)}
.zt-mod b{display:block;font-size:14.5px;letter-spacing:-.01em}
.zt-mod small{display:block;font-size:12.5px;color:var(--i700);margin-top:1px}
.zt-mod__r{display:grid;justify-items:end;gap:3px;text-align:right}
.zt-mod__r em{font-style:normal;font-weight:800;font-size:14px;font-variant-numeric:tabular-nums}
.zt-log{width:100%;max-width:560px;margin-left:0;margin-right:auto;padding:20px 22px 16px;border-radius:30px;background:linear-gradient(180deg,#fff,#F7F9FD);box-shadow:0 50px 90px -50px rgba(20,40,90,.6),inset 0 0 0 1px rgba(20,30,48,.07)}
.zt-log__hd{display:flex;align-items:center;gap:12px;padding-bottom:12px;border-bottom:1px solid var(--i100)}
.zt-log__hd .gi{--s:40px}
.zt-log__hd b{display:block;font-size:16px;letter-spacing:-.015em}
.zt-log__hd small{display:block;font-size:12.5px;color:var(--i700)}
.zt-log__l{display:grid;gap:0;margin-top:6px}
.zt-log__l li{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;padding:12px 0;border-bottom:1px dashed rgba(20,30,48,.13)}
.zt-log__l b{font-size:13.5px}
.zt-log__l small{margin-left:8px;font-size:12px;color:var(--i700)}
.zt-log__l p{margin-top:3px;font-size:13.5px;color:var(--i800)}
.zt-log__l s{color:var(--i400)}
.zt-log__l span{color:var(--i400);margin:0 4px}
.zt-log__l em{font-style:normal;font-weight:800;color:var(--i950)}
.zt-log__lock{display:flex;align-items:center;gap:8px;margin-top:12px;font-size:12.5px;color:var(--i700)}
.zt-log__lock svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}

/* Team heute */
.zt-team{margin-top:clamp(36px,5vh,56px);padding:clamp(14px,2vw,24px);border-radius:32px;background:linear-gradient(180deg,#fff,#F7F9FD);box-shadow:0 50px 90px -50px rgba(20,40,90,.6),inset 0 0 0 1px rgba(20,30,48,.07)}
.zt-team__hd{display:flex;flex-wrap:wrap;gap:10px 20px;justify-content:space-between;align-items:center;padding:4px 6px 16px}
.zt-team__hd b{display:block;font-size:19px;letter-spacing:-.02em}
.zt-team__hd small{display:block;margin-top:2px;font-size:12.5px;color:var(--i700)}
.zt-team__st{display:flex;gap:8px}
.zt-team__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.zt-pc{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr) auto;column-gap:12px;row-gap:10px;align-items:center;padding:16px;border-radius:22px;background:#fff;box-shadow:0 14px 26px -20px rgba(20,30,48,.5),inset 0 0 0 1px rgba(20,30,48,.08);transition:transform .45s var(--ease),box-shadow .3s}
.zt-pc:hover{transform:translateY(-4px)}
.zt-pc[data-st="done"]{background:linear-gradient(180deg,#F1FBF4,#fff);box-shadow:0 14px 26px -20px rgba(24,122,84,.45),inset 0 0 0 1px rgba(131,211,158,.6)}
.zt-pc--none{background:#F5F7FB;box-shadow:inset 0 0 0 1px rgba(20,30,48,.06)}
.zt-pc .av{width:38px;height:38px;font-size:12px}
.av--n{background:var(--i300)}
.zt-pc__t b{display:block;font-size:14px;letter-spacing:-.01em}
.zt-pc__s{display:block;font-size:12px;color:var(--i700)}
.zt-pc__s--ok{color:var(--ok);font-weight:800}
.zt-pc__s--none{color:var(--i400)}
.zt-pc__n{text-align:right;line-height:1.1}
.zt-pc__n b{font-size:20px;letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.zt-pc__n small{font-size:12px;font-weight:700}
.zt-pc__n span{display:block;margin-top:2px;font-size:11.5px;color:var(--i700)}
.zt-pc__bar{grid-column:1/-1;height:7px;border-radius:7px;background:var(--i100);overflow:hidden}
.zt-pc__bar i{display:block;height:100%;width:var(--w);border-radius:7px;background:linear-gradient(90deg,var(--p600),var(--p400));transform-origin:left;transform:scaleX(0);transition:transform 1.3s var(--ease)}
.zt-pc__bar--ok i{background:linear-gradient(90deg,var(--ok),var(--ok-mid))}
.is-in .zt-pc__bar i,.zt-team.is-in .zt-pc__bar i{transform:none}
.zt-pc__timer{grid-column:1/-1;display:flex;align-items:center;gap:8px;padding:7px 10px;border-radius:12px;font-size:12px;font-weight:800;font-variant-numeric:tabular-nums}
.zt-pc__timer i{flex:none;width:8px;height:8px;border-radius:50%}
.zt-pc__timer--run{background:var(--ok-soft);color:var(--ok)}
.zt-pc__timer--run i{background:var(--ok);animation:ztPulse 1.4s ease-out infinite}
.zt-pc__timer--pause{background:#FBF1D1;color:#7A5F00}
.zt-pc__timer--pause i{background:#D7A82B}
.zt-notes{display:grid;gap:14px;max-width:820px;margin:clamp(30px,4vh,44px) auto 0}
.zt-notes p{display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px;font-size:clamp(15px,1.15vw,16.5px);line-height:1.65;color:var(--i800)}
.zt-notes b{color:var(--i950)}
.zt-dot{width:12px;height:12px;margin-top:8px;border-radius:50%}
.zt-dot--ok{background:var(--ok-mid)}
.zt-dot--run{background:linear-gradient(135deg,var(--ok),#D7A82B)}
.zt-dot--p{background:var(--p600)}

/* Von der Stunde zur Rechnung */
.zt-bill{position:relative;display:grid;grid-template-columns:minmax(0,1.15fr) 34px minmax(0,.85fr);gap:0;align-items:stretch;width:100%;max-width:700px;margin-left:auto;padding:22px;border-radius:32px;background:linear-gradient(180deg,#fff,#F4F7FC);box-shadow:0 50px 90px -50px rgba(20,40,90,.6),inset 0 0 0 1px rgba(20,30,48,.07)}
.zt-bill__lbl{margin-bottom:10px;font-size:10.5px;font-weight:800;letter-spacing:.13em;text-transform:uppercase;color:var(--i700)}
.zt-bill__l ul,.zt-bill__r ul{display:grid;gap:8px}
.zt-bill__l li{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:2px 10px;align-items:center;padding:10px 12px;border-radius:16px;background:#fff;box-shadow:0 10px 20px -16px rgba(20,30,48,.45),inset 0 0 0 1px rgba(20,30,48,.07);transition:box-shadow .5s,background .5s}
.zt-bill__l time{font-size:11.5px;font-weight:800;color:var(--i700);font-variant-numeric:tabular-nums}
.zt-bill__l small{display:block;margin-top:3px;font-size:11.5px;color:var(--i700)}
.zt-bill__l em{font-style:normal;font-weight:800;font-size:14px;font-variant-numeric:tabular-nums}
.zt-bill__l .zt-mark{grid-column:1/-1;justify-self:end;margin-top:2px}
.zt-mark--open{display:none}
.zt-bill[data-s="1"] .zt-mark--open{display:inline-flex;animation:ztPop .6s var(--spring) both}
.zt-bill[data-s="1"] #ztOpen{background:linear-gradient(180deg,#F1FBF4,#fff);box-shadow:0 10px 20px -16px rgba(24,122,84,.5),inset 0 0 0 1.5px var(--ok-mid)}
.zt-bill__mid{display:grid;place-items:center}
.zt-bill__mid i{position:relative;width:24px;height:2px;background:repeating-linear-gradient(90deg,var(--p600) 0 5px,transparent 5px 10px);opacity:.3;transition:opacity .4s}
.zt-bill[data-s="1"] .zt-bill__mid i{opacity:1;animation:ztMarch .8s linear infinite;background-size:10px 2px}
.zt-bill__mid i::after{content:"";position:absolute;right:-2px;top:-4px;width:9px;height:9px;border-top:2px solid var(--p600);border-right:2px solid var(--p600);transform:rotate(45deg)}
.zt-pos{display:flex;justify-content:space-between;align-items:baseline;gap:10px;padding:12px 14px;border-radius:14px;background:var(--i50);box-shadow:inset 0 0 0 1px rgba(20,30,48,.06);font-size:13px;font-weight:700}
.zt-pos em{white-space:nowrap}
.zt-pos em{font-style:normal;font-variant-numeric:tabular-nums}
.zt-pos--new{display:none}
.zt-bill[data-s="1"] .zt-pos--new{display:flex;background:var(--ok-soft);animation:ztPop .7s var(--spring) both}
.zt-bill__rule{margin-top:10px;font-size:11.5px;color:var(--i700)}
.zt-bill__cap{grid-column:1/-1}
.zt-export{width:100%;max-width:560px;margin-left:0;margin-right:auto;padding:20px 22px 16px;border-radius:30px;background:linear-gradient(180deg,#fff,#F7F9FD);box-shadow:0 50px 90px -50px rgba(20,40,90,.6),inset 0 0 0 1px rgba(20,30,48,.07)}
.zt-export__hd b{display:block;font-size:17px;letter-spacing:-.02em}
.zt-export__hd small{display:block;margin-top:2px;font-size:12.5px;color:var(--i700)}
.zt-export__btns{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.zt-btn{display:inline-flex;align-items:center;gap:8px;padding:9px 15px 9px 12px;border-radius:12px;background:#fff;font-size:13px;font-weight:800;color:var(--i800);box-shadow:inset 0 0 0 1px rgba(20,30,48,.14);transition:background .3s,color .3s,box-shadow .3s,transform .35s var(--spring)}
.zt-btn svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
button.zt-btn:hover{transform:translateY(-2px)}
.zt-btn.is-on{background:var(--p800);color:#fff;box-shadow:0 14px 24px -12px rgba(49,83,146,.9)}
.zt-btn--ghost{color:var(--i700)}
.zt-export__view{position:relative;min-height:190px;margin-top:14px;padding:16px 18px;border-radius:18px;background:var(--i50);box-shadow:inset 0 0 0 1px rgba(20,30,48,.07)}
.zt-doc,.zt-csv{display:none}
.zt-doc.is-on,.zt-csv.is-on{display:block;animation:fadeUp .5s var(--ease) both}
.zt-doc__h b{display:block;font-size:14.5px;letter-spacing:-.01em}
.zt-doc__h small{display:block;font-size:12px;color:var(--i700);margin-top:1px}
.zt-doc__t{display:grid;grid-template-columns:minmax(0,1.5fr) 1fr 1fr 1fr;gap:9px 10px;margin-top:14px;font-size:13px;font-variant-numeric:tabular-nums}
.zt-doc__t>span:nth-child(-n+4){font-size:10px;font-weight:800;letter-spacing:.11em;text-transform:uppercase;color:var(--i400)}
.zt-doc__t>*:nth-child(4n+2),.zt-doc__t>*:nth-child(4n+3),.zt-doc__t>*:nth-child(4n){text-align:right}
.zt-doc__t b{font-weight:800}
.zt-doc__t .pos{color:var(--ok)}.zt-doc__t .neg{color:var(--bad)}
.zt-csv{margin:0;font:12px/1.75 ui-monospace,SFMono-Regular,Consolas,monospace;color:var(--i800);white-space:pre;overflow-x:auto}

/* Zusammenfluss */
.zt-conv{position:relative;color:#fff;padding:clamp(100px,14vh,160px) 0 clamp(60px,9vh,100px)}
.zt-flow{position:relative;display:grid;grid-template-columns:minmax(0,230px) minmax(50px,150px) minmax(0,230px) minmax(50px,150px) minmax(0,230px);justify-content:center;align-items:center;margin-top:clamp(28px,4vh,44px)}
.zt-flow__sp{display:block}
.zt-flow__src,.zt-flow__dst{display:grid;gap:18px}
.zt-flow li{display:flex;align-items:center;gap:14px;padding:6px 16px 6px 6px;border-radius:20px;font-size:15px;font-weight:700;background:linear-gradient(160deg,rgba(255,255,255,.12),rgba(255,255,255,.04)),rgba(14,26,58,.4);box-shadow:inset 0 0 0 1px rgba(255,255,255,.14);opacity:0;transform:translateX(-16px);transition:opacity .6s var(--ease),transform .7s var(--ease);transition-delay:calc(var(--i) * .1s + .05s)}
.zt-flow__dst li{transform:translateX(16px);transition-delay:calc(var(--i) * .1s + .3s)}
.zt-flow.is-in li{opacity:1;transform:none}
.zt-flow li .gi{--s:44px}
.zt-flow__hub{display:grid;justify-items:center;gap:2px;padding:24px 14px 22px;border-radius:28px;text-align:center}
.zt-flow__hub .gi{--s:64px;margin-bottom:8px}
.zt-flow__hub b{font-size:20px;letter-spacing:-.02em}
.zt-flow__hub small{font-size:12px;font-weight:700;color:var(--p300)}
.zt-flow__p{max-width:62ch;margin:clamp(30px,4vh,44px) auto 0;text-align:center;font-size:clamp(16px,1.3vw,19px);line-height:1.6;color:var(--p200)}

/* =====================================================================
   Responsiv
   ===================================================================== */
@media (max-width:1100px){
  .zt-team__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .zt-flow{grid-template-columns:minmax(0,200px) minmax(30px,90px) minmax(0,200px) minmax(30px,90px) minmax(0,200px)}
}
@media (max-width:900px){
  .zt-hero__grid{grid-template-columns:minmax(0,1fr);min-height:0;gap:40px}
  .zt-hero__text{max-width:none}
  .zt-stage{margin:0 auto}
  .zt-feats{grid-template-columns:minmax(0,1fr)}
  .zt-split,.zt-split--rev,.zt-split--wide{grid-template-columns:minmax(0,1fr)}
  .zt-split--rev .zt-split__text{order:-1}
  .zt-form,.zt-model,.zt-models,.zt-log,.zt-export,.zt-bill{margin:0 auto;max-width:600px}
}
@media (max-width:760px){
  .zt-timer{flex-direction:column;text-align:center;padding:20px}
  .zt-timer__btns{justify-content:center}
  .zt-team__grid{grid-template-columns:minmax(0,1fr)}
  .zt-flow{grid-template-columns:minmax(0,1fr);gap:0;justify-items:center}
  .zt-flow__src,.zt-flow__dst{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;max-width:420px}
  .zt-flow li{padding:4px 14px 4px 4px;gap:10px;font-size:14px;border-radius:16px;transform:translateY(10px)}
  .zt-flow__dst li{transform:translateY(10px)}
  .zt-flow li .gi{--s:34px}
  .zt-flow__sp{width:100%;display:grid;justify-items:center}
  .zt-flow__hub{grid-template-columns:auto auto;justify-items:start;text-align:left;column-gap:14px;padding:14px 22px 14px 14px}
  .zt-flow__hub .gi{grid-row:1/3;margin:0;--s:52px}
  .zt-bill{grid-template-columns:minmax(0,1fr);gap:8px;padding:16px}
  .zt-bill__mid{height:30px}
  .zt-bill__mid i{width:2px;height:22px;background:repeating-linear-gradient(180deg,var(--p600) 0 5px,transparent 5px 10px)}
  .zt-bill__mid i::after{right:auto;left:-4px;top:auto;bottom:-2px;transform:rotate(135deg)}
  .zt-steps{grid-template-columns:minmax(0,1fr)}
  .zt-model__th,.zt-day{grid-template-columns:minmax(0,1.3fr) .8fr .8fr .9fr;}
  .zt-model__th span:nth-child(4),.zt-day span:nth-child(4){display:none}
  .zt-row{grid-template-columns:40px minmax(0,1fr) auto}
}
@media (max-width:460px){
  .zt-form,.zt-model,.zt-models,.zt-log,.zt-export{padding-left:16px;padding-right:16px}
  .zt-mod{flex-direction:column;align-items:flex-start}
  .zt-mod__r{justify-items:start;text-align:left}
  .zt-list{padding-left:12px;padding-right:12px}
}
@media (prefers-reduced-motion:reduce){
  .zt-pc__timer--run i{animation:none}
}

/* Weitere Zeitarten einklappen */
.zt-arts .zt-arts__more{background:transparent;color:var(--p800);box-shadow:inset 0 0 0 1px rgba(68,107,180,.4)}
.zt-arts .zt-x[hidden]{display:none}
