/* LEVEL — studio interface. Presentation only; no data or auth changes. */
:root{--blue:#2458f5;--ink:#17202e;--muted:#69778c;--line:#e2e7ef;--bg:#f3f5f8}
body{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.55;-webkit-font-smoothing:antialiased}
aside{background:#111923;color:#fff;border:0;padding:36px 22px;width:240px}
aside .logo{font-size:39px;letter-spacing:-2.5px}aside .sub{color:#9daabd;letter-spacing:3px;font-size:9px}aside .profile{border-color:#2a3443}aside .muted{color:#a5b0c1}aside .avatar{background:#263b60;color:#c4d5ff}
nav{margin-top:52px}nav button{color:#adb9ca;padding:14px 16px;border-radius:12px;font-weight:550;transition:background .16s,color .16s}nav button:hover{background:#202c3d;color:#fff}nav button.active{background:#2458f5;color:#fff;box-shadow:0 6px 20px #0002}nav span{opacity:.9}
main{margin-left:240px;padding:0 40px 48px;max-width:1680px}header{height:88px}.breadcrumb{font-size:12px}.breadcrumb b{color:var(--ink);font-weight:650}.pill{background:#e5ebfc;color:#3457ab;letter-spacing:1px;font-size:9px}
.intro{margin:36px 0 28px;align-items:center}h1{font-size:clamp(28px,3vw,38px);letter-spacing:-1.4px;line-height:1.16;font-weight:750;margin-bottom:10px}h2{font-size:19px;letter-spacing:-.45px}h3{font-size:15px;letter-spacing:-.2px}.intro p{color:var(--muted);margin-bottom:0}
.card{border-radius:18px;padding:25px;border-color:#e4e8ef;box-shadow:0 3px 12px #182a4404}.stats{gap:16px;margin-bottom:28px}.stat{position:relative;overflow:hidden}.stat:before{content:"";position:absolute;left:0;top:25px;height:28px;width:3px;background:var(--blue);border-radius:0 4px 4px 0}.stat strong{font-size:38px;line-height:1.2;font-weight:730;letter-spacing:-1.5px;margin:12px 0}.stat small{font-size:11px}
.hero{background:linear-gradient(120deg,#132441 0%,#18356a 65%,#2458b1 100%);padding:30px;border:0;box-shadow:0 12px 30px #17336518}.hero h2{font-size:26px;max-width:85%;line-height:1.2}.hero:after{right:12px;top:-52px;opacity:.09;font-size:280px}.hero .eyebrow{color:#a9c1ff}.hero .btn{background:white;color:#193765}.eyebrow{letter-spacing:2.2px;font-size:10px}.columns{gap:24px}
.btn{border-radius:10px;padding:12px 18px;font-weight:650;transition:background .15s,box-shadow .15s;min-height:44px;box-shadow:0 3px 8px #2458f514}.btn:hover{background:#1747d5}.btn.secondary{box-shadow:none;background:#fff;border-color:#dce3ed}.btn.secondary:hover{background:#f0f4fc}.btn.small{min-height:38px;padding:9px 13px}.btn:disabled{cursor:default;opacity:.5;box-shadow:none}.textbtn{min-height:40px}.tag{border-radius:6px;letter-spacing:.8px;font-size:10px;padding:5px 9px}.green{background:#e7f5ee;color:#217653}
input,select,textarea{border-radius:10px;padding:12px 13px;min-height:44px;border-color:#dce3ed;transition:border-color .15s,box-shadow .15s}input:focus,select:focus,textarea:focus{outline:none;border-color:#527cff;box-shadow:0 0 0 3px #2458f512}label{font-size:12px;color:#45536a;letter-spacing:.1px}input[type=checkbox]{min-height:24px;width:24px;height:24px;cursor:pointer}textarea{min-height:100px}.row{padding:19px 0;gap:18px}.row>div{min-width:0}.row small{overflow-wrap:anywhere}.notice{line-height:1.65}.sectionhead{margin-bottom:17px}
.exercise{padding:0}.exercise .art{height:112px;background:linear-gradient(120deg,#e5ecfa,#f4f7fd);color:#586b8b}.exercise .body{padding:21px}.exercise .glyph{color:#315da9}.exercise p{line-height:1.65}.grid{gap:20px}.workout{margin:20px 0}.prescription{background:#f4f6fa;padding:12px 14px;border-radius:10px;margin-bottom:14px;color:#4d607a;gap:16px}.setgrid{gap:10px;margin:10px 0}.setgrid input{background:#fafbfd}.days,.weekbar{gap:8px;overflow-x:auto;padding-bottom:5px}.days button,.weekbar button{border-radius:9px;min-height:42px;white-space:nowrap}.days .active{background:#e8eeff}.weekbar .active{box-shadow:0 3px 8px #2458f51a}
dialog{padding:28px;border:1px solid #e1e6ee;border-radius:22px;max-height:88dvh;overflow-y:auto;box-shadow:0 24px 100px #0c1b3c38;color:var(--ink)}dialog::backdrop{background:#101c326b;backdrop-filter:blur(6px)}dialog h1{font-size:28px}dialog h2{font-size:23px}dialog .intro{margin:0 0 22px}dialog .card{padding:22px;border-radius:14px;box-shadow:none}dialog .row{align-items:flex-start;flex-wrap:wrap}dialog .row>*{overflow-wrap:anywhere;max-width:100%}.dialogactions{flex-wrap:wrap;gap:10px;padding-top:16px;border-top:1px solid var(--line);margin-top:24px}#toast{background:#17263e;border:1px solid #334664;border-radius:12px;box-shadow:0 10px 30px #11223b25;max-width:calc(100vw - 32px)}
body:has(#loginForm) aside{justify-content:center}body:has(#loginForm) aside .sub{margin-top:8px}body:has(#loginForm) nav{display:none}body:has(#loginForm) header{border:0}body:has(#loginForm) #app>.card{border-top:3px solid var(--blue);padding:34px;box-shadow:0 16px 50px #16325b0b}#loginForm label{margin-top:20px}#loginForm .btn{margin-top:10px}#loginError:not(:empty){padding:12px;background:#f0f4fc;border-radius:9px;font-size:13px;margin-top:16px}
@media(min-width:1400px){main{padding-left:56px;padding-right:56px}}
@media(max-width:1000px){aside{width:200px;padding:30px 15px}main{margin-left:200px;padding:0 24px 48px}.stats{gap:12px}.card{padding:20px}.exercise{padding:0}}
@media(max-width:650px){aside{width:100%;height:auto;padding:7px 5px calc(7px + env(safe-area-inset-bottom));background:#111923;border-top:1px solid #293547;box-shadow:0 -6px 24px #17223612}nav{margin:0;gap:2px}nav button{padding:8px 5px;font-size:10px;flex:1;min-width:0;border-radius:9px}nav span{font-size:19px;margin-bottom:3px}main{margin:0;padding:0 16px 120px}header{height:72px}.topactions{gap:5px}.topactions .pill{display:none}.topactions .btn{min-height:38px}.mobilelogo{font-size:27px}.intro{margin:27px 0 22px;flex-wrap:wrap;gap:14px}h1{font-size:29px;letter-spacing:-1px}.intro p{font-size:13px}.card{padding:18px;border-radius:15px}.stats{gap:11px}.stat strong{font-size:31px}.stat{padding:18px}.hero{padding:23px}.hero h2{font-size:23px}.columns{gap:18px}.row{gap:12px;padding:17px 0}.grid{gap:15px}.exercise{padding:0}.programbar{gap:9px}.programbar select{min-width:0;width:100%}.programbar label{flex:1;min-width:140px}.fields{gap:10px}.setgrid{grid-template-columns:28px minmax(0,1fr) minmax(0,1fr) 30px;gap:8px}.setgrid input{padding:11px 9px;font-size:16px}.days button{padding:10px 15px}.prescription{gap:10px;font-size:11px}dialog{width:calc(100vw - 24px)!important;max-width:calc(100vw - 24px);padding:20px;max-height:86dvh;border-radius:18px}dialog h1{font-size:25px}dialog h2{font-size:21px}dialog .card{padding:16px}.dialogactions .btn{flex:1;min-width:100px}.dialogactions{position:relative}#toast{bottom:100px;right:16px}body:has(#loginForm) aside{display:none}body:has(#loginForm) #app>.card{margin:24px auto!important;padding:25px}body:has(#loginForm) main{padding-bottom:30px}input,select,textarea{font-size:16px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
.quick-actions{display:flex;gap:10px;flex-wrap:wrap;margin:-8px 0 25px}.stats [role=button]{cursor:pointer;transition:transform .15s,box-shadow .15s}.stats [role=button]:hover{transform:translateY(-3px);box-shadow:0 10px 24px #17223610}.catalog-strip{display:flex;gap:12px;overflow:auto;padding:4px 0 16px;margin-bottom:12px}.catalog-tile{min-width:175px;max-width:240px;text-align:left;background:white;border:1px solid var(--line);border-radius:14px;padding:18px;color:var(--ink)}.catalog-tile span{display:block;overflow-wrap:anywhere}.catalog-tile b{font-size:25px;display:block;margin-top:8px}.catalog-tile.selected{background:#172c60;color:#fff;border-color:#172c60}.new-catalog{border-style:dashed;color:var(--blue)}.favorite-filter,.catalog-check{display:flex;gap:12px;align-items:center;margin:10px 0 18px}.favorite-filter input,.catalog-check input{width:22px;flex-shrink:0;margin:0}.catalog-check[hidden]{display:none}.catalog-check small{display:block;font-weight:400}.catalog-members{max-height:40vh;overflow:auto;padding:10px}.exercise .body{position:relative}.exercise h3{padding-right:28px}.favorite-button{position:absolute;right:12px;top:12px;background:transparent;color:#a56800;font-size:25px;min-width:38px;min-height:38px}details{border:1px solid var(--line);border-radius:12px;padding:15px;margin:14px 0}summary{cursor:pointer;font-weight:700;padding:4px}details h3{margin-top:22px}#aiMessage{font-size:13px;background:#f0f4fc;border-radius:10px;padding:13px;margin-top:16px}@media(max-width:650px){.quick-actions .btn{flex:1;min-width:140px}nav button{font-size:9px;padding:7px 3px}.catalog-tile{min-width:150px}}
