@import url('https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=DM+Sans:wght@400;500;600;700&family=Source+Serif+4:ital,wght@0,500;0,600;1,500;1,600&display=swap');
:root{--ink:#101b26;--ink-2:#1d2e3c;--paper:#f2eee4;--paper-2:#fbf8f1;--line:#c9c4b8;--muted:#6e746f;--amber:#e7b35a;--coral:#d8785e;--teal:#6d9b8e;--shadow:0 24px 60px rgba(16,27,38,.14)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',system-ui,sans-serif;line-height:1.5}.grain{position:fixed;inset:0;pointer-events:none;opacity:.05;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140' viewBox='0 0 140 140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.7'/%3E%3C/svg%3E");z-index:20}.skip-link{position:absolute;left:1rem;top:-3rem;padding:.7rem 1rem;background:var(--amber);color:var(--ink);z-index:30}.skip-link:focus{top:1rem}.topbar{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;padding:1rem clamp(1.2rem,4vw,4.5rem);background:rgba(242,238,228,.9);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:.65rem;color:var(--ink);text-decoration:none;letter-spacing:.08em}.brand-mark{display:grid;place-items:center;width:2rem;height:2rem;background:var(--ink);color:var(--amber);font-family:'DM Mono',monospace;font-weight:500}.brand strong,.brand em{display:block;font-size:.76rem;line-height:1.05;font-style:normal}.brand em{font-weight:400;letter-spacing:.16em}.topbar nav{display:flex;gap:1.6rem}.topbar nav a,.text-link,.footer a{font-size:.78rem;color:var(--ink);text-decoration:none}.topbar nav a:hover,.text-link:hover,.footer a:hover{text-decoration:underline;text-underline-offset:4px}.language-toggle{display:flex;gap:.35rem;align-items:center;font-family:'DM Mono',monospace;font-size:.72rem}.lang-button{border:0;background:none;padding:.2rem;color:var(--muted);font:inherit;cursor:pointer}.lang-button.is-active{color:var(--ink);font-weight:600;border-bottom:2px solid var(--coral)}.section-pad{padding:clamp(4.5rem,9vw,8.5rem) clamp(1.2rem,7vw,8rem)}.hero{min-height:calc(100vh - 4.5rem);display:grid;grid-template-columns:minmax(0,1fr) minmax(360px, .9fr);align-items:center;gap:clamp(2rem,7vw,8rem);background:linear-gradient(135deg,#f2eee4 60%,#e6eadf 60%)}.eyebrow,.section-kicker,.task-meta,.smiles-box,.card-index,.failure-code{font-family:'DM Mono',monospace;letter-spacing:.08em;text-transform:uppercase;font-size:.67rem}.eyebrow{display:flex;align-items:center;gap:.5rem;color:var(--muted)}.eyebrow-dot{width:.45rem;height:.45rem;border-radius:50%;background:var(--coral);display:inline-block}.hero h1{max-width:700px;margin:1.1rem 0 1.25rem;font-family:'Source Serif 4',Georgia,serif;font-size:clamp(3.3rem,8vw,7.2rem);line-height:.92;letter-spacing:-.055em;font-weight:500}.hero h1 i{color:var(--coral);font-style:italic}.hero-lede{max-width:570px;font-size:clamp(1rem,1.5vw,1.22rem);color:var(--ink-2)}.hero-actions{display:flex;align-items:center;gap:1.4rem;flex-wrap:wrap;margin-top:2rem}.button{display:inline-flex;align-items:center;gap:1rem;border:1px solid var(--ink);padding:.9rem 1.25rem;font:600 .76rem 'DM Sans',sans-serif;cursor:pointer;text-decoration:none}.button-primary{background:var(--ink);color:var(--paper)}.button-primary:hover{background:var(--ink-2);transform:translateY(-2px)}.button-quiet{background:transparent;color:var(--ink);border-color:var(--line)}.button:focus-visible,.difficulty-button:focus-visible,.cliff-button:focus-visible,.lang-button:focus-visible,a:focus-visible{outline:3px solid var(--coral);outline-offset:3px}.hero-proof{display:flex;align-items:baseline;gap:.75rem;margin-top:3.4rem;max-width:390px;border-top:1px solid var(--line);padding-top:1rem}.proof-number{font:600 1.35rem 'DM Mono',monospace;color:var(--coral)}.hero-proof span:last-child{font-size:.8rem;color:var(--muted)}.hero-visual{position:relative;min-height:430px;background:var(--ink);box-shadow:var(--shadow);overflow:hidden}.hero-visual:before{content:'';position:absolute;inset:1rem;border:1px solid rgba(242,238,228,.25);pointer-events:none}.visual-stamp{position:absolute;z-index:1;left:2rem;top:2rem;color:var(--paper);display:flex;flex-direction:column;gap:.25rem}.visual-stamp span,.visual-stamp small{font: .62rem 'DM Mono',monospace;letter-spacing:.12em;color:#abb5b2}.visual-stamp strong{font:1.35rem 'DM Mono',monospace;color:var(--amber)}.molecule{width:100%;height:auto;position:absolute;inset:4rem 0 auto}.bond{fill:none;stroke:#d7ded7;stroke-width:4}.bond.thin{opacity:.35;stroke-width:2}.bond.accent{stroke:var(--amber)}.node{fill:var(--ink);stroke:#d7ded7;stroke-width:3}.node.hot{fill:var(--coral);stroke:var(--amber);stroke-width:4}.molecule text{font:600 1rem 'DM Mono',monospace;fill:var(--amber)}.molecule .svg-note{font-size:.7rem;fill:#abb5b2;font-weight:400}.visual-note{position:absolute;bottom:2rem;left:2rem;right:2rem;display:flex;gap:1rem;align-items:flex-start;border-top:1px solid rgba(242,238,228,.25);padding-top:1rem;color:var(--paper)}.visual-note span{font: .8rem 'DM Mono',monospace;color:var(--amber)}.visual-note p{margin:0;max-width:300px;font-size:.83rem}.section-kicker{display:flex;gap:1.2rem;color:var(--coral);margin-bottom:1.4rem}.section-kicker span:first-child{color:var(--muted)}.section-heading{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(240px,.7fr);gap:3rem;align-items:end}.section-heading h2,.limits-panel h2{margin:0;font:500 clamp(2.2rem,4.7vw,4.8rem)/.98 'Source Serif 4',Georgia,serif;letter-spacing:-.045em}.section-heading p{margin:0;color:var(--muted);max-width:410px}.evidence{background:var(--paper-2)}.evidence-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:4.5rem}.evidence-card{min-height:270px;padding:1.6rem;display:flex;flex-direction:column;justify-content:space-between}.evidence-card strong{font:500 clamp(3rem,6vw,5.3rem)/.9 'Source Serif 4',Georgia,serif;letter-spacing:-.06em}.evidence-card h3{margin:.8rem 0 0;font:600 1rem 'DM Sans',sans-serif}.evidence-card p{margin:0;color:var(--muted);font-size:.84rem;max-width:280px}.card-dark{background:var(--ink);color:var(--paper)}.card-dark p{color:#aab6b1}.card-paper{border:1px solid var(--line);background:var(--paper)}.card-amber{background:var(--amber)}.card-amber p{color:#594b35}.card-index{opacity:.65}.evidence-foot{display:flex;align-items:center;gap:1rem;margin-top:2rem}.evidence-foot .rule{width:54px;height:1px;background:var(--coral)}.evidence-foot p{font-size:.78rem;color:var(--muted);max-width:680px;margin:0}.try{background:var(--ink);color:var(--paper)}.try .section-heading p,.try .section-kicker{color:#aab6b1}.try .section-kicker span:first-child{color:#71827f}.task-shell{display:grid;grid-template-columns:230px minmax(0,1fr);margin-top:4rem;border:1px solid rgba(242,238,228,.25);background:#182632}.task-sidebar{padding:1.5rem;border-right:1px solid rgba(242,238,228,.25)}.task-sidebar .eyebrow{color:#889893}.difficulty-button{display:grid;grid-template-columns:2rem 1fr;gap:.1rem .65rem;width:100%;margin:1rem 0 0;padding:1rem 0;text-align:left;border:0;border-top:1px solid rgba(242,238,228,.17);background:none;color:#98aaa4;cursor:pointer}.difficulty-button span{grid-row:span 2;font: .67rem 'DM Mono',monospace;color:#728782}.difficulty-button b{font-size:.95rem;color:inherit}.difficulty-button small{font-size:.7rem;color:inherit}.difficulty-button.is-active b{color:var(--amber)}.task-side-note{margin-top:3rem;border-left:2px solid var(--coral);padding-left:1rem}.task-side-note span{font:1.25rem 'DM Mono',monospace;color:var(--coral)}.task-side-note p{font-size:.72rem;color:#9ca9a5}.task-main{padding:clamp(1.5rem,4vw,3.5rem)}.task-meta{display:flex;justify-content:space-between;color:#869791}.task-question{margin:3rem 0 2rem}.task-question .eyebrow{color:#8c9d97}.smiles-box{margin:1rem 0 1.5rem;padding:1rem;background:#0f1b24;border-left:3px solid var(--amber);color:var(--amber);font-size:.8rem;text-transform:none;letter-spacing:0;overflow:auto}.task-question h3{margin:0;max-width:700px;font:500 clamp(1.6rem,3vw,2.6rem)/1.1 'Source Serif 4',Georgia,serif}.options{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem}.option-card{display:flex;align-items:flex-start;gap:1rem;padding:1rem;border:1px solid rgba(242,238,228,.24);background:transparent;color:var(--paper);text-align:left;cursor:pointer}.option-card:hover{border-color:var(--amber)}.option-card.is-selected{border-color:var(--amber);background:rgba(231,179,90,.12)}.option-letter{font: .75rem 'DM Mono',monospace;color:var(--amber);border:1px solid var(--amber);padding:.2rem .35rem}.option-card strong{font-size:.85rem}.option-card small{display:block;color:#94a39e;font-size:.7rem;margin-top:.2rem}.task-actions{display:flex;gap:.7rem;margin-top:1.5rem}.feedback{display:flex;align-items:flex-start;gap:.8rem;min-height:3.6rem;margin-top:1.5rem;padding:1rem;background:rgba(242,238,228,.07);font-size:.82rem;color:#cad3cf}.feedback.is-correct{border-left:3px solid var(--teal)}.feedback.is-wrong{border-left:3px solid var(--coral)}.feedback-icon{color:var(--amber);font:1.15rem 'DM Mono',monospace}.cliff{background:var(--paper-2)}.cliff-shell{margin-top:4rem;padding:1.2rem;background:#e8e5da;border:1px solid var(--line)}.cliff-controls{display:flex;gap:.5rem;margin-bottom:1rem}.cliff-button{flex:1;padding:1rem;text-align:left;border:1px solid var(--line);background:var(--paper);color:var(--muted);cursor:pointer}.cliff-button span,.cliff-button small{display:block}.cliff-button span{font-weight:600;color:var(--ink)}.cliff-button small{font:.64rem 'DM Mono',monospace;margin-top:.3rem}.cliff-button.is-active{background:var(--ink);color:var(--paper);border-color:var(--ink)}.cliff-button.is-active span{color:var(--amber)}.cliff-button.is-active small{color:#aab6b1}.metric-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.metric-card{padding:1.4rem;background:var(--paper);border:1px solid var(--line);min-height:250px}.metric-card-outline{background:transparent}.metric-card-amber{background:var(--amber);border-color:var(--amber)}.metric-card strong{display:block;margin-top:1.7rem;font:500 clamp(3rem,6vw,5rem)/.9 'Source Serif 4',Georgia,serif;letter-spacing:-.06em}.metric-card strong span{font:500 1.1rem 'DM Mono',monospace;letter-spacing:0}.metric-card h3{font-size:.86rem;margin:.7rem 0 1rem}.metric-card p:last-child{font-size:.78rem;color:var(--muted);margin-bottom:0}.metric-card-amber p:last-child{color:#604f31}.meter{height:5px;background:#d9d6cc}.meter span{display:block;height:100%;background:var(--teal);transition:width .35s}.meter-coral span{background:var(--coral)}.cliff-callout{display:flex;gap:1rem;align-items:center;margin-top:1rem;padding:1.2rem;background:var(--ink);color:var(--paper)}.callout-number{font:500 2.8rem 'Source Serif 4',Georgia,serif;color:var(--coral);white-space:nowrap}.callout-number span{font: .8rem 'DM Mono',monospace}.cliff-callout p{margin:0;font-size:.8rem}.cliff-callout b,.cliff-callout span{display:block}.cliff-callout span{color:#aab6b1;margin-top:.2rem}.chart-caption{font:.72rem 'DM Mono',monospace;color:var(--muted);margin:1.3rem 0 .3rem}.failures{background:var(--paper)}.failure-layout{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-top:4rem}.failure-list{border-top:1px solid var(--line)}.failure-row{display:grid;grid-template-columns:3.2rem 1fr 1rem;gap:1rem;padding:1.3rem 0;border-bottom:1px solid var(--line)}.failure-code{color:var(--coral);padding-top:.2rem}.failure-row h3{margin:0;font-size:.95rem}.failure-row p{margin:.4rem 0 0;font-size:.8rem;color:var(--muted)}.failure-signal{color:var(--coral)}.case-study{margin:0}.case-study img{display:block;width:100%;background:#fff;border:1px solid var(--line)}.case-study figcaption{font-size:.72rem;color:var(--muted);margin-top:.7rem}.limits{background:var(--ink);color:var(--paper)}.limits-panel{display:grid;grid-template-columns:minmax(0,1fr) minmax(250px,.7fr);gap:5rem;align-items:start}.limits .section-kicker{color:var(--amber)}.limits-panel h2{max-width:680px}.limits-panel>div>p{max-width:560px;color:#aab6b1}.limit-list{border-top:1px solid rgba(242,238,228,.25)}.limit-list div{display:grid;grid-template-columns:2rem 1fr;gap:1rem;border-bottom:1px solid rgba(242,238,228,.25);padding:1rem 0}.limit-list span{font: .72rem 'DM Mono',monospace;color:var(--amber)}.limit-list p{margin:0;color:#bdc9c3;font-size:.8rem}.reproduce{display:grid;grid-template-columns:.8fr 1.2fr;gap:3rem;margin-top:6rem;padding-top:2rem;border-top:1px solid rgba(242,238,228,.25)}.reproduce .eyebrow{color:var(--amber)}.reproduce h3{font:500 2rem 'Source Serif 4',Georgia,serif;margin:.5rem 0}.reproduce p{color:#aab6b1;font-size:.82rem}.resource-links{display:grid;grid-template-columns:repeat(2,1fr);gap:.7rem}.resource-links a{display:grid;grid-template-columns:1.2rem 1fr;gap:.1rem .6rem;padding:1rem;border:1px solid rgba(242,238,228,.25);color:var(--paper);text-decoration:none}.resource-links a:hover{border-color:var(--amber)}.resource-links a span{grid-row:span 2;color:var(--amber)}.resource-links b{font-size:.85rem}.resource-links small{color:#8fa19b;font-size:.7rem}.footer{display:flex;align-items:center;gap:.9rem;padding:1.5rem clamp(1.2rem,7vw,8rem);background:#0c151d;color:var(--paper)}.footer p{display:flex;flex-direction:column;gap:.1rem;margin:0;flex:1}.footer p strong{font-size:.75rem;letter-spacing:.12em}.footer p small{color:#85958f;font-size:.7rem}.footer a{color:var(--paper);font-size:.75rem}@media (max-width:900px){.topbar nav{display:none}.hero{grid-template-columns:1fr;padding-top:4rem}.hero-visual{min-height:390px}.section-heading,.limits-panel,.reproduce{grid-template-columns:1fr;gap:1.5rem}.evidence-grid,.metric-grid{grid-template-columns:1fr}.failure-layout{grid-template-columns:1fr}.task-shell{grid-template-columns:1fr}.task-sidebar{border-right:0;border-bottom:1px solid rgba(242,238,228,.25);display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.task-sidebar .eyebrow,.task-side-note{grid-column:1/-1}.difficulty-button{margin:0}.task-side-note{margin-top:1rem}.reproduce{margin-top:4rem}.resource-links{max-width:600px}}@media (max-width:600px){.topbar{padding:.9rem 1rem}.section-pad{padding:4rem 1rem}.hero h1{font-size:3.55rem}.hero-visual{min-height:340px}.molecule{top:5rem}.visual-note{bottom:1.3rem;left:1.3rem}.options,.resource-links{grid-template-columns:1fr}.cliff-controls{flex-direction:column}.cliff-button{flex:auto}.task-sidebar{grid-template-columns:1fr}.task-side-note{grid-column:auto}.failure-row{grid-template-columns:2.5rem 1fr 1rem}.case-study img{min-height:0}.footer{align-items:flex-start}.footer a{margin-left:auto}}@media (prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}}
/* Academic Project Page template adaptation */
.academic-nav{position:sticky;top:0;z-index:10;background:rgba(255,255,255,.93);backdrop-filter:blur(12px);border-bottom:1px solid #e2e8f0}.academic-nav-inner{max-width:1120px;margin:auto;padding:.8rem 1.25rem;display:flex;align-items:center;gap:2rem}.template-brand{font-weight:800;color:#1e293b;text-decoration:none;letter-spacing:-.03em}.academic-nav nav{display:flex;gap:1.3rem;margin-left:auto}.academic-nav nav a{color:#64748b;font-size:.8rem;text-decoration:none}.academic-nav nav a:hover{color:#2563eb}.academic-nav .language-toggle{margin-left:.3rem}.academic-hero{padding:5.2rem 1.2rem 4rem;background:#fff;text-align:center}.academic-hero-inner{max-width:1020px;margin:auto}.publication-kicker{font:600 .7rem 'DM Mono',monospace;letter-spacing:.14em;color:#2563eb}.publication-title{max-width:900px;margin:1.1rem auto 1.4rem;font:700 clamp(1.75rem,3.5vw,3rem)/1.18 'DM Sans',system-ui,sans-serif;letter-spacing:-.035em;color:#1e293b}.publication-authors{display:flex;flex-wrap:wrap;justify-content:center;gap:.45rem 1rem;max-width:900px;margin:auto;font-size:.92rem;color:#334155}.publication-authors span:not(:last-child)::after{content:','}.publication-authors sup{color:#2563eb}.publication-affiliations{max-width:800px;margin:.85rem auto 1.7rem;color:#64748b;font-size:.83rem}.publication-links{display:flex;justify-content:center;flex-wrap:wrap;gap:.55rem}.academic-button{display:inline-flex;padding:.7rem 1rem;border:1px solid #cbd5e1;border-radius:999px;background:#fff;color:#1e293b;font-size:.78rem;font-weight:700;text-decoration:none;box-shadow:0 1px 2px rgba(15,23,42,.05)}.academic-button:hover{border-color:#2563eb;color:#2563eb;transform:translateY(-1px)}.academic-button.primary{background:#1e293b;border-color:#1e293b;color:#fff}.teaser-wrap{max-width:1060px;margin:3rem auto 0}.teaser-wrap img{width:100%;display:block;border-radius:12px;box-shadow:0 18px 45px rgba(15,23,42,.14);border:1px solid #e2e8f0}.teaser-caption{margin:.8rem auto 0;max-width:820px;color:#64748b;font-size:.78rem}.academic-section{padding:5.5rem 1.2rem;background:#fff}.academic-section:nth-of-type(even){background:#f8fafc}.academic-container{max-width:1120px;margin:auto}.academic-container.narrow{max-width:860px}.academic-section h2{color:#1e293b}.abstract-section h2,.bibtex-section h2{margin:0 0 1.2rem;font-size:2rem;text-align:center}.abstract-section p{color:#475569;font-size:1.02rem;line-height:1.85}.method-section{text-align:center}.method-section>.academic-container>h2{margin:0 0 .5rem;font-size:2.2rem}.section-intro{color:#64748b}.method-figure{display:block;max-width:940px;width:100%;margin:2.5rem auto 0;border:1px solid #e2e8f0;border-radius:10px;background:#fff}.method-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-top:1.4rem;text-align:left}.method-grid article{padding:1.1rem;background:#fff;border:1px solid #e2e8f0;border-radius:10px}.method-grid article>span{font:600 .66rem 'DM Mono',monospace;color:#2563eb}.method-grid h3{font-size:.9rem;margin:.6rem 0}.method-grid p{font-size:.77rem;color:#64748b;margin:0}.interactive-section,.results-section,.failure-section{background:#fff}.limits-section{background:#0f172a;color:#fff}.limits-section .limits-panel{display:grid;grid-template-columns:1fr 1fr;gap:4rem}.limits-section h2{color:#fff}.limits-section .section-kicker{color:#60a5fa}.limits-section> .academic-container>div>p{color:#cbd5e1}.resource-panel{display:grid;grid-template-columns:.8fr 1.2fr;gap:3rem;margin-top:3.5rem;padding-top:2.5rem;border-top:1px solid #334155}.resource-panel h3{font:500 2rem 'Source Serif 4',Georgia,serif;color:#fff;margin:.3rem 0}.resource-panel p{color:#cbd5e1}.resource-links a{border-color:#334155}.bibtex-section{background:#f8fafc}.bibtex-header{display:flex;align-items:center;justify-content:space-between}.bibtex-header h2{text-align:left;margin:0}.copy-bibtex-btn{border:1px solid #cbd5e1;background:#fff;border-radius:6px;padding:.55rem .8rem;cursor:pointer}.bibtex-section pre{margin:1rem 0 1.2rem;padding:1.2rem;overflow:auto;background:#0f172a;color:#cbd5e1;border-radius:8px;font: .78rem/1.55 'DM Mono',monospace}.template-credit{font-size:.75rem;color:#64748b}.template-credit a{color:#2563eb}.academic-footer{display:flex;justify-content:space-between;align-items:center;padding:1.3rem max(1.2rem,calc((100vw - 1120px)/2));background:#020617;color:#cbd5e1;font-size:.75rem}.academic-footer a{color:#93c5fd;text-decoration:none}@media(max-width:800px){.academic-nav nav{display:none}.academic-nav-inner{justify-content:space-between}.method-grid,.limits-section .limits-panel,.resource-panel{grid-template-columns:1fr}.publication-title{font-size:clamp(1.65rem,4.5vw,2rem)}.academic-section{padding:4rem 1rem}}
/* Unified academic palette: template blue, slate, and white only. */
:root{--ink:#0f172a;--ink-2:#334155;--paper:#ffffff;--paper-2:#f8fafc;--line:#e2e8f0;--muted:#64748b;--amber:#2563eb;--coral:#2563eb;--teal:#2563eb;--shadow:0 20px 50px rgba(15,23,42,.10)}
body{background:#fff;color:#0f172a}.grain{opacity:.025}.academic-hero{background:#fff}.academic-section:nth-of-type(even),.evidence{background:#f8fafc}.card-amber{background:#eff6ff;color:#0f172a;border:1px solid #bfdbfe}.card-amber p{color:#475569}.card-dark{background:#0f172a}.try{background:#f8fafc;color:#0f172a}.try .section-heading p,.try .section-kicker{color:#64748b}.try .section-kicker span:first-child{color:#94a3b8}.task-shell{background:#0f172a;border-color:#cbd5e1}.metric-card-amber{background:#eff6ff;border-color:#bfdbfe}.metric-card-amber p:last-child{color:#475569}.limits-section{background:#0f172a}.academic-button.primary,.button-primary{background:#0f172a;border-color:#0f172a}.academic-button.primary:hover,.button-primary:hover{background:#1e3a8a}.failure-signal,.failure-code{color:#2563eb}.cliff-callout{background:#0f172a}.callout-number{color:#2563eb}.meter span{background:#2563eb}.meter-coral span{background:#2563eb}.visual-stamp strong{color:#93c5fd}.visual-note span,.molecule text{color:#93c5fd}.node.hot{fill:#2563eb;stroke:#93c5fd}.bond.accent{stroke:#60a5fa}.rule{background:#2563eb!important}.section-kicker{color:#2563eb}.publication-kicker{color:#2563eb}.lang-button.is-active{border-bottom-color:#2563eb}.option-card:hover,.option-card.is-selected{border-color:#60a5fa}.option-letter{color:#93c5fd;border-color:#60a5fa}.feedback-icon{color:#93c5fd}.resource-links a:hover{border-color:#60a5fa}.academic-footer{background:#020617}.template-credit a{color:#2563eb}
/* Light-only surface pass: keep the academic page airy and paper-like. */
body{background:#fff;color:#0f172a}.academic-hero,.academic-section,.academic-section:nth-of-type(even),.evidence,.try,.results-section,.failure-section,.limits-section,.bibtex-section{background:#fff;color:#0f172a}.academic-section:nth-of-type(even),.try,.results-section{background:#f8fafc}.card-dark{background:#eff6ff;color:#0f172a;border:1px solid #bfdbfe}.card-dark p{color:#475569}.task-shell{background:#fff;border:1px solid #dbe4ee;box-shadow:0 14px 36px rgba(15,23,42,.07)}.task-sidebar{background:#f8fafc;border-right:1px solid #e2e8f0}.task-sidebar .eyebrow{color:#64748b}.difficulty-button{color:#64748b;border-top-color:#e2e8f0}.difficulty-button b{color:#334155}.difficulty-button small{color:#64748b}.difficulty-button.is-active b{color:#2563eb}.task-side-note{border-left-color:#2563eb}.task-side-note span{color:#2563eb}.task-side-note p{color:#64748b}.task-main{background:#fff;color:#0f172a}.task-main .task-meta,.task-main .eyebrow{color:#64748b}.smiles-box{background:#eff6ff;border-left-color:#2563eb;color:#1d4ed8}.task-question h3{color:#0f172a}.option-card{background:#fff;border-color:#cbd5e1;color:#0f172a}.option-card:hover,.option-card.is-selected{border-color:#2563eb;background:#eff6ff}.option-card strong{color:#0f172a}.option-card small{color:#64748b}.option-letter{color:#2563eb;border-color:#93c5fd}.button-quiet{background:#fff;color:#0f172a;border-color:#cbd5e1}.feedback{background:#f8fafc;color:#334155;border:1px solid #e2e8f0}.feedback.is-correct{border-left-color:#2563eb}.feedback.is-wrong{border-left-color:#dc2626}.cliff-shell{background:#fff;border-color:#dbe4ee;box-shadow:0 14px 36px rgba(15,23,42,.06)}.cliff-button{background:#fff;border-color:#cbd5e1;color:#64748b}.cliff-button span{color:#0f172a}.cliff-button.is-active{background:#eff6ff;border-color:#2563eb;color:#334155}.cliff-button.is-active span{color:#1d4ed8}.cliff-button.is-active small{color:#64748b}.metric-card,.metric-card-outline{background:#fff;border-color:#e2e8f0}.metric-card-amber{background:#eff6ff;border-color:#bfdbfe}.metric-card p:last-child,.metric-card-amber p:last-child{color:#64748b}.cliff-callout{background:#eff6ff;border:1px solid #bfdbfe;color:#0f172a}.cliff-callout span{color:#64748b}.callout-number{color:#2563eb}.chart-caption{color:#64748b}.limits-section{background:#f8fafc;color:#0f172a;border-top:1px solid #e2e8f0}.limits-section h2{color:#0f172a}.limits-section .section-kicker{color:#2563eb}.limits-section> .academic-container>div>p{color:#64748b}.limit-list{border-top-color:#e2e8f0}.limit-list div{border-bottom-color:#e2e8f0}.limit-list span{color:#2563eb}.limit-list p{color:#475569}.resource-panel{border-top-color:#e2e8f0}.resource-panel h3{color:#0f172a}.resource-panel p{color:#64748b}.resource-links a{background:#fff;border-color:#e2e8f0;color:#0f172a}.resource-links a:hover{border-color:#2563eb}.resource-links small{color:#64748b}.academic-footer{background:#f1f5f9;color:#475569;border-top:1px solid #e2e8f0}.academic-footer a{color:#2563eb}.bibtex-section pre{background:#f1f5f9;color:#334155;border:1px solid #e2e8f0}.copy-bibtex-btn{background:#fff;color:#0f172a;border-color:#cbd5e1}
.modality-bar{margin-top:2.4rem;padding:1rem 1.1rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px}.modality-title{font:600 .64rem 'DM Mono',monospace;letter-spacing:.1em;color:#64748b;margin-bottom:.7rem}.modality-switch{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem}.modality-button{padding:.7rem .75rem;border:1px solid #cbd5e1;border-radius:7px;background:#fff;color:#475569;font:600 .72rem 'DM Sans',sans-serif;cursor:pointer}.modality-button:hover{border-color:#2563eb;color:#1d4ed8}.modality-button.is-active{background:#2563eb;border-color:#2563eb;color:#fff}.modality-note{margin:.7rem 0 0;color:#64748b;font-size:.76rem}.input-preview{margin:1rem 0 1.2rem;padding:1rem;border:1px solid #bfdbfe;border-radius:9px;background:#eff6ff}.input-preview-label{font:600 .64rem 'DM Mono',monospace;letter-spacing:.08em;color:#2563eb;margin-bottom:.6rem}.molecule-preview{display:flex;align-items:center;justify-content:center;min-height:110px;background:#fff;border:1px solid #dbeafe;border-radius:7px}.molecule-preview svg{width:100%;height:105px;max-width:260px}.candidate-image{display:flex;align-items:center;justify-content:center;min-height:92px;margin-bottom:.6rem;background:#f8fafc;border:1px solid #dbeafe;border-radius:6px}.candidate-image svg{width:100%;height:86px;max-width:170px}.option-card.image-option{display:block}.option-card.image-option>span:last-child{display:block}.option-card.image-option .option-letter{display:inline-block;margin-bottom:.45rem}@media(max-width:800px){.modality-switch{grid-template-columns:repeat(2,1fr)}}@media(max-width:500px){.modality-switch{grid-template-columns:1fr}}
/* Real molecule graph surfaces */
.smiles-converter{margin-top:1.2rem;padding:1.25rem;background:#fff;border:1px solid #dbe4ee;border-radius:10px;box-shadow:0 10px 28px rgba(15,23,42,.05)}
.converter-heading{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start}.converter-kicker{font:600 .64rem 'DM Mono',monospace;letter-spacing:.1em;color:#2563eb}.converter-heading h3{margin:.45rem 0 0;font-size:1rem;color:#0f172a}.converter-status{font-size:.72rem;color:#64748b;text-align:right}.converter-controls{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.75rem;align-items:end;margin-top:1rem}.smiles-input-label{display:grid;gap:.45rem;font:600 .65rem 'DM Mono',monospace;letter-spacing:.08em;color:#64748b}.smiles-input-label input{width:100%;box-sizing:border-box;padding:.78rem .85rem;border:1px solid #cbd5e1;border-radius:7px;background:#f8fafc;color:#0f172a;font: .82rem 'DM Mono',monospace;letter-spacing:0}.smiles-input-label input:focus{outline:2px solid #bfdbfe;border-color:#2563eb}.graph-stage{display:flex;align-items:center;justify-content:center;min-height:150px;margin-top:1rem;padding:1rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px}.converter-graph{width:100%;height:210px;max-width:620px}.converter-caption{margin:.7rem 0 0;color:#64748b;font-size:.72rem}.molecule-graph-shell{position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:100%}.molecule-graph-shell svg{display:block;width:100%;height:100%;max-width:100%;background:#fff}.molecule-graph-shell.input{min-height:105px}.candidate-image .molecule-graph-shell{min-height:92px}.graph-fallback{display:block;width:100%;height:100%;object-fit:contain;background:#fff}.graph-fallback[hidden]{display:none}.nota-image{align-items:center;justify-content:center;color:#64748b;font:600 .72rem 'DM Mono',monospace;letter-spacing:.1em}.nota-image>div{padding:1.6rem;border:1px dashed #94a3b8;border-radius:6px}.candidate-image{overflow:hidden}.candidate-image .molecule-graph-shell svg{height:86px}.input-preview .molecule-graph-shell svg{height:105px}@media(max-width:650px){.converter-heading{display:block}.converter-status{display:block;margin-top:.6rem;text-align:left}.converter-controls{grid-template-columns:1fr}.converter-controls .button{width:100%}}
/* Blue controls keep the light palette consistent. */
.academic-button.primary,.button-primary{background:#2563eb;border-color:#2563eb;color:#fff}.academic-button.primary:hover,.button-primary:hover{background:#1d4ed8;border-color:#1d4ed8}
