@font-face{font-family:Fell;src:url(/liber-fabularum/fonts/IMFeENrm28P.ttf)}@font-face{font-family:Fell;font-style:italic;src:url(/liber-fabularum/fonts/IMFeENit28P.ttf)}:root{--ink:#e9dcc3;--dim:#a8987c;--bg:#070605;--accent:#d9a35a}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--ink);height:100%;margin:0;font-family:Fell,Georgia,serif;overflow:hidden}#stage{justify-content:center;align-items:center;display:flex;position:fixed;inset:0}#stage canvas{touch-action:none;display:block}#page-wash{filter:blur(2.5px);mix-blend-mode:screen;opacity:0;pointer-events:none;z-index:1;transition:opacity .22s;position:fixed}#page-wash.on{opacity:1}#page-wash i{background:radial-gradient(circle 230px at var(--x,50%) var(--y,50%), #ffcd8c1f, #ffbe780d 55%, #ffbe7806);clip-path:var(--clip,none);position:absolute;inset:0}#hud{pointer-events:none;z-index:2;justify-content:space-between;align-items:center;padding:14px 18px;transition:opacity .9s;display:flex;position:fixed;top:0;left:0;right:0}#hud .lead{pointer-events:auto;align-items:center;gap:6px;display:flex}#hud .name{letter-spacing:.02em;opacity:.55;text-shadow:0 1px 8px #000;font-size:17px;font-style:italic}#hud .tools{pointer-events:auto;align-items:center;gap:4px;display:flex}.tool{color:var(--ink);cursor:pointer;opacity:.55;background:0 0;border:1px solid #0000;border-radius:50%;place-items:center;width:44px;height:44px;padding:0;transition:opacity .2s,background .2s,border-color .2s;display:grid}a.tool{text-decoration:none}.tool svg{fill:none;filter:drop-shadow(0 1px 4px #000);stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.4px;width:19px;height:19px}.tool:hover,.tool[aria-expanded=true]{opacity:1;background:#0a08068c;border-color:#e9dcc329}.tool:focus-visible,.seg button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}body.ui-idle #hud{opacity:0}body.ui-idle #hud .tools,body.ui-idle #hud .lead{pointer-events:none}.settings{position:relative}#popover{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0c0a08d1;border:1px solid #e9dcc324;border-radius:12px;width:232px;padding:12px 14px 13px;position:absolute;top:52px;right:0;box-shadow:0 10px 30px #00000073}#popover[hidden]{display:none}#popover .label{color:var(--dim);letter-spacing:.06em;text-transform:uppercase;margin-bottom:8px;font-size:13px}.seg{background:#e9dcc312;border-radius:9px;grid-template-columns:1fr 1fr;gap:3px;padding:3px;display:grid}.seg button{color:var(--dim);cursor:pointer;font:inherit;background:0 0;border:0;border-radius:7px;min-height:44px;padding:6px 4px;font-size:15px;transition:background .2s,color .2s}.seg button:hover:not(:disabled){color:var(--ink)}.seg button[aria-checked=true]{color:var(--ink);background:#d9a35a33;box-shadow:inset 0 0 0 1px #d9a35a66}.seg button:disabled{cursor:default;opacity:.35}#popover .note{color:var(--dim);margin:9px 1px 0;font-size:13px;line-height:1.35}#status{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:var(--dim);z-index:2;background:#0a08068c;border:1px solid #e9dcc31f;border-radius:999px;align-items:center;gap:10px;padding:7px 11px;font:12px/1 ui-monospace,Cascadia Mono,monospace;display:none;position:fixed;bottom:14px;left:14px}body.debug #status{display:flex}#status .dot{background:#6b8f5a;border-radius:50%;width:8px;height:8px;box-shadow:0 0 8px #6b8f5a}#status[data-mode=trace] .dot{background:var(--accent);box-shadow:0 0 8px var(--accent);animation:1.2s ease-in-out infinite pulse}#status[data-mode=clean] .dot{background:#e8d9b0;box-shadow:0 0 10px #e8d9b0}#status .mode{color:var(--ink);letter-spacing:.08em;text-transform:uppercase}@keyframes pulse{50%{opacity:.35}}#loader{background:var(--bg);z-index:5;flex-direction:column;justify-content:center;align-items:center;gap:18px;transition:opacity .8s;display:flex;position:fixed;inset:0}#loader.done{opacity:0;pointer-events:none}#loader .title{font-size:34px;font-style:italic}#loader .bar{background:#e9dcc326;width:240px;height:2px}#loader .bar span{background:var(--accent);width:0;height:100%;transition:width .3s;display:block}#loader .msg{color:var(--dim);font-size:14px}#error{color:#f3d6cf;z-index:6;background:#3a1410;border-radius:8px;padding:12px 16px;font:13px ui-monospace,monospace;position:fixed;inset:auto 20px 20px}body.capture #hud,body.capture #status,#fullscreen .fs-exit,#fullscreen[aria-pressed=true] .fs-enter{display:none}#fullscreen[aria-pressed=true] .fs-exit{display:inline}@media (max-width:360px){#hud .name{display:none}}
