:root{--font-ui:"Inter",ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;--font-mono:"JetBrains Mono",ui-monospace,"SF Mono",Menlo,Consolas,monospace;--fs-xs:0.8571rem;--fs-sm:0.9286rem;--fs-md:1rem;--fs-lg:1.1429rem;--fs-xl:1.4286rem;--fs-2xl:1.7143rem;--fs-3xl:2.2857rem;--lh-tight:1.2;--lh-base:1.5;--s-1:0.2857rem;--s-2:0.5714rem;--s-3:0.8571rem;--s-4:1.1429rem;--s-5:1.7143rem;--s-6:2.2857rem;--s-7:3.4286rem;--s-8:4.5714rem;--r-sm:0.4286rem;--r-md:0.5714rem;--r-lg:0.8571rem;--r-xl:1rem;--r-full:999px;--dur-fast:150ms;--dur-base:200ms;--dur-slow:250ms;--ease:cubic-bezier(.2,.0,.0,1);--content-max:1200px;--sidebar-w:232px;--rail-w:64px;--topbar-h:4rem;--touch:44px;--coach-w:320px;--control-h:2.8571rem;--control-h-sm:2.2857rem;--control-h-lg:3.1429rem;--brand-hoa:#2F7D5B;--brand-mlr:#B5473A;--brand-club:#D96A12;--brand-noir:#5B3A7E;--brand-chip-border:transparent;--on-color-light:#FFFFFF;--on-color-dark:#121214;--pillar-1:var(--info);--pillar-2:var(--ok);--pillar-3:var(--warn);--pillar-4:var(--brand-noir);--pillar-5:var(--brand-mlr);--pillar-6:var(--accent);--pillar-7:var(--brand-hoa);--pillar-8:var(--danger)}@media (min-width:2000px){:root{--content-max:1520px}}html{font-size:17.5px}html[data-text=default]{font-size:14px}html[data-text=comfortable]{font-size:15.75px}html[data-text=large]{font-size:17.5px}[data-skin=light]{color-scheme:light;--surface-0:#FAFAF8;--surface-1:#FFFFFF;--surface-2:#F3F3F0;--surface-3:#EAEAE6;--surface-inverse:#1A1A1F;--text-1:#1A1A1F;--text-2:#55555E;--text-3:#6F6F79;--text-inverse:#FFFFFF;--text-on-accent:#FFFFFF;--border-1:#E6E6E1;--border-2:#CFCFC8;--border-focus:#4338CA;--accent:#4338CA;--accent-hover:#3730A3;--accent-soft:#EEEDFB;--accent-text:#3B35B0;--ok:#1F7A4D;--ok-soft:#E3F3EA;--warn:#8A5200;--warn-soft:#FBF0DA;--danger:#B42318;--danger-soft:#FCE8E6;--info:#175CD3;--info-soft:#E4EEFC;--shadow-1:0 1px 2px rgba(20,20,30,.06);--shadow-2:0 4px 12px rgba(20,20,30,.08);--shadow-3:0 16px 40px rgba(20,20,30,.14);--skeleton:linear-gradient(90deg,#EFEFEC 25%,#F7F7F4 50%,#EFEFEC 75%);--scrim:rgba(20,20,30,.45)}:root:not([data-skin]),[data-skin=dark]{color-scheme:dark;--surface-0:#141417;--surface-1:#1C1C21;--surface-2:#232329;--surface-3:#2B2B32;--surface-inverse:#F2F2F5;--text-1:#F2F2F5;--text-2:#B8B8C2;--text-3:#8E8E9A;--text-inverse:#141417;--text-on-accent:#0F0E2E;--border-1:#2C2C34;--border-2:#3E3E48;--border-focus:#A5A0F8;--accent:#A5A0F8;--accent-hover:#B9B5FA;--accent-soft:#272552;--accent-text:#BDB9FB;--ok:#5ED397;--ok-soft:#16301F;--warn:#F2B75A;--warn-soft:#332512;--danger:#F58B82;--danger-soft:#3A1A17;--info:#7FB2FF;--info-soft:#15274A;--shadow-1:0 1px 2px rgba(0,0,0,.4);--shadow-2:0 4px 12px rgba(0,0,0,.45);--shadow-3:0 16px 40px rgba(0,0,0,.6);--skeleton:linear-gradient(90deg,#232329 25%,#2B2B32 50%,#232329 75%);--scrim:rgba(0,0,0,.6)}[data-skin=slate]{color-scheme:light;--surface-0:#F3F5F8;--surface-1:#FFFFFF;--surface-2:#ECEFF3;--surface-3:#E1E6EC;--surface-inverse:#111827;--text-1:#111827;--text-2:#475061;--text-3:#636B7A;--text-inverse:#FFFFFF;--text-on-accent:#FFFFFF;--border-1:#DDE2E9;--border-2:#C3CAD4;--border-focus:#1D4ED8;--accent:#1D4ED8;--accent-hover:#1E40AF;--accent-soft:#E4ECFB;--accent-text:#1A44BF;--ok:#1B7A4A;--ok-soft:#E1F3EA;--warn:#85500A;--warn-soft:#FBEFD9;--danger:#B3261E;--danger-soft:#FCE8E7;--info:#1559B8;--info-soft:#E3EDFB;--shadow-1:0 1px 2px rgba(17,24,39,.06);--shadow-2:0 4px 12px rgba(17,24,39,.08);--shadow-3:0 16px 40px rgba(17,24,39,.14);--skeleton:linear-gradient(90deg,#E9EDF2 25%,#F3F5F8 50%,#E9EDF2 75%);--scrim:rgba(17,24,39,.45)}[data-skin=sand]{color-scheme:light;--surface-0:#F5F0E6;--surface-1:#FDFAF4;--surface-2:#EFE8DB;--surface-3:#E6DDCC;--surface-inverse:#1F1B16;--text-1:#1F1B16;--text-2:#564E44;--text-3:#6F665B;--text-inverse:#FDFAF4;--text-on-accent:#FFFFFF;--border-1:#E3DACB;--border-2:#CBBFAD;--border-focus:#8F3A1C;--accent:#8F3A1C;--accent-hover:#742E15;--accent-soft:#F4E4DA;--accent-text:#853517;--ok:#2A6E48;--ok-soft:#E2EFE5;--warn:#7F4E0A;--warn-soft:#F7EAD2;--danger:#A6271C;--danger-soft:#F8E3DF;--info:#2A5A9E;--info-soft:#E3EAF5;--shadow-1:0 1px 2px rgba(31,27,22,.06);--shadow-2:0 4px 12px rgba(31,27,22,.08);--shadow-3:0 16px 40px rgba(31,27,22,.14);--skeleton:linear-gradient(90deg,#ECE4D5 25%,#F5F0E6 50%,#ECE4D5 75%);--scrim:rgba(31,27,22,.45)}[data-skin=contrast]{color-scheme:light;--surface-0:#FFFFFF;--surface-1:#FFFFFF;--surface-2:#F0F0F0;--surface-3:#E4E4E4;--surface-inverse:#000000;--text-1:#000000;--text-2:#1F1F1F;--text-3:#3D3D3D;--text-inverse:#FFFFFF;--text-on-accent:#FFFFFF;--border-1:#8A8A8A;--border-2:#000000;--border-focus:#000000;--accent:#1E1B8F;--accent-hover:#14126B;--accent-soft:#E6E5F7;--accent-text:#1E1B8F;--ok:#0B5A32;--ok-soft:#DDF2E6;--warn:#5F3A00;--warn-soft:#FBEBCF;--danger:#8C1D13;--danger-soft:#FBE2DF;--info:#0B3F9E;--info-soft:#DFE9FA;--shadow-1:none;--shadow-2:0 0 0 1px #000;--shadow-3:0 0 0 2px #000;--skeleton:linear-gradient(90deg,#E4E4E4 25%,#F0F0F0 50%,#E4E4E4 75%);--scrim:rgba(0,0,0,.6);--brand-chip-border:var(--text-1)}@media (prefers-reduced-motion:reduce){*,:after,:before{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}[data-reduced-motion="1"] *,[data-reduced-motion="1"] :after,[data-reduced-motion="1"] :before{transition:none!important;animation:none!important}:focus-visible{outline:2px solid var(--border-focus);outline-offset:2px}[data-skin=contrast] :focus-visible{outline-width:3px}@font-face{font-family:Inter;font-weight:400;font-style:normal;font-display:swap;src:url(/fonts/Inter-Regular.woff2) format("woff2")}@font-face{font-family:Inter;font-weight:500;font-style:normal;font-display:swap;src:url(/fonts/Inter-Medium.woff2) format("woff2")}@font-face{font-family:Inter;font-weight:600;font-style:normal;font-display:swap;src:url(/fonts/Inter-SemiBold.woff2) format("woff2")}@font-face{font-family:Inter;font-weight:700;font-style:normal;font-display:swap;src:url(/fonts/Inter-Bold.woff2) format("woff2")}@font-face{font-family:JetBrains Mono;font-weight:400;font-style:normal;font-display:swap;src:url(/fonts/JetBrainsMono-Regular.woff2) format("woff2")}@font-face{font-family:JetBrains Mono;font-weight:500;font-style:normal;font-display:swap;src:url(/fonts/JetBrainsMono-Medium.woff2) format("woff2")}*,:after,:before{box-sizing:border-box}body,html{margin:0;padding:0}body{background:var(--surface-0);color:var(--text-1);font-family:var(--font-ui);font-size:var(--fs-md);line-height:var(--lh-base);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}[aria-disabled=true],button:disabled{cursor:not-allowed}a{color:var(--accent-text)}a:hover{color:var(--accent-hover)}h1,h2,h3,h4{margin:0;line-height:var(--lh-tight);font-weight:600}h1{font-size:var(--fs-2xl)}h2{font-size:var(--fs-lg)}h3{font-size:var(--fs-md)}p{margin:0}img,video{max-width:100%;display:block}.mono{font-family:var(--font-mono)}.muted{color:var(--text-2)}.subtle{color:var(--text-3)}.small{font-size:var(--fs-sm)}.xs{font-size:var(--fs-xs)}.strong{font-weight:600}.nowrap{white-space:nowrap}.truncate{text-overflow:ellipsis;min-width:0}.sr-only,.truncate{overflow:hidden;white-space:nowrap}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;clip:rect(0,0,0,0);border:0}.skip-link{position:absolute;left:var(--s-3);top:-100px;z-index:100;background:var(--surface-inverse);color:var(--text-inverse);padding:var(--s-2) var(--s-3);border-radius:var(--r-md)}.skip-link:focus{top:var(--s-3)}hr.sep{border:0;border-top:1px solid var(--border-1);margin:var(--s-4) 0}.stack{gap:var(--s-4)}.stack,.stack-sm{display:flex;flex-direction:column}.stack-sm{gap:var(--s-2)}.stack-lg{display:flex;flex-direction:column;gap:var(--s-5)}.row{gap:var(--s-2);flex-wrap:wrap}.row,.row-tight{display:flex;align-items:center}.row-tight{gap:var(--s-1)}.row-between{display:flex;align-items:center;justify-content:space-between;gap:var(--s-3);flex-wrap:wrap}.grow{flex:1 1 auto;min-width:0}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:var(--s-4)}.grid-2,.grid-3{display:grid;gap:var(--s-4)}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:var(--s-4)}.grid-4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:var(--s-4);gap:var(--s-4)}.split{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);grid-gap:var(--s-5)}.split,.split-side{display:grid;gap:var(--s-5);align-items:start}.split-side{grid-template-columns:minmax(0,1fr) minmax(16rem,22rem);grid-gap:var(--s-5)}.wizard{display:grid;grid-template-columns:15rem minmax(0,1fr);grid-gap:var(--s-5);gap:var(--s-5);align-items:start}.narrow{max-width:54rem}.narrow-sm{max-width:40rem}@media (max-width:1100px){.split,.split-side{grid-template-columns:minmax(0,1fr)}.grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:760px){.grid-2,.grid-3,.grid-4,.wizard{grid-template-columns:minmax(0,1fr)}}.shell{display:grid;grid-template-columns:var(--sidebar-w) minmax(0,1fr);min-height:100vh}.sidebar{position:-webkit-sticky;position:sticky;top:0;height:100vh;display:flex;flex-direction:column;gap:var(--s-1);padding:var(--s-4) var(--s-3);background:var(--surface-1);border-right:1px solid var(--border-1);overflow-y:auto}.sidebar .logo{display:flex;align-items:center;gap:var(--s-2);padding:var(--s-1) var(--s-2) var(--s-4);text-decoration:none;color:var(--text-1)}.logo-mark{width:2rem;height:2rem;border-radius:var(--r-md);display:grid;place-items:center;background:var(--accent);color:var(--text-on-accent);font-weight:700;flex:none}.logo-text{display:flex;flex-direction:column;line-height:1.2}.logo-text small{color:var(--text-3);font-size:var(--fs-xs)}.nav{flex-direction:column;gap:2px;list-style:none;margin:0;padding:0}.nav,.nav a{display:flex}.nav a{align-items:center;gap:var(--s-3);min-height:2.6rem;padding:0 var(--s-3);border-radius:var(--r-md);color:var(--text-2);text-decoration:none;font-weight:500}.nav a:hover{background:var(--surface-2);color:var(--text-1)}.nav a[aria-current=page]{background:var(--accent-soft);color:var(--accent-text)}.nav .count{margin-left:auto;font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--text-2);background:var(--surface-3);border-radius:var(--r-full);padding:0 var(--s-2)}.sidebar-foot{margin-top:auto;display:flex;flex-direction:column;gap:var(--s-2)}.coach-btn{display:flex;align-items:center;gap:var(--s-3);width:100%;text-align:left;padding:var(--s-2) var(--s-3);border:1px solid var(--border-1);border-radius:var(--r-lg);background:var(--surface-2);color:var(--text-1)}.coach-btn small{display:block;color:var(--text-3);font-size:var(--fs-xs)}.main-col{display:flex;flex-direction:column;min-width:0}.topbar{position:-webkit-sticky;position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:var(--s-3);min-height:var(--topbar-h);padding:var(--s-2) var(--s-5);background:var(--surface-0);border-bottom:1px solid var(--border-1)}.topbar .spacer{flex:1 1}.brand-switch{display:flex;align-items:center;gap:var(--s-2)}.brand-switch label{color:var(--text-3);font-size:var(--fs-sm)}.brand-switch .select-wrap{position:relative}.brand-switch select{min-width:11rem;height:var(--control-h-sm);padding:0 2rem 0 1.8rem;border-radius:var(--r-md);border:1px solid var(--border-2);background:var(--surface-1);color:var(--text-1);font-weight:600;-webkit-appearance:none;-moz-appearance:none;appearance:none}.brand-switch .dot-abs{left:.7rem}.brand-switch .caret,.brand-switch .dot-abs{position:absolute;top:50%;transform:translateY(-50%);pointer-events:none}.brand-switch .caret{right:.6rem;color:var(--text-2)}.account{display:flex;align-items:center;gap:var(--s-2);position:relative}.avatar{width:2rem;height:2rem;border-radius:var(--r-full);display:grid;place-items:center;background:var(--surface-3);color:var(--text-1);font-size:var(--fs-xs);font-weight:600;flex:none}.page{width:100%;max-width:calc(var(--content-max) + 2 * var(--s-5));margin:0 auto;padding:var(--s-5) var(--s-5) var(--s-7)}.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--s-4);flex-wrap:wrap;margin-bottom:var(--s-5)}.page-head h1{font-size:var(--fs-2xl)}.page-head p{color:var(--text-2);margin-top:var(--s-1)}.page-head .actions{display:flex;gap:var(--s-2);flex-wrap:wrap}.banner{display:flex;align-items:center;gap:var(--s-3);padding:var(--s-2) var(--s-5);border-bottom:1px solid var(--border-1);font-size:var(--fs-sm)}.banner .grow{min-width:0}.banner-warn{background:var(--warn-soft);color:var(--text-1)}.banner-warn .banner-icon{color:var(--warn)}.banner-info{background:var(--info-soft);color:var(--text-1)}.banner-info .banner-icon{color:var(--info)}.bottom-tabs{display:none}@media (max-width:1199px) and (min-width:761px){.shell{grid-template-columns:var(--rail-w) minmax(0,1fr)}.sidebar{padding:var(--s-3) var(--s-2);align-items:center}.coach-btn .label,.nav .count,.nav .label,.sidebar .logo-text{display:none}.sidebar .logo{padding:var(--s-1) 0 var(--s-3)}.nav a{padding:0}.coach-btn,.nav a{justify-content:center;width:2.8rem}.coach-btn{padding:var(--s-2)}}@media (max-width:760px){.shell{grid-template-columns:minmax(0,1fr)}.sidebar{display:none}.topbar{padding:var(--s-2) var(--s-4)}.page{padding:var(--s-4) var(--s-4) calc(var(--touch) + var(--s-7))}.bottom-tabs{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;position:fixed;left:0;right:0;bottom:0;z-index:30;background:var(--surface-1);border-top:1px solid var(--border-1);padding-bottom:env(safe-area-inset-bottom)}.bottom-tabs a,.bottom-tabs button{min-height:var(--touch);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:var(--s-1) 0;color:var(--text-2);text-decoration:none;font-size:var(--fs-xs);background:none;border:0}.bottom-tabs [aria-current=page]{color:var(--accent-text);font-weight:600}.hide-mobile{display:none!important}.banner{padding:var(--s-2) var(--s-4);flex-wrap:wrap}.banner .grow{flex:1 1 12rem;min-width:0}.topbar{gap:var(--s-2)}.topbar .spacer{flex:0 1}.brand-switch,.brand-switch .select-wrap{flex:1 1 auto;min-width:0}.brand-switch select{min-width:0;width:100%}.account .btn{padding-inline:var(--s-1)}.account .btn>svg{display:none}.account-name{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}}@media (min-width:761px){.only-mobile{display:none!important}}.coach-panel{position:fixed;top:0;right:0;bottom:0;width:min(var(--coach-w),100vw);z-index:60;background:var(--surface-1);border-left:1px solid var(--border-1);box-shadow:var(--shadow-3);display:flex;flex-direction:column;transform:translateX(100%);transition:transform var(--dur-slow) var(--ease);visibility:hidden}.coach-panel[data-open=true]{transform:none;visibility:visible}.coach-panel header{display:flex;align-items:center;justify-content:space-between;padding:var(--s-4);border-bottom:1px solid var(--border-1)}.coach-panel .body{padding:var(--s-4);overflow-y:auto;display:flex;flex-direction:column;gap:var(--s-4)}.coach-panel h3{font-size:var(--fs-sm);color:var(--text-2);font-weight:600}.coach-panel dl{margin:0;display:flex;flex-direction:column;gap:var(--s-2)}.coach-panel dt{font-weight:600;display:inline}.coach-panel dd{margin:0;display:inline;color:var(--text-2)}.card{background:var(--surface-1);border:1px solid var(--border-1);border-radius:var(--r-xl);box-shadow:var(--shadow-1);min-width:0}.card-head,.card-pad{padding:var(--s-4)}.card-head{display:flex;align-items:center;justify-content:space-between;gap:var(--s-3);border-bottom:1px solid var(--border-1)}.card-head h2{font-size:var(--fs-lg)}.card-head .meta{color:var(--text-3);font-size:var(--fs-sm)}.card-body{padding:var(--s-4)}.card-foot{padding:var(--s-3) var(--s-4);border-top:1px solid var(--border-1)}.card-flagged{border-color:var(--warn)}.card-accent{background:var(--accent-soft);border-color:transparent}.list{list-style:none;margin:0;padding:0}.list>li+li{border-top:1px solid var(--border-1)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--s-2);min-height:var(--control-h);padding:0 var(--s-4);border-radius:var(--r-md);border:1px solid var(--border-2);background:var(--surface-1);font-weight:600;text-decoration:none;white-space:nowrap;transition:background var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease)}.btn,.btn:hover{color:var(--text-1)}.btn:hover{background:var(--surface-2)}.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--text-on-accent)}.btn-primary:hover{background:var(--accent-hover);border-color:var(--accent-hover);color:var(--text-on-accent)}.btn-quiet{background:transparent;border-color:transparent;color:var(--accent-text)}.btn-quiet:hover{background:var(--accent-soft);color:var(--accent-text)}.btn-danger{background:transparent;border-color:transparent;color:var(--danger)}.btn-danger:hover{background:var(--danger-soft);color:var(--danger)}.btn-danger-solid{border-color:var(--danger)}.btn-danger-solid,.btn-danger-solid:hover{background:var(--danger);color:var(--text-inverse)}.btn-danger-solid:hover{filter:brightness(1.05)}.btn-sm{min-height:var(--control-h-sm);padding:0 var(--s-3);font-size:var(--fs-sm)}.btn-lg{min-height:var(--control-h-lg);padding:0 var(--s-5)}.btn-icon{min-height:var(--control-h-sm);width:var(--control-h-sm);padding:0;border-color:transparent;background:transparent;color:var(--text-2)}.btn-icon:hover{background:var(--surface-2);color:var(--text-1)}.btn[aria-disabled=true],.btn[disabled]{background:var(--surface-3);border-color:var(--surface-3);color:var(--text-3)}.btn-block{width:100%}@media (max-width:760px){.btn{min-height:var(--touch)}.btn-sm{min-height:var(--control-h)}}.field{display:flex;flex-direction:column;gap:var(--s-1);min-width:0}.field-label,.field>label{font-weight:600;font-size:var(--fs-sm)}.field .help{color:var(--text-3);font-size:var(--fs-xs)}.field .err{color:var(--danger);font-size:var(--fs-xs);display:flex;gap:var(--s-1);align-items:flex-start}.input,.select,.textarea{width:100%;min-height:var(--control-h);padding:0 var(--s-3);border-radius:var(--r-md);border:1px solid var(--border-2);background:var(--surface-1);color:var(--text-1)}.textarea{padding:var(--s-2) var(--s-3);min-height:6rem;resize:vertical;line-height:var(--lh-base)}.select{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding-right:2rem;background-image:linear-gradient(45deg,transparent 50%,var(--text-2) 50%),linear-gradient(135deg,var(--text-2) 50%,transparent 50%);background-position:calc(100% - 1rem) 50%,calc(100% - .7rem) 50%;background-size:.3rem .3rem,.3rem .3rem;background-repeat:no-repeat}.input:hover,.select:hover,.textarea:hover{border-color:var(--text-3)}.input[aria-invalid=true],.select[aria-invalid=true],.textarea[aria-invalid=true]{border-color:var(--danger)}.input[disabled],.select[disabled],.textarea[disabled]{background:var(--surface-2);color:var(--text-3)}.input.mono{font-family:var(--font-mono);letter-spacing:.05em}.check{display:flex;align-items:flex-start;gap:var(--s-2);cursor:pointer}.check input{width:1.1rem;height:1.1rem;margin:.2rem 0 0;accent-color:var(--accent);flex:none}.switch{display:inline-flex;align-items:center;gap:var(--s-2);background:none;border:0;padding:0;color:var(--text-1)}.switch .track{width:2.4rem;height:1.4rem;border-radius:var(--r-full);background:var(--surface-3);border:1px solid var(--border-2);position:relative;transition:background var(--dur-fast) var(--ease);flex:none}.switch .track:after{content:"";position:absolute;top:.15rem;left:.15rem;width:.95rem;height:.95rem;border-radius:var(--r-full);background:var(--text-2);transition:transform var(--dur-fast) var(--ease)}.switch[aria-checked=true] .track{background:var(--accent);border-color:var(--accent)}.switch[aria-checked=true] .track:after{transform:translateX(1rem);background:var(--text-on-accent)}.segmented{display:inline-flex;border:1px solid var(--border-2);border-radius:var(--r-md);padding:2px;background:var(--surface-2);gap:2px;flex-wrap:wrap}.segmented button{min-height:calc(var(--control-h-sm) - 4px);padding:0 var(--s-3);border:0;border-radius:var(--r-sm);background:transparent;color:var(--text-2);font-weight:500;font-size:var(--fs-sm)}.segmented button[aria-pressed=true],.segmented button[aria-selected=true]{background:var(--surface-1);color:var(--text-1);box-shadow:var(--shadow-1);font-weight:600}.range{width:100%;accent-color:var(--accent)}.chip-input{display:flex;flex-wrap:wrap;gap:var(--s-1);padding:var(--s-1);border:1px solid var(--border-2);border-radius:var(--r-md);background:var(--surface-1);min-height:var(--control-h)}.chip-input input{border:0;background:transparent;flex:1 1;min-width:8rem;padding:0 var(--s-2);outline:none}.chip-input:focus-within{outline:2px solid var(--border-focus);outline-offset:2px}.brand-chip{display:inline-flex;align-items:center;gap:var(--s-1);font-size:var(--fs-sm);font-weight:600;color:var(--text-1);white-space:nowrap}.brand-chip .mark{display:inline-grid;place-items:center;width:1.3rem;height:1.3rem;border-radius:var(--r-sm);background:var(--brand,var(--text-3));color:var(--brand-ink,var(--text-inverse));font-size:.6rem;font-weight:700;border:1px solid var(--brand-chip-border)}.brand-chip-boxed{padding:.15rem var(--s-2) .15rem .2rem;border:1px solid var(--border-1);border-radius:var(--r-md);background:var(--surface-1)}.brand-dot{display:inline-block;width:.6rem;height:.6rem;border-radius:2px;background:var(--brand,var(--text-3));border:1px solid var(--brand-chip-border);flex:none}.platform-tag{justify-content:center;min-width:1.7rem;height:1.2rem;padding:0 .3rem;border-radius:var(--r-sm);border:1px solid var(--border-2);font-family:var(--font-mono);font-size:.68rem;font-weight:500}.pill,.platform-tag{display:inline-flex;align-items:center;color:var(--text-2);background:var(--surface-2)}.pill{gap:.3rem;padding:.1rem var(--s-2);border-radius:var(--r-full);font-size:var(--fs-xs);font-weight:600;white-space:nowrap}.pill svg{flex:none}.pill-ok{background:var(--ok-soft);color:var(--ok)}.pill-warn{background:var(--warn-soft);color:var(--warn)}.pill-danger{background:var(--danger-soft);color:var(--danger)}.pill-info{background:var(--info-soft);color:var(--info)}.pill-accent{background:var(--accent-soft);color:var(--accent-text)}.tag{display:inline-flex;align-items:center;gap:var(--s-1);padding:.1rem var(--s-2);border-radius:var(--r-md);border:1px solid var(--border-1);background:var(--surface-2);font-size:var(--fs-xs);color:var(--text-2)}.tag button{border:0;background:none;padding:0;color:inherit;line-height:1}.eyebrow{color:var(--text-3);text-transform:uppercase;letter-spacing:.04em;font-weight:600}.eyebrow,.kbd{font-size:var(--fs-xs)}.kbd{font-family:var(--font-mono);border:1px solid var(--border-2);border-radius:var(--r-sm);padding:0 .3rem;color:var(--text-2)}.table-wrap{overflow-x:auto;border:1px solid var(--border-1);border-radius:var(--r-xl);background:var(--surface-1)}.table{width:100%;border-collapse:collapse;font-size:var(--fs-sm)}.table th{position:-webkit-sticky;position:sticky;top:0;background:var(--surface-2);text-align:left;font-weight:600;color:var(--text-2);padding:var(--s-2) var(--s-3);white-space:nowrap}.table td,.table th{border-bottom:1px solid var(--border-1)}.table td{padding:var(--s-3);vertical-align:top}.table tr:last-child td{border-bottom:0}.table tbody tr:hover{background:var(--surface-2)}.table th button{background:none;border:0;padding:0;font-weight:600;color:inherit}.bulk-bar{gap:var(--s-3);padding:var(--s-2) var(--s-3);background:var(--accent-soft);border-radius:var(--r-md)}.bulk-bar,.filter-bar{display:flex;align-items:center}.filter-bar{flex-wrap:wrap;gap:var(--s-2);margin-bottom:var(--s-4)}.filter-bar .input{max-width:18rem}.filter-chip{display:inline-flex;align-items:center;gap:var(--s-1);min-height:var(--control-h-sm);padding:0 var(--s-3);border-radius:var(--r-full);border:1px solid var(--border-2);background:var(--surface-1);color:var(--text-2);font-size:var(--fs-sm)}.filter-chip[aria-current],.filter-chip[aria-pressed=true]{background:var(--accent-soft);border-color:transparent;color:var(--accent-text);font-weight:600}.empty{display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--s-2);padding:var(--s-6) var(--s-4)}.empty .icon-tile{width:3rem;height:3rem;border-radius:var(--r-lg);display:grid;place-items:center;background:var(--surface-2);color:var(--text-2)}.empty p{color:var(--text-2);max-width:32rem}.state-error .icon-tile{background:var(--danger-soft);color:var(--danger)}.state-lock .icon-tile{background:var(--surface-3);color:var(--text-2)}.skeleton{background:var(--skeleton);background-size:200% 100%;animation:shimmer 1.4s linear infinite;border-radius:var(--r-md);min-height:.9rem}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.notice{display:flex;gap:var(--s-3);align-items:flex-start;padding:var(--s-3) var(--s-4);border-radius:var(--r-lg);border:1px solid var(--border-1);background:var(--surface-2)}.notice-warn{background:var(--warn-soft);border-color:transparent}.notice-warn>svg{color:var(--warn)}.notice-danger{background:var(--danger-soft);border-color:transparent}.notice-danger>svg{color:var(--danger)}.notice-ok{background:var(--ok-soft);border-color:transparent}.notice-ok>svg{color:var(--ok)}.notice-info{background:var(--info-soft);border-color:transparent}.notice-info>svg{color:var(--info)}.notice>svg{flex:none;margin-top:.15rem}.toast-host{position:fixed;left:50%;bottom:var(--s-5);transform:translateX(-50%);z-index:80;display:flex;flex-direction:column;gap:var(--s-2);width:min(32rem,calc(100vw - 2rem))}@media (max-width:760px){.toast-host{bottom:calc(var(--touch) + var(--s-4))}}.toast{display:flex;align-items:center;gap:var(--s-3);padding:var(--s-3) var(--s-4);border-radius:var(--r-lg);background:var(--surface-inverse);color:var(--text-inverse);box-shadow:var(--shadow-3)}.toast .grow{min-width:0}.toast button{background:none;border:1px solid;color:inherit;border-radius:var(--r-md);padding:.2rem var(--s-2);font-weight:600;font-size:var(--fs-sm)}.toast .dismiss{border:0}.dialog-scrim{position:fixed;inset:0;z-index:70;background:var(--scrim);display:grid;place-items:center;padding:var(--s-4)}.dialog{width:min(36rem,100%);max-height:calc(100vh - 2rem);overflow:auto;background:var(--surface-1);border:1px solid var(--border-1);border-radius:var(--r-xl);box-shadow:var(--shadow-3)}.dialog-wide{width:min(48rem,100%)}.dialog header{padding:var(--s-4) var(--s-4) var(--s-2)}.dialog header p{color:var(--text-2);margin-top:var(--s-1)}.dialog .body{padding:var(--s-2) var(--s-4) var(--s-4);display:flex;flex-direction:column;gap:var(--s-3)}.dialog footer{display:flex;justify-content:flex-end;gap:var(--s-2);padding:var(--s-3) var(--s-4);border-top:1px solid var(--border-1);flex-wrap:wrap}.confirm-list{list-style:none;margin:0;padding:0;border:1px solid var(--border-1);border-radius:var(--r-lg)}.confirm-list li{padding:var(--s-3);display:flex;flex-direction:column;gap:var(--s-1)}.confirm-list li+li{border-top:1px solid var(--border-1)}.confirm-list .text{white-space:pre-wrap;word-break:break-word;font-size:var(--fs-sm);background:var(--surface-2);border-radius:var(--r-md);padding:var(--s-2) var(--s-3)}.menu{position:absolute;z-index:40;min-width:12rem;background:var(--surface-1);border:1px solid var(--border-1);border-radius:var(--r-lg);box-shadow:var(--shadow-2);padding:var(--s-1);display:flex;flex-direction:column}.menu a,.menu button{display:flex;align-items:center;gap:var(--s-2);text-align:left;border:0;background:none;padding:var(--s-2) var(--s-3);border-radius:var(--r-md);color:var(--text-1);text-decoration:none;font-size:var(--fs-sm)}.menu a:hover,.menu button:hover{background:var(--surface-2)}.menu .menu-head{padding:var(--s-2) var(--s-3);color:var(--text-3);font-size:var(--fs-xs)}.attn-row{display:flex;align-items:center;gap:var(--s-3);padding:var(--s-3) var(--s-4)}.icon-tile{width:2.3rem;height:2.3rem;border-radius:var(--r-md);display:grid;place-items:center;flex:none;background:var(--surface-2);color:var(--text-2)}.tone-accent{background:var(--accent-soft);color:var(--accent-text)}.tone-danger{background:var(--danger-soft);color:var(--danger)}.tone-warn{background:var(--warn-soft);color:var(--warn)}.tone-ok{background:var(--ok-soft);color:var(--ok)}.tone-info{background:var(--info-soft);color:var(--info)}.attn-row .title{font-weight:600}.attn-row .meta{gap:var(--s-2);color:var(--text-3);font-size:var(--fs-sm);flex-wrap:wrap}.attn-row .meta,.goal-card{display:flex;align-items:center}.goal-card{gap:var(--s-3);padding:var(--s-3);border:1px solid var(--border-1);border-radius:var(--r-lg)}.goal-ring{--pct:0;--ring:var(--ok);position:relative;width:3.2rem;height:3.2rem;border-radius:var(--r-full);background:conic-gradient(var(--ring) calc(var(--pct) * 1%),var(--surface-3) 0);flex:none;display:grid;place-items:center}.goal-ring:after{content:"";position:absolute;inset:.35rem;border-radius:var(--r-full);background:var(--surface-1)}.goal-ring span{position:relative;z-index:1;font-family:var(--font-mono);font-size:var(--fs-xs);font-weight:500}.goal-ring-none{--ring:var(--surface-3)}.sched-row{display:grid;grid-template-columns:5.5rem 2.3rem minmax(0,1fr) auto;grid-gap:var(--s-3);gap:var(--s-3);align-items:center;padding:var(--s-3) var(--s-4)}@media (max-width:760px){.sched-row{grid-template-columns:4.5rem minmax(0,1fr)}.sched-row .thumb{display:none}.sched-row .pill{grid-column:2}}.meter{height:.5rem;background:var(--surface-3);overflow:hidden}.meter,.meter>span{border-radius:var(--r-full)}.meter>span{display:block;height:100%;background:var(--ok)}.meter-warn>span{background:var(--warn)}.meter-danger>span{background:var(--danger)}.meter-accent>span{background:var(--accent)}.progress-line{display:flex;align-items:center;gap:var(--s-2);font-family:var(--font-mono);font-size:var(--fs-sm);color:var(--text-2)}.progress-line .meter{width:8rem}.rail{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}.rail a,.rail span.step{display:flex;align-items:center;gap:var(--s-2);padding:var(--s-2) var(--s-3);border-radius:var(--r-md);text-decoration:none;color:var(--text-2)}.rail a:hover{background:var(--surface-2)}.rail [aria-current=step]{background:var(--accent-soft);color:var(--accent-text);font-weight:600}.rail .dot{width:1.4rem;height:1.4rem;border-radius:var(--r-full);display:grid;place-items:center;border:1px solid var(--border-2);font-size:var(--fs-xs);font-family:var(--font-mono);flex:none}.rail .done .dot{background:var(--ok);border-color:var(--ok);color:var(--text-inverse)}.rail .skipped .dot{background:var(--surface-3)}.rail [aria-current=step] .dot{background:var(--accent);border-color:var(--accent);color:var(--text-on-accent)}.saved-note{color:var(--text-3);font-size:var(--fs-sm)}.checklist{list-style:none;margin:0;padding:0;flex-direction:column}.checklist,.checklist li{display:flex;gap:var(--s-2)}.checklist li{align-items:flex-start}.checklist .ok{color:var(--ok)}.checklist .todo{color:var(--text-3)}.conn-row{display:grid;grid-template-columns:minmax(0,1.4fr) 9rem 10rem minmax(0,1.3fr) auto;grid-gap:var(--s-3);gap:var(--s-3);align-items:center;padding:var(--s-3) var(--s-4)}@media (max-width:1100px){.conn-row{grid-template-columns:minmax(0,1fr) auto}.conn-row .hide-narrow{display:none}}.countdown{font-family:var(--font-mono);font-size:var(--fs-sm)}.conn-features{grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:center;gap:var(--s-2);font-size:var(--fs-sm);color:var(--text-2)}.acct-pick{display:grid;grid-gap:var(--s-2);gap:var(--s-2);margin:0;padding:0;border:0;min-width:0}.acct-opt{display:flex;align-items:center;gap:var(--s-3);padding:var(--s-3);border:1px solid var(--border-1);border-radius:var(--r-lg);background:var(--surface-1);cursor:pointer;min-width:0}.acct-opt:has(input:checked){border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.acct-opt:has(input:focus-visible){outline:2px solid var(--border-focus);outline-offset:2px}.acct-opt input{flex:none;width:1.1rem;height:1.1rem;accent-color:var(--accent)}.acct-opt .avatar{overflow:hidden}.acct-opt .acct-text{flex:1 1;min-width:0;display:grid;grid-gap:.1rem;gap:.1rem}.acct-opt .acct-text>span{overflow-wrap:anywhere}.mock-consent{max-width:40rem;margin:var(--s-6) auto;padding:0 var(--s-4)}.audit-row{display:grid;grid-template-columns:9rem 9rem minmax(0,1fr) minmax(0,1fr) minmax(0,1.2fr);grid-gap:var(--s-3);gap:var(--s-3);padding:var(--s-3) var(--s-4);font-size:var(--fs-sm);align-items:start}@media (max-width:1100px){.audit-row{grid-template-columns:minmax(0,1fr)}}.cal-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-gap:var(--s-2);gap:var(--s-2)}.cal-day{display:flex;flex-direction:column;gap:var(--s-2);min-height:14rem;padding:var(--s-2);border:1px solid var(--border-1);border-radius:var(--r-lg);background:var(--surface-1)}.cal-day[data-drop=true]{border-color:var(--accent);background:var(--accent-soft)}.cal-day header{display:flex;justify-content:space-between;align-items:baseline;font-size:var(--fs-sm)}.cal-day header .date{font-family:var(--font-mono);color:var(--text-3)}.cal-day.today header{color:var(--accent-text);font-weight:600}.cal-month{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-gap:2px;gap:2px;background:var(--border-1);border:1px solid var(--border-1);border-radius:var(--r-lg);overflow:hidden}.cal-month .cal-cell{background:var(--surface-1);min-height:7rem;padding:var(--s-1) var(--s-2);display:flex;flex-direction:column;gap:2px}.cal-month .cal-cell.out{background:var(--surface-2)}.cal-month .cal-cell[data-drop=true]{background:var(--accent-soft)}.cal-month .dow{padding:var(--s-1) var(--s-2);color:var(--text-3);font-weight:600}.cal-month .dow,.post-chip{background:var(--surface-2);font-size:var(--fs-xs)}.post-chip{display:flex;flex-direction:column;gap:2px;width:100%;text-align:left;padding:var(--s-2);border:1px solid var(--border-1);border-left:3px solid var(--pillar,var(--border-2));border-radius:var(--r-md);color:var(--text-1);cursor:-webkit-grab;cursor:grab}.post-chip:active{cursor:-webkit-grabbing;cursor:grabbing}.post-chip .title{font-size:var(--fs-sm);font-weight:600;line-height:1.3}.post-chip .line{display:flex;align-items:center;gap:var(--s-1);color:var(--text-2);flex-wrap:wrap}.post-chip[data-warn=true]{border-color:var(--danger)}.post-chip[data-dragging=true]{opacity:.5}.slot-hint{border:1px dashed var(--border-2);border-radius:var(--r-md);padding:var(--s-2);font-size:var(--fs-xs);color:var(--text-3)}@media (max-width:1100px){.cal-week{grid-template-columns:minmax(0,1fr)}.cal-day{min-height:0}}.approve-card{display:flex;flex-direction:column}.approve-card .head{display:flex;align-items:center;gap:var(--s-2);flex-wrap:wrap;padding:var(--s-3) var(--s-4);border-bottom:1px solid var(--border-1);font-size:var(--fs-sm)}.approve-card .content{display:grid;grid-template-columns:9rem minmax(0,1fr);grid-gap:var(--s-4);gap:var(--s-4);padding:var(--s-4)}@media (max-width:760px){.approve-card .content{grid-template-columns:minmax(0,1fr)}}.media-ph{display:grid;place-items:center;text-align:center;aspect-ratio:4/5;border-radius:var(--r-lg);background:var(--surface-3);color:var(--text-2);font-size:var(--fs-xs);padding:var(--s-2);overflow:hidden}.media-ph img,.media-ph video{width:100%;height:100%;object-fit:cover}.caption{white-space:pre-wrap;word-break:break-word}mark.claim{background:transparent;color:inherit;text-decoration:underline;-webkit-text-decoration-color:var(--warn);text-decoration-color:var(--warn);text-decoration-thickness:2px;text-underline-offset:3px;box-shadow:inset 0 -.4em 0 var(--warn-soft)}mark.claim-ok{-webkit-text-decoration-color:var(--ok);text-decoration-color:var(--ok);box-shadow:inset 0 -.4em 0 var(--ok-soft)}mark.claim-backed{text-decoration:none;box-shadow:none;border-bottom:1px dotted var(--ok)}.backed-line{display:flex;gap:var(--s-1);align-items:flex-start;margin:0}.backed-line svg{color:var(--ok);flex:none;margin-top:.1rem}.media-badge{position:absolute;left:var(--s-1);right:var(--s-1);bottom:var(--s-1);padding:var(--s-1);border-radius:var(--r-md);background:var(--warn-soft);color:var(--text-1);font-size:var(--fs-xs);line-height:1.3}.image-actions{flex-wrap:wrap;gap:var(--s-2);align-items:center}.claim-group{display:flex;gap:var(--s-3);align-items:flex-start;padding:var(--s-3);border-radius:var(--r-lg);background:var(--warn-soft)}.claim-group>svg{color:var(--warn);flex:none;margin-top:.15rem}.claim-group.ok{background:var(--ok-soft)}.claim-group.ok>svg{color:var(--ok)}.swipe-card{touch-action:pan-y;transition:transform var(--dur-base) var(--ease)}.preview-frame{border:1px solid var(--border-1);border-radius:var(--r-lg);overflow:hidden;background:var(--surface-1)}.preview-frame .pf-head{display:flex;align-items:center;gap:var(--s-2);padding:var(--s-2) var(--s-3);font-weight:600;font-size:var(--fs-sm)}.preview-frame .pf-avatar{width:1.8rem;height:1.8rem;border-radius:var(--r-full);background:var(--brand,var(--surface-3));border:1px solid var(--brand-chip-border)}.preview-frame .pf-media{background:var(--surface-3);display:grid;place-items:center;color:var(--text-2);font-size:var(--fs-xs);overflow:hidden}.preview-frame .pf-media img,.preview-frame .pf-media video{width:100%;height:100%;object-fit:cover}.preview-frame .pf-caption{padding:var(--s-2) var(--s-3);font-size:var(--fs-sm);white-space:pre-wrap;word-break:break-word}.ratio-4x5{aspect-ratio:4/5}.ratio-1x1{aspect-ratio:1/1}.ratio-9x16{aspect-ratio:9/16;max-height:32rem;margin:0 auto}.ratio-191{aspect-ratio:1.91/1}.counter{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--text-3)}.counter-warn{color:var(--warn)}.counter-over{color:var(--danger);font-weight:600}.media-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(11rem,1fr));grid-gap:var(--s-3);gap:var(--s-3)}.media-tile{display:flex;flex-direction:column;border:1px solid var(--border-1);border-radius:var(--r-lg);overflow:hidden;background:var(--surface-1);text-align:left;padding:0;color:var(--text-1)}.media-tile[aria-pressed=true]{outline:2px solid var(--accent);outline-offset:2px}.media-tile .thumb{aspect-ratio:1/1;background:var(--surface-3);display:grid;place-items:center;color:var(--text-3);font-size:var(--fs-xs);position:relative;overflow:hidden}.media-tile .thumb img,.media-tile .thumb video{width:100%;height:100%;object-fit:cover}.media-tile .badges{position:absolute;left:var(--s-1);top:var(--s-1);display:flex;gap:var(--s-1)}.media-tile .info{padding:var(--s-2);display:flex;flex-direction:column;gap:2px;font-size:var(--fs-xs)}.tpl-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(13rem,1fr));grid-gap:var(--s-3);gap:var(--s-3)}.tpl-tile{display:flex;flex-direction:column;gap:var(--s-2);padding:var(--s-2);border:1px solid var(--border-1);border-radius:var(--r-lg);background:var(--surface-1);text-align:left;color:var(--text-1)}.tpl-tile[aria-pressed=true]{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.tpl-tile img{border-radius:var(--r-md);background:var(--surface-3)}.render-out{border:1px solid var(--border-1);border-radius:var(--r-lg);background:var(--surface-2);display:grid;place-items:center;overflow:hidden}.render-out img{max-height:36rem;width:auto}.swatch{width:2.2rem;height:2.2rem;border-radius:var(--r-md);border:1px solid var(--border-2);background:var(--swatch,var(--surface-3));flex:none}.auth-wrap{min-height:100vh;display:grid;place-items:center;padding:var(--s-5) var(--s-4)}.auth-card{width:min(28rem,100%)}.auth-card .logo{display:flex;align-items:center;gap:var(--s-2);margin-bottom:var(--s-4)}.codes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:var(--s-2);gap:var(--s-2);font-family:var(--font-mono);background:var(--surface-2);padding:var(--s-3)}.codes,.qr{border-radius:var(--r-lg)}.qr{background:var(--surface-inverse);padding:var(--s-2);width:-moz-fit-content;width:fit-content}.qr img{width:11rem;height:11rem;image-rendering:pixelated}@media print{.banner,.bottom-tabs,.coach-panel,.sidebar,.topbar{display:none!important}.shell{display:block}}.sidebar-version{margin:var(--s-2) var(--s-3) 0;white-space:nowrap}.lib-group-head{font-size:var(--fs-md);display:flex;align-items:center;gap:var(--s-2);margin:var(--s-2) 0 0}.btn.is-disabled{opacity:.55;pointer-events:none}