:root{color-scheme:dark;--bg:#101112;--side:#141516;--panel:#18191b;--card:#1b1c1e;--stroke:#2b2c2e;--muted:#a7a6a3;--faint:#777876;--white:#f4f2ee;--orange:#ff743e;--orange-light:#ff9a6a;--green:#8bd6a5;--r:19px;font-family:Inter,"Segoe UI",Arial,sans-serif;background:var(--bg);color:var(--white);font-synthesis:none}
*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}button,a,input,select,textarea{outline-offset:4px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--orange)}button:disabled{opacity:.48;cursor:not-allowed}img,video{display:block;max-width:100%}h1,h2,h3,p{margin:0}p{line-height:1.55}svg{flex:none;vertical-align:middle}.muted{color:var(--muted)}.tiny{font-size:12px}.small{font-size:14px}.orange{color:var(--orange-light)}.green{color:var(--green)}.stack{display:grid;gap:14px}.row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.spread{display:flex;align-items:center;justify-content:space-between;gap:14px}.eyebrow{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.14em;color:var(--orange-light)}.label{font-size:11px;font-weight:750;text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}.rule{border:0;border-top:1px solid var(--stroke);margin:16px 0}.empty{padding:24px;color:var(--muted);border:1px dashed var(--stroke);border-radius:14px;font-size:14px}
.layout{min-height:100dvh;display:grid;grid-template-columns:232px minmax(0,1fr)}.sidebar{position:sticky;top:0;height:100dvh;display:flex;flex-direction:column;padding:26px 16px 18px;background:var(--side);border-right:1px solid #27282a}.brand{display:flex;align-items:center;gap:11px;padding:0 9px;margin-bottom:38px;font-weight:850;font-size:23px;letter-spacing:-.05em}.brand img{width:36px;height:36px}.brand em{color:var(--orange);font-style:normal}.nav-caption{color:#898986;margin:0 11px 10px;font-size:10px;letter-spacing:.17em;font-weight:750}.nav{display:grid;gap:5px}.nav a{min-height:45px;display:flex;align-items:center;gap:12px;padding:0 12px;color:#b7b6b2;border-radius:11px;font-size:14px;font-weight:640}.nav a:hover,.nav a[aria-current=page]{background:#28201d;color:#ffe4d6}.nav a[aria-current=page] svg{color:var(--orange)}.nav a .new{margin-left:auto;color:var(--orange-light);font-size:9px;background:#3c271e;border-radius:5px;padding:3px 5px}.side-bottom{margin-top:auto;display:grid;gap:12px}.plus-side{display:flex;align-items:center;gap:11px;background:#211a17;border:1px solid #3d2d24;padding:12px;border-radius:12px;font-size:13px;font-weight:750}.plus-side svg{color:var(--orange)}.side-user{display:flex;align-items:center;gap:10px;padding:7px 7px}.avatar{border:1px solid #493229;background:#35231c;color:#ffb490;border-radius:50%;width:35px;height:35px;display:grid;place-items:center;font-weight:800;flex:none}.side-user div:last-child{min-width:0}.side-user strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.side-user small{font-size:11px;color:var(--muted)}
.main{min-width:0}.topbar{height:72px;border-bottom:1px solid #252628;display:flex;align-items:center;justify-content:space-between;padding:0 34px;gap:12px}.crumb{display:flex;align-items:center;gap:10px;font-size:13px;color:#8e8e8b}.crumb strong{color:#eae8e4;font-weight:650}.top-right{display:flex;align-items:center;gap:13px}.today{color:var(--muted);font-size:12px}.icon-btn{display:grid;place-items:center;width:38px;height:38px;background:#1b1c1e;border:1px solid var(--stroke);color:var(--white);border-radius:11px;padding:0}.mobile-brand,.bottom-nav{display:none}.content{max-width:1440px;margin:auto;padding:28px 34px 44px}.page-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:22px}.page-heading h1{font-size:36px;font-weight:840;line-height:1.05;letter-spacing:-.055em;margin:7px 0 8px}.page-heading p{font-size:14px;color:var(--muted)}.page-heading .eyebrow{font-size:10px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--stroke);background:#232426;color:var(--white);border-radius:11px;padding:11px 15px;min-height:43px;font-size:13px;font-weight:780;line-height:1.2;transition:background .15s,border-color .15s}.btn:hover{background:#303135}.btn.primary{color:#191210;background:var(--orange);border-color:var(--orange)}.btn.primary:hover{background:#ff976f}.btn.ghost{background:transparent}.btn.ghost:hover{background:#252627}.btn.danger{color:#ffb6a7}.btn.full{width:100%}.btn.compact{min-height:34px;padding:7px 11px;font-size:12px}.text-btn{border:0;padding:0;background:none;color:var(--orange-light);display:inline-flex;gap:6px;align-items:center;font-size:13px;font-weight:750}.text-btn:hover{text-decoration:underline}.chip{border:1px solid #393a3c;padding:5px 8px;display:inline-flex;align-items:center;gap:6px;border-radius:7px;color:#d1ceca;background:#222325;font-size:11px;font-weight:700}.chip.warm{background:#32231c;color:#ffb38e;border-color:#553323}.chip.good{background:#1e3328;color:var(--green);border-color:#304b3c}.dot{height:7px;width:7px;border-radius:50%;background:#ff995c;display:inline-block;flex:none}
.home-grid{display:grid;grid-template-columns:minmax(0,1.95fr) minmax(250px,1fr);gap:17px;align-items:start}.home-left,.home-right{display:grid;gap:16px;min-width:0}.hero{position:relative;overflow:hidden;isolation:isolate;border:1px solid #3b2a21;border-radius:21px;background:#12100f;min-height:285px;padding:30px;display:flex;align-items:center}.hero::before{content:"";position:absolute;inset:0;z-index:-2;background:url('/assets/hero.webp') 72% 35%/cover no-repeat}.hero::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#101010 0%,#101010e8 25%,#12100f30 70%),linear-gradient(0deg,#11100fd1 0%,transparent 43%)}.hero-copy{max-width:64%;display:grid;gap:11px}.hero h2{font-size:clamp(30px,3.6vw,58px);line-height:.99;letter-spacing:-.06em;font-weight:900}.hero p{font-size:13px;color:#d6c8bf;max-width:285px}.hero .btn{justify-self:start;margin-top:5px}.hero-index{position:absolute;right:16px;bottom:14px;font-size:10px;letter-spacing:.18em;color:#edc9b5;font-weight:760}.stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.metric{background:var(--panel);border:1px solid var(--stroke);border-radius:15px;padding:14px;min-width:0}.metric svg{color:var(--orange-light)}.metric strong{font-size:26px;letter-spacing:-.045em;display:block;margin:8px 0 2px}.metric small{color:var(--muted);font-size:11px;display:block;line-height:1.35}.panel{background:var(--panel);border:1px solid var(--stroke);border-radius:var(--r);padding:19px;min-width:0}.panel h2{font-size:19px;letter-spacing:-.025em}.panel h3{font-size:15px;letter-spacing:-.015em}.panel .subtitle{font-size:13px;color:var(--muted);margin-top:4px}.coach-card{background:radial-gradient(ellipse at 90% 0%,#49291d 0,transparent 58%),#1b1918;border-color:#483127;padding:21px}.coach-symbol{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:#3e281e;color:var(--orange-light);border:1px solid #704430}.coach-card h2{margin:12px 0 5px;font-size:23px}.coach-card p{font-size:13px;color:#c5b5ac;margin-bottom:13px}.prompt{display:flex;align-items:center;justify-content:space-between;gap:7px;padding:9px 10px;min-height:36px;border-radius:9px;border:1px solid #493a34;background:#251f1d;color:#e8d5ca;text-align:left;font-size:12px}.prompt:hover{background:#372821}.coach-card .btn{margin-top:13px}.week-card .spread{margin-bottom:12px}.week{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin:14px 0}.week span{display:grid;justify-items:center;gap:6px;font-size:10px;color:var(--muted)}.week b{display:grid;place-items:center;aspect-ratio:1;width:min(100%,32px);border-radius:8px;background:#242527;font-size:11px;color:#c9c5c1}.week b.now{border:1px solid #85503a;color:#ffa579}.week b.done{background:#5a3222;color:#ffceba;border-color:#84513a}.bar{height:5px;border-radius:6px;background:#303032;overflow:hidden}.bar i{display:block;height:100%;background:var(--orange);border-radius:6px}.next-item{display:grid;grid-template-columns:44px 1fr auto;gap:13px;align-items:center;padding:13px 0;border-bottom:1px solid var(--stroke)}.next-item:last-child{border-bottom:0;padding-bottom:0}.sq-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:11px;background:#2b231f;color:var(--orange-light);border:1px solid #3c2c23}.next-item p{font-size:12px;color:var(--muted);margin-top:3px}.next-item strong{font-size:14px}.section-title{margin:24px 0 13px}.section-title h2{font-size:22px;letter-spacing:-.045em}.section-title p{font-size:13px;color:var(--muted);margin-top:3px}
.tile-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.exercise-tile{display:block;text-align:left;background:var(--panel);border:1px solid var(--stroke);border-radius:15px;padding:0;color:var(--white);overflow:hidden;min-width:0}.exercise-tile:hover{border-color:#6b4736}.tile-art{height:146px;overflow:hidden;background:radial-gradient(ellipse at 70% 32%,#3e2c21,#1e1b19 65%);display:grid;place-items:center;position:relative}.tile-art>img{height:100%;width:100%;object-fit:cover;object-position:center 41%}.tile-art>svg{color:#b87251}.tile-art .chip{position:absolute;left:10px;top:10px;background:#151515e9}.tile-body{display:flex;gap:12px;align-items:center;justify-content:space-between;padding:12px 14px}.tile-body strong{font-size:14px;line-height:1.25;display:block}.tile-body small{display:block;margin-top:4px;color:var(--muted);font-size:11px}.tile-body svg{color:var(--orange-light)}.split{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(230px,1fr);gap:15px;align-items:start}.day-card{border:1px solid var(--stroke);background:var(--panel);border-radius:17px;padding:17px}.day-card+.day-card{margin-top:12px}.ex-line{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--stroke);font-size:14px}.ex-line:last-of-type{border:0}.ex-line small{color:var(--muted);font-size:12px;white-space:nowrap}.notice{padding:12px 14px;border-radius:12px;background:#26201c;border:1px solid #4b372c;color:#e5c3b1;font-size:13px;line-height:1.5}.notice.good{background:#202b24;border-color:#334a3b;color:#c5e9cd}.notice.danger{background:#38211e;border-color:#62352c;color:#ffc2b5}.notice a{color:var(--orange-light);text-decoration:underline}.checklist{list-style:none;margin:0;padding:0;display:grid;gap:10px}.checklist li{display:flex;gap:9px;align-items:start;font-size:14px;color:#d4d0cb}.checklist svg{color:var(--orange-light);margin-top:2px}
.form{display:grid;gap:15px}.field{display:grid;gap:6px;color:#dfdcd7;font-size:13px;font-weight:650;min-width:0}.field small{font-weight:400;color:var(--muted)}.field input,.field select,.field textarea,.search{width:100%;background:#111213;border:1px solid #393a3c;color:var(--white);padding:10px 11px;border-radius:9px;min-height:42px}.field textarea{min-height:78px;resize:vertical}.field input::placeholder,.field textarea::placeholder,.search::placeholder{color:#92908d}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.span2{grid-column:1/-1}.choices{display:flex;gap:8px;flex-wrap:wrap}.choice{display:flex;gap:7px;align-items:center;background:#232426;border:1px solid #363739;padding:8px 10px;border-radius:9px;font-size:13px;cursor:pointer}.choice:has(input:checked){border-color:#ae694b;background:#39261f;color:#ffceba}.choice input,.check input{accent-color:var(--orange);width:16px;height:16px;margin:0}.check{display:flex;align-items:start;gap:9px;font-size:13px;line-height:1.4;color:#ddd7d1}.check input{flex:none;margin-top:2px}.filter{background:#202123;border:1px solid #353638;border-radius:8px;color:#cbc7c1;padding:7px 10px;font-size:12px}.filter[aria-pressed=true]{background:#432a20;border-color:#885036;color:#ffccb7}.search{max-width:380px}.toolbar{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:16px}
.workout-box{background:var(--panel);border:1px solid var(--stroke);border-radius:14px;overflow:hidden}.workout-box summary{cursor:pointer;display:flex;align-items:center;justify-content:space-between;padding:14px 16px;font-size:15px;font-weight:750;gap:10px;list-style:none}.workout-box summary::-webkit-details-marker{display:none}.workout-box summary::after{content:'+';font-size:18px;color:var(--orange)}.workout-box[open] summary::after{content:'−'}.workout-box[open] summary{border-bottom:1px solid var(--stroke)}.set-wrap{padding:10px 13px}.set-row{display:grid;grid-template-columns:27px minmax(40px,1fr) minmax(50px,1fr) minmax(44px,1fr) 39px;gap:7px;align-items:end;padding:7px 0}.set-row input,.set-row select{min-width:0;font-size:14px;padding:7px;min-height:38px}.set-row .field{font-size:10px}.set-row .num{padding-bottom:10px;color:var(--muted);text-align:center;font-size:12px}.set-row .icon-btn{width:38px;height:38px}.set-row.saved .icon-btn{background:#273a2e;color:#a2e8b6;border-color:#435e4b}.timer{position:sticky;top:12px}.timer-number{font-size:42px;font-weight:850;letter-spacing:-.06em;font-variant-numeric:tabular-nums;margin:7px 0}.timer-number.done{color:var(--green)}.workout-footer{margin-top:14px}.record{display:flex;justify-content:space-between;align-items:center;width:100%;text-align:left;gap:14px;padding:13px;border-radius:11px;border:1px solid var(--stroke);background:#202123;color:var(--white);font-size:14px}.record:hover{background:#292a2b}.record small{display:block;color:var(--muted);font-size:11px;margin-top:4px}.chart{height:165px;display:flex;align-items:end;gap:8px;border-bottom:1px solid #3b3c3d;padding:8px 0 0;margin:14px 0}.chart div{display:flex;align-items:end;justify-content:center;flex:1;height:100%;min-width:0}.chart i{display:block;width:clamp(10px,50%,42px);min-height:4px;border-radius:6px 6px 0 0;background:linear-gradient(#ff986c,#9e472a)}.chart-labels{display:flex;gap:8px;color:var(--muted);font-size:10px}.chart-labels span{text-align:center;flex:1}
.chat{min-height:470px;display:flex;flex-direction:column;gap:12px}.chat-log{flex:1;display:grid;align-content:start;gap:12px;max-height:52vh;overflow:auto;padding:3px}.bubble{background:#252628;border-radius:12px;padding:11px 13px;max-width:90%;width:fit-content;font-size:14px;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere}.bubble.user{justify-self:end;background:#402a21;color:#ffe2d3}.chat-form{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:end}.chat-form textarea{min-height:44px;max-height:150px}.price{font-size:42px;font-weight:900;letter-spacing:-.06em;margin:12px 0}.subscription{background:radial-gradient(ellipse at 100% 0%,#4d2a1b,transparent 60%),var(--panel);border-color:#4b3023}
dialog{width:min(540px,calc(100% - 24px));max-height:calc(100dvh - 24px);background:#1a1b1d;color:var(--white);border:1px solid #3a3b3d;border-radius:18px;padding:19px;box-shadow:0 20px 80px #000b;overflow:auto}dialog::backdrop{background:#060607c9;backdrop-filter:blur(4px)}dialog .spread{margin-bottom:15px}dialog h2{font-size:21px;letter-spacing:-.03em}dialog video{height:min(48vh,380px);width:100%;border-radius:12px;background:#0f1011;object-fit:contain}dialog img.exercise-preview{width:100%;height:min(34vh,240px);object-fit:cover;border-radius:12px}dialog .form{margin-top:13px}.modal-error{color:#ffab99;margin-top:8px;font-size:13px}.loading{min-height:100dvh;display:grid;place-content:center;justify-items:center;gap:13px;font-size:22px}.loading span{color:var(--orange)}.loading p{font-size:14px;color:var(--muted)}#toast{position:fixed;bottom:22px;right:22px;z-index:9;max-width:min(430px,calc(100vw - 44px));padding:0;pointer-events:none}#toast.show{padding:11px 14px;border:1px solid #674535;border-radius:11px;background:#2c201a;color:#ffe4d6;box-shadow:0 10px 30px #0009;font-size:14px}
@media(max-width:1120px){.layout{grid-template-columns:200px minmax(0,1fr)}.content{padding-inline:23px}.topbar{padding-inline:23px}.home-grid{grid-template-columns:minmax(0,1.7fr) minmax(220px,1fr)}.hero{padding:23px}.hero-copy{max-width:67%}.coach-card{padding:15px}}
@media(max-width:900px){.layout{grid-template-columns:166px minmax(0,1fr)}.sidebar{padding-inline:9px}.nav a{font-size:12px;gap:8px;padding-inline:8px}.brand{font-size:20px;padding-inline:4px}.brand img{width:32px;height:32px}.home-grid{grid-template-columns:minmax(0,1fr)}.home-right{grid-template-columns:1fr 1fr}.hero{min-height:255px}.hero h2{font-size:46px}.split{grid-template-columns:minmax(0,1fr)}.timer{position:static}.tile-art{height:118px}}
@media(max-width:640px){.layout{display:block}.sidebar,.crumb,.today{display:none}.topbar{height:59px;padding:0 14px;position:sticky;top:0;z-index:4;background:#111213f5;backdrop-filter:blur(12px)}.mobile-brand{display:flex;align-items:center;gap:8px;font-size:19px;font-weight:850;letter-spacing:-.045em}.mobile-brand img{width:29px;height:29px}.mobile-brand span{color:var(--orange)}.content{padding:16px 14px calc(82px + env(safe-area-inset-bottom))}.page-heading{align-items:start;margin-bottom:14px}.page-heading h1{font-size:29px}.page-heading p{font-size:12px}.page-heading .btn{font-size:11px;padding:8px;min-height:34px}.home-grid,.home-left,.home-right{gap:12px}.home-right{grid-template-columns:1fr}.hero{min-height:245px;padding:17px;border-radius:15px}.hero::before{background-position:62% 35%}.hero::after{background:linear-gradient(90deg,#121010 0%,#121010d8 28%,#12101030 76%),linear-gradient(0deg,#11100fc9,transparent 58%)}.hero-copy{max-width:73%;gap:9px}.hero h2{font-size:clamp(32px,9vw,43px)}.hero p{font-size:12px}.hero-index{font-size:8px;right:10px;bottom:9px}.stats{gap:6px}.metric{padding:10px 8px;border-radius:11px}.metric strong{font-size:21px}.metric small{font-size:10px}.panel{padding:13px;border-radius:14px}.tile-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.tile-art{height:107px}.tile-body{padding:9px}.tile-body strong{font-size:12px}.bottom-nav{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;inset:auto 0 0;background:#17181af7;border-top:1px solid #343537;z-index:5;padding:6px 3px calc(6px + env(safe-area-inset-bottom));backdrop-filter:blur(14px)}.bottom-nav a{display:grid;justify-items:center;gap:3px;padding:4px 1px;color:#aaa7a2;font-size:10px;font-weight:700}.bottom-nav a[aria-current=page]{color:var(--orange-light)}.section-title{margin-top:18px}.section-title h2{font-size:19px}.form-grid{gap:9px}.next-item{grid-template-columns:38px 1fr auto;gap:7px}.next-item .sq-icon{width:36px;height:36px}.next-item strong{font-size:12px}.next-item .btn{font-size:11px;padding:6px 8px}#toast{bottom:76px;right:12px}.set-row{grid-template-columns:22px minmax(38px,1fr) minmax(44px,1fr) minmax(39px,1fr) 37px;gap:5px}.workout-box summary{font-size:14px}.chat{min-height:360px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}}
.hero h2{font-size:clamp(29px,3.3vw,53px)}
.live-card{display:grid;gap:8px;margin-bottom:13px;padding:12px;border:1px solid #67402e;border-radius:12px;background:linear-gradient(115deg,#2c211b,#211c1a)}
.live-card .spread{flex-wrap:wrap;gap:6px}.live-card strong{font-size:14px}.live-card strong svg{color:var(--orange-light)}
.live-values{gap:6px}.live-card .btn{justify-self:start}.set-row .set-pain{grid-column:2/-1;font-size:11px;color:var(--muted)}
.technique-steps{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.technique-steps figure{margin:0;overflow:hidden;border:1px solid var(--stroke);border-radius:10px;background:#111213}
.technique-steps img{width:100%;aspect-ratio:1;object-fit:contain;background:#0f1010}
.technique-steps figcaption{display:flex;align-items:start;gap:6px;padding:8px;font-size:12px;line-height:1.3}
.technique-steps b{color:var(--orange-light)}
.library-tools{display:grid;grid-template-columns:minmax(0,2fr) minmax(140px,1fr);gap:12px}
.profile-shortcuts,.install-grid,.admin-stats{margin-bottom:16px}
.install-grid{margin-top:16px}
.install-grid ol{padding-left:22px;margin:12px 0 0;color:var(--muted);line-height:1.6}
.price small{font-size:.43em;font-weight:500}
.admin-stats{grid-template-columns:repeat(auto-fit,minmax(130px,1fr))}
.admin-table{overflow:auto;margin:10px 0 16px}
.admin-table table{width:100%;border-collapse:collapse;text-align:left}
.admin-table td,.admin-table th{padding:10px;border-bottom:1px solid #343538;white-space:nowrap}
.admin-table small{display:block;color:#a6a7a9}
@media(max-width:520px){.library-tools{grid-template-columns:minmax(0,1fr)}}
