*{box-sizing:border-box} :root{color-scheme:dark;--bg:#101c26;--panel:#1b2a35;--muted:#b5c3cc;--green:#bcf36b}body{margin:0;background:var(--bg);color:#f5f8fa;font:16px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;padding-bottom:calc(94px + env(safe-area-inset-bottom))}header{max-width:940px;margin:auto;padding:calc(22px + env(safe-area-inset-top)) 20px 20px;display:flex;align-items:center;justify-content:space-between;gap:12px}.brand{font-weight:900;font-size:22px;color:white;text-decoration:none;letter-spacing:1px}.brand span{display:block;font-size:12px;letter-spacing:3px;color:var(--green)}main{max-width:900px;margin:auto;padding:0 20px}h1{font-size:32px;line-height:1.15;margin:20px 0 10px}h2{font-size:22px;margin:0 0 14px}h3{font-size:19px;margin:0 0 6px}p{margin:8px 0 16px}.muted,small{color:var(--muted)}small{font-size:14px}.card{background:var(--panel);border:1px solid #33444f;border-radius:20px;padding:20px;margin:16px 0}.badge{font-size:12px;border:1px solid #46545e;border-radius:30px;padding:6px 10px;white-space:nowrap}.accent{color:var(--green)}button,.button{font:inherit;border:0;border-radius:12px;background:var(--green);color:#172315;padding:13px 18px;font-weight:700;cursor:pointer;min-height:48px;text-decoration:none;display:inline-block}button.secondary{background:#30434f;color:white}button.danger{background:#6c293b;color:white}button:disabled{opacity:.45;cursor:default}.actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}label{display:block;font-size:14px;color:var(--muted);margin:14px 0 7px}input,select,textarea{font:inherit;width:100%;min-height:48px;background:#101c26;border:1px solid #52636e;border-radius:10px;padding:11px;color:white}textarea{min-height:76px;resize:vertical}input[type=checkbox]{width:22px;min-height:22px;accent-color:var(--green)}.check{display:flex;align-items:center;gap:12px;color:white;margin:14px 0}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px}.daylist{display:flex;gap:8px;overflow:auto;padding:10px 0}.daylist button{white-space:nowrap;background:#30434f;color:white}.daylist button.active{background:var(--green);color:#172315}nav{position:fixed;bottom:0;left:0;right:0;background:#101c26ed;border-top:1px solid #3b4b56;padding:12px 12px calc(12px + env(safe-area-inset-bottom));display:flex;justify-content:center;gap:8px;backdrop-filter:blur(15px);z-index:5}nav button{background:transparent;color:var(--muted);padding:12px;font-size:14px}nav button.active{color:var(--green);background:#263a30}.sets{width:100%;border-collapse:collapse;margin-top:12px;table-layout:fixed}.sets th{font-size:14px;color:var(--muted);text-align:left;font-weight:500}.sets td{padding:5px 3px}.sets th:first-child{width:32px}.sets input{padding:8px 4px;text-align:center}.sets th:last-child{width:45px}.sets td:last-child{text-align:center}.sets input[type=checkbox]{width:24px;min-height:24px}.tip{border-left:3px solid var(--green);padding:5px 12px;color:var(--muted);font-size:14px}.summary{display:flex;gap:24px;margin:22px 0}.summary strong{display:block;font-size:26px}.summary span{font-size:14px;color:var(--muted)}details summary{cursor:pointer;padding:8px 0}#notice:not(:empty){background:#354c2a;padding:12px;border-radius:10px;margin-bottom:12px}a{color:var(--green)}:focus-visible{outline:3px solid #bcf36b;outline-offset:3px}@media(min-width:700px){.exercise-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:start}.exercise-grid .card{margin:0}h1{font-size:42px}}@media(max-width:360px){main{padding:0 12px}.card{padding:14px}.brand{font-size:19px}.badge{font-size:11px}.grid{gap:0 8px}}

nav button{flex-shrink:1;min-width:0;font-size:13px;padding:10px 8px}nav{gap:4px}

.last-values{background:#101c26;padding:12px;border-radius:10px}.progress-scroll{overflow-x:auto}.progress-table{width:100%;border-collapse:collapse}.progress-table th,.progress-table td{text-align:left;padding:10px;border-bottom:1px solid #33444f}#rest-status{font-size:28px;color:var(--green);font-variant-numeric:tabular-nums}

.sync-card h2{font-size:18px}.sync-card{padding:16px}.sync-card .button.secondary{background:#30434f;color:white}.sync-conflict{border-left:3px solid #f8c85c;padding-left:12px;margin-top:16px}
[hidden]{display:none!important}
.training-gate{max-width:720px;margin:2rem auto;padding:2rem}
.training-gate .button,.training-gate button{margin-right:.75rem;margin-top:.75rem}

/* Exercise library: real demonstrations, quiet typography, generous spacing. */
.guide-heading{padding:28px 0 10px}.guide-heading h1{font-size:clamp(36px,6vw,58px);letter-spacing:-1.8px;line-height:1.04;max-width:680px;margin:14px 0 20px}.guide-heading>p{max-width:610px}.guide-kicker{font-size:11px;letter-spacing:1.6px;font-weight:800;color:var(--green);line-height:1.6}.guide-modes{display:flex;gap:6px;padding:5px;background:#172833;border:1px solid #354954;border-radius:16px;width:fit-content;margin:24px 0 0}.guide-modes button{background:transparent;color:#c0ccd4;min-height:46px;padding:10px 17px}.guide-modes button[aria-pressed=true]{background:var(--green);color:#16221a}.guide-filters{margin:20px 0 28px}.guide-filters label{margin-top:0}.guide-equipment{border:0;padding:16px 0 0;display:flex;gap:12px 24px;flex-wrap:wrap}.guide-equipment legend{color:#c0ccd4;font-size:14px}.guide-equipment .check{font-size:14px;margin:6px 0}#guide-count{color:#c1ced6;font-size:14px}.guide-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.guide-card{min-width:0;overflow:hidden;border-radius:18px;border:1px solid #354650;background:#1b2a35}.guide-card-open{display:block;text-align:left;width:100%;padding:0;background:transparent;color:white;border-radius:0;height:100%;font-weight:400}.guide-cover{height:190px;position:relative;display:flex;align-items:center;justify-content:center;background:#253b49;overflow:hidden}.guide-cover img{position:absolute;width:100%;height:100%;object-fit:cover;object-position:center;filter:brightness(.85);transition:transform .25s}.guide-card-open:hover .guide-cover img{transform:scale(1.025)}.guide-cover-label{position:absolute;bottom:14px;left:16px;font-size:10px;letter-spacing:1.2px;font-weight:800;color:#e4edec;background:#10212cce;border-radius:5px;padding:5px 8px}.guide-play{position:relative;display:grid;place-items:center;width:54px;height:54px;padding-left:3px;background:#142521cc;color:white;border:1px solid #ffffffb0;border-radius:50%;font-size:20px}.guide-card-copy{display:block;padding:20px}.guide-card-copy strong{display:block;font-size:20px;line-height:1.3;letter-spacing:-.3px;margin:7px 0 12px}.guide-muscle{display:block;font-size:11px;text-transform:uppercase;letter-spacing:1.4px;color:var(--green);font-weight:700}.guide-devices{display:block;font-size:13px;color:#b6c6d1;line-height:1.5}.guide-open-label{display:flex;justify-content:space-between;color:var(--green);font-size:13px;font-weight:700;border-top:1px solid #344650;margin-top:20px;padding-top:16px}.guide-footnote{font-size:13px;color:var(--muted);margin:26px 0 20px}.exercise-guide-dialog{width:min(850px,calc(100vw - 24px));max-height:92dvh;border:1px solid #4a5c68;border-radius:22px;background:#15242f;color:#f4f7f8;padding:26px;overscroll-behavior:contain}.exercise-guide-dialog::backdrop{background:#050c12cc;backdrop-filter:blur(7px)}.guide-dialog-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px}.guide-dialog-top button{font-size:13px;padding:8px 12px;min-height:42px}.exercise-guide-dialog h2{font-size:clamp(26px,5vw,36px);line-height:1.15;letter-spacing:-.7px;margin-bottom:12px}.guide-video-panel{position:relative;aspect-ratio:16/9;background:#0b151d;border:1px solid #344650;border-radius:14px;overflow:hidden;margin-top:24px;min-height:190px}.guide-video-panel>img{width:100%;height:100%;object-fit:cover;position:absolute;opacity:.5}.guide-video-overlay{position:relative;min-height:inherit;height:100%;display:flex;flex-direction:column;gap:14px;align-items:center;justify-content:center;text-align:center;padding:24px}.guide-video-overlay small{font-size:11px;max-width:280px;color:#d1dce3}.guide-video-overlay .guide-kicker{color:white}.guide-video-panel iframe{display:block;width:100%;height:100%;position:absolute;inset:0;border:0}.guide-source{font-size:12px;margin:12px 0 24px}.guide-source a,.guide-source-box a{color:var(--green)}.guide-source-box{padding:20px;border:1px solid #3c514c;border-radius:12px;margin-top:24px}.guide-section{border-top:1px solid #344650;padding-top:24px;margin-top:24px}.guide-section p,.guide-section li{color:#d7e1e8;line-height:1.7}.guide-section h3{margin-bottom:14px}.guide-steps{list-style:none;counter-reset:steps;padding:0;display:grid;gap:12px}.guide-steps li{counter-increment:steps;position:relative;padding:3px 0 3px 44px;min-height:36px}.guide-steps li:before{content:counter(steps);position:absolute;left:0;top:3px;width:28px;height:28px;display:grid;place-items:center;border:1px solid #537050;border-radius:50%;color:var(--green);font-size:13px;font-weight:700}.guide-extra{padding:16px;background:#213631;border-left:3px solid var(--green);border-radius:6px}.guide-dialog-end{border-top:1px solid #344650;margin-top:26px;padding-top:20px}.guide-dialog-end p{font-size:13px;color:#c0ced7}.guide-inline-link{font-size:13px;min-height:40px;padding:8px 12px;margin:8px 0 16px}button:focus-visible,a:focus-visible{outline:3px solid var(--green);outline-offset:4px}@media(max-width:600px){.guide-grid{grid-template-columns:1fr;gap:16px}.guide-cover{height:210px}.guide-heading h1{letter-spacing:-1px}.exercise-guide-dialog{padding:18px}.guide-video-overlay{padding:16px}.guide-video-overlay .guide-kicker{font-size:9px;letter-spacing:.8px}.guide-modes{width:100%}.guide-modes button{flex:1;font-size:14px;padding:10px}.guide-filters .grid{grid-template-columns:1fr}nav{overflow-x:auto;justify-content:flex-start}nav button{flex:1;white-space:nowrap;padding:12px 8px;font-size:12px}}@media(prefers-reduced-motion:reduce){.guide-cover img{transition:none}}

.guide-cover:not(.has-photo){height:56px;min-height:56px;justify-content:space-between;padding:9px 16px;background:#233a46}.guide-cover:not(.has-photo) .guide-cover-label{position:static;background:transparent;padding:0;color:#c2d2d7}.guide-cover:not(.has-photo) .guide-play{width:34px;height:34px;font-size:13px}.guide-card-open:focus-visible{outline-offset:-4px}

@media(max-width:600px){.exercise-guide-dialog .grid{grid-template-columns:1fr}.guide-video-panel{min-height:0;width:100%}.guide-video-overlay{min-height:0}.exercise-guide-dialog{overflow-x:hidden}}

@media(max-width:600px){.guide-video-overlay{gap:8px;padding:10px}.guide-video-overlay .button,.guide-video-overlay button{min-height:40px;padding:8px 12px;font-size:13px}.guide-video-overlay small{font-size:10px;line-height:1.3}}

@media(max-width:600px){nav{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:2px;padding-left:4px;padding-right:4px;overflow:visible}nav button{width:100%;min-width:0;min-height:48px;padding:6px 2px;white-space:normal;overflow-wrap:anywhere;line-height:1.15;font-size:clamp(10px,2.8vw,12px)}}

.nav-compact{display:none}@media(max-width:600px){nav .nav-wide{display:none}nav .nav-compact{display:inline}}

/* Clearer workout structure, touch targets, and sync feedback. */
.session-card{border-top:3px solid var(--accent-sky)}
.section-kicker{font-size:11px;letter-spacing:1.5px;font-weight:800;color:var(--accent-sky)}
.session-rest{padding:12px 14px;border-radius:12px;background:rgba(133,217,229,.08)}
.exercise-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-bottom:10px}
.exercise-group{font-size:11px;font-weight:800;letter-spacing:1px;text-transform:uppercase;color:var(--accent-sky)}
.exercise-dose{font-size:13px;font-weight:700;color:#e6f2ed;background:rgba(194,175,255,.12);border:1px solid rgba(194,175,255,.24);border-radius:9px;padding:4px 8px}
.exercise-card h3{font-size:21px;line-height:1.25}
.exercise-facts{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0 14px}
.exercise-facts span{font-size:12px;color:#e3ecee;background:rgba(133,217,229,.08);border:1px solid rgba(133,217,229,.16);padding:4px 8px;border-radius:8px}
.progress-highlights{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:14px 0 20px}
.progress-highlights>div{min-width:0;padding:12px;background:rgba(133,217,229,.08);border:1px solid rgba(133,217,229,.17);border-radius:13px}
.progress-highlights strong,.progress-highlights span{display:block}
.progress-highlights strong{font-size:20px;color:var(--accent-sky);overflow-wrap:anywhere}
.progress-highlights span{font-size:12px;color:var(--muted)}
.rest-presets{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0}
.rest-presets button{min-width:84px}
.guide-adjustments{margin-top:22px;padding:18px;border:1px solid rgba(200,244,119,.25);border-radius:14px;background:rgba(200,244,119,.06)}
.guide-adjustments h3{color:#e1f7b2}
.guide-adjustments .grid{gap:8px 18px}
.guide-adjustments .grid p{margin-bottom:0}
.sync-message{padding:12px 14px;border-radius:10px;background:rgba(133,217,229,.09);border-left:3px solid var(--accent-sky)}
.sync-message.is-warning{background:rgba(255,152,124,.11);border-left-color:var(--accent-coral);color:#ffe0d7}
.sync-last{font-size:13px;color:var(--muted)}
button,a.button,input,select,textarea{touch-action:manipulation}
input[type=number],input[type=text],input[type=email],textarea{font-size:16px}
@media(max-width:600px){
 body{padding-bottom:calc(82px + env(safe-area-inset-bottom))}
 main{padding-left:14px;padding-right:14px}
 .exercise-heading{display:block}
 .exercise-dose{display:inline-block;margin-top:7px}
 .exercise-facts{gap:5px}
 .exercise-facts span{font-size:12px}
 .progress-highlights{gap:6px}
 .progress-highlights>div{padding:9px 7px}
 .progress-highlights strong{font-size:17px}
 .progress-highlights span{font-size:11px;line-height:1.25}
 .guide-adjustments{padding:14px}
 nav button{min-height:52px}
}

/* Farbigeres Zellfit-Training: klare Flächen, lebendige Akzente, dieselbe vertraute Bedienung. */
:root{--bg:#101a26;--panel:#182a37;--muted:#c0cdd4;--green:#c8f477;--accent-coral:#ff987c;--accent-sky:#85d9e5;--accent-violet:#c2afff}
body{background:radial-gradient(ellipse at 8% 0%,rgba(70,132,112,.22),transparent 34rem),radial-gradient(ellipse at 96% 10%,rgba(80,126,179,.2),transparent 38rem),var(--bg);color:#f5f8f6}
header{max-width:1060px;padding-bottom:24px}
main{max-width:1020px;padding-top:8px}
.brand span{color:#9ce2c8}
.badge{background:rgba(133,217,229,.1);border-color:rgba(133,217,229,.4);color:#c6f2ee}
h1{font-size:clamp(30px,5vw,46px);letter-spacing:-1.2px}
.card{background:linear-gradient(145deg,rgba(29,49,62,.97),rgba(21,36,49,.98));border-color:rgba(174,207,198,.2);box-shadow:0 14px 36px rgba(3,10,16,.18)}
#coach-promo{background:linear-gradient(115deg,#1c4a3d,#23465a 70%,#343d64);border-color:rgba(200,244,119,.32)}
#coach-promo h2{color:#e8f7cb}
.summary{gap:12px}
.summary>div{flex:1;min-width:0;padding:14px 16px;background:rgba(133,217,229,.08);border:1px solid rgba(133,217,229,.2);border-radius:16px}
.summary>div:nth-child(2){background:rgba(194,175,255,.09);border-color:rgba(194,175,255,.22)}
.summary>div:nth-child(3){background:rgba(255,152,124,.09);border-color:rgba(255,152,124,.22)}
.summary strong{color:var(--accent-sky);font-size:clamp(22px,4vw,30px)}
.summary>div:nth-child(2) strong{color:var(--accent-violet)}
.summary>div:nth-child(3) strong{color:var(--accent-coral)}
.daylist{scrollbar-width:thin;scrollbar-color:#58766d transparent}
.daylist button{border:1px solid rgba(190,211,204,.2);background:#203541}
.daylist button.active{background:linear-gradient(120deg,#c8f477,#a8e7b8);color:#14251f;border-color:transparent;box-shadow:0 6px 18px rgba(200,244,119,.18)}
.exercise-grid .card{border-left:3px solid rgba(133,217,229,.7)}
.exercise-grid .card:nth-child(3n+2){border-left-color:rgba(194,175,255,.8)}
.exercise-grid .card:nth-child(3n){border-left-color:rgba(255,152,124,.8)}
button:not(.secondary):not(.danger),.button:not(.secondary){box-shadow:0 5px 16px rgba(174,220,103,.14)}
button.secondary,.button.secondary{border:1px solid rgba(185,208,212,.2)}
nav{background:rgba(13,24,35,.94);border-top-color:rgba(168,199,195,.2);box-shadow:0 -10px 30px rgba(4,10,16,.25)}
nav button{border:1px solid transparent}
nav button.active{background:rgba(200,244,119,.12);border-color:rgba(200,244,119,.24);color:#d7ff9a}
@media(max-width:600px){header{padding-left:16px;padding-right:16px}main{padding-top:2px}.summary{gap:7px}.summary>div{padding:11px 9px}.summary span{font-size:12px}.card{border-radius:17px}.daylist{margin-right:-12px;padding-right:12px}}
@media(prefers-reduced-motion:no-preference){button,.card{transition:background-color .18s ease,border-color .18s ease,transform .18s ease,box-shadow .18s ease}.daylist button:hover{transform:translateY(-1px)}.exercise-grid .card:hover{border-color:rgba(200,244,119,.42);box-shadow:0 18px 38px rgba(3,10,16,.25)}}

.exercise-completion{display:flex;align-items:center;justify-content:space-between;gap:.8rem;flex-wrap:wrap;margin:1rem 0}.completion-status{font-weight:700;color:var(--accent,#c7ee85);line-height:1.5}.exercise-completion .completion-status{margin:0}.sets-scroll{overflow-x:auto;max-width:100%}.sets th{font-size:.8rem}.sets input[type=checkbox]{width:1.35rem;height:1.35rem;min-width:1.35rem;cursor:pointer}.set-skipped{background:rgba(230,175,90,.1)}.set-skipped td:first-child{color:#efc781}.set-skipped input[type=number]{opacity:.4}.sets input:disabled{cursor:not-allowed}.set-help{font-size:.9rem}@media(max-width:600px){.sets th,.sets td{padding:.35rem .2rem}.sets input[type=number]{min-width:0;width:100%;padding:.5rem .25rem}.sets{width:100%;table-layout:fixed}.sets th:first-child{width:9%}.sets th:nth-child(2){width:18%}.sets th:nth-child(3){width:22%}.sets th:nth-child(4){width:15%}.sets th:nth-child(5),.sets th:nth-child(6){width:18%;overflow-wrap:anywhere}.exercise-completion button{width:100%}}
