:root{--bg: #05070c;--ink: #d8d4c8;--dim: #8a94a6;--line: #1f2735;--gold: #c9a86a;--blue: #8fb6ff;--red: #c96a6a;--panel: rgba(9, 13, 20, .92);font-family:Georgia,serif}*{box-sizing:border-box}html,body{margin:0;height:100%;background:var(--bg);color:var(--ink);overflow:hidden}#viewport{position:fixed;inset:0;width:100%;height:100%;display:block;touch-action:none}#ui{position:fixed;inset:0;pointer-events:none}#ui>*{pointer-events:auto}.rail{position:absolute;top:0;left:0;bottom:0;width:17rem;padding:1rem;display:flex;flex-direction:column;gap:.75rem;background:linear-gradient(90deg,var(--panel),rgba(9,13,20,.6));border-right:1px solid var(--line);overflow:hidden}.rail h1{font-size:1rem;font-weight:400;letter-spacing:.08em;margin:0}.rail h1 span{color:var(--gold);display:block;font-size:.8rem}.stamp{margin:.3rem 0 0;font-size:.72rem;color:var(--dim)}.stamp.err{color:var(--red)}.sections{display:flex;flex-wrap:wrap;gap:.3rem}.sections button,.tabs button{background:none;border:1px solid var(--line);color:var(--dim);font:inherit;font-size:.7rem;letter-spacing:.08em;padding:.2rem .5rem;border-radius:3px;cursor:pointer}.sections button.on,.tabs button.on{color:var(--bg);background:var(--gold);border-color:var(--gold)}.rooms{list-style:none;margin:0;padding:0;overflow-y:auto;flex:1}.rooms li{display:flex;align-items:baseline;gap:.4rem;padding:.28rem .4rem;border-left:2px solid transparent;font-size:.85rem;cursor:pointer}.rooms li:hover,.rooms li.hov{background:#8fb6ff14}.rooms li.sel{border-left-color:var(--gold);background:#c9a86a1f}.rooms li.empty .name{color:var(--dim)}.rooms .name{flex:1}.rooms .count{color:var(--blue);font-size:.72rem}.rooms .scars{color:var(--red);font-size:.72rem;opacity:.8}.hint{font-size:.7rem;color:var(--dim);line-height:1.5}kbd{border:1px solid var(--line);border-radius:3px;padding:0 .25rem;font-family:ui-monospace,monospace;font-size:.9em}.panel{position:absolute;top:1rem;right:1rem;bottom:1rem;width:25rem;max-width:calc(100vw - 20rem);padding:1.2rem 1.4rem;background:var(--panel);border:1px solid var(--line);border-radius:4px;overflow-y:auto;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.panel h2{font-weight:400;margin:0;letter-spacing:.03em}.panel h3{font-weight:400;font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--dim);margin:1.2rem 0 .4rem}.panel .kind{color:var(--dim);font-size:.8rem;margin:.2rem 0 .8rem}.panel .sealed{color:var(--gold);font-size:.8rem}.panel .why{line-height:1.55;font-size:.9rem}.close{position:absolute;top:.6rem;right:.8rem;background:none;border:none;color:var(--dim);font-size:1.4rem;line-height:1;cursor:pointer}.tabs{display:flex;gap:.3rem;margin:.6rem 0}.panel ul{margin:0;padding-left:1.1rem;font-size:.85rem;line-height:1.5}.crew{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:.3rem .6rem}.crew li{color:var(--blue)}.crew.npc li{color:var(--gold);font-style:italic}.hurt{color:var(--red)}.subrooms{list-style:none;padding:0}.subrooms li{border-left:2px solid var(--line);padding-left:.7rem;margin-bottom:.7rem}.subrooms .occ{color:var(--blue)}.subrooms .occ em{color:var(--dim)}.flavour{color:var(--dim);font-size:.82rem;margin:.25rem 0 0}.from{color:var(--dim);font-size:.8em}.feed{list-style:none;padding:0;font-size:.82rem}.feed li{display:grid;grid-template-columns:7.5rem 1fr;gap:.4rem;padding:.35rem 0;border-bottom:1px solid var(--line)}.feed time{color:var(--dim);font-size:.75rem}.feed.scars span{color:var(--red)}.feed .by{grid-column:2;color:var(--dim);font-size:.75rem}.editbar{position:absolute;bottom:1rem;left:50%;transform:translate(-50%);background:var(--gold);color:var(--bg);padding:.4rem .9rem;border-radius:3px;font-size:.8rem}
