:root{--bg: #f4f6f5;--surface: #ffffff;--surface-2: #f2f5f4;--line: #e3e8e6;--line-soft: #eef2f0;--line-strong: #d5ddda;--text: #13201e;--text-2: #34433f;--mute: #5a6966;--acc: #0f766e;--acc-hover: #0b5a54;--acc-soft: #e3f2ef;--on-acc: #ffffff;--ok: #146c43;--ok-bg: #e7f5ee;--warn: #9a4a06;--warn-icon: #b45309;--warn-bg: #fef6ea;--bad: #b42318;--bad-bg: #fdeeec;--radius: 18px;--shadow: 0 1px 2px rgba(19, 32, 30, .04);--font: Inter, system-ui, -apple-system, sans-serif;--font-head: Outfit, Inter, system-ui, sans-serif;color-scheme:light}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){--bg: #0d1513;--surface: #141f1d;--surface-2: #1a2725;--line: #24332f;--line-soft: #1e2b28;--line-strong: #2f413c;--text: #e8f0ee;--text-2: #c3d0cd;--mute: #93a5a1;--acc: #2dd4bf;--acc-hover: #5eead4;--acc-soft: #12332f;--on-acc: #04201c;--ok: #5fe3a1;--ok-bg: #0f2a1e;--warn: #fbbf6a;--warn-icon: #fbbf6a;--warn-bg: #2b2112;--bad: #ff8a80;--bad-bg: #2e1614;--shadow: none;color-scheme:dark}}:root[data-theme=dark]{--bg: #0d1513;--surface: #141f1d;--surface-2: #1a2725;--line: #24332f;--line-soft: #1e2b28;--line-strong: #2f413c;--text: #e8f0ee;--text-2: #c3d0cd;--mute: #93a5a1;--acc: #2dd4bf;--acc-hover: #5eead4;--acc-soft: #12332f;--on-acc: #04201c;--ok: #5fe3a1;--ok-bg: #0f2a1e;--warn: #fbbf6a;--warn-icon: #fbbf6a;--warn-bg: #2b2112;--bad: #ff8a80;--bad-bg: #2e1614;--shadow: none;color-scheme:dark}*{box-sizing:border-box}html,body{margin:0;background:var(--bg);color:var(--text);font:15px/1.45 var(--font);-webkit-font-smoothing:antialiased}h1,h2,h3{font-family:var(--font-head);font-weight:600;margin:0}a{color:var(--acc)}a:hover{color:var(--acc-hover)}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--acc);outline-offset:2px}.shell{min-height:100vh;display:flex}.side{flex:none;width:248px;padding:22px 16px;background:var(--surface);border-right:1px solid var(--line);display:flex;flex-direction:column;gap:4px;position:sticky;top:0;height:100vh}.brand{display:flex;align-items:center;gap:10px;padding:0 8px 22px;font-family:var(--font-head);font-weight:700;font-size:22px;letter-spacing:-.3px}.brand-mark{width:34px;height:34px;border-radius:10px;background:var(--acc);color:var(--on-acc);display:grid;place-items:center;font-size:15px}.nav-link{display:flex;align-items:center;gap:12px;padding:11px 12px;border-radius:12px;color:var(--text-2);font-weight:500;text-decoration:none}.nav-link:hover{background:var(--surface-2);color:var(--text)}.nav-link.active{background:var(--acc-soft);color:var(--acc);font-weight:600}.nav-badge{margin-left:auto;min-width:22px;height:22px;padding:0 6px;border-radius:11px;background:var(--warn-bg);color:var(--warn);font-size:12px;font-weight:700;display:inline-grid;place-items:center}.side-spacer{flex:1}.me{display:flex;align-items:center;gap:10px;padding:12px 8px 0;margin-top:8px;border-top:1px solid var(--line)}.me-txt{display:flex;flex-direction:column;line-height:1.25;min-width:0;flex:1}.me-txt span{font-size:12.5px;color:var(--mute)}.main{flex:1;min-width:0;padding:32px 40px 48px;display:flex;flex-direction:column;gap:28px;max-width:1400px}.tabbar{display:none}@media (max-width: 860px){.side{display:none}.main{padding:20px 16px 96px;gap:20px}.tabbar{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));position:fixed;left:0;right:0;bottom:0;z-index:10;background:var(--surface);border-top:1px solid var(--line);padding:6px 4px calc(8px + env(safe-area-inset-bottom))}.tabbar .nav-link{flex-direction:column;gap:3px;padding:6px 2px;font-size:11.5px;min-height:48px;justify-content:center;border-radius:10px}.tabbar .nav-link.active{background:none}.tabbar .nav-badge{display:none}}.page-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:16px}.page-head p{margin:0 0 4px;color:var(--mute)}.page-head h1{font-size:34px;letter-spacing:-.5px}@media (max-width: 860px){.page-head h1{font-size:26px}}.actions{display:flex;flex-wrap:wrap;gap:10px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 16px;border-radius:12px;border:1px solid var(--line-strong);background:var(--surface);color:var(--text);font-weight:600;font-size:14.5px;text-decoration:none;cursor:pointer}.btn:hover{border-color:var(--mute);color:var(--text)}.btn.primary{background:var(--acc);border-color:transparent;color:var(--on-acc)}.btn.primary:hover{background:var(--acc-hover);color:var(--on-acc)}.btn.sm{min-height:40px;padding:0 14px;border-radius:10px;font-size:14px}.btn.block{width:100%}.btn:disabled{opacity:.6;cursor:default}.link-btn{background:none;border:0;padding:0;color:var(--acc);font-weight:600;font-size:14px;cursor:pointer;text-decoration:none}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:22px 24px;min-width:0;box-shadow:var(--shadow)}.card-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:14px}.card-head h2{font-size:20px}@media (max-width: 860px){.card{padding:16px}}.grid-today{display:grid;grid-template-columns:minmax(0,2fr) minmax(300px,1fr);gap:24px;align-items:start}@media (max-width: 1100px){.grid-today{grid-template-columns:minmax(0,1fr)}}.avatar{flex:none;width:40px;height:40px;border-radius:50%;background:var(--surface-2);color:var(--mute);display:inline-grid;place-items:center;font-weight:600;font-size:14px;overflow:hidden}.avatar img{width:100%;height:100%;object-fit:cover}.avatar.acc{background:var(--acc-soft);color:var(--acc);font-weight:700}.avatar.dark{background:var(--text);color:var(--bg);width:36px;height:36px;font-size:13px}.slots{list-style:none;margin:0;padding:0}.slot{display:flex;align-items:center;gap:16px;padding:14px 0;border-bottom:1px solid var(--line-soft)}.slot:last-child{border-bottom:0}.slot-time{width:56px;flex:none;font-weight:600;color:var(--mute);font-variant-numeric:tabular-nums}.slot-time.next{color:var(--acc);font-weight:700}.slot-body{flex:1;min-width:0}.slot-body b{display:block}.slot-body small{font-size:13.5px;color:var(--mute)}.slot.dim b{color:var(--mute)}.slot.cancelled b{text-decoration:line-through}.warn-txt{color:var(--warn);font-weight:600}@media (max-width: 860px){.slot{gap:12px}.slot-time{width:46px}}.chip{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border-radius:999px;font-size:13px;font-weight:600;white-space:nowrap}.chip.ok{background:var(--ok-bg);color:var(--ok)}.chip.muted{background:var(--surface-2);color:var(--text-2)}.alerts{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.alert{display:flex;gap:12px;align-items:flex-start;padding:12px 14px;border-radius:14px;background:var(--surface-2);font-size:14px;line-height:1.4}.alert svg{flex:none;margin-top:1px}.alert span{flex:1;min-width:0}.alert.warn{background:var(--warn-bg)}.alert.warn svg,.alert.warn .link-btn{color:var(--warn-icon)}.alert.bad{background:var(--bad-bg)}.alert.bad svg,.alert.bad .link-btn{color:var(--bad)}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:16px}.stat{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:18px 20px}.stat p{margin:0;font-size:13.5px;color:var(--mute)}.stat b{display:block;margin-top:6px;font-family:var(--font-head);font-size:30px;font-weight:600;font-variant-numeric:tabular-nums}.stat b small{font-family:var(--font);font-size:15px;color:var(--mute);font-weight:500}.stat b.bad{color:var(--bad)}.empty{color:var(--mute);padding:18px 0;text-align:center}.sync-note{font-size:12.5px;color:var(--mute);display:flex;align-items:center;gap:6px}.dot{width:8px;height:8px;border-radius:50%;background:var(--ok);display:inline-block}.dot.off{background:var(--warn-icon)}.dot.err{background:var(--bad)}.login{min-height:100vh;display:grid;place-items:center;padding:24px 16px}.login-card{width:min(400px,100%);display:flex;flex-direction:column;gap:18px}.login-card h1{font-size:28px}.login-card p{margin:0;color:var(--mute)}.field{display:flex;flex-direction:column;gap:6px}.field label{font-size:13px;font-weight:600;color:var(--text-2)}.input{min-height:46px;padding:0 14px;border-radius:12px;border:1px solid var(--line-strong);background:var(--surface);font-size:16px}.input:focus{outline:none;border-color:var(--acc);box-shadow:0 0 0 3px var(--acc-soft)}.form-error{background:var(--bad-bg);color:var(--bad);border-radius:12px;padding:10px 14px;font-size:14px}.divider{display:flex;align-items:center;gap:12px;color:var(--mute);font-size:13px}.divider:before,.divider:after{content:"";flex:1;height:1px;background:var(--line)}.seg{display:inline-flex;gap:4px;background:var(--surface-2);border-radius:12px;padding:4px}.seg button{border:0;background:none;padding:8px 14px;border-radius:9px;font-weight:600;font-size:14px;color:var(--mute);cursor:pointer}.seg button[aria-pressed=true]{background:var(--surface);color:var(--text);box-shadow:0 1px 3px #00000014}.only-mobile{display:none}@media (max-width: 860px){.only-mobile{display:inline-flex}}@media (max-width: 860px){.stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.stat{padding:14px 16px}.stat b{font-size:24px}}:root[data-glass=on]{--glass-blur: 18px;--photo: url(/assets/silownia-jasna-CQqCUF_I.jpg);--veil: linear-gradient(90deg, rgba(240, 246, 244, .8) 0%, rgba(240, 246, 244, .5) 50%, rgba(227, 242, 239, .15) 100%);--tint: radial-gradient(900px 600px at 0% 100%, rgba(15, 118, 110, .14), transparent 70%);--surface: rgba(255, 255, 255, .62);--surface-2: rgba(255, 255, 255, .55);--line: rgba(15, 118, 110, .14);--line-soft: rgba(15, 118, 110, .1);--line-strong: rgba(15, 118, 110, .24);--warn-bg: rgba(254, 243, 226, .78);--bad-bg: rgba(253, 234, 231, .8);--ok-bg: rgba(231, 245, 238, .8);--shadow: inset 0 1px 0 rgba(255, 255, 255, .7), 0 8px 24px rgba(19, 60, 55, .08);--bg: #eaf1ef}:root[data-glass=on][data-theme=dark]{--photo: url(/assets/silownia-ciemna-Ck6UrOq8.jpg);--veil: linear-gradient(90deg, rgba(2, 26, 26, .93) 0%, rgba(2, 26, 26, .78) 45%, rgba(2, 26, 26, .45) 100%);--tint: radial-gradient(900px 600px at 0% 100%, rgba(45, 212, 191, .12), transparent 70%);--surface: rgba(8, 48, 48, .55);--surface-2: rgba(12, 64, 62, .6);--line: rgba(94, 234, 212, .16);--line-soft: rgba(94, 234, 212, .1);--line-strong: rgba(94, 234, 212, .26);--text: #ecfffb;--text-2: #c6e6e0;--mute: #94bdb6;--acc-soft: rgba(45, 212, 191, .16);--warn-bg: rgba(255, 181, 71, .14);--bad-bg: rgba(255, 107, 107, .15);--ok-bg: rgba(95, 227, 161, .14);--shadow: inset 0 1px 0 rgba(255, 255, 255, .07), 0 10px 30px rgba(0, 0, 0, .18);--bg: #021a1a}:root[data-glass=on] body{background:transparent}:root[data-glass=on] body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none;background:var(--veil),var(--tint),var(--photo) center 55% / cover no-repeat,var(--bg)}@media (max-width: 860px){:root[data-glass=on] body:before{background:linear-gradient(var(--veil-m, transparent),var(--veil-m, transparent)),var(--veil),var(--photo) center 45% / cover no-repeat,var(--bg)}}:root[data-glass=on] :is(.card,.stat,.side,.tabbar,.btn:not(.primary),.seg,.input){backdrop-filter:blur(var(--glass-blur)) saturate(150%);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(150%)}:root[data-glass=on] :is(.card,.stat){box-shadow:var(--shadow)}:root[data-glass=on] .side{background:#ffffff80}:root[data-glass=on][data-theme=dark] .side{background:#021a1a73}:root[data-glass=on] .tabbar{background:var(--surface)}:root[data-glass=on] .seg button[aria-pressed=true]{background:var(--surface)}.themes{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}.theme-opt{display:flex;flex-direction:column;gap:8px;padding:8px;border-radius:16px;border:2px solid transparent;background:none;cursor:pointer;text-align:left;font-weight:600;font-size:14px;color:var(--text-2)}.theme-opt:hover{background:var(--surface-2)}.theme-opt[aria-pressed=true]{border-color:var(--acc);color:var(--text)}.theme-prev{height:84px;border-radius:11px;border:1px solid var(--line);display:flex;gap:6px;padding:10px;background-size:cover;background-position:center 55%}.theme-prev i{flex:1;border-radius:6px}.theme-prev i:first-child{flex:0 0 30%}.tp-light{background:#f4f6f5}.tp-light i{background:#fff;border:1px solid #e3e8e6}.tp-dark{background:#0d1513}.tp-dark i{background:#141f1d;border:1px solid #24332f}.tp-system{background:linear-gradient(135deg,#f4f6f5 50%,#0d1513 50%)}.tp-system i{background:#808c8859}.tp-gym-light{background-image:linear-gradient(90deg,#f0f6f4cc,#e3f2ef66),url(/assets/silownia-jasna-CQqCUF_I.jpg)}.tp-gym-light i{background:#fff9;border:1px solid rgba(255,255,255,.8);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.tp-gym-dark{background-image:linear-gradient(90deg,#021a1ad9,#021a1a59),url(/assets/silownia-ciemna-Ck6UrOq8.jpg)}.tp-gym-dark i{background:#0830308c;border:1px solid rgba(94,234,212,.2);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.icon-btn{width:40px;height:40px;border-radius:10px;border:1px solid var(--line);background:var(--surface);color:var(--mute);display:inline-grid;place-items:center;cursor:pointer;flex:none}.icon-btn:hover{color:var(--text);border-color:var(--line-strong)}.btn.danger{color:var(--bad);border-color:var(--line-strong)}.btn.danger.armed{background:var(--bad);color:#fff;border-color:transparent}.btn.ghost{border-color:transparent;background:none}.sheet-wrap{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30}.sheet-shade{position:absolute;top:0;right:0;bottom:0;left:0;background:#050f0d73}.sheet{position:absolute;top:0;right:0;bottom:0;width:min(480px,100%);background:var(--surface);border-left:1px solid var(--line);display:flex;flex-direction:column;box-shadow:-20px 0 60px #0000002e}:root[data-glass=on] .sheet{background:color-mix(in srgb,var(--bg) 82%,transparent);backdrop-filter:blur(24px) saturate(150%);-webkit-backdrop-filter:blur(24px) saturate(150%)}.sheet.wide{width:min(640px,100%)}.sheet-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 20px;border-bottom:1px solid var(--line);padding-top:calc(18px + env(safe-area-inset-top))}.sheet-head h2{font-size:22px}.sheet-body{flex:1;overflow:auto;padding:18px 20px;display:flex;flex-direction:column;gap:14px}.sheet-foot{padding:14px 20px calc(14px + env(safe-area-inset-bottom));border-top:1px solid var(--line);display:flex;gap:10px;flex-wrap:wrap}@media (max-width: 860px){.sheet,.sheet.wide{top:auto;width:100%;max-height:92vh;border-left:0;border-top:1px solid var(--line);border-radius:20px 20px 0 0}.sheet-head{padding-top:18px}}.tabs{display:flex;gap:4px;overflow-x:auto;border-bottom:1px solid var(--line);scrollbar-width:none}.tab{flex:none;border:0;background:none;padding:10px 14px;font-weight:600;font-size:14.5px;color:var(--mute);border-bottom:2px solid transparent;margin-bottom:-1px;cursor:pointer;min-height:44px}.tab:hover{color:var(--text)}.tab.on{color:var(--acc);border-bottom-color:var(--acc)}.tab-n{margin-left:6px;font-size:12px;background:var(--surface-2);color:var(--mute);border-radius:999px;padding:1px 7px}.toast{position:fixed;left:50%;bottom:calc(28px + env(safe-area-inset-bottom));transform:translate(-50%,20px);background:var(--text);color:var(--bg);padding:11px 18px;border-radius:12px;font-weight:600;font-size:14px;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;z-index:50;max-width:calc(100% - 32px)}.toast.show{opacity:1;transform:translate(-50%)}@media (max-width: 860px){.toast{bottom:calc(90px + env(safe-area-inset-bottom))}}@media (prefers-reduced-motion: reduce){.toast{transition:none}}.hint{font-size:12.5px;color:var(--mute)}select.input{padding-right:8px}textarea.input{min-height:90px;padding:10px 14px;resize:vertical;line-height:1.45}.row2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.row3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}@media (max-width: 520px){.row3{grid-template-columns:repeat(2,minmax(0,1fr))}}.check{display:flex;align-items:center;gap:10px;font-size:14.5px;cursor:pointer}.check input{width:20px;height:20px;accent-color:var(--acc)}.toolbar{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.toolbar .input{flex:1 1 240px}.toolbar select.input{flex:0 1 220px}.muted{color:var(--mute)}.small{font-size:13px}.stack{display:flex;flex-direction:column;gap:14px}.spread{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.chip.warn{background:var(--warn-bg);color:var(--warn)}.chip.bad{background:var(--bad-bg);color:var(--bad)}.chip.acc{background:var(--acc-soft);color:var(--acc)}.chips{display:flex;flex-wrap:wrap;gap:6px}.pill{display:inline-flex;align-items:center;padding:3px 9px;border-radius:8px;font-size:12.5px;background:var(--surface-2);color:var(--text-2);border:1px solid var(--line)}.pill.acc{background:var(--acc-soft);color:var(--acc);border-color:transparent;font-weight:600}.pill.bad{background:var(--bad-bg);color:var(--bad);border-color:transparent}.pill.good{background:var(--ok-bg);color:var(--ok);border-color:transparent}.pill.warn{background:var(--warn-bg);color:var(--warn);border-color:transparent}.list{list-style:none;margin:0;padding:0}.list>li{display:flex;align-items:center;gap:14px;padding:12px 0;border-bottom:1px solid var(--line-soft)}.list>li:last-child{border-bottom:0}.list .grow{flex:1;min-width:0}.list .grow b{display:block}.list .grow small{color:var(--mute);font-size:13px}.num{font-variant-numeric:tabular-nums}.cgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px}.client-card{display:flex;flex-direction:column;gap:12px;text-decoration:none;color:var(--text)}.client-card:hover{border-color:var(--line-strong);color:var(--text)}.client-card .hd{display:flex;align-items:center;gap:12px}.client-card .hd b{font-size:16px}.client-card .hd small{display:block;color:var(--mute);font-size:13px}.client-card .meta{display:flex;justify-content:space-between;gap:8px;font-size:13px;color:var(--mute);flex-wrap:wrap}.avatar.lg{width:64px;height:64px;font-size:22px;border-radius:18px}.back{display:inline-flex;align-items:center;gap:6px;font-weight:600;font-size:14px;text-decoration:none;color:var(--mute)}.back:hover{color:var(--text)}.profile-head{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.profile-head .grow{flex:1;min-width:200px}.profile-head h1{font-size:30px}.grid2{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:20px;align-items:start}@media (max-width: 520px){.grid2{grid-template-columns:minmax(0,1fr)}}.ring{flex:none}.balance{display:flex;gap:16px;align-items:center}.balance b{font-family:var(--font-head);font-size:22px}.kv{display:grid;grid-template-columns:auto 1fr;gap:6px 14px;font-size:14px}.kv dt{color:var(--mute)}.kv dd{margin:0}.week-nav{display:flex;align-items:center;gap:8px}.week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px}.wday{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:12px;min-height:140px;display:flex;flex-direction:column;gap:8px;min-width:0;box-shadow:var(--shadow)}.wday.today{border-color:var(--acc);box-shadow:0 0 0 1px var(--acc)}.wday h3{font-size:15px;display:flex;justify-content:space-between;align-items:baseline;gap:6px}.wday h3 small{font-family:var(--font);color:var(--mute);font-weight:500;font-size:12.5px}.ev{display:block;text-decoration:none;border-radius:10px;padding:7px 9px;background:var(--acc-soft);color:var(--text);font-size:13px;line-height:1.3;border-left:3px solid var(--acc)}.ev:hover{color:var(--text);filter:brightness(.98)}.ev b{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ev span{color:var(--mute);font-variant-numeric:tabular-nums}.ev.done{background:var(--ok-bg);border-left-color:var(--ok)}.ev.cancelled{background:var(--surface-2);border-left-color:var(--line-strong)}.ev.cancelled b{text-decoration:line-through;color:var(--mute)}.ev.conflict{box-shadow:inset 0 0 0 1px var(--bad)}@media (max-width: 1100px){.week{grid-template-columns:minmax(0,1fr)}.wday{min-height:0}}.sec-tabs{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px;scrollbar-width:thin}.sec-tab{flex:none;border:1px solid var(--line);background:var(--surface);border-radius:999px;padding:8px 14px;font-weight:600;font-size:13.5px;cursor:pointer;color:var(--text-2);min-height:40px}.sec-tab.on{background:var(--acc);color:var(--on-acc);border-color:transparent}.sec-tab small{opacity:.7;margin-left:6px;font-weight:500}.exgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px}.excard{text-align:left;display:flex;flex-direction:column;gap:8px;cursor:pointer;font:inherit;color:inherit;padding:16px 18px}.excard:hover{border-color:var(--line-strong)}.excard b{font-size:15px}.excard.st-bad{border-color:var(--bad)}.excard.st-good{border-color:var(--ok)}.ex-detail h3{font-size:13px;text-transform:uppercase;letter-spacing:.5px;color:var(--mute);font-family:var(--font);font-weight:700;margin-bottom:6px}.ex-detail p{margin:0;line-height:1.55;white-space:pre-line}.plan-weeks{display:flex;gap:6px;overflow-x:auto;padding-bottom:4px}.wk{flex:none;min-width:44px;height:44px;border-radius:10px;border:1px solid var(--line);background:var(--surface);font-weight:700;cursor:pointer;color:var(--text-2);font-variant-numeric:tabular-nums}.wk.dl{border-style:dashed}.wk.on{background:var(--acc);color:var(--on-acc);border-color:transparent}.wk.now{box-shadow:0 0 0 2px var(--acc-soft)}.days{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:14px}@media (max-width: 520px){.days{grid-template-columns:minmax(0,1fr)}}.day-card{padding:0;overflow:hidden}.day-card>header{padding:14px 18px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:baseline;gap:8px}.day-card>header b{font-family:var(--font-head);font-size:17px}.day-card>header span{color:var(--mute);font-size:13px}.ex-row{display:grid;grid-template-columns:22px minmax(0,1fr);gap:10px;padding:11px 18px;border-bottom:1px solid var(--line-soft)}.ex-row:last-child{border-bottom:0}.ex-row .no{color:var(--acc);font-family:var(--font-head);font-weight:600}.ex-row .nm{font-weight:600;background:none;border:0;padding:0;text-align:left;cursor:pointer;font-size:14.5px}.ex-row .nm:hover{color:var(--acc)}.ex-row .params{display:flex;gap:6px;flex-wrap:wrap;margin-top:5px}.role{font-size:11px;text-transform:uppercase;letter-spacing:.4px;font-weight:700;color:var(--mute);margin-right:6px}.role.role-main{color:var(--acc)}.chart{width:100%;height:auto;display:block}.chart text{fill:var(--mute);font-size:11px;font-family:var(--font)}.chart .grid{stroke:var(--line)}.chart .line{stroke:var(--acc);fill:none;stroke-width:2.5}.chart .area{fill:var(--acc-soft)}.chart .pt{fill:var(--surface);stroke:var(--acc);stroke-width:2}.rec{border-radius:14px;padding:14px 16px;background:var(--acc-soft)}.rec b{font-family:var(--font-head);font-size:22px;color:var(--acc)}.rec p{margin:4px 0 0;font-size:13.5px;color:var(--text-2)}.tbl-wrap{overflow-x:auto}table.tbl{width:100%;border-collapse:collapse;font-size:14px}.tbl th{text-align:left;color:var(--mute);font-size:12px;font-weight:600;padding:8px 6px;border-bottom:1px solid var(--line);white-space:nowrap}.tbl td{padding:9px 6px;border-bottom:1px solid var(--line-soft);font-variant-numeric:tabular-nums}.live{max-width:760px;width:100%;margin:0 auto;display:flex;flex-direction:column;gap:16px}.live-ex{display:flex;flex-direction:column;gap:12px}.live-ex.done{opacity:.75}.live-ex .spread b{font-size:16.5px}.sets{display:grid;grid-template-columns:40px repeat(3,minmax(0,1fr)) 48px;gap:8px;align-items:center}.sets .h{font-size:12px;color:var(--mute);font-weight:600}.sets .n{font-weight:700;color:var(--mute);text-align:center;font-variant-numeric:tabular-nums}.sets .input{min-height:44px;padding:0 8px;text-align:center;font-size:16px;width:100%}.sets .tick{width:44px;height:44px;border-radius:12px;border:1px solid var(--line-strong);background:var(--surface);cursor:pointer;display:grid;place-items:center;color:var(--mute)}.sets .tick[aria-pressed=true]{background:var(--acc);color:var(--on-acc);border-color:transparent}.sug{font-size:13px;color:var(--acc);font-weight:600}.progress-bar{height:8px;border-radius:99px;background:var(--surface-2);overflow:hidden}.progress-bar i{display:block;height:100%;background:var(--acc);border-radius:99px}.stepper-nav{list-style:none;margin:0;padding:0;display:flex;gap:8px;flex-wrap:wrap}.stepper-nav button{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--line);background:var(--surface);border-radius:999px;padding:6px 14px 6px 6px;font-weight:600;font-size:14px;color:var(--mute);cursor:pointer;min-height:40px}.stepper-nav button:disabled{cursor:default;opacity:.6}.stepper-nav i{font-style:normal;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:var(--surface-2);font-size:13px}.stepper-nav .on button{color:var(--text);border-color:var(--acc)}.stepper-nav .on i,.stepper-nav .done i{background:var(--acc);color:var(--on-acc)}.meso-dot{width:12px;height:12px;border-radius:50%;flex:none}.fl{font-size:13px;font-weight:600;color:var(--text-2)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
