@font-face{font-family:Geist;src:url(/landing/fonts/geist-variable.woff2) format("woff2-variations");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:Playfair Display;src:url(/landing/fonts/playfair-display-variable.woff2) format("woff2-variations");font-weight:400 900;font-style:normal;font-display:swap}:root{--text-scale: 1;--caption-scale: 1;--plot-text-scale: 1;--paper: #f4f1e9;--surface: #fbfaf7;--surface-edge: #efece4;--ink: #1f2329;--muted: #636770;--leader-line: #8b8f98;--rule: #d4d0c6;--rule-strong: #a9a49a;--navy-dark: #202d70;--hairline: #e7e3da;--grid-line: #e4e0d4;--axis-line: #2f343c;--tick-mark: #b7b2a6;--tick-label: #6b665b;--accent: #2b3a8c;--demand-curve: #34508c;--supply-curve: #a4453a;--tax-shifted-supply-curve: #c8742e;--equilibrium-marker: #2f343c;--demand-curve-keen: #1344ad;--supply-curve-keen: #cc2612;--tax-shifted-supply-curve-keen: #d66507;--frontier-curve-keen: #128980;--social-cost-curve-keen: #128980;--demand-curve-keenest: #0041cc;--supply-curve-keenest: #eb1800;--tax-shifted-supply-curve-keenest: #ff7400;--frontier-curve-keenest: #00a397;--social-cost-curve-keenest: #00a397;--tax-revenue: #7c5fa8;--deadweight-loss: #8a8578;--consumer-incidence: #34508c;--producer-incidence: #a4453a;--tax-wedge: #2f343c;--frontier-curve: #2b6f6a;--grown-frontier-curve: #c8742e;--attainable: #8b8f98;--unattainable: #8a8578;--spare-capacity: #a4453a;--growth-gained: #6f8f6a;--social-cost-curve: #2b6f6a;--welfare-loss: #2b6f6a;--external-cost-total: #4c7a3f;--external-benefit-total: var(--external-cost-total);--guide-line: #b7b2a6;--guide-line-strong: #736c5e;--label-ink: #2f343c;--interactive-hitbox: transparent;--reject: #d23b3b;--required: #a4453a;--font-sans: "Geist", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-display: "Playfair Display", Georgia, "Times New Roman", serif;--ease-quick: .14s;--ease-arrive: .32s;--ease-leave: .18s;--ease-carry: .46s;--ease-house: cubic-bezier(.22, 1, .36, 1);color-scheme:only light}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body,#root{height:100%}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow:hidden}html,body{overscroll-behavior-y:none}.app-shell{display:flex;flex-direction:column;height:100%;background:repeating-linear-gradient(to bottom,transparent 0,transparent 39px,rgba(31,35,41,.035) 39px,rgba(31,35,41,.035) 40px),var(--paper);user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}input,textarea,[contenteditable=true],.selectable{user-select:text;-webkit-user-select:text;-webkit-touch-callout:default}.app-bar{position:relative;display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:46px;padding:5px 18px;border-bottom:1px solid var(--navy-dark);background:var(--navy-dark)}.brand{flex:0 0 auto;display:flex;flex-direction:column;align-items:center;gap:1px;position:relative}.wordmark{color:#fff;font-family:var(--font-display);font-size:calc(16px * var(--text-scale));font-weight:700;line-height:1;letter-spacing:-.035em;text-decoration:none;position:relative}.brand__beta{color:var(--navy-dark);background:#fff;font-family:var(--font-display);font-size:calc(11px * var(--text-scale));font-weight:700;line-height:1;letter-spacing:.14em;text-transform:uppercase;padding:2px 5px;border-radius:0}.wordmark:after{content:"";position:absolute;inset:-9px 0}.bar-line{flex:1 1 auto;min-width:0;margin:0;color:#ffffffc7;font-size:calc(11px * var(--text-scale));line-height:14px;text-align:center;touch-action:pan-y}.bar-line__words{display:block;width:100%;margin:0;padding:0;border:0;background:none;color:inherit;font:inherit;text-align:inherit;cursor:pointer;position:relative}.bar-line__words:after{content:"";position:absolute;inset:-15px 0}.bar-line__words--plain{cursor:default}.bar-line__span{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden;animation:bar-line-rise .42s cubic-bezier(.22,1,.36,1) both}.bar-source{position:absolute;top:calc(100% + 8px);right:14px;left:14px;z-index:30;width:auto;max-width:360px;margin:0 auto;padding:13px 15px;border:1px solid var(--ink);border-radius:2px;background:var(--surface);box-shadow:6px 6px 0 var(--accent);color:var(--ink);text-align:left}.bar-source__claim{margin:0 0 9px;font-size:calc(13px * var(--text-scale));font-weight:600;line-height:1.35}.bar-source__why{margin:0 0 11px;color:var(--label-ink);font-size:calc(12.5px * var(--text-scale));line-height:1.5}.bar-source__where{display:flex;flex-direction:column;gap:2px;margin:0;color:var(--label-ink);font-size:calc(12px * var(--text-scale));line-height:1.4}.bar-source__pub{font-weight:600}.bar-source__link{display:inline-block;min-height:44px;padding:13px 0 0;color:var(--accent);font-size:calc(13px * var(--text-scale));font-weight:600;text-decoration:none}.bar-source__when{margin:2px 0 0;color:var(--label-ink);font-size:calc(11px * var(--text-scale))}.mode-dial{position:relative;flex:0 0 auto;display:flex;align-items:center}.mode-dial__dot{position:relative;width:22px;height:22px;padding:0;border:none;background:none;display:flex;align-items:center;justify-content:center;cursor:pointer;touch-action:manipulation}.mode-dial__dot:after{content:"";position:absolute;inset:-11px}.mode-dial__glyph{width:11px;height:11px;border-radius:50%;border:2px solid var(--muted);transition:border-color .16s ease,transform .16s ease}.mode-dial__dot:hover .mode-dial__glyph,.mode-dial__dot--open .mode-dial__glyph{border-color:var(--accent);transform:scale(1.15)}.app-bar .mode-dial__glyph{border-color:#ffffffb3}.app-bar .mode-dial__dot--open .mode-dial__glyph{border-color:#fff;background:#ffffff47}.mode-dial__sheet{position:absolute;top:calc(100% + 10px);right:0;z-index:20;min-width:208px;max-width:min(264px,calc(100vw - 24px));max-height:min(60vh,calc(100vh - 96px));display:flex;flex-direction:column;padding:6px;background:var(--surface);border:1px solid var(--ink);border-radius:2px;box-shadow:8px 8px 0 var(--accent);animation:mode-sheet-in .18s ease}.mode-dial__list{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;display:flex;flex-direction:column}.mode-dial__foot{flex:0 0 auto;display:flex;align-items:center;gap:8px;margin-top:4px;padding-top:4px;border-top:1px solid var(--hairline)}.mode-action--right{margin-left:auto}@keyframes mode-sheet-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}.mode-option{font:inherit;text-align:left;display:flex;flex-direction:column;gap:2px;padding:9px 11px;border:none;border-radius:2px;background:none;color:var(--ink);cursor:pointer;touch-action:manipulation;text-decoration:none}.mode-option:hover:not(:disabled){background:var(--surface-2, rgb(0 0 0 / .04))}.mode-option--active{background:#0000000d}.mode-option:disabled{cursor:default;opacity:.55}.mode-option--pic{flex-direction:row;align-items:center;gap:10px}.mode-option__text{display:flex;flex-direction:column;gap:2px;min-width:0}.mode-option__pic{flex:0 0 auto;width:40px;height:28px;display:block}.mode-option__pic svg{width:100%;height:100%}.mode-option__pic text{display:none}.mode-option__label{font-size:calc(14px * var(--text-scale));font-weight:600;display:flex;align-items:center;gap:7px}.mode-option__soon{font-size:calc(10px * var(--text-scale));font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);border:1px solid var(--hairline);border-radius:2px;padding:1px 6px;white-space:nowrap;flex-shrink:0}.mode-option__hint{font-size:calc(12px * var(--text-scale));color:var(--muted)}.mode-option__into{margin-left:auto;color:var(--muted);font-size:calc(14px * var(--text-scale));line-height:1}.mode-option[aria-disabled=true]{cursor:default;opacity:.55}.mode-option[aria-disabled=true]:hover{background:none}.mode-dial__heading{margin:0;padding:7px 11px 3px;font-size:calc(11px * var(--text-scale));font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.mode-dial__actions{display:flex;flex-direction:column;flex:0 0 auto}.mode-act{flex:0 0 auto}.mode-action{font:inherit;font-size:calc(13px * var(--text-scale));text-align:left;padding:9px 11px;border:none;border-radius:2px;background:none;color:var(--muted);cursor:pointer;touch-action:manipulation;display:flex;align-items:center;gap:9px}.mode-action:hover{color:var(--ink);background:#0000000a}.mode-action__mark{flex:0 0 auto;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.mode-action__mark-head{fill:currentColor;stroke:none}.mode-action__label{min-width:0}.mode-act__drawer{overflow:hidden;transition:height var(--ease-arrive) var(--ease-house)}.mode-act:not(.mode-act--asking) .mode-act__drawer{transition-duration:var(--ease-leave)}.mode-confirm{display:flex;gap:8px;padding:4px 11px 10px;opacity:0;transform:translateY(-5px);transition:opacity var(--ease-leave) var(--ease-house),transform var(--ease-leave) var(--ease-house)}.mode-act--asking .mode-confirm{opacity:1;transform:none;transition:opacity var(--ease-arrive) var(--ease-house),transform var(--ease-arrive) var(--ease-house)}.mode-confirm__keep,.mode-confirm__go{flex:1 1 0;min-height:38px;padding:8px 6px;border-radius:2px;font:inherit;font-size:calc(12.5px * var(--text-scale));font-weight:600;cursor:pointer;touch-action:manipulation}.mode-confirm__keep{border:1px solid var(--rule);background:var(--surface);color:var(--ink)}.mode-confirm__keep:hover{border-color:var(--accent);color:var(--accent)}.mode-confirm__go{border:1px solid var(--required);background:none;color:var(--required)}.mode-confirm__go:hover{background:color-mix(in srgb,var(--required) 10%,transparent)}.mode-action--gear{display:inline-flex;align-items:center;color:var(--accent)}.mode-action--gear:hover{color:var(--accent);background:#0000000f}.mode-action__gear{fill:none;stroke:currentColor;stroke-width:1.7;stroke-linejoin:round}@media(prefers-reduced-motion:reduce){.mode-dial__sheet{animation:none}.mode-dial__glyph{transition:none}}.lesson-progress{position:relative;height:2px;flex:0 0 auto;background:var(--rule);overflow:hidden}.lesson-progress span{display:block;height:100%;width:100%;transform-origin:left center;background:var(--accent);opacity:.55;transition:transform .42s cubic-bezier(.22,1,.36,1)}@media(prefers-reduced-motion:reduce){.lesson-progress span{transition:none}}.lesson-stage{position:relative;display:flex;flex-direction:column;height:100%;min-height:0}.bookend{position:absolute;left:50%;top:50%;z-index:15;transform:translate(-50%,-50%);width:min(340px,calc(100% - 28px));display:flex;flex-direction:column;gap:10px;text-align:left;padding:20px 20px 18px;border:1px solid var(--ink);border-radius:2px;background:var(--surface);box-shadow:6px 6px 0 var(--accent);animation:bookend-in .32s cubic-bezier(.22,1,.36,1) both;font:inherit;color:var(--ink)}.bookend--cover{cursor:pointer;touch-action:manipulation}.bookend__eyebrow{font-family:var(--font-display);font-size:calc(11px * var(--text-scale));font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--accent)}.bookend__title{font-family:var(--font-display);font-size:calc(30px * var(--text-scale));font-weight:600;line-height:1.15;letter-spacing:0}.bookend__line{font-size:calc(14px * var(--text-scale));line-height:1.45}.bookend__line--verdict{font-weight:600}.bookend__line--handoff{color:var(--muted)}.bookend__cue{font-size:calc(12px * var(--text-scale));color:var(--muted)}.bookend__minutes{font-size:calc(11px * var(--text-scale));color:var(--muted);opacity:.85}.bookend__takeaways{display:flex;flex-direction:column;gap:8px;margin:2px 0 0;padding:12px 0 0;list-style:none;border-top:1px solid var(--hairline)}.bookend__takeaways li{position:relative;padding-left:15px;font-size:calc(13px * var(--text-scale));line-height:1.4;animation:bookend-claim-in .3s ease both}.bookend__takeaways li:before{content:"";position:absolute;left:0;top:7px;width:5px;height:5px;border-radius:50%;background:var(--accent);opacity:.5}.bookend__actions{display:flex;gap:8px;align-items:center;margin-top:2px}.bookend__go,.bookend__again{font:inherit;font-size:calc(13px * var(--text-scale));padding:9px 14px;border-radius:2px;cursor:pointer;touch-action:manipulation}.bookend__go{border:none;background:var(--accent);color:#fff;font-weight:600}.bookend__again{border:1px solid var(--hairline);background:none;color:var(--muted)}.bookend__again:hover{color:var(--ink)}.bookend__why{appearance:none;border:none;background:none;font:inherit;color:inherit;text-align:left;padding:0;cursor:pointer;display:block;width:100%}.bookend__claim{display:block}.bookend__saywhy{display:block;margin-top:2px;font-size:calc(11px * var(--text-scale));color:var(--accent)}.bookend__because{display:block;margin-top:3px;font-size:calc(12px * var(--text-scale));color:var(--muted);animation:graph-fade-in .22s ease backwards}.bookend__why--open{cursor:default}.bookend__next{display:block;margin-top:6px;font-size:calc(13px * var(--text-scale));font-weight:600;color:var(--accent);text-align:center;position:relative}.bookend__next:after{content:"";position:absolute;inset:-13px 0 -16px}@media(prefers-reduced-motion:reduce){.bookend__because{animation:none}}@keyframes bookend-in{0%{opacity:0;transform:translate(-50%,calc(-50% + 10px)) scale(.985)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}@keyframes bookend-claim-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.bookend,.bookend__takeaways li{animation:none}}.coach{flex:0 0 auto;display:flex;align-items:center;gap:12px;height:72px;padding:0 16px;overflow:hidden;border-bottom:1px solid var(--ink);background:var(--surface)}.coach__words{flex:1 1 auto;min-width:0}.coach__text{margin:0;color:var(--ink);font-size:calc(13px * var(--text-scale));font-weight:600;line-height:17px}.coach__ask{margin:2px 0 0;color:var(--accent);font-size:calc(12px * var(--text-scale));line-height:16px}.coach__actions{display:flex;flex:0 0 auto;flex-direction:column;gap:4px}.coach__next{min-width:68px;min-height:34px;padding:6px 10px;border:1px solid var(--accent);border-radius:2px;background:var(--accent);color:#fff;font:inherit;font-size:calc(12px * var(--text-scale));font-weight:600;cursor:pointer}.coach__skip{min-width:68px;min-height:26px;padding:4px 10px;border:1px solid var(--hairline);border-radius:2px;background:transparent;color:var(--muted);font:inherit;font-size:calc(11px * var(--text-scale));cursor:pointer}.graph-stage{flex:1 1 auto;min-height:0;padding:12px}.hub-stage{flex:1 1 auto;min-height:0;overflow-y:auto;padding:0 20px 56px}.hub{display:flex;flex-direction:column;max-width:1080px;margin:0 auto}.feature{display:block;padding:22px 0 30px;color:var(--ink);text-align:center;text-decoration:none}.feature__pic{display:block;height:232px;margin-bottom:20px}.feature__pic svg{width:100%;height:100%}.feature__kind{display:block;color:var(--label-ink);font-size:calc(10px * var(--text-scale));font-weight:700;letter-spacing:.18em;text-transform:uppercase}.feature__title{display:block;margin-top:7px;font-family:var(--font-display);font-size:calc(38px * var(--text-scale));font-weight:600;letter-spacing:-.02em;line-height:1.02}.feature__meta{display:block;margin-top:8px;font-size:calc(13px * var(--text-scale))}.feature__go{display:inline-flex;align-items:center;gap:7px;margin-top:18px;padding:11px 20px;border-radius:2px;background:var(--accent);color:#fff;font-size:calc(14px * var(--text-scale));font-weight:600}.feature__arrow{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:transform .18s cubic-bezier(.22,1,.36,1)}a.feature:hover .feature__arrow,a.feature:focus-visible .feature__arrow{transform:translate(3px)}.hub-section{padding-top:30px;border-top:1px solid var(--rule-strong)}.section+.hub-section{margin-top:34px}.hub-section__title{margin:0;font-family:var(--font-display);font-size:calc(28px * var(--text-scale));font-weight:600;letter-spacing:-.015em;line-height:1.1}.hub-year__title{margin:26px 0 16px;color:var(--label-ink);font-size:calc(10px * var(--text-scale));font-weight:700;letter-spacing:.18em;text-transform:uppercase}.hub-year__empty{margin:0 0 6px;color:var(--label-ink);font-size:calc(13px * var(--text-scale));font-style:italic}.feature,.entry,.setup-card{-webkit-user-drag:none;touch-action:pan-y}.lesson-glyph,.lesson-glyph svg,.lesson-glyph svg *{pointer-events:none;touch-action:pan-y}.feature svg,.entry svg{-webkit-user-drag:none;pointer-events:none}.entry--family{width:100%;padding:0;border:0;background:none;font:inherit;text-align:left;cursor:pointer}.entry--family .entry__more{display:inline-block;width:5px;height:5px;margin-left:1px;vertical-align:2px;border-right:1.5px solid var(--label-ink);border-bottom:1.5px solid var(--label-ink);transform:rotate(45deg)}button.entry--family:hover .entry__pic,button.entry--family:focus-visible .entry__pic{transform:translateY(-3px)}.famwrap{position:fixed;inset:0;z-index:60;display:flex;align-items:center;justify-content:center;padding:24px 18px;background:#1f232961;overflow-y:auto}.fampanel{width:100%;max-width:560px;max-height:100%;overflow-y:auto;padding:26px 24px 20px;background:var(--paper);border:1px solid var(--rule);border-radius:2px;box-shadow:6px 6px #1f23291f}.fampanel__title{display:block;font-family:var(--font-display);font-size:calc(24px * var(--text-scale));font-weight:600;line-height:1.15}.fampanel__promise{display:block;margin:6px 0 20px;color:var(--label-ink);font-size:calc(13px * var(--text-scale))}.fampanel__close{display:block;margin:22px auto 0;padding:9px 20px;color:var(--ink);font:inherit;font-size:calc(14px * var(--text-scale));background:none;border:1px solid var(--rule);border-radius:2px;cursor:pointer}.fampanel__close:hover{border-color:var(--accent);color:var(--accent)}@media(prefers-reduced-motion:reduce){.report,.report--leaving,.report--leaving .report__card,.report__card{animation:none}.fampanel{transition:none!important}button.entry--family:hover .entry__pic,button.entry--family:focus-visible .entry__pic{transform:none}}.family-index{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;white-space:nowrap;border:0;clip-path:inset(50%)}.hub-report{margin:30px 0 4px;text-align:center}.hub-report__ask{padding:6px 4px;color:var(--label-ink);font:inherit;font-size:calc(12px * var(--text-scale));background:none;border:0;border-bottom:1px solid var(--rule);cursor:pointer}.hub-report__ask:hover,.hub-report__ask:focus-visible{color:var(--accent);border-bottom-color:var(--accent)}.report{position:fixed;inset:0;z-index:70;display:flex;align-items:center;justify-content:center;padding:24px 18px;background:#1f232961;overflow-y:auto;animation:report-ground-in .18s ease}.report--leaving{animation:report-ground-in .16s ease reverse both}@keyframes report-ground-in{0%{background:#1f232900}to{background:#1f232961}}@keyframes report-card-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.report__card{width:100%;max-width:460px;max-height:100%;overflow-y:auto;padding:24px 22px 20px;background:var(--paper);border:1px solid var(--rule);border-radius:2px;box-shadow:6px 6px #1f23291f;animation:report-card-in .22s cubic-bezier(.22,1,.36,1)}.report--leaving .report__card{animation:report-card-in .16s ease reverse both}@media(max-width:600px){.report{padding:0;align-items:stretch;background:var(--paper)}.report__card{max-width:none;min-height:100svh;padding:18px 18px 28px;border:0;border-radius:0;box-shadow:none}}.report__back{display:none}@media(max-width:600px){.report__back{display:inline-flex;align-items:center;gap:4px;margin:-4px 0 10px -6px;padding:8px 6px;font:inherit;font-size:calc(14px * var(--text-scale));color:var(--accent);background:none;border:0;cursor:pointer}}.report__title{margin:0 0 14px;font-family:var(--font-display);font-size:calc(22px * var(--text-scale));font-weight:600;line-height:1.15}.report__note{margin:0 0 18px;font-size:calc(14px * var(--text-scale))}.report__kinds{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:16px}.report__kind{padding:7px 12px;color:var(--ink);font:inherit;font-size:calc(12px * var(--text-scale));background:none;border:1px solid var(--rule);border-radius:2px;cursor:pointer}.report__kind--on{color:var(--paper);background:var(--accent);border-color:var(--accent)}.report__label{display:block;margin:12px 0 5px;color:var(--label-ink);font-size:calc(11px * var(--text-scale));letter-spacing:.03em;text-transform:uppercase}.report__required{margin-left:2px;color:var(--required);font-weight:700}.report__optional{text-transform:none;letter-spacing:0;opacity:.75}.report__box,.report__line,.report__pick{display:block;width:100%;padding:9px 10px;color:var(--ink);font:inherit;font-size:calc(14px * var(--text-scale));background:var(--paper);border:1px solid var(--rule);border-radius:2px}.report__box{resize:vertical;min-height:92px}.report__chosen{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;padding:9px 10px;color:var(--ink);font:inherit;font-size:calc(14px * var(--text-scale));text-align:left;background:var(--paper);border:1px solid var(--rule);border-radius:2px;cursor:pointer}.report__chosen:hover{border-color:var(--accent)}.report__chosen-cue{flex:0 0 auto;color:var(--accent);font-size:calc(12px * var(--text-scale))}.study{text-align:left;font:inherit;cursor:pointer}.study__hits{display:flex;flex-direction:column;max-height:34svh;overflow-y:auto;overscroll-behavior:contain;margin-top:6px;background:var(--paper);border:1px solid var(--accent);border-radius:2px}.study__hit{display:flex;flex-direction:column;gap:1px;padding:9px 11px;font:inherit;text-align:left;color:var(--ink);background:none;border:none;border-bottom:1px solid var(--hairline);cursor:pointer}.study__hit:last-child{border-bottom:none}.study__hit:hover{background:#0000000a}.study__hit-name{font-size:calc(14px * var(--text-scale));font-weight:600}.study__where{color:var(--muted);font-size:calc(12px * var(--text-scale))}.study__back{align-self:flex-start;margin-top:10px;padding:6px 2px;font:inherit;font-size:calc(13px * var(--text-scale));color:var(--label-ink);background:none;border:0;border-bottom:1px solid var(--rule);cursor:pointer}.study__back:hover,.study__back:focus-visible{color:var(--accent);border-bottom-color:var(--accent)}.choices{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:6px;margin-bottom:4px}.choice{display:flex;align-items:center;gap:9px;padding:9px 10px;font:inherit;font-size:calc(14px * var(--text-scale));text-align:left;color:var(--ink);background:var(--paper);border:1px solid var(--rule);border-radius:2px;cursor:pointer}.choice:hover{border-color:var(--accent)}.choice--on{color:var(--paper);background:var(--accent);border-color:var(--accent)}.choice__mark{flex:0 0 auto;display:inline-flex;color:var(--accent)}.choice--on .choice__mark{color:var(--paper)}.choice__label{min-width:0}.picto--apple{color:inherit}.picto--board{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:28px;height:22px;overflow:hidden}.picto--board img{width:100%;height:100%;object-fit:contain}:root[data-theme=dark] .picto--board img,:root[data-theme=night] .picto--board img{filter:drop-shadow(0 0 1px #fff) drop-shadow(0 0 1px #fff) drop-shadow(0 0 1px #fff)}.choice--on .picto--board img{filter:drop-shadow(0 0 1px #fff) drop-shadow(0 0 1px #fff) drop-shadow(0 0 1px #fff)}.picto__fallback{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.report__graphs{max-height:46svh;overflow-y:auto;overscroll-behavior:contain;display:flex;flex-direction:column;background:var(--paper);border:1px solid var(--accent);border-radius:2px}.report__graphs .mode-dial__foot{position:sticky;bottom:0;background:var(--paper)}.report__box:focus-visible,.report__line:focus-visible,.report__pick:focus-visible{border-color:var(--accent)}.report__trap{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;border:0;clip-path:inset(50%)}.report__context{margin:14px 0 0;color:var(--label-ink);font-size:calc(11px * var(--text-scale))}.report__failed,.report__why{margin:10px 0 0;color:var(--accent);font-size:calc(12px * var(--text-scale))}.report__instead{display:inline-block;margin:8px 0 0;color:var(--accent);font-size:calc(12px * var(--text-scale))}.report__feet{display:flex;gap:10px;justify-content:flex-end;margin-top:18px}.report__cancel,.report__send{padding:9px 18px;font:inherit;font-size:calc(14px * var(--text-scale));border-radius:2px;cursor:pointer}.report__cancel{color:var(--ink);background:none;border:1px solid var(--rule)}.report__send{color:var(--paper);background:var(--accent);border:1px solid var(--accent)}.report__send[disabled]{opacity:.45;cursor:default}.hub-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:28px 18px}.entry{display:block;min-height:56px;color:var(--ink);text-decoration:none}.entry__pic{display:block;height:104px;transition:transform .2s cubic-bezier(.22,1,.36,1)}.entry__pic svg{width:100%;height:100%}a.entry:hover .entry__pic,a.entry:focus-visible .entry__pic{transform:translateY(-3px)}.entry__title{display:block;margin-top:10px;font-size:calc(15px * var(--text-scale));font-weight:600;line-height:1.25;transition:color .16s ease-out}a.entry:hover .entry__title,a.entry:focus-visible .entry__title{color:var(--accent)}.entry__meta{display:flex;flex-wrap:wrap;gap:2px 9px;margin-top:4px;color:var(--label-ink);font-size:calc(11px * var(--text-scale));letter-spacing:.03em}.entry__place{color:var(--accent);font-weight:600}.entry__place--done{color:var(--label-ink);font-weight:600}.entry__pic text,.feature__pic text{display:none}.planned-list{display:flex;flex-direction:column;margin-top:26px;border-top:1px solid var(--hairline)}.planned{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:11px 0;border-bottom:1px solid var(--hairline)}.planned__title{color:var(--label-ink);font-size:calc(13px * var(--text-scale))}.planned__soon{flex:0 0 auto;color:var(--muted);font-size:calc(9px * var(--text-scale));font-weight:700;letter-spacing:.14em;text-transform:uppercase}.hub-group{margin-top:30px}.hub-group__title{display:block;margin-bottom:16px;font-size:calc(15px * var(--text-scale));font-weight:600}.setup{display:grid;grid-template-columns:1fr;gap:12px;margin-bottom:34px}.setup-card{display:flex;flex-direction:column;gap:2px;padding:15px 16px;border:1px solid var(--ink);border-radius:2px;background:var(--surface);box-shadow:5px 5px 0 var(--accent);color:var(--ink);text-decoration:none}.setup-card__title{color:var(--accent);font-size:calc(16px * var(--text-scale));font-weight:600}.setup-card__line{color:var(--label-ink);font-size:calc(13px * var(--text-scale))}button.spread-card{width:100%;font:inherit;text-align:left;cursor:pointer;touch-action:manipulation}.spread-card__heart{width:.95em;height:.95em;margin-right:7px;vertical-align:-.08em;fill:var(--accent)}.spread-card__foot{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:4px 12px;margin-top:8px}.spread-card__count{color:var(--ink);font-size:calc(13px * var(--text-scale));font-weight:600}.spread-card__go{color:var(--accent);font-size:calc(13px * var(--text-scale));font-weight:600}.setup--done{margin:44px 0 0}.setup--done .setup-card{border-color:var(--hairline);background:transparent;box-shadow:none}.setup--done .setup-card__title,.setup--done .setup-card__line{color:var(--label-ink)}.install__done{display:flex;align-items:center;gap:9px;min-height:44px;margin-top:4px;padding-top:12px;border-top:1px solid var(--hairline);color:var(--label-ink);font-size:calc(13px * var(--text-scale));cursor:pointer}.install__done input{width:17px;height:17px;accent-color:var(--accent);cursor:pointer}.install__summary{display:flex;flex-direction:column;gap:2px;cursor:pointer;list-style:none}.install__summary::-webkit-details-marker{display:none}.install__title{color:var(--ink);font-size:calc(15px * var(--text-scale));font-weight:600}.install__hint{color:var(--label-ink);font-size:calc(12px * var(--text-scale))}.install__routes{display:flex;flex-direction:column;margin-top:14px;max-width:520px}.install__pick{min-height:44px;padding:11px 0;border:0;border-top:1px solid var(--hairline);border-radius:0;background:transparent;color:var(--label-ink);font:inherit;font-size:calc(13px * var(--text-scale));font-weight:600;text-align:left;cursor:pointer}.install__pick--open{color:var(--accent)}.install__steps{margin:2px 0 12px;padding-left:20px;color:var(--label-ink);font-size:calc(13px * var(--text-scale));line-height:1.55}.install__steps li{margin-bottom:5px}.install__instead{margin:2px 0 12px;color:var(--label-ink);font-size:calc(13px * var(--text-scale));line-height:1.55}.install__note{margin:4px 0 10px;max-width:520px;color:var(--label-ink);font-size:calc(13px * var(--text-scale));line-height:1.55}@media(min-width:620px){.hub-stage{padding:0 32px 64px}.feature{display:grid;grid-template-columns:1.05fr 1fr;gap:40px;align-items:center;padding:34px 0 44px;text-align:left}.feature__pic{height:290px;margin-bottom:0}.feature__title{font-size:calc(46px * var(--text-scale))}.hub-grid{grid-template-columns:repeat(3,1fr);gap:34px 24px}.setup{grid-template-columns:1fr 1fr;gap:16px;align-items:start}.entry__pic{height:124px}.hub-section__title{font-size:calc(34px * var(--text-scale))}}@media(min-width:900px){.hub-grid{grid-template-columns:repeat(4,1fr)}.feature__title{font-size:calc(54px * var(--text-scale))}}@media(prefers-reduced-motion:reduce){.entry__pic,.entry__title,.feature__arrow{transition:none}a.entry:hover .entry__pic,a.entry:focus-visible .entry__pic{transform:none}.bar-line__span{animation:none}}.graph-area{display:flex;flex-direction:column;width:100%;height:100%;gap:8px}.graph-frame{flex:1 1 auto;min-height:0;width:100%;display:flex;align-items:center;justify-content:center;position:relative;overscroll-behavior:none}@view-transition{navigation:auto}::view-transition-group(lesson-picture){animation-duration:var(--ease-carry);animation-timing-function:var(--ease-house)}::view-transition-old(root),::view-transition-new(root){animation-duration:var(--ease-arrive);animation-timing-function:ease}@media(prefers-reduced-motion:reduce){::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}}[data-reveal-armed] [data-arrive][data-watching]{opacity:0;transform:translateY(10px)}[data-reveal-armed] [data-arrive][data-arrived]{opacity:1;transform:none;transition:opacity var(--ease-arrive) ease-out var(--arrive-delay, 0ms),transform var(--ease-arrive) var(--ease-house) var(--arrive-delay, 0ms)}[data-reveal-armed] [data-arrive][data-watching]:not([data-arrived]) .entry__pic .curve,[data-reveal-armed] [data-arrive][data-watching]:not([data-arrived]) .entry__pic .intersection,[data-reveal-armed] [data-arrive][data-watching]:not([data-arrived]) .feature__pic .curve,[data-reveal-armed] [data-arrive][data-watching]:not([data-arrived]) .feature__pic .intersection{animation-play-state:paused}[data-reveal-armed] [data-arrive][data-arrived] .entry__pic .curve,[data-reveal-armed] [data-arrive][data-arrived] .entry__pic .intersection,[data-reveal-armed] [data-arrive][data-arrived] .feature__pic .curve,[data-reveal-armed] [data-arrive][data-arrived] .feature__pic .intersection{animation-play-state:running;animation-delay:calc(var(--arrive-delay, 0ms) + .18s)}.entry,.feature,.setup-card{transition:transform var(--ease-quick) var(--ease-house)}.entry:active,.feature:active,.setup-card:active{transform:scale(.985)}.entry__place--fresh{animation:place-lands .52s var(--ease-house) .22s backwards}@keyframes place-lands{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}@keyframes bar-line-rise{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:none}}.bar-source{animation:bar-source-in var(--ease-arrive) var(--ease-house)}.bar-source--leaving{animation:bar-source-in var(--ease-leave) ease reverse both}@keyframes bar-source-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}.mode-dial__sheet--leaving{animation:mode-sheet-in var(--ease-leave) ease reverse both}.famwrap{animation:famwrap-in var(--ease-quick) ease}.famwrap--leaving{animation:famwrap-in var(--ease-leave) ease reverse both}.famwrap--leaving .fampanel{animation:fampanel-out var(--ease-leave) ease both}@keyframes famwrap-in{0%{background:#1f232900}to{background:#1f232961}}@keyframes fampanel-out{0%{opacity:1;transform:none}to{opacity:0;transform:scale(.97)}}@media(prefers-reduced-motion:reduce){[data-reveal-armed] [data-arrive][data-watching],[data-reveal-armed] [data-arrive][data-arrived]{opacity:1;transform:none;transition:none}[data-reveal-armed] [data-arrive][data-watching]:not([data-arrived]) .entry__pic .curve,[data-reveal-armed] [data-arrive][data-watching]:not([data-arrived]) .entry__pic .intersection,[data-reveal-armed] [data-arrive][data-watching]:not([data-arrived]) .feature__pic .curve,[data-reveal-armed] [data-arrive][data-watching]:not([data-arrived]) .feature__pic .intersection,[data-reveal-armed] [data-arrive][data-arrived] .entry__pic .curve,[data-reveal-armed] [data-arrive][data-arrived] .entry__pic .intersection,[data-reveal-armed] [data-arrive][data-arrived] .feature__pic .curve,[data-reveal-armed] [data-arrive][data-arrived] .feature__pic .intersection{animation:none;animation-play-state:running;animation-delay:0ms}.entry,.feature,.setup-card{transition:none}.entry:active,.feature:active,.setup-card:active{transform:none}.entry__place--fresh,.bar-source,.bar-source--leaving,.mode-dial__sheet--leaving,.famwrap,.famwrap--leaving,.famwrap--leaving .fampanel{animation:none}}.answer-sheet{position:absolute;left:0;right:0;bottom:0;display:flex;flex-direction:column;gap:2px;padding:6px 10px 8px;background:var(--surface);border-top:1px solid var(--hairline);font-family:var(--font-sans);z-index:3}.answer-sheet__head{flex:0 0 auto;display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:2px 8px}.answer-sheet__title{flex:0 0 auto;font-size:calc(10px * var(--text-scale));font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.answer-sheet__line--ao1,.answer-sheet__key-item--ao1{--ao-ink: #5b6470;--ao-wash: rgb(91 100 112 / .16)}.answer-sheet__line--ao2,.answer-sheet__key-item--ao2{--ao-ink: #c96a12;--ao-wash: rgb(212 119 32 / .2)}.answer-sheet__line--ao3,.answer-sheet__key-item--ao3{--ao-ink: #2f4194;--ao-wash: rgb(47 65 148 / .13)}.answer-sheet__line--ao4,.answer-sheet__key-item--ao4{--ao-ink: #2e8b57;--ao-wash: rgb(46 139 87 / .17)}:root[data-theme=dark] .answer-sheet__line--ao1,:root[data-theme=dark] .answer-sheet__key-item--ao1{--ao-ink: #6f7987;--ao-wash: rgb(160 170 185 / .2)}:root[data-theme=dark] .answer-sheet__line--ao2,:root[data-theme=dark] .answer-sheet__key-item--ao2{--ao-ink: #b85f0e;--ao-wash: rgb(232 150 70 / .24)}:root[data-theme=dark] .answer-sheet__line--ao3,:root[data-theme=dark] .answer-sheet__key-item--ao3{--ao-ink: #4a5cb8;--ao-wash: rgb(130 150 230 / .24)}:root[data-theme=dark] .answer-sheet__line--ao4,:root[data-theme=dark] .answer-sheet__key-item--ao4{--ao-ink: #2a7d4f;--ao-wash: rgb(90 190 130 / .2)}.answer-sheet__said,.answer-sheet__typed{background:var(--ao-wash, transparent)}.answer-sheet__ao{display:inline-block;margin-right:3px;padding:0 3px;border-radius:3px;font-size:calc(8.5px * var(--text-scale));font-weight:700;letter-spacing:.03em;line-height:1.5;vertical-align:1px;color:#fff;background:var(--ao-ink)}.answer-sheet__key{display:flex;flex-wrap:wrap;gap:2px 8px;font-size:calc(9px * var(--text-scale));font-weight:600;color:var(--muted)}.answer-sheet__key-item{display:inline-flex;align-items:baseline}.answer-sheet__scroll{flex:1 1 auto;min-width:0;min-height:0;height:calc(4 * 1.45 * 12px * var(--text-scale));overflow-y:auto;overscroll-behavior:contain}.answer-sheet__body{flex:1 1 auto;min-height:0;display:flex;align-items:stretch;gap:2px}.answer-sheet__back,.answer-sheet__forward{flex:0 0 26px;min-height:44px;display:flex;align-items:center;justify-content:center;padding:0;border:none;background:none;font:inherit;font-size:calc(15px * var(--caption-scale));font-weight:700;line-height:1;color:var(--accent);cursor:pointer;touch-action:manipulation}.answer-sheet__back--spent,.answer-sheet__forward--spent{cursor:default;opacity:.25}.answer-sheet__chevron{display:inline-block}.answer-sheet__scroll--open{height:auto;max-height:none}.answer-sheet__typing{display:inline}.answer-sheet__rest{visibility:hidden}.answer-sheet__para{margin:0;font-size:calc(12px * var(--text-scale));line-height:1.45;color:var(--ink)}.answer-sheet__line{color:color-mix(in srgb,var(--ink) 62%,var(--surface))}.answer-sheet__line--fresh{color:var(--ink);font-weight:500}.answer-sheet--complete .answer-sheet__line{color:var(--ink)}.reveal-controls{flex:0 0 auto;display:flex;align-items:center;justify-content:center;gap:12px;padding:2px 0 4px}.reveal-controls__btn{font:inherit;font-size:calc(13px * var(--text-scale));font-weight:600;color:var(--ink);background:var(--surface);border:1px solid var(--hairline);border-radius:2px;padding:6px 16px;cursor:pointer;touch-action:manipulation;transition:background .12s ease,border-color .12s ease,opacity .12s ease}.reveal-controls__btn:hover:not(:disabled){border-color:var(--accent)}.reveal-controls__btn:disabled{opacity:.4;cursor:default}.reveal-controls__btn--next:not(:disabled){color:var(--surface);background:var(--accent);border-color:var(--accent)}.reveal-controls__progress{font-size:calc(12px * var(--text-scale));font-variant-numeric:tabular-nums;color:var(--muted);min-width:34px;text-align:center}.guided-callout{position:absolute;left:50%;top:22px;transform:translate(-50%);width:max-content;max-width:min(360px,calc(100% - 48px));padding:7px 12px;background:var(--surface);border:1px solid var(--rule-strong);border-radius:2px;box-shadow:none;transition:left .42s ease,top .42s ease,transform .42s ease,opacity .18s ease}@supports (background: color-mix(in srgb,red 50%,transparent)){.guided-callout{background:color-mix(in srgb,var(--surface) 88%,transparent)}}.lesson-stage--bookend .guided-callout{opacity:0;visibility:hidden;pointer-events:none}.guided-callout__subject{position:absolute;left:50%;top:0;transform:translate(-50%,-50%);max-width:calc(100% - 24px);padding:3px 12px;border-radius:2px;background:var(--navy-dark);color:#fff;font-family:var(--font-display);font-size:calc(13px * var(--text-scale));font-weight:700;text-transform:uppercase;letter-spacing:.08em;line-height:1.5;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;pointer-events:none}.guided-callout--subdued{opacity:.25;pointer-events:none}.guided-prompt{margin:0;padding:0;text-align:center;font-size:calc(13px * var(--caption-scale));font-weight:500;line-height:1.35;color:var(--ink);text-wrap:wrap}.guided-prompt--settled{animation:caption-in .26s ease backwards}@keyframes caption-in{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.guided-prompt,.guided-prompt--settled{animation:none}.guided-callout{transition:none}}button.guided-prompt{font:inherit;font-size:calc(13px * var(--caption-scale));font-weight:500;background:none;border:none;cursor:pointer;touch-action:manipulation;position:relative}.guided-prompt__chevron{flex:0 0 auto;margin-left:7px;font-size:calc(15px * var(--caption-scale));font-weight:700;line-height:1;color:var(--accent);animation:guided-chevron 1.6s ease-in-out infinite}@keyframes guided-chevron{0%,to{opacity:.45;transform:translate(0)}50%{opacity:1;transform:translate(2px)}}@media(prefers-reduced-motion:reduce){.guided-prompt__chevron{animation:none;opacity:.8}}.guided-caption-row{display:flex;align-items:stretch;gap:4px}.guided-caption-row .guided-prompt{flex:1;display:flex;align-items:center;justify-content:center}.guided-callout__subject+.guided-caption-row{margin-top:14px}.guided-prompt__text{flex:1;text-align:center}.guided-prompt__through{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0;font:inherit;background:none;color:inherit}.guided-prompt__through:focus{position:static;width:auto;height:auto;min-height:44px;padding:10px 16px;margin-top:8px;overflow:visible;clip-path:none;border:1px solid var(--accent);border-radius:2px;background:var(--surface);color:var(--accent);font-size:calc(13px * var(--caption-scale));font-weight:600;cursor:pointer}.guided-prompt__type{position:relative;display:block}.guided-prompt__ghost{visibility:hidden}.guided-prompt__live{position:absolute;inset:0}@property --said{syntax: "<number>"; inherits: false; initial-value: 0;}.lyric-word{--said: 0;opacity:calc(.3 + .7 * var(--said));transition:--said .14s linear}@supports ((background-clip: text) or (-webkit-background-clip: text)) and (color: color-mix(in srgb,red 50%,blue)){.lyric-word{opacity:1;background-image:linear-gradient(90deg,currentColor calc(var(--said) * (100% + .9em) - .9em),color-mix(in srgb,currentColor 30%,transparent) calc(var(--said) * (100% + .9em)));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.guided-prompt__back{flex:0 0 18px;font:inherit;font-size:calc(15px * var(--caption-scale));font-weight:700;line-height:1;color:var(--accent);background:none;border:none;padding:0;cursor:pointer;touch-action:manipulation;display:flex;align-items:center;justify-content:center;position:relative}.guided-prompt__back--spent{cursor:default;opacity:.25}.guided-prompt__back:after{content:"";position:absolute;inset:-10px -4px -10px -16px}button.guided-prompt:after{content:"";position:absolute;inset:-10px -16px -10px 0}button.guided-prompt__back:hover{opacity:.7}.explore-rail{position:relative;flex:0 0 auto;display:flex;align-items:center;gap:8px;padding:4px 12px calc(env(safe-area-inset-bottom,0px) + 20px);touch-action:pan-x}.explore-rail__handle{position:absolute;top:3px;left:50%;transform:translate(-50%);width:36px;height:4px;border-radius:999px;background:var(--hairline);pointer-events:none}.explore-rail>.explore-chip--family{flex:0 0 auto;order:-1}.explore-rail__row{flex:1;display:flex;align-items:center;gap:6px;padding:6px 0;overflow-x:auto;touch-action:pan-x;transition:transform .18s ease;scrollbar-width:none;-webkit-mask-image:linear-gradient(90deg,transparent,#000 14px,#000 86%,transparent);mask-image:linear-gradient(90deg,transparent,#000 14px,#000 86%,transparent);animation:rail-in .24s ease}.explore-rail__row::-webkit-scrollbar{display:none}.explore-rail__stage{flex:1;min-width:0;display:grid;perspective:520px}.explore-rail__stage>.explore-rail__row{grid-area:1 / 1;min-width:0}.explore-rail__row--parked{visibility:hidden}@keyframes rail-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.explore-chip{flex:0 0 auto;font:inherit;font-size:calc(13px * var(--text-scale));font-weight:500;padding:8px 14px;height:35px;line-height:17px;border-radius:2px;border:1px solid var(--rule);background:var(--surface);color:var(--ink);cursor:pointer;touch-action:pan-x;white-space:nowrap;position:relative;transition:transform var(--ease-quick) var(--ease-house)}.explore-chip:after{content:"";position:absolute;inset:-6px 0}.explore-chip:active{transform:scale(.96)}@media(prefers-reduced-motion:reduce){.explore-chip{transition:none}.explore-chip:active{transform:none}}.explore-chip--active{background:var(--accent);border-color:var(--accent);color:#fff}.explore-chip--family{color:var(--muted)}.explore-chip__tag{margin-left:5px;padding:1px 4px;border-radius:4px;font-size:calc(9px * var(--text-scale));font-weight:700;letter-spacing:.05em;background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent)}.explore-chip--active .explore-chip__tag{background:#ffffff38;color:#fff}.explore-rail__coin{flex:0 0 auto;display:grid;padding:0;border:0;background:none;font:inherit;cursor:pointer;touch-action:pan-x;perspective:520px}.explore-rail__coin>.explore-chip{grid-area:1 / 1;transition:none}.explore-rail__coin>.explore-chip:active{transform:none}.explore-rail__coinface--parked{visibility:hidden}.explore-rail>.explore-chip--home{flex:0 0 auto;order:1}.explore-rail--inert{opacity:.4;pointer-events:none;transition:opacity .2s ease}.explore-chip--cue{border-color:var(--accent);color:var(--accent);animation:chip-cue 1.9s ease-in-out 3}@keyframes chip-cue{0%,to{box-shadow:0 0 #2b3a8c00}45%{box-shadow:0 0 0 4px #2b3a8c21}}@media(prefers-reduced-motion:reduce){.explore-chip--cue{animation:none}}@media(prefers-reduced-motion:reduce){.explore-rail__row{animation:none;transition:none}}.leader-svg{position:absolute;left:0;top:0;pointer-events:none;overflow:visible;animation:graph-fade-in .26s ease backwards;transition:opacity .18s ease}.leader-svg--subdued{opacity:0}.leader-path{fill:none;stroke:var(--leader-line);stroke-width:1;stroke-linecap:round;opacity:.55}.leader-dot{fill:none;stroke:var(--leader-line);stroke-width:1;opacity:.75}.guided-callout--miss{border-color:color-mix(in srgb,var(--accent) 35%,var(--hairline));pointer-events:none;animation:graph-fade-in .22s ease backwards}.guided-callout--leaving{pointer-events:none;animation:callout-leaves var(--ease-leave) ease both}@keyframes callout-leaves{0%{opacity:1}to{opacity:0}}@media(prefers-reduced-motion:reduce){.guided-callout--miss,.guided-callout--leaving{animation:none}}.guided-callout--miss-offering{pointer-events:auto}.guided-miss__show{font:inherit;font-size:calc(12px * var(--text-scale));font-weight:600;margin-top:6px;padding:7px 14px;border:none;border-radius:2px;background:var(--accent);color:#fff;cursor:pointer;touch-action:manipulation}.guided-callout--symbol{appearance:none;font:inherit;color:inherit;text-align:center;cursor:pointer;display:block;border-color:color-mix(in srgb,var(--accent) 35%,var(--hairline));animation:graph-fade-in .22s ease backwards}.symbol-meaning__term{display:block;font-size:calc(11px * var(--text-scale));font-weight:700;letter-spacing:.06em;color:var(--accent);margin-bottom:2px}.symbol-meaning__line{display:block}.symbol-meaning__line+.symbol-meaning__line{margin-top:3px}.symbol-meaning__explain{display:block;width:100%;min-height:44px;margin-top:8px;padding:8px 12px;border:1px solid var(--accent);border-radius:2px;background:color-mix(in srgb,var(--accent) 8%,transparent);color:var(--accent);font:inherit;font-size:13px;font-weight:600;cursor:pointer}.guided-callout--symbol{cursor:pointer}@media(prefers-reduced-motion:reduce){.guided-callout--symbol{animation:none}}.symbol-tap{fill:transparent;stroke:none;pointer-events:all;cursor:pointer}.label-underline{stroke:var(--label-ink);stroke-width:1;stroke-dasharray:1 3;stroke-linecap:round;opacity:.55;pointer-events:none}@media(prefers-reduced-motion:reduce){.leader-svg{animation:none}}@media(max-width:560px){.app-bar{padding:6px 14px}.graph-stage{padding:4px 6px 0}.graph-area{gap:4px}}.graph-svg{display:block;max-width:100%;max-height:100%;touch-action:none;overscroll-behavior:none;background:var(--paper);box-shadow:0 0 0 12px var(--paper)}@media(orientation:landscape)and (max-height:500px){.app-shell{padding-left:env(safe-area-inset-left,0px);padding-right:env(safe-area-inset-right,0px)}.app-bar{min-height:36px;margin-left:calc(0px - env(safe-area-inset-left,0px));margin-right:calc(0px - env(safe-area-inset-right,0px));padding:2px calc(18px + env(safe-area-inset-right,0px)) 2px calc(18px + env(safe-area-inset-left,0px))}.graph-stage{padding:4px 12px 0}.graph-area{gap:4px}.graph-svg{box-shadow:0 0 0 4px var(--paper)}}.grid__line{stroke:var(--grid-line);stroke-width:1;shape-rendering:crispEdges}.axis__line{stroke:var(--axis-line);stroke-width:1.5;shape-rendering:crispEdges}.axis__tick{stroke:var(--tick-mark);stroke-width:1;shape-rendering:crispEdges}.axis__tick-label{fill:var(--tick-label);font-size:calc(11px * var(--plot-text-scale));font-variant-numeric:tabular-nums}.axis__tick-label--x{text-anchor:middle}.axis__tick-label--y{text-anchor:end}.axis__title{fill:var(--ink);font-size:calc(14px * var(--plot-text-scale));font-weight:600}.panel__title{fill:var(--label-ink);font-size:calc(12px * var(--text-scale));font-weight:600;letter-spacing:.02em}.axis__title--arrives{transform-box:fill-box;transform-origin:center;animation:axis-title-in .52s cubic-bezier(.22,1,.36,1) backwards}@keyframes axis-title-in{0%{opacity:0;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}.axis__arrow{fill:var(--axis-line)}.axis__origin{fill:var(--muted);font-size:calc(12px * var(--plot-text-scale));text-anchor:end}.curve{fill:none;stroke-width:2.25;stroke-linecap:round;stroke-linejoin:round}.curve--demand_curve,.curve--shifted_demand_curve{stroke:var(--demand-curve)}.curve--supply_curve,.curve--shifted_supply_curve{stroke:var(--supply-curve)}.curve--tax_shifted_supply_curve{stroke:var(--tax-shifted-supply-curve)}.curve--frontier_curve{stroke:var(--frontier-curve)}.curve--grown_frontier_curve{stroke:var(--grown-frontier-curve)}.curve--social_cost_curve,.curve--social_benefit_curve,.curve--informed_demand_curve{stroke:var(--social-cost-curve)}.intersections{pointer-events:none}.intersection--equilibrium_marker{fill:var(--equilibrium-marker);stroke:var(--surface);stroke-width:1.5}.intersection__dot{fill:inherit;stroke:inherit;stroke-width:inherit}.ring-arc{fill:none;stroke-width:2.2;stroke-linecap:butt}.ring-arc--demand_curve,.ring-arc--shifted_demand_curve{stroke:var(--demand-curve-keen)}.ring-arc--supply_curve,.ring-arc--shifted_supply_curve{stroke:var(--supply-curve-keen)}.ring-arc--tax_shifted_supply_curve{stroke:var(--tax-shifted-supply-curve-keen)}.ring-arc--frontier_curve,.ring-arc--grown_frontier_curve{stroke:var(--frontier-curve-keen)}.ring-arc--social_cost_curve,.ring-arc--social_benefit_curve,.ring-arc--informed_demand_curve{stroke:var(--social-cost-curve-keen)}.ring-moving{fill:none;stroke-width:2.2;animation:ring-lands var(--travel-ms, .7s) ease-out both}@keyframes ring-lands{0%,88%{opacity:1}to{opacity:0}}.ring-moving--demand_curve,.ring-moving--shifted_demand_curve{stroke:var(--demand-curve-keenest)}.ring-moving--supply_curve,.ring-moving--shifted_supply_curve{stroke:var(--supply-curve-keenest)}.ring-moving--tax_shifted_supply_curve{stroke:var(--tax-shifted-supply-curve-keenest)}.ring-moving--frontier_curve,.ring-moving--grown_frontier_curve{stroke:var(--frontier-curve-keenest)}.ring-moving--social_cost_curve,.ring-moving--social_benefit_curve,.ring-moving--informed_demand_curve{stroke:var(--social-cost-curve-keenest)}.region{stroke:currentColor;stroke-opacity:.55;stroke-width:1;fill-opacity:.28;transform-box:fill-box;transform-origin:50% 0%}.region--tax_revenue{color:var(--tax-revenue)}.region--deadweight_loss{color:var(--deadweight-loss)}.region--consumer_incidence{color:var(--consumer-incidence)}.region--producer_incidence{color:var(--producer-incidence)}.region--tax_revenue{fill:var(--tax-revenue)}.region--deadweight_loss{fill:var(--deadweight-loss)}.region--consumer_incidence{fill:var(--consumer-incidence)}.region--producer_incidence{fill:var(--producer-incidence)}.region--consumer_surplus{color:var(--consumer-incidence)}.region--producer_surplus{color:var(--producer-incidence)}.region--consumer_surplus_change,.region--consumer_deadweight{color:var(--consumer-incidence)}.region--producer_surplus_change,.region--producer_deadweight{color:var(--producer-incidence)}.region--consumer_surplus,.region--consumer_surplus_change,.region--consumer_deadweight{fill:var(--consumer-incidence);stroke:var(--consumer-incidence);stroke-width:1.5;stroke-dasharray:5 4}.region--producer_surplus,.region--producer_surplus_change,.region--producer_deadweight{fill:var(--producer-incidence);stroke:var(--producer-incidence);stroke-width:1.5;stroke-dasharray:5 4}.region--welfare_loss{color:var(--welfare-loss)}.region--external_cost_total{color:var(--external-cost-total)}.region--external_benefit_total{color:var(--external-benefit-total)}.region--welfare_loss{fill:var(--welfare-loss);stroke:var(--welfare-loss)}.region--external_cost_total{fill:var(--external-cost-total);stroke:var(--external-cost-total)}.region--external_benefit_total{fill:var(--external-benefit-total);stroke:var(--external-benefit-total)}.region--attainable{color:var(--attainable)}.region--attainable{fill:var(--attainable);stroke:var(--attainable);fill-opacity:.1}.region--unattainable{color:var(--unattainable)}.region--unattainable{stroke:var(--unattainable)}.region--spare_capacity{color:var(--spare-capacity)}.region--spare_capacity{fill:var(--spare-capacity);stroke:var(--spare-capacity)}.region--growth_gained{color:var(--growth-gained)}.region--growth_gained{fill:var(--growth-gained);stroke:var(--growth-gained)}.region--producer_revenue{color:var(--producer-incidence)}.region--producer_revenue{fill:var(--producer-incidence);stroke:var(--producer-incidence);fill-opacity:.14}.region--producer_take{color:var(--producer-incidence)}.region--producer_take{fill:var(--producer-incidence);stroke:var(--producer-incidence);fill-opacity:.14}.region--consumer_spend{color:var(--consumer-incidence)}.region--consumer_spend{fill:var(--consumer-incidence)}.region--intervention_cost{color:var(--tax-revenue)}.region--intervention_cost{fill:var(--tax-revenue)}.region--consumer_gain{color:var(--consumer-incidence)}.region--consumer_gain{fill:var(--consumer-incidence)}.region--lost_revenue{color:var(--producer-incidence)}.region--lost_revenue{fill:var(--producer-incidence);stroke:var(--producer-incidence)}.region--total_revenue{color:var(--producer-incidence)}.region--total_revenue{fill:var(--producer-incidence);stroke:var(--producer-incidence);fill-opacity:.14}.region--revenue_gained{color:var(--consumer-incidence)}.region--revenue_gained{fill:var(--consumer-incidence);stroke:var(--consumer-incidence)}.region--revenue_lost{color:var(--producer-incidence)}.region--revenue_lost{fill:var(--producer-incidence);stroke:var(--producer-incidence)}.region--wage_bill{color:var(--producer-incidence)}.region--wage_bill{fill:var(--producer-incidence);stroke:var(--producer-incidence);fill-opacity:.14}.region--old_wage_bill{color:var(--producer-incidence)}.region--old_wage_bill{fill:var(--producer-incidence);stroke:var(--producer-incidence);fill-opacity:.14}.region--pay_gained{color:var(--producer-incidence)}.region--pay_gained{fill:var(--producer-incidence);stroke:var(--producer-incidence)}.region--pay_lost{color:var(--producer-incidence)}.region--pay_lost{fill:var(--producer-incidence);stroke:var(--producer-incidence)}.region--production_effect{color:var(--consumer-incidence)}.region--production_effect{fill:var(--consumer-incidence);stroke:var(--consumer-incidence)}.region--consumption_effect{color:var(--consumer-incidence)}.region--consumption_effect{fill:var(--consumer-incidence);stroke:var(--consumer-incidence)}.region--tariff_revenue{color:var(--tax-revenue)}.region--tariff_revenue{fill:var(--tax-revenue)}.region--lost_producer_surplus{color:var(--producer-incidence)}.region--lost_producer_surplus{fill:var(--producer-incidence)}.region--output_gap{color:var(--spare-capacity)}.region--output_gap{fill:var(--spare-capacity);stroke:none;fill-opacity:.16}.region--nominal_output{color:var(--producer-incidence)}.region--nominal_output{fill:var(--producer-incidence);stroke:var(--producer-incidence);fill-opacity:.12}.region--coupon_box{color:var(--producer-incidence)}.region--coupon_box{fill:var(--producer-incidence);stroke:none;fill-opacity:.14}.region--lorenz_area_a{color:var(--frontier-curve)}.region--lorenz_area_a{fill:var(--frontier-curve);stroke:none;fill-opacity:.16}.region--lorenz_area_b{color:var(--consumer-incidence)}.region--lorenz_area_b{fill:var(--consumer-incidence);stroke:none;fill-opacity:.12}.region--capacity_growth{color:var(--growth-gained)}.region--capacity_growth{fill:var(--growth-gained);stroke:none;fill-opacity:.22}.region--ghost{fill:url(#graphacon-ghost-hatch);fill-opacity:1;stroke-opacity:.75;stroke-dasharray:5 4}.region--void{fill:url(#graphacon-void-cross);fill-opacity:1;stroke-opacity:.38;stroke-dasharray:2 3}.region--gain{fill:url(#graphacon-gain-dots);fill-opacity:1;stroke-opacity:.75;stroke-dasharray:none}.ghost-hatch{stroke:var(--label-ink);stroke-width:1;stroke-opacity:.55}.gain-dots{fill:var(--label-ink);fill-opacity:.55}.ghost-hatch--consumer{stroke:var(--consumer-incidence);stroke-width:1.4;stroke-opacity:.9}.ghost-hatch--producer{stroke:var(--producer-incidence);stroke-width:1.4;stroke-opacity:.9}.gain-dots--consumer{fill:var(--consumer-incidence);fill-opacity:.9}.gain-dots--producer{fill:var(--producer-incidence);fill-opacity:.9}.region--consumer_surplus_change.region--ghost{fill:url(#graphacon-ghost-hatch--consumer)}.region--producer_surplus_change.region--ghost,.region--lost_revenue.region--ghost{fill:url(#graphacon-ghost-hatch--producer)}.region--consumer_surplus_change.region--gain{fill:url(#graphacon-gain-dots--consumer)}.region--producer_surplus_change.region--gain{fill:url(#graphacon-gain-dots--producer)}.void-cross{stroke:var(--label-ink);stroke-width:1;stroke-opacity:.5}.marker{fill:none;stroke-width:1.5}.marker--cost_step,.marker--tax_wedge{stroke:var(--tax-wedge);stroke-width:1.5;stroke-dasharray:5 3}.marker--guide_line{stroke:var(--guide-line);stroke-dasharray:4 4}.marker--guide_line[data-bounds]{stroke:var(--guide-line-strong)}.marker--equilibrium_marker{stroke:var(--equilibrium-marker)}.label{fill:var(--label-ink);font-size:calc(13px * var(--plot-text-scale));font-weight:600;text-anchor:middle;dominant-baseline:middle;pointer-events:none}.labels .label--region_label{animation:region-wipe var(--shade-ms, .52s) ease-out var(--shade-delay, .32s) backwards;letter-spacing:.01em;font-size:calc(13px * var(--name-scale, 1))}@media(prefers-reduced-motion:no-preference){.labels .label--region_label{transition:transform .9s cubic-bezier(.22,1,.36,1),opacity .24s ease}}.labels .label--region_label-small{font-size:calc(10px * var(--name-scale, 1))}.labels .label--region_label-tiny{font-size:calc(8px * var(--name-scale, 1));letter-spacing:0}.label--region_label-halo{paint-order:stroke;stroke:var(--surface);stroke-width:2.5px;stroke-linejoin:round}.anchor{fill:var(--interactive-hitbox);pointer-events:all}.anchors>.anchor{pointer-events:none}.anchor--curve_drag_hitbox{cursor:ns-resize;touch-action:none}.anchor--endpoint_handle{cursor:move;touch-action:none}.drag-hitbox{fill:none;stroke:transparent;pointer-events:stroke;cursor:ns-resize;touch-action:none}.tap-hitbox{fill:transparent;pointer-events:all;cursor:pointer;touch-action:none}.region-hitbox{fill:transparent;stroke:transparent;stroke-linejoin:round;pointer-events:all;cursor:pointer;touch-action:none}.region-hitbox--rejected{fill:var(--reject);animation:region-reject .32s ease both}@keyframes region-reject{0%{fill-opacity:.18}to{fill-opacity:0}}@media(prefers-reduced-motion:reduce){.region-hitbox--rejected{animation:none}}.guided-hint{pointer-events:none}.guided-hint__dot{fill:var(--accent);stroke:var(--surface);stroke-width:1.5;opacity:.92}@media(prefers-reduced-motion:reduce){.guided-hint__dot{fill:none;stroke:var(--accent);stroke-width:2}}.guided-hint__arrow{stroke:var(--accent);stroke-width:2.25;stroke-linecap:round;stroke-linejoin:round;opacity:.92}.guided-hint__bob{animation:guided-bob 1.6s ease-in-out infinite}.guided-hint__bob--both{animation-name:guided-bob-both}.guided-hint__bar{stroke:var(--accent);stroke-width:2.25;stroke-linecap:round;opacity:.92}.guided-hint__turn{transform-box:fill-box;transform-origin:center;animation:guided-turn 1.8s ease-in-out infinite}.guided-hint__ring{fill:none;stroke:var(--accent);stroke-width:2;transform-box:fill-box;transform-origin:center;animation:guided-pulse 1.8s ease-out infinite}@keyframes guided-bob{0%,to{transform:translateY(0)}50%{transform:translate(var(--bob-dx, 0px),var(--bob-dy, 0px))}}@keyframes guided-bob-both{0%,to{transform:translateY(calc(var(--bob-dy, 0px) * -1))}50%{transform:translateY(var(--bob-dy, 0px))}}@keyframes guided-turn{0%,to{transform:rotate(var(--turn-from, -13deg))}50%{transform:rotate(var(--turn-to, 13deg))}}@keyframes guided-pulse{0%{transform:scale(.55);opacity:.7}to{transform:scale(1.5);opacity:0}}@media(prefers-reduced-motion:reduce){.guided-hint__bob,.guided-hint__bob--both{animation:none}.guided-hint__turn{animation:none;transform:rotate(var(--turn-to, 13deg))}.guided-hint__ring{animation:none;opacity:.4}}.ghost--snapping{transition:transform .3s ease}.ghost-curve{fill:none;stroke:var(--tax-shifted-supply-curve);stroke-width:2.25;stroke-linecap:round;stroke-dasharray:6 5;opacity:.55;pointer-events:none;vector-effect:non-scaling-stroke}.ghost-curve--rejected{stroke:var(--reject);stroke-dasharray:none;opacity:.95;transform-box:fill-box;transform-origin:center;animation:ghost-shake .28s ease both}.ghost-point{fill:none;stroke:var(--tax-shifted-supply-curve);stroke-width:2.25;stroke-dasharray:6 5;opacity:.55;pointer-events:none}.ghost-point--demand_curve{stroke:var(--demand-curve)}.ghost-point--rejected{stroke:var(--reject);stroke-dasharray:none;opacity:.95;transform-box:fill-box;transform-origin:center;animation:ghost-shake .28s ease both}@keyframes ghost-shake{0%,to{transform:translate(0)}20%{transform:translate(-3px)}40%{transform:translate(3px)}60%{transform:translate(-2px)}80%{transform:translate(2px)}}@media(prefers-reduced-motion:reduce){.ghost--snapping{transition:none}.ghost-curve--rejected,.ghost-point--rejected{animation:none}}@keyframes graph-fade-in{0%{opacity:0}to{opacity:1}}@keyframes graph-label-in{0%{opacity:0;transform:translateY(2px)}to{opacity:1;transform:translateY(0)}}@keyframes graph-marker-in{0%{opacity:0;stroke-dashoffset:24}to{opacity:1;stroke-dashoffset:0}}.curve{animation:graph-fade-in .48s ease backwards}.curve--tax_shifted_supply_curve.is-entering,.curve--shifted_supply_curve.is-entering,.curve--shifted_demand_curve.is-entering,.curve--social_cost_curve.is-entering,.curve--social_benefit_curve.is-entering,.curve--informed_demand_curve.is-entering{animation:curve-shift-in .8s ease-out backwards}@keyframes curve-shift-in{0%{transform:translateY(var(--shift-from, 0))}to{transform:translateY(0)}}@keyframes curve-shift-in-x{0%{transform:translate(var(--shift-from-x, 0))}to{transform:translate(0)}}.curve--demand_curve[data-role=shifted_demand].is-entering{animation:curve-shift-in-x .8s ease-out backwards}.curve[data-role=equality_line].is-entering{animation:curve-draw-on .7s ease-in-out backwards}.curve[data-role=lorenz_curve].is-entering,.curve[data-role=lorenz_compare_curve].is-entering{animation:curve-draw-on 1.3s ease-in-out backwards}.curve[data-role=equality_line],.curve[data-role=lorenz_curve],.curve[data-role=lorenz_compare_curve]{animation:none}@keyframes curve-draw-on{0%{stroke-dasharray:var(--draw-length, 0) var(--draw-length, 0);stroke-dashoffset:var(--draw-length, 0)}to{stroke-dasharray:var(--draw-length, 0) var(--draw-length, 0);stroke-dashoffset:0}}.curve--supply_curve[data-role=shifted_long_run_as].is-entering,.curve--supply_curve[data-role=long_run_as][style*=--shift-from-x].is-entering{animation:curve-shift-in-x .8s ease-out backwards}.curve--tax_shifted_supply_curve[data-entry=pivot].is-entering{transform-box:view-box;transform-origin:0px var(--pivot-y, 0px);animation:curve-pivot-in .8s ease-out backwards}.curve--grown_frontier_curve[data-entry=grow].is-entering{transform-box:view-box;transform-origin:var(--pivot-x, 0px) var(--pivot-y, 0px);animation:curve-grow-in .9s cubic-bezier(.22,1,.36,1) backwards,graph-fade-in .48s ease backwards}@keyframes curve-grow-in{0%{transform:scale(var(--pivot-from-x, 1),var(--pivot-from, 1))}to{transform:scale(1)}}@keyframes curve-pivot-in{0%{transform:scaleY(var(--pivot-from, 1))}to{transform:scaleY(1)}}.region{animation:region-draw .52s ease-out backwards}.region:not(.region--ghost):not(.region--void):not([data-grow=outward]){stroke:var(--ink);stroke-width:1.6;stroke-opacity:0;stroke-dasharray:1;stroke-linejoin:round;animation:region-pen var(--pen-ms, .62s) ease-in-out backwards,region-shade var(--shade-ms, .52s) ease-out var(--shade-delay, .32s) backwards,region-pen-fade var(--lift-ms, .24s) ease var(--lift-delay, .62s) backwards}.graph-frame[data-mechanism=demand_shift],.graph-frame[data-mechanism=supply_shift]{--draw-ms: 2.8s;--pen-ms: 1.2s;--shade-ms: 1.2s;--shade-delay: 1.2s;--lift-ms: .4s;--lift-delay: 2.4s}.graph-frame[data-mechanism=demand_shift] .region:not(.is-fresh):not(.region--ghost):not(.region--void):not([data-grow=outward]),.graph-frame[data-mechanism=supply_shift] .region:not(.is-fresh):not(.region--ghost):not(.region--void):not([data-grow=outward]),.graph-frame[data-mechanism=demand_shift] .region.is-attended:not(.region--ghost):not(.region--void):not([data-grow=outward]),.graph-frame[data-mechanism=supply_shift] .region.is-attended:not(.region--ghost):not(.region--void):not([data-grow=outward]){animation:none}.graph-frame[data-mechanism=demand_shift] .region.is-fresh:not(.is-attended):not(.region--ghost):not(.region--void):not([data-grow=outward]),.graph-frame[data-mechanism=supply_shift] .region.is-fresh:not(.is-attended):not(.region--ghost):not(.region--void):not([data-grow=outward]){animation:market-area-draw var(--draw-ms, 3s) linear both}.graph-frame[data-mechanism=demand_shift] .region.is-fresh:not(.is-attended):not(.region--ghost):not(.region--void):not([data-grow=outward]).region--consumer_surplus,.graph-frame[data-mechanism=demand_shift] .region.is-fresh:not(.is-attended):not(.region--ghost):not(.region--void):not([data-grow=outward]).region--producer_surplus,.graph-frame[data-mechanism=supply_shift] .region.is-fresh:not(.is-attended):not(.region--ghost):not(.region--void):not([data-grow=outward]).region--consumer_surplus,.graph-frame[data-mechanism=supply_shift] .region.is-fresh:not(.is-attended):not(.region--ghost):not(.region--void):not([data-grow=outward]).region--producer_surplus{animation-name:market-triangle-draw;animation-duration:.8s}.graph-frame[data-mechanism=demand_shift] .labels .label--region_label,.graph-frame[data-mechanism=supply_shift] .labels .label--region_label{animation:none}.graph-frame[data-mechanism=demand_shift] .labels .label--region_label.is-fresh:not(.is-attended),.graph-frame[data-mechanism=supply_shift] .labels .label--region_label.is-fresh:not(.is-attended){animation:region-name-wipe calc(var(--shade-ms) * var(--wipe-span, 1)) linear calc(var(--shade-delay) + var(--shade-ms) * var(--wipe-from, 0)) backwards}@keyframes region-name-wipe{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 0 0 0)}}@keyframes region-wipe{0%{clip-path:inset(0 100% 0 0);fill-opacity:0}to{clip-path:inset(0 0 0 0)}}.graph-frame[data-seen]{--draw-ms: .12s;--pen-ms: 90ms;--shade-ms: 90ms;--shade-delay: 0ms;--lift-ms: 60ms;--lift-delay: 90ms}.graph-frame[data-mechanism=demand_shift] .region--consumer_surplus,.graph-frame[data-mechanism=demand_shift] .region--producer_surplus,.graph-frame[data-mechanism=supply_shift] .region--consumer_surplus,.graph-frame[data-mechanism=supply_shift] .region--producer_surplus{transition:d 2.6s cubic-bezier(.22,1,.36,1)}@media(prefers-reduced-motion:reduce){.graph-frame[data-mechanism=demand_shift] .region--consumer_surplus,.graph-frame[data-mechanism=demand_shift] .region--producer_surplus,.graph-frame[data-mechanism=supply_shift] .region--consumer_surplus,.graph-frame[data-mechanism=supply_shift] .region--producer_surplus{transition:none}}@keyframes market-area-draw{0%{clip-path:inset(0 100% 0 0);stroke-dashoffset:1;stroke-opacity:1;animation-timing-function:linear}42.86%{clip-path:inset(0 100% 0 0);stroke-dashoffset:0;stroke-opacity:1;animation-timing-function:linear}85.71%{clip-path:inset(0 0 0 0);stroke-dashoffset:0;stroke-opacity:1;animation-timing-function:ease}to{clip-path:inset(0 0 0 0);stroke-dashoffset:0;stroke-opacity:0}}@keyframes market-triangle-draw{0%{clip-path:inset(0 100% 0 0);stroke-dashoffset:1;stroke-opacity:1;animation-timing-function:linear}12.5%{clip-path:inset(0 100% 0 0);stroke-dashoffset:0;stroke-opacity:1;animation-timing-function:linear}85.71%{clip-path:inset(0 0 0 0);stroke-dashoffset:0;stroke-opacity:1;animation-timing-function:ease}to{clip-path:inset(0 0 0 0);stroke-dashoffset:0;stroke-opacity:0}}@keyframes region-pen{0%{stroke-dashoffset:1;stroke-opacity:1}to{stroke-dashoffset:0;stroke-opacity:1}}@keyframes region-shade{0%{fill-opacity:0}}@keyframes region-pen-fade{0%{stroke-opacity:1}}.region[data-grow=outward]{transform-origin:var(--grow-origin, 0% 100%);animation:region-open .62s cubic-bezier(.22,1,.36,1) backwards}@keyframes region-open{0%{transform:scale(0);fill-opacity:0}}@keyframes region-draw{0%{transform:scaleY(0);fill-opacity:0}}.region--ghost,.region--void{animation:region-surface .52s ease-out backwards}@keyframes region-surface{0%{fill-opacity:0}}.marker[style*=--entry-dx][data-role=quantity_guide]{animation:reading-travel 1.2s cubic-bezier(.22,1,.36,1) backwards}@keyframes reading-travel{0%{transform:translate(var(--entry-dx, 0px))}}.marker{animation:graph-marker-in .56s ease backwards}.marker--cost_step{animation-delay:var(--marker-delay, 0ms)}.marker--guide_line[data-role=price_guide]{transform-box:fill-box;transform-origin:left center;animation:guide-grow-x .9s ease-out backwards}.marker--wish_guide[data-role=price_guide]{transform-box:fill-box;transform-origin:left center;animation:wish-sweep 1.4s ease-in-out backwards}@keyframes wish-sweep{0%{transform:translateY(var(--entry-dy, 0px)) scaleX(var(--entry-sx, 1))}}.marker--tax_measure{stroke:var(--tax-wedge);stroke-width:1.5;stroke-dasharray:5 3;transform-box:fill-box;transform-origin:center bottom;animation:guide-grow-y .8s ease-out backwards}.measure__equal-tick,.measure__carry-tick{stroke:var(--accent);stroke-width:2;stroke-linecap:round;opacity:.85;animation:graph-fade-in .22s ease backwards;animation-delay:.32s}.measure__carry-tick{stroke-width:2.25}.marker--tax_measure[data-grow=top]{transform-origin:center top}.marker--tax_measure[data-role=external_cost_measure],.marker--tax_measure[data-role=external_benefit_measure]{stroke:var(--social-cost-curve)}.marker--tax_measure[data-role=overproduction_span],.marker--tax_measure[data-role=underproduction_span],.marker--tax_measure[data-role=overconsumption_span],.marker--tax_measure[data-role=underconsumption_span]{stroke:var(--label-ink);transform-origin:left center;animation:guide-grow-x .8s ease-out backwards}.marker--guide_line[data-role=quantity_guide]{transform-box:fill-box;transform-origin:center bottom;animation:guide-grow-y .9s ease-out backwards}@keyframes guide-grow-x{0%{opacity:.4;transform:scaleX(0)}}@keyframes guide-grow-y{0%{opacity:.4;transform:scaleY(0)}}.marker--wish_guide{stroke:var(--label-ink);stroke-width:2;stroke-dasharray:6 5;opacity:.85}.marker--delta_arrow{stroke:var(--accent);stroke-width:2;stroke-dasharray:1;animation:delta-draw .7s ease-out backwards;animation-delay:var(--marker-delay, 0ms)}@keyframes delta-draw{0%{stroke-dashoffset:1}to{stroke-dashoffset:0}}.marker--market_gap{stroke:var(--accent);stroke-width:2.5;stroke-dasharray:1;animation:delta-draw .62s ease-out backwards;animation-delay:var(--marker-delay, 0ms)}.price-pressure__chevron{fill:none;stroke:var(--accent);stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round;opacity:.9;animation:graph-fade-in .22s ease backwards;animation-delay:calc(var(--marker-delay, 0ms) + var(--chevron-index) * .2s)}.market-gap__tick{stroke:var(--accent);stroke-width:1.5;opacity:.75;animation:graph-fade-in .2s ease backwards;animation-delay:var(--marker-delay, 0ms)}.market-gap__head{fill:var(--accent);animation:graph-fade-in .18s ease backwards;animation-delay:calc(.46s + var(--marker-delay, 0ms))}.delta-arrowhead{fill:var(--accent);animation:graph-fade-in .18s ease backwards;animation-delay:calc(.52s + var(--marker-delay, 0ms))}.intersection--equilibrium_marker{transform-box:fill-box;transform-origin:center;animation:dot-pop .32s ease-out backwards}@keyframes dot-pop{0%{opacity:0;transform:scale(.3)}to{opacity:1;transform:scale(1)}}.marker--guide_line[data-role=price_guide][style*=--entry-dy]{animation:guide-rise 1.4s cubic-bezier(.22,1,.36,1) backwards}@keyframes guide-rise{0%{transform:translateY(var(--entry-dy, 0px))}}.intersection--travels{--travel-ms: .7s;animation:dot-travel var(--travel-ms) ease-out backwards}@keyframes dot-travel{0%{transform:translate(var(--travel-x, 0),var(--travel-y, 0))}to{transform:translate(0)}}.intersection--travels[data-role=shifted_equilibrium]{--travel-ms: 1.6s;animation-duration:var(--travel-ms)}.intersection--travels.intersection--travels-curve{--travel-ms: 1.3s;animation-name:dot-travel-curve;animation-duration:var(--travel-ms);animation-timing-function:linear}@keyframes dot-travel-curve{0%{transform:translate(var(--travel-x, 0),var(--travel-y, 0))}25%{transform:translate(var(--travel-x1, 0),var(--travel-y1, 0))}50%{transform:translate(var(--travel-x2, 0),var(--travel-y2, 0))}75%{transform:translate(var(--travel-x3, 0),var(--travel-y3, 0))}to{transform:translate(0)}}.label{transform-box:fill-box;transform-origin:center;animation:graph-label-in .46s ease backwards}@media(prefers-reduced-motion:no-preference){.curve,.region,.marker,.intersection--equilibrium_marker,.axis__title--arrives,.label,.delta-arrowhead{transition:opacity .24s ease}.graph-svg--spotlight :is(.curve,.region,.marker,.intersection--equilibrium_marker,.label,.delta-arrowhead,.market-gap__tick,.market-gap__head,.measure__equal-tick,.measure__carry-tick,.price-pressure__chevron):not(.is-fresh){opacity:.55}}@media(prefers-reduced-motion:no-preference){.intersection--equilibrium_marker.is-negated{animation:dot-pop .32s ease-out backwards,negate-pulse .9s ease}.label.is-negated{animation:graph-label-in .46s ease backwards,negate-pulse .9s ease}.marker.is-negated[data-role=price_guide]{animation:guide-grow-x .9s ease-out backwards,negate-stroke 1.1s ease}.marker--wish_guide.is-negated[data-role=price_guide]{animation:wish-sweep 1.4s ease-in-out backwards,negate-stroke 1.1s ease 1.4s backwards}}.curve.is-attended{animation:attend-pulse .76s ease both,graph-fade-in .48s ease backwards}@keyframes attend-pulse{40%{stroke-width:3.9}}@keyframes negate-stroke{0%,60%{stroke:var(--reject)}}@keyframes negate-pulse{0%{fill:var(--reject);transform:translate(0)}15%{transform:translate(-3px)}35%{transform:translate(3px)}55%{fill:var(--reject);transform:translate(-1.5px)}75%{transform:translate(0)}}@media(prefers-reduced-motion:reduce){.curve,.region,.region[data-grow=outward],.region--ghost,.region--gain,.region--void,.region:not(.region--ghost):not(.region--void):not([data-grow=outward]),.marker,.curve--demand_curve[data-role=shifted_demand],.curve[data-role=equality_line].is-entering,.curve[data-role=lorenz_curve].is-entering,.curve[data-role=lorenz_compare_curve].is-entering,.curve--supply_curve[data-role=shifted_long_run_as],.curve--supply_curve[data-role=long_run_as][style*=--shift-from-x],.marker--guide_line[data-role=price_guide],.marker--guide_line[data-role=quantity_guide],.marker--wish_guide[data-role=price_guide],.marker--tax_measure,.marker--tax_measure[data-role=external_cost_measure],.marker--tax_measure[data-role=external_benefit_measure],.marker--tax_measure[data-role=overproduction_span],.marker--tax_measure[data-role=underproduction_span],.marker--tax_measure[data-role=overconsumption_span],.marker--tax_measure[data-role=underconsumption_span],.measure__equal-tick,.measure__carry-tick,.curve--tax_shifted_supply_curve[data-entry=pivot],.curve--grown_frontier_curve[data-entry=grow],.curve--tax_shifted_supply_curve.is-entering,.curve--shifted_supply_curve.is-entering,.curve--shifted_demand_curve.is-entering,.curve--social_cost_curve.is-entering,.curve--social_benefit_curve.is-entering,.curve--informed_demand_curve.is-entering,.curve--demand_curve[data-role=shifted_demand].is-entering,.curve--tax_shifted_supply_curve[data-entry=pivot].is-entering,.curve--grown_frontier_curve[data-entry=grow].is-entering,.curve--supply_curve[data-role=shifted_long_run_as].is-entering,.curve--supply_curve[data-role=long_run_as][style*=--shift-from-x].is-entering,.curve.is-attended,.marker.is-negated[data-role=price_guide],.marker--wish_guide.is-negated[data-role=price_guide],.marker--market_gap,.market-gap__tick,.market-gap__head,.intersection--equilibrium_marker,.intersection--travels.intersection--travels-curve,.axis__title--arrives,.label,.labels .label--region_label,.graph-frame[data-mechanism=demand_shift] .labels .label--region_label.is-fresh:not(.is-attended),.graph-frame[data-mechanism=supply_shift] .labels .label--region_label.is-fresh:not(.is-attended),.delta-arrowhead{animation:none}.price-pressure__chevron{animation:none}.ring-moving{animation:none;opacity:0}}.label__sub{font-size:.65em;font-weight:inherit}.label__mid{font-size:.825em;font-weight:inherit}.prose-sub{font-size:.65em;font-weight:inherit;vertical-align:baseline;position:relative;top:.22em}.prose-mid{font-size:.825em;font-weight:inherit}.prose-mechanism{font-weight:inherit;color:#1b1200;background-image:linear-gradient(to bottom,transparent 8%,rgba(255,214,51,.92) 8%,rgba(255,214,51,.92) 92%,transparent 92%);box-decoration-break:clone;-webkit-box-decoration-break:clone;padding:0 .18em;border-radius:1px}.reading{position:absolute;left:0;right:0;bottom:0;height:74px;display:flex;align-items:center;justify-content:center;gap:8px;pointer-events:none;font-size:calc(11px * var(--text-scale));color:var(--ink);background:var(--surface, rgb(0 0 0 / .02));border-top:1px solid var(--hairline)}.graph-offline{position:absolute;left:0;right:0;top:0;z-index:1;margin:0;padding:6px 12px;text-align:center;pointer-events:none;font-size:calc(12px * var(--text-scale));color:var(--ink);background:var(--surface, rgb(0 0 0 / .02));border-bottom:1px solid var(--hairline);transform:translateY(-100%);opacity:0;visibility:hidden;transition:transform .22s ease,opacity .22s ease,visibility 0s linear .22s}.graph-offline--shown{transform:none;opacity:1;visibility:visible;transition:transform .22s ease,opacity .22s ease,visibility 0s}@media(prefers-reduced-motion:reduce){.graph-offline,.graph-offline--shown{transform:none}}.reading__symbol{font-weight:700;font-size:calc(14px * var(--text-scale));letter-spacing:.01em}.reading__stack{display:flex;flex-direction:column;align-items:center;gap:2px}.reading__row{white-space:nowrap;line-height:1.2}.reading__stack--formula .reading__row{font-size:calc(10px * var(--text-scale))}.reading__formula{font:inherit;color:inherit;border:none;background:none;padding:2px 3px;margin:-2px 0;border-radius:2px;cursor:pointer;pointer-events:auto;touch-action:manipulation;border-bottom:1px dotted var(--muted)}.reading__formula:hover,.reading__formula[aria-expanded=true]{background:#0000000a}.reading__words{position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%);max-width:min(320px,calc(100% - 16px));padding:8px 12px;border:1px solid var(--hairline);border-radius:3px;background:var(--surface, #fff);box-shadow:3px 3px #0000000f;pointer-events:none;z-index:2}.reading__stack--words .reading__row{font-size:calc(11px * var(--text-scale));line-height:1.3;white-space:normal;text-align:center}.reading__stack--worked .reading__row{font-weight:600;font-size:calc(13px * var(--text-scale));font-variant-numeric:tabular-nums;min-width:46px;text-align:center}.reading__rule{display:block;align-self:stretch;height:1px;background:currentcolor;opacity:.5}.reading__equals{font-size:calc(12px * var(--text-scale));color:var(--muted)}.reading__answer{display:flex;align-items:baseline;gap:5px}.reading__verdict{display:flex;flex-direction:column;align-items:flex-start;gap:0}.reading__condition{font-size:calc(9px * var(--text-scale));color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap}.reading__coefficient{font-weight:700;font-size:calc(17px * var(--text-scale));font-variant-numeric:tabular-nums;line-height:1.1}.reading__meaning{font-size:calc(9px * var(--text-scale));color:var(--muted);max-width:76px;line-height:1.15}@media(max-width:430px){.reading{gap:5px;padding:0 4px}.reading__symbol{font-size:calc(12px * var(--text-scale))}.reading__stack--formula .reading__row{font-size:calc(8.5px * var(--text-scale))}.reading__stack--worked .reading__row{font-size:calc(12px * var(--text-scale));min-width:40px}.reading__coefficient{font-size:calc(15px * var(--text-scale))}.reading__meaning{max-width:66px;font-size:calc(8.5px * var(--text-scale))}.reading__condition{font-size:calc(8px * var(--text-scale))}}:root[data-motion=still] *,:root[data-motion=still] *:before,:root[data-motion=still] *:after{animation-duration:.01ms!important;animation-delay:0ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;transition-delay:0ms!important;scroll-behavior:auto!important}.settings__switch{width:100%;margin-top:14px;padding:11px 0 0;border:none;border-top:1px solid var(--hairline);background:none;color:var(--ink);font:inherit;font-size:calc(15px * var(--text-scale));font-weight:600;text-align:left;display:flex;align-items:center;gap:14px;cursor:pointer;touch-action:manipulation}.settings__switch-label{flex:1 1 auto}.settings__switch-track{flex:0 0 auto;position:relative;width:44px;height:26px;border:1px solid var(--rule);border-radius:13px;background:var(--surface);transition:background-color .16s ease,border-color .16s ease}.settings__switch-knob{position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:var(--muted);transition:transform .18s cubic-bezier(.22,1,.36,1),background-color .16s ease}.settings__switch--on .settings__switch-track{border-color:var(--accent);background:var(--accent)}.settings__switch--on .settings__switch-knob{background:var(--surface);transform:translate(18px)}.settings__group{margin:16px 0 8px;padding-top:11px;border-top:1px solid var(--hairline);color:var(--muted);font-size:calc(11px * var(--text-scale));font-weight:700;letter-spacing:.06em;text-transform:uppercase}.settings__friends{animation:settings-friends-in .22s var(--ease-house) both}@keyframes settings-friends-in{0%{opacity:0;translate:0 6px}to{opacity:1;translate:0 0}}@media(prefers-reduced-motion:reduce){.settings__friends{animation:none}}.settings__code{display:flex;align-items:center;gap:10px;padding:10px 10px 10px 14px;border:1px solid var(--rule);border-radius:2px}.settings__code-text{flex:1 1 auto;min-width:0;overflow-wrap:anywhere;color:var(--ink);font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:calc(17px * var(--text-scale));font-weight:700;letter-spacing:.08em;user-select:all;-webkit-user-select:all}.settings__code-copy{flex:none;min-height:38px;padding:7px 16px;border:1px solid var(--accent);border-radius:2px;background:none;color:var(--accent);font:inherit;font-size:calc(14px * var(--text-scale));font-weight:600;cursor:pointer;touch-action:manipulation}.settings__code-copy:hover{background:var(--accent);color:var(--paper, #fff)}.settings__choice{display:flex;gap:8px}.settings__pick{flex:1 1 0;min-height:42px;padding:9px 4px;border:1px solid var(--rule);border-radius:2px;background:none;color:var(--ink);font:inherit;font-size:calc(14px * var(--text-scale));cursor:pointer;touch-action:manipulation}.settings__pick:hover{border-color:var(--accent)}.settings__pick--on{border-color:var(--accent);background:var(--accent);color:var(--surface);font-weight:650}.settings__slider{display:flex;align-items:center;gap:10px;margin-bottom:8px}.settings__slider input[type=range]{flex:1 1 auto;min-width:0;margin:0;accent-color:var(--accent);height:28px;cursor:pointer}.settings__slider-end{flex:0 0 auto;color:var(--muted);font-size:12px;line-height:1}.settings__slider-end--big{font-size:21px}.settings__size{margin-top:14px}.settings__size-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:6px}.settings__size-name{margin:0;color:var(--ink);font-size:calc(13px * var(--text-scale));font-weight:600}.settings__size-now{flex:0 0 auto;color:var(--ink);font-size:calc(11px * var(--text-scale));font-weight:650;letter-spacing:.04em;text-transform:uppercase}.settings__size-now--normal{color:var(--muted);font-weight:600}.settings__slider-track{position:relative;flex:1 1 auto;min-width:0;display:flex}.settings__slider-track:after{content:"";position:absolute;left:50%;bottom:1px;width:2px;height:5px;margin-left:-1px;border-radius:1px;background:var(--rule-strong);pointer-events:none}.settings__stage{position:relative;max-width:360px;margin:2px auto 14px;background:var(--paper);border:1px solid var(--rule);border-radius:2px;overflow:hidden}.settings__stage .label,.settings__stage .axis__title,.settings__stage .axis__origin{transition:fill-opacity .17s ease}.settings__stage .guided-callout{transition:opacity .17s ease}.settings__stage[data-pointing=caption] .label,.settings__stage[data-pointing=caption] .axis__title,.settings__stage[data-pointing=caption] .axis__origin{fill-opacity:.3}.settings__stage[data-pointing=plot] .guided-callout{opacity:.3}@media(prefers-reduced-motion:reduce){.settings__stage .label,.settings__stage .axis__title,.settings__stage .axis__origin,.settings__stage .guided-callout{transition:none}}.settings__try-plot{display:block;width:100%;aspect-ratio:363 / 503}.settings__try-plot .graph-svg{width:100%;height:auto}.settings__page-link{display:flex;align-items:center;gap:12px;width:100%;margin-top:10px;padding:10px 12px;border:1px solid var(--rule);border-radius:3px;background:var(--surface);color:var(--ink);font:inherit;text-align:left;cursor:pointer;touch-action:manipulation;transition:border-color .14s ease,scale var(--ease-quick) var(--ease-house)}.settings__page-link:hover{border-color:var(--accent)}.settings__page-link-pic{flex:0 0 auto;width:62px;height:44px;display:block;background:var(--paper);border:1px solid var(--hairline);border-radius:2px;overflow:hidden}.settings__page-link-pic svg{display:block;width:100%;height:100%}.settings__page-link-pic text{display:none}.settings__page-link-words{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:2px}.settings__page-link-name{font-size:calc(14px * var(--text-scale));font-weight:600}.settings__page-link-now{color:var(--muted);font-size:calc(12px * var(--text-scale))}.settings__page-link-go{flex:0 0 auto;color:var(--accent);font-size:calc(17px * var(--text-scale));font-weight:700;line-height:1}.settings__note{margin:7px 0 0;color:var(--muted);font-size:calc(12.5px * var(--text-scale));line-height:1.5}.settings__note--lead{margin-top:2px}.settings__warn{margin:7px 0 0;padding-left:14px;position:relative;color:var(--required);font-size:calc(12.5px * var(--text-scale));line-height:1.5}.settings__warn:before{content:"!";position:absolute;left:0;font-weight:700}.settings__feedback{margin-top:16px;padding-top:12px;border-top:1px solid var(--hairline)}.settings__ask{margin-top:9px;padding:9px 16px;border:1px solid var(--rule);border-radius:2px;background:none;color:var(--ink);font:inherit;font-size:calc(14px * var(--text-scale));cursor:pointer;touch-action:manipulation}.settings__ask:hover{border-color:var(--accent);color:var(--accent)}.settings__build{margin:14px 0 0;text-align:right;font-family:Geist Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-size:calc(11px * var(--text-scale));letter-spacing:.02em;color:var(--tick-label);user-select:text}.settings__done{display:block;margin-top:18px}@media(prefers-reduced-motion:reduce){.settings__switch-track,.settings__switch-knob{transition:none}}:root[data-theme=dark]{--paper: #1b1f26;--surface: #232830;--surface-edge: #2c323b;--surface-2: #2c323b;--ink: #e8e6e1;--muted: #9fa5b0;--leader-line: #9aa0ab;--rule: #3a4049;--rule-strong: #4c535e;--hairline: #2f353e;--grid-line: #272d36;--axis-line: #c9cdd4;--tick-mark: #6e7681;--tick-label: #9ea5af;--label-ink: #d7dae0;--guide-line: #6e7681;--guide-line-strong: #aab2bd;--accent: #7d8ee8;--navy-dark: #283360;--demand-curve: #6f85c6;--supply-curve: #cd695b;--tax-shifted-supply-curve: #c8742e;--equilibrium-marker: #e8e6e1;--demand-curve-keen: #6b7cf0;--supply-curve-keen: #f04a2d;--tax-shifted-supply-curve-keen: #d66507;--frontier-curve-keen: #27958c;--social-cost-curve-keen: #27958c;--demand-curve-keenest: #6e77ff;--supply-curve-keenest: #ff3414;--tax-shifted-supply-curve-keenest: #ff7400;--frontier-curve-keenest: #00a397;--social-cost-curve-keenest: #00a397;--tax-revenue: #a98ad0;--deadweight-loss: #9a958a;--consumer-incidence: #6f85c6;--producer-incidence: #cd695b;--tax-wedge: #d7dae0;--frontier-curve: #4f928c;--grown-frontier-curve: #c8742e;--attainable: #9aa0ab;--unattainable: #9a958a;--spare-capacity: #cd695b;--growth-gained: #8fb08a;--social-cost-curve: #4f928c;--welfare-loss: #4f928c;--external-cost-total: #7aa86a;--external-benefit-total: var(--external-cost-total);--reject: #ef5f5f;--required: #e8766a}:root[data-theme=dark] body{background-image:repeating-linear-gradient(to bottom,transparent 0,transparent 39px,rgba(232,230,225,.04) 39px,rgba(232,230,225,.04) 40px)}:root[data-theme=dark] .mode-option:hover:not(:disabled),:root[data-theme=dark] .mode-action:hover{background:#ffffff12}:root[data-theme=dark] .mode-option--active{background:#ffffff17}:root[data-theme=dark] .fampanel,:root[data-theme=dark] .report__card{box-shadow:6px 6px #00000073}:root[data-palette=colourblind]{--tax-shifted-supply-curve: #00808c;--tax-shifted-supply-curve-keen: #00808c;--tax-shifted-supply-curve-keenest: #009a8f;--grown-frontier-curve: #8a5a00}:root[data-theme=dark][data-palette=colourblind]{--tax-shifted-supply-curve: #4fd0c2;--tax-shifted-supply-curve-keen: #4fd0c2;--tax-shifted-supply-curve-keenest: #6fe0d2;--grown-frontier-curve: #d09a4a}:root[data-theme=night]{--paper: #e9d2b9;--surface: #f0dac5;--surface-edge: #e4ceb5;--rule: #cab59c;--rule-strong: #a18e79;--hairline: #dcc6ad;--grid-line: #dac4a8;--ink: #191308;--navy-dark: #1e2966;--muted: #575659;--leader-line: #7c7b7f;--axis-line: #1e2124;--tick-mark: #a59b8c;--tick-label: #5e5547;--label-ink: #1e2124;--guide-line: #a59b8c;--guide-line-strong: #5d5548;--accent: #212b69;--equilibrium-marker: #1e2124;--tax-wedge: #1e2124;--required: #8c372d;--reject: #b5302e;--demand-curve: #2b406f;--supply-curve: #8c372d;--tax-shifted-supply-curve: #b06224;--demand-curve-keen: #0e3689;--supply-curve-keen: #ae1d0c;--tax-shifted-supply-curve-keen: #bc5405;--frontier-curve-keen: #0f766a;--social-cost-curve-keen: #0f766a;--demand-curve-keenest: #0034a5;--supply-curve-keenest: #ca1200;--tax-shifted-supply-curve-keenest: #e26300;--frontier-curve-keenest: #008e7f;--social-cost-curve-keenest: #008e7f;--frontier-curve: #245d56;--grown-frontier-curve: #b06224;--social-cost-curve: #245d56;--tax-revenue: #6d4f8a;--deadweight-loss: #7b7263;--consumer-incidence: #2b406f;--producer-incidence: #8c372d;--welfare-loss: #245d56;--external-cost-total: #426732;--attainable: #7c7b7f;--unattainable: #7b7263;--spare-capacity: #8c372d;--growth-gained: #627b58}:root[data-theme=night][data-palette=colourblind]{--tax-shifted-supply-curve: #006d74;--tax-shifted-supply-curve-keen: #006d74;--tax-shifted-supply-curve-keenest: #008578;--grown-frontier-curve: #764a00}.mode-confirm__keep,.mode-confirm__go,.report__send,.report__cancel,.report__kind,.settings__pick,.settings__ask,.settings__code-copy,.bookend__go,.bookend__again,.coach__next,.coach__skip,.fampanel__close,.guided-miss__show,.bookend--cover,.report__chosen,.choice,.symbol-meaning__explain,button.test-card{transition:scale var(--ease-quick) var(--ease-house)}.mode-confirm__keep:active,.mode-confirm__go:active,.report__send:active,.report__cancel:active,.report__kind:active,.settings__pick:active,.settings__ask:active,.settings__code-copy:active,.bookend__go:active,.bookend__again:active,.coach__next:active,.coach__skip:active,.fampanel__close:active,.guided-miss__show:active,.test-chip:active{scale:.96}.bookend--cover:active,.report__chosen:active,.choice:active,.settings__page-link:active,.symbol-meaning__explain:active,button.test-card:active{scale:.985}.mode-dial__dot,button.mode-option,a.mode-option,.mode-action,.report__back,.report__instead,.study__back,.study__hit,.hub-report__ask,.bookend__why,.bookend__next,.test-cover__choice,.test-close__door,.test-card__action,.test-chain__undo,.test-define__anyway,button.guided-prompt__back,button.answer-sheet__back,button.answer-sheet__forward,.settings__switch,.reading__formula,a.wordmark,.bar-line__words,.bar-source__link,a[href]:not([class]){transition:opacity var(--ease-quick) var(--ease-house)}.mode-dial__dot:active,button.mode-option:active,a.mode-option:active,.mode-action:active,.report__back:active,.report__instead:active,.study__back:active,.study__hit:active,.hub-report__ask:active,.bookend__why:active,.bookend__next:active,.test-cover__choice:active,.test-close__door:active,.test-card__action:active,.test-chain__undo:active,.test-define__anyway:active,button.guided-prompt__back:active,button.answer-sheet__back:active,button.answer-sheet__forward:active,.settings__switch:active,.reading__formula:active,a.wordmark:active,.bar-line__words:active,.bar-source__link:active,a[href]:not([class]):active{opacity:.5}@media(prefers-reduced-motion:reduce){.mode-confirm__keep,.mode-confirm__go,.report__send,.report__cancel,.report__kind,.settings__pick,.settings__ask,.settings__code-copy,.bookend__go,.bookend__again,.coach__next,.coach__skip,.fampanel__close,.guided-miss__show,.bookend--cover,.report__chosen,.choice,.settings__page-link,.symbol-meaning__explain,button.test-card,.mode-dial__dot,button.mode-option,a.mode-option,.mode-action,.report__back,.report__instead,.study__back,.study__hit,.hub-report__ask,.bookend__why,.bookend__next,.test-cover__choice,.test-close__door,.test-card__action,.test-chain__undo,.test-define__anyway,button.guided-prompt__back,button.answer-sheet__back,button.answer-sheet__forward,.settings__switch,.reading__formula,a.wordmark,.bar-line__words,.bar-source__link,a[href]:not([class]){transition:none}.mode-confirm__keep:active,.mode-confirm__go:active,.report__send:active,.report__cancel:active,.report__kind:active,.settings__pick:active,.settings__ask:active,.settings__code-copy:active,.bookend__go:active,.bookend__again:active,.coach__next:active,.coach__skip:active,.fampanel__close:active,.guided-miss__show:active,.test-chip:active,.bookend--cover:active,.report__chosen:active,.choice:active,.settings__page-link:active,.symbol-meaning__explain:active,button.test-card:active{scale:none}}@font-face{font-family:Geist;src:url(/landing/fonts/geist-variable.woff2) format("woff2");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:Playfair Display;src:url(/landing/fonts/playfair-display-variable.woff2) format("woff2");font-weight:400 900;font-style:normal;font-display:swap}:root{interpolate-size:allow-keywords;--paper: #f4f1e9;--sheet: #fbfaf7;--ink: #1f2329;--muted: #666a72;--rule: #d4d0c6;--rule-strong: #a9a49a;--navy: #2b3a8c;--navy-dark: #202d70;--tax: #c8742e;--verdict-good: #3d6b4f;--verdict-part: #8f5415;--verdict-stop: #a4453a;--focus: #635bff;color:var(--ink);background:var(--paper);font-family:Geist,Arial,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}html{height:auto;scroll-behavior:smooth;scroll-padding-top:96px}body{min-width:320px;min-height:100%;height:auto;margin:0;overflow-x:hidden;overflow-y:auto;background:repeating-linear-gradient(to bottom,transparent 0,transparent 39px,rgba(31,35,41,.035) 39px,rgba(31,35,41,.035) 40px),var(--paper)}#root{min-height:100vh;height:auto;isolation:isolate}button,a,summary{-webkit-tap-highlight-color:transparent}a{color:inherit}button{font:inherit}button:focus-visible,a:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--focus);outline-offset:4px}.skip-link{position:fixed;z-index:1000;top:10px;left:10px;padding:10px 14px;color:#fff;background:var(--navy-dark);transform:translateY(-160%);transition:transform .16s ease}.skip-link:focus{transform:translateY(0)}.site-header{--bar-height: 62px;position:sticky;z-index:80;top:14px;width:min(calc(100% - 32px),1180px);height:var(--bar-height);margin:14px auto 0}.site-header__bar{height:var(--bar-height);padding:8px 10px 8px 20px;border:1px solid rgba(31,35,41,.16);background:#fbfaf7eb;box-shadow:0 12px 34px #1f232914;backdrop-filter:blur(18px);display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:28px;transition:height .26s cubic-bezier(.22,1,.36,1),padding .26s cubic-bezier(.22,1,.36,1),border-color .26s ease,background-color .26s ease,box-shadow .26s ease}[data-scrolled] .site-header__bar{height:calc(var(--bar-height) - 9px);padding-block:3px;border-color:#1f232942;background:#fbfaf7f7;box-shadow:0 6px 16px #1f23291a}.site-header__bar>.wordmark{color:var(--navy-dark);font-family:Playfair Display,Georgia,serif;font-size:1.34rem;font-weight:750;letter-spacing:-.035em;text-decoration:none;transition:font-size .26s cubic-bezier(.22,1,.36,1)}[data-scrolled] .site-header__bar>.wordmark{font-size:1.17rem}.site-nav{justify-self:end;display:flex;align-items:center;gap:clamp(15px,2.2vw,30px)}.site-nav a{color:#484c54;font-size:.84rem;font-weight:590;text-decoration:none}.site-nav a:hover{color:var(--navy)}.button{min-height:48px;padding:0 22px;border:1px solid var(--navy);border-radius:2px;color:var(--navy-dark);background:transparent;cursor:pointer;font-weight:680;letter-spacing:-.01em;transition:transform .16s ease,background-color .16s ease,color .16s ease,box-shadow .16s ease}.button:hover{transform:translateY(-2px);box-shadow:0 8px 18px #202d7024}.button:active{transform:translateY(0)}.button--small{min-height:44px;padding-inline:18px;color:#fff;background:var(--navy)}.button--primary{color:#fff;background:var(--navy)}.button--primary:hover,.button--small:hover{background:var(--navy-dark)}.button--wide{width:100%}.button--light{color:var(--navy-dark);border-color:var(--sheet);background:var(--sheet)}.button--outline-light{color:#fff;border-color:#ffffffa6}.button--outline-light:hover{color:var(--navy-dark);background:#fff}.hero{width:min(calc(100% - 48px),1340px);margin:42px auto 0;padding:56px 0 88px;display:grid;grid-template-columns:minmax(290px,.72fr) minmax(610px,1.62fr);align-items:center;gap:clamp(34px,5vw,76px)}.hero__copy{align-self:start;padding-top:64px}.eyebrow{margin:0 0 18px;color:var(--navy);font-size:.72rem;font-weight:760;letter-spacing:.13em;line-height:1.4;text-transform:uppercase}h1,h2{margin:0;font-family:Playfair Display,Georgia,serif;font-weight:610;letter-spacing:-.045em}h1{max-width:650px;font-size:clamp(3.3rem,5.1vw,5.9rem);line-height:.96}h2{font-size:clamp(2.4rem,4.1vw,4.7rem);line-height:1.01}.hero__intro{max-width:510px;margin:30px 0 28px;color:#4e525a;font-size:clamp(1rem,1.25vw,1.18rem);line-height:1.65}.waitlist{max-width:460px;margin-top:22px}.waitlist__row{display:flex;flex-wrap:wrap;gap:10px}.waitlist__input{flex:1 1 220px;min-height:48px;padding:10px 14px;border:1px solid var(--rule-strong);border-radius:2px;color:var(--ink);background:var(--sheet);font:inherit}a.button{display:inline-flex;align-items:center;justify-content:center;text-decoration:none}.waitlist__input::placeholder{color:var(--muted)}.waitlist__input:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.waitlist__note{margin:10px 0 0;color:var(--muted);font-size:.8rem;line-height:1.5}.waitlist--joined{padding:16px 18px;border-left:3px solid var(--navy);background:var(--sheet)}.reassurance{margin:12px 0 0 2px;color:var(--muted);font-size:.82rem}.hero__product{min-width:0}.hero__product .waitlist{margin:20px 0 0 6px}.lesson-stage:focus{outline:none}.lesson-tabs{margin:0 0 14px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.lesson-tabs__tab{min-height:44px;padding:0 10px;border:1px solid var(--rule-strong);border-radius:2px;color:var(--ink);background:var(--sheet);cursor:pointer;font:inherit;font-size:.86rem;font-weight:660;transition:background-color .16s ease,color .16s ease,border-color .16s ease}.lesson-tabs__tab:hover{border-color:var(--navy)}.lesson-tabs__tab[aria-selected=true]{border-color:var(--navy);color:#fff;background:var(--navy)}.lesson-next{margin:0 6px;display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px}.lesson-next:not(:empty){margin-top:18px}.lesson-next p{margin:0;color:#4b4f56;font-size:.9rem}.graph-plate{position:relative;padding:13px;border:1px solid #8f8b83;background:#e8e4dc;box-shadow:0 28px 60px #1f232924,inset 0 0 0 5px var(--paper),inset 0 0 0 6px #b5b0a6}.graph-plate:before{position:absolute;z-index:2;inset:19px;border:1px solid rgba(31,35,41,.2);content:"";pointer-events:none}.registration{position:absolute;z-index:3;width:17px;height:17px;pointer-events:none}.registration:before,.registration:after{position:absolute;background:var(--ink);content:""}.registration:before{top:8px;left:0;width:17px;height:1px}.registration:after{top:0;left:8px;width:1px;height:17px}.registration--tl{top:-9px;left:-9px;--mark-from-x: -7px;--mark-from-y: -7px}.registration--tr{top:-9px;right:-9px;--mark-from-x: 7px;--mark-from-y: -7px}.registration--bl{bottom:-9px;left:-9px;--mark-from-x: -7px;--mark-from-y: 7px}.registration--br{right:-9px;bottom:-9px;--mark-from-x: 7px;--mark-from-y: 7px}.graph-demo{position:relative;height:clamp(600px,74dvh,720px);min-height:600px;overflow:hidden;border:1px solid rgba(31,35,41,.22);background:var(--sheet)}.graph-demo>.graph-experience,.graph-demo>div:not(.graph-loading){height:100%}.lesson-player__native,.lesson-player__native>.app-shell{height:100%}.lesson-sound{min-height:44px;margin-left:auto;padding:0 12px;display:inline-flex;align-items:center;gap:7px;border:1px solid rgba(255,255,255,.6);border-radius:2px;color:#fff;background:transparent;cursor:pointer;font:inherit;font-size:.8rem;font-weight:650;white-space:nowrap}.lesson-sound:hover{background:#ffffff1f}.graph-demo .graph-experience{min-height:100%}.graph-demo .bookend__minutes{color:#5f646b;opacity:1}.graph-loading{height:100%;min-height:600px;color:var(--muted);background:var(--sheet);display:grid;place-items:center;align-content:center;gap:22px;font-size:.82rem;letter-spacing:.06em;text-transform:uppercase}.graph-loading__axis{width:min(240px,55%);aspect-ratio:1.5;border-bottom:2px solid var(--ink);border-left:2px solid var(--ink);background:linear-gradient(145deg,transparent 47%,var(--tax) 48%,var(--tax) 50%,transparent 51%);animation:loading-draw .9s ease-in-out infinite alternate;transform-origin:bottom left}@keyframes loading-draw{0%{opacity:.35;transform:scale(.92)}to{opacity:.9;transform:scale(1)}}.engagement-reveal{display:grid;grid-template-rows:0fr;opacity:0;transform:translateY(-8px);transition:grid-template-rows .28s ease,opacity .26s ease,transform .28s ease}.engagement-reveal--visible{grid-template-rows:1fr;opacity:1;transform:translateY(0)}.engagement-reveal__inner{min-height:0;overflow:hidden;padding:18px 6px 0;color:#4b4f56;font-size:.9rem}.engagement-reveal__inner p{margin:0}.section-shell{width:min(calc(100% - 48px),1180px);margin:0 auto;padding:clamp(90px,10vw,150px) 0;border-top:1px solid var(--rule-strong)}.section-heading{max-width:790px}.section-heading>p:last-child,.library__body>p,.access__copy>p{max-width:640px;margin:28px 0 0;color:var(--muted);font-size:1.04rem;line-height:1.7}.against h2{font-size:clamp(2.2rem,3.4vw,3.5rem)}.against-ledger{margin-top:56px;border-top:1px solid var(--ink)}.against-row{padding:26px 0;border-bottom:1px solid var(--rule);display:grid;grid-template-columns:minmax(130px,.5fr) 1fr 1fr;align-items:start;gap:clamp(24px,3vw,44px)}.against-row__ask{padding-top:3px;color:var(--navy);font-size:.68rem;font-weight:750;letter-spacing:.11em;text-transform:uppercase}.against-cell{padding-left:18px;border-left:2px solid var(--verdict-stop)}.against-cell--good{border-left-color:var(--verdict-good)}.against-cell--part{border-left-color:var(--verdict-part)}.against-cell--stop{border-left-color:var(--verdict-stop)}.against-cell__who{display:block;font-family:Playfair Display,Georgia,serif;font-size:1.14rem;font-weight:640}.against-cell__verdict{display:block;margin:5px 0 10px;font-size:.66rem;font-weight:750;letter-spacing:.11em;text-transform:uppercase}.against-cell--good .against-cell__verdict{color:var(--verdict-good)}.against-cell--part .against-cell__verdict{color:var(--verdict-part)}.against-cell--stop .against-cell__verdict{color:var(--verdict-stop)}.against-cell p{margin:0;color:var(--muted);font-size:.94rem;line-height:1.6}.against-honest{max-width:720px;margin:36px 0 0;color:var(--muted);font-size:.96rem;line-height:1.7}.against-honest strong{color:var(--ink)}.library{position:relative;display:grid;grid-template-columns:minmax(240px,.55fr) minmax(520px,1.45fr);gap:clamp(40px,7vw,96px)}.library__count{color:var(--navy);font-family:Playfair Display,Georgia,serif;font-size:clamp(8rem,17vw,14rem);font-weight:560;letter-spacing:-.09em;line-height:.75}.library__body h2{max-width:800px}.library__body .library__free{margin-top:18px;font-size:.94rem}.library-grid{grid-column:1 / -1;margin:0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--ink);background:linear-gradient(var(--rule),var(--rule)) bottom / 100% 1px no-repeat}.library-tile{display:flex;flex-direction:column;align-items:flex-start;padding:22px 18px 24px 0;border-bottom:1px solid var(--rule)}.library-tile__pic{display:block;width:100%;max-width:230px;height:auto;aspect-ratio:110 / 72;margin-bottom:10px}.library-tile__title{font-family:Playfair Display,Georgia,serif;font-size:1.04rem;font-weight:620;line-height:1.25}.library-tile__meta{margin-top:5px;color:var(--muted);font-size:.76rem;font-weight:650}.library-tile__free{margin-left:6px;color:var(--navy);font-size:.66rem;font-weight:750;letter-spacing:.11em;text-transform:uppercase}.library-tile__free:before{content:"· "}@media(min-width:560px){.library-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(min-width:860px){.library-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(min-width:1120px){.library-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}.access{display:grid;grid-template-columns:minmax(420px,1.25fr) minmax(330px,.75fr);align-items:start;gap:clamp(65px,10vw,150px)}.access__copy h2{max-width:670px}.access-facts{margin:58px 0 0;border-top:1px solid var(--ink)}.access-facts div{padding:17px 0;border-bottom:1px solid var(--rule);display:grid;grid-template-columns:120px 1fr;gap:24px}.access-facts dt{color:var(--muted);font-size:.78rem}.access-facts dd{margin:0;font-weight:620}.price-sheet{position:relative;padding:clamp(32px,4vw,52px);border:1px solid var(--ink);background:var(--sheet);box-shadow:12px 12px 0 var(--navy)}.price-sheet:before{position:absolute;inset:11px;border:1px solid var(--rule);content:"";pointer-events:none}.price-sheet>*{position:relative;z-index:1}.price-sheet__label{color:var(--navy);font-size:.71rem;font-weight:750;letter-spacing:.12em;text-transform:uppercase}.price-sheet__price{margin-top:30px;font-family:Playfair Display,Georgia,serif;font-size:clamp(4.8rem,7.5vw,7rem);font-weight:590;letter-spacing:-.075em;line-height:.85}.price-sheet__term{margin:14px 0 38px;color:var(--muted);font-weight:560}.price-sheet__comparison{margin:0 0 26px;padding-top:22px;border-top:1px solid var(--rule);color:var(--muted);line-height:1.5}.price-sheet__comparison strong{color:var(--ink)}.price-sheet__cta{display:flex}.price-sheet__note{margin:12px 0 0;color:var(--muted);font-size:.76rem;text-align:center}.questions{display:grid;grid-template-columns:minmax(250px,.65fr) minmax(500px,1.35fr);gap:clamp(55px,9vw,135px)}.section-heading--compact h2{font-size:clamp(2.9rem,4.4vw,4.6rem)}.question-list{border-top:1px solid var(--ink)}.question-list details{border-bottom:1px solid var(--rule)}.question-list summary{position:relative;min-height:74px;padding:0 45px 0 0;cursor:pointer;font-family:Playfair Display,Georgia,serif;font-size:1.16rem;font-weight:610;list-style:none;display:flex;align-items:center}.question-list summary::-webkit-details-marker{display:none}.question-list summary:after{position:absolute;right:2px;color:var(--navy);content:"+";font-family:Geist,Arial,sans-serif;font-size:1.4rem;font-weight:400}.question-list details[open] summary:after{content:"−"}.question-list p{max-width:640px;margin:-2px 45px 25px 0;color:var(--muted);line-height:1.65}.question-list details::details-content{block-size:0;overflow:hidden;opacity:0;transform:translateY(-6px);transition:block-size .3s cubic-bezier(.22,1,.36,1),transform .3s cubic-bezier(.22,1,.36,1),opacity .22s ease,content-visibility .3s allow-discrete}.question-list details[open]::details-content{block-size:auto;opacity:1;transform:translateY(0)}.final-close{padding:clamp(90px,11vw,155px) max(24px,calc((100vw - 1180px)/2));color:#fff;background:var(--navy-dark)}.final-close .eyebrow{color:#c8cff8}.final-close h2{max-width:840px}.final-close>p:not(.eyebrow){margin:24px 0 0;color:#ffffffb8;font-size:1.05rem}.final-close__actions{margin-top:38px;display:flex;flex-wrap:wrap;gap:12px}.site-footer{min-height:110px;padding:30px max(24px,calc((100vw - 1180px)/2));border-top:1px solid rgba(255,255,255,.15);color:#ffffffa3;background:var(--navy-dark);display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:35px;font-size:.76rem}.site-footer span{color:#fff;font-family:Playfair Display,Georgia,serif;font-size:1.2rem;font-weight:680}.site-footer p{margin:0}.site-footer a{color:#ffffffd1;text-decoration:underline;text-underline-offset:3px}.site-footer a:hover,.site-footer a:focus-visible{color:#fff}.site-footer__links{display:flex;flex-wrap:wrap;gap:10px 22px}.checkout-backdrop{position:fixed;z-index:500;inset:0;padding:24px;background:#141930b8;backdrop-filter:blur(8px);display:grid;place-items:center}.checkout-dialog{position:relative;width:min(100%,520px);max-height:calc(100dvh - 48px);overflow:auto;padding:48px;border:1px solid var(--ink);background:var(--sheet);box-shadow:14px 14px 0 var(--navy)}.checkout-dialog__close{position:absolute;top:16px;right:18px;min-width:48px;min-height:44px;border:0;color:var(--navy);background:transparent;cursor:pointer;font-size:.78rem;font-weight:680;text-decoration:underline;text-underline-offset:3px}.checkout-dialog h2{font-size:clamp(2.6rem,7vw,4.2rem)}.checkout-dialog__intro{margin:22px 0 30px;color:var(--muted);line-height:1.6}.checkout-summary{margin:0 0 30px;border-top:1px solid var(--ink)}.checkout-summary div{padding:13px 0;border-bottom:1px solid var(--rule);display:flex;justify-content:space-between;gap:24px}.checkout-summary dt{color:var(--muted)}.checkout-summary dd{margin:0;font-weight:690;text-align:right}@media(max-width:1050px){.site-nav a:nth-child(2),.site-nav a:nth-child(4){display:none}.hero{width:min(calc(100% - 40px),900px);padding-top:38px;grid-template-columns:1fr}.hero__copy{max-width:720px;padding-top:20px}h1{font-size:clamp(3.8rem,9vw,6rem)}.questions{grid-template-columns:1fr}.against-row{grid-template-columns:120px 1fr 1fr;gap:24px}.library{grid-template-columns:190px 1fr}.library__count{font-size:9rem}.access{grid-template-columns:1.15fr .85fr;gap:50px}}@media(max-width:820px){.site-header{width:calc(100% - 20px);top:8px;margin-top:8px}.site-header__bar{grid-template-columns:auto 1fr auto;gap:14px}.site-nav a:not([href="/about"]){display:none}.hero,.section-shell{width:min(calc(100% - 32px),720px)}.against-row{grid-template-columns:1fr 1fr;gap:18px 24px}.against-row__ask{grid-column:1 / -1}.hero{margin-top:20px;padding-bottom:68px}.graph-plate{padding:8px}.graph-plate:before{inset:12px}.graph-demo{height:min(760px,88dvh);min-height:640px}.graph-demo .mode-dial__dot{width:44px;height:44px}.graph-demo .explore-chip,.graph-demo .explore-rail__coin{min-height:44px}.engagement-reveal__inner{grid-template-columns:1fr auto}.engagement-reveal__inner p{grid-column:1 / -1}.library,.access{grid-template-columns:1fr}.library__count{margin-bottom:4px;font-size:8rem}.price-sheet{max-width:520px}.site-footer{grid-template-columns:1fr;gap:9px;padding-block:38px}}@media(max-width:640px){.site-header{--bar-height: 60px}.site-header__bar{padding-left:15px;gap:12px}.site-header__bar>.wordmark{font-size:1.17rem}[data-scrolled] .site-header__bar>.wordmark{font-size:1.06rem}.site-header .button{min-height:44px;padding-inline:14px;font-size:.8rem}.hero{width:calc(100% - 20px)}.hero__copy{padding-inline:7px}h1{font-size:clamp(3.05rem,15vw,4.8rem)}.hero__intro{margin-top:23px}.lesson-tabs__tab{padding:0 6px;font-size:.82rem}.graph-demo{min-height:620px;height:min(700px,84dvh)}.registration{display:none}.engagement-reveal__inner{grid-template-columns:1fr;gap:8px}.section-shell{width:calc(100% - 32px);padding-block:78px}h2{font-size:clamp(2.5rem,12vw,3.8rem)}.against-row{grid-template-columns:1fr;gap:18px}.access-facts div{grid-template-columns:92px 1fr}.price-sheet{padding:34px 28px;box-shadow:8px 8px 0 var(--navy)}.final-close{padding-inline:20px}.final-close__actions,.final-close__actions .button{width:100%}.checkout-backdrop{padding:12px}.checkout-dialog{padding:44px 26px 28px;box-shadow:7px 7px 0 var(--navy)}}[data-reveal-armed] [data-reveal],[data-reveal-armed] [data-stamp]{transition-delay:calc(var(--step, 0) * 70ms)}[data-reveal-armed] [data-reveal]{opacity:0;transform:translateY(14px);transition-property:opacity,transform;transition-duration:.42s,.56s;transition-timing-function:ease,cubic-bezier(.22,1,.36,1)}[data-reveal-armed] [data-reveal].is-revealed{opacity:1;transform:none}[data-reveal-armed] [data-stamp]{opacity:0;transform:scale(1.045);transition-property:opacity,transform;transition-duration:.3s,.64s;transition-timing-function:ease,cubic-bezier(.16,1.02,.3,1)}[data-reveal-armed] [data-stamp].is-revealed{opacity:1;transform:none}[data-reveal-armed] [data-rule]{border-top-color:transparent;background-image:linear-gradient(to right,var(--rule-strong),var(--rule-strong));background-origin:border-box;background-position:left top;background-repeat:no-repeat;background-size:0 1px;transition:background-size .78s cubic-bezier(.22,1,.36,1)}[data-reveal-armed] [data-rule].is-revealed{background-size:100% 1px}[data-reveal-armed] [data-rise]{clip-path:inset(100% 0 0 0);transition:clip-path .76s cubic-bezier(.22,1,.36,1)}[data-reveal-armed] [data-rise].is-revealed{clip-path:inset(0 0 0 0)}[data-reveal-armed] .registration{animation:mark-tighten .64s cubic-bezier(.22,1,.36,1) .24s both}@keyframes mark-tighten{0%{opacity:0;transform:translate(var(--mark-from-x, 0),var(--mark-from-y, 0))}to{opacity:1;transform:translate(0)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
