@font-face{font-family:nasin-nanpa;src:url(/fonts/nasin-nanpa.woff2) format("woff2");unicode-range:U+F1900-F19FF;font-display:block;size-adjust:130%}:root{--bg: #070b14;--bg-2: #0b1222;--line: #1c2a47;--grid: rgba(80, 140, 220, .07);--ink: #cdd8f0;--dim: #66728f;--hl: #7fe7ff;--warn: #ff6b8b;--ok: #6be39b;--mono: "IBM Plex Mono", "nasin-nanpa", ui-monospace, monospace;--serif: "Cormorant Garamond", "nasin-nanpa", "Noto Serif", Georgia, "Noto Sans Gothic", "Noto Sans Old Persian", "Noto Sans Glagolitic", "Noto Sans Egyptian Hieroglyphs", "Noto Sans Javanese", "Noto Sans Coptic", "Noto Sans Syriac", "Noto Sans Runic", "Noto Serif Tibetan", "Noto Sans Sinhala", "Noto Serif Ethiopic", "Noto Sans Georgian", "Noto Sans Armenian", serif;color-scheme:dark}*{box-sizing:border-box}html,body{margin:0;min-height:100%}body{background:linear-gradient(var(--grid) 1px,transparent 1px) 0 0 / 24px 24px,linear-gradient(90deg,var(--grid) 1px,transparent 1px) 0 0 / 24px 24px,var(--bg);color:var(--ink);font:300 14px/1.6 var(--mono);transition:filter 1.2s ease}body.aligned{filter:invert(1) hue-rotate(180deg)}main{max-width:1120px;margin:0 auto;padding:32px 16px 48px}header{display:flex;align-items:center;gap:20px;border-bottom:1px solid var(--line);padding-bottom:20px;margin-bottom:24px;flex-wrap:wrap}.sigil{width:64px;height:64px;image-rendering:pixelated;border:1px solid var(--line)}.titles{flex:1 1 260px}h1{margin:0;font-weight:600;font-size:clamp(20px,4vw,32px);letter-spacing:.32em}.sub{margin:2px 0 0;font-family:var(--serif);font-style:italic;font-size:18px;color:var(--dim)}.stats{display:grid;grid-template-columns:auto auto;gap:0 14px;margin:0;font-size:12px}.stats dt{color:var(--dim);text-transform:uppercase;letter-spacing:.12em}.stats dd{margin:0;text-align:right;color:var(--hl);font-variant-numeric:tabular-nums}.grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:20px}.col{display:flex;flex-direction:column;gap:20px;min-width:0}@media(max-width:820px){.grid{grid-template-columns:1fr}}.panel{background:color-mix(in srgb,var(--bg-2) 88%,transparent);border:1px solid var(--line);padding:16px;position:relative;min-width:0}.panel-label{display:flex;gap:10px;align-items:baseline;font-size:11px;letter-spacing:.18em;margin-bottom:12px;color:var(--ink)}.dim{color:var(--dim)}.hl{color:var(--hl)}.canvas-wrap{display:block;width:100%;padding:0;border:1px solid var(--line);background:#000;cursor:crosshair;position:relative;aspect-ratio:1}canvas{width:100%;height:100%;display:block;image-rendering:pixelated}canvas.persona-lukin{filter:saturate(.8) contrast(1.05)}.veil{position:absolute;inset:0;display:grid;place-items:center;color:var(--dim);font-family:var(--mono)}.veil.err{color:var(--warn)}.meta{display:grid;grid-template-columns:max-content 1fr;gap:2px 14px;margin:14px 0 0;font-size:12px}.meta dt{color:var(--dim)}.meta dd{margin:0;overflow-wrap:anywhere}.aside{min-height:236px;display:flex;flex-direction:column;transform:translate(var(--collatz-dx, 0),var(--collatz-dy, 0)) rotate(var(--collatz-tilt, 0));transition:transform 2.4s ease}body.aligned .aside{transform:none;transition-duration:.8s}.aside blockquote{font-size:19px;color:var(--dim);font-style:italic;margin:0 0 12px}.aside blockquote.dhamma{color:var(--ink);font-style:normal}.aside .accept{margin-top:auto;align-self:flex-start}.aside cite{font-size:13px;margin-top:6px;font-style:normal}.silence{margin:24px 0 0;text-align:center;color:var(--line);font-size:22px}.anthology{position:relative}.unseen{position:absolute;top:0;right:0;width:18px;height:18px;padding:0;border:0;background:transparent;opacity:0;cursor:default}.unseen:hover:not(:disabled){background:transparent}.log ol{list-style:none;margin:0;padding:0;font-size:12.5px;min-height:9.6em}.log li:before{content:"› ";color:var(--dim)}.log li.cursor:before{content:""}.cursor{animation:blink 1s steps(2) infinite;color:var(--hl)}@keyframes blink{50%{opacity:0}}.alignment{display:flex;justify-content:space-between;align-items:baseline;border:1px dashed var(--line);padding:10px 16px;font-size:12px}.alignment{position:relative}.eye{position:absolute;left:50%;top:50%;width:96px;height:48px;transform:translate(-50%,-50%);image-rendering:pixelated;pointer-events:none;visibility:hidden}.eye.open{visibility:visible}.clock{font-size:22px;color:var(--hl);font-variant-numeric:tabular-nums;letter-spacing:.08em}blockquote{margin:0 0 12px;font-family:var(--serif);font-size:clamp(20px,2.6vw,26px);line-height:1.35;animation:arrive 1.4s ease both}blockquote cite{display:block;margin-top:10px;font-size:15px;color:var(--dim)}@keyframes arrive{0%{opacity:0;letter-spacing:.08em;filter:blur(3px)}}button{font:400 12px var(--mono);letter-spacing:.14em;background:transparent;color:var(--hl);border:1px solid var(--hl);padding:8px 16px;cursor:pointer}button:hover:not(:disabled){background:color-mix(in srgb,var(--hl) 12%,transparent)}button:disabled{opacity:.4;cursor:wait}button.ghost{border-color:var(--line);color:var(--dim)}button:focus-visible,input:focus-visible,textarea:focus-visible{outline:1px solid var(--hl);outline-offset:2px}.cascade{position:fixed;inset:0;overflow:hidden;pointer-events:none;display:flex;flex-wrap:wrap;gap:8px 22px;align-content:flex-start;padding:24px;font-family:var(--serif);font-size:22px;color:var(--hl);opacity:.85;z-index:5}.cascade span{animation:arrive 2s ease both}.sp{letter-spacing:0;font-style:normal}.lupa,.report,.blueprint{margin-top:20px}.lupa .panel-label .sp{font-size:20px;color:var(--dim)}.frames{display:flex;justify-content:center;gap:14px;margin:8px 0 22px}.frame{width:64px;height:64px;padding:0;font-size:30px;color:var(--ink);border:1px solid var(--line);background:var(--bg);letter-spacing:0}.frame:empty{border-style:dashed}.frames.refused .frame{border-color:var(--warn);color:var(--warn);animation:shudder .4s ease}@keyframes shudder{25%{transform:translate(-4px)}75%{transform:translate(4px)}}.palette{display:grid;grid-template-columns:repeat(auto-fill,minmax(36px,1fr));gap:4px}.palette button{height:36px;padding:0;font-size:20px;border:1px solid transparent;color:var(--dim);letter-spacing:0}.palette button:hover:not(:disabled){color:var(--hl);border-color:var(--line);background:transparent}.palette button:disabled{cursor:default;opacity:.25}.lupa .answer{text-align:center;font-size:22px;font-family:var(--serif)}.refusal{display:inline-block;animation:arrive .8s ease both}.ref{margin:18px 0 0;font-size:11px;letter-spacing:.22em;color:var(--dim);overflow-wrap:anywhere;opacity:.7}input,textarea{width:100%;font:400 15px var(--mono);color:var(--ink);background:var(--bg);border:1px solid var(--line);padding:10px 12px}input{text-align:center;letter-spacing:.08em}input::placeholder{color:var(--line)}textarea{resize:vertical;margin-bottom:10px;display:block}.answer{min-height:1.6em;margin:12px 0 0;color:var(--warn)}.answer.right{color:var(--ok)}.report .answer{font-family:var(--serif);font-size:19px}.report .answer .sp{font-size:24px}.sike{position:relative;width:84px;height:84px;margin:4px auto;color:var(--hl)}.sike span,.sike b{position:absolute;left:50%;top:50%;font-size:18px;line-height:1;transform:translate(-50%,-50%) rotate(calc(var(--i) * 45deg)) translateY(-32px) rotate(calc(var(--i) * -45deg));transition:opacity .2s linear}.sike b{--i: 0;font-weight:400;font-size:26px;color:var(--ink);transform:translate(-50%,-50%)}.blueprint svg{width:100%;height:auto;display:block;background:#0a1730;border:1px solid var(--line)}.room{stroke:var(--hl);stroke-width:4}.room.mine{stroke:var(--warn)}.hatch{stroke:color-mix(in srgb,var(--warn) 40%,transparent);stroke-width:1}.room-name{fill:var(--ink);font:400 12px var(--mono);text-anchor:middle}.room-dim{fill:var(--dim);font:300 9px var(--mono);text-anchor:middle}.dimline{stroke:var(--dim);stroke-dasharray:2 4}.titleblock rect{fill:none;stroke:var(--dim)}.titleblock text{fill:var(--dim);font:300 9px var(--mono)}.verdict{font-family:var(--serif);font-size:20px;margin:14px 0 0}.verdict .dim{font-size:16px}footer{margin-top:40px;border-top:1px solid var(--line);padding-top:14px;display:flex;justify-content:space-between;gap:12px;font-size:11px;flex-wrap:wrap}.invisible{color:var(--bg)}.invisible::selection{color:var(--warn);background:transparent}.konami{position:fixed;inset:0;z-index:10;background:#000000e0;display:flex;flex-wrap:wrap;align-content:center;justify-content:center;gap:16px 32px;padding:24px;font:600 clamp(24px,5vw,48px) var(--serif);color:var(--warn)}.konami span{animation:arrive .6s ease both}
