@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/source-serif-4-latin-wght-normal-D9elroTD.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--indigo-50:#eef1fa;--indigo-100:#dce2f4;--indigo-200:#b9c4e8;--indigo-300:#8e9fd6;--indigo-400:#6479c0;--indigo-500:#4459a6;--indigo-600:#33478f;--indigo-700:#263779;--indigo-800:#1d2a5e;--indigo-900:#141d42;--indigo-950:#0e1226;--lotus-50:#fdf0f5;--lotus-100:#fbdce8;--lotus-200:#f7b9d1;--lotus-300:#f28fb7;--lotus-400:#f667a1;--lotus-500:#d93e80;--lotus-600:#c2336f;--lotus-700:#9e2858;--lotus-800:#7a2045;--lotus-900:#561832;--sand-50:#fffcf7;--sand-100:#faf7f2;--sand-200:#f4efe7;--sand-300:#ece5da;--sand-400:#e6dfd3;--sand-500:#cfc5b5;--peach-200:#fbdab1;--ink-900:#1f2030;--ink-700:#454857;--ink-600:#5f6272;--logo-blue:#1c8bf9;--color-bg:#faf7f2;--color-surface:#fff;--color-surface-2:#f4efe7;--color-surface-3:#ece5da;--color-border:#e6dfd3;--color-border-strong:#cfc5b5;--color-text:#1f2030;--color-text-2:#454857;--color-text-muted:#5f6272;--color-primary:#263779;--color-primary-hover:#1d2a5e;--color-primary-pressed:#141d42;--color-on-primary:#fff;--color-primary-subtle:#eef1fa;--color-on-primary-subtle:#263779;--color-link:#263779;--color-link-visited:#9e2858;--color-accent:#c2336f;--color-accent-fill:#d93e80;--color-accent-subtle:#fdf0f5;--color-on-accent-subtle:#9e2858;--color-focus:#d93e80;--color-track:#e6dfd3;--color-success:#1e7a4c;--color-success-subtle:#e6f3ec;--color-warning:#8a5a00;--color-warning-subtle:#fcf0da;--color-error:#b3261e;--color-error-subtle:#fbeae8;--color-on-error:#fff;--color-error-hover:#8f1e18;--color-info:#2f4fa8;--color-info-subtle:#eaeffb;--color-inverse:#1f2030;--color-on-inverse:#fff;--color-overlay:#141d4299;--color-skeleton:#ece5da;--color-skeleton-shine:#f4efe7;--color-chrome:#fff;--color-hero:#1d2a5e;--color-hero-2:#263779;--color-on-hero:#fff;--color-on-hero-2:#e4e8f6;--color-hero-eyebrow:#f7b9d1;--color-hero-scrim:#0e122666;--color-hero-fade:#0e122600;--color-hero-chip:#ffffff1f;--color-hero-chip-hover:#fff3;--color-hero-line:#ffffff40;--color-media-scrim:#000000a6;--color-media-scrim-strong:#000000c7;--color-media-scrim-soft:#00000014;--color-media-fade:#0000;--color-video-bg:#000;--color-media-button:#fff;--color-media-button-hover:#eef1fa;--color-on-media-button:#263779;--color-on-media:#fff;--color-media-accent:#f7b9d1;--font-sans:"Inter Variable",Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;--font-serif:"Source Serif 4 Variable","Source Serif Pro",Georgia,"Times New Roman",serif;--text-display:clamp(2.25rem, 1.8333rem + 1.8519vw, 3.5rem);--text-h1:clamp(2rem, 1.75rem + 1.1111vw, 2.75rem);--text-h2:clamp(1.625rem, 1.4583rem + .7407vw, 2.125rem);--text-h3:clamp(1.375rem, 1.2917rem + .3704vw, 1.625rem);--text-h4:clamp(1.1875rem, 1.1458rem + .1852vw, 1.3125rem);--text-body-l:1.125rem;--text-body:1rem;--text-body-s:.875rem;--text-caption:.8125rem;--text-overline:.75rem;--text-button:.9375rem;--text-button-s:.875rem;--weight-regular:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--leading-tight:1.15;--leading-heading:1.25;--leading-snug:1.4;--leading-body:1.6;--leading-prose:1.75;--tracking-tight:-.02em;--tracking-normal:0;--tracking-overline:.08em;--measure:68ch;--text-title-doc:clamp(1.875rem, 1.6667rem + .9259vw, 2.5rem);--text-h2-doc:clamp(1.25rem, 1.2083rem + .1852vw, 1.375rem);--text-body-doc:clamp(1rem, .9583rem + .1852vw, 1.0625rem);--leading-doc:1.7;--measure-legal:45rem;--space-4:4px;--space-8:8px;--space-12:12px;--space-16:16px;--space-24:24px;--space-32:32px;--space-40:40px;--space-48:48px;--space-64:64px;--space-80:80px;--radius-xs:6px;--radius-sm:10px;--radius-md:14px;--radius-lg:18px;--radius-xl:24px;--radius-pill:999px;--border-1:1px;--border-2:2px;--shadow-1:0 1px 2px #1f20300d, 0 1px 3px #1f20300a;--shadow-2:0 2px 4px #1f20300a, 0 8px 24px #1f203014;--shadow-3:0 12px 32px #1f203024, 0 2px 6px #1f203010;--shadow-chrome:0 -1px 0 #1f20300f, 0 -6px 16px #1f20300a;--icon-xs:14px;--icon-sm:16px;--icon-md:20px;--icon-lg:24px;--icon-xl:32px;--control-sm:36px;--control-md:44px;--control-lg:52px;--control-field:48px;--touch-min:44px;--avatar-sm:36px;--avatar-md:44px;--avatar-lg:56px;--content-max:1200px;--content-medium:960px;--content-narrow:720px;--toc-w:13.75rem;--gutter:16px;--header-h:64px;--apphead-h:56px;--tabbar-h:64px;--rail-w:88px;--safe-t:var(--safe-area-inset-top,env(safe-area-inset-top,0px));--safe-b:var(--safe-area-inset-bottom,env(safe-area-inset-bottom,0px));--safe-l:var(--safe-area-inset-left,env(safe-area-inset-left,0px));--safe-r:var(--safe-area-inset-right,env(safe-area-inset-right,0px));--dur-fast:.14s;--dur-base:.2s;--dur-slow:.3s;--ease-standard:cubic-bezier(.2, 0, 0, 1);--ease-enter:cubic-bezier(0, 0, 0, 1);--ease-exit:cubic-bezier(.3, 0, 1, 1);--lift:-2px;--z-raised:1;--z-media-ui:3;--z-sticky:40;--z-chrome:60;--z-overlay:900;--z-modal:1000;--z-immersive:1100;--z-toast:1200;--z-skip:1300;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (width>=375px){:root{--gutter:20px}}@media (width>=768px){:root{--gutter:32px}}@media (width>=1280px){:root{--gutter:40px}}:root[data-theme=dark]{--color-bg:#0e1226;--color-surface:#161b33;--color-surface-2:#1d2340;--color-surface-3:#262d50;--color-border:#2b3257;--color-border-strong:#3e4775;--color-text:#eceef6;--color-text-2:#c6cadb;--color-text-muted:#a2a8bf;--color-primary:#4f64b0;--color-primary-hover:#5a6fba;--color-primary-pressed:#4459a6;--color-on-primary:#fff;--color-primary-subtle:#232b55;--color-on-primary-subtle:#d3daf5;--color-link:#b9c4e8;--color-link-visited:#f7b9d1;--color-accent:#f28fb7;--color-accent-fill:#f28fb7;--color-accent-subtle:#3a1d38;--color-on-accent-subtle:#f7b9d1;--color-focus:#f59dc1;--color-track:#2b3257;--color-success:#72d3a0;--color-success-subtle:#15302a;--color-warning:#f0c470;--color-warning-subtle:#33290f;--color-error:#ff9e94;--color-error-subtle:#3a1a22;--color-on-error:#2b0b0e;--color-error-hover:#ffb8b0;--color-info:#a9bdf7;--color-info-subtle:#1c2650;--color-inverse:#eceef6;--color-on-inverse:#161b33;--color-overlay:#05081599;--color-skeleton:#1d2340;--color-skeleton-shine:#262d50;--color-chrome:#121630;--color-hero:#141d42;--color-hero-2:#1d2a5e;--shadow-1:0 1px 2px #0000004d;--shadow-2:0 2px 4px #00000040, 0 8px 24px #00000059;--shadow-3:0 12px 32px #00000080, 0 2px 6px #00000059;--shadow-chrome:0 -1px 0 #ffffff0d, 0 -6px 16px #00000040;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}*{-webkit-tap-highlight-color:transparent}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}html,body{background:var(--color-bg);margin:0;padding:0}body{font-family:var(--font-sans);color:var(--color-text);font-size:var(--text-body);line-height:var(--leading-body);font-weight:var(--weight-regular);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overscroll-behavior-y:none}.dur,.stat,.stat-tile,.date-badge,.plan .pr,.caption,.meta,.progress,.ring-wrap,.inp.otp{font-variant-numeric:tabular-nums}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:none;padding:0}input,textarea,select{font:inherit;color:inherit}a{color:inherit;text-decoration:none}img,svg,video{max-width:100%}.mark{flex:none;display:block}[hidden]{display:none}::selection{background:var(--color-accent-subtle);color:var(--color-text)}:where(.shell) :where(h1,h2,h3,h4,h5,h6){font-weight:var(--weight-semibold);line-height:var(--leading-heading);color:inherit;margin:0}:where(.shell) :where(h1){font-size:var(--text-h1);letter-spacing:var(--tracking-tight)}:where(.shell) :where(h2){font-size:var(--text-h2);letter-spacing:var(--tracking-tight)}:where(.shell) :where(h3){font-size:var(--text-h3)}:where(.shell) :where(h4){font-size:var(--text-h4)}:where(.shell) :where(p){margin:0 0 var(--space-16)}:where(.shell) :where(p:last-child){margin-bottom:0}:where(.shell) :where(ul,ol){margin:0;padding:0}:where(.shell) :where(ul[class],ol[class]){list-style:none}:where(.shell) :where(b,strong){font-weight:var(--weight-semibold)}:focus-visible{outline:var(--border-2) solid var(--color-focus);outline-offset:2px}:focus:not(:focus-visible){outline:none}.skip-link{left:var(--space-16);top:calc(var(--safe-t) + var(--space-8));z-index:var(--z-skip);padding:var(--space-12) var(--space-16);border-radius:var(--radius-sm);background:var(--color-primary);color:var(--color-on-primary);font-weight:var(--weight-semibold);font-size:var(--text-body-s);box-shadow:var(--shadow-3);transition:transform var(--dur-fast) var(--ease-standard);position:fixed;transform:translateY(-200%)}.skip-link:focus{transform:none}.visually-hidden{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@keyframes fade-up{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes shimmer{0%{background-position:150% 0}to{background-position:-50% 0}}@keyframes sheet-up{0%{transform:translateY(100%)}to{transform:none}}@keyframes dialog-in{0%{opacity:0;transform:translateY(8px)scale(.98)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){:root{--dur-fast:0s;--dur-base:0s;--dur-slow:0s;--lift:0px}html{scroll-behavior:auto}}.shell{background:var(--color-bg);--page-safe:var(--safe-t);min-height:100dvh;position:relative}.shell.has-apphead,.shell.desk{--page-safe:0px}.main{outline:none;min-width:0;display:block}.shell.has-tabbar .main{padding-bottom:calc(var(--tabbar-h) + var(--safe-b))}.shell.has-rail .main{margin-left:calc(var(--rail-w) + var(--safe-l))}.shell.desk{overflow-x:clip}.page{--page-max:var(--content-max);--page-top:calc(var(--page-safe) + var(--space-8));padding:var(--page-top) 0 var(--space-48);animation:fade-up var(--dur-slow) var(--ease-enter);position:relative}.page.medium{--page-max:var(--content-medium)}.page.narrow{--page-max:var(--content-narrow)}.page>:where(:not(.phero):not(.bleed)){width:min(100% - 2 * var(--gutter), var(--page-max));margin-inline:auto}.shell.desk .page{--page-top:var(--space-32);padding-bottom:var(--space-80)}@media (width>=768px){.page{--page-top:calc(var(--page-safe) + var(--space-24));padding-bottom:var(--space-64)}}.sec{margin-bottom:var(--space-32)}.sec>h3,.sec-head{justify-content:space-between;align-items:baseline;gap:var(--space-16);margin:0 0 var(--space-4);font-size:var(--text-h4);font-weight:var(--weight-semibold);line-height:var(--leading-heading);letter-spacing:var(--tracking-normal);display:flex}.sec-head>h2,.sec-head>h3{font-size:inherit;letter-spacing:inherit;line-height:inherit;margin:0}.sec>.sub,.sec-sub{font-size:var(--text-body-s);color:var(--color-text-muted);margin:0 0 var(--space-16)}.sec>h3+:not(.sub){margin-top:var(--space-12)}@media (width>=1024px){.sec{margin-bottom:var(--space-48)}.sec>h3,.sec-head{font-size:var(--text-h3)}}.see-all{align-items:center;gap:var(--space-4);min-height:var(--touch-min);margin:calc((var(--touch-min) - 1.4em) / -2) calc(var(--space-8) * -1);padding:0 var(--space-8);border-radius:var(--radius-sm);font-family:var(--font-sans);font-size:var(--text-body-s);font-weight:var(--weight-semibold);color:var(--color-link);letter-spacing:0;transition:background-color var(--dur-fast) var(--ease-standard);flex:none;display:inline-flex}.see-all:hover{background:var(--color-primary-subtle)}.rail{gap:var(--space-12);margin-inline:calc(var(--gutter) * -1);padding:var(--space-4) var(--gutter) var(--space-8);scrollbar-width:none;scroll-snap-type:x proximity;scroll-padding-inline:var(--gutter);display:flex;overflow-x:auto}.rail::-webkit-scrollbar{display:none}.rail>*{scroll-snap-align:start;flex:none}@media (width>=768px){.rail{gap:var(--space-24) var(--space-16);grid-template-columns:repeat(auto-fill,minmax(220px,1fr));margin:0;padding:0;display:grid;overflow:visible}.rail>.ccard{width:auto}.rail.shorts{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}}.grid{gap:var(--space-24) var(--space-16);grid-template-columns:repeat(var(--cols,2),minmax(0,1fr));display:grid}.grid-auto{gap:var(--space-24) var(--space-16);grid-template-columns:repeat(auto-fill,minmax(var(--min,220px),1fr));display:grid}.grid-shorts{gap:var(--space-16) var(--space-12);grid-template-columns:repeat(auto-fill,minmax(140px,1fr));display:grid}@media (width>=768px){.grid{--cols:var(--cols-md,3)}.grid-shorts{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}}@media (width>=1024px){.grid{--cols:var(--cols-lg,4)}}.grid>.ccard{width:auto}.grid.md-2{--cols-md:2}.grid.lg-2{--cols-lg:2}.grid.lg-3{--cols-lg:3}.grid.lg-6{--cols-lg:6}.cols{display:block}@media (width>=1024px){.cols{grid-template-columns:minmax(0,1fr) var(--side,360px);gap:var(--space-40);align-items:start;display:grid}.cols.even{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.cols>.side{top:calc(var(--header-h) + var(--space-24));position:sticky}}@media (width>=768px){.cols-md{gap:var(--space-24);grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;display:grid}}.topnav{z-index:var(--z-chrome);height:var(--header-h);background:var(--color-chrome);border-bottom:var(--border-1) solid var(--color-border);position:sticky;top:0}.topnav .in{max-width:calc(var(--content-max) + 2 * var(--gutter));align-items:center;gap:var(--space-24);height:100%;padding:0 var(--gutter);margin:0 auto;display:flex}.site-brand{align-items:center;gap:var(--space-8);font-size:var(--text-body-l);font-weight:var(--weight-semibold);letter-spacing:-.01em;color:var(--color-text);white-space:nowrap;min-height:var(--touch-min);border-radius:var(--radius-sm);flex:none;display:flex}.topnav nav{gap:var(--space-4);min-width:0;display:flex}.topnav nav a{min-height:40px;padding:0 var(--space-12);border-radius:var(--radius-pill);font-size:var(--text-body-s);font-weight:var(--weight-medium);color:var(--color-text-muted);white-space:nowrap;transition:color var(--dur-fast) var(--ease-standard),background-color var(--dur-fast) var(--ease-standard);align-items:center;display:inline-flex}.topnav nav a:hover{color:var(--color-text);background:var(--color-surface-2)}.topnav nav a.active{color:var(--color-on-primary-subtle);background:var(--color-primary-subtle);font-weight:var(--weight-semibold)}.topnav .tools{align-items:center;gap:var(--space-8);flex:none;margin-left:auto;display:flex}@media (width>=1024px) and (width<=1179px){.topnav .site-brand span{display:none}.topnav .in{gap:var(--space-16)}}.apphead{z-index:var(--z-chrome);background:var(--color-chrome);border-bottom:var(--border-1) solid var(--color-border);padding:var(--safe-t) calc(var(--gutter) - var(--space-8)) 0 var(--gutter);position:sticky;top:0}.apphead .in{height:var(--apphead-h);align-items:center;gap:var(--space-4);display:flex}.apphead .site-brand{font-size:var(--text-body);margin-right:auto}.navrail{z-index:var(--z-chrome);width:calc(var(--rail-w) + var(--safe-l));padding:calc(var(--safe-t) + var(--space-16)) 0 calc(var(--safe-b) + var(--space-16)) var(--safe-l);background:var(--color-chrome);border-right:var(--border-1) solid var(--color-border);align-items:center;gap:var(--space-4);scrollbar-width:none;flex-direction:column;display:flex;position:fixed;top:0;bottom:0;left:0;overflow-y:auto}.navrail .site-brand{margin-bottom:var(--space-16);min-width:var(--touch-min);justify-content:center}.navrail nav{gap:var(--space-4);flex-direction:column;width:100%;display:flex}.navrail .tools{align-items:center;gap:var(--space-8);padding-top:var(--space-16);flex-direction:column;margin-top:auto;display:flex}.navitem{justify-content:center;align-items:center;gap:var(--space-4);min-height:56px;padding:var(--space-4) 2px;color:var(--color-text-muted);font-size:var(--text-overline);font-weight:var(--weight-medium);text-align:center;border-radius:var(--radius-md);transition:color var(--dur-fast) var(--ease-standard);flex-direction:column;line-height:1.2;display:flex}.navitem .pill{border-radius:var(--radius-pill);width:56px;height:32px;transition:background-color var(--dur-base) var(--ease-standard);justify-content:center;align-items:center;display:flex}.navitem:hover .pill{background:var(--color-surface-2)}.navitem.active{color:var(--color-on-primary-subtle);font-weight:var(--weight-semibold)}.navitem.active .pill{background:var(--color-primary-subtle)}.navitem:focus-visible{outline-offset:-2px}.tabbar{z-index:var(--z-chrome);height:calc(var(--tabbar-h) + var(--safe-b));padding:var(--space-4) calc(var(--safe-r) + var(--space-4)) var(--safe-b) calc(var(--safe-l) + var(--space-4));background:var(--color-chrome);border-top:var(--border-1) solid var(--color-border);box-shadow:var(--shadow-chrome);grid-template-columns:repeat(5,minmax(0,1fr));display:grid;position:fixed;bottom:0;left:0;right:0}.tabbar .navitem{min-height:calc(var(--tabbar-h) - var(--space-8))}body.immersive-on .tabbar,body.immersive-on .topnav,body.immersive-on .navrail,body.immersive-on .apphead{display:none}.appbar{align-items:center;gap:var(--space-8);min-height:var(--control-md);margin-bottom:var(--space-16);display:flex}.appbar h1,.appbar .title{min-width:0;font-size:var(--text-h4);font-weight:var(--weight-semibold);line-height:var(--leading-heading);letter-spacing:0;flex:1;margin:0}.appbar .grow{flex:1}@media (width>=1024px){.appbar h1,.appbar .title{font-size:var(--text-h2);letter-spacing:var(--tracking-tight)}}.btn{justify-content:center;align-items:center;gap:var(--space-8);height:var(--control-md);padding:0 var(--space-16);border-radius:var(--radius-sm);border:var(--border-1) solid var(--color-border-strong);background:var(--color-surface);color:var(--color-text);font-size:var(--text-button);font-weight:var(--weight-semibold);white-space:nowrap;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color var(--dur-fast) var(--ease-standard),border-color var(--dur-fast) var(--ease-standard),color var(--dur-fast) var(--ease-standard),transform var(--dur-fast) var(--ease-standard);line-height:1;text-decoration:none;display:inline-flex;position:relative}.btn:hover{background:var(--color-surface-2)}.btn:active{background:var(--color-surface-3);transform:translateY(1px)}.btn .ic{flex:none}.btn.primary{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-on-primary)}.btn.primary:hover{background:var(--color-primary-hover);border-color:var(--color-primary-hover)}.btn.primary:active{background:var(--color-primary-pressed);border-color:var(--color-primary-pressed)}.btn.ghost{color:var(--color-link);background:0 0;border-color:#0000}.btn.ghost:hover{background:var(--color-primary-subtle)}.btn.ghost:active{background:var(--color-surface-3)}.btn.danger{background:var(--color-error);border-color:var(--color-error);color:var(--color-on-error)}.btn.danger:hover{background:var(--color-error-hover);border-color:var(--color-error-hover)}.btn.ghost.danger{color:var(--color-error);background:0 0;border-color:#0000}.btn.ghost.danger:hover{background:var(--color-error-subtle)}.btn.sm{height:var(--control-sm);padding:0 var(--space-12);font-size:var(--text-button-s);gap:6px}.btn.sm:after{content:"";inset:calc((var(--control-sm) - var(--touch-min)) / 2) 0;position:absolute}.btn.lg{height:var(--control-lg);padding:0 var(--space-24);font-size:var(--text-body);border-radius:var(--radius-md)}.btn.block{width:100%;display:flex}.btn[disabled],.btn[aria-disabled=true]{opacity:.45;cursor:not-allowed;pointer-events:none}.btn[aria-busy=true]{opacity:.8;cursor:progress;pointer-events:none}.btn-row{gap:var(--space-8);flex-wrap:wrap;align-items:center;display:flex}.btn-row>.grow{flex:1 1 0}.iconbtn{width:var(--touch-min);height:var(--touch-min);border-radius:var(--radius-pill);color:var(--color-text);transition:background-color var(--dur-fast) var(--ease-standard),color var(--dur-fast) var(--ease-standard);background:0 0;flex:none;justify-content:center;align-items:center;display:inline-flex;position:relative}.iconbtn:hover{background:var(--color-surface-2)}.iconbtn:active{background:var(--color-surface-3)}.iconbtn.filled{background:var(--color-surface-2)}.iconbtn[aria-pressed=true]{color:var(--color-accent)}.iconbtn.active,.iconbtn[aria-current]{background:var(--color-primary-subtle);color:var(--color-on-primary-subtle)}.avatar{width:var(--avatar-sm);height:var(--avatar-sm);border-radius:var(--radius-pill);background:var(--color-primary-subtle);color:var(--color-on-primary-subtle);font-size:var(--text-body-s);font-weight:var(--weight-semibold);flex:none;justify-content:center;align-items:center;display:inline-flex}.avatar.lg{width:var(--avatar-lg);height:var(--avatar-lg);font-size:var(--text-h4)}.iconbtn[aria-current] .avatar{box-shadow:0 0 0 var(--border-2) var(--color-primary)}.link{color:var(--color-link);font-weight:var(--weight-semibold);text-underline-offset:3px;text-decoration:underline;text-decoration-thickness:1px}.link:hover{text-decoration-thickness:2px}.btn.ghost[aria-current]{background:var(--color-primary-subtle);color:var(--color-on-primary-subtle)}.field{margin-bottom:var(--space-16);flex-direction:column;gap:6px;display:flex}.field>span:first-child,.field .label{font-size:var(--text-body-s);font-weight:var(--weight-semibold);color:var(--color-text);line-height:var(--leading-snug)}.field .help{font-size:var(--text-caption);color:var(--color-text-muted);line-height:var(--leading-snug)}.field .field-error{font-size:var(--text-caption);color:var(--color-error);font-weight:var(--weight-medium);align-items:flex-start;gap:6px;display:flex}fieldset.field{border:0;min-width:0;margin-inline:0;padding:0}fieldset.field>legend{font-size:var(--text-body-s);font-weight:var(--weight-semibold);color:var(--color-text);margin-bottom:6px;padding:0}.inp{width:100%;height:var(--control-field);border-radius:var(--radius-sm);border:var(--border-1) solid var(--color-border-strong);background:var(--color-surface);font-size:var(--text-body);color:var(--color-text);transition:border-color var(--dur-fast) var(--ease-standard),box-shadow var(--dur-fast) var(--ease-standard);padding:0 14px}.inp::placeholder{color:var(--color-text-muted);opacity:1}.inp:hover{border-color:var(--color-text-muted)}.inp:focus{outline:var(--border-2) solid var(--color-focus);outline-offset:1px;border-color:var(--color-primary)}.inp[aria-invalid=true]{border-color:var(--color-error)}.inp:disabled{background:var(--color-surface-2);color:var(--color-text-muted)}textarea.inp{height:auto;min-height:160px;padding:var(--space-12) 14px;line-height:var(--leading-body);resize:vertical}textarea.inp.short{min-height:104px}.inp.otp{font-size:var(--text-h4);letter-spacing:.4em;font-variant-numeric:tabular-nums;text-align:left}.search-field{align-items:center;display:flex;position:relative}.search-field>.ic{color:var(--color-text-muted);pointer-events:none;position:absolute;left:14px}.search-field .inp{border-radius:var(--radius-pill);padding-left:44px;padding-right:44px}.search-field .inp::-webkit-search-cancel-button{display:none}.search-field .clear{position:absolute;right:2px}.err{color:var(--color-error);font-size:var(--text-body-s);margin:var(--space-8) 0 0;line-height:var(--leading-snug)}.okmsg{color:var(--color-success);font-size:var(--text-body-s);margin:var(--space-8) 0 0;line-height:var(--leading-snug)}.badge{align-items:center;gap:var(--space-4);height:24px;padding:0 var(--space-8);border-radius:var(--radius-pill);font-size:var(--text-overline);font-weight:var(--weight-semibold);white-space:nowrap;letter-spacing:.01em;background:var(--color-surface-2);color:var(--color-text-muted);border:var(--border-1) solid transparent;line-height:1;display:inline-flex}.badge.brand{background:var(--color-primary-subtle);color:var(--color-on-primary-subtle)}.badge.accent{background:var(--color-accent-subtle);color:var(--color-on-accent-subtle)}.badge.success{background:var(--color-success-subtle);color:var(--color-success)}.badge.warning{background:var(--color-warning-subtle);color:var(--color-warning)}.badge.error{background:var(--color-error-subtle);color:var(--color-error)}.badge.outline{border-color:var(--color-border-strong);color:var(--color-text-2);background:0 0}.badge.onmedia{background:var(--color-media-scrim);color:var(--color-on-media)}.badge.onhero{background:var(--color-hero-chip);color:var(--color-on-hero);border-color:var(--color-hero-line)}.chips{gap:var(--space-8);flex-wrap:wrap;display:flex}.chip{min-height:40px;padding:0 var(--space-16);border-radius:var(--radius-pill);border:var(--border-1) solid var(--color-border-strong);background:var(--color-surface);color:var(--color-text-2);font-size:var(--text-body-s);font-weight:var(--weight-medium);white-space:nowrap;cursor:pointer;transition:background-color var(--dur-fast) var(--ease-standard),border-color var(--dur-fast) var(--ease-standard),color var(--dur-fast) var(--ease-standard);align-items:center;gap:6px;display:inline-flex;position:relative}.chip:after{content:"";position:absolute;inset:-2px 0}.chip:hover{border-color:var(--color-text-muted);background:var(--color-surface-2)}.chip[aria-pressed=true],.chip[aria-checked=true],.chip[aria-selected=true]{background:var(--color-accent-subtle);border-color:var(--color-accent-fill);color:var(--color-on-accent-subtle);font-weight:var(--weight-semibold)}.chip.static{cursor:default}.chip.static:hover{border-color:var(--color-border-strong);background:var(--color-surface)}.seg{gap:var(--space-4);padding:var(--space-4);border-radius:var(--radius-md);background:var(--color-surface-2);border:var(--border-1) solid var(--color-border);scrollbar-width:none;max-width:100%;display:inline-flex;overflow-x:auto}.seg::-webkit-scrollbar{display:none}.seg>button{min-height:var(--control-sm);padding:0 var(--space-16);border-radius:var(--radius-sm);font-size:var(--text-body-s);font-weight:var(--weight-medium);color:var(--color-text-muted);white-space:nowrap;transition:background-color var(--dur-fast) var(--ease-standard),color var(--dur-fast) var(--ease-standard),box-shadow var(--dur-fast) var(--ease-standard);flex:none;position:relative}.seg>button:after{content:"";position:absolute;inset:-4px 0}.seg>button:hover{color:var(--color-text)}.seg>button[aria-selected=true],.seg>button[aria-checked=true]{background:var(--color-surface);color:var(--color-text);font-weight:var(--weight-semibold);box-shadow:var(--shadow-1),0 0 0 var(--border-1) var(--color-border)}.seg>button:focus-visible{outline-offset:-2px}.seg.block{width:100%;display:flex}.seg.block>button{padding:0 var(--space-8);flex:auto}.thumb{isolation:isolate;border-radius:var(--radius-md);aspect-ratio:16/9;background:var(--color-hero) url(/bg/home.webp) 70% 40% / 260% auto no-repeat;color:var(--color-on-media);flex:none;display:block;position:relative;overflow:hidden}.thumb>img{object-fit:cover;z-index:-1;background:var(--color-surface-2);width:100%;height:100%;display:block;position:absolute;inset:0}.thumb.short{aspect-ratio:9/16}.thumb.square{aspect-ratio:1}.thumb.noimg:after{content:"";z-index:-1;background:linear-gradient(180deg,var(--color-hero-fade) 35%,var(--color-hero-scrim));position:absolute;inset:0}.thumb-label{left:var(--space-12);right:var(--space-12);bottom:var(--space-12);font-size:var(--text-body-s);font-weight:var(--weight-semibold);line-height:var(--leading-snug);color:var(--color-on-hero);-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;position:absolute;overflow:hidden}.thumb .dur{right:var(--space-8);bottom:var(--space-8);border-radius:var(--radius-xs);background:var(--color-media-scrim);color:var(--color-on-media);font-size:var(--text-overline);font-weight:var(--weight-semibold);padding:3px 6px;line-height:1.2;position:absolute}.thumb.noimg .dur{top:var(--space-8);bottom:auto}.thumb .lk{top:var(--space-8);right:var(--space-8);border-radius:var(--radius-pill);background:var(--color-media-scrim);width:28px;height:28px;color:var(--color-media-accent);justify-content:center;align-items:center;display:flex;position:absolute}.thumb .done{top:var(--space-8);left:var(--space-8);height:24px;padding:0 var(--space-8);align-items:center;gap:var(--space-4);border-radius:var(--radius-pill);background:var(--color-media-scrim);color:var(--color-on-media);font-size:var(--text-overline);font-weight:var(--weight-semibold);display:inline-flex;position:absolute}.thumb .level{top:var(--space-8);left:var(--space-8);position:absolute}.thumb .pr{background:var(--color-media-scrim);height:4px;position:absolute;bottom:0;left:0;right:0}.thumb .pr>i{background:var(--color-accent-fill);height:100%;display:block}.ccard{border-radius:var(--radius-md);width:260px;color:inherit;flex:none;display:block}.ccard.short{width:140px}.ccard .thumb{width:100%;margin-bottom:var(--space-12);transition:transform var(--dur-base) var(--ease-standard),box-shadow var(--dur-base) var(--ease-standard)}.ccard h4{margin:0 0 var(--space-4);font-size:var(--text-body);font-weight:var(--weight-semibold);line-height:var(--leading-snug);letter-spacing:0;-webkit-line-clamp:2;transition:color var(--dur-fast) var(--ease-standard);-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.ccard.short h4{font-size:var(--text-body-s);-webkit-line-clamp:3}.ccard .meta{font-size:var(--text-caption);color:var(--color-text-muted);line-height:var(--leading-snug)}.ccard:focus-visible{outline-offset:4px}@media (hover:hover){.ccard:hover .thumb{transform:translateY(var(--lift));box-shadow:var(--shadow-2)}.ccard:hover h4{color:var(--color-link)}}.crow{gap:var(--space-12);min-height:var(--touch-min);padding:var(--space-12) 0;border-bottom:var(--border-1) solid var(--color-border);color:inherit;align-items:center;display:flex}.crow:last-child{border-bottom:none}.crow .thumb{border-radius:var(--radius-sm);width:112px}.crow .thumb .dur,.hcard .thumb .dur{font-size:var(--text-overline);right:var(--space-4);bottom:var(--space-4);padding:2px 4px}.crow .thumb .lk,.hcard .thumb .lk{top:var(--space-4);right:var(--space-4);width:24px;height:24px}.crow .bd{flex:1;min-width:0}.crow h4{margin:0 0 var(--space-4);font-size:var(--text-body-s);font-weight:var(--weight-semibold);line-height:var(--leading-snug);letter-spacing:0;-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.crow .meta{font-size:var(--text-caption);color:var(--color-text-muted);line-height:var(--leading-snug);flex-wrap:wrap;align-items:center;gap:6px;display:flex}.crow>.ic:last-child{color:var(--color-text-muted)}.crow.current h4{color:var(--color-link)}.crow.current{box-shadow:inset 3px 0 0 var(--color-accent-fill);padding-left:var(--space-12)}@media (hover:hover){a.crow:hover h4{color:var(--color-link)}}@media (width>=1024px){.crow .thumb{width:128px}}.hcard{gap:var(--space-16);width:100%;padding:var(--space-16);text-align:left;color:inherit;background:var(--color-surface);border:var(--border-1) solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-1);transition:transform var(--dur-base) var(--ease-standard),box-shadow var(--dur-base) var(--ease-standard),border-color var(--dur-base) var(--ease-standard);align-items:center;display:flex}.hcard.stack{align-items:stretch;gap:var(--space-12);flex-direction:column}.hcard .thumb{border-radius:var(--radius-sm);width:104px}.hcard .bd{flex:1;min-width:0}.hcard .title{font-size:var(--text-body);font-weight:var(--weight-semibold);line-height:var(--leading-snug)}.hcard .meta{font-size:var(--text-caption);color:var(--color-text-muted);line-height:var(--leading-snug);margin-top:2px}.hcard>.ic:last-child{color:var(--color-text-muted)}.hcard .lead-ic{width:var(--touch-min);height:var(--touch-min);border-radius:var(--radius-pill);background:var(--color-primary-subtle);color:var(--color-on-primary-subtle);flex:none;justify-content:center;align-items:center;display:flex}@media (hover:hover){a.hcard:hover,button.hcard:hover{transform:translateY(var(--lift));box-shadow:var(--shadow-2);border-color:var(--color-border-strong)}}.pcard{color:inherit;background:var(--color-surface);border:var(--border-1) solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-1);transition:transform var(--dur-base) var(--ease-standard),box-shadow var(--dur-base) var(--ease-standard);flex-direction:column;display:flex;overflow:hidden}.pcard .thumb{border-radius:0;width:100%}.pcard .bd{padding:var(--space-16) var(--space-16) var(--space-24);gap:var(--space-8);flex-direction:column;flex:1;display:flex}.pcard h4{font-size:var(--text-h4);font-weight:var(--weight-semibold);line-height:var(--leading-heading);letter-spacing:0;margin:0}.pcard p{font-size:var(--text-body-s);line-height:var(--leading-body);color:var(--color-text-2);-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:0;display:-webkit-box;overflow:hidden}.pcard .meta{font-size:var(--text-caption);color:var(--color-text-muted);gap:var(--space-8);flex-wrap:wrap;align-items:center;margin-top:auto;display:flex}@media (hover:hover){a.pcard:hover{transform:translateY(var(--lift));box-shadow:var(--shadow-2)}}.card{background:var(--color-surface);border:var(--border-1) solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-1)}.card.pad{padding:var(--space-16)}@media (width>=768px){.card.pad{padding:var(--space-24)}}.stats{gap:var(--space-8);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.stat-tile{padding:var(--space-12) var(--space-16);background:var(--color-surface);border:var(--border-1) solid var(--color-border);border-radius:var(--radius-md)}.stat-tile b{font-size:var(--text-h4);font-weight:var(--weight-bold);line-height:var(--leading-heading);display:block}.stat-tile span{font-size:var(--text-caption);color:var(--color-text-muted)}.stat{justify-content:space-between;align-items:center;gap:var(--space-16);padding:var(--space-8) 0;border-top:var(--border-1) solid var(--color-border);font-size:var(--text-body-s);display:flex}.stat:first-of-type{border-top:0}.stat span{color:var(--color-text-muted)}.quote{isolation:isolate;padding:var(--space-24);border-radius:var(--radius-lg);color:inherit;background:var(--color-surface);border:var(--border-1) solid var(--color-border);box-shadow:var(--shadow-1);transition:transform var(--dur-base) var(--ease-standard),box-shadow var(--dur-base) var(--ease-standard);display:block;position:relative;overflow:hidden}.quote .qt{font-family:var(--font-serif);font-size:var(--text-h4);font-weight:var(--weight-regular);margin:var(--space-12) 0;letter-spacing:0;line-height:1.45}.quote .src{font-size:var(--text-caption);font-weight:var(--weight-semibold);color:var(--color-accent);display:block}.quote.art{color:var(--color-on-hero);box-shadow:var(--shadow-2);background:var(--color-hero) url(/bg/home.webp) 85% 30% / 220% auto no-repeat;border-color:#0000}.quote.art:before{content:"";z-index:-1;background:var(--color-hero-scrim);position:absolute;inset:0}.quote.art .src{color:var(--color-hero-eyebrow)}.quote.art .muted{color:var(--color-on-hero-2)}.quote.art.photo{background:var(--color-hero) var(--photo) center / cover no-repeat;flex-direction:column;justify-content:flex-end;align-items:flex-start;min-height:176px;display:flex}.quote.art.photo:before{background:linear-gradient(180deg,var(--color-media-scrim-soft) 0%,var(--color-media-scrim) 60%,var(--color-media-scrim-strong) 100%)}@media (hover:hover){a.quote:hover{transform:translateY(var(--lift));box-shadow:var(--shadow-3)}}.notice{gap:var(--space-12);padding:var(--space-12) var(--space-16);border-radius:var(--radius-md);border:var(--border-1) solid transparent;font-size:var(--text-body-s);line-height:var(--leading-body);margin:0 0 var(--space-16);align-items:flex-start;display:flex}.notice>.ic{margin-top:3px}.notice .bd{flex:1;min-width:0}.notice b{font-weight:var(--weight-semibold);display:block}.notice.info{background:var(--color-info-subtle);color:var(--color-info)}.notice.important{background:var(--color-error-subtle);color:var(--color-error)}.notice.warning{background:var(--color-warning-subtle);color:var(--color-warning)}.notice.success{background:var(--color-success-subtle);color:var(--color-success)}.progress{border-radius:var(--radius-pill);background:var(--color-track);height:6px;overflow:hidden}.progress>i{border-radius:var(--radius-pill);background:var(--color-accent-fill);height:100%;transition:width var(--dur-slow) var(--ease-standard);display:block}.progress.on-hero{background:var(--color-hero-chip)}.ring{flex:none;display:block}.ring .track{stroke:var(--color-track)}.ring .fill{stroke:var(--color-accent-fill);transition:stroke-dashoffset var(--dur-slow) var(--ease-standard)}.ring-wrap{flex:none;justify-content:center;align-items:center;display:inline-flex;position:relative}.ring-wrap>span{font-size:var(--text-caption);font-weight:var(--weight-semibold);position:absolute}.spinner{width:var(--icon-md);height:var(--icon-md);border-radius:var(--radius-pill);border:var(--border-2) solid var(--color-track);border-top-color:var(--color-accent-fill);flex:none;animation:.8s linear infinite spin}.spinner.sm{width:var(--icon-xs);height:var(--icon-xs);opacity:.85;border-color:#0000 currentColor currentColor}.spinner-block{padding:var(--space-32) 0;justify-content:center;display:flex}.skeleton{border-radius:var(--radius-sm);background:linear-gradient(90deg,var(--color-skeleton) 0%,var(--color-skeleton-shine) 50%,var(--color-skeleton) 100%) 0 0 / 200% 100%;animation:shimmer calc(var(--dur-slow) * 5) linear infinite;display:block}.skeleton.text{height:.9em;margin:.35em 0}.skeleton.title{width:70%;height:1.2em;margin-bottom:var(--space-8)}.skeleton.media{aspect-ratio:16/9;border-radius:var(--radius-md)}.skeleton.media.short{aspect-ratio:9/16}.skeleton-card{display:block}.skeleton-card .skeleton.media{margin-bottom:var(--space-12)}.empty{text-align:center;align-items:center;gap:var(--space-12);padding:var(--space-40) var(--space-16);border:var(--border-1) dashed var(--color-border-strong);border-radius:var(--radius-lg);background:var(--color-surface);flex-direction:column;display:flex}.empty.plain{padding:var(--space-32) 0;background:0 0;border:0}.empty-ic{border-radius:var(--radius-pill);background:var(--color-primary-subtle);width:56px;height:56px;color:var(--color-on-primary-subtle);flex:none;justify-content:center;align-items:center;display:flex}.empty h2,.empty .title{font-size:var(--text-h4);font-weight:var(--weight-semibold);margin:0}.empty p{max-width:44ch;color:var(--color-text-2);font-size:var(--text-body-s);line-height:var(--leading-body);margin:0}.empty .btn-row{margin-top:var(--space-4);justify-content:center}.toast-host{left:0;right:0;bottom:calc(var(--safe-b) + var(--space-16));z-index:var(--z-toast);align-items:center;gap:var(--space-8);padding:0 var(--gutter);pointer-events:none;flex-direction:column;display:flex;position:fixed}.shell.has-tabbar~.toast-host,.toast-host.above-tabbar{bottom:calc(var(--tabbar-h) + var(--safe-b) + var(--space-12))}.toast{pointer-events:auto;align-items:center;gap:var(--space-12);width:max-content;max-width:480px;min-height:var(--touch-min);padding:var(--space-8) var(--space-8) var(--space-8) var(--space-16);border-radius:var(--radius-md);background:var(--color-inverse);color:var(--color-on-inverse);box-shadow:var(--shadow-3);font-size:var(--text-body-s);font-weight:var(--weight-medium);animation:fade-up var(--dur-base) var(--ease-enter);display:flex}.toast .iconbtn{color:inherit;width:36px;height:36px}.toast .iconbtn:hover{opacity:.8;background:0 0}.backdrop{z-index:var(--z-overlay);background:var(--color-overlay);padding:calc(var(--safe-t) + var(--space-16)) var(--gutter) calc(var(--safe-b) + var(--space-16));animation:fade-in var(--dur-base) var(--ease-enter);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.dialog{z-index:var(--z-modal);width:100%;max-width:440px;max-height:100%;padding:var(--space-24);border-radius:var(--radius-xl);background:var(--color-surface);color:var(--color-text);box-shadow:var(--shadow-3);animation:dialog-in var(--dur-slow) var(--ease-enter);position:relative;overflow:auto}.dialog h2{font-size:var(--text-h4);font-weight:var(--weight-semibold);margin:0 0 var(--space-8);letter-spacing:0}.dialog p{color:var(--color-text-2);font-size:var(--text-body-s);line-height:var(--leading-body)}.dialog .btn-row{margin-top:var(--space-24);justify-content:flex-end}.backdrop.sheet-wrap{align-items:flex-end;padding:0}.sheet{z-index:var(--z-modal);width:100%;max-width:640px;max-height:88dvh;padding:var(--space-8) var(--gutter) calc(var(--safe-b) + var(--space-24));border-radius:var(--radius-xl) var(--radius-xl) 0 0;background:var(--color-surface);box-shadow:var(--shadow-3);animation:sheet-up var(--dur-slow) var(--ease-enter);position:relative;overflow:auto}.sheet .handle{border-radius:var(--radius-pill);background:var(--color-border-strong);width:40px;height:4px;margin:0 auto var(--space-16)}.sheet .sheet-head{justify-content:space-between;align-items:center;gap:var(--space-8);margin-bottom:var(--space-16);display:flex}.sheet .sheet-head h2{font-size:var(--text-h4);letter-spacing:0;margin:0}@media (width>=768px){.backdrop.sheet-wrap{padding:var(--space-24);align-items:center}.sheet{border-radius:var(--radius-xl);padding-bottom:var(--space-24)}}.phero{isolation:isolate;color:var(--color-on-hero);margin:calc(var(--page-top) * -1) 0 var(--space-32);padding:calc(var(--page-safe) + var(--space-16)) 0 var(--space-32);min-height:calc(var(--page-safe) + 184px);background:var(--color-hero) url(/bg/home.webp) right 35% / cover no-repeat;flex-direction:column;display:flex;position:relative;overflow:hidden}.phero:before{content:"";z-index:-1;background:linear-gradient(90deg,var(--color-hero) 0%,var(--color-hero-scrim) 60%,var(--color-hero-fade) 100%);position:absolute;inset:0}:root[data-theme=dark] .phero:after{content:"";z-index:-2;background:var(--color-hero-scrim);position:absolute;inset:0}.phero .in{width:min(100% - 2 * var(--gutter), var(--page-max));flex-direction:column;flex:1;margin-inline:auto;display:flex;position:relative}.phero .top{align-items:center;gap:var(--space-8);margin-bottom:var(--space-16);min-height:var(--touch-min);display:flex}.phero .top .grow{flex:1}.phero .txt{max-width:640px;z-index:var(--z-raised);margin-top:auto;position:relative}.phero .eyebrow{color:var(--color-hero-eyebrow)}.phero h1{margin:var(--space-8) 0 0;font-size:var(--text-h1);font-weight:var(--weight-semibold);line-height:var(--leading-tight);letter-spacing:var(--tracking-tight);color:var(--color-on-hero)}.phero.display h1{font-size:var(--text-display)}.phero .sub{margin:var(--space-8) 0 0;font-size:var(--text-body);line-height:var(--leading-body);color:var(--color-on-hero-2);max-width:56ch}.phero .txt>.badge,.phero .txt>.btn-row{margin-top:var(--space-16)}.phero .iconbtn{background:var(--color-hero-chip);color:var(--color-on-hero);border:var(--border-1) solid var(--color-hero-line)}.phero .iconbtn:hover{background:var(--color-hero-chip-hover)}.phero.hasph .top{align-items:flex-start;min-height:84px}.phero .ph{aspect-ratio:4/3;border-radius:var(--radius-md);border:var(--border-2) solid var(--color-hero-line);width:112px;box-shadow:var(--shadow-3);background:var(--color-hero-2);position:absolute;top:0;right:0;overflow:hidden}.phero .ph>img{object-fit:cover;width:100%;height:100%;display:block}.phero .cut{right:calc(var(--space-8) * -1);bottom:calc(var(--space-32) * -1);pointer-events:none;width:auto;height:176px;position:absolute}.phero.hascut .txt{max-width:calc(100% - 112px)}.phero.hascut .sub{max-width:24ch}@media (width>=768px){.phero{min-height:calc(var(--page-safe) + 248px);padding-bottom:var(--space-40);margin-bottom:var(--space-40)}.phero .sub{font-size:var(--text-body-l)}.phero .ph{border-radius:var(--radius-lg);width:240px;top:50%;transform:translateY(-50%)}.phero.hasph .top{min-height:var(--touch-min)}.phero.hasph .txt{max-width:calc(100% - 280px)}.phero .cut{right:0;bottom:calc(var(--space-40) * -1);height:260px}.phero.hascut .txt{max-width:calc(100% - 220px)}.phero.hascut .sub{max-width:56ch}}@media (width>=1024px){.phero{min-height:300px;padding-top:var(--space-40);padding-bottom:var(--space-48)}.phero .ph{width:300px}.phero.hasph .txt{max-width:calc(100% - 340px)}.phero .cut{right:var(--space-32);bottom:calc(var(--space-48) * -1);height:320px}}.bgpage{isolation:isolate}.page.bgpage{animation:none}.bgpage:before{content:"";z-index:-1;background:var(--color-hero) url(/bg/home.webp) 70% 50% / cover no-repeat;position:fixed;inset:0}.panel-hero{background:var(--color-surface);border:var(--border-1) solid var(--color-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-3);padding:var(--space-24) var(--space-24) var(--space-24)}@media (width>=768px){.panel-hero{padding:var(--space-40)}}.bgpage .appbar .iconbtn{background:var(--color-hero-chip);color:var(--color-on-hero);border:var(--border-1) solid var(--color-hero-line)}.player{aspect-ratio:16/9;border-radius:var(--radius-md);justify-content:center;align-items:center;gap:var(--space-12);text-align:center;padding:var(--space-24);background:var(--color-surface-2);border:var(--border-1) solid var(--color-border);color:var(--color-text-2);font-size:var(--text-body-s);flex-direction:column;display:flex}.player .ic{color:var(--color-accent)}.player-frame{aspect-ratio:16/9;border-radius:var(--radius-md);background:var(--color-hero);width:100%;position:relative;overflow:hidden}.player-frame.vertical{aspect-ratio:9/16;width:auto;max-height:72dvh;margin:0 auto}.player-frame iframe{border:0;width:100%;height:100%;position:absolute;inset:0}@media (width>=1024px){.player-frame,.player,.locked{border-radius:var(--radius-lg)}.player-frame.vertical{max-height:78vh}}.wm{z-index:2;pointer-events:none;-webkit-user-select:none;user-select:none;max-width:60%;font-size:var(--text-overline);font-weight:var(--weight-semibold);letter-spacing:.02em;color:var(--color-on-media);opacity:.34;text-shadow:0 1px 2px var(--color-media-scrim-strong);white-space:nowrap;text-overflow:ellipsis;transition:top 1.2s var(--ease-standard),left 1.2s var(--ease-standard);position:absolute;overflow:hidden}.player-frame.secure .stage{position:absolute;inset:0}.player-frame.secure .wm{z-index:2}.fsbtn{z-index:var(--z-media-ui);width:var(--touch-min);height:var(--touch-min);border-radius:var(--radius-sm);background:var(--color-media-scrim);color:var(--color-on-media);border:var(--border-1) solid var(--color-hero-line);justify-content:center;align-items:center;display:flex;position:absolute;top:6px;right:6px}.player-frame.secure:fullscreen{aspect-ratio:auto;background:var(--color-video-bg);border:0;border-radius:0;width:100vw;height:100vh}.player-frame.secure:fullscreen{aspect-ratio:auto;background:var(--color-video-bg);border:0;border-radius:0;width:100vw;height:100vh}.player-frame.secure.immersive{z-index:var(--z-immersive);aspect-ratio:auto;background:var(--color-video-bg);border:0;border-radius:0;width:100vw;height:100dvh;max-height:none;margin:0;position:fixed;inset:0}:-webkit-any(.player-frame.secure:fullscreen .stage,.player-frame.secure:-webkit-full-screen .stage,.player-frame.secure.immersive .stage){--fw:calc(100vw - var(--safe-l) - var(--safe-r));--fh:calc(100vh - var(--safe-t) - var(--safe-b));width:min(var(--fw),calc(var(--fh) * 16 / 9));height:min(var(--fh),calc(var(--fw) * 9 / 16));inset:50% auto auto 50%;transform:translate(-50%,-50%)}:is(.player-frame.secure:fullscreen .stage,.player-frame.secure:fullscreen .stage,.player-frame.secure.immersive .stage){--fw:calc(100vw - var(--safe-l) - var(--safe-r));--fh:calc(100vh - var(--safe-t) - var(--safe-b));width:min(var(--fw),calc(var(--fh) * 16 / 9));height:min(var(--fh),calc(var(--fw) * 9 / 16));inset:50% auto auto 50%;transform:translate(-50%,-50%)}@supports (height:100dvh){.player-frame.secure.immersive .stage{--fh:calc(100dvh - var(--safe-t) - var(--safe-b))}}.player-frame.secure.immersive .fsbtn{top:calc(var(--safe-t) + var(--space-8));right:calc(var(--safe-r) + var(--space-8))}.locked{border-radius:var(--radius-md);isolation:isolate;position:relative;overflow:hidden}.locked>.thumb{border-radius:0;width:100%}.lockover{justify-content:center;align-items:center;gap:var(--space-12);padding:var(--space-16);text-align:center;color:var(--color-on-media);background:var(--color-media-scrim-strong);flex-direction:column;display:flex;position:absolute;inset:0}.lockover .lockico{border-radius:var(--radius-pill);background:var(--color-hero-chip);width:48px;height:48px;color:var(--color-media-accent);justify-content:center;align-items:center;display:flex}.lockover .lock-title{font-size:var(--text-body);font-weight:var(--weight-semibold)}.lockover .btn:not(.primary){background:var(--color-hero-chip);border-color:var(--color-hero-line);color:var(--color-on-media)}.lockover .btn:not(.primary):hover{background:var(--color-hero-chip-hover)}.lockover .btn.primary{background:var(--color-media-button);border-color:var(--color-media-button);color:var(--color-on-media-button)}.lockover .btn.primary:hover{background:var(--color-media-button-hover);border-color:var(--color-media-button-hover)}.eyebrow{font-size:var(--text-overline);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-overline);text-transform:uppercase;color:var(--color-accent);line-height:var(--leading-snug)}.ideas{gap:var(--space-12);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.ideas li{gap:var(--space-12);font-size:var(--text-body);line-height:var(--leading-body);color:var(--color-text-2);display:flex}.ideas li:before{content:"";border-radius:var(--radius-pill);background:var(--color-accent-fill);flex:none;width:6px;height:6px;margin-top:.65em}.reflect{border-left:3px solid var(--color-accent-fill);padding:var(--space-4) 0 var(--space-4) var(--space-16);font-family:var(--font-serif);font-size:var(--text-body-l);line-height:var(--leading-body);color:var(--color-text);margin:0 0 var(--space-16);max-width:var(--measure)}.wisdom-quote{font-family:var(--font-serif);font-size:var(--text-h3);line-height:1.4;font-weight:var(--weight-regular);margin:0 0 var(--space-12);max-width:32ch}@media (width>=768px){.wisdom-quote{font-size:var(--text-h2)}}.quote-src{font-size:var(--text-caption);font-weight:var(--weight-semibold);color:var(--color-accent)}.prose{max-width:var(--measure)}.prose p{font-family:var(--font-serif);font-size:var(--text-body-l);line-height:var(--leading-prose);color:var(--color-text);margin:0 0 var(--space-24)}.lede{font-size:var(--text-body-l);line-height:var(--leading-body);color:var(--color-text-2);max-width:var(--measure)}.list{flex-direction:column;display:flex}.list-item{align-items:center;gap:var(--space-12);min-height:56px;padding:var(--space-12) 0;border-bottom:var(--border-1) solid var(--color-border);text-align:left;width:100%;color:inherit;font-size:var(--text-body);transition:color var(--dur-fast) var(--ease-standard);display:flex}.list-item:last-child{border-bottom:none}.list-item .grow{flex:1;min-width:0}.list-item>.ic:first-child,.list-item>.ic:last-child{color:var(--color-text-muted)}.list-item.danger,.list-item.danger>.ic:first-child{color:var(--color-error)}.list-item[disabled]{opacity:.6;cursor:progress}.list-item .title{font-size:var(--text-body-s);font-weight:var(--weight-semibold)}.list-item .meta{font-size:var(--text-caption);color:var(--color-text-muted)}@media (hover:hover){a.list-item:hover .grow,button.list-item:hover .grow{color:var(--color-link)}}.step{gap:var(--space-12);min-height:var(--touch-min);padding:var(--space-12) 0;border-bottom:var(--border-1) solid var(--color-border);color:inherit;align-items:center;display:flex}.step:last-child{border-bottom:none}.step .n{border-radius:var(--radius-pill);border:var(--border-1) solid var(--color-border-strong);width:32px;height:32px;font-size:var(--text-caption);font-weight:var(--weight-semibold);color:var(--color-text-muted);flex:none;justify-content:center;align-items:center;display:flex}.step .bd{flex:1;min-width:0}.step .title{font-size:var(--text-body-s);font-weight:var(--weight-semibold);line-height:var(--leading-snug)}.step .meta{font-size:var(--text-caption);color:var(--color-text-muted)}.step .hint{font-size:var(--text-caption);color:var(--color-accent);margin-top:var(--space-4)}.step.done .n{background:var(--color-success-subtle);color:var(--color-success);border-color:#0000}.step.next .n{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-on-primary)}.step>.ic:last-child{color:var(--color-text-muted)}@media (hover:hover){a.step:hover .title{color:var(--color-link)}}.plans{gap:var(--space-16);margin-bottom:var(--space-24);display:grid}@media (width>=768px){.plans{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}}.plan{gap:var(--space-4);text-align:left;width:100%;padding:var(--space-24) var(--space-16) var(--space-16);border:var(--border-1) solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-1);color:inherit;transition:border-color var(--dur-fast) var(--ease-standard),box-shadow var(--dur-fast) var(--ease-standard);flex-direction:column;display:flex;position:relative}.plan:hover{border-color:var(--color-border-strong)}.plan[aria-pressed=true],.plan.on{border-color:var(--color-primary);box-shadow:0 0 0 var(--border-1) var(--color-primary),var(--shadow-2)}.plan .rib{top:calc(var(--space-12) * -1);right:var(--space-16);position:absolute}.plan h4{font-size:var(--text-body-l);font-weight:var(--weight-semibold);letter-spacing:0;margin:0}.plan .tagline{font-size:var(--text-caption);color:var(--color-text-muted)}.plan .pr{font-size:var(--text-h3);font-weight:var(--weight-bold);letter-spacing:var(--tracking-tight);margin:var(--space-8) 0 var(--space-4)}.plan .pr small{font-size:var(--text-body-s);font-weight:var(--weight-medium);color:var(--color-text-muted);letter-spacing:0}.plan ul{margin:var(--space-8) 0 0;gap:var(--space-8);font-size:var(--text-body-s);color:var(--color-text-2);flex-direction:column;padding:0;list-style:none;display:flex}.plan li{gap:var(--space-8);align-items:flex-start;display:flex}.plan li .ic{color:var(--color-success);margin-top:3px}.plan .pick{align-items:center;gap:var(--space-8);justify-content:space-between;display:flex}.plan .radio{border-radius:var(--radius-pill);border:var(--border-2) solid var(--color-border-strong);flex:none;justify-content:center;align-items:center;width:20px;height:20px;display:flex}.plan[aria-pressed=true] .radio{border-color:var(--color-primary)}.plan[aria-pressed=true] .radio:after{content:"";border-radius:var(--radius-pill);background:var(--color-primary);width:10px;height:10px}.date-badge{min-width:56px;padding:var(--space-8) var(--space-8);border-radius:var(--radius-sm);text-align:center;background:var(--color-primary-subtle);color:var(--color-on-primary-subtle);font-size:var(--text-overline);font-weight:var(--weight-bold);letter-spacing:var(--tracking-overline);flex:none;align-self:flex-start;line-height:1.3}.livelist{gap:var(--space-16);display:grid}@media (width>=768px){.livelist{grid-template-columns:repeat(2,minmax(0,1fr))}}.live{gap:var(--space-16);padding:var(--space-16);border:var(--border-1) solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-1);display:flex}.live .bd{gap:var(--space-4);flex-direction:column;flex:1;min-width:0;display:flex}.live .title{font-size:var(--text-body);font-weight:var(--weight-semibold);line-height:var(--leading-snug)}.live .meta{font-size:var(--text-caption);color:var(--color-text-muted)}.live .about{font-size:var(--text-body-s);color:var(--color-text-2);line-height:var(--leading-body);margin:var(--space-4) 0 var(--space-8)}.upc{gap:var(--space-12);min-height:var(--touch-min);padding:var(--space-12) 0;border-top:var(--border-1) solid var(--color-border);color:inherit;align-items:center;display:flex}.upc:first-of-type{border-top:0}.upc .title{font-size:var(--text-body-s);font-weight:var(--weight-semibold)}.upc .meta{font-size:var(--text-caption);color:var(--color-text-muted)}.entry{padding:var(--space-16);margin-bottom:var(--space-12)}.entry .q{font-size:var(--text-body-s);color:var(--color-accent);margin:0 0 var(--space-8);font-weight:var(--weight-medium)}.entry .b{font-family:var(--font-serif);font-size:var(--text-body-l);line-height:var(--leading-body);color:var(--color-text);white-space:pre-wrap;margin:0}.entry .foot{justify-content:space-between;align-items:center;gap:var(--space-8);margin-top:var(--space-12);display:flex}.teachers{gap:var(--space-24);display:grid}@media (width>=1024px){.teachers{grid-template-columns:repeat(2,minmax(0,1fr))}}.tcard{gap:var(--space-16);align-items:flex-start;display:flex}.tcard .pic{border-radius:var(--radius-pill);object-fit:cover;border:var(--border-2) solid var(--color-surface);width:88px;height:88px;box-shadow:var(--shadow-2);flex:none}.tcard h2{font-size:var(--text-h4);margin:0 0 var(--space-8);letter-spacing:0}.tcard p{color:var(--color-text-2);line-height:var(--leading-body);margin:0}.dots{align-items:center;gap:6px;display:flex}.dots i{border-radius:var(--radius-pill);background:var(--color-border-strong);width:8px;height:4px;transition:width var(--dur-base) var(--ease-standard),background-color var(--dur-base) var(--ease-standard);display:block}.dots i.on{background:var(--color-accent-fill);width:20px}.site-footer{width:min(100% - 2 * var(--gutter), var(--content-max));padding:var(--space-24) 0 var(--space-32);border-top:var(--border-1) solid var(--color-border);justify-content:space-between;align-items:center;gap:var(--space-4) var(--space-24);font-size:var(--text-caption);color:var(--color-text-muted);line-height:var(--leading-snug);flex-wrap:wrap;margin:0 auto;display:flex}.site-footer nav{gap:var(--space-4);margin-inline:calc(var(--space-8) * -1);display:flex}.site-footer nav a{min-height:var(--touch-min);padding:0 var(--space-8);border-radius:var(--radius-sm);color:var(--color-text-muted);align-items:center;display:inline-flex}.site-footer nav a:hover{color:var(--color-link);text-underline-offset:3px;text-decoration:underline}.site-footer .credit a{color:inherit;text-underline-offset:3px;text-decoration:underline}.credit-line{font-size:var(--text-caption);color:var(--color-text-muted);text-align:center;line-height:var(--leading-snug)}@media (width<=767px){.credit .credit-sep{display:none}.credit .credit-by{margin-top:var(--space-4);display:block}}.car{--gap:var(--space-12);--bleed:var(--gutter);--fade:var(--space-24);--fl:var(--fade);--fr:var(--fade);--lift-room:var(--space-8);position:relative}.car.at-start{--fl:0px}.car.at-end{--fr:0px}.car-view{margin:calc(var(--lift-room) * -1) calc(var(--bleed) * -1) calc(var(--lift-room) * -1 - var(--space-4));-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 var(--fl),#000 calc(100% - var(--fr)),transparent 100%);-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 var(--fl),#000 calc(100% - var(--fr)),transparent 100%);mask-image:linear-gradient(90deg,transparent 0,#000 var(--fl),#000 calc(100% - var(--fr)),transparent 100%)}.car-track{grid-auto-flow:column;grid-auto-columns:var(--col);gap:var(--gap);overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory;scroll-padding-inline:var(--bleed);padding:var(--lift-room) var(--bleed) calc(var(--lift-room) + var(--space-4));scrollbar-width:none;align-items:start;display:grid;position:relative;overflow:auto hidden}.car-track::-webkit-scrollbar{display:none}.car-track>*{scroll-snap-align:start;min-width:0}.car-track.dragging{scroll-snap-type:none;cursor:grabbing;-webkit-user-select:none;user-select:none}.car-track.dragging>*{pointer-events:none}.car-short{--col:40%}.car-wide{--col:78%}.car-track>.ccard{width:auto}.car-track>.ccard:focus-visible{outline:var(--border-2) solid var(--color-focus);outline-offset:3px}.car-btn{top:var(--btn-top,40%);z-index:var(--z-media-ui);width:var(--touch-min);height:var(--touch-min);margin-top:calc(var(--touch-min) / -2);border-radius:var(--radius-pill);cursor:pointer;background:var(--color-surface);color:var(--color-text);border:var(--border-1) solid var(--color-border-strong);box-shadow:var(--shadow-2);transition:opacity var(--dur-base) var(--ease-standard),border-color var(--dur-fast) var(--ease-standard),color var(--dur-fast) var(--ease-standard);justify-content:center;align-items:center;display:flex;position:absolute}.car-btn.prev{left:calc(var(--touch-min) / -2)}.car-btn.next{right:calc(var(--touch-min) / -2)}.car-btn:hover{border-color:var(--color-primary);color:var(--color-link)}.car-btn:disabled{opacity:0;pointer-events:none}.car-short{--btn-top:40%}.car-wide{--btn-top:34%}@media (hover:none),(width<=699px){.car-btn{display:none}}@media (width>=768px){.car{--gap:var(--space-16);--bleed:var(--space-8);--fade:var(--space-40)}.car-short{--col:calc((100% - 3.35 * var(--gap)) / 4.35)}.car-wide{--col:calc((100% - 1.6 * var(--gap)) / 2.6)}.car-btn.prev{left:calc(var(--space-16) * -1)}.car-btn.next{right:calc(var(--space-16) * -1)}}@media (width>=1024px){.car{--gap:var(--space-24)}.car-short{--col:calc((100% - 5.35 * var(--gap)) / 6.35)}.car-wide{--col:calc((100% - 2.6 * var(--gap)) / 3.6)}}.quote.art.photo.retreat{--photo:url(/bg/ph-retreat.webp)}.thumb-wrap{position:relative}.thumb-wrap>.level{top:var(--space-8);left:var(--space-8);z-index:var(--z-raised);position:absolute}.ccard .thumb-wrap{margin-bottom:var(--space-12)}.ccard .thumb-wrap .thumb{margin-bottom:0}.cols.watch{--side:380px}.sidelist{padding:0 var(--space-16)}@media (width>=1024px){.sidelist{max-height:calc(100vh - var(--header-h) - var(--space-80));overflow-y:auto}}.cols.wide-side{--side:400px}.hcard.top{align-items:flex-start}.panel.danger{border-color:var(--color-error);background:var(--color-error-subtle);margin-top:var(--space-12)}.checkout{max-width:520px;margin-inline:auto}.success-ic{background:var(--color-success-subtle);color:var(--color-success)}.page.welcome{min-height:100dvh;padding:calc(var(--safe-t) + var(--space-16)) 0 calc(var(--safe-b) + var(--space-16));justify-content:center;align-items:center;display:flex}.page.welcome>.panel-hero{width:min(100% - 2 * var(--gutter), 560px)}.welcome-splash{align-items:center;gap:var(--space-16);text-align:center;flex-direction:column;max-width:440px;display:flex}.welcome-splash .btn.primary{max-width:280px;margin-top:var(--space-24)}.welcome-splash .tagline{font-size:var(--text-overline);letter-spacing:.24em;color:var(--color-text-muted);font-weight:var(--weight-semibold)}.welcome-slide{min-height:min(640px, 100vh - 2 * var(--space-32));min-height:min(640px, 100dvh - 2 * var(--space-32));flex-direction:column;display:flex}.welcome-ic{color:var(--color-accent);margin:auto 0 var(--space-32);padding-top:var(--space-32);justify-content:center;display:flex}.welcome-actions{padding-top:var(--space-32);gap:var(--space-8);flex-direction:column;margin-top:auto;display:flex}.page.signin>.panel-hero{margin-top:var(--space-8)}@media (width>=768px){.page.signin{padding-top:calc(var(--page-top) + var(--space-32))}}.on-band .btn.primary,.chero .btn.primary{background:var(--color-media-button);border-color:var(--color-media-button);color:var(--color-on-media-button)}.on-band .btn.primary:hover,.chero .btn.primary:hover{background:var(--color-media-button-hover);border-color:var(--color-media-button-hover)}.on-band .btn:not(.primary),.chero .btn:not(.primary){background:var(--color-hero-chip);border-color:var(--color-hero-line);color:var(--color-on-hero)}.on-band .btn:not(.primary):hover,.chero .btn:not(.primary):hover{background:var(--color-hero-chip-hover)}.chero :focus-visible{outline-color:var(--color-on-hero)}.chero{isolation:isolate;color:var(--color-on-hero);margin:calc(var(--page-top) * -1) 0 var(--space-32);padding:calc(var(--page-safe) + var(--space-8)) 0 var(--space-32);background:var(--color-hero) url(/bg/home.webp) right 35% / cover no-repeat;position:relative;overflow:hidden}.chero:before{content:"";z-index:-1;background:linear-gradient(90deg,var(--color-hero) 0%,var(--color-hero-scrim) 70%,var(--color-hero-fade) 100%);position:absolute;inset:0}:root[data-theme=dark] .chero:after{content:"";z-index:-2;background:var(--color-hero-scrim);position:absolute;inset:0}.chero .in{width:min(100% - 2 * var(--gutter), var(--page-max));margin-inline:auto}.chero .top{min-height:var(--touch-min);margin-bottom:var(--space-12);align-items:center;display:flex}.chero .iconbtn{background:var(--color-hero-chip);color:var(--color-on-hero);border:var(--border-1) solid var(--color-hero-line)}.chero .iconbtn:hover{background:var(--color-hero-chip-hover)}.chero-grid{gap:var(--space-24);align-items:center;display:grid}.chero-art .thumb{border-radius:var(--radius-lg);width:100%;box-shadow:var(--shadow-3);border:var(--border-1) solid var(--color-hero-line)}.chero-txt{min-width:0}.chero .eyebrow{color:var(--color-hero-eyebrow)}.chero h1{margin:var(--space-8) 0 0;font-size:var(--text-h1);line-height:var(--leading-tight);letter-spacing:var(--tracking-tight);color:var(--color-on-hero);overflow-wrap:anywhere}.chero .value{margin:var(--space-12) 0 0;font-size:var(--text-body-l);line-height:var(--leading-body);color:var(--color-on-hero-2);max-width:56ch}.chero-teacher{align-items:center;gap:var(--space-8);margin-top:var(--space-16);font-size:var(--text-body-s);font-weight:var(--weight-semibold);display:flex}.chero-teacher .faces{display:flex}.chero-teacher .faces img{border-radius:var(--radius-pill);object-fit:cover;border:var(--border-2) solid var(--color-hero-line);background:var(--color-hero-2);width:32px;height:32px}.chero-teacher .faces img+img{margin-left:calc(var(--space-8) * -1)}.facts{gap:var(--space-8) var(--space-16);margin:var(--space-16) 0 0;font-size:var(--text-body-s);color:var(--color-on-hero-2);font-variant-numeric:tabular-nums;flex-wrap:wrap;padding:0;list-style:none;display:flex}.facts li{align-items:center;gap:6px;display:inline-flex}.facts .acc{color:var(--color-on-hero);font-weight:var(--weight-semibold)}.chero-prog{gap:var(--space-8);margin-top:var(--space-24);max-width:420px;font-size:var(--text-caption);color:var(--color-on-hero-2);font-variant-numeric:tabular-nums;flex-direction:column;display:flex}.chero-actions{margin-top:var(--space-24)}.course-next{gap:var(--space-4) var(--space-8);margin:var(--space-12) 0 0;font-size:var(--text-body-s);color:var(--color-on-hero-2);line-height:var(--leading-snug);flex-wrap:wrap;display:flex}.course-next .k{font-weight:var(--weight-semibold);color:var(--color-hero-eyebrow)}.course-note{align-items:center;gap:var(--space-8);font-size:var(--text-body-s);font-weight:var(--weight-semibold);margin:0;display:inline-flex}@media (width>=768px){.chero{padding-bottom:var(--space-48);margin-bottom:var(--space-40)}.chero-grid{gap:var(--space-40);grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.chero-art{order:2}}@media (width>=1024px){.chero{padding-top:var(--space-24);padding-bottom:var(--space-64)}.chero-grid{gap:var(--space-64);grid-template-columns:minmax(0,6fr) minmax(0,5fr)}}.course-body{gap:var(--space-32);display:grid}.course-body>.side{gap:var(--space-24);flex-direction:column;display:flex}@media (width>=1024px){.course-body{gap:var(--space-48);grid-template-columns:minmax(0,1fr) 340px;align-items:start}.course-body>.side{top:calc(var(--header-h) + var(--space-24));position:sticky}}.course-body .reflect{margin-bottom:0}.slist{border-top:var(--border-1) solid var(--color-border);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.srow{align-items:center;gap:var(--space-12);min-height:var(--touch-min);padding:var(--space-12) var(--space-8);margin-inline:calc(var(--space-8) * -1);border-bottom:var(--border-1) solid var(--color-border);color:inherit;transition:background-color var(--dur-fast) var(--ease-standard);border-radius:0;display:flex}.srow .n{border-radius:var(--radius-pill);border:var(--border-1) solid var(--color-border-strong);width:32px;height:32px;color:var(--color-text-muted);font-size:var(--text-caption);font-weight:var(--weight-semibold);font-variant-numeric:tabular-nums;flex:none;justify-content:center;align-items:center;display:flex}.srow .thumb{border-radius:var(--radius-sm);width:96px}.srow .thumb .dur{display:none}.srow .thumb .lk{top:var(--space-4);right:var(--space-4);width:24px;height:24px}.srow .thumb-label{font-size:var(--text-overline);left:var(--space-8);right:var(--space-8);bottom:var(--space-8);-webkit-line-clamp:2}.srow .bd{gap:var(--space-4);flex-direction:column;flex:1;min-width:0;display:flex}.srow .title{font-size:var(--text-body-s);font-weight:var(--weight-semibold);line-height:var(--leading-snug);-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.srow .meta{align-items:center;gap:var(--space-4) var(--space-8);font-size:var(--text-caption);color:var(--color-text-muted);line-height:var(--leading-snug);flex-wrap:wrap;display:flex}.srow .hint{font-size:var(--text-caption);color:var(--color-accent);line-height:var(--leading-snug)}.srow>.ic:last-child{color:var(--color-text-muted);flex:none}.srow.done .n{background:var(--color-success-subtle);color:var(--color-success);border-color:#0000}.srow.next{background:var(--color-primary-subtle);border-radius:var(--radius-md);border-bottom-color:#0000}.srow.next .n{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-on-primary)}.srow.next>.ic:last-child{color:var(--color-on-primary-subtle)}@media (hover:hover){.srow:hover{background:var(--color-surface-2)}.srow.next:hover{background:var(--color-primary-subtle)}.srow:hover .title{color:var(--color-link)}}@media (width>=768px){.srow{gap:var(--space-16);padding:var(--space-12)}.srow .thumb{width:144px}.srow .thumb .dur{display:block}.srow .title{font-size:var(--text-body)}}.tcard-mini .face{border-radius:var(--radius-pill);object-fit:cover;width:56px;height:56px;box-shadow:var(--shadow-1);flex:none}.clamp-4{-webkit-line-clamp:4;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.tcard-mini .see-all{margin-left:calc(var(--space-8) * -1)}.side-paths{gap:var(--space-12);flex-direction:column;display:flex}.side-paths .jcard{flex-direction:row;align-items:stretch}.side-paths .jcard .thumb-wrap{flex:none;width:120px}.side-paths .jcard .thumb-wrap .thumb{aspect-ratio:auto;height:100%;min-height:100%}.side-paths .jcard .level{display:none}.side-paths .jcard .bd{padding:var(--space-12) var(--space-16);gap:var(--space-4)}.side-paths .jcard h3{font-size:var(--text-body)}@media (width>=768px) and (width<=1023px){.course-body>.side{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;display:grid}}.xcard .thumb-wrap .thumb{border-radius:0}.xcard h3{font-size:var(--text-h4);font-weight:var(--weight-semibold);line-height:var(--leading-heading);letter-spacing:0;transition:color var(--dur-fast) var(--ease-standard);margin:0}.xcard .meta{align-items:flex-start;gap:var(--space-8);flex-direction:column}.xcard .meta>.acc{color:var(--color-text-2);font-weight:var(--weight-semibold)}.jcard .meta{flex-flow:wrap}.jcard .jprog{gap:var(--space-4);margin-top:var(--space-4);flex-direction:column;display:flex}@media (hover:hover){a.xcard:hover h3{color:var(--color-link)}}.rail>.jcard{width:272px}@media (width>=768px){.rail>.jcard{width:auto}}.xgrid{gap:var(--space-24) var(--space-16);grid-template-columns:minmax(0,1fr);display:grid}@media (width>=600px){.xgrid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=1024px){.xgrid.c3{grid-template-columns:repeat(3,minmax(0,1fr))}.xgrid.c4{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (width>=768px) and (width<=1023px){.xgrid.c4{grid-template-columns:repeat(3,minmax(0,1fr))}}.xgrid>.ccard{width:auto}@media (width<=599px){.xgrid.jgrid .jcard{flex-direction:row;align-items:stretch}.xgrid.jgrid .jcard .thumb-wrap{flex:none;width:136px}.xgrid.jgrid .jcard .thumb-wrap .thumb{aspect-ratio:auto;height:100%;min-height:100%}.xgrid.jgrid .jcard .thumb-wrap .level{display:none}.xgrid.jgrid .jcard .bd{padding:var(--space-12) var(--space-16)}.xgrid.jgrid .jcard p{-webkit-line-clamp:2}}.resume{background:var(--color-surface);border:var(--border-1) solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-2);gap:0;display:grid;overflow:hidden}.resume-art{background:var(--color-hero);align-items:center;display:flex;position:relative}.resume-art .thumb{border-radius:0;width:100%}.resume-art .play{border-radius:var(--radius-pill);background:var(--color-media-button);width:56px;height:56px;color:var(--color-on-media-button);box-shadow:var(--shadow-3);transition:transform var(--dur-base) var(--ease-standard);justify-content:center;align-items:center;margin:-28px 0 0 -28px;display:flex;position:absolute;top:50%;left:50%}.resume-bd{gap:var(--space-12);padding:var(--space-24) var(--space-16);flex-direction:column;min-width:0;display:flex}.resume-bd .h2{font-size:var(--text-h3);margin:0}.resume-title{color:inherit}.resume-title:hover{color:var(--color-link)}.resume-prog{gap:var(--space-8);flex-direction:column;max-width:440px;display:flex}.resume-next{padding:var(--space-12) var(--space-16);border-radius:var(--radius-md);background:var(--color-surface-2);flex-direction:column;gap:2px;display:flex}.resume .btn-row{margin-top:var(--space-4)}@media (hover:hover){.resume-art:hover .play{transform:scale(1.06)}}@media (width>=768px){.resume{grid-template-columns:minmax(0,11fr) minmax(0,10fr);align-items:stretch}.resume-bd{padding:var(--space-32);justify-content:center}}@media (width>=1024px){.resume-bd{padding:var(--space-40)}.resume-bd .h2{font-size:var(--text-h2)}}.home-duo{gap:var(--space-16);display:grid}@media (width>=768px){.home-duo{gap:var(--space-24);grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:stretch}.home-duo>*{margin-bottom:0}}.home-duo .sec{flex-direction:column;margin-bottom:0;display:flex}.home-duo .quote{flex:1}.livebox{padding:var(--space-8) var(--space-16);flex:1}@media (width>=768px){.livebox{padding:var(--space-8) var(--space-24)}}.livebox .upc{min-height:56px}.learning{gap:var(--space-12);display:grid}@media (width>=768px){.learning{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}}.learning .hcard .thumb{width:96px}.home .phero .sub{max-width:44ch}@media (width<=767px){.home .phero.display h1{font-size:var(--text-h1)}}.lib-tools{gap:var(--space-16);margin-bottom:var(--space-32);flex-direction:column;display:flex}.lib-tools .search-field{width:100%;max-width:640px}.lib-tools .search-field .inp{height:var(--control-lg)}@media (width>=768px){.lib-tools .search-field .inp{font-size:var(--text-body-l)}}.lib-tabs.dim{opacity:.45}.filterbar{gap:var(--space-12);margin-bottom:var(--space-24);flex-direction:column;display:flex}.filterbar .row-top{justify-content:space-between;align-items:center;gap:var(--space-12);flex-wrap:wrap;display:flex}.filterbar .count{font-size:var(--text-body-s);color:var(--color-text-muted);font-variant-numeric:tabular-nums;margin:0}.filterbar .count b{color:var(--color-text)}.filterbar .chips{gap:var(--space-8)}.filterbar .active-chips{gap:var(--space-8);flex-wrap:wrap;display:flex}.chip .n{font-variant-numeric:tabular-nums;color:var(--color-text-muted);font-weight:var(--weight-medium)}.chip[aria-pressed=true] .n{color:inherit}.sheet .sheet-sec{margin-bottom:var(--space-24)}.sheet .sheet-sec>h3{margin:0 0 var(--space-12);font-size:var(--text-body-s);font-weight:var(--weight-semibold)}.sheet .sheet-foot{gap:var(--space-8);bottom:calc(var(--space-24) * -1);padding:var(--space-16) 0 var(--space-4);background:var(--color-surface);display:flex;position:sticky}.sheet .sheet-foot .btn.primary{flex:1}.guide{margin-top:var(--space-8)}.suggest{justify-content:center;gap:var(--space-8);flex-wrap:wrap;display:flex}.result-group+.result-group{margin-top:var(--space-40)}.result-group>h3{margin:0 0 var(--space-16);font-size:var(--text-body);font-weight:var(--weight-semibold)}@media (width>=768px){.rail.even-3{grid-template-columns:repeat(3,minmax(0,1fr))}.rail.even-4{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=1024px){.rail.even-4{grid-template-columns:repeat(4,minmax(0,1fr))}}[data-route-focus]:focus{outline:none}.lesson{gap:var(--space-8);display:grid}@media (width>=1024px){.lesson{gap:var(--space-40);grid-template-columns:minmax(0,1fr) 360px;align-items:start}.lesson-side{top:calc(var(--header-h) + var(--space-24));position:sticky}}.lesson-main{min-width:0}.lesson-media.vertical{justify-content:center;display:flex}.lesson-media .player-frame{background:linear-gradient(var(--color-media-scrim),var(--color-media-scrim)),var(--poster,none) center / cover no-repeat var(--color-hero)}.lesson-media .player-frame:before{content:"";width:var(--icon-xl);height:var(--icon-xl);margin:calc(var(--icon-xl) / -2) 0 0 calc(var(--icon-xl) / -2);border-radius:var(--radius-pill);border:var(--border-2) solid var(--color-hero-line);border-top-color:var(--color-media-accent);animation:.8s linear infinite spin;position:absolute;top:50%;left:50%}.lesson-media .player{isolation:isolate;color:var(--color-on-media);background:var(--color-hero) var(--poster,none) center / cover no-repeat;border:0;position:relative;overflow:hidden}.lesson-media .player:before{content:"";z-index:-1;background:var(--color-media-scrim-strong);position:absolute;inset:0}.lesson-media .player .ic{color:var(--color-media-accent)}.lesson-media .player .spinner{border-color:var(--color-hero-line);border-top-color:var(--color-media-accent)}.lesson-media .player p{max-width:44ch;font-size:var(--text-body-s);line-height:var(--leading-body)}.lesson-media .player .btn{background:var(--color-media-button);border-color:var(--color-media-button);color:var(--color-on-media-button)}.lesson-media .player .btn:hover{background:var(--color-media-button-hover)}.lesson-head{margin:var(--space-24) 0 var(--space-16)}.lesson-kicker{margin:0 0 var(--space-8);font-size:var(--text-body-s);font-weight:var(--weight-semibold);color:var(--color-accent);line-height:var(--leading-snug)}.lesson-title{font-size:var(--text-h2);font-weight:var(--weight-semibold);line-height:var(--leading-heading);letter-spacing:var(--tracking-tight);margin:0}.lesson-meta{align-items:center;gap:var(--space-8) var(--space-12);margin-top:var(--space-12);font-size:var(--text-body-s);color:var(--color-text-muted);font-variant-numeric:tabular-nums;flex-wrap:wrap;display:flex}.lesson-actions{gap:var(--space-12);margin-bottom:var(--space-32);flex-wrap:wrap;display:flex}.btn.complete.is-done{background:var(--color-success-subtle);border-color:var(--color-success);color:var(--color-success)}@media (width<=767px){.lesson-actions>.btn{flex:100%}}.lesson-about .lede{max-width:var(--measure)}.lesson-reflect .btn{margin-top:var(--space-4)}.lesson-pager{gap:var(--space-12);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.pager-card{gap:var(--space-12);min-width:0;min-height:var(--touch-min);padding:var(--space-12);color:inherit;background:var(--color-surface);border:var(--border-1) solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-1);transition:transform var(--dur-base) var(--ease-standard),box-shadow var(--dur-base) var(--ease-standard),border-color var(--dur-base) var(--ease-standard);align-items:center;display:flex}.pager-card.next{text-align:right;flex-direction:row-reverse}.pager-card .thumb{border-radius:var(--radius-sm);width:104px}.pager-bd{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.pager-dir{align-items:center;gap:var(--space-4);font-size:var(--text-caption);font-weight:var(--weight-semibold);color:var(--color-link);display:inline-flex}.pager-card.next .pager-dir{justify-content:flex-end}.pager-title{font-size:var(--text-body-s);font-weight:var(--weight-semibold);line-height:var(--leading-snug);-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}@media (hover:hover){.pager-card:hover{transform:translateY(var(--lift));box-shadow:var(--shadow-2);border-color:var(--color-border-strong)}}@media (width<=599px){.pager-card .thumb{display:none}}.lesson-panel{background:var(--color-surface);border:var(--border-1) solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-1);overflow:hidden}.lesson-panel-head{gap:var(--space-8);padding:var(--space-16) var(--space-16) var(--space-12);border-bottom:var(--border-1) solid var(--color-border);flex-direction:column;display:flex}.lesson-panel-title{font-size:var(--text-body-l);font-weight:var(--weight-semibold);line-height:var(--leading-snug);letter-spacing:0;margin:0}.lesson-panel-link{align-items:center;gap:var(--space-4);min-height:var(--touch-min);color:inherit;border-radius:var(--radius-sm);display:inline-flex}.lesson-panel-link .ic{color:var(--color-text-muted)}@media (hover:hover){.lesson-panel-link:hover{color:var(--color-link)}}.lesson-progress{flex-direction:column;gap:6px;display:flex}.lesson-list{padding:var(--space-4) 0;margin:0;list-style:none}.lesson-item{gap:var(--space-12);min-height:var(--touch-min);padding:var(--space-12) var(--space-16) var(--space-12) calc(var(--space-16) - 3px);color:inherit;transition:background-color var(--dur-fast) var(--ease-standard);border-left:3px solid #0000;align-items:flex-start;display:flex}.lesson-item:hover{background:var(--color-surface-2)}.lesson-item:focus-visible{outline-offset:-2px}.lesson-item.current{background:var(--color-primary-subtle);border-left-color:var(--color-accent-fill)}.li-mark{border-radius:var(--radius-pill);border:var(--border-1) solid var(--color-border-strong);width:28px;height:28px;font-size:var(--text-caption);font-weight:var(--weight-semibold);color:var(--color-text-muted);font-variant-numeric:tabular-nums;flex:none;justify-content:center;align-items:center;display:flex}.lesson-item.done .li-mark{background:var(--color-success-subtle);color:var(--color-success);border-color:#0000}.lesson-item.locked .li-mark{background:var(--color-surface-2);border-color:#0000}.lesson-item.current .li-mark{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-on-primary)}.li-body{flex-direction:column;gap:2px;min-width:0;padding-top:3px;display:flex}.li-title{font-size:var(--text-body-s);font-weight:var(--weight-semibold);line-height:var(--leading-snug)}.lesson-item.current .li-title{color:var(--color-on-primary-subtle)}.li-meta{font-size:var(--text-caption);color:var(--color-text-muted);line-height:var(--leading-snug);font-variant-numeric:tabular-nums}.li-state{color:var(--color-success);font-weight:var(--weight-medium)}@media (width>=1024px){.lesson-list{max-height:calc(100vh - var(--header-h) - 240px);overscroll-behavior:contain;scrollbar-width:thin;overflow-y:auto}}.paywall{isolation:isolate;border-radius:var(--radius-md);color:var(--color-on-hero);background:var(--color-hero) url(/bg/home.webp) right 35% / cover no-repeat;display:grid;position:relative;overflow:hidden}.paywall:before{content:"";z-index:-1;background:linear-gradient(90deg,var(--color-hero) 0%,var(--color-hero) 40%,var(--color-hero-scrim) 100%);position:absolute;inset:0}.paywall-art{display:none}.paywall .lockover{justify-content:flex-start;align-items:flex-start;gap:var(--space-12);padding:var(--space-24) var(--space-16);text-align:left;color:var(--color-on-hero);background:0 0;flex-direction:column;display:flex;position:static;inset:auto}.paywall-title{font-size:var(--text-h3);font-weight:var(--weight-semibold);line-height:var(--leading-heading);letter-spacing:0;color:var(--color-on-hero);margin:0}.paywall-what{font-size:var(--text-body-s);color:var(--color-on-hero-2);font-variant-numeric:tabular-nums;margin:0}.paywall-text{font-size:var(--text-body);line-height:var(--leading-body);color:var(--color-on-hero-2);margin:0}.paywall-list{gap:var(--space-8);margin:var(--space-4) 0;font-size:var(--text-body-s);line-height:var(--leading-snug);color:var(--color-on-hero-2);flex-direction:column;display:flex}.paywall-list li{gap:var(--space-8);align-items:flex-start;display:flex}.paywall-list .ic{color:var(--color-hero-eyebrow);margin-top:1px}.paywall .btn-row{margin-top:var(--space-4)}.paywall-note{font-size:var(--text-caption);line-height:var(--leading-snug);color:var(--color-on-hero-2);margin:0}@media (width>=768px){.paywall{align-items:center;gap:var(--space-32);padding:var(--space-32);grid-template-columns:minmax(0,1.25fr) minmax(0,1fr)}.paywall .lockover{padding:0}.paywall-art{order:2;display:block;position:relative}.paywall-art .thumb{border-radius:var(--radius-md);border:var(--border-2) solid var(--color-hero-line);box-shadow:var(--shadow-3)}.paywall-art .thumb:before{content:"";background:var(--color-media-scrim);position:absolute;inset:0}.paywall-art .lockico{border-radius:var(--radius-pill);background:var(--color-media-scrim-strong);width:56px;height:56px;color:var(--color-media-accent);justify-content:center;align-items:center;margin:-28px 0 0 -28px;display:flex;position:absolute;top:50%;left:50%}}@media (width>=1024px){.paywall{border-radius:var(--radius-lg)}}.checkout-layout{gap:var(--space-32);margin-bottom:var(--space-40);display:grid}@media (width>=1024px){.checkout-layout{gap:var(--space-32);grid-template-columns:minmax(0,1fr) 320px;align-items:start}.checkout-summary{top:calc(var(--header-h) + var(--space-24));position:sticky}}.plans-bar{justify-content:space-between;align-items:center;gap:var(--space-12) var(--space-16);margin-bottom:var(--space-16);flex-wrap:wrap;display:flex}.plans-bar h2{margin:0}.plan-grid{gap:var(--space-16);display:grid}@media (width>=600px){.plan-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.plan-grid .plan{align-items:stretch;gap:var(--space-8);padding:var(--space-24) var(--space-16) var(--space-16);text-align:left;border:var(--border-1) solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-1);cursor:pointer;transition:border-color var(--dur-fast) var(--ease-standard),box-shadow var(--dur-fast) var(--ease-standard);flex-direction:column;display:flex}@media (width>=768px){.plan-grid .plan{padding:var(--space-24)}}.plan-grid .plan:hover{border-color:var(--color-border-strong)}.plan-grid .plan.on{border-color:var(--color-primary);box-shadow:0 0 0 var(--border-1) var(--color-primary),var(--shadow-2)}.plan-top{justify-content:space-between;align-items:center;gap:var(--space-12);display:flex}.plan-name{font-size:var(--text-h4);font-weight:var(--weight-semibold);line-height:var(--leading-heading)}.plan-radio{border-radius:var(--radius-pill);border:var(--border-2) solid var(--color-border-strong);flex:none;justify-content:center;align-items:center;width:22px;height:22px;display:flex}.plan.on .plan-radio{border-color:var(--color-primary)}.plan.on .plan-radio:after{content:"";border-radius:var(--radius-pill);background:var(--color-primary);width:10px;height:10px}.plan-tags{gap:var(--space-4);flex-wrap:wrap;display:flex}.plan-tags:empty{display:none}.plan-tagline{font-size:var(--text-body-s);color:var(--color-text-muted)}.plan-price{margin-top:var(--space-8);font-size:var(--text-h2);font-weight:var(--weight-bold);letter-spacing:var(--tracking-tight);font-variant-numeric:tabular-nums;line-height:1.1}.plan-price small{font-size:var(--text-body-s);font-weight:var(--weight-medium);color:var(--color-text-muted);letter-spacing:0}.plan-per{font-size:var(--text-caption);color:var(--color-text-muted);font-variant-numeric:tabular-nums}.plan-list{gap:var(--space-8);margin-top:var(--space-8);padding-top:var(--space-16);border-top:var(--border-1) solid var(--color-border);font-size:var(--text-body-s);line-height:var(--leading-snug);color:var(--color-text-2);flex-direction:column;display:flex}.plan-li{gap:var(--space-8);align-items:flex-start;display:flex}.plan-li .ic{color:var(--color-success);margin-top:1px}.plan-state{min-height:var(--control-sm);border-radius:var(--radius-sm);background:var(--color-surface-2);color:var(--color-text-2);font-size:var(--text-body-s);font-weight:var(--weight-semibold);justify-content:center;align-items:center;margin-top:auto;display:flex}.plan-list+.plan-state{margin-top:var(--space-16)}.plan.on .plan-state{background:var(--color-primary);color:var(--color-on-primary)}.plan-free{gap:var(--space-12);margin-top:var(--space-16);padding:var(--space-16);border:var(--border-1) dashed var(--color-border-strong);border-radius:var(--radius-md);align-items:flex-start;display:flex}.plan-free-ic{color:var(--color-success);flex:none;margin-top:2px}.plan-free .small{margin-top:var(--space-4)}.checkout-summary{padding:var(--space-24);background:var(--color-surface);border:var(--border-1) solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-1)}.checkout-summary h2{margin:0 0 var(--space-16)}.summary{margin:0 0 var(--space-24)}.summary>div{justify-content:space-between;align-items:baseline;gap:var(--space-16);padding:var(--space-8) 0;border-bottom:var(--border-1) solid var(--color-border);font-size:var(--text-body-s);display:flex}.summary dt{color:var(--color-text-muted)}.summary dd{text-align:right;font-weight:var(--weight-medium);margin:0}.summary>.total{padding-top:var(--space-12);font-size:var(--text-body);font-weight:var(--weight-semibold);border-bottom:0}.summary>.total dt{color:var(--color-text)}.summary>.total dd{font-size:var(--text-h4);font-weight:var(--weight-bold);font-variant-numeric:tabular-nums}.checkout-summary .notice{margin-bottom:var(--space-16)}.reassure{gap:var(--space-8);margin:var(--space-16) 0 0;font-size:var(--text-caption);line-height:var(--leading-snug);color:var(--color-text-muted);align-items:flex-start;display:flex}.reassure .ic{color:var(--color-success);margin-top:1px}.plans-more .list-item{padding-inline:var(--space-4)}.status-page{padding-top:calc(var(--page-top) + var(--space-24))}.status-card{text-align:center;align-items:center;gap:var(--space-16);max-width:560px;padding:var(--space-40) var(--space-24);background:var(--color-surface);border:var(--border-1) solid var(--color-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-2);flex-direction:column;margin:0 auto;display:flex}.status-card h1{margin:0}.status-card p{max-width:46ch}.status-ic{border-radius:var(--radius-pill);background:var(--color-primary-subtle);width:64px;height:64px;color:var(--color-on-primary-subtle);justify-content:center;align-items:center;display:flex}.status-ic.success{background:var(--color-success-subtle);color:var(--color-success)}.status-ic.warning{background:var(--color-warning-subtle);color:var(--color-warning)}.status-ic .spinner{width:var(--icon-xl);height:var(--icon-xl)}.status-actions{gap:var(--space-8);width:100%;max-width:360px;margin-top:var(--space-8);flex-direction:column;display:flex}.ref-box{gap:var(--space-4);width:100%;padding:var(--space-12) var(--space-16);background:var(--color-surface-2);border-radius:var(--radius-md);flex-direction:column;margin:0;display:flex}.ref-box code{font-size:var(--text-body-s);word-break:break-all;color:var(--color-text)}@media (width>=768px){.status-card{padding:var(--space-48) var(--space-40)}}.profile-card{align-items:center;gap:var(--space-16);padding:var(--space-16);background:var(--color-surface);border:var(--border-1) solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-1);display:flex}@media (width<=479px){.profile-card{flex-wrap:wrap}.profile-card>.btn{flex:100%}}.signed-out{align-items:center;gap:var(--space-16);padding:var(--space-24);background:var(--color-primary-subtle);border:var(--border-1) solid var(--color-border);border-radius:var(--radius-lg);flex-wrap:wrap;display:flex}.signed-out h2{margin:0 0 var(--space-4)}.signed-out .grow{flex:240px}.signed-out-ic{border-radius:var(--radius-pill);background:var(--color-surface);width:48px;height:48px;color:var(--color-on-primary-subtle);flex:none;justify-content:center;align-items:center;display:flex}@media (width<=599px){.signed-out>.btn{flex:100%}}.member-card{align-items:center;gap:var(--space-16);padding:var(--space-16) var(--space-24) var(--space-16) var(--space-16);background:var(--color-surface);border:var(--border-1) solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-1);flex-wrap:wrap;display:flex}.member-card .grow{flex:200px}.member-card .lead-ic{width:var(--touch-min);height:var(--touch-min);border-radius:var(--radius-pill);background:var(--color-primary-subtle);color:var(--color-on-primary-subtle);flex:none;justify-content:center;align-items:center;display:flex}.member-card.active .lead-ic{background:var(--color-accent-subtle);color:var(--color-on-accent-subtle)}.member-plan{font-size:var(--text-h4);font-weight:var(--weight-semibold);line-height:var(--leading-heading);margin:2px 0}@media (width<=599px){.member-card>.btn{flex:100%}}.settings-h{margin:0 0 var(--space-8);padding-inline:var(--space-4);font-size:var(--text-caption);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-overline);text-transform:uppercase;color:var(--color-text-muted);line-height:var(--leading-snug)}.settings-sub{margin:0 0 var(--space-12);padding-inline:var(--space-4);font-size:var(--text-body-s);color:var(--color-text-muted);line-height:var(--leading-snug)}.settings-card{background:var(--color-surface);border:var(--border-1) solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-1);overflow:hidden}.settings-card>.list{padding:0 var(--space-16)}.settings-card>.list>li{list-style:none}.settings-pad{padding:var(--space-16)}.settings-pad .notice{margin:0}.settings-foot{padding:var(--space-12) var(--space-16);border-top:var(--border-1) solid var(--color-border)}.settings-msg{padding:0 0 var(--space-12);margin:0}.settings-card .panel.danger{margin:0 0 var(--space-16)}.settings-card .panel.danger .btn-row{margin-top:var(--space-4)}.list-item.device .title{font-size:var(--text-body-s);flex-wrap:wrap}.you-side>.caption{margin-top:var(--space-8)}.you-side .credit-line,.signin-panel .signin-mark{margin-bottom:var(--space-16)}.signin-step{margin:0 0 var(--space-4);font-size:var(--text-overline);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-overline);text-transform:uppercase;color:var(--color-accent)}.signin-alt{margin-top:var(--space-8)}.device-limit{margin:0 0 var(--space-8);padding:var(--space-16);border:var(--border-1) solid var(--color-warning);border-radius:var(--radius-md);background:var(--color-warning-subtle);color:var(--color-text)}.device-limit-head{gap:var(--space-12);align-items:flex-start;display:flex}.device-limit-head>.ic{color:var(--color-warning);margin-top:2px}.device-limit-head .small{margin-top:var(--space-4);color:var(--color-text-2)}.device-limit .list{margin:var(--space-12) 0;padding:0 var(--space-12);background:var(--color-surface);border:var(--border-1) solid var(--color-border);border-radius:var(--radius-sm)}.device-limit .list-item{gap:var(--space-12);min-height:60px}.device-limit .list-item .title{font-size:var(--text-body-s);font-weight:var(--weight-semibold)}.device-limit .caption{color:var(--color-text-2)}.today-card{padding:var(--space-24);background:var(--color-surface);border:var(--border-1) solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-1)}@media (width>=768px){.today-card{padding:var(--space-40)}}.today-date{gap:var(--space-12);margin:0 0 var(--space-16);font-size:inherit;letter-spacing:0;align-items:baseline;display:flex}.more-wisdom .list-item{align-items:flex-start}.carry .btn.primary{margin-top:var(--space-4)}.article-head .h1{max-width:24ch}.article-lock{text-align:center;align-items:center;gap:var(--space-12);margin-top:var(--space-8);padding:var(--space-32) var(--space-24);background:var(--color-surface);border:var(--border-1) solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-1);flex-direction:column;display:flex}.article-lock .title{font-family:var(--font-sans);font-size:var(--text-h4);font-weight:var(--weight-semibold);line-height:var(--leading-heading);letter-spacing:0;margin:0}.article-lock p{max-width:46ch;font-family:var(--font-sans);font-size:var(--text-body-s);line-height:var(--leading-body);color:var(--color-text-2);margin:0}.article-lock .btn-row{margin-top:var(--space-4);justify-content:center}.article-next,.teachers-next{gap:var(--space-12);display:grid}@media (width>=768px){.article-next,.teachers-next{grid-template-columns:repeat(2,minmax(0,1fr))}}.article-next .hcard .title,.article-next .hcard .meta,.teachers-next .hcard .title,.teachers-next .hcard .meta{display:block}.teachers-next{margin-top:var(--space-32)}.live-page .live{align-items:flex-start}.live-page .live.featured{padding:var(--space-24);border-color:var(--color-primary);box-shadow:inset 4px 0 0 var(--color-accent-fill),var(--shadow-2)}.live-page .live.featured .title{font-size:var(--text-h4);line-height:var(--leading-heading)}.live-page .date-badge{min-width:64px;padding:var(--space-12) var(--space-8);text-transform:uppercase}.live-page .live .when{color:var(--color-text);font-weight:var(--weight-semibold)}.live-page .live .btn-row{margin-top:var(--space-4)}.live-page .livelist{margin-top:0}.live-community{align-items:center;gap:var(--space-12);padding:var(--space-16);border:var(--border-1) dashed var(--color-border-strong);border-radius:var(--radius-lg);flex-wrap:wrap;display:flex}.live-community>.ic{color:var(--color-accent)}.live-community .grow{flex:220px}.enquiry .optional{font-weight:var(--weight-regular);color:var(--color-text-muted)}.enquiry .notice{margin-bottom:var(--space-16)}.contact-row>.btn{flex:auto}.journal-intro{align-items:flex-start;gap:var(--space-12);padding:var(--space-24);background:var(--color-surface);border:var(--border-1) solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-1);flex-direction:column;display:flex}@media (width>=768px){.journal-intro{padding:var(--space-40)}}.journal-intro h2,.journal-intro p{margin:0}.journal-intro p{max-width:56ch}.journal-points{gap:var(--space-12);margin:var(--space-4) 0 var(--space-12);flex-direction:column;display:flex}.journal-points li{gap:var(--space-12);font-size:var(--text-body-s);line-height:var(--leading-body);color:var(--color-text-2);align-items:flex-start;display:flex}.journal-points .ic{color:var(--color-accent);margin-top:3px}.journal-points b{color:var(--color-text)}.keygate .btn.primary{margin-top:var(--space-8)}.notfound-page{padding-top:calc(var(--page-top) + var(--space-32))}.notfound-page .empty{padding:var(--space-48) var(--space-24)}.notfound-title{font-size:var(--text-h3)}.notfound-path code{word-break:break-all}.static-layout{grid-template-columns:minmax(0,var(--measure-legal));grid-template-areas:"head""body";justify-content:center;display:grid}.static-head{margin-bottom:var(--space-32);grid-area:head}.static-body{grid-area:body;min-width:0}.static-toc{display:none}.crumbs{margin:calc(var(--space-8) * -1) 0 var(--space-16)}.crumbs ol{font-size:var(--text-body-s);line-height:var(--leading-snug);color:var(--color-text-muted);flex-wrap:wrap;align-items:center;margin:0;padding:0;list-style:none;display:flex}.crumbs li{align-items:center;min-width:0;display:flex}.crumbs li+li:before{content:"/";margin-inline:var(--space-8);color:var(--color-border-strong)}.crumbs a{min-height:var(--touch-min);color:var(--color-link);font-weight:var(--weight-medium);text-underline-offset:3px;text-decoration:underline;text-decoration-thickness:1px;-webkit-text-decoration-color:var(--color-border-strong);text-decoration-color:var(--color-border-strong);border-radius:var(--radius-xs);transition:text-decoration-color var(--dur-fast) var(--ease-standard);align-items:center;display:inline-flex}.crumbs a:hover{text-decoration-color:currentColor}.crumbs [aria-current]{color:var(--color-text-muted)}.static-head .appbar{margin:0 0 var(--space-8) calc(var(--space-8) * -1)}.static-head h1{font-size:var(--text-title-doc);line-height:var(--leading-tight);letter-spacing:var(--tracking-tight);color:var(--color-text);overflow-wrap:break-word}.static-meta{gap:var(--space-4) var(--space-16);margin:var(--space-12) 0 0;font-size:var(--text-body-s);line-height:var(--leading-snug);color:var(--color-text-muted);font-variant-numeric:tabular-nums;flex-wrap:wrap;display:flex}.static-internal{margin-bottom:var(--space-32)}.static-internal .notice{margin-bottom:var(--space-8)}.static-body .static-internal-note{font-size:var(--text-body-s);line-height:var(--leading-snug);color:var(--color-text-muted);margin:0}.static-intro p{font-size:var(--text-body-l);line-height:var(--leading-body);color:var(--color-text)}.static-intro{margin-bottom:var(--space-40)}.static-section+.static-section{margin-top:var(--space-40)}.static-section h2{margin:0 0 var(--space-12);font-size:var(--text-h2-doc);font-weight:var(--weight-semibold);line-height:var(--leading-heading);letter-spacing:-.01em;color:var(--color-text);scroll-margin-top:calc(var(--page-safe) + var(--space-24))}.static-section h2:focus{outline:none}.static-section h2:focus-visible{outline:var(--border-2) solid var(--color-focus);outline-offset:4px;border-radius:var(--radius-xs)}.static-body p,.static-body li{font-size:var(--text-body-doc);line-height:var(--leading-doc);color:var(--color-text-2)}.static-body p{margin:0 0 var(--space-16)}.static-body p:last-child{margin-bottom:0}.static-body :where(ul,ol){margin:0 0 var(--space-16);gap:var(--space-12);flex-direction:column;padding-left:1.25em;display:flex}.static-body ul{list-style:outside}.static-body ol{list-style:decimal}.static-body :where(ul,ol):last-child{margin-bottom:0}.static-body ol>li::marker{font-weight:var(--weight-semibold);font-variant-numeric:tabular-nums}.static-body .static-actions{margin:var(--space-24) 0}.static-body li{padding-left:var(--space-4)}.static-body li::marker{color:var(--color-accent)}.static-body :where(b,strong){color:var(--color-text)}.static-dl{border-top:var(--border-1) solid var(--color-border);margin:0}.static-dl>div{padding:var(--space-16) 0;border-bottom:var(--border-1) solid var(--color-border)}.static-dl dt{font-size:var(--text-body-doc);font-weight:var(--weight-semibold);line-height:var(--leading-snug);color:var(--color-text)}.static-dl dd{margin:var(--space-4) 0 0;font-size:var(--text-body-doc);line-height:var(--leading-doc);color:var(--color-text-2)}@media (width>=768px){.static-dl>div{column-gap:var(--space-24);grid-template-columns:minmax(0,13rem) minmax(0,1fr);display:grid}.static-dl dt{line-height:var(--leading-doc)}.static-dl dd{margin:0}}.static-callout{margin-top:var(--space-16)}.static-callout .notice{padding:var(--space-16) var(--space-16) var(--space-16) var(--space-16);border-color:var(--color-border);margin:0}.static-callout .notice .bd p{font-size:var(--text-body-doc);line-height:var(--leading-doc);color:var(--color-text-2)}.static-body a:not(.btn){color:var(--color-link);font-weight:var(--weight-medium);text-underline-offset:.2em;text-decoration:underline;text-decoration-thickness:1px;-webkit-text-decoration-color:var(--color-accent-fill);text-decoration-color:var(--color-accent-fill);border-radius:var(--radius-xs);overflow-wrap:anywhere;transition:text-decoration-color var(--dur-fast) var(--ease-standard)}.static-body a:not(.btn):visited{color:var(--color-link-visited)}.static-body a:not(.btn):hover{text-decoration-color:currentColor;text-decoration-thickness:2px}.static-body a:not(.btn):focus-visible{outline:var(--border-2) solid var(--color-focus);outline-offset:2px;text-decoration-thickness:2px}.static-body .static-link-row a{min-height:var(--touch-min);align-items:center;display:inline-flex}@media (width>=768px){.static-head{margin-bottom:var(--space-40)}.static-section+.static-section{margin-top:var(--space-48)}}@media (width>=1100px){.static-layout.has-toc{grid-template-columns:var(--toc-w) minmax(0,var(--measure-legal));column-gap:var(--space-64);grid-template-areas:"toc head""toc body"}.has-toc .static-toc{top:calc(var(--page-safe) + var(--space-32));padding-top:var(--space-4);grid-area:toc;align-self:start;display:block;position:sticky}.shell.desk .has-toc .static-toc{top:calc(var(--header-h) + var(--space-32))}.shell.desk .static-section h2{scroll-margin-top:calc(var(--header-h) + var(--space-24))}}.static-toc-title{margin:0 0 var(--space-8);font-size:var(--text-overline);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-overline);text-transform:uppercase;color:var(--color-text-muted);line-height:var(--leading-snug)}.static-toc ol{border-left:var(--border-1) solid var(--color-border);margin:0;padding:0;list-style:none}.static-toc a{min-height:var(--touch-min);padding:var(--space-4) var(--space-12) var(--space-4) var(--space-16);margin-left:calc(var(--border-1) * -1);border-left:var(--border-2) solid transparent;border-radius:0 var(--radius-sm) var(--radius-sm) 0;font-size:var(--text-body-s);line-height:var(--leading-snug);color:var(--color-text-muted);transition:color var(--dur-fast) var(--ease-standard),background-color var(--dur-fast) var(--ease-standard),border-color var(--dur-fast) var(--ease-standard);align-items:center;display:flex}.static-toc a:hover{color:var(--color-text);background:var(--color-surface-2)}.static-toc a[aria-current]{color:var(--color-text);font-weight:var(--weight-semibold);border-left-color:var(--color-accent-fill)}.stack{gap:var(--stack,var(--space-16));flex-direction:column;display:flex}.stack-4{--stack:var(--space-4)}.stack-8{--stack:var(--space-8)}.stack-12{--stack:var(--space-12)}.stack-24{--stack:var(--space-24)}.stack-32{--stack:var(--space-32)}.cluster{align-items:center;gap:var(--cluster,var(--space-8));flex-wrap:wrap;display:flex}.cluster-4{--cluster:var(--space-4)}.cluster-12{--cluster:var(--space-12)}.cluster-16{--cluster:var(--space-16)}.row{align-items:center;gap:var(--row,0px);display:flex}.row.gap-8{--row:var(--space-8)}.row.gap-12{--row:var(--space-12)}.row.gap-16{--row:var(--space-16)}.split{justify-content:space-between;align-items:center;gap:var(--space-12);display:flex}.row.top,.split.top{align-items:flex-start}.between{justify-content:space-between}.grow{flex:1;min-width:0}.none{flex:none}.center{text-align:center}.truncate{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.measure{max-width:var(--measure)}.serif{font-family:var(--font-serif)}.text-l{font-size:var(--text-body-l);line-height:var(--leading-body)}.small{font-size:var(--text-body-s);line-height:var(--leading-body)}.tiny,.caption{font-size:var(--text-caption);line-height:var(--leading-snug)}.muted{color:var(--color-text-muted)}.soft{color:var(--color-text-2)}.accent{color:var(--color-accent)}.strong{font-weight:var(--weight-semibold)}.h1{font-size:var(--text-h1);font-weight:var(--weight-semibold);line-height:var(--leading-heading);letter-spacing:var(--tracking-tight)}.h2{font-size:var(--text-h2);font-weight:var(--weight-semibold);line-height:var(--leading-heading);letter-spacing:var(--tracking-tight)}.h3{font-size:var(--text-h3);font-weight:var(--weight-semibold);line-height:var(--leading-heading)}.h4{font-size:var(--text-h4);font-weight:var(--weight-semibold);line-height:var(--leading-heading)}.ic{flex:none;display:block}.mt-4{margin-top:var(--space-4)}.mt-8{margin-top:var(--space-8)}.mt-12{margin-top:var(--space-12)}.mt-16{margin-top:var(--space-16)}.mt-24{margin-top:var(--space-24)}.mt-32{margin-top:var(--space-32)}.mt-48{margin-top:var(--space-48)}.mb-0{margin-bottom:0}.mb-4{margin-bottom:var(--space-4)}.mb-8{margin-bottom:var(--space-8)}.mb-12{margin-bottom:var(--space-12)}.mb-16{margin-bottom:var(--space-16)}.mb-24{margin-bottom:var(--space-24)}.m-0{margin:0}
