#scene-root{position:fixed;inset:0;z-index:0}#scene-canvas{display:block;width:100%;height:100%;margin:0;padding:0;border:0;position:absolute;inset:0}#scene-fallback{display:none;position:absolute;inset:0;align-items:center;justify-content:center;text-align:center;color:#a9c1ff;background:radial-gradient(1200px 800px at 30% 20%,#10192f,#05070f 60%) no-repeat,#05070f;font-family:var(--font-google-sans-code),monospace;padding:2rem}#scene-fallback.show{display:flex}#scene-fallback a{color:#ffb46b;text-decoration:underline}#hud{position:absolute;inset:0;pointer-events:none}.hud-crosshair{position:absolute;left:50%;top:50%;width:18px;height:18px;transform:translate(-50%,-50%);border:2px solid rgba(255,180,107,.9);border-radius:50%;box-shadow:0 0 8px #ffb46b99,inset 0 0 6px #ffb46b66}.hud-tooltip{position:absolute;left:50%;bottom:12%;transform:translate(-50%);padding:.4rem .9rem;border:1px solid rgba(255,180,107,.5);border-radius:4px;background:#050914d1;color:#cde8ff;font-family:var(--font-google-sans-code),monospace;font-size:.8rem;letter-spacing:.04em;opacity:0;transition:opacity .15s ease;white-space:nowrap}.hud-tooltip.show{opacity:1}.cyber-overlay{position:fixed;inset:0;z-index:20;display:none;align-items:center;justify-content:center;padding:2rem;background:#03050cc7;backdrop-filter:blur(6px);pointer-events:auto}.cyber-overlay.open{display:flex}.cyber-panel{display:flex;flex-direction:column;max-width:52rem;width:100%;max-height:86vh;overflow:hidden;border:1px solid rgba(255,180,107,.35);border-radius:6px;background:linear-gradient(180deg,#0a1020f5,#04070ffa),#060a14;box-shadow:0 0 0 1px #ffb46b14 inset,0 0 50px #ffb46b1f,0 24px 60px #0009;color:#cfe4ff;font-family:var(--font-google-sans-code),monospace}.cyber-panel-head{display:flex;align-items:center;gap:.75rem;padding:.8rem 1.1rem;border-bottom:1px solid rgba(255,180,107,.18);background:#ffb46b0d}.cyber-title{font-size:.95rem;font-weight:700;letter-spacing:.16em;color:#ffb46b;text-shadow:0 0 10px rgba(255,180,107,.45)}.cyber-sub{font-size:.72rem;color:#6f8cb8;letter-spacing:.04em}.cyber-permalink{margin-left:auto;font-size:.72rem;color:#7aa7ff;text-decoration:none;letter-spacing:.04em}.cyber-permalink:hover{color:#ffb46b}.cyber-close{margin-left:auto;border:1px solid rgba(255,180,107,.3);border-radius:3px;background:transparent;color:#ffb46b;font:inherit;font-size:.72rem;padding:.2rem .5rem;cursor:pointer}.cyber-close:hover{background:#ffb46b24}.cyber-panel-foot{padding:.55rem 1.1rem;border-top:1px solid rgba(255,180,107,.15);font-size:.7rem;color:#5d7aa6;letter-spacing:.03em}.cyber-panel-foot a{color:#ffb46b;text-decoration:none}.cyber-panel-foot a:hover{text-decoration:underline}.cyber-panel-foot kbd{border:1px solid rgba(255,180,107,.35);border-radius:3px;padding:0 .3em;background:#ffb46b12;color:#aef1ff;font:inherit;font-size:.68rem}.cyber-list{flex:1 1 auto;overflow-y:auto;padding:.5rem;min-height:12rem}.catalog-loading,.catalog-empty,.catalog-missing,.reader-status{padding:2rem 1rem;text-align:center;color:#7aa7ff;font-size:.85rem;letter-spacing:.05em}.catalog-row{display:flex;flex-direction:column;gap:.2rem;width:100%;text-align:left;padding:.65rem .9rem;margin-bottom:.3rem;border:1px solid transparent;border-radius:4px;background:#0d162a99;color:inherit;font:inherit;cursor:pointer;transition:border-color .12s ease,background .12s ease}.catalog-row:hover,.catalog-row:focus-visible{border-color:#ffb46b8c;background:#ffb46b12;outline:none}.catalog-title{font-size:.92rem;font-weight:600;color:#e6f4ff}.catalog-row:hover .catalog-title{color:#ffb46b}.catalog-meta{font-size:.7rem;color:#6f8cb8}.cyber-reader{max-width:58rem}.cyber-prose{flex:1 1 auto;overflow-y:auto;padding:1.4rem 1.6rem;line-height:1.65;font-size:.92rem;color:#cdddef}.cyber-prose h1,.cyber-prose h2,.cyber-prose h3,.cyber-prose h4{color:#ffb46b;font-weight:700;letter-spacing:.03em;margin:1.2em 0 .5em;line-height:1.3}.cyber-prose h1{font-size:1.45rem;border-bottom:1px solid rgba(255,180,107,.2);padding-bottom:.3em}.cyber-prose h2{font-size:1.25rem}.cyber-prose h3{font-size:1.08rem}.cyber-prose p{margin:.7em 0}.cyber-prose a{color:#7aa7ff;text-decoration:underline}.cyber-prose a:hover{color:#ffb46b}.cyber-prose img{max-width:100%;height:auto;border:1px solid rgba(255,180,107,.18);border-radius:4px;margin:.8rem 0}.cyber-prose ul,.cyber-prose ol{padding-left:1.4em;margin:.6em 0}.cyber-prose li{margin:.25em 0}.cyber-prose blockquote{border-left:3px solid rgba(255,180,107,.5);margin:.8em 0;padding:.2em 1em;color:#9db4d4;background:#ffb46b0a}.cyber-prose code{font-family:var(--font-google-sans-code),monospace;font-size:.85em;background:#7aa7ff1f;border-radius:3px;padding:.1em .35em;color:#aef1ff}.cyber-prose pre{background:#04070f;border:1px solid rgba(255,180,107,.15);border-radius:5px;padding:.9rem 1rem;overflow-x:auto;margin:.9rem 0;line-height:1.5}.cyber-prose pre code{background:transparent;padding:0;color:#d6e4f5;font-size:.82rem}.cyber-prose pre .shiki,.cyber-prose pre code .shiki{color:var(--shiki-dark, #d6e4f5);background:transparent}.cyber-prose pre .shiki span,.cyber-prose pre code span[style*=--shiki-dark]{color:var(--shiki-dark, inherit);font-style:var(--shiki-dark-font-style, inherit)}.cyber-prose table{border-collapse:collapse;width:100%;margin:.9rem 0;font-size:.85rem}.cyber-prose th,.cyber-prose td{border:1px solid rgba(255,180,107,.18);padding:.4rem .7rem;text-align:left}.cyber-prose th{background:#ffb46b14;color:#ffb46b}.cyber-prose hr{border:none;border-top:1px dashed rgba(255,180,107,.3);margin:1.4rem 0}.cyber-prose :not(pre)>code{word-break:break-word}.cyber-panel.about-card{max-width:42rem}.about-body{padding:1.4rem 1.6rem;overflow-y:auto;line-height:1.6}.about-body h2{margin:0 0 .8rem;font-size:1.3rem;color:#ffb46b;letter-spacing:.06em}.about-body p{margin:.6em 0;color:#b8cbe8}.cyber-list::-webkit-scrollbar,.cyber-prose::-webkit-scrollbar,.about-body::-webkit-scrollbar{width:8px}.cyber-list::-webkit-scrollbar-thumb,.cyber-prose::-webkit-scrollbar-thumb,.about-body::-webkit-scrollbar-thumb{background:#ffb46b40;border-radius:4px}.cyber-list::-webkit-scrollbar-track,.cyber-prose::-webkit-scrollbar-track,.about-body::-webkit-scrollbar-track{background:#00000040}@media(max-width:640px){.cyber-overlay{padding:.5rem;align-items:stretch}.cyber-panel{max-height:96vh;border-radius:4px}}
