.brandLockup{--brand-mark-size: 40px;display:inline-flex;align-items:center;gap:10px;min-width:0;color:var(--text-strong)}.brandLockup--compact{--brand-mark-size: 38px}.brandLockup--large{--brand-mark-size: 64px;flex-direction:column;gap:var(--space-3)}.brandLockup__mark{position:relative;display:grid;place-items:center;flex:0 0 var(--brand-mark-size);width:var(--brand-mark-size);height:var(--brand-mark-size);overflow:hidden;border:1px solid color-mix(in srgb,var(--brand-owl-gold) 32%,var(--border-soft));border-radius:calc(var(--brand-mark-size) * .3);background:color-mix(in srgb,var(--brand-owl-cream) 48%,var(--surface-panel));box-shadow:inset 0 1px color-mix(in srgb,white 45%,transparent),0 6px 18px -12px color-mix(in srgb,var(--brand-owl-brown) 55%,transparent)}.brandLockup__mark img{width:100%;height:100%;display:block;object-fit:cover;transform:scale(1.04)}.brandLockup__wordmark{display:inline-flex;align-items:baseline;gap:7px;min-width:0;font-family:var(--font-display);line-height:1;white-space:nowrap}.brandLockup__name{color:var(--text-strong);font-size:var(--text-md);font-weight:var(--weight-bold);letter-spacing:var(--tracking-tight)}.brandLockup__product{color:var(--brand-owl-gold);font-size:var(--text-2xs);font-weight:var(--weight-heavy);letter-spacing:var(--tracking-wider);text-transform:uppercase}.brandLockup--large .brandLockup__wordmark{gap:9px}.brandLockup--large .brandLockup__name{font-size:var(--text-xl)}.brandLockup--large .brandLockup__product{font-size:var(--text-xs)}@media (max-width: 359px){.brandLockup--compact .brandLockup__product{display:none}}.skipLink{position:fixed;top:8px;left:8px;z-index:100;padding:10px 16px;border-radius:var(--radius-sm);background:var(--surface-panel);color:var(--text-strong);font-weight:var(--weight-bold);font-size:var(--text-base);text-decoration:none;border:1px solid var(--border-soft);box-shadow:var(--shadow-lifted);transform:translateY(calc(-100% - 16px));transition:transform var(--motion-fast) var(--ease-standard)}.skipLink:focus{transform:translateY(0);outline:2px solid var(--section-home);outline-offset:2px}.appMain:focus{outline:none}.topNav{position:sticky;top:0;z-index:40;height:var(--nav-height);display:flex;align-items:center;gap:18px;padding:0 var(--page-gutter);background:color-mix(in srgb,var(--surface-panel) 88%,transparent);-webkit-backdrop-filter:saturate(1.3) blur(12px);backdrop-filter:saturate(1.3) blur(12px);border-bottom:1px solid var(--border-soft);box-shadow:0 9px 30px -24px color-mix(in srgb,var(--brand-owl-brown) 48%,transparent)}.topNav__brand{display:inline-flex;align-items:center;min-height:var(--control-hit-size);text-decoration:none;color:var(--text-strong);white-space:nowrap}.topNav__brand:hover .brandLockup__name{color:var(--brand-primary-strong)}.topNav__nav{display:flex;align-items:center;gap:4px;margin-left:6px;flex:1 1 auto;min-width:0}.topNav__destinations{display:flex;flex:1 1 auto;align-items:center;gap:4px;min-width:0;overflow-x:auto;scrollbar-width:none}.topNav__destinations::-webkit-scrollbar{display:none}.topNav__destinations>.navItem{flex-shrink:0}.topNav__more{position:relative;flex:none}.topNav__more>summary{list-style:none;cursor:pointer}.topNav__more>summary::-webkit-details-marker{display:none}.topNav__more>summary svg{width:19px;height:19px;flex:none}.topNav__moreMenu{position:absolute;z-index:50;top:calc(100% + 8px);right:0;display:grid;min-width:11rem;padding:6px;max-height:calc(100dvh - var(--nav-height) - 24px);overflow-y:auto;overscroll-behavior:contain;border:1px solid var(--border-soft);border-radius:var(--radius-md);background:var(--surface-panel);box-shadow:var(--shadow-lifted);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.topNav__moreLink{padding:9px 11px;min-height:44px;display:flex;align-items:center;border-radius:var(--radius-sm);color:var(--text-soft);text-decoration:none;font-size:var(--text-sm);font-weight:var(--weight-semibold)}.topNav__moreLink:hover,.topNav__moreLink.is-active{color:var(--text-strong);background:var(--surface-soft)}.topNav__moreLink:focus-visible{outline:2px solid var(--section-profile);outline-offset:-2px}.topNav__progress{display:inline-flex;align-items:center;gap:7px;margin-left:auto;padding:8px 10px;border-radius:var(--radius-sm);color:var(--text-soft);text-decoration:none;font-size:var(--text-sm);font-weight:var(--weight-semibold);white-space:nowrap;transition:color var(--motion-fast) var(--ease-standard),background var(--motion-fast) var(--ease-standard)}.topNav__progress:hover,.topNav__progress.is-active{color:var(--section-home);background:color-mix(in srgb,var(--section-home) 11%,transparent)}.topNav__progress.is-active{box-shadow:inset 0 -2px 0 var(--section-home)}.topNav__progress:focus-visible{outline:2px solid var(--section-home);outline-offset:2px}.navItem{--section: var(--brand-primary);display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:var(--radius-sm);color:var(--text-soft);text-decoration:none;font-size:var(--text-base);font-weight:var(--weight-semibold);line-height:1;transition:color var(--motion-fast) var(--ease-standard),background var(--motion-fast) var(--ease-standard)}.navItem:hover{color:var(--section);background:color-mix(in srgb,var(--section) 9%,transparent)}.navItem:focus-visible{outline:2px solid var(--section);outline-offset:2px}.navItem.is-active{color:var(--section);background:color-mix(in srgb,var(--section) 11%,var(--surface-panel))}.navItem--top.is-active{box-shadow:inset 0 -2px 0 var(--section)}.profileBlock{display:inline-flex;align-items:center;gap:10px;flex:none}.profileBlock__menu{position:relative}.profileBlock__menu>summary{list-style:none;cursor:pointer}.profileBlock__menu>summary::-webkit-details-marker{display:none}.profileBlock__id{display:inline-flex;align-items:center;gap:7px;color:var(--text-soft);text-decoration:none;font-size:var(--text-sm);max-width:200px;overflow:hidden;padding:5px 7px;border-radius:var(--radius-sm)}.profileBlock__id:hover{background:var(--surface-sunken);color:var(--text-strong)}.profileBlock__id.is-active{color:var(--section-profile);background:color-mix(in srgb,var(--section-profile) 12%,transparent);box-shadow:inset 0 -2px 0 var(--section-profile)}.profileBlock__id:focus-visible{outline:2px solid var(--section-profile);outline-offset:2px}.profileBlock__menuPanel{position:absolute;z-index:50;top:calc(100% + 8px);right:0;display:grid;min-width:15rem;padding:6px;border:1px solid var(--border-soft);border-radius:var(--radius-md);background:color-mix(in srgb,var(--surface-panel) 96%,transparent);box-shadow:var(--shadow-lifted);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.profileBlock__menuLink{display:flex;align-items:center;gap:10px;padding:9px 11px;border-radius:var(--radius-sm);color:var(--text-soft);text-decoration:none}.profileBlock__menuLink:hover,.profileBlock__menuLink:focus-visible{color:var(--text-strong);background:var(--surface-soft)}.profileBlock__menuLink:focus-visible{outline:2px solid var(--section-profile);outline-offset:-2px}.profileBlock__menuLink>span{display:grid;gap:2px}.profileBlock__menuLink strong{font-size:var(--text-sm)}.profileBlock__menuLink small{font-size:var(--text-2xs);color:var(--text-muted)}.profileBlock__name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profileBlock__logout{display:inline-flex;align-items:center;gap:6px;padding:7px 11px;border-radius:var(--radius-sm);border:1px solid var(--border-soft);background:var(--surface-panel);color:var(--text-soft);font:inherit;font-size:var(--text-sm);font-weight:var(--weight-semibold);cursor:pointer;transition:border-color var(--motion-fast) var(--ease-standard),color var(--motion-fast) var(--ease-standard)}.profileBlock__logout:hover{color:var(--state-weak);border-color:color-mix(in srgb,var(--state-weak) 35%,var(--border-soft))}.profileBlock__logout:focus-visible{outline:2px solid var(--section-profile);outline-offset:2px}.mobileNav{display:none}body.no-bottom-nav{--mobile-nav-clearance: 0px}@media (min-width: 640px){body{--mobile-nav-clearance: 0px}}.pageFrame{width:100%;margin:0 auto;padding:clamp(14px,1.6vw,20px) var(--page-gutter) 48px}.pageFrame--standard{max-width:var(--page-readable)}.pageFrame--dashboard{max-width:var(--page-dashboard)}.pageFrame--wide{max-width:var(--page-wide)}.pageFrame--study{max-width:none;padding:0}.pageFrame__head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-4)}.pageFrame__title{margin:0;font-size:var(--text-xl);font-family:var(--font-display)}.pageFrame__subtitle{margin:4px 0 0;color:var(--text-muted)}.pageFrame__actions{display:flex;flex:0 0 auto;gap:10px;align-items:center;white-space:nowrap}.pageFrame__actions>a{display:inline-flex;align-items:center;min-height:var(--control-hit-size)}.pageFrame__kicker{margin:0 0 5px;font-size:var(--text-xs);font-weight:var(--weight-heavy);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--page-accent)}.pageFrame[data-section]{position:relative;background-repeat:no-repeat}.pageFrame[data-section=home]{--page-accent: var(--section-home);background-image:radial-gradient(820px 280px at 84% -90px,color-mix(in srgb,var(--section-home) 13%,transparent),transparent 64%)}.pageFrame[data-section=curriculum]{--page-accent: var(--section-curriculum);background-image:radial-gradient(980px 300px at 10% -90px,color-mix(in srgb,var(--section-curriculum) 13%,transparent),transparent 60%)}.pageFrame[data-section=review]{--page-accent: var(--section-review);background-image:radial-gradient(820px 260px at 50% -90px,color-mix(in srgb,var(--section-review) 12%,transparent),transparent 60%)}.pageFrame[data-section=models]{--page-accent: var(--section-models);background-image:radial-gradient(880px 280px at 88% -90px,color-mix(in srgb,var(--section-models) 12%,transparent),transparent 60%)}.pageFrame[data-section=cram]{--page-accent: var(--section-cram);background-image:radial-gradient(760px 240px at 72% -80px,color-mix(in srgb,var(--section-cram) 12%,transparent),transparent 60%)}.pageFrame[data-section=profile]{--page-accent: var(--section-profile);background-image:radial-gradient(700px 220px at 82% -80px,color-mix(in srgb,var(--section-profile) 11%,transparent),transparent 60%)}.pageFrame[data-section] .pageFrame__heading{position:relative;padding-left:17px}.pageFrame[data-section] .pageFrame__heading:before{content:"";position:absolute;left:0;top:2px;bottom:2px;width:3px;border-radius:var(--radius-pill);background:linear-gradient(180deg,var(--page-accent),color-mix(in srgb,var(--page-accent) 36%,transparent))}.loadingSurface{width:min(100%,620px);min-height:180px;margin:clamp(36px,8vh,92px) auto;padding:var(--space-5);display:grid;grid-template-columns:auto minmax(0,1fr);align-content:center;align-items:center;gap:var(--space-4);border:1px solid var(--border-soft);border-radius:var(--radius-xl);background:radial-gradient(circle at 8% 18%,color-mix(in srgb,var(--page-accent) 11%,transparent),transparent 38%),color-mix(in srgb,var(--surface-panel) 92%,transparent);box-shadow:var(--shadow-soft)}.loadingSurface--compact{margin:var(--space-5) 0;min-height:148px}.loadingSurface__signal{position:relative;width:44px;height:44px;display:grid;place-items:center;border-radius:var(--radius-pill);background:color-mix(in srgb,var(--page-accent) 13%,var(--surface-panel))}.loadingSurface__signal:before,.loadingSurface__signal i{content:"";display:block;width:10px;height:10px;border-radius:var(--radius-pill);background:var(--page-accent)}.loadingSurface__signal:before{position:absolute;animation:loadingPulse 1.8s var(--ease-standard) infinite}.loadingSurface__copy{display:grid;gap:2px}.loadingSurface__copy strong{color:var(--text-strong);font-size:var(--text-base)}.loadingSurface__copy span{color:var(--text-muted);font-size:var(--text-sm)}.loadingSurface__progress{grid-column:1 / -1;height:3px;overflow:hidden;border-radius:var(--radius-pill);background:var(--surface-sunken)}.loadingSurface__progress i{display:block;width:42%;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--page-accent),var(--brand-owl-gold));animation:loadingGlide 1.65s var(--ease-emphasized) infinite}@keyframes loadingPulse{0%,to{transform:scale(1);opacity:.3}50%{transform:scale(2.6);opacity:0}}@keyframes loadingGlide{0%{transform:translate(-110%)}to{transform:translate(350%)}}@media (max-width: 1023px){.navItem--top{padding:8px 10px;font-size:var(--text-sm)}}@media (min-width: 640px) and (max-width: 1399px){.topNav{gap:8px}.topNav__nav{flex:1 1 auto;justify-content:center;margin-left:0}.navItem--top{width:var(--control-hit-size);height:var(--control-hit-size);padding:0;justify-content:center}.navItem--top .navItem__label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.topNav__more>summary{width:auto;padding:0 10px}.profileBlock__name,.profileBlock__logoutLabel{display:none}.profileBlock__id,.profileBlock__logout{padding:8px}.topNav__progress span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}}@media (min-width: 640px) and (max-width: 767px){.topNav{gap:6px;padding-inline:12px}.topNav__nav{min-width:0;overflow:visible}}@media (min-width: 1400px) and (max-width: 1519px){.profileBlock__name{display:none}.profileBlock__id{min-width:var(--control-hit-size);justify-content:center;padding-inline:8px}}@media (max-width: 1100px){.topNav{height:auto;min-height:var(--nav-height);display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;grid-template-areas:"brand nav progress profile";gap:2px 10px;padding-block:4px}.topNav__brand{grid-area:brand;min-width:0}.topNav__nav{grid-area:nav;min-width:0;overflow:visible}.topNav__progress{grid-area:progress}.topNav>.profileBlock{grid-area:profile}}@media (max-width: 380px){.topNav--operator .brandLockup__wordmark{display:none}}@media (max-width: 639px){.pageFrame__head{flex-direction:column;align-items:stretch;gap:var(--space-2)}.pageFrame__actions{justify-content:flex-start;flex-wrap:wrap}.topNav{grid-template-columns:minmax(0,1fr) auto auto;grid-template-areas:"brand progress profile";gap:2px 8px}.topNav__nav{display:none}.topNav--operator{grid-template-columns:minmax(0,1fr) auto auto auto;grid-template-areas:"brand nav progress profile"}.topNav--operator .topNav__nav{display:flex;margin-left:0}.topNav__destinations{display:none}.topNav__more>summary{min-width:44px;min-height:44px;justify-content:center;padding:8px}.topNav__more>summary>span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.topNav__moreMenu{position:fixed;top:calc(var(--nav-height) + 4px);left:8px;right:8px;max-height:calc(100dvh - var(--nav-height) - var(--mobile-nav-clearance) - 16px)}.profileBlock__name,.profileBlock__logoutLabel{display:none}.profileBlock__logout{padding:8px}.topNav__progress,.profileBlock__id,.profileBlock__logout{min-width:44px;min-height:44px;justify-content:center}.topNav__progress{margin-left:auto;padding:8px}.topNav__progress span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.mobileNav{position:fixed;left:0;right:0;bottom:0;z-index:45;display:flex;justify-content:space-around;align-items:stretch;height:var(--mobile-nav-clearance);padding-bottom:env(safe-area-inset-bottom,0px);background:color-mix(in srgb,var(--surface-panel) 94%,transparent);-webkit-backdrop-filter:saturate(1.1) blur(8px);backdrop-filter:saturate(1.1) blur(8px);border-top:1px solid var(--border-soft)}.navItem--mobile{flex:1 1 0;flex-direction:column;justify-content:center;gap:3px;padding:8px 0;border-radius:0;font-size:var(--text-2xs);min-height:44px}.navItem--mobile.is-active{background:transparent;box-shadow:inset 0 2px 0 var(--section)}.pageFrame{padding-bottom:calc(var(--mobile-nav-clearance) + var(--space-4))}}@media (prefers-reduced-motion: reduce){.navItem,.profileBlock__logout,.skipLink,.loadingSurface__signal:before,.loadingSurface__progress i{transition:none;animation:none}}:root{--layer-drawer: 2000;--layer-confirm: 2100;--layer-toast: 2200;--card-inline-visuals: 1;--surface-app: #f3efe6;--surface-panel: #ffffff;--surface-soft: #faf7f1;--surface-sunken: #efeadf;--surface-visual-canvas: #faf6ee;--surface-visual-canvas-soft: #f3ebdc;--figure-paper: var(--surface-visual-canvas);--surface-visual-canvas-gradient: linear-gradient( 180deg, var(--surface-visual-canvas) 0%, var(--surface-visual-canvas-soft) 100% );--illustration-notice-ink: #3a2f25;--bg-card-soft: var(--surface-visual-canvas-soft);--border-subtle: rgba(64, 32, 16, .1);--border-soft: #e3dccf;--border-strong: #d6cdb9;--border-control: #8d8474;--text-strong: #221d18;--text-soft: #574d42;--text-muted: #837868;--font-sans: -apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI", system-ui, "Helvetica Neue", Arial, sans-serif;--font-display: -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", system-ui, "Helvetica Neue", Arial, sans-serif;--font-reading-serif: ui-serif, "Iowan Old Style", "Palatino Linotype", Palatino, "Book Antiqua", Georgia, Cambria, "Times New Roman", serif;--font-mono: "SF Mono", ui-monospace, "JetBrains Mono", "IBM Plex Mono", "Roboto Mono", Menlo, Consolas, monospace;--brand-owl-brown: #4f321f;--brand-owl-gold: #bd8136;--brand-owl-cream: #f3dfaa;--brand-tablet-blue: #6f8098;--brand-primary: #2d7465;--brand-primary-strong: #21594f;--brand-knowledge: #536f84;--brand-artifact: #93683d;--text-on-accent: #fff;--surface-command: #f3f8f6;--surface-command-raised: #ffffff;--text-command: #17231f;--text-command-muted: #66756f;--border-command: #cddbd6;--accent-command: #2f7d6b;--accent-command-blue: #3f74b0;--accent-command-gold: #a96f25;--text-3xs: .6rem;--text-2xs: .68rem;--text-xs: .74rem;--text-sm: .84rem;--text-base: .95rem;--text-md: 1.06rem;--text-lg: 1.28rem;--text-xl: 1.62rem;--text-2xl: 2.05rem;--weight-regular: 400;--weight-medium: 500;--weight-semibold: 600;--weight-bold: 700;--weight-heavy: 800;--weight-black: 900;--leading-tight: 1.16;--leading-snug: 1.35;--leading-normal: 1.55;--leading-relaxed: 1.7;--tracking-display: -.06em;--tracking-tighter: -.03em;--tracking-tight: -.018em;--tracking-snug: -.008em;--tracking-normal: 0;--tracking-fine: .02em;--tracking-wide: .045em;--tracking-caps: .06em;--tracking-wider: .1em;--tracking-widest: .14em;--table-font: var(--text-sm);--table-th-weight: var(--weight-bold);--table-cell-pad-y: var(--space-2);--table-cell-pad-x: var(--space-3);--table-border: var(--border-hairline);--section-home: var(--brand-primary);--section-curriculum: var(--brand-knowledge);--section-review: #427966;--section-cram: #a45f3d;--section-profile: #666b78;--section-models: var(--brand-artifact);--accent-ink: #245d4d;--page-accent: var(--section-home);--ring-accent: 0 0 0 3px color-mix(in srgb, var(--page-accent) 30%, transparent);--state-new: #3f74b0;--state-learning: #c5790f;--state-review: #4f8a4f;--state-weak: #c0492f;--state-mastered: #2f7d4f;--danger: #b3261e;--state-suspended: #9a8978;--state-buried: #6b5a48;--state-active: #4f8a4f;--state-inactive: #9a8978;--state-due: #c0612f;--ds-class-1: #4e79a7;--ds-class-2: #f28e2b;--ds-class-3: #59a14f;--ds-class-4: #e15759;--ds-class-5: #76b7b2;--ds-class-6: #edc948;--ds-class-7: #b07aa1;--ds-class-8: #ff9da7;--ds-class-9: #9c755f;--ds-class-10: #8cd17d;--ds-class-11: #86bcb6;--ds-class-12: #d4a6c8;--ds-sample-line: hsl(13 72% 66%);--ds-ink: #000;--ds-pill-shadow: rgb(0 0 0 / .35);--chart-ink: var(--text-strong);--chart-muted: #7c7368;--chart-line: var(--border-soft);--chart-track: #ece5d6;--chart-accent: #6b8f5e;--chart-accent-deep: var(--state-review);--chart-again: var(--state-weak);--chart-hard: #b08a2e;--chart-good: var(--state-review);--chart-easy: var(--state-new);--chart-new: #9bb7d4;--chart-learning: #d8b35f;--chart-young: #7fae6e;--chart-mature: var(--state-review);--chart-risk: var(--state-weak);--chart-neglect: #b0772e;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 22px;--radius-pill: 999px;--control-hit-size: 44px;--shadow-soft: 0 1px 2px rgba(64, 42, 20, .05), 0 6px 18px rgba(64, 42, 20, .07);--shadow-lifted: 0 2px 4px rgba(64, 42, 20, .07), 0 16px 34px rgba(64, 42, 20, .13);--border-hairline: rgba(64, 42, 20, .09);--ring-focus: 0 0 0 3px color-mix(in srgb, var(--section-home) 22%, transparent);--nav-height: 56px;--mobile-nav-height: 62px;--mobile-nav-clearance: calc(var(--mobile-nav-height) + env(safe-area-inset-bottom, 0px));--page-gutter: clamp(16px, 4vw, 40px);--page-readable: 940px;--page-dashboard: 1240px;--page-wide: 1480px;--motion-fast: .12s;--motion-normal: .22s;--motion-slow: .36s;--ease-standard: cubic-bezier(.2, .7, .2, 1);--ease-emphasized: cubic-bezier(.2, .9, .1, 1)}@media (max-width: 767px){:root{--card-inline-visuals: 0}}@media (max-height: 540px){:root{--card-inline-visuals: 0}}:root[data-theme=dark]{color-scheme:dark;--figure-paper: #e9e1d2;--surface-app: #14110d;--surface-panel: #1f1a15;--surface-soft: #1a1611;--surface-sunken: #100d09;--bg-card-soft: var(--surface-soft);--border-subtle: rgba(255, 255, 255, .1);--border-soft: #332c23;--border-strong: #483e31;--border-control: #7d7161;--text-strong: #f3efe6;--text-soft: #cec5b6;--text-muted: #9a9082;--brand-owl-brown: #f0d3a0;--brand-owl-gold: #dfa85d;--brand-owl-cream: #5b4932;--brand-tablet-blue: #94a8c2;--brand-primary: #62b8a4;--brand-primary-strong: #83d0bd;--brand-knowledge: #83a6c0;--brand-artifact: #d0a068;--text-on-accent: #10231e;--surface-command: #0d1214;--surface-command-raised: #162024;--text-command: #f3efe6;--text-command-muted: #aab5b1;--border-command: #34474b;--accent-command: #63c7b0;--accent-command-blue: #78b4ea;--accent-command-gold: #e6b86f;--section-home: var(--brand-primary);--section-curriculum: var(--brand-knowledge);--section-review: #73b89e;--section-cram: #dc8b62;--section-profile: #a7aabb;--section-models: var(--brand-artifact);--state-new: #6098cf;--state-learning: #d99a3a;--state-review: #6fae6f;--state-weak: #df6a52;--state-mastered: #5fae7c;--danger: #ffb4ab;--state-suspended: #b3a392;--state-buried: #8c7a64;--state-active: #6fae6f;--state-inactive: #b3a392;--state-due: #db7a4c;--chart-muted: var(--text-muted);--chart-track: #3a332a;--chart-accent: #85b477;--chart-hard: #cf9f3d;--chart-learning: #e0c276;--chart-young: #8cbb7a;--chart-neglect: #cf9550;--accent-ink: #5fc3ab;--shadow-soft: 0 1px 2px rgba(0, 0, 0, .4), 0 6px 18px rgba(0, 0, 0, .46);--shadow-lifted: 0 2px 6px rgba(0, 0, 0, .5), 0 18px 40px rgba(0, 0, 0, .56);--border-hairline: rgba(255, 255, 255, .09)}.bioIcon{display:inline-block;vertical-align:middle;flex:0 0 auto}:root{--ph-map-paper: #fbf8f1;--ph-map-ink: #2b2a28;--ph-map-muted: #6f6a60;--ph-excite: #2c8a4e;--ph-inhibit: #c23a3a;--ph-track: #ddd6c7;--ph-below: #9d978a;--ph-litmus-1: #c8202f;--ph-litmus-2: #d9402b;--ph-litmus-3: #ee6a2a;--ph-litmus-4: #f3a52a;--ph-litmus-5: #e6d03a;--ph-litmus-6: #a9cf46;--ph-litmus-7: #4fae5a;--ph-litmus-8: #2f9d9a;--ph-litmus-9: #3f6fb5}:root[data-theme=dark]{--ph-map-paper: #f4efe4;--ph-map-ink: #2b2a28;--ph-map-muted: #6f6a60;--ph-excite: #2a9a55;--ph-inhibit: #d04545;--ph-track: #cfc7b6;--ph-below: #8d877a;--ph-litmus-1: #d5303e;--ph-litmus-2: #e4503a;--ph-litmus-3: #f2793a;--ph-litmus-4: #f5b13a;--ph-litmus-5: #ebd84a;--ph-litmus-6: #b3d656;--ph-litmus-7: #5cb866;--ph-litmus-8: #3aa8a4;--ph-litmus-9: #4f7fc4}:root{font-family:var(--font-sans);color:var(--text-strong);font-variant-numeric:tabular-nums;text-rendering:optimizeLegibility}*{box-sizing:border-box}.visuallyHidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important}.microLabel{color:var(--text-muted);font-size:var(--text-2xs);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-caps);text-transform:uppercase}.microLabel--heading{margin:0 0 var(--space-2)}.meterFill{display:block;height:100%;border-radius:inherit;background:var(--page-accent)}body{margin:0;min-height:100vh;background-color:var(--surface-app);background-image:radial-gradient(1100px 560px at 84% -12%,color-mix(in srgb,var(--section-home) 8%,transparent),transparent 60%),radial-gradient(880px 460px at -8% -6%,color-mix(in srgb,var(--section-curriculum) 6%,transparent),transparent 55%);background-repeat:no-repeat;color:var(--text-strong);line-height:var(--leading-normal)}a{color:var(--accent-ink);text-underline-offset:2px}:where(a:hover){color:var(--section-home)}.card{background:var(--surface-panel);border:1px solid var(--border-soft);border-radius:var(--radius-md);padding:var(--space-5);margin-bottom:var(--space-4);box-shadow:var(--shadow-soft)}.row{display:flex;gap:10px;align-items:center}.row.wrap{flex-wrap:wrap}.spread{display:flex;justify-content:space-between;align-items:center;gap:12px}h1,h2,h3,h4{color:var(--text-strong);font-family:var(--font-display);line-height:var(--leading-tight);letter-spacing:var(--tracking-tight);font-weight:var(--weight-bold)}h1{font-size:var(--text-xl);margin:0 0 .45em}h2{font-size:var(--text-lg)}label{display:block;font-size:var(--text-sm);color:var(--text-muted);margin:8px 0 3px}input,textarea,select{width:100%;padding:9px 11px;border:1px solid var(--border-soft);border-radius:var(--radius-sm);font:inherit;background:var(--surface-panel);color:var(--text-strong);transition:border-color var(--motion-fast) var(--ease-standard),box-shadow var(--motion-fast) var(--ease-standard)}input[type=checkbox],input[type=radio]{width:1.1rem;height:1.1rem;padding:0;flex:0 0 auto;accent-color:var(--page-accent, var(--section-home))}input:not([type=hidden]):not([type=checkbox]):not([type=radio]),select,button,summary{min-height:var(--control-hit-size)}label:has(>input[type=checkbox]),label:has(>input[type=radio]){min-height:var(--control-hit-size)}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--section-home);box-shadow:var(--ring-focus)}textarea{min-height:60px;resize:vertical}button{font:inherit;font-weight:var(--weight-semibold);padding:9px 15px;border-radius:var(--radius-sm);border:1px solid transparent;background:var(--section-home);color:#fff;cursor:pointer;transition:filter var(--motion-fast) var(--ease-standard),box-shadow var(--motion-fast) var(--ease-standard)}button:hover:not(:disabled){filter:brightness(1.05);box-shadow:var(--shadow-soft)}button.secondary{background:var(--surface-panel);color:var(--text-strong);border-color:var(--border-strong)}button.danger{background:var(--surface-panel);color:var(--state-weak);border-color:color-mix(in srgb,var(--state-weak) 35%,var(--border-soft))}button:disabled{opacity:.5;cursor:default}button:focus-visible{outline:2px solid var(--section-home);outline-offset:2px}.readout{font-family:var(--font-mono);font-variant-numeric:tabular-nums;letter-spacing:var(--tracking-snug)}::selection{background:#2d74654d}:root[data-theme=dark] ::selection{background:#62b8a473}:focus-visible{outline-color:var(--section-home)}.quietPanel{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-5);border-radius:var(--radius-lg);background:var(--surface-soft);border:1px dashed var(--border-strong);color:var(--text-soft)}.quietPanel__icon{display:grid;place-items:center;flex:0 0 auto;width:46px;height:46px;border-radius:var(--radius-pill);color:var(--page-accent);background:color-mix(in srgb,var(--page-accent) 13%,transparent)}.quietPanel__title{margin:0;font-weight:var(--weight-semibold)}.quietPanel__body{margin:2px 0 0;font-size:var(--text-sm);color:var(--text-muted)}.retryRow{margin-top:12px}.errorFallback{text-align:center}.errorFallback h1{margin-top:0}.errorFallbackActions{display:flex;gap:12px;justify-content:center}.cardErrorFallback{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;text-align:center;padding:32px 24px}.badge{font-size:var(--text-xs);padding:2px 8px;border-radius:999px;border:1px solid var(--border-soft);text-transform:uppercase;letter-spacing:var(--tracking-wide)}.stateBadge{display:inline-flex;align-items:center;gap:5px;font-size:var(--text-xs);font-weight:var(--weight-bold);padding:3px 9px;border-radius:999px;color:var(--chip, var(--text-muted));background:color-mix(in srgb,var(--chip, var(--text-muted)) 12%,transparent);border:1px solid color-mix(in srgb,var(--chip, var(--text-muted)) 30%,transparent)}.muted{color:var(--text-muted)}.error{color:#a33;margin:8px 0}.list-item{padding:10px 0;border-bottom:1px solid var(--border-soft)}.list-item:last-child{border-bottom:none}.mn-red,.mn-blue,.mn-green,.mn-orange,.mn-purple{font-weight:var(--weight-semibold)}.mn-red{color:#c0492f}.mn-blue{color:#3f74b0}.mn-green{color:#4f8a4f}.mn-orange{color:#c5790f}.mn-purple{color:#7a4fb0}.memInline{margin-top:6px;font-size:var(--text-sm)}.card-image{max-width:100%;max-height:320px;height:auto;border-radius:8px;margin-top:10px;display:block}.mdTableWrap{width:100%;align-self:stretch;flex-shrink:0;overflow-x:auto}.imgModeChoices{display:flex;flex-wrap:wrap;gap:4px;width:fit-content;max-width:100%;margin-top:4px}.imgModeChoice{font:inherit;font-size:var(--text-sm);font-weight:var(--weight-semibold);cursor:pointer;color:var(--text-strong);background:var(--surface-soft);border:1px solid var(--border-soft);border-radius:8px;padding:7px 14px;transition:background .14s ease,color .14s ease,border-color .14s ease}.imgModeChoice:hover{border-color:var(--border-strong)}.imgModeChoice.selected{color:#fff;background:var(--page-accent);border-color:var(--page-accent)}.apprPreviewCard{display:flex;flex-direction:column;gap:6px;align-items:center;text-align:center;background:var(--surface-visual-canvas-gradient);border:1px solid rgba(139,99,66,.32);border-radius:14px;padding:16px 18px;transition:box-shadow .3s ease}.apprPreviewQ{color:#9a8978;font-weight:var(--weight-semibold)}.apprPreviewA{color:#2c2218;font-weight:var(--weight-bold);line-height:var(--leading-snug)}.apprPreviewD{color:#6b5a48;margin-top:2px}.rate-again{background:#c0492f;color:#fff;border-color:#c0492f}.rate-hard{background:#b08a2e;color:#fff;border-color:#b08a2e}.rate-good{background:#4f8a4f;color:#fff;border-color:#4f8a4f}.rate-easy{background:#3f74b0;color:#fff;border-color:#3f74b0}.badge.rate-again{color:var(--state-weak);background:color-mix(in srgb,var(--state-weak) 14%,transparent);border-color:color-mix(in srgb,var(--state-weak) 30%,transparent)}.badge.rate-hard{color:var(--state-learning);background:color-mix(in srgb,var(--state-learning) 14%,transparent);border-color:color-mix(in srgb,var(--state-learning) 30%,transparent)}.badge.rate-good{color:var(--state-review);background:color-mix(in srgb,var(--state-review) 14%,transparent);border-color:color-mix(in srgb,var(--state-review) 30%,transparent)}.badge.rate-easy{color:var(--state-new);background:color-mix(in srgb,var(--state-new) 14%,transparent);border-color:color-mix(in srgb,var(--state-new) 30%,transparent)}.login-wrap{max-width:390px;margin:clamp(32px,8vh,88px) auto;padding-inline:var(--space-4)}.login-wrap>.card{padding:clamp(24px,6vw,36px);border-radius:var(--radius-xl)}.authBrand{justify-content:center;margin:0 auto var(--space-5)}.login-wrap h1{margin-bottom:var(--space-2);text-align:center}.login-wrap h1+.muted{margin-top:0;text-align:center}.login-wrap form{margin-top:var(--space-5)}.usageTable{width:100%;border-collapse:collapse;font-size:var(--table-font)}.usageTable th,.usageTable td{text-align:left;padding:var(--table-cell-pad-y) var(--table-cell-pad-x);border-bottom:1px solid var(--table-border);white-space:nowrap;vertical-align:top}.usageTable th{font-weight:var(--table-th-weight);color:var(--text-muted)}.usageTable td:last-child,.usageTable th:last-child{font-variant-numeric:tabular-nums}.usageTable .num{text-align:right;font-variant-numeric:tabular-nums}.usageTable tr:last-child td{border-bottom:none}:root[data-theme=dark] :is(.studyStage .card-image,.studyStage .frontVisual img,.frontVisualOverlay img,.imgZoomImg,.topicPicture__plate img,.previewImage img,.studyStage .lessonsBody img,.studyStage .detailsBody img){background-color:var(--figure-paper)}:root[data-theme=dark] .hub3d__cardArt.previewImage>img,:root[data-theme=dark] .relatedModels__art.previewImage>img{background-color:transparent}:root[data-theme=dark] .chapterFigure .chapterFigure__field{background:var(--figure-paper)}.toastViewport{position:fixed;left:50%;bottom:max(18px,env(safe-area-inset-bottom));transform:translate(-50%);z-index:var(--layer-toast);display:flex;flex-direction:column;align-items:center;gap:10px;width:min(92vw,460px);pointer-events:none}.toast{pointer-events:auto;width:100%;display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:var(--radius-md);background:var(--surface-panel);border:1px solid var(--border-strong);border-left-width:4px;box-shadow:var(--shadow-lifted);color:var(--text-strong);font-size:var(--text-sm);font-weight:var(--weight-semibold);line-height:var(--leading-snug);animation:toastIn .18s var(--ease-standard) both}@keyframes toastIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.toast--success{width:auto;max-width:100%;gap:8px;padding:7px 8px 7px 12px;border-color:var(--state-mastered);background:var(--state-mastered);color:var(--text-on-accent);font-size:var(--text-xs)}.toast--success .toast__close{color:inherit;opacity:.8}.toast--success .toast__close:hover{color:inherit;opacity:1;background:color-mix(in srgb,#000 14%,transparent)}.toast--error{border-left-color:var(--state-weak)}.toast--info{border-left-color:var(--section-curriculum)}.toast__msg{flex:1 1 auto;min-width:0}.toast__action{flex:0 0 auto;font:inherit;font-weight:var(--weight-bold);font-size:var(--text-sm);padding:5px 12px;border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:var(--surface-soft);color:var(--text-strong);cursor:pointer}.toast__action:hover{filter:brightness(.97)}.toast__close{flex:0 0 auto;font:inherit;font-size:var(--text-sm);line-height:1;padding:4px 6px;border:0;background:none;color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm)}.toast__close:hover{color:var(--text-strong);background:var(--surface-sunken)}.confirmBackdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--layer-confirm);display:flex;align-items:center;justify-content:center;padding:20px;background:#221d1875;animation:confirmFade .14s ease both}@keyframes confirmFade{0%{opacity:0}to{opacity:1}}.confirmPanel{width:min(94vw,460px);max-height:86vh;overflow-y:auto;background:var(--surface-panel);border:1px solid var(--border-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow-lifted);padding:22px 22px 18px;animation:confirmRise .16s var(--ease-emphasized) both}@keyframes confirmRise{0%{opacity:0;transform:translateY(10px) scale(.99)}to{opacity:1;transform:translateY(0) scale(1)}}.confirmTitle{margin:0 0 8px;font-size:var(--text-lg);color:var(--text-strong)}.confirmBody{margin:0 0 18px;font-size:var(--text-base);line-height:var(--leading-normal);color:var(--text-soft)}.confirmBody p{margin:0 0 8px}.confirmBody p:last-child{margin-bottom:0}.confirmBody strong{color:var(--text-strong);font-weight:var(--weight-bold)}.confirmTypeGate{display:flex;flex-direction:column;gap:6px;margin:0 0 18px}.confirmTypeGateLabel{font-size:var(--text-sm);color:var(--text-soft)}.confirmTypeGateLabel strong{color:var(--state-weak);font-weight:var(--weight-heavy);letter-spacing:var(--tracking-wide)}.confirmInput{font:inherit;padding:9px 12px;border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:var(--surface-panel);color:var(--text-strong)}.confirmInput:focus-visible{outline:2px solid var(--state-weak);outline-offset:1px;border-color:var(--state-weak)}.confirmActions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap}.confirmCancel,.confirmOk{font:inherit;font-weight:var(--weight-bold);padding:9px 16px;border-radius:var(--radius-sm);cursor:pointer;border:1px solid transparent}.confirmCancel{background:var(--surface-panel);color:var(--text-strong);border-color:var(--border-strong)}.confirmCancel:hover{background:var(--surface-soft)}.confirmOk{background:var(--section-home);color:#fff}.confirmOk:hover{filter:brightness(1.05)}.confirmOk--destructive{background:var(--state-weak);border-color:var(--state-weak);color:#fff}.confirmOk--destructive:hover{filter:brightness(1.06)}.confirmOk:disabled{opacity:.5;cursor:not-allowed;filter:none}.confirmCancel:focus-visible,.confirmOk:focus-visible{outline:2px solid var(--section-home);outline-offset:2px}@media (prefers-reduced-motion: reduce){.toast,.confirmBackdrop,.confirmPanel{animation:none}}@media (max-width: 639px){.confirmActions{flex-direction:column-reverse}.confirmActions .confirmCancel,.confirmActions .confirmOk{width:100%}}
