:root{--bg:#0e1116;--bg-2:#14181f;--bg-3:#1b202a;--panel:#ffffff06;--panel-2:#ffffff0b;--border:#ffffff12;--border-2:#ffffff24;--rule:#ffffff1a;--ink:#e8e9ec;--ink-dim:#aab1bd;--ink-faint:#6b7280;--blue:#58c4dd;--teal:#5cd0b3;--green:#83c167;--yellow:#ffd966;--gold:#f0ac5f;--red:#fc6255;--maroon:#c55f73;--purple:#9a72ac;--accent:var(--blue);--accent-glow:#58c4dd4d;--accent-bg:#58c4dd14;--serif:"EB Garamond", "Source Serif Pro", "Cormorant Garamond", Georgia, "Times New Roman", serif;--sans:"Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--mono:"JetBrains Mono", "SF Mono", ui-monospace, Menlo, monospace;font-family:var(--serif);color:var(--ink);background:var(--bg);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;font-size:18px;line-height:1.6}*{box-sizing:border-box}html,body,#root{min-height:100vh;margin:0;padding:0}body{background:radial-gradient(1200px 600px at 75% -10%, #58c4dd0f, transparent 70%), radial-gradient(1000px 500px at -10% 70%, #ffd9660a, transparent 70%), radial-gradient(900px 500px at 110% 110%, #9a72ac0d, transparent 70%), var(--bg);background-attachment:fixed;overflow-x:hidden}body:before{content:"";pointer-events:none;z-index:0;background-image:linear-gradient(#ffffff03 1px,#0000 1px),linear-gradient(90deg,#ffffff03 1px,#0000 1px);background-size:64px 64px;position:fixed;inset:0}::selection{color:var(--ink);background:#ffd9664d}::-webkit-scrollbar{width:9px;height:9px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#ffffff0f;border-radius:9px}::-webkit-scrollbar-thumb:hover{background:#ffffff24}a{color:var(--blue);text-decoration:none}a:hover{text-decoration:underline}.app{z-index:1;display:flex;position:relative}.content{flex:1;min-width:0;margin-left:260px}@media (width<=980px){.content{margin-left:0}}.era-blue{--accent:var(--blue);--accent-glow:#58c4dd52;--accent-bg:#58c4dd1a}.era-yellow{--accent:var(--yellow);--accent-glow:#ffd96652;--accent-bg:#ffd9661a}.era-red{--accent:var(--red);--accent-glow:#fc625552;--accent-bg:#fc62551a}.era-teal{--accent:var(--teal);--accent-glow:#5cd0b352;--accent-bg:#5cd0b31a}.era-gold{--accent:var(--gold);--accent-glow:#f0ac5f52;--accent-bg:#f0ac5f1a}.era-purple{--accent:var(--purple);--accent-glow:#9a72ac52;--accent-bg:#9a72ac1a}.era-green{--accent:var(--green);--accent-glow:#83c16752;--accent-bg:#83c1671a}.era-maroon{--accent:var(--maroon);--accent-glow:#c55f7352;--accent-bg:#c55f731a}.sidebar{border-right:1px solid var(--rule);-webkit-backdrop-filter:blur(14px);z-index:50;background:#0e1116c7;width:260px;height:100vh;padding:36px 26px 36px 32px;position:fixed;top:0;left:0;overflow-y:auto}.sidebar-brand{align-items:baseline;gap:8px;margin-bottom:4px;display:flex}.sidebar-brand-mark{font-family:var(--serif);color:var(--ink);letter-spacing:-.01em;font-size:24px;font-style:italic}.sidebar-brand-mark .b1{color:var(--blue)}.sidebar-brand-mark .y1{color:var(--yellow)}.sidebar-brand-mark .o1{color:var(--gold)}.sidebar-brand-mark .w1{color:var(--ink)}.sidebar-title{font-family:var(--mono);letter-spacing:.25em;text-transform:uppercase;color:var(--ink-faint);margin:28px 0 18px;font-size:10px}.sidebar-list{margin:0;padding:0;list-style:none}.sidebar-item{cursor:pointer;border-radius:4px;grid-template-columns:22px 10px 1fr;align-items:center;gap:10px;padding:9px 4px;transition:background .2s;display:grid}.sidebar-item:hover{background:#ffffff08}.sidebar-num{font-family:var(--serif);color:var(--ink-faint);text-align:center;font-size:17px;font-style:italic;line-height:1;transition:color .2s}.sidebar-dot{background:var(--ink-faint);border-radius:50%;width:7px;height:7px;transition:all .3s}.sidebar-item.active .sidebar-dot{background:var(--accent);box-shadow:0 0 14px var(--accent-glow);transform:scale(1.45)}.sidebar-item.active .sidebar-num{color:var(--accent)}.sidebar-item.active .sidebar-name{color:var(--ink)}.sidebar-meta{min-width:0}.sidebar-period{font-family:var(--mono);letter-spacing:.05em;color:var(--ink-faint);margin-bottom:2px;font-size:10px}.sidebar-name{font-family:var(--serif);color:var(--ink-dim);font-size:14.5px;line-height:1.25;transition:color .2s}@media (width<=980px){.sidebar{display:none}}.hero{flex-direction:column;justify-content:center;max-width:1100px;min-height:100vh;margin:0 auto;padding:80px 8vw 32px;display:flex}.hero-eyebrow{font-family:var(--mono);letter-spacing:.25em;text-transform:uppercase;color:var(--ink-faint);opacity:0;align-items:center;gap:14px;margin-bottom:28px;font-size:11px;animation:1s .1s forwards fadeUp;display:flex}.hero-eyebrow .rule{background:var(--rule);flex:1;max-width:80px;height:1px}.hero-title{font-family:var(--serif);letter-spacing:-.015em;color:var(--ink);opacity:0;margin:0 0 28px;font-size:clamp(44px,7vw,86px);font-weight:400;line-height:1.06;animation:1.1s .25s forwards fadeUp}.hero-title .em-blue{color:var(--blue);font-style:italic}.hero-title .em-yellow{color:var(--yellow);font-style:italic}.hero-title .em-red{color:var(--red);font-style:italic}.hero-subtitle{max-width:720px;font-family:var(--serif);color:var(--ink-dim);opacity:0;margin:0 0 24px;font-size:22px;line-height:1.55;animation:1.1s .45s forwards fadeUp}.hero-subtitle em{color:var(--yellow);font-style:italic}.hero-byline{font-family:var(--mono);color:var(--ink-faint);letter-spacing:.1em;opacity:0;margin-top:36px;font-size:12px;animation:1.1s .65s forwards fadeUp}.hero-hint{font-family:var(--mono);letter-spacing:.2em;text-transform:uppercase;color:var(--ink-faint);opacity:0;align-items:center;gap:14px;margin-top:48px;font-size:11px;animation:1s .9s forwards fadeUp,2.4s ease-in-out 1.6s infinite bob;display:flex}.hero-hint .rule{background:var(--rule);width:40px;height:1px}@keyframes fadeUp{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes bob{0%,to{transform:translateY(0)}50%{transform:translateY(6px)}}.video-embed{flex-direction:column;align-items:center;max-width:1240px;margin:0 auto;padding:12px 6vw 32px;display:flex}.video-eyebrow{font-family:var(--mono);letter-spacing:.25em;text-transform:uppercase;color:var(--ink-faint);align-items:center;gap:14px;margin-bottom:18px;font-size:11px;display:flex}.video-eyebrow .rule{background:var(--rule);width:60px;height:1px}.video-frame{aspect-ratio:16/9;border:1px solid var(--border-2);background:var(--bg-2);border-radius:10px;width:100%;max-width:960px;overflow:hidden;box-shadow:0 24px 80px #0000008c}.video-frame iframe{border:none;width:100%;height:100%;display:block}.timeline-section{opacity:0;align-items:center;min-height:100vh;padding:100px 6vw;transition:opacity .9s,transform .9s;display:flex;position:relative;transform:translateY(40px)}.timeline-section.visible{opacity:1;transform:translateY(0)}.section-inner{grid-template-columns:1fr 1.05fr;align-items:start;gap:88px;width:100%;max-width:1240px;margin:0 auto;display:grid}.timeline-section.flipped .section-inner{grid-template-columns:1.05fr 1fr}.timeline-section.flipped .explanation{order:2}.timeline-section.flipped .interactive{order:1}@media (width<=980px){.section-inner,.timeline-section.flipped .section-inner{grid-template-columns:1fr;gap:40px}.timeline-section.flipped .explanation{order:1}.timeline-section.flipped .interactive{order:2}.timeline-section{padding:64px 24px}}.explanation{max-width:520px;position:sticky;top:80px}.chapter-row{align-items:center;gap:14px;margin-bottom:22px;display:flex}.chapter-mark{font-family:var(--serif);color:var(--accent);font-size:32px;font-style:italic;line-height:1}.chapter-dot{background:var(--accent);width:10px;height:10px;box-shadow:0 0 12px var(--accent-glow);border-radius:50%}.chapter-period{font-family:var(--mono);letter-spacing:.18em;text-transform:uppercase;color:var(--ink-faint);font-size:11px}.era-title{font-family:var(--serif);letter-spacing:-.015em;color:var(--ink);margin:0 0 12px;font-size:clamp(32px,4vw,50px);font-weight:400;line-height:1.08}.era-tagline{font-family:var(--serif);color:var(--accent);margin:0 0 14px;font-size:20px;font-style:italic;line-height:1.4}.era-source{font-family:var(--mono);letter-spacing:.1em;color:var(--ink-faint);border-left:2px solid var(--accent);margin:0 0 22px;padding:4px 0 4px 12px;font-size:11px}.era-description{font-family:var(--serif);color:var(--ink-dim);margin:0 0 28px;font-size:17.5px;line-height:1.72}.era-index{font-family:var(--mono);color:var(--ink-faint);letter-spacing:.15em;text-transform:uppercase;align-items:center;gap:12px;font-size:10.5px;display:flex}.era-index-divider{background:var(--border-2);width:36px;height:1px}.interactive{flex-direction:column;gap:22px;display:flex}.visual-panel{background:radial-gradient(ellipse at top, var(--accent-bg), transparent 70%), var(--bg-2);border:1px solid var(--border);border-radius:10px;justify-content:center;align-items:center;height:240px;padding:24px;display:flex;position:relative;overflow:hidden}.visual-panel:before{content:"";pointer-events:none;background-image:linear-gradient(#ffffff05 1px,#0000 1px),linear-gradient(90deg,#ffffff05 1px,#0000 1px);background-size:24px 24px;position:absolute;inset:0}.visual-svg{z-index:1;width:100%;max-width:320px;height:100%;position:relative}.poem-line{font-family:var(--serif);fill:var(--ink-dim);opacity:.85;font-size:14px}.poem-line.glow{fill:var(--accent);font-weight:600;animation:2.6s ease-in-out infinite glowPulse}.poem-circle{fill:none;stroke:var(--accent);stroke-width:1.4px;animation:2.6s ease-in-out infinite glowPulse}@keyframes glowPulse{0%,to{opacity:.55}50%{opacity:1}}.grid-cell{fill:#ffffff06;stroke:var(--border);stroke-width:.4px}.grid-cell.on{fill:var(--accent);opacity:.55;animation:3s ease-in-out infinite pulseCell}.grid-num{font-family:var(--mono);fill:var(--bg);text-anchor:middle;font-size:7px}@keyframes pulseCell{0%,to{opacity:.2}50%{opacity:.7}}.node-link{stroke:var(--accent);stroke-width:1px;opacity:.45}.node-link.dashed{stroke-dasharray:3 4;animation:6s linear infinite dashFlow}@keyframes dashFlow{to{stroke-dashoffset:-28px}}.node-ring{fill:var(--bg-2);stroke:var(--accent);stroke-width:1.2px}.node-center{fill:var(--accent);filter:drop-shadow(0 0 6px var(--accent-glow))}.curve-path{fill:none;stroke:var(--accent);stroke-width:1.6px}.curve-axis{stroke:var(--ink-faint);stroke-width:.5px;opacity:.5}.curve-point{fill:var(--yellow);filter:drop-shadow(0 0 4px #ffd96680);animation:6s ease-in-out infinite curveTravel}@keyframes curveTravel{0%{transform:translate(0)}50%{transform:translate(120px,-30px)}to{transform:translate(0)}}.flow-line{stroke:var(--rule);stroke-width:1px}.wall{fill:#fc62550f;stroke:var(--accent);stroke-width:1.2px}.wall-bar{stroke:var(--accent);stroke-width:1.4px;opacity:.7}.packet{fill:var(--ink);animation:3.2s linear infinite flow}.packet.dropped{fill:var(--red);animation:3.2s linear infinite drop}@keyframes flow{0%{opacity:1;transform:translate(0)}50%{opacity:1;transform:translate(110px)}to{opacity:0;transform:translate(220px)}}@keyframes drop{0%{opacity:1;transform:translate(0)}40%{opacity:1;transform:translate(95px)}55%{opacity:.4;transform:translate(95px)translateY(20px)}to{opacity:0;transform:translate(95px)translateY(40px)}}.wave-path{fill:none;stroke:var(--accent);stroke-width:1.6px;opacity:.9}.wave-glow{fill:none;stroke:var(--accent);stroke-width:5px;opacity:.18;filter:blur(3px)}.wave-tick{stroke:var(--border);stroke-width:.5px;stroke-dasharray:2 4}.wave-fingerprint{stroke:var(--yellow);stroke-width:1px;opacity:.4;stroke-dasharray:1 3}.spec-bar{fill:var(--accent);opacity:.75;transform-origin:bottom;animation:2.6s ease-in-out infinite specBar}.spec-bar.alt{fill:var(--yellow)}.spec-bar.alt2{fill:var(--red)}@keyframes specBar{0%,to{opacity:.45;transform:scaleY(.55)}50%{opacity:.9;transform:scaleY(1)}}.brain-node{fill:var(--bg-2);stroke:var(--accent);stroke-width:1px}.brain-node.hot{fill:var(--accent);animation:1.8s ease-in-out infinite brainPulse}.brain-edge{stroke:var(--accent);stroke-width:.7px;opacity:.4}.brain-out{fill:var(--red);filter:drop-shadow(0 0 6px #fc625580)}@keyframes brainPulse{0%,to{opacity:.5}50%{opacity:1}}.simulator{background:var(--bg-2);border:1px solid var(--border-2);border-radius:10px;overflow:hidden;box-shadow:0 24px 60px #00000073}.sim-header{border-bottom:1px solid var(--border);background:#00000059;align-items:center;gap:8px;padding:10px 14px;display:flex}.sim-dot{background:var(--accent);opacity:.85;width:8px;height:8px;box-shadow:0 0 8px var(--accent-glow);border-radius:50%}.sim-dot.alt1{background:var(--yellow);box-shadow:0 0 8px #ffd96666}.sim-dot.alt2{background:var(--red);box-shadow:0 0 8px #fc625566}.sim-label{font-family:var(--mono);color:var(--ink-faint);letter-spacing:.06em;margin-left:10px;font-size:11px}.sim-ai-badge{font-family:var(--mono);letter-spacing:.16em;text-transform:uppercase;white-space:nowrap;border-radius:99px;margin-left:auto;padding:3px 9px;font-size:9px;font-weight:700}.sim-ai-badge.on{color:var(--bg);background:var(--accent);box-shadow:0 0 10px var(--accent-glow)}.sim-ai-badge.off,.sim-ai-badge.local{color:var(--ink-faint);border:1px solid var(--border);background:#ffffff0f}.sim-output-hint{color:var(--accent);text-transform:none;letter-spacing:.05em;font-style:italic}.sim-field-label{font-family:var(--mono);letter-spacing:.2em;text-transform:uppercase;color:var(--ink-faint);padding:16px 18px 8px;font-size:10px;display:block}.sim-input{border:1px solid var(--border);width:calc(100% - 36px);color:var(--ink);font-family:var(--mono);resize:vertical;background:#00000052;border-radius:5px;outline:none;margin:0 18px 14px;padding:12px 14px;font-size:13px;transition:border-color .2s,box-shadow .2s;display:block}.sim-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-bg)}.sim-input::placeholder{color:var(--ink-faint);opacity:.7}.sim-button{background:var(--accent);color:var(--bg);font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;cursor:pointer;box-shadow:0 0 0 0 var(--accent-glow);border:none;border-radius:5px;margin:0 18px 18px;padding:11px 18px;font-size:11.5px;font-weight:700;transition:transform .15s,box-shadow .2s,filter .2s}.sim-button:hover:not(:disabled){box-shadow:0 4px 24px var(--accent-glow);filter:brightness(1.05);transform:translateY(-1px)}.sim-button:disabled{cursor:wait;opacity:.7}.busy-dots .d{animation:1.2s infinite blink}.busy-dots .d:nth-child(2){animation-delay:.2s}.busy-dots .d:nth-child(3){animation-delay:.4s}@keyframes blink{0%,to{opacity:.3}50%{opacity:1}}.sim-output{border:1px solid var(--border);background:#0000006b;border-radius:5px;min-height:140px;margin:0 18px 18px;padding:14px 16px;transition:border-color .3s}.sim-output.processing{border-color:var(--accent)}.sim-output.done{border-color:#83c1674d}.sim-output-label{font-family:var(--mono);letter-spacing:.2em;text-transform:uppercase;color:var(--ink-faint);margin-bottom:8px;font-size:10px}.sim-output-body{font-family:var(--mono);color:var(--ink);white-space:pre-wrap;word-break:break-word;margin:0;font-size:12.5px;line-height:1.65}.caret{color:var(--accent)}.caret.blink{animation:1s steps(2,end) infinite blink}.closing{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:70vh;padding:100px 40px;display:flex;position:relative}.closing-rule{background:linear-gradient(to bottom, transparent, var(--blue), transparent);width:1px;height:80px;margin-bottom:40px}.closing-palette{gap:8px;margin-bottom:28px;display:flex}.closing-palette span{border-radius:50%;width:11px;height:11px}.closing-text{max-width:640px;font-family:var(--serif);color:var(--ink);margin:0 0 22px;font-size:24px;line-height:1.55}.closing-text em{color:var(--yellow);font-style:italic}.closing-meta{font-family:var(--mono);letter-spacing:.2em;text-transform:uppercase;color:var(--ink-faint);margin-top:8px;font-size:11px}.closing-signature{font-family:var(--serif);color:var(--ink-faint);margin-top:64px;font-size:14px;font-style:italic}.closing-signature .b1{color:var(--blue)}.closing-signature .y1{color:var(--yellow)}
