:root{color:#ece7db;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--mist-50:#f1efe9;--mist-100:#d8d5ce;--mist-200:#bab6ae;--gold-100:#d7bf7b;--gold-200:#b9974c;--gold-300:#8e6d26;--ink-950:#050608;--ink-900:#0c0f14;--ink-800:#141920;--ink-700:#1c232d;--ink-500:#8f948f;--ink-300:#bbb3a2;--surface-strong:#0f1218db;--surface-soft:#ffffff0b;--surface-elevated:#161a22e6;--line-soft:#d7bf7b29;--line-strong:#d7bf7b47;--shadow-soft:0 28px 90px #00000057;--radius-lg:34px;--radius-md:24px;--radius-sm:16px;background:#090a0d;font-family:IBM Plex Sans,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;color:var(--mist-50);background:radial-gradient(circle at 12% 16%,#d7bf7b29,#0000 26%),radial-gradient(circle at 82% 12%,#c3c9d61f,#0000 22%),radial-gradient(circle at 50% 120%,#777e9124,#0000 34%),linear-gradient(#07090d 0%,#0d1016 45%,#090b10 100%);margin:0}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}#root{min-height:100vh}.screen-shell{min-height:100vh;padding:24px;position:relative}.screen-centered{place-items:center;display:grid}.ambient-gradient{pointer-events:none;background:radial-gradient(circle at 15% 20%,#d7bf7b1f,#0000 24%),radial-gradient(circle at 82% 10%,#d4dbe514,#0000 22%),radial-gradient(circle at 50% 70%,#68718214,#0000 30%);position:absolute;inset:0}.topbar,.page-frame,.mobile-dock,.login-panel{z-index:1;position:relative}.topbar{-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);background:linear-gradient(#0e1117b3,#0a0c1199);border:1px solid #d7bf7b14;border-radius:999px;justify-content:space-between;align-items:center;gap:20px;max-width:1240px;margin:0 auto 32px;padding:16px 18px;display:flex;box-shadow:0 10px 40px #00000029}.brand-mark{align-items:center;gap:14px;display:flex}.brand-icon{color:#0c0f14;background:linear-gradient(#d7bf7b 0%,#8e6d26 100%);border-radius:14px;place-items:center;width:34px;height:34px;display:grid;box-shadow:inset 0 1px #fff5dc6b}.brand-icon.large{border-radius:18px;width:56px;height:56px}.eyebrow{letter-spacing:.12em;text-transform:uppercase;color:#d7bf7bb8;margin:0 0 4px;font-size:.76rem;font-weight:700}.topbar h1,.hero-card h2,.login-panel h1,.content-card h3,.content-card h4{letter-spacing:-.02em;margin:0;font-family:Fraunces,Georgia,serif;font-weight:500}.topnav,.topbar-actions,.hero-actions,.meta-row,.card-header-row,.chip-grid,.linked-terms{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.topnav-link,.mobile-link,.ghost-button,.secondary-link{color:var(--mist-100);border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:10px 14px;display:inline-flex}.topnav-link.is-active,.mobile-link.is-active{color:var(--mist-50);background:#d7bf7b1f}.ghost-button{border:1px solid var(--line-soft);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff0a}.compact-button{padding:11px 16px}.user-chip,.score-pill,.delta-pill,.pattern-chip,.choice-chip,.linked-term,.metric-card{border:1px solid var(--line-soft);background:#ffffff0a}.user-chip{border-radius:999px;padding:10px 14px}.page-frame,.login-panel{max-width:1240px;margin:0 auto}.page-grid{gap:22px;display:grid}.result-flow{gap:30px;display:grid}.narrow-grid{max-width:880px}.session-layout{grid-template-columns:1.1fr .9fr;align-items:start}.hero-card,.content-card,.login-panel{border-radius:var(--radius-lg);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:radial-gradient(circle at 0 0,#d7bf7b0f,#0000 32%),linear-gradient(#12161d8f,#0c0f144d);border:1px solid #d7bf7b12;padding:28px;box-shadow:0 18px 50px #00000024}.hero-card,.content-card{position:relative}.hero-card:before,.content-card:before{content:"";border-radius:inherit;pointer-events:none;background:linear-gradient(#ffffff08,#0000 22% 78%,#d7bf7b08);position:absolute;inset:0}.hero-card h2{max-width:16ch;font-size:clamp(2rem,3vw,3.3rem)}.hero-card{padding-block:34px}.body-copy,.muted-copy{margin:0;line-height:1.7}.body-copy{color:var(--mist-50)}.muted-copy{color:#b4b1ab}.three-up{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.content-card{gap:16px;display:grid}.result-section{border-top:1px solid #d7bf7b29;gap:14px;padding-top:22px;display:grid}.result-summary-copy{color:#c5c0b5;margin:0;line-height:1.9}.inline-term-link{color:#e0c989f5;text-underline-offset:.18em;background:0 0;border:0;padding:0;-webkit-text-decoration:underline #e0c9896b;text-decoration:underline #e0c9896b;display:inline}.pattern-inline-list{flex-wrap:wrap;gap:10px;display:flex}.metric-inline-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.metric-inline-item{border-top:1px solid #d7bf7b1f;gap:4px;padding:10px 0;display:grid}.metric-inline-item span{color:#b4b1ab;font-size:.92rem}.metric-inline-item strong{color:var(--mist-50);font-size:1.15rem}.content-card-soft{box-shadow:none;background:linear-gradient(#11151c57,#0b0e1329);border-color:#d7bf7b0d}.compact-card{padding:20px}.recommendation-rail{grid-auto-columns:minmax(320px,420px);grid-auto-flow:column;gap:16px;padding-bottom:4px;display:grid;overflow-x:auto}.recommendation-peek-card{background:radial-gradient(circle at 0 0,#d7bf7b14,#0000 32%),linear-gradient(#12161d9e,#0c0f1466);border:1px solid #d7bf7b1a;border-radius:28px;gap:14px;padding:22px 22px 24px;display:grid}.recommendation-peek-top,.recommendation-peek-header{justify-content:space-between;align-items:start;gap:12px;display:flex}.recommendation-peek-reason{font-size:.96rem}.recommendation-peek-body{border-top:1px solid #d7bf7b1f;gap:12px;padding-top:10px;display:grid}.recommendation-detail-line{gap:6px;display:grid}.recommendation-cta{justify-self:start}.section-heading{gap:6px;display:grid}.section-heading h3{font-size:1.35rem}.primary-button{color:#0b0d11;background:linear-gradient(#e0c989 0%,#ad8338 100%);border:none;border-radius:999px;justify-content:center;align-items:center;gap:8px;width:fit-content;padding:14px 18px;font-weight:700;display:inline-flex;box-shadow:0 12px 30px #ad83383d}.primary-button:disabled{opacity:.72;cursor:wait}.login-shell{place-items:center;display:grid}.login-panel{grid-template-columns:1fr .88fr;gap:24px;width:min(960px,100%);display:grid}.brand-stack,.form-panel,.form-stack,.stack-list{gap:18px;display:grid}.field{color:#cbc5b8;gap:10px;display:grid}.field input,.field textarea,.field select{width:100%;color:var(--mist-50);background:#ffffff09;border:1px solid #d7bf7b24;border-radius:18px;padding:14px 16px}.field textarea{resize:vertical;min-height:140px}.choice-cluster{border:0;gap:14px;margin:0;padding:0;display:grid}.choice-cluster legend{color:#d4cdbf;font-weight:600}.choice-chip{border-radius:20px;padding:14px 16px;transition:all .16s;position:relative}.choice-chip input{opacity:0;position:absolute;inset:0}.choice-chip.is-selected{border-color:var(--line-strong);background:#d7bf7b1a}.practice-player-card{gap:18px}.practice-player-visual{border:1px solid var(--line-soft);background:radial-gradient(circle at top,#d7bf7b24,#0000 36%),linear-gradient(#14181ff5,#0a0d12fa);border-radius:24px;min-height:320px;position:relative;overflow:hidden}.practice-visual-image{object-fit:cover;width:100%;height:320px;display:block}.practice-visual-image.reduced-motion{animation:none!important;transform:none!important}.practice-visual-placeholder{color:#b4b1ab;place-items:center;min-height:320px;display:grid}.practice-visual-caption{color:#f7f2e6;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#090b0fad;border:1px solid #d7bf7b2e;border-radius:16px;padding:12px 14px;position:absolute;bottom:18px;left:18px;right:18px}.practice-timeline{background:#ffffff0f;border-radius:999px;height:10px;overflow:hidden}.practice-timeline-progress{background:linear-gradient(90deg,#e0c989 0%,#8e6d26 100%);border-radius:999px;height:100%;transition:width .18s linear}.practice-audio{width:100%}.practice-cue-list{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;display:grid}.practice-cue-chip{border:1px solid var(--line-soft);color:var(--mist-50);text-align:left;background:#ffffff0a;border-radius:16px;gap:4px;padding:12px 14px;display:grid}.practice-cue-chip small{color:#d7bf7bb3}.practice-cue-chip.is-active{border-color:var(--line-strong);background:#d7bf7b1f}.metric-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.metric-card,.pattern-chip,.linked-term{border-radius:18px;gap:6px;padding:14px 16px;display:grid}.metric-card strong,.pattern-chip strong{font-size:1.2rem}.score-pill,.delta-pill{color:var(--mist-100);border-radius:999px;padding:8px 12px;font-size:.9rem}.status-card,.error-copy{border-radius:18px;padding:16px 18px}.details-summary{cursor:pointer;color:var(--mist-100);font-weight:600;list-style:none}.details-summary::-webkit-details-marker{display:none}.practice-warning-card{background:linear-gradient(#2a1d0db8,#181410d1);border-color:#d7bf7b42}.linked-term-button{cursor:pointer;color:inherit;text-align:left}.drawer-backdrop,.modal-backdrop{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:20;background:#04060ab3;justify-items:end;display:grid;position:fixed;inset:0}.home-landing{place-items:center;min-height:calc(100vh - 180px);padding:6vh 0 10vh;display:grid}.home-landing-inner{text-align:center;justify-items:center;gap:22px;width:min(760px,100%);display:grid}.home-landing-title{letter-spacing:-.04em;text-wrap:balance;max-width:10ch;margin:0;font-family:Fraunces,Georgia,serif;font-size:clamp(3rem,6vw,5.8rem);font-weight:400;line-height:.95}.home-landing-copy{color:#c5c0b5;max-width:34rem;margin:0;font-size:1.05rem;line-height:1.95}.home-landing-actions{justify-content:center;padding-top:8px;display:flex}.home-primary-action{min-width:220px;min-height:56px;font-size:1rem}.home-subtle-note{color:#d7bf7ba8;letter-spacing:.04em;margin:8px 0 0;font-size:.9rem}.side-drawer{border-left:1px solid var(--line-soft);background:linear-gradient(#0d1016fa,#090b0ffa);align-content:start;gap:20px;width:min(420px,100%);height:100%;padding:24px;display:grid;box-shadow:-16px 0 50px #00000014}.drawer-header,.drawer-stack{gap:14px;display:grid}.drawer-link,.drawer-session-link{border:1px solid var(--line-soft);color:var(--mist-50);background:#ffffff09;border-radius:18px;gap:6px;padding:14px 16px;display:grid}.drawer-link.is-active{background:#d7bf7b1f}.drawer-session-list{gap:12px;max-height:52vh;display:grid;overflow-y:auto}.drawer-session-top{justify-content:space-between;align-items:center;gap:12px;display:flex}.drawer-logout{margin-top:auto}.modal-backdrop{place-items:center;padding:24px}.modal-panel{border:1px solid var(--line-soft);background:linear-gradient(#11151cfa,#0a0c11fa);border-radius:28px;gap:0;width:min(960px,100%);max-height:92vh;display:grid;overflow:hidden;box-shadow:0 24px 80px #0000002e}.modal-header{border-bottom:1px solid var(--line-soft);justify-content:space-between;align-items:center;gap:16px;padding:18px 22px;display:flex}.modal-body{padding:22px;overflow-y:auto}.term-dialog-image,.term-dialog-inline-image{border:1px solid var(--line-soft);object-fit:cover;border-radius:24px;width:100%;display:block}.term-dialog-image{max-height:360px}.term-dialog-gallery{gap:12px;display:grid}.term-detail-accordion>summary{margin-bottom:8px}.status-card{border:1px solid var(--line-soft);background:#ffffff0a}.error-copy{color:#f0d6c8;background:#7c381f38;margin:0}.mobile-dock{display:none}.field-readout{border-top:1px solid #5861521a;gap:8px;padding-top:8px;display:grid}@media (width<=960px){.topbar,.login-panel,.session-layout,.three-up,.metric-grid,.metric-inline-grid{grid-template-columns:1fr}.topbar{border-radius:28px;flex-direction:column;align-items:start}.topbar-actions{justify-content:space-between;width:100%}}@media (width<=720px){.screen-shell{padding:18px 18px 100px}.mobile-dock{border:1px solid var(--line-soft);box-shadow:var(--shadow-soft);z-index:2;background:#0b0e14eb;border-radius:999px;justify-content:space-around;padding:12px;display:flex;position:fixed;bottom:18px;left:18px;right:18px}.side-drawer{width:100%}.hero-card,.content-card,.login-panel{border-radius:24px;padding:22px}.hero-card h2{max-width:none;font-size:2.2rem}.recommendation-rail{grid-auto-columns:minmax(280px,88vw)}.home-landing{min-height:calc(100vh - 150px);padding-top:3vh}.home-landing-title{font-size:2.8rem}}
