:root{--deep-turquoise:#32C0B5;--turquoise-shade:#187C73;--mint-teal:#7EB7BF;--glow-turquoise:#A6F5E8;--gold:#FFD700;--gold-light:#FFE55C;--gold-dark:#D4AF37;--platinum:#E5E4E2;--silver:#C0C0C0;--white-glacier:#FFFFFF;--cloud-gray-light:#F5F7FA;--fog-silver:#DDE3EA;--graphite-night:#1E1E1E;--charcoal:#262626;--luxury-black:#0A0A0A;--luxury-charcoal:#121212;--luxury-gray:#1A1A1A;--fresh:#3CCB7F;--warning:#F5C156;--critical:#FF6B6B;--info:#89D3FF;--font:-apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;--fs-display:48px;--lh-display:67px;--fs-hero:38px;--lh-hero:53px;--fs-h1:30px;--lh-h1:42px;--fs-h2:24px;--lh-h2:34px;--fs-h3:20px;--lh-h3:28px;--fs-body-lg:18px;--lh-body-lg:25px;--fs-body:16px;--lh-body:22px;--fs-caption:13px;--lh-caption:18px;--fs-micro:11px;--lh-micro:15px;--fw-regular:400;--fw-medium:500;--fw-semibold:600;--fw-bold:700;--sp-xs:4px;--sp-sm:8px;--sp-md:12px;--sp-base:16px;--sp-lg:20px;--sp-xl:24px;--sp-2xl:32px;--sp-3xl:40px;--sp-4xl:48px;--sp-5xl:64px;--card-padding:var(--sp-xl);--card-padding-lg:var(--sp-2xl);--section-spacing:var(--sp-3xl);--screen-padding:var(--sp-base);--r-small:8px;--r-medium:16px;--r-large:24px;--r-xl:32px;--r-round:9999px;--ease-out-quint:cubic-bezier(0.22,1,0.36,1);--ease-in-quint:cubic-bezier(0.64,0,0.78,0);--dur-in:300ms;--dur-out:250ms;--dur-press-in:120ms;--dur-press-out:180ms;--dur-reduced:150ms;--rise-screen:14px;--rise-card:12px;--rise-sheet:24px;--pressed-scale:0.97;--pressed-opacity:0.9;--tap-min:44px;--button-min-h:48px;--bg:#F5F7FA;--bg-gradient:linear-gradient(135deg,#F8FCFF,#ECF5F7 50%,#F5F7FA);--surface:#FFFFFF;--card:rgba(255,255,255,0.96);--card-border:var(--fog-silver);--text:#262626;--text-2:#1E1E1E;--text-3:#5E6570;--divider:#DDE3EA;--accent:#32C0B5;--accent-soft:rgba(50,192,181,0.12);--accent-text:#32C0B5;--mint-text:var(--accent-text);--fresh-text:#217850;--warning-text:#906509;--critical-text:#B3261E;--gold-text:#7D6119;--orb-top:rgba(166,245,232,0.55);--orb-bottom:rgba(126,183,191,0.35);--tab-active:#32C0B5;--tab-inactive:#6B6B70;--tab-glow:rgba(50,192,181,0.35);--tab-bg:rgba(255,255,255,0.85);--tab-border:rgba(0,0,0,0.10);--dock-fade:245,247,250;--shadow-1:0 2px 8px rgba(0,0,0,0.04);--shadow-2:0 4px 16px rgba(0,0,0,0.08);--shadow-3:0 8px 24px rgba(0,0,0,0.12);--glow-turquoise-shadow:0 8px 24px rgba(50,192,181,0.35);--glow-gold-shadow:none;--glow-luxury-shadow:none;color-scheme:light}[data-theme=dark]{--bg:#0A0A0A;--bg-gradient:linear-gradient(135deg,#0A0A0A,#0F0F0F 50%,#121212);--surface:#121212;--card:rgba(255,255,255,0.08);--card-border:rgba(255,255,255,0.12);--text:#FFFFFF;--text-2:#F5F5F5;--text-3:rgba(255,255,255,0.55);--divider:rgba(255,255,255,0.08);--accent:#FFD700;--accent-soft:rgba(255,215,0,0.15);--accent-text:#8FE8DB;--mint-text:var(--accent-text);--fresh-text:var(--fresh);--warning-text:var(--warning);--critical-text:var(--critical);--gold-text:var(--gold);--orb-top:rgba(255,215,0,0.15);--orb-bottom:rgba(50,192,181,0.12);--tab-active:#8FE8DB;--tab-inactive:#A8A8AD;--tab-glow:rgba(143,232,219,0.30);--tab-bg:rgba(20,20,22,0.88);--tab-border:rgba(255,255,255,0.15);--dock-fade:15,15,15;--shadow-1:0 2px 8px rgba(0,0,0,0.40);--shadow-2:0 4px 20px rgba(0,0,0,0.50);--shadow-3:0 8px 32px rgba(0,0,0,0.60);--glow-turquoise-shadow:0 8px 28px rgba(166,245,232,0.35);--glow-gold-shadow:0 8px 24px rgba(255,215,0,0.30);--glow-luxury-shadow:0 0 40px rgba(255,215,0,0.20);color-scheme:dark}@media (prefers-color-scheme:dark){html[data-appearance=default]:has(.follows-device){--bg:#0A0A0A;--bg-gradient:linear-gradient(135deg,#0A0A0A,#0F0F0F 50%,#121212);--surface:#121212;--card:rgba(255,255,255,0.08);--card-border:rgba(255,255,255,0.12);--text:#FFFFFF;--text-2:#F5F5F5;--text-3:rgba(255,255,255,0.55);--divider:rgba(255,255,255,0.08);--accent:#FFD700;--accent-soft:rgba(255,215,0,0.15);--accent-text:#8FE8DB;--mint-text:var(--accent-text);--fresh-text:var(--fresh);--warning-text:var(--warning);--critical-text:var(--critical);--gold-text:var(--gold);--orb-top:rgba(255,215,0,0.15);--orb-bottom:rgba(50,192,181,0.12);--tab-active:#8FE8DB;--tab-inactive:#A8A8AD;--tab-glow:rgba(143,232,219,0.30);--tab-bg:rgba(20,20,22,0.88);--tab-border:rgba(255,255,255,0.15);--dock-fade:15,15,15;--shadow-1:0 2px 8px rgba(0,0,0,0.40);--shadow-2:0 4px 20px rgba(0,0,0,0.50);--shadow-3:0 8px 32px rgba(0,0,0,0.60);--glow-turquoise-shadow:0 8px 28px rgba(166,245,232,0.35);--glow-gold-shadow:0 8px 24px rgba(255,215,0,0.30);--glow-luxury-shadow:0 0 40px rgba(255,215,0,0.20);color-scheme:dark}}html{background:var(--bg)}body{margin:0;min-height:100vh;color:var(--text);font:var(--fw-regular) var(--fs-body) /var(--lh-body) var(--font);background:var(--bg-gradient) fixed;-webkit-font-smoothing:antialiased}body:after,body:before{content:"";position:fixed;pointer-events:none;z-index:0;width:320px;height:320px;border-radius:50%;opacity:.55}body:before{top:-40px;right:-80px;background:radial-gradient(circle,var(--orb-top) 0,transparent 70%)}body:after{bottom:-120px;left:-60px;background:radial-gradient(circle,var(--orb-bottom) 0,transparent 70%)}body.hero:before{width:420px;height:420px;top:-80px;right:-120px}.card{position:relative;z-index:1;background:var(--card);border:1px solid var(--card-border);border-radius:var(--r-large);padding:var(--card-padding);box-shadow:var(--shadow-1);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--sp-sm);min-height:var(--button-min-h);padding:16px 24px;border-radius:var(--r-medium);border:1px solid transparent;font:var(--fw-semibold) 16px /1 var(--font);cursor:pointer;transition:transform var(--dur-press-out) var(--ease-out-quint),opacity var(--dur-press-out) var(--ease-out-quint)}.btn:active{transform:scale(var(--pressed-scale));opacity:var(--pressed-opacity);transition-duration:var(--dur-press-in)}.btn:disabled{opacity:.5;cursor:default}.btn-primary{background:var(--deep-turquoise);color:var(--white-glacier);box-shadow:var(--glow-turquoise-shadow)}.btn-secondary{background:var(--accent-soft);border-color:var(--accent-text);color:var(--text)}[data-theme=dark] .btn-secondary{background:rgba(255,255,255,.08);border-color:rgba(255,215,0,.5);color:var(--gold)}.btn-ghost{background:transparent;color:var(--accent-text)}.btn-sm{padding:12px 20px;font-size:14px}.btn-lg{padding:20px 32px;font-size:18px}.pill-tabbar{position:fixed;left:12px;right:12px;bottom:max(8px,calc(env(safe-area-inset-bottom, 0px) - 7px));padding:0 4px;height:68px;border-radius:var(--r-xl);z-index:50;background:var(--tab-bg);border:.5px solid var(--tab-border);backdrop-filter:blur(40px);-webkit-backdrop-filter:blur(40px);box-shadow:0 12px 24px rgba(0,0,0,.12);display:flex;align-items:center;justify-content:space-around}.pill-tabbar .tab{flex:1 1;min-width:0;height:100%;display:grid;place-items:center;align-content:center;grid-gap:4px;gap:4px;color:var(--tab-inactive);font:var(--fw-medium) 10.5px /1 var(--font);letter-spacing:.1px;text-align:center;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.pill-tabbar .tab-label{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:0 2px}.pill-tabbar .tab[aria-selected=true]{color:var(--tab-active);font-weight:var(--fw-bold);letter-spacing:.3px}@media (min-width:768px){.pill-tabbar{display:none}}.kicker{color:var(--mint-text);font-size:var(--fs-caption);line-height:var(--lh-caption)}.kicker,.title{font-weight:var(--fw-semibold)}.title{color:var(--text);font-size:var(--fs-h1);line-height:var(--lh-h1);margin:0}.subtitle{color:var(--text-2);font-size:var(--fs-body);line-height:var(--lh-body)}.badge{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:12px;border:1px solid;font:var(--fw-semibold) 12px /1 var(--font);letter-spacing:.5px}.badge-premium{color:var(--gold-text);border-color:rgba(255,215,0,.4);background:rgba(255,215,0,.15)}[data-theme=dark] .badge-premium{border-color:rgba(255,215,0,.5);background:rgba(255,215,0,.25)}.badge-good{color:var(--fresh-text);border-color:rgba(60,203,127,.4);background:rgba(60,203,127,.12)}.badge-caution{color:var(--warning-text);border-color:rgba(245,193,86,.4);background:rgba(245,193,86,.12)}.badge-critical{color:var(--critical-text);border-color:rgba(255,107,107,.4);background:rgba(255,107,107,.12)}@keyframes rise-in{0%{transform:translateY(var(--rise-card)) scale(.98)}to{transform:none}}.enter{animation:rise-in var(--dur-in) var(--ease-out-quint)}@media (prefers-reduced-motion:reduce){.btn,.enter{animation:none;transition-duration:var(--dur-reduced);transition-timing-function:linear}.btn:active{transform:none}}*{box-sizing:border-box}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;background:none;border:0;padding:0}:focus-visible{outline:2px solid var(--accent-text);outline-offset:2px;border-radius:var(--r-small)}h1,h2,h3,p{margin:0}.shell{display:grid;grid-template-columns:240px minmax(0,1fr);min-height:100vh;position:relative;z-index:1}.shell.with-drawer{grid-template-columns:240px minmax(0,1fr) 340px}.sidenav{position:-webkit-sticky;position:sticky;top:0;height:100vh;padding:var(--sp-xl) var(--sp-base);display:flex;flex-direction:column;gap:var(--sp-xs);background:var(--card);border-right:1px solid var(--card-border);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.brand{display:flex;align-items:center;gap:var(--sp-md);padding:var(--sp-sm) var(--sp-md) var(--sp-xl)}.advisor-orb,.brand-mark{position:relative;flex:none;width:32px;height:32px;isolation:isolate}.advisor-orb:before,.brand-mark:before{content:"";position:absolute;inset:-30%;z-index:-1;border-radius:var(--r-round);background:radial-gradient(circle,var(--deep-turquoise) 0,transparent 70%);opacity:.35}[data-theme=dark] .advisor-orb:before,[data-theme=dark] .brand-mark:before{background:radial-gradient(circle,var(--glow-turquoise) 0,transparent 70%);opacity:.45}.advisor-orb:after,.brand-mark:after{content:"";position:absolute;inset:0;background:url(/legram.png) 50%/contain no-repeat}[data-theme=dark] .advisor-orb:after,[data-theme=dark] .brand-mark:after{filter:drop-shadow(0 0 6px var(--glow-turquoise))}.brand-mark.coach:after{background-image:url(/legram-coach.png);background-size:auto 160%;background-position:center 59%}.brand-mark.lg{width:72px;height:72px}.brand-mark.xl{width:104px;height:104px}.brand-mark.xl:before{inset:-55%;opacity:.5}[data-theme=dark] .brand-mark.xl:before{opacity:.6}.brand-mark.lg:after,.brand-mark.xl:after{animation:legram-float 6s ease-in-out infinite}.brand-mark.lg:before,.brand-mark.xl:before{animation:legram-aura 6s ease-in-out infinite}@keyframes legram-float{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@keyframes legram-aura{0%,to{transform:scale(1)}50%{transform:scale(1.08)}}.brand-name{font-weight:var(--fw-semibold);font-size:var(--fs-body);letter-spacing:-.01em}.navlink{display:flex;align-items:center;gap:var(--sp-md);padding:10px var(--sp-md);border-radius:12px;color:var(--text-2);min-height:var(--tap-min);transition:transform var(--dur-press-out) var(--ease-out-quint)}.navlink:hover{color:var(--text)}.navlink:active{transform:scale(var(--pressed-scale))}.navlink[aria-current=page]{background:var(--accent-soft);color:var(--accent-text);font-weight:var(--fw-semibold)}[data-theme=dark] .navlink[aria-current=page]{background:rgba(50,192,181,.14);color:var(--tab-active)}.navlink svg{width:18px;height:18px;flex:none}.sidenav-foot{margin-top:auto;flex-direction:column;gap:var(--sp-sm);color:var(--text-3);font-size:var(--fs-caption)}.advisor-launch,.sidenav-foot{display:flex;padding:var(--sp-md)}.advisor-launch{align-items:center;gap:var(--sp-md);border-radius:var(--r-medium);background:var(--card);border:1px solid var(--card-border);color:var(--text);min-height:52px}.advisor-orb{width:30px;height:30px}main.content{min-width:0;padding:var(--sp-xl) var(--sp-xl) 120px}@media (min-width:1280px){main.content{padding:var(--sp-2xl) var(--sp-3xl) 120px}}.split{display:grid;grid-template-columns:320px minmax(0,1fr);grid-gap:var(--sp-xl);gap:var(--sp-xl);align-items:start}.split.aside-sm{grid-template-columns:minmax(0,1fr) 320px}.split.aside-md{grid-template-columns:minmax(0,1fr) 340px}.split.aside-lg{grid-template-columns:minmax(0,1fr) 360px}.split.halves{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.pane-list{position:-webkit-sticky;position:sticky;top:var(--sp-2xl)}.legram-bubble{display:flex;align-items:flex-start;gap:var(--sp-md)}.legram-bubble .brand-mark{width:44px;height:44px;margin-top:2px}.legram-bubble .brand-mark:before{inset:-45%;opacity:.45}.legram-bubble.attention .brand-mark:before{opacity:.7;animation:legram-aura 3s ease-in-out infinite}.legram-bubble-body{position:relative;flex:1 1;min-width:0;padding:var(--sp-md) var(--sp-base);border-radius:var(--r-large);border-top-left-radius:var(--r-small);background:linear-gradient(135deg,rgba(50,192,181,.12),rgba(255,215,0,.06));border:1px solid rgba(50,192,181,.18);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:msg-in var(--dur-in) var(--ease-out-quint) both}[data-theme=dark] .legram-bubble-body{background:linear-gradient(135deg,rgba(50,192,181,.1),rgba(255,215,0,.04));border-color:rgba(255,215,0,.12)}.legram-bubble-text{margin:0;font-size:var(--fs-body);line-height:var(--lh-body);color:var(--text)}.legram-bubble-body .chips{margin-top:var(--sp-sm)}.legram-bubble-body .chip.advice{padding:8px 14px;font-size:var(--fs-caption);min-height:34px}.library-split{display:grid;grid-template-columns:220px minmax(0,1fr);grid-gap:0 var(--sp-xl);gap:0 var(--sp-xl);align-items:start}.library-split>*{grid-column:1/-1}.library-split>.filter-fold{grid-column:1}.library-split>.library-main{grid-column:2;min-width:0}.filter-fold>summary{display:none}.filter-rail{position:-webkit-sticky;position:sticky;top:var(--sp-2xl);gap:var(--sp-base)}.filter-rail,.rail-group{display:flex;flex-direction:column}.rail-title{font-weight:var(--fw-semibold);margin-bottom:var(--sp-xs)}.rail-opt,.rail-title{font-size:var(--fs-caption);line-height:var(--lh-caption);color:var(--text-2)}.rail-opt{display:flex;justify-content:space-between;align-items:center;gap:var(--sp-sm);width:100%;text-align:left;padding:6px 10px;border:0;border-radius:var(--r-small);background:transparent}.rail-opt:hover{background:var(--card);color:var(--text)}.rail-opt[aria-checked=true]{background:var(--accent-soft);color:var(--accent-text);font-weight:var(--fw-semibold)}.rail-n{color:var(--text-3);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:var(--fw-regular)}.c-grid,.today-split{align-items:start}.c-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-gap:var(--sp-base);gap:var(--sp-base)}.c-grid>.card+.card{margin-top:0}.c-grid .span-3{grid-column:span 3}.c-grid .span-4{grid-column:span 4}.c-grid .span-5{grid-column:span 5}.c-grid .span-6{grid-column:span 6}.c-grid .span-12{grid-column:span 12}.stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:var(--sp-md);gap:var(--sp-md);margin-bottom:var(--sp-md)}.stat{display:flex;flex-direction:column;gap:2px;min-width:0}.stat-value{font-size:var(--fs-h2);line-height:var(--lh-h2);font-weight:var(--fw-semibold);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.stat-unit{font-size:var(--fs-caption);color:var(--text-3);font-weight:var(--fw-regular)}.sparkline{display:block;margin-top:var(--sp-xs)}.plan-line{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-md);padding:10px 14px;border-radius:12px;background:var(--accent-soft);color:var(--text)}.upnext-time{font-size:var(--fs-h1);line-height:var(--lh-h1);font-weight:var(--fw-semibold);letter-spacing:-.5px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--sp-base);margin-bottom:var(--sp-xl)}.page-head .title{font-size:var(--fs-h2);line-height:var(--lh-h2)}.head-actions{display:flex;gap:var(--sp-sm);align-items:center}.card.tight{padding:var(--sp-base)}.card.flat{box-shadow:none}.card+.card{margin-top:var(--sp-base)}.card-title{font-size:var(--fs-h3);line-height:var(--lh-h3);font-weight:var(--fw-semibold);margin-bottom:var(--sp-md)}.a2hs{margin-bottom:var(--sp-xl)}.a2hs .btn{white-space:nowrap}.card-meta{color:var(--text-3);font-size:var(--fs-caption)}.stack{display:flex;flex-direction:column;gap:var(--sp-base)}.row-between{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-md)}.muted{color:var(--text-3)}.small{font-size:var(--fs-caption);line-height:var(--lh-caption)}.value{font-size:var(--fs-h3);font-weight:var(--fw-semibold);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));grid-gap:var(--sp-md);gap:var(--sp-md)}.kpi{padding:var(--sp-base);border-radius:var(--r-medium);background:var(--accent-soft)}[data-theme=dark] .kpi{background:rgba(255,255,255,.05)}.kpi .value{display:block}.list{display:flex;flex-direction:column;gap:var(--sp-sm)}.list-row{display:grid;grid-template-columns:40px minmax(0,1fr) auto;grid-gap:var(--sp-md);gap:var(--sp-md);align-items:center;padding:var(--sp-md);border-radius:var(--r-medium);color:var(--text);min-height:60px;transition:transform var(--dur-press-out) var(--ease-out-quint),opacity var(--dur-press-out) var(--ease-out-quint)}.list-row:hover{background:var(--card)}.list-row:active{transform:scale(.99);opacity:var(--pressed-opacity)}.list-row[aria-current=true]{background:var(--card);border:1px solid var(--card-border)}.list-row.with-coach{grid-template-columns:40px minmax(0,1fr) minmax(0,84px) auto}.list-row .coach{justify-self:end}.list-row .name{font-weight:var(--fw-semibold)}.list-row .sub{color:var(--text-3);line-height:var(--lh-caption);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.avatar,.list-row .sub{font-size:var(--fs-caption)}.avatar{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;font-weight:var(--fw-semibold);color:var(--text);background:var(--accent-soft);border:1px solid var(--card-border);flex:none}.avatar.lg{width:56px;height:56px;font-size:var(--fs-body-lg)}.avatar{overflow:hidden}.avatar img{width:100%;height:100%;object-fit:cover}.count{min-width:20px;height:20px;padding:0 6px;border-radius:var(--r-round);background:var(--deep-turquoise);color:var(--luxury-black);font:var(--fw-bold) 11px /20px var(--font);text-align:center}.tabs{display:flex;gap:var(--sp-lg);border-bottom:1px solid var(--divider);margin:var(--sp-lg) 0;overflow-x:auto}.tab{padding:10px 0 12px;color:var(--text-3);position:relative;white-space:nowrap;min-height:var(--tap-min)}.tab[aria-current=page]{color:var(--accent-text);font-weight:var(--fw-semibold)}.tab[aria-current=page]:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--accent-text);border-radius:2px}.field{display:flex;flex-direction:column;gap:6px}.field>span{color:var(--text-3);font-size:var(--fs-caption)}.input,.select,.textarea{width:100%;min-height:48px;padding:12px 14px;border-radius:var(--r-medium);background:var(--card);border:1px solid var(--card-border);color:var(--text)}.textarea{min-height:96px;resize:vertical}.input.sm,.select.sm{min-height:40px;padding:8px 10px;border-radius:12px}.select.pill{width:auto;min-height:36px;padding:8px 34px 8px 16px;border-radius:var(--r-round);font-size:var(--fs-caption)}.select{-moz-appearance:none;appearance:none;-webkit-appearance:none;cursor:pointer;padding-right:40px;background-image:linear-gradient(45deg,transparent 50%,var(--text-3) 50%),linear-gradient(135deg,var(--text-3) 50%,transparent 50%);background-position:right 20px center,right 15px center;background-size:5px 5px,5px 5px;background-repeat:no-repeat;transition:border-color var(--dur-in) ease,box-shadow var(--dur-in) ease,background-color var(--dur-in) ease}.select.sm{padding-right:34px;background-position:right 17px center,right 12px center}.select.pill{background-position:right 18px center,right 13px center}.input:hover:not(:focus),.select:hover:not(:focus),.textarea:hover:not(:focus){border-color:var(--text-3)}.input:focus,.input:focus-visible,.select:focus,.select:focus-visible,.textarea:focus,.textarea:focus-visible{outline:none;border-color:var(--accent-text);box-shadow:0 0 0 3px var(--accent-soft)}.select option{background:var(--surface);color:var(--text)}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));grid-gap:var(--sp-base);gap:var(--sp-base)}.actions{justify-content:flex-end;margin-top:var(--sp-base);flex-wrap:wrap}.actions,.search{display:flex;gap:var(--sp-sm)}.search{align-items:center;min-height:52px;padding:0 var(--sp-md);border-radius:18px;background:var(--card);border:1px solid var(--card-border);margin-bottom:var(--sp-md)}.search input{flex:1 1;background:none;border:0;min-height:48px;font-size:15px;letter-spacing:-.2px}.search input:focus{outline:none}.search svg{width:18px;height:18px;color:var(--text-3)}.chips{display:flex;gap:var(--sp-sm);flex-wrap:wrap}.row-between .chips{flex-wrap:nowrap}.chip{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:var(--r-round);background:var(--card);border:1px solid var(--card-border);color:var(--text);font-size:var(--fs-caption);min-height:36px;transition:background var(--dur-in) ease,border-color var(--dur-in) ease,color var(--dur-in) ease}.chip:hover{background:var(--card-hover,var(--card));border-color:var(--text-3)}.chip:active{opacity:var(--pressed-opacity)}.chip[aria-checked=true],.chip[aria-pressed=true],.chip[aria-selected=true]{border-color:var(--accent-text);color:var(--accent-text)}.drawer .chip.advice{padding:6px 12px;font-size:var(--fs-micro);min-height:28px}.empty{padding:var(--sp-2xl) var(--sp-xl);text-align:center;color:var(--text-3);border:1px dashed var(--card-border);border-radius:var(--r-large)}.empty strong{display:block;color:var(--text);margin-bottom:var(--sp-xs)}.month-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-gap:6px;gap:6px}.dow{color:var(--text-3);font-size:var(--fs-micro);text-align:center;padding-bottom:var(--sp-xs)}.day-cell{min-height:84px;padding:8px;border-radius:14px;background:var(--card);border:1px solid transparent;color:var(--text-2);display:flex;flex-direction:column;gap:6px;text-align:left}[data-theme=light] .day-cell{box-shadow:var(--shadow-1)}.month-grid.week .day-cell{min-height:132px}.day-cell.other{opacity:.35}.day-cell.today{border-color:var(--accent-text)}.day-cell[aria-selected=true]{background:var(--accent-soft)}.day-num{font-size:var(--fs-caption);font-weight:var(--fw-semibold)}.day-dots{display:flex;gap:4px;flex-wrap:wrap}.dot{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;font-size:10px;font-weight:var(--fw-semibold);background:var(--deep-turquoise);color:var(--luxury-black)}.dayview{display:flex;flex-direction:column}.slot{display:grid;grid-template-columns:72px minmax(0,1fr);grid-gap:var(--sp-md);gap:var(--sp-md);min-height:56px;border-top:1px solid var(--divider);padding:6px 0}.slot time{color:var(--text-3);font-size:var(--fs-caption);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.slot-time{display:flex;align-items:center;gap:var(--sp-xs);padding-top:4px}.slot-add{width:28px;height:28px;flex:none;display:grid;place-items:center;border-radius:var(--r-round);background:var(--accent-soft);color:var(--accent-text)}@media (hover:hover){.slot-add{opacity:0;transition:opacity var(--dur-out) var(--ease-out-quint)}.slot-add:focus-visible,.slot:hover .slot-add{opacity:1}}.session{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-md);padding:10px 14px;border-radius:12px;background:var(--accent-soft);border-left:3px solid var(--accent-text)}[data-theme=dark] .session{background:rgba(50,192,181,.12)}.session .name{font-weight:var(--fw-semibold)}.builder-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:thin}.builder-table{width:100%;border-collapse:separate;border-spacing:0 var(--sp-xs)}.builder-table th{text-align:left;color:var(--text-3);font-size:var(--fs-micro);font-weight:var(--fw-medium);text-transform:uppercase;letter-spacing:.5px;padding:var(--sp-xs);white-space:nowrap}.builder-table th:nth-child(n+3){text-align:center}.builder-table td{padding:var(--sp-xs);vertical-align:middle}.builder-table td:first-child,.builder-table th:first-child{min-width:calc(var(--sp-5xl) * 2 + var(--sp-lg))}.builder-table td:nth-child(2),.builder-table th:nth-child(2){min-width:calc(var(--sp-5xl) * 3)}.builder-table td:nth-child(n+3):not(:last-child),.builder-table th:nth-child(n+3):not(:last-child){min-width:calc(var(--sp-5xl) + var(--sp-md))}.builder-table td:last-child,.builder-table th:last-child{width:var(--tap-min);min-width:var(--tap-min)}.builder-table td:first-child{border-top-left-radius:var(--r-small);border-bottom-left-radius:var(--r-small)}.builder-table td:last-child{border-top-right-radius:var(--r-small);border-bottom-right-radius:var(--r-small)}.builder-table td:nth-child(3){box-shadow:inset 1px 0 0 var(--divider)}.builder-row td{background:rgba(255,255,255,.02)}[data-theme=light] .builder-row td{background:rgba(0,0,0,.015)}.builder-row:focus-within td,.builder-row:hover td{background:var(--accent-soft)}.builder-row.excluded{opacity:.5}.builder-row.excluded:focus-within td,.builder-row.excluded:hover td{background:rgba(255,255,255,.02)}[data-theme=light] .builder-row.excluded:focus-within td,[data-theme=light] .builder-row.excluded:hover td{background:rgba(0,0,0,.015)}.why{color:var(--warning-text);font-size:var(--fs-micro)}.target-bar{height:6px;border-radius:3px;background:var(--divider);overflow:hidden}.target-bar>span{display:block;height:100%;background:var(--accent-text);border-radius:3px;transition:width var(--dur-in) var(--ease-out-quint)}.target-bar.over>span{background:var(--warning-text)}.pattern{color:var(--text-3);font-size:var(--fs-micro)}.builder-table .input,.builder-table .select,.builder-table button.input{width:100%;height:var(--sp-3xl);min-height:var(--sp-3xl);padding:0 var(--sp-sm);line-height:var(--lh-body);box-sizing:border-box;background:var(--card);border-color:transparent}.builder-table .select{padding-right:var(--sp-xl)}.builder-table button.input{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left}.builder-name .input{font-weight:var(--fw-semibold)}.builder-table input[type=number]{text-align:center;padding:0;-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield}.builder-table input[type=number]::-webkit-inner-spin-button,.builder-table input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.builder-table .input:focus,.builder-table .select:focus,.builder-table button.input:focus{outline:none;border-color:var(--accent-text);box-shadow:0 0 0 2px var(--accent-soft)}.builder-table .input:hover:not(:focus),.builder-table .select:hover:not(:focus){border-color:var(--text-3)}.builder-table .input::placeholder{color:var(--text-3);opacity:.6}.builder-table .builder-remove{width:var(--sp-3xl);height:var(--sp-3xl);min-height:var(--sp-3xl);padding:0;justify-content:center;opacity:.45;background:transparent;border-color:transparent}.builder-remove:focus-visible,.builder-row:focus-within .builder-remove,.builder-row:hover .builder-remove{opacity:1;background:var(--card);border-color:var(--card-border)}.builder-empty{padding:var(--sp-2xl) var(--sp-xl);text-align:center;color:var(--text-3);background:linear-gradient(145deg,rgba(50,192,181,.03),transparent);border-radius:var(--r-medium)}.builder-empty-icon{width:48px;height:48px;margin:0 auto var(--sp-sm);opacity:.5}.chip.advice{background:var(--accent-soft);color:var(--accent-text);border-color:transparent}.chip.advice:hover{background:var(--accent-text);color:var(--card);border-color:var(--accent-text)}.chip.advice.generate:hover{color:var(--luxury-black)}.toast-success{animation:toast-success var(--dur-in) var(--ease-out-quint)}@keyframes toast-success{0%{transform:scale(.9);opacity:0}to{transform:scale(1);opacity:1}}.suggestion-panel{padding:var(--sp-lg);border-radius:var(--r-large);background:linear-gradient(145deg,rgba(50,192,181,.08),rgba(255,215,0,.04));border:1px solid rgba(50,192,181,.15);margin-top:var(--sp-lg);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}[data-theme=dark] .suggestion-panel{background:linear-gradient(145deg,rgba(50,192,181,.12),rgba(255,215,0,.06));border-color:rgba(255,215,0,.15)}.suggestion-panel.collapsed{padding:var(--sp-md);background:transparent;border:none;-webkit-backdrop-filter:none;backdrop-filter:none}.legram-mini{display:inline-flex;width:24px;height:24px}.legram-mini img{width:100%;height:100%;object-fit:contain}.suggestion-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--sp-md)}.suggestion-title{display:flex;align-items:center;gap:var(--sp-md);color:var(--text)}.suggestion-chips{display:flex;flex-wrap:wrap;gap:var(--sp-sm)}.suggestion-chip{display:inline-flex;align-items:center;gap:6px;padding:10px 16px;animation:suggestion-in var(--dur-in) var(--ease-out-quint);background:var(--card);border:1px solid var(--card-border);box-shadow:var(--shadow-1)}.suggestion-chip:hover{background:var(--accent-soft);border-color:var(--accent-text);transform:translateY(-1px);box-shadow:var(--shadow-2)}.suggestion-chip.unavailable{opacity:.5;cursor:default;box-shadow:none}.suggestion-chip.unavailable:hover{transform:none;box-shadow:none}.suggestion-name{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.suggestion-loading{padding:var(--sp-sm) 0}@keyframes suggestion-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}.spin{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.web-search-results{display:flex;flex-direction:column;gap:var(--sp-sm);max-height:50vh;overflow-y:auto}.web-search-item{display:flex;gap:var(--sp-sm);padding:var(--sp-sm);border-radius:var(--r-medium);background:var(--card);border:1px solid var(--card-border)}.web-search-image{width:80px;height:80px;object-fit:cover;border-radius:var(--r-small);flex-shrink:0}.web-search-content{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:4px}.web-search-header{display:flex;align-items:center;gap:var(--sp-xs);flex-wrap:wrap}.web-search-name{font-weight:var(--fw-semibold)}.web-search-description{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.web-search-actions{display:flex;gap:var(--sp-xs);margin-top:auto}.drawer{position:-webkit-sticky;position:sticky;top:0;height:100vh;overflow:auto;padding:var(--sp-xl) var(--sp-base);background:var(--accent-soft);border-left:1px solid var(--card-border);display:flex;flex-direction:column;gap:var(--sp-base)}.drawer-scrim{display:none;position:fixed;inset:0;z-index:39;border:0;background:rgba(10,10,10,.06);animation:msg-in var(--dur-in) var(--ease-out-quint) both}[data-theme=dark] .drawer{background:rgba(50,192,181,.06)}.drawer h2{font-size:var(--fs-body-lg);font-weight:var(--fw-semibold);color:var(--accent-text)}.advisor-hero{display:grid;justify-items:center;text-align:center;grid-gap:var(--sp-base);gap:var(--sp-base)}.advisor-welcome{font-size:var(--fs-body);line-height:var(--lh-body);font-weight:var(--fw-semibold)}.draft{padding:var(--sp-base);border-radius:var(--r-medium);background:var(--card);border:1px solid var(--card-border);display:flex;flex-direction:column;gap:var(--sp-sm)}.draft .sources{color:var(--text-3);font-size:var(--fs-micro)}.draft .body{white-space:pre-wrap;font-size:var(--fs-caption);line-height:var(--lh-caption)}.ask{display:flex;align-items:center;gap:var(--sp-xs);margin-top:auto;padding:4px 4px 4px var(--sp-md);border-radius:var(--r-round);background:var(--card);border:1px solid var(--card-border)}.ask input{flex:1 1;min-width:0;min-height:36px;padding:0;background:none;border:0;font-size:var(--fs-body)}.ask:focus-within{border-color:var(--accent-text)}.ask input:focus{outline:none}.ask .btn{border-radius:var(--r-round)}.assistant-messages{flex:1 1;overflow-y:auto;display:flex;flex-direction:column;gap:var(--sp-base);padding:var(--sp-sm) 0}.message{max-width:92%;padding:var(--sp-base) var(--sp-md);border-radius:var(--r-large);font-size:var(--fs-body);line-height:var(--lh-body);animation:msg-in var(--dur-in) var(--ease-out-quint) both}@keyframes msg-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.message-user{align-self:flex-end;background:var(--accent-text);color:var(--surface);border-bottom-right-radius:var(--r-xs)}.message-assistant{align-self:flex-start;background:linear-gradient(135deg,rgba(50,192,181,.12),rgba(255,215,0,.06));border:1px solid rgba(50,192,181,.18);border-bottom-left-radius:var(--r-xs);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}[data-theme=dark] .message-assistant{background:linear-gradient(135deg,rgba(50,192,181,.1),rgba(255,215,0,.04));border-color:rgba(255,215,0,.12)}.message-system{align-self:center;max-width:100%;background:transparent;color:var(--text-3);font-size:var(--fs-micro);padding:var(--sp-xs) var(--sp-sm)}.message-content{white-space:pre-wrap;word-break:break-word}.chat-link{color:var(--accent-text);font-weight:var(--fw-semibold);text-decoration:none;border-bottom:1px solid var(--accent-soft)}.chat-link:hover{border-bottom-color:var(--accent-text)}.message-user .chat-link{color:inherit}.message .sources{margin-top:var(--sp-xs);padding-top:var(--sp-xs);border-top:1px solid rgba(255,215,0,.15);color:var(--gold);font-size:var(--fs-caption);opacity:.8}.message .actions{margin-top:var(--sp-sm);flex-wrap:wrap}.message .actions,.row-tight{display:flex;gap:var(--sp-xs)}.row-tight{align-items:center}.assistant-history{flex:1 1;overflow-y:auto;display:flex;flex-direction:column;gap:var(--sp-base)}.assistant-chips{display:flex;flex-direction:column;gap:var(--sp-sm);align-items:stretch}.assistant-chips .chip.advice{justify-content:center;font-size:var(--fs-body);min-height:48px;padding:12px 18px}.thread-list{flex-direction:column}.thread-item,.thread-list{display:flex;gap:var(--sp-xs)}.thread-item{align-items:center;padding:var(--sp-sm) var(--sp-base);border-radius:var(--r-medium);background:var(--card);border:1px solid var(--card-border)}.thread-btn{flex:1 1;min-width:0;text-align:left;background:none;border:0;color:var(--text);cursor:pointer}.thread-title{display:block;font-size:var(--fs-caption);font-weight:var(--fw-medium);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.thread-date{display:block;font-size:var(--fs-micro);color:var(--text-3)}.thread-delete{flex:none;width:28px;height:28px;display:grid;place-items:center;border-radius:var(--r-round);background:transparent;border:0;color:var(--text-3);cursor:pointer;transition:color var(--dur-out) var(--ease-out-quint),background var(--dur-out) var(--ease-out-quint)}.thread-delete:hover{color:var(--critical);background:rgba(255,107,107,.12)}.bodymap{display:grid;grid-template-columns:minmax(220px,300px) minmax(0,1fr);grid-gap:var(--sp-xl);gap:var(--sp-xl);align-items:start}.bodymap svg{width:100%;height:auto;display:block}.region{fill:transparent;cursor:pointer;transition:fill var(--dur-press-out) var(--ease-out-quint)}.region:hover{fill:rgba(50,192,181,.18)}.region[aria-pressed=true]{fill:rgba(50,192,181,.32)}.hotspot{pointer-events:none}.silhouette{fill:var(--card);stroke:var(--card-border);stroke-width:1.2}[data-theme=light] .silhouette{fill:#EEF3F5;stroke:#C9D3D9}.flip{justify-content:center;gap:var(--sp-sm);margin-top:var(--sp-sm)}.flip,.note{display:flex}.note{padding:var(--sp-md) var(--sp-base);border-radius:var(--r-medium);background:var(--card);border:1px solid var(--card-border);flex-direction:column;gap:6px}.note .head{display:flex;justify-content:space-between;align-items:center;gap:var(--sp-sm)}.note .rules{color:var(--text-3);font-size:var(--fs-caption)}.consents{display:flex;flex-direction:column}.consents .note{padding:var(--sp-md) 0;border:0;border-radius:0;background:none}.consents .note+.note{border-top:1px solid var(--divider)}.severity{width:8px;height:8px;border-radius:50%;display:inline-block;margin-right:6px}.severity.mild{background:var(--fresh)}.severity.moderate{background:var(--warning)}.severity.severe{background:var(--critical)}.figure-stage{position:relative;aspect-ratio:1/2;width:100%;max-width:280px;margin-inline:auto}.figure-stage .figure-base,.figure-stage .figure-overlay{position:absolute;inset:0;width:100%;height:100%}.figure-area polygon,.figure-hit{fill:var(--graphite-night);fill-opacity:0;cursor:pointer;transition:fill-opacity var(--dur-press-out) var(--ease-out-quint)}.figure-area:focus-visible,.figure-hit:focus-visible{outline:none}.figure-area:focus-visible polygon,.figure-area:hover polygon{fill-opacity:.16}.figure-hit:focus-visible,.figure-hit:hover{fill-opacity:.16}.figure-area[aria-pressed=true] polygon,.figure-hit[aria-pressed=true]{fill-opacity:.38}.figure-area.primary polygon{fill:var(--deep-turquoise);fill-opacity:.72;stroke:var(--deep-turquoise);stroke-opacity:.9;stroke-width:6;stroke-linejoin:round;filter:drop-shadow(0 0 14px rgba(64,224,208,.55))}.figure-area.secondary polygon{fill:var(--deep-turquoise);fill-opacity:.32;stroke:var(--deep-turquoise);stroke-opacity:.45;stroke-width:4;stroke-linejoin:round}.figure-area.noted polygon{fill:var(--deep-turquoise);fill-opacity:.2;stroke:var(--deep-turquoise);stroke-width:4}.figure-area[aria-pressed=true]:is(.primary,.secondary,.noted) polygon{fill:var(--graphite-night);fill-opacity:.38}.figure-dot{pointer-events:none;stroke:var(--surface);stroke-width:5}.figure-dot.mild{fill:var(--fresh)}.figure-dot.moderate{fill:var(--warning)}.figure-dot.severe{fill:var(--critical)}.figure-labels{position:absolute;inset:0;pointer-events:none}.figure-chip{position:absolute;display:inline-flex;align-items:center;max-width:42%;padding:var(--sp-xs) var(--sp-sm);border-radius:var(--r-round);background:var(--card);border:1px solid var(--card-border);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);color:var(--text-2);font-size:var(--fs-micro);line-height:var(--lh-micro);transform:translateY(-50%)}.figure-chip.left{left:0}.figure-chip.right{right:0}.figure-inline{width:100%;max-width:220px;margin:0 auto}.figure-legend{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--sp-xs) var(--sp-md);margin-top:var(--sp-sm);color:var(--text-2);font-size:var(--fs-micro);line-height:var(--lh-micro)}.figure-legend span{display:inline-flex;align-items:center;gap:6px}.figure-legend i{width:10px;height:10px;border-radius:50%;background:var(--deep-turquoise);box-shadow:0 0 8px rgba(64,224,208,.6)}.figure-legend i.soft{opacity:.4;box-shadow:none}.share-wrap{max-width:720px;margin:0 auto;padding:var(--sp-3xl) var(--sp-base) var(--sp-5xl);position:relative;z-index:1}.share-head{display:flex;align-items:center;gap:var(--sp-base);margin-bottom:var(--sp-2xl)}.share-foot{margin-top:var(--sp-3xl);text-align:center;color:var(--text-3);font-size:var(--fs-caption)}.feedback{display:flex;gap:var(--sp-sm);flex-wrap:wrap;margin-top:var(--sp-md)}.auth-wrap{min-height:100vh;display:grid;place-items:center;padding:var(--sp-xl);position:relative;z-index:1}.auth-card{width:100%;max-width:440px}.roles{display:grid;grid-gap:var(--sp-sm);gap:var(--sp-sm);margin:var(--sp-lg) 0}.role{display:flex;align-items:center;justify-content:space-between;padding:14px var(--sp-base);border-radius:var(--r-medium);border:1px solid var(--card-border);background:var(--card);min-height:56px;text-align:left;color:var(--text)}.auth-cta{gap:var(--sp-md)}.role[aria-checked=true],.role[aria-pressed=true]{border-color:var(--accent-text)}.role:disabled{opacity:.5;cursor:default}.toast{position:fixed;left:50%;bottom:96px;transform:translateX(-50%);padding:12px 18px;border-radius:var(--r-medium);background:var(--surface);border:1px solid var(--card-border);box-shadow:var(--shadow-2);z-index:60;font-size:var(--fs-caption)}.sheet-wrap{position:fixed;inset:0;z-index:70;display:flex;justify-content:flex-end}.sheet-scrim{position:absolute;inset:0;background:transparent;border:0}.sheet{position:relative;width:min(460px,100%);height:100%;overflow:auto;padding:var(--sp-xl) var(--sp-base);background:var(--surface);border-left:1px solid var(--card-border);box-shadow:var(--shadow-3);display:flex;flex-direction:column;gap:var(--sp-base);animation:sheet-in var(--dur-in) var(--ease-out-quint) both}@keyframes sheet-in{0%{opacity:0;transform:translateY(var(--rise-sheet))}to{opacity:1;transform:none}}.sheet-head{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-md)}.sheet-head h2{font-size:var(--fs-h3);line-height:var(--lh-h3);font-weight:var(--fw-semibold)}.sheet-body{display:flex;flex-direction:column;gap:var(--sp-base)}.sheet-foot{margin-top:auto;display:flex;gap:var(--sp-sm);justify-content:flex-end;flex-wrap:wrap}.media-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(212px,1fr));grid-gap:var(--sp-base);gap:var(--sp-base)}.media-card{position:relative;display:flex;flex-direction:column;gap:var(--sp-sm);padding:var(--sp-sm);border-radius:var(--r-large);background:var(--card);border:1px solid var(--card-border);transition:transform var(--dur-out) var(--ease-out-quint)}.media-card:hover{transform:translateY(calc(var(--sp-xs) * -.5))}.thumb{position:relative;display:block;width:100%;aspect-ratio:16/9;padding:0;border:0;border-radius:var(--r-medium);overflow:hidden;background:var(--surface)}.thumb img,.thumb video{display:block;width:100%;height:100%;object-fit:cover}.thumb .thumb-end,.thumb video{position:absolute;inset:0}.thumb .thumb-end{opacity:0}.thumb.frames{aspect-ratio:16/9}.thumb img[src*="/library/exercises/"]{object-fit:cover;background:#2b2a27}.thumb .thumb-end.moving{animation:rep-frames 3.2s var(--ease-out-quint) infinite}@keyframes rep-frames{0%,20%{opacity:0}45%,70%{opacity:1}95%,to{opacity:0}}@media (prefers-reduced-motion:reduce){.thumb .thumb-end.moving{animation:none}}.recipe-cover{display:block;width:100%;aspect-ratio:4/3;border-radius:var(--r-large);overflow:hidden;background:var(--surface);border:1px solid var(--card-border)}.recipe-cover img{display:block;width:100%;height:100%;object-fit:cover}.thumb-blank{display:grid;place-items:center;width:100%;height:100%;padding:var(--sp-md);text-align:center;color:var(--text-2);font-size:var(--fs-caption);line-height:var(--lh-caption);background:linear-gradient(135deg,var(--card),var(--surface))}.media-meta{display:flex;flex-direction:column;gap:var(--sp-xs);padding:0 var(--sp-xs) var(--sp-xs)}.media-meta .name{font-weight:var(--fw-semibold);font-size:var(--fs-caption);line-height:var(--lh-caption)}.media-meta .sub{color:var(--text-3);font-size:var(--fs-micro);line-height:var(--lh-micro)}.star{position:absolute;top:var(--sp-md);right:var(--sp-md);width:var(--tap-min);height:var(--tap-min);display:grid;place-items:center;border-radius:var(--r-round);background:var(--card);border:1px solid var(--card-border);color:var(--text-3);transition:transform var(--dur-press-out) var(--ease-out-quint)}.star:active{transform:scale(var(--pressed-scale))}.star[aria-pressed=true]{color:var(--accent-text);border-color:var(--accent-text)}.star:before{content:"";position:absolute;inset:0;border-radius:var(--r-round);background:radial-gradient(circle,var(--deep-turquoise) 0,transparent 70%);opacity:.35}[data-theme=dark] .star:before{background:radial-gradient(circle,var(--glow-turquoise) 0,transparent 70%);opacity:.45}.star img{position:relative}[data-theme=dark] .star[aria-pressed=true] img{filter:drop-shadow(0 0 6px var(--glow-turquoise))}.star img{transition:filter var(--dur-in) ease,opacity var(--dur-in) ease}.star:not([aria-pressed=true]) img{filter:grayscale(1);opacity:.45}.star:not([aria-pressed=true]):before{opacity:0}.embed{width:100%;aspect-ratio:16/9;border:0;border-radius:var(--r-medium);display:block}.detail-2col{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);grid-gap:var(--sp-xl);gap:var(--sp-xl);align-items:start}.player-thumbs{display:flex;gap:var(--sp-sm);flex-wrap:wrap}.player-thumbs .thumb{width:96px}.pick-item{grid-template-columns:minmax(0,1fr) auto;grid-gap:var(--sp-sm);gap:var(--sp-sm)}.pick-item,.pick-row{display:grid;align-items:center}.pick-row{grid-template-columns:64px minmax(0,1fr) auto;grid-gap:var(--sp-md);gap:var(--sp-md);width:100%;min-height:56px;padding:var(--sp-sm);border:1px solid transparent;border-radius:var(--r-medium);background:none;color:var(--text);text-align:left}.pick-row:hover{background:var(--card)}.pick-row[aria-current=true]{border-color:var(--accent-text)}.pick-row.excluded{opacity:var(--pressed-opacity)}.pick-row .thumb{aspect-ratio:1;border-radius:var(--r-small)}@media (prefers-reduced-motion:reduce){.brand-mark.lg:after,.brand-mark.lg:before,.brand-mark.xl:after,.brand-mark.xl:before,.sheet{animation:none}.chip:active,.list-row:active,.media-card:hover,.navlink:active,.star:active{transform:none}.figure-area polygon,.figure-hit{transition:none}}@media (max-width:1279px){.shell.with-drawer{grid-template-columns:240px minmax(0,1fr)}.drawer{position:fixed;right:var(--sp-base);top:var(--sp-base);bottom:var(--sp-base);height:auto;width:min(400px,calc(100% - 2 * var(--sp-base)));z-index:40;border:1px solid var(--card-border);border-radius:var(--r-large);box-shadow:var(--shadow-3);animation:sheet-in var(--dur-in) var(--ease-out-quint) both}.drawer,[data-theme=dark] .drawer{background:var(--surface)}.drawer-scrim{display:block}}@media (max-width:1100px){.builder-scroll{overflow:visible}.builder-table,.builder-table tbody{display:flex;flex-direction:column;gap:var(--sp-sm);width:100%;min-width:0}.builder-table thead{display:none}.builder-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:var(--sp-sm);gap:var(--sp-sm);padding:var(--sp-sm);border-radius:var(--r-medium);background:rgba(255,255,255,.02)}[data-theme=light] .builder-row{background:rgba(0,0,0,.015)}.builder-row td,.builder-row:focus-within td,.builder-row:hover td{display:flex;flex-direction:column;gap:var(--sp-xs);min-width:0;width:auto;padding:0;background:transparent;box-shadow:none;border-radius:0}.builder-row td:first-child{grid-column:1/3;grid-row:1}.builder-row td:nth-child(2){grid-column:1/-1;grid-row:2}.builder-row td:last-child{grid-column:3;grid-row:1;order:-1;align-items:flex-end;justify-content:flex-end}.builder-row td[data-label]:before{content:attr(data-label);color:var(--text-3);font-size:var(--fs-micro);font-weight:var(--fw-medium);letter-spacing:.5px;text-transform:uppercase}}@media (max-width:900px){.split,.split.aside-lg,.split.aside-md,.split.aside-sm,.split.halves{grid-template-columns:minmax(0,1fr)}.pane-list{position:static}.c-grid .span-3,.c-grid .span-4,.c-grid .span-5,.c-grid .span-6{grid-column:span 12}.library-split{grid-template-columns:minmax(0,1fr)}.library-split>.filter-fold,.library-split>.library-main{grid-column:1}.filter-fold{margin-bottom:var(--sp-md)}.filter-fold>summary{display:inline-flex;list-style:none;cursor:pointer}.filter-fold>summary::-webkit-details-marker{display:none}.filter-rail{position:static;margin-top:var(--sp-md);flex-direction:row;flex-wrap:wrap;gap:var(--sp-base) var(--sp-xl)}.rail-group{min-width:140px}.bodymap,.detail-2col{grid-template-columns:1fr}}@media (max-width:767px){.shell,.shell.with-drawer{grid-template-columns:1fr}.sidenav{display:none}main.content{padding:var(--sp-lg) var(--sp-base) 140px}.page-head{flex-wrap:wrap}.page-head .btn{white-space:nowrap}.list-row .sub{white-space:normal;overflow-wrap:break-word}.drawer{top:auto;left:var(--sp-sm);right:var(--sp-sm);bottom:96px;width:auto;height:72vh;padding-bottom:var(--sp-base);animation:msg-in var(--dur-in) var(--ease-out-quint) both}.builder-table .builder-remove,.builder-table .input,.builder-table .select,.builder-table button.input{height:var(--tap-min);min-height:var(--tap-min)}.suggestion-panel{padding:var(--sp-md);margin:var(--sp-md) calc(-1 * var(--sp-base));border-radius:0;border-left:none;border-right:none}.suggestion-chips{gap:var(--sp-xs)}.suggestion-chip{padding:8px 12px;font-size:var(--fs-micro)}.suggestion-name{max-width:140px}.month-grid.week{grid-template-columns:repeat(4,minmax(0,1fr))}.month-grid.week .dow{display:none}.month-grid.week .day-cell{min-height:84px}}.week-bar{display:flex;align-items:center;flex-wrap:wrap;gap:var(--sp-sm)}.week-rail{display:flex;overflow-x:auto;max-width:100%;padding:var(--sp-xs);border-radius:var(--r-round);background:var(--card);border:1px solid var(--card-border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.week-rail,.week-tab{align-items:center;gap:var(--sp-xs)}.week-tab{display:inline-flex;padding:8px 16px;min-height:36px;border-radius:var(--r-round);color:var(--text-2);font-size:var(--fs-caption);white-space:nowrap;transition:background var(--dur-in) ease,color var(--dur-in) ease}.week-tab:hover{color:var(--text)}.week-tab[aria-selected=true]{background:var(--accent-soft);color:var(--accent-text);font-weight:var(--fw-semibold)}.week-tag{font-size:var(--fs-micro);color:var(--text-3);padding-left:var(--sp-xs);border-left:1px solid var(--divider)}.week-tab[aria-selected=true] .week-tag{color:var(--accent-text)}.week-rail-actions{display:inline-flex;flex-wrap:wrap;gap:var(--sp-xs)}.week-rail-actions .chip{min-height:32px;padding:6px 12px}.day-head{display:flex;flex-direction:column;gap:var(--sp-xs);min-width:0;flex:1 1 260px}.day-meta{font-size:var(--fs-micro);color:var(--text-3);padding-left:var(--sp-xs)}input.day-title{width:100%;max-width:440px;font-weight:var(--fw-semibold)}.share-ex-list{list-style:none;margin:var(--sp-md) 0 0;padding:0;display:grid;grid-gap:var(--sp-xs);gap:var(--sp-xs)}.share-ex{display:grid;grid-template-columns:auto auto 1fr auto;align-items:center;grid-gap:var(--sp-md);gap:var(--sp-md);padding:var(--sp-md) 0;border-bottom:1px solid var(--divider)}.share-ex:last-child{border-bottom:0}.share-ex-n{font-size:var(--fs-micro);color:var(--accent-text);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:.04em}.share-ex-body{min-width:0}.share-ex-body,.share-rx{display:flex;flex-direction:column;gap:2px}.share-rx{align-items:flex-end;padding:6px 12px;border-radius:var(--r-medium);background:var(--accent-soft);font-size:var(--fs-caption);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.share-rx .muted,.share-slot{font-size:var(--fs-micro)}.share-slot{display:flex;justify-content:space-between;text-transform:uppercase;letter-spacing:.08em;color:var(--accent-text);padding-bottom:var(--sp-xs);border-bottom:1px solid var(--divider)}@media (max-width:520px){.share-ex{grid-template-columns:auto auto 1fr}.share-rx{grid-column:3;align-items:flex-start;justify-self:start}}.row-thumb{flex:none;display:inline-grid;place-items:center;width:44px;height:44px;border-radius:var(--r-medium);overflow:hidden;background:var(--accent-soft);border:1px solid var(--card-border)}.row-thumb.photo{background:var(--surface)}.row-thumb img{width:100%;height:100%;object-fit:cover;display:block}.thumb-emoji{font-size:var(--fs-h3);line-height:1}.thumb-mono{font-size:var(--fs-micro);font-weight:var(--fw-semibold);color:var(--accent-text);letter-spacing:.04em}.with-thumb{display:flex;align-items:center;gap:var(--sp-md);min-width:0}.with-thumb>:last-child{flex:1 1;min-width:0}[role=button],[role=radio],[role=tab],a,button,label,summary{touch-action:manipulation;-webkit-tap-highlight-color:transparent}html{text-size-adjust:100%}.sheet{overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.tabs,.week-rail{overscroll-behavior-x:contain;scrollbar-width:none}.tabs::-webkit-scrollbar,.week-rail::-webkit-scrollbar{display:none}@media (pointer:coarse){.slot-add{width:40px;height:40px;opacity:1}.chip,.rail-opt{min-height:40px}.star{width:44px;height:44px}}@media (max-width:767px){.ask input,.input,.search input,.select,.textarea,input,select,textarea{font-size:16px}body,html{overflow-x:hidden}main.content{overflow-x:clip;padding-bottom:calc(120px + env(safe-area-inset-bottom, 0px))}.row-between{flex-wrap:wrap;row-gap:var(--sp-sm)}.row-between>*{min-width:0}.actions{flex-wrap:wrap}.page-head>*{min-width:0}.page-head .actions,.page-head>div:last-child:not(:first-child){display:flex;flex-wrap:wrap;gap:var(--sp-sm)}.page-head .btn{white-space:normal}.title,h1,h2,h3{overflow-wrap:anywhere}iframe,img,video{max-width:100%}.tabs{margin-inline:calc(-1 * var(--sp-base));padding-inline:var(--sp-base);gap:var(--sp-md);scroll-snap-type:x proximity}.tabs .tab{scroll-snap-align:start}.filter-rail{flex-direction:column;gap:var(--sp-md)}.rail-group{min-width:0;flex-direction:row;flex-wrap:nowrap;gap:var(--sp-xs);overflow-x:auto;scrollbar-width:none;margin-inline:calc(-1 * var(--sp-base));padding:2px var(--sp-base)}.rail-group::-webkit-scrollbar{display:none}.rail-title{flex:none;align-self:center;margin:0 var(--sp-xs) 0 0}.rail-opt{flex:none;width:auto;white-space:nowrap;padding:8px 14px;border-radius:var(--r-round);border:1px solid var(--card-border);background:var(--card)}.rail-opt .rail-n{margin-left:6px}.media-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-md)}.media-card .media-meta .name{font-size:var(--fs-caption)}.media-card .media-meta .sub{font-size:var(--fs-micro)}.sheet-wrap{justify-content:stretch}.sheet{width:100%;border-left:0;padding:0 var(--sp-base) calc(var(--sp-xl) + env(safe-area-inset-bottom, 0px));animation-name:sheet-up}.sheet-head{position:-webkit-sticky;position:sticky;top:0;z-index:2;margin:0 calc(-1 * var(--sp-base));padding:calc(var(--sp-md) + env(safe-area-inset-top, 0px)) var(--sp-base) var(--sp-md);background:var(--surface);border-bottom:1px solid var(--divider)}.sheet-head .chip{width:40px;height:40px;padding:0;justify-content:center}.sheet-foot{position:-webkit-sticky;position:sticky;bottom:0;margin:0 calc(-1 * var(--sp-base));padding:var(--sp-md) var(--sp-base) calc(var(--sp-md) + env(safe-area-inset-bottom, 0px));background:var(--surface);border-top:1px solid var(--divider)}.drawer,.toast{bottom:calc(96px + env(safe-area-inset-bottom, 0px))}.toast{max-width:calc(100% - 32px)}}@media (max-width:359px){.media-grid{grid-template-columns:minmax(0,1fr)}}@keyframes sheet-up{0%{transform:translateY(24px);opacity:0}to{transform:none;opacity:1}}@media (prefers-reduced-motion:reduce){.sheet{animation:none}}.grid-more{display:flex;justify-content:center;padding:var(--sp-lg) 0}@media (max-width:767px){.chips,.row-between .chips{flex-wrap:wrap}.rail-group{align-self:stretch;width:calc(100% + 2 * var(--sp-base));box-sizing:border-box}}@media (hover:none){.media-card:hover{transform:none}.rail-opt:hover{background:transparent}.rail-opt[aria-checked=true]:hover{background:var(--accent-soft)}}