@charset "UTF-8";
:root{--paper:#f5f1e7;--paper-light:#fffcf5;--ink:#263e37;--forest:#193c38;--muted:#687870;--line:#d8d6c8;--gold:#ac7a3d;--accent:#bd8351;--serif:"Yu Mincho","Hiragino Mincho ProN","Noto Serif JP",serif;--sans:"Yu Gothic","Hiragino Kaku Gothic ProN","Meiryo",sans-serif}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.85 var(--sans);background-image:radial-gradient(#cdc8b930 .7px,transparent .7px);background-size:7px 7px}button,input,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit}button:disabled{opacity:.45;cursor:default}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #ac793d;outline-offset:4px}a{color:var(--forest);text-underline-offset:4px}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--serif);font-weight:500;line-height:1.5}h1{font-size:clamp(27px,3.4vw,44px);letter-spacing:.05em}h2{font-size:27px}h3{font-size:20px}button{border:0}svg{max-width:100%}.site-header{max-width:1360px;margin:auto;display:flex;justify-content:space-between;align-items:center;padding:25px 42px}.brand{display:flex;gap:16px;align-items:center;text-decoration:none}.brand-mark{font:33px/1 var(--serif);width:58px;height:64px;border:1px solid #a58c60;display:grid;place-content:center;text-align:center;color:#82633e;position:relative}.brand-mark:before{content:"";position:absolute;inset:3px;border:1px solid #c7b897}.brand-mark span{font:8px var(--sans);letter-spacing:.25em;margin-top:6px}.brand-type{font:20px/1.6 var(--serif);letter-spacing:.04em}.brand-type small{display:block;font:11px/1.8 var(--sans);letter-spacing:.3em}.publisher{font:10px/2 var(--sans);letter-spacing:.16em;text-align:right;color:var(--muted)}.publisher span{display:block;font-size:10px;letter-spacing:.1em}.main-nav{display:flex;justify-content:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#f5f1e7f5;position:sticky;top:0;z-index:5;backdrop-filter:blur(12px)}.main-nav button{background:none;padding:16px 46px 13px;font-size:13px;position:relative}.main-nav button span{display:block;font:8px/2 var(--sans);letter-spacing:.18em;color:var(--muted)}.main-nav button[aria-current=page]:after{content:"";height:3px;position:absolute;bottom:0;left:24px;right:24px;background:var(--forest)}.main-nav button[aria-current=page]{font-weight:700}
main{max-width:1280px;margin:auto;padding:46px 42px 70px;min-height:65vh}.eyebrow{font-size:10px;letter-spacing:.22em;color:var(--gold);font-weight:700;margin-bottom:14px}.hero{display:grid;grid-template-columns:1.12fr 1fr;gap:50px;align-items:center;padding:0 0 40px}.hero-copy p{max-width:500px;color:var(--muted)}.hero-copy h1{margin-bottom:20px}.hero-visual{position:relative;min-height:290px;background:radial-gradient(ellipse,#e6e7d5,transparent 67%);display:flex;align-items:center;justify-content:center}.hero-visual:before,.hero-visual:after{content:"";position:absolute;border:1px solid #b0b7a64d;border-radius:50%;width:240px;height:240px}.hero-visual:after{width:285px;height:285px;border-style:dashed;transform:rotate(18deg)}.hero-visual svg{width:350px;z-index:1}.hero-label{position:absolute;bottom:4px;right:20px;font:10px var(--sans);letter-spacing:.12em;color:var(--muted);z-index:2}.intro-foot{display:flex;gap:24px;font-size:11px;color:var(--muted);margin-top:26px}.intro-foot b{color:var(--ink);font:20px var(--serif);margin-right:6px}
.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:22px}.section-heading h2{margin:0}.section-heading p{font-size:12px;color:var(--muted);margin:0}.rule{border-top:1px solid var(--line);padding-top:30px}.primary,.secondary,.danger-soft{border-radius:2px;padding:12px 23px;font-size:13px;line-height:1.6;min-height:46px}.primary{background:var(--forest);color:#fffaf0;border:1px solid var(--forest)}.primary:hover{background:#28534a}.secondary{background:transparent;border:1px solid #b4baab}.secondary:hover{background:#e9e7d9}.danger-soft{background:#f0e6dc;border:1px solid #ccb29d}.text-button{background:none;padding:6px 0;text-decoration:underline;text-underline-offset:4px;font-size:12px}.buttons{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.filter-row{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin-bottom:24px}.filter-row label{font-size:12px}.filter-row select,.filter-row input{min-height:42px;max-width:100%;border:1px solid var(--line);padding:7px 12px;background:var(--paper-light);border-radius:2px;color:var(--ink)}.filter-row input{flex:1;min-width:170px}.muted{color:var(--muted);font-size:12px}.shelf{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.specimen{padding:25px 24px;background:var(--paper-light);border:1px solid var(--line);position:relative;text-align:left;display:flex;flex-direction:column;min-height:260px;box-shadow:0 5px 15px #293c2a04}.specimen:hover{border-color:var(--gold);transform:translateY(-3px);transition:transform .2s}.specimen:before{content:"";position:absolute;top:-1px;left:24px;width:40px;height:3px;background:var(--spec-color,var(--gold))}.sample-code{font:10px var(--sans);letter-spacing:.16em;color:var(--muted)}.sample-icon{font:48px/1.5 var(--serif);color:var(--spec-color,var(--gold));margin:10px 0}.specimen h3{margin-bottom:10px}.specimen p{font-size:12px;color:var(--muted)}.specimen .open{margin-top:auto;border-top:1px solid var(--line);padding-top:12px;font-size:12px;display:flex;justify-content:space-between}.tag{display:inline-block;background:#e8ecdf;color:#435b44;border:1px solid #d2dac9;padding:1px 7px;font-size:10px;margin:2px 5px 2px 0}.tag.outline{background:none}.empty{padding:36px;border:1px dashed var(--line);text-align:center;color:var(--muted)}.research-layout{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:36px}.workbench{background:var(--paper-light);border:1px solid var(--line);padding:32px}.bench-top{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:20px}.bench-top h2{margin:0}.bench-top span{font-size:11px;color:var(--muted)}.bench-illustration{background:#ebeee3;min-height:200px;position:relative;display:flex;justify-content:center;align-items:center;margin:24px -32px 20px;padding:10px 32px}.bench-illustration svg{height:215px;width:100%;max-width:520px}.bench-illustration .caption{position:absolute;bottom:8px;right:15px;font-size:9px;color:var(--muted)}.progress{display:flex;gap:5px;list-style:none;padding:0;margin:22px 0}.progress li{flex:1;font-size:11px;border-top:3px solid #d9ded0;padding-top:8px;color:var(--muted)}.progress li.done{border-color:var(--forest);color:var(--forest)}.observation{border-left:3px solid var(--gold);padding:0 0 0 15px;margin:20px 0;font-size:13px}.observation strong{display:block;font-family:var(--serif);font-size:17px;margin-bottom:5px}.method-list{display:grid;gap:10px;margin-top:20px}.method-card{border:1px solid var(--line);background:#fffdf8;text-align:left;padding:17px 20px;display:grid;grid-template-columns:1fr auto;gap:6px 15px}.method-card:hover{border-color:var(--forest);background:#f2f4e9}.method-card strong{font:16px var(--serif)}.method-card small{grid-column:1/-1;font-size:11px;color:var(--muted)}.method-card .chance{font-size:10px;color:var(--gold)}.aside-note{border-top:1px solid var(--line);padding-top:20px}.aside-note h3{font-size:17px}.aside-note p{font-size:12px;color:var(--muted)}.stat-line{display:flex;align-items:baseline;justify-content:space-between;border-bottom:1px solid var(--line);padding:10px 0;font-size:12px}.stat-line b{font:27px var(--serif)}.notebook-small{list-style:none;padding:0;font-size:11px;max-height:300px;overflow:auto}.notebook-small li{border-bottom:1px solid var(--line);padding:9px 0}.notebook-small span{color:var(--muted);display:block}.small-actions{display:flex;gap:15px;margin-top:18px;flex-wrap:wrap}.paused-list{margin-top:30px}.paused-row{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding:14px 0;gap:12px}.paused-row p{margin:0;font-size:13px}.paused-row small{color:var(--muted)}
.result-hero{border:1px solid #d7cfb9;background:var(--paper-light);padding:35px;position:relative}.result-hero:before{content:"DISCOVERY";position:absolute;right:28px;top:28px;border:2px double #b28a59;color:#a57c4a;transform:rotate(8deg);font:10px var(--sans);letter-spacing:.12em;padding:7px}.result-layout{display:grid;grid-template-columns:1fr 1.1fr;gap:35px;align-items:center}.result-hero h1{font-size:34px;margin:10px 0}.result-story{font-family:var(--serif);font-size:17px;line-height:2.1}.formula{font:23px var(--serif);color:var(--muted);overflow-wrap:anywhere;margin-bottom:20px}.diagram-panel{background:#edf0e7;border:1px solid #dfe3d5;padding:14px;text-align:center;overflow:hidden}.diagram-panel svg{width:100%;height:260px}.diagram-note{font-size:10px;color:var(--muted);margin:0;line-height:1.6}.related-note{border-top:1px solid var(--line);margin-top:20px;padding-top:15px;font-size:12px}.collect-top{display:flex;gap:30px;justify-content:space-between;align-items:center;margin-bottom:28px}.collect-top h1{margin-bottom:8px}.collection-count{font:48px var(--serif);white-space:nowrap}.collection-count small{font:16px var(--serif);color:var(--muted)}.catalog-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.catalog-card{text-align:left;background:var(--paper-light);border:1px solid var(--line);padding:18px;position:relative;min-width:0}.catalog-card:not(:disabled):hover{border-color:var(--gold)}.catalog-card svg{width:100%;height:145px}.catalog-card h3{font-size:16px;margin:7px 0;overflow-wrap:anywhere}.catalog-card p{font-size:10px;color:var(--muted);margin:0}.catalog-card.locked{opacity:1;background:#edece2}.locked-symbol{font:42px var(--serif);height:145px;display:grid;place-content:center;color:#a4ad9d}.catalog-card .index{font:9px var(--sans);color:var(--muted);letter-spacing:.12em}.domain-list{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.domain-story{border:1px solid var(--line);padding:24px;background:var(--paper-light)}.domain-story h2{font-size:23px;margin-bottom:8px}.domain-story p{font-size:13px;color:var(--muted)}.link-chain{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:18px}.link-chain button{background:#e9ede1;padding:7px 11px;font-size:12px;border:1px solid #d8dfd1}.link-chain button.locked{background:none;color:var(--muted)}.note-sheet{background:var(--paper-light);border:1px solid var(--line);padding:30px;margin-bottom:25px}.note-sheet h2{font-size:22px}.note-sheet p,.note-sheet li{font-size:13px}.discovery-row{display:flex;gap:20px;justify-content:space-between;border-bottom:1px solid var(--line);padding:14px 0}.discovery-row button{background:none;text-align:left;font-family:var(--serif);font-size:17px}.discovery-row small{font:11px var(--sans);color:var(--muted)}.site-footer{max-width:1280px;margin:auto;padding:25px 42px 35px;border-top:1px solid var(--line);display:flex;gap:25px;justify-content:space-between;align-items:center;font-size:10px;color:var(--muted)}.site-footer p{margin:0}.site-footer b{color:var(--ink);font:14px var(--serif)}.site-footer>span{font-size:9px}.warning{margin:15px auto;max-width:1100px;background:#f4e5d4;padding:14px 20px;font-size:12px}dialog{width:min(960px,calc(100% - 30px));max-height:90dvh;padding:0;background:var(--paper-light);color:var(--ink);border:1px solid #b2b6a4;border-radius:3px;overflow:auto;box-shadow:0 30px 90px #122c3950}dialog::backdrop{background:#173731ac;backdrop-filter:blur(3px)}.dialog-inner{padding:32px 36px}.dialog-head{display:flex;justify-content:space-between;align-items:start;gap:15px}.dialog-head h2{font-size:28px;margin:5px 0 15px}.close-dialog{background:#e8ebdf;width:40px;height:40px;border-radius:50%;font-size:23px;flex-shrink:0;position:sticky;top:10px}.detail-columns{display:grid;grid-template-columns:1fr 1fr;gap:28px}.detail-columns .diagram-panel{align-self:start}.detail-story{font-family:var(--serif);font-size:16px;line-height:2}.source-list{font-size:11px;overflow-wrap:anywhere}.detail-meta{font-size:12px;color:var(--muted);padding:15px;background:#eeeee3}.share-actions{border-top:1px solid var(--line);padding-top:20px;margin-top:24px}.zoom-stage{overflow:auto;max-height:65dvh;border:1px solid var(--line);background:#edf0e7;touch-action:pan-x pan-y}.zoom-stage svg{display:block;max-width:none;width:1400px;height:900px}.zoom-controls{display:flex;gap:12px;align-items:center;margin:12px 0}.zoom-controls button{background:#e4e9dd;padding:5px 15px}.copy-fallback{width:100%;font-size:12px;padding:8px;border:1px solid var(--line);margin:8px 0}.beta-equation{font:24px var(--serif);text-align:center;background:#e9eee3;padding:20px;margin:15px 0}.comparison{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin:16px 0}.comparison>div{padding:15px;background:#edf0e7}.comparison h3{font-size:17px}.comparison p{font-size:12px;margin:0}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);z-index:30;background:#1e4039;color:#fff9ee;padding:12px 24px;font-size:12px;border-radius:3px;box-shadow:0 5px 25px #0002;max-width:90vw;opacity:0;pointer-events:none;transition:opacity .2s}#toast.show{opacity:1}.skip{position:absolute;left:10px;top:-60px;z-index:40;background:white;padding:10px}.skip:focus{top:10px}.loading{text-align:center;padding:60px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.session-banner{background:#e1e8d7;border-left:3px solid var(--forest);padding:18px 24px;margin:24px 0;font-size:13px}.session-banner strong{font-family:var(--serif);font-size:20px;display:block}.inline-file{display:inline-flex;align-items:center;cursor:pointer;border:1px solid #b4baab;padding:10px 20px;font-size:13px;min-height:46px}.inline-file input{position:absolute;opacity:0;width:1px;height:1px}.inline-file:focus-within{outline:3px solid var(--gold)}.info-table{width:100%;border-collapse:collapse;font-size:12px}.info-table th,.info-table td{text-align:left;border-bottom:1px solid var(--line);padding:10px}.research-stopped{margin-top:20px;background:#eee9df;padding:15px;font-size:12px}
@media(max-width:1000px){.site-header{padding:20px 26px}.publisher{display:none}.main-nav button{padding:14px 28px 11px}main{padding:32px 26px 50px}.hero{gap:20px}.research-layout{grid-template-columns:minmax(0,1fr) 230px;gap:22px}.catalog-grid{grid-template-columns:repeat(3,1fr)}.site-footer{padding:25px 26px;flex-wrap:wrap}.detail-columns{gap:18px}}
@media(max-width:700px){body{font-size:14px}.site-header{padding:16px 18px}.brand{gap:10px}.brand-mark{width:43px;height:49px;font-size:26px}.brand-mark span{font-size:7px}.brand-type{font-size:clamp(13px,3.9vw,18px);letter-spacing:0}.brand-type small{font-size:9px;letter-spacing:.18em}.main-nav{justify-content:stretch}.main-nav button{flex:1;padding:12px 3px 10px;font-size:11px}.main-nav button span{font-size:7px;letter-spacing:.03em}.main-nav button[aria-current=page]:after{left:14px;right:14px}main{padding:27px 18px 45px}.hero{grid-template-columns:1fr;gap:0;padding-bottom:25px}.hero-copy h1{font-size:29px}.hero-copy p{font-size:13px;margin-bottom:12px}.hero-visual{min-height:180px;margin-top:10px}.hero-visual svg{height:190px}.hero-visual:before{width:155px;height:155px}.hero-visual:after{width:180px;height:180px}.hero-label{right:0;font-size:8px;bottom:0}.intro-foot{margin-top:16px}.section-heading{align-items:start;flex-direction:column;gap:5px}.section-heading h2{font-size:23px}.shelf{grid-template-columns:1fr;gap:13px}.specimen{min-height:0;display:grid;grid-template-columns:55px 1fr;gap:0 16px;padding:18px}.sample-code{grid-column:1/-1}.sample-icon{grid-column:1;grid-row:2/4;font-size:44px;align-self:center;margin:0}.specimen h3{font-size:18px;grid-column:2;margin:5px 0}.specimen p{grid-column:2;font-size:11px;margin-bottom:10px}.specimen .open{grid-column:1/-1}.filter-row{gap:10px}.filter-row select{flex:1;min-width:180px}.filter-row .primary{width:100%}.research-layout{display:block}.workbench{padding:23px 20px}.bench-illustration{margin:20px -20px;padding:10px 20px}.bench-top h2{font-size:22px}.bench-top{gap:10px}.aside-note{margin-top:25px}.aside-note .notebook-small{max-height:170px}.result-hero{padding:24px 20px}.result-hero:before{font-size:8px;top:16px;right:16px;padding:4px}.result-layout{grid-template-columns:1fr;gap:22px}.result-hero h1{font-size:28px}.result-story{font-size:16px}.result-layout .diagram-panel{grid-row:1}.result-layout .diagram-panel svg{height:220px}.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.catalog-card{padding:12px}.catalog-card h3{font-size:14px}.catalog-card svg,.locked-symbol{height:116px}.collect-top{gap:12px}.collect-top h1{font-size:27px}.collection-count{font-size:33px}.collection-count small{font-size:12px}.domain-list{grid-template-columns:1fr}.note-sheet{padding:22px 18px}.detail-columns{grid-template-columns:1fr}.detail-columns .diagram-panel{grid-row:1}.dialog-inner{padding:23px 20px}.dialog-head h2{font-size:23px}.dialog-head{gap:5px}.diagram-panel svg{height:230px}.detail-story{font-size:15px}.comparison{gap:8px}.comparison>div{padding:12px}.site-footer{display:block;padding:25px 18px}.site-footer button{display:block;margin:10px 0}.paused-row{align-items:start}.paused-row p{font-size:12px}.primary,.secondary{padding:11px 17px}.beta-equation{font-size:20px}.info-table th,.info-table td{padding:7px}.session-banner{padding:15px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Midnight Chemical Lab: visual skin, game-state independent. */
:root{--paper:#0b0f19;--paper-light:#111827;--ink:#f3f4f6;--forest:#00e1d6;--muted:#a2afc2;--line:#ffffff1c;--gold:#6ee7cf;--accent:#8b5cf6;--serif:"Space Grotesk","Yu Gothic","Hiragino Kaku Gothic ProN",sans-serif;--mono:"JetBrains Mono","Cascadia Code","Consolas","Courier New",monospace}
body{background:#0b0f19;background-image:radial-gradient(ellipse at 12% 0%,#00f2fe08,transparent 43%),radial-gradient(ellipse at 93% 35%,#8b5cf60b,transparent 48%),linear-gradient(#ffffff02 1px,transparent 1px),linear-gradient(90deg,#ffffff02 1px,transparent 1px);background-size:auto,auto,40px 40px,40px 40px}
h1,h2,h3{font-weight:600}a{color:#66e8e2}.site-header{padding-top:22px;padding-bottom:22px}.brand-mark{color:#00f2fe;border-color:#00f2fe66;font-family:var(--mono);box-shadow:0 0 22px #00f2fe09;background:#08232c}.brand-mark:before{border-color:#00f2fe22}.brand-type{font-weight:600}.brand-type small{color:#9caec2}.publisher{color:#7d90a7;font-family:var(--mono)}
.main-nav{background:#0b111dea;border-color:#71c8d421}.main-nav button span{font-family:var(--mono);color:#748aa5}.main-nav button[aria-current=page]{color:#4eeced;text-shadow:0 0 16px #00f2fe44}.main-nav button[aria-current=page]:after{background:#00f2fe;box-shadow:0 0 14px #00f2fe66}
.eyebrow,.sample-code,.sample-icon,.index,.chance,.collection-count,.stat-line b,.hero-label{font-family:var(--mono)}.eyebrow{color:#5cdbd8}.hero-copy h1{font-weight:600;letter-spacing:.04em}.hero-copy p{color:#a9b6c9}.hero-visual{background:radial-gradient(ellipse,#00e3cf10,transparent 65%)}.hero-visual:before{border-color:#00f2fe25;box-shadow:0 0 25px #00f2fe08,inset 0 0 25px #00f2fe08}.hero-visual:after{border-color:#9177f52b}.intro-foot b{font-family:var(--mono);color:#b9fbf6}.hero-buttons{margin-top:24px}
.primary{background:linear-gradient(110deg,#0d746f,#0a5d69);color:#e7ffff;border:1px solid #37d9d780;box-shadow:inset 0 1px 0 #8fffff20;transition:box-shadow .2s,background .2s}.primary:hover{background:#137d7b;box-shadow:0 0 20px #00f2fe30}.secondary{background:#131d2e99;color:#bbd2e8;border-color:#92c7e138;transition:box-shadow .2s}.secondary:hover{background:#1b2d45;box-shadow:0 0 15px #4facfe25}.text-button{color:#8bcacb}.danger-soft{background:#442c3444;color:#f7c4d0;border-color:#ad4e6633}
.specimen,.workbench,.result-hero,.catalog-card,.domain-story,.note-sheet{background:#111827b3;border:1px solid #ffffff1c;backdrop-filter:blur(12px);border-radius:5px;box-shadow:0 10px 40px #00000018}.specimen{background:linear-gradient(150deg,#132133cc,#111727cc);overflow:hidden}.specimen:after{content:"";position:absolute;right:20px;top:30px;width:72px;height:100px;border:1px solid #58d9ec15;border-radius:7px 7px 40px 40px;pointer-events:none}.specimen:before{background:var(--spec-color);box-shadow:0 0 14px var(--spec-color)}.specimen:hover{border-color:#47e0d46b;box-shadow:0 0 24px #00e5d214}.sample-icon{color:#6fe4dc}.specimen .open{color:#75e2dc}.tag{background:#0c3838;color:#7ee0d7;border-color:#326266;font-size:10px}.tag.outline{border-color:#61759055;color:#a2b4cb}.bench-top span{font-family:var(--mono)}.bench-illustration,.diagram-panel{background:#101e2b;border-color:#71b8c824}.progress li{border-color:#243346}.progress li.done{border-color:#16cda2;color:#66e6ba}.observation{border-color:#10b981;color:#bdcfde;background:#10b98105;padding:12px 15px}.observation strong{color:#acedd7}.method-card{background:#121e30;border-color:#ffffff1c;border-radius:3px;transition:box-shadow .2s}.method-card:hover{background:#142a36;border-color:#00f2fe66;box-shadow:0 0 14px #00f2fe0d}.method-card .chance{color:#8fe6d0}.method-card.reacting{animation:reactionPulse .6s ease-in-out infinite}.lab-terminal{background:#070d17;border:1px solid #3e5b7138;border-radius:4px;padding:18px;margin-top:20px}.lab-terminal .eyebrow{font-family:var(--mono);font-size:8px;color:#6f9caa;letter-spacing:.1em}.notebook-small{font-family:var(--mono)}.notebook-small li{animation:logAppear .3s ease-out;color:#c7d3df}.notebook-small li.log-success{color:#5cddb1}.notebook-small li.log-success span{color:#70af9e}.stat-line b{color:#84d6e8;font-size:25px}.stat-line small{font-size:12px;color:var(--muted)}
.result-hero:before{border-color:#00ff8766;color:#48eeb9;text-shadow:0 0 12px #00ff8733}.result-hero.new-discovery{border-color:#20d29c66;animation:discoveryGlow 1.6s ease-out}.result-story{color:#d7e1ec}.formula{font-family:var(--mono);color:#7ed9e3}.catalog-card.locked{background:#111723}.locked-symbol{color:#4f637a}.catalog-card:hover{border-color:#68bdc944}.catalog-card p{color:#8ea5bd}.catalog-card .index{font-size:8px}.collection-count{color:#66f0df}.collection-tabs{margin-bottom:24px}.filter-row input,.filter-row select{background:#111c2d;color:#d5e1f0;border-color:#46627866}.link-chain button{background:#153131;color:#9ee5d8;border-color:#3b777855}.link-chain button.locked{background:#17202c;color:#91a3b9}.detail-meta{background:#142131;color:#bccbdc;border:1px solid #2a4158;border-radius:3px}.comparison>div{background:#112b37;border:1px solid #2f616a44}.beta-equation{background:#0c2231;color:#90e3f1;overflow-wrap:anywhere}.zoom-stage{background:#101e2b;border-color:#34566a}.zoom-controls button{background:#152c40;color:#bcd8e7}.close-dialog{background:#223349;color:#c9e7f5}.copy-fallback{background:#0b1724;color:#b4dbed}.inline-file{border-color:#4b708b;background:#131d2e}.session-banner{background:#102a28;color:#abd6c4;border-color:#20b793}.research-stopped{background:#252134}.warning{background:#362834;color:#f1d0df;border:1px solid #b5759260}.site-footer{background:#0b0f1999}.site-footer b{color:#a8bacf}.site-footer a{color:#70c6cf}dialog{background:#0d1624;border-color:#44667e;box-shadow:0 30px 100px #0009}dialog::backdrop{background:#020611bb}.dialog-head h2{color:#e0eff9}.detail-story{color:#c7d7e8}.primary:focus-visible,.secondary:focus-visible,button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline-color:#67e8f9}#toast{background:#123a40;border:1px solid #46b6b9;color:#d1fff3;box-shadow:0 5px 30px #0005}
.periodic-scroll{overflow:auto;padding-bottom:12px}.periodic-table{display:grid;grid-template-columns:repeat(18,minmax(48px,1fr));grid-template-rows:repeat(9,72px);gap:5px;min-width:980px}.element-cell{padding:3px;background:#142133;border:1px solid #36516a55;border-radius:3px;display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1.4;min-width:0}.element-cell small{font:9px var(--mono);color:#a2b1c8;align-self:start;margin-left:4px}.element-cell strong{font:23px var(--mono);color:#aec0d5}.element-cell span{font-size:7px;white-space:nowrap}.element-cell:hover{border-color:#00f2feaa;background:#153440}.element-cell.discovered{background:#103e3c;border-color:#20c89e88;box-shadow:0 0 8px #00ff870a}.element-cell.discovered strong{color:#66f2c3}.method-index{display:grid;grid-template-columns:1fr 1fr;gap:18px}.method-index .note-sheet{margin:0;padding:23px}.method-index h2{font-size:19px}.method-index .source-list{font-size:10px}
.discovery-burst{position:fixed;inset:0;z-index:25;background:#030817dd;display:grid;place-content:center;pointer-events:none;animation:burstFade 1.6s both;overflow:hidden}.discovery-burst strong{font:500 clamp(20px,4vw,44px)/1.5 var(--mono);text-align:center;letter-spacing:.17em;color:#7ef9d1;text-shadow:0 0 30px #00ff8780;z-index:2}.discovery-orbit{position:absolute;left:50%;top:50%;width:360px;height:360px;max-width:80vw;max-height:80vw;border:1px solid #00f2fe55;border-radius:50%;transform:translate(-50%,-50%);box-shadow:0 0 80px #00f2fe0d,inset 0 0 80px #00f2fe0d}.discovery-orbit:before,.discovery-orbit:after{content:"";position:absolute;inset:35px;border:1px dashed #8b5cf680;border-radius:50%;transform:rotate(35deg)}.discovery-orbit:after{inset:80px;border-color:#00ff8755}.discovery-burst>span{position:absolute;left:50%;top:50%;font:20px var(--mono);color:#93e6f1;animation:moleculeDrift 1.6s ease-out both;--angle:calc(var(--i)*45deg)}
@keyframes moleculeDrift{from{opacity:0;transform:rotate(var(--angle)) translateX(50px) rotate(calc(-1*var(--angle)))}30%{opacity:.8}to{opacity:0;transform:rotate(var(--angle)) translateX(300px) rotate(calc(-1*var(--angle)))}}
@keyframes burstFade{0%,100%{opacity:0}15%,65%{opacity:1}}
@keyframes discoveryGlow{0%{box-shadow:0 0 65px #00ff8740}100%{box-shadow:0 10px 40px #0002}}
@keyframes reactionPulse{50%{box-shadow:0 0 23px #00f2fe44;background:#174457}}
@keyframes logAppear{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}
@media(max-width:700px){.main-nav button{font-size:10px}.main-nav button span{font-size:6px}.method-index{grid-template-columns:1fr}.hero-copy h1{font-size:30px}.hero-label{font-size:7px}.specimen:after{width:45px;height:65px;top:34px}.collection-tabs{gap:7px}.collection-tabs .secondary{font-size:11px;padding:9px 12px}.lab-terminal{padding:15px}.stat-line b{font-size:23px}}
@media(prefers-reduced-motion:reduce){.discovery-burst{display:none}*,*:before,*:after{animation:none!important;transition:none!important}}

.quiz-intro{max-width:760px;margin:auto;text-align:center;padding:15px 0 30px}.quiz-intro h1{font-size:clamp(26px,4vw,43px)}.quiz-lead{font-size:18px;line-height:2;color:#b9c9df}.quiz-intro>.muted{margin:22px auto;max-width:640px;font-size:11px}.quiz-orbit{max-width:360px;margin:0 auto 15px;background:radial-gradient(ellipse,#8b5cf61a,transparent 70%)}.quiz-orbit svg{height:215px}.quiz-panel{max-width:730px;margin:15px auto 50px;background:#111827a6;border:1px solid #5b708b44;padding:35px;border-radius:6px}.quiz-panel h1{font-size:clamp(23px,3vw,32px);line-height:1.8;margin:35px 0}.quiz-progress{display:flex;gap:8px}.quiz-progress span{height:4px;flex:1;background:#253143}.quiz-progress span.done{background:#00d5b7}.quiz-progress span.current{background:#9b7af6;box-shadow:0 0 12px #8b5cf660}.quiz-options{display:grid;gap:12px;margin-bottom:25px}.quiz-options button{display:flex;justify-content:space-between;align-items:center;text-align:left;background:#152136;border:1px solid #4a627f66;border-radius:4px;padding:17px 22px;color:#dce6f4}.quiz-options button:hover{border-color:#9c8de9;background:#211e3c;box-shadow:0 0 20px #8b5cf61a}.quiz-options small{font-family:var(--mono);color:#7d98b8}.quiz-result:before{content:"PERSONALITY";border-color:#a18bec;color:#b49bff}.quiz-traits{margin-top:30px}.trait-row{display:flex;align-items:center;gap:20px;max-width:700px;margin:17px 0;font-size:12px}.trait-row>span{width:95px}.trait-track{height:6px;flex:1;background:#253149}.trait-track i{display:block;height:100%;background:linear-gradient(90deg,#00d4ca,#a682fb)}.trait-row small{font-family:var(--mono);color:#9caec3}.quiz-runners{display:grid;grid-template-columns:1fr 1fr;gap:23px}.quiz-runners h2{font-size:23px;margin-top:20px}.quiz-runners h3{font-size:16px;color:#a7d8e2}.quiz-runners .diagram-panel svg{height:200px}
@media(max-width:700px){.quiz-panel{padding:22px 18px}.quiz-panel h1{font-size:23px;margin:25px 0}.quiz-options button{padding:14px 17px;font-size:13px}.quiz-lead{font-size:15px}.quiz-runners{grid-template-columns:1fr}.trait-row{gap:10px}.trait-row>span{width:80px}.quiz-result h1{font-size:26px}}

/* Expanded catalog */
.catalog-pager{display:flex;align-items:center;justify-content:center;gap:1rem;flex-wrap:wrap;margin:1.5rem 0}.reaction-equation{font-family:ui-monospace,monospace;background:#091821;border-left:3px solid var(--cyan,#59e3e8);padding:1rem;overflow-wrap:anywhere;white-space:pre-wrap}.synthesis-note p{line-height:1.85}.filter-row select{max-width:100%}.tag{overflow-wrap:anywhere}

/* Encyclopedia facts and compact reference dialogs. */
.encyclopedia-panel{margin:2rem 0;padding:1.5rem;border:1px solid #24505b;border-radius:16px;background:#0d1b29}.facts-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem}.facts-grid h3{font-size:1rem;color:#87e4e6}.facts-grid ul{padding-left:1.2rem;line-height:1.8}.mass-value{font:600 2rem ui-monospace,monospace;overflow-wrap:anywhere}.facts-grid .muted{font-size:.8rem}.tip-link{display:inline;padding:0;border:0;border-radius:0;background:none;color:inherit;font:inherit;line-height:inherit;text-decoration:underline;text-decoration-style:dotted;text-decoration-color:#62dadf;text-underline-offset:.2em;cursor:help}.tip-link[data-kind="person"]{text-decoration-color:#c7a0ef}.tip-link:hover,.tip-link:focus-visible{color:#85f1f2;background:#17313f;outline:2px solid #55898b;outline-offset:2px}.tip-mark{font-size:.65em;color:#87b5c5;margin-left:.15em}.tip-dialog{width:min(620px,calc(100% - 28px));max-height:82vh;padding:1.6rem;background:#112231;color:#eef5f7;border:1px solid #3b7c84;border-radius:18px;overflow:auto}.tip-dialog::backdrop{background:#030914b8}.tip-dialog h2{margin:.4rem 0 1rem}.tip-dialog p{line-height:1.9}.tip-list{display:grid;gap:.65rem;margin-top:1rem}.tip-list button{text-align:left}.tip-dialog input{width:100%;margin-bottom:1rem}.tip-example{padding:1rem;background:#172d3c;border-left:3px solid #69dedc}.tip-dialog .source-list{overflow-wrap:anywhere}.formula{font-variant-numeric:normal}
@media(max-width:800px){.facts-grid{grid-template-columns:1fr}.encyclopedia-panel{padding:1rem}.tip-dialog{padding:1.1rem}}
