:root{color-scheme:dark;--bg:#0b1117;--panel:#131d26;--panel2:#19252e;--panel3:#202e37;--stroke:#2a3943;--text:#edf5f3;--muted:#94aaa9;--lime:#c0f17a;--lime-dk:#9cca56;--blue:#85c9bd;--red:#f48c88;--radius:18px;--shadow:0 18px 60px #05090c50;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-size:14px}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:var(--lime)}button:disabled{opacity:.38;cursor:not-allowed}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--lime);outline-offset:3px}button,input,select,textarea{min-width:0}input,select,textarea{border:1px solid var(--stroke);background:#111a23;color:var(--text);border-radius:11px;padding:12px 13px;width:100%;outline:0}select{appearance:auto}textarea{resize:vertical;min-height:76px}input::placeholder{color:#758b89}input:focus,select:focus,textarea:focus{border-color:#a0ce69}label{display:grid;gap:7px;color:#c8d6d4;font-size:12px;font-weight:650}h1,h2,h3,h4,p{margin:0}h1{font-size:clamp(26px,4vw,36px);letter-spacing:-.05em;line-height:1.13}h2{font-size:23px;letter-spacing:-.035em}h3{font-size:17px;letter-spacing:-.02em}p{line-height:1.55}.muted{color:var(--muted)}.small{font-size:12px}.tiny{font-size:11px}.overline{color:var(--lime);font-size:11px;letter-spacing:.16em;font-weight:900;text-transform:uppercase}.strong{font-weight:750}.row{display:flex;gap:12px;align-items:center}.row.between{justify-content:space-between}.row.wrap{flex-wrap:wrap}.stack{display:flex;flex-direction:column;gap:16px}.grow{flex:1}.gap8{gap:8px}.shell{display:grid;grid-template-columns:238px minmax(0,1fr);min-height:100vh}.sidebar{border-right:1px solid var(--stroke);background:#0e171f;display:flex;flex-direction:column;position:sticky;top:0;height:100vh;padding:30px 18px 22px}.logo{display:flex;align-items:center;gap:12px;padding:2px 8px 34px}.logo-mark{width:41px;height:41px;border:1px solid #46604a;background:#202f2b;border-radius:13px;display:grid;place-items:center;color:var(--lime);font-size:21px;font-weight:900}.logo strong{font-size:21px;letter-spacing:-.05em}.logo small{font-size:10px;color:var(--muted);letter-spacing:.2em}.navlinks{display:grid;gap:7px}.nav-button{display:flex;align-items:center;gap:13px;border:1px solid transparent;background:transparent;color:#b0c3bf;text-align:left;padding:13px 14px;border-radius:13px;font-weight:650;width:100%;transition:.14s}.nav-button:hover,.nav-button.active{background:#202d2d;color:var(--text)}.nav-button.active{border-color:#3c5841;color:var(--lime)}.navico{width:23px;text-align:center;font-size:18px}.sidebar-bottom{margin-top:auto;display:grid;gap:12px;padding:0 8px}.sidebar-note{padding:14px;border:1px solid var(--stroke);border-radius:14px;color:var(--muted);font-size:12px;line-height:1.5}.main{width:100%;max-width:1340px;margin:auto;padding:30px 42px 100px}.topline{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:32px}.breadcrumbs{font-size:12px;letter-spacing:.08em;color:var(--muted)}.pill{padding:7px 11px;border:1px solid #334a40;border-radius:99px;color:#c6edbd;font-size:11px;font-weight:700;white-space:nowrap;background:#1a2b23}.hero{position:relative;overflow:hidden;background:linear-gradient(110deg,#1c302d,#162a2d 65%,#12232d);border:1px solid #30473b;border-radius:26px;padding:clamp(24px,4vw,42px);display:grid;grid-template-columns:1.5fr .75fr;align-items:center;gap:26px}.hero:after{content:"";width:320px;height:320px;position:absolute;right:-140px;top:-170px;border:1px solid #55725777;border-radius:50%;box-shadow:0 0 0 45px #315c3b20,0 0 0 93px #315c3b13;pointer-events:none}.hero p{max-width:560px;color:#bfd3ca;margin:13px 0 24px}.hero-art{font-size:70px;text-align:center;filter:drop-shadow(0 5px 22px #b9e97040)}.btn{border:1px solid transparent;border-radius:11px;min-height:42px;display:inline-flex;justify-content:center;align-items:center;text-align:center;gap:9px;padding:11px 15px;font-weight:800;line-height:1.1;color:#0a160e;background:var(--lime);transition:background .15s,transform .15s;white-space:normal}.btn:hover{background:#d6ff9b;transform:translateY(-1px)}.btn.secondary{background:#23352f;color:#e5f6e9;border-color:#395548}.btn.secondary:hover{background:#31483b}.btn.ghost{background:transparent;color:#c9d9d5;border-color:var(--stroke)}.btn.ghost:hover{background:#203039}.btn.danger{background:#41272b;color:#ffb8b5;border-color:#644044}.btn.sm{min-height:34px;padding:8px 11px;font-size:12px}.btn.icon-btn{padding:7px;min-height:30px;min-width:31px;font-size:17px}.btn.block{width:100%}.btn:disabled:hover{transform:none}.panel{background:var(--panel);border:1px solid var(--stroke);border-radius:var(--radius);padding:20px}.panel.subtle{background:#15212a}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:26px 0 14px}.grid{display:grid;gap:15px}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.stat{padding:20px}.stat b{display:block;font-size:29px;letter-spacing:-.04em;margin-top:8px}.stat .small{color:var(--muted)}.plan-card,.template-card{background:var(--panel);border:1px solid var(--stroke);border-radius:16px;padding:19px;display:grid;gap:11px;transition:border-color .17s,transform .17s}.plan-card:hover,.template-card:hover{border-color:#648363;transform:translateY(-1px)}.template-card.selected{border-color:var(--lime);background:#1b2c2a}.card-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.card-icon{background:#21382f;border:1px solid #345342;color:var(--lime);border-radius:11px;width:38px;height:38px;display:grid;place-items:center;font-size:19px}.tag{display:inline-flex;gap:5px;align-items:center;border:1px solid #38494b;color:#bfd2cb;padding:5px 9px;border-radius:99px;font-size:11px;font-weight:700;background:#1b282f}.tag.lime{color:var(--lime);border-color:#476547;background:#21352b}.tag.gold{color:#ffe6a9;border-color:#6b5234;background:#382b22}.tag.gray{color:#b6c0ca}.muted-link{color:var(--lime);font-size:12px;font-weight:800;background:none;border:0;padding:4px}.filters{display:grid;grid-template-columns:2fr repeat(3,1fr);gap:10px}.template-card h3{font-size:16px;line-height:1.4}.template-card .muted{font-size:12px}.cover{background:linear-gradient(160deg,#273c3a,#15262a);padding:18px;border:1px solid #3d554b;border-radius:16px}.kpi-row{display:flex;gap:15px;align-items:center;flex-wrap:wrap}.layout-editor{display:grid;grid-template-columns:minmax(245px,.76fr) minmax(0,1.6fr);gap:18px;align-items:start}.workout-tab{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px;border:1px solid var(--stroke);border-radius:12px;background:#151f28;color:var(--text);text-align:left;width:100%}.workout-tab.selected{background:#27372f;border-color:#648759}.workout-tab strong{display:block}.workout-tab .small{display:block;margin-top:4px}.exercise-card{border:1px solid var(--stroke);border-radius:14px;background:#17232c;padding:17px;display:grid;gap:15px}.exercise-card .exercise-head{display:flex;align-items:flex-start;gap:12px;justify-content:space-between}.exercise-num{min-width:30px;height:30px;border-radius:9px;background:#27372e;color:var(--lime);display:grid;place-items:center;font-size:12px;font-weight:800}.exercise-fields{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.exercise-fields.advanced{grid-template-columns:repeat(5,1fr)}.exercise-fields input{padding:10px 9px;text-align:center}.exercise-fields label{font-size:10px;text-align:center}.icon-row{display:flex;gap:4px;align-items:center}.block-row{display:flex;justify-content:space-between;align-items:center;gap:12px;background:#1a2b2d;padding:13px;border:1px solid #30484a;border-radius:12px}.search-list{display:grid;gap:8px;max-height:460px;overflow:auto}.search-item{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px;background:#19252e;border:1px solid var(--stroke);border-radius:11px}.search-item:hover{border-color:#57825c}.search-item .small{margin-top:4px}.empty{padding:38px 24px;text-align:center;border:1px dashed #3a5054;border-radius:18px;display:grid;gap:12px;justify-items:center;color:#b4c5c0}.empty-icon{font-size:35px}.modal-backdrop{position:fixed;inset:0;background:#010405c9;backdrop-filter:blur(5px);z-index:20;display:flex;align-items:center;justify-content:center;padding:20px}.modal{background:#14212b;border:1px solid #4b6864;box-shadow:var(--shadow);border-radius:21px;width:min(590px,100%);max-height:min(86vh,900px);overflow:auto;padding:24px;display:grid;gap:18px}.modal-header{display:flex;justify-content:space-between;gap:10px;align-items:center}.modal-search{display:grid;grid-template-columns:1.35fr .9fr;gap:10px}.toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.library-entry{border:1px solid var(--stroke);background:var(--panel);border-radius:14px;padding:14px;display:flex;align-items:center;justify-content:space-between;gap:12px}.library-entry h3{font-size:14px}.toast{position:fixed;right:23px;bottom:25px;background:#283e31;color:#e9fbe2;border:1px solid #618360;padding:13px 16px;border-radius:11px;box-shadow:var(--shadow);z-index:30;font-weight:700;max-width:370px}.toast.error{background:#402628;border-color:#96626b;color:#ffe5e5}.mobile-nav{display:none}.notice{background:#25312e;border:1px solid #426452;border-radius:13px;padding:15px;color:#c2d9cc;line-height:1.5}.notice.warn{background:#392e20;border-color:#655033;color:#fce0b0}.steps{display:flex;gap:8px;flex-wrap:wrap}.steps span{padding:9px 12px;border:1px solid var(--stroke);border-radius:9px;background:#19252d;color:#aebcb9}.steps span.done{color:var(--lime);border-color:#45694a}.hr{height:1px;background:var(--stroke);border:0;margin:5px 0}.inline-note{padding:10px 12px;border-radius:10px;background:#1d2c2d;color:#bdd6d1;font-size:12px}.boot{color:var(--muted);padding:32px}.editor-bottom{display:flex;justify-content:flex-end;gap:8px}.footer-note{margin-top:32px;color:#708986;font-size:11px;text-align:center;line-height:1.6}.danger-text{color:var(--red)}.count{color:var(--lime);font-weight:850}.form-inline{display:flex;gap:9px;align-items:end;flex-wrap:wrap}.form-inline>label{flex:1;min-width:120px}.hidden{display:none!important}
@media(max-width:1080px){.main{padding:27px 25px 105px}.shell{grid-template-columns:192px minmax(0,1fr)}.sidebar{padding:24px 10px}.grid.three{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.four{grid-template-columns:repeat(2,minmax(0,1fr))}.filters{grid-template-columns:1fr 1fr}.exercise-fields.advanced{grid-template-columns:repeat(3,1fr)}}
@media(max-width:740px){.shell{display:block}.sidebar{display:none}.main{padding:20px 15px 108px}.topline{margin-bottom:20px}.topline .pill{font-size:9px;padding:6px 8px}.hero{grid-template-columns:1fr}.hero-art{display:none}.grid.three,.grid.two,.grid.four{grid-template-columns:1fr}.filters{grid-template-columns:repeat(2,minmax(0,1fr))}.filters input{grid-column:1/-1}.layout-editor{grid-template-columns:1fr}.exercise-fields,.exercise-fields.advanced{grid-template-columns:repeat(3,1fr)}.exercise-head{flex-wrap:wrap}.mobile-nav{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:10;background:#101b23ef;backdrop-filter:blur(12px);border-top:1px solid #314149;justify-content:space-around;align-items:center;padding:9px 5px calc(9px + env(safe-area-inset-bottom))}.mobile-nav button{background:none;border:0;display:flex;flex-direction:column;gap:4px;align-items:center;font-size:10px;color:#9eb4b0;padding:6px;min-width:55px}.mobile-nav button.active{color:var(--lime)}.mobile-nav button span{font-size:19px}.main{padding-bottom:calc(112px + env(safe-area-inset-bottom))}.modal{padding:18px}.modal-search{grid-template-columns:1fr}.topline{align-items:flex-start}.section-heading{flex-wrap:wrap}.btn{min-height:42px}.footer-note{margin-bottom:13px}.tag{font-size:10px}.hide-mobile{display:none}}
@media(max-width:410px){.filters{grid-template-columns:1fr}.grid.two{grid-template-columns:1fr}.exercise-fields.advanced{grid-template-columns:repeat(2,1fr)}.main{padding-left:12px;padding-right:12px}.panel{padding:16px}.exercise-card{padding:13px}}
/* OPTI integration: compact PRIME fields and planner controls. */
.cycle-day-row{display:grid;gap:6px}.cycle-check{justify-self:start;min-height:28px!important;font-size:11px!important}
.prime-prompt{display:grid;gap:10px;border:1px solid #47664a;border-radius:12px;background:#22332b;padding:13px}
.prime-prompt strong{color:var(--lime)}
.prime-pins{display:grid;gap:12px;padding:14px;border:1px solid #456351;border-radius:12px;background:#1f302d}
.prime-pins .grid.three{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.prime-pins input{text-align:center;padding:9px 5px}
.prime-pins strong[data-prime-total]{color:var(--lime)}
@media(max-width:410px){.prime-pins{padding:11px}.prime-pins .grid.three{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}}
/* Schritt 4: guided setup and imported-plan review (responsive, touch-friendly). */
.onboarding-head{margin-bottom:25px;max-width:760px}.onboarding-head h1{font-size:clamp(32px,5vw,54px);line-height:1.05;letter-spacing:-.045em}
.setup-tiles{max-width:980px}.setup-tile{display:flex;flex-direction:column;align-items:flex-start;gap:12px;min-height:195px;padding:23px;text-align:left;border:1px solid #385048;border-radius:19px;background:linear-gradient(125deg,#1d3030,#17242d);color:var(--text);cursor:pointer;transition:border-color .15s,transform .15s}
.setup-tile:hover,.setup-tile:focus-visible{border-color:var(--lime);transform:translateY(-2px)}.setup-tile strong{font-size:18px}.setup-symbol{display:grid;place-items:center;width:45px;height:45px;border-radius:13px;background:#304a38;color:var(--lime);font-size:23px}.setup-arrow{color:var(--lime);margin-top:auto;font-weight:800;font-size:13px}
.setup-shell{max-width:850px;margin:0 auto}.setup-progress{display:flex;gap:5px}.setup-progress span{height:6px;flex:1;border-radius:99px;background:#314147}.setup-progress span.done{background:var(--lime)}.setup-content{padding:clamp(17px,3vw,30px);min-height:260px}.setup-content h2{font-size:clamp(22px,4vw,29px);line-height:1.15;letter-spacing:-.03em}.setup-choices{display:grid;gap:11px}.setup-choice{color:var(--text);background:#182630;border:1px solid #354a4b;border-radius:13px;text-align:left;padding:17px;display:flex;flex-direction:column;gap:7px;cursor:pointer;min-height:62px}.setup-choice:hover,.setup-choice:focus-visible{border-color:#8aa67f}.setup-choice.active{border-color:var(--lime);background:#233b32;box-shadow:inset 3px 0 var(--lime)}.setup-choice .small{font-weight:400}.setup-bottom{margin-top:5px}.addon-check{display:flex;align-items:flex-start;gap:13px;padding:15px;background:#16252d;border:1px solid #354a4b;border-radius:12px;cursor:pointer}.addon-check:has(input:checked){border-color:var(--lime);background:#21362e}.addon-check input{margin-top:2px;width:19px;height:19px;flex-shrink:0;accent-color:#bde77b}.addon-check span{display:flex;flex-direction:column;gap:5px}.import-ex{display:grid;grid-template-columns:minmax(110px,3fr) repeat(3,minmax(55px,1fr));gap:8px;align-items:end;border-top:1px solid #37464b;padding-top:12px}.import-ex label{font-size:11px;min-width:0}.import-ex input{padding:9px 7px;font-size:13px;width:100%}.import-ex-status{grid-column:1/-1}.warning-lines{margin:9px 0;padding-left:22px}.warning-lines li{margin:6px 0;overflow-wrap:anywhere}.check-inline{display:flex;gap:10px;align-items:flex-start;margin-top:13px}.check-inline input{width:18px;height:18px;flex-shrink:0;accent-color:#bde77b}
@media(max-width:740px){.setup-tile{min-height:152px}.setup-shell>.row h1{font-size:28px}.setup-content{min-height:0}.import-ex{grid-template-columns:repeat(3,minmax(0,1fr))}.import-ex-name{grid-column:1/-1}.setup-content .grid.two{grid-template-columns:1fr}}
.setup-choice:disabled{opacity:.53;cursor:not-allowed;border-style:dashed}.setup-choice:disabled:hover{border-color:#354a4b}
.shell.setup-layout{grid-template-columns:minmax(0,1fr)}.shell.setup-layout .main{width:100%;max-width:1050px;margin:0 auto;padding-bottom:45px}.shell.setup-layout .topline{margin-bottom:28px}
@media(max-width:740px){.shell.setup-layout .main{padding:22px 16px 48px}}
