@font-face{font-family:"Press Start 2P";src:url(/fonts/PressStart2P-Regular.ttf) format("truetype");font-display:block}:root{--ui-bg: #0d0d18;--ui-panel: #14142a;--ui-line: #5555ff;--ui-text: #f0f0ff;--ui-dim: #9a9ac8;--ui-accent: #55ffff;--ui-font: "Press Start 2P", ui-monospace, monospace;--tap: 44px}html,body{margin:0;height:100%;background:#000;overflow:hidden;color:var(--ui-text)}body{font-family:var(--ui-font);font-size:11px;-webkit-text-size-adjust:none;touch-action:manipulation}#app{position:fixed;inset:0;display:flex;flex-direction:row}#stage{position:relative;flex:1;min-width:0;min-height:0;display:flex;align-items:center;justify-content:center}#stage canvas{image-rendering:pixelated;image-rendering:crisp-edges;display:block;touch-action:none}#overlay{position:absolute;inset:0;pointer-events:none}#overlay>*{pointer-events:auto}#overlay.open{background:#00000073}.bar{display:flex;flex-direction:column;gap:8px;padding:8px;width:230px;box-sizing:border-box;background:var(--ui-bg);border-left:2px solid var(--ui-line);overflow-y:auto}.bar button{min-height:var(--tap);min-width:var(--tap);font:inherit;color:var(--ui-text);background:var(--ui-panel);border:1px solid var(--ui-line);border-radius:4px;cursor:pointer;padding:4px 6px}.bar button:hover,.bar button:focus-visible{border-color:var(--ui-accent);outline:none}.bar button:active{background:var(--ui-line)}.bar-menus{display:grid;grid-template-columns:1fr 1fr;gap:6px}.bar-menus .menu{font-size:9px;padding:4px 2px}.bar-pad{display:grid;grid-template-columns:repeat(3,var(--tap));grid-template-rows:repeat(3,var(--tap));gap:4px;justify-content:center}.pad-north{grid-area:1 / 2}.pad-west{grid-area:2 / 1}.pad-east{grid-area:2 / 3}.pad-south{grid-area:3 / 2}.bar-cmds{display:grid;grid-template-columns:1fr 1fr;gap:4px}.bar-cmds .cmd{display:flex;align-items:center;gap:6px;text-align:left;font-size:9px}.cmd-key{color:var(--ui-accent);min-width:1.2em}.bar-keys{display:grid;grid-template-columns:1fr 1fr 1fr;gap:4px;font-size:9px}@media(max-aspect-ratio:1/1){#app{flex-direction:column}.bar{width:auto;max-height:50vh;border-left:none;border-top:2px solid var(--ui-line);display:grid;align-content:start;grid-template-columns:auto 1fr;grid-template-areas:"menus menus" "pad cmds" "keys keys"}.bar-menus{grid-area:menus;grid-template-columns:repeat(5,1fr)}.bar-pad{grid-area:pad;align-self:start}.bar-cmds{grid-area:cmds;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));align-content:start}.bar-keys{grid-area:keys}}@media(max-aspect-ratio:1/1)and (max-width:520px){.bar{--tap: 36px;max-height:36vh;padding:6px;gap:6px}.bar-menus .menu,.bar-cmds .cmd,.bar-keys{font-size:7px}.bar-cmds{grid-template-columns:repeat(auto-fill,minmax(88px,1fr))}.bar-cmds .cmd{gap:4px;padding:2px 4px}}#app.no-bar .bar,#app.bar-folded .bar{display:none}.bar-handle{position:absolute;z-index:10;right:0;top:50%;transform:translateY(-50%);width:14px;height:56px;padding:0;border:1px solid var(--ui-line);border-right:none;border-radius:6px 0 0 6px;background:var(--ui-bg);color:var(--ui-dim);cursor:pointer;opacity:.55;font:12px/1 system-ui,sans-serif;display:grid;place-items:center}.bar-handle:before{content:"›"}#app.bar-folded .bar-handle:before{content:"‹"}.bar-handle:hover,.bar-handle:focus-visible{opacity:1;color:var(--ui-accent);outline:none;border-color:var(--ui-accent)}#app.no-bar .bar-handle{display:none}@media(max-aspect-ratio:1/1){.bar-handle{inset:auto auto 0 50%;transform:translate(-50%);width:56px;height:14px;border:1px solid var(--ui-line);border-bottom:none;border-radius:6px 6px 0 0}.bar-handle:before{content:"⌄"}#app.bar-folded .bar-handle:before{content:"⌃"}}.panel{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(92%,640px);max-height:90%;display:flex;flex-direction:column;background:var(--ui-panel);border:2px solid var(--ui-line);border-radius:6px;box-shadow:0 0 0 4px #000}.panel-wide{width:94%;height:90%}.panel-head{display:flex;align-items:center;justify-content:space-between;padding:8px 10px;border-bottom:1px solid var(--ui-line)}.panel-head h2{margin:0;font-size:12px;color:var(--ui-accent)}.panel-close,.panel button{min-height:32px;min-width:32px;font:inherit;color:var(--ui-text);background:var(--ui-bg);border:1px solid var(--ui-line);border-radius:4px;cursor:pointer}.panel button:hover,.panel button:focus-visible{border-color:var(--ui-accent);outline:none}.panel-body{overflow:auto;padding:10px;line-height:1.6}.text-entry{position:absolute;left:50%;bottom:8%;transform:translate(-50%);display:flex;gap:6px;padding:8px;background:var(--ui-panel);border:2px solid var(--ui-line);border-radius:6px}.text-entry-field{font:inherit;font-size:16px;min-height:var(--tap);width:14em;background:#000;color:var(--ui-text);border:1px solid var(--ui-line);padding:0 8px}.text-entry button{min-height:var(--tap);font:inherit;color:var(--ui-text);background:var(--ui-bg);border:1px solid var(--ui-line);border-radius:4px}.dbg-top{position:sticky;top:-10px;z-index:1;margin:-10px -10px 10px;padding:10px 10px 0;background:var(--ui-panel)}.dbg-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:8px}.dbg-state{flex:1;min-width:12em;font-size:9px;line-height:1.5}.dbg-state.ok{color:#5f5}.dbg-state.partial{color:#ff5}.dbg-state.busy{color:#f55}.dbg-tabs{display:flex;flex-wrap:wrap;gap:4px;border-bottom:1px solid var(--ui-line);padding-bottom:6px}.panel .dbg-tab{padding:0 10px;font-size:10px}.panel .dbg-tab.active{background:var(--ui-line);border-color:var(--ui-accent);color:#fff}.dbg-section{margin-bottom:14px}.dbg-section h3{margin:0 0 8px;font-size:10px;color:var(--ui-accent);font-weight:400}.dbg-member{margin-bottom:10px;padding:6px 8px;border:1px solid #33337a;border-radius:4px}.dbg-member h4{margin:0 0 6px;font-size:10px;font-weight:400}.dbg-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:6px 10px}.dbg-actions{display:flex;flex-wrap:wrap;align-items:flex-end;gap:8px;margin-top:8px}.dbg-field{display:flex;flex-direction:column;gap:2px;min-width:0;font-size:9px;color:var(--ui-dim)}.dbg-field span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dbg-field input,.dbg-field select{min-height:30px;min-width:0;box-sizing:border-box;font:inherit;font-size:10px;color:var(--ui-text);background:#000;border:1px solid var(--ui-line);border-radius:4px;padding:0 4px}.dbg-actions .dbg-field select{max-width:min(30em,80vw)}.dbg-actions .dbg-field input{width:6em}.dbg-field input:focus-visible,.dbg-field select:focus-visible{outline:1px solid var(--ui-accent)}.dbg-field input:disabled,.dbg-field select:disabled,.panel .dbg-btn:disabled{opacity:.45;cursor:not-allowed}.dbg-flag{display:flex;align-items:center;gap:6px;font-size:9px;min-height:30px;cursor:pointer}.dbg-flag input{width:18px;height:18px;margin:0;flex:none;accent-color:var(--ui-accent)}.dbg-god{font-size:10px;color:#ff5}.panel .dbg-btn{padding:0 8px;font-size:9px}.dbg-karma{display:flex;align-items:flex-end;gap:6px}.dbg-karma .dbg-field{flex:1}.dbg-karma .dbg-field input{width:100%}.dbg-elevated{font-size:9px;color:#5f5;padding-bottom:8px}.dbg-note{margin:0 0 6px;font-size:9px;color:var(--ui-dim);line-height:1.6}.dbg-tests{list-style:none;margin:0;padding:0;display:grid;gap:6px}.dbg-tests li{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:6px 8px;border:1px solid #33337a;border-radius:4px}.dbg-tests li>div{flex:1;min-width:0}.dbg-tests li>button{flex:none}.dbg-tests strong{display:block;font-weight:400;font-size:10px;color:var(--ui-text)}.dbg-tests small{display:block;font-size:9px;color:var(--ui-dim);line-height:1.6}.dbg-table-wrap{overflow-x:auto}.dbg-table{width:100%;border-collapse:collapse;font-size:9px}.dbg-table th{text-align:left;font-weight:400;color:var(--ui-dim);padding:4px 6px;border-bottom:1px solid var(--ui-line)}.dbg-table td{padding:4px 6px;border-bottom:1px solid #22225a;white-space:nowrap}.dbg-table td small{margin-left:6px;font-size:8px}.dbg-table tr.open td:nth-child(3),.dbg-table tr.open td:first-child{color:#5f5}.dbg-table tr.dest td:nth-child(4){color:#ff5}.dbg-table .dbg-cell-actions{display:flex;gap:4px;justify-content:flex-end}@media(max-width:520px){.dbg-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr))}.dbg-table td:nth-child(2),.dbg-table th:nth-child(2){display:none}}.panel:has(.help-body){width:min(94%,760px);height:88%}.panel-body.help-body{display:flex;flex-direction:column;gap:8px;overflow:hidden;flex:1;min-height:0;padding:8px 10px}.help-tabs{display:flex;flex-wrap:wrap;gap:4px;flex:none}.panel .help-tab{flex:1 1 auto;font-size:9px;padding:6px 8px;color:var(--ui-dim)}.panel .help-tab[aria-selected=true]{color:#000;background:var(--ui-accent);border-color:var(--ui-accent)}.help-content{flex:1;min-height:0;overflow-y:auto;padding-right:4px;font-family:system-ui,-apple-system,Segoe UI,sans-serif;font-size:14px;line-height:1.45;outline:none}.help-content h3{font-family:var(--ui-font);font-size:10px;color:var(--ui-accent);margin:16px 0 6px;font-weight:400}.help-content h3:first-child{margin-top:4px}.help-content p{margin:0 0 8px}.help-nav{flex:none;margin:0;font-size:8px;color:var(--ui-dim);text-align:center}.help-lead{color:var(--ui-dim)}.help-ctx{font-family:var(--ui-font);font-size:9px;color:var(--ui-accent);margin-right:4px}.help-key{display:inline-block;min-width:1.4em;padding:2px 5px;margin:0 2px 2px 0;font-family:var(--ui-font);font-size:9px;line-height:1.4;text-align:center;color:var(--ui-accent);background:var(--ui-bg);border:1px solid var(--ui-line);border-radius:3px;white-space:nowrap}.help-table{width:100%;border-collapse:collapse}.help-table td,.help-table th{padding:5px 6px;border-bottom:1px solid rgba(85,85,255,.3);vertical-align:top;text-align:left}.help-table td:first-child{width:1%;white-space:nowrap}.help-table th{font-weight:600;white-space:nowrap;color:var(--ui-text)}.help-cmds{list-style:none;margin:0;padding:0}.help-cmd{padding:6px 0;border-bottom:1px solid rgba(85,85,255,.3)}.help-cmd-head{display:flex;align-items:center;gap:6px;margin-bottom:2px}.help-cmd-line{display:grid;grid-template-columns:13.5em 1fr;align-items:baseline;gap:8px;padding:1px 0 1px 4px}.help-tags{display:inline-flex;gap:3px;flex-wrap:wrap}.help-tag{font-size:11px;padding:0 5px;border-radius:3px;border:1px solid;white-space:nowrap}.help-tag-world{color:#5f5}.help-tag-town{color:#ff5}.help-tag-dungeon{color:#f5f}.help-tag-combat{color:#f55}.help-dl{display:grid;grid-template-columns:max-content 1fr;gap:6px 12px;margin:0}.help-dl dt{font-weight:600}.help-dl dd{margin:0}@media(max-width:520px){.help-dl{grid-template-columns:1fr;gap:2px}.help-dl dd{margin-bottom:6px}.help-table th{white-space:normal}.help-cmd-line{grid-template-columns:1fr;gap:2px}}.inv{display:flex;flex-direction:column;gap:10px;font-size:10px}.inv h3{margin:0 0 6px;font-size:10px;color:var(--ui-accent);font-weight:400}.inv .dim{color:var(--ui-dim);opacity:.7}.inv-label{color:var(--ui-dim)}.inv-note{margin:0;padding:6px 8px;color:var(--ui-dim);border:1px dashed var(--ui-line);border-radius:4px}.inv-supplies{display:flex;flex-wrap:wrap;gap:4px 14px;padding:6px 8px;background:var(--ui-bg);border:1px solid var(--ui-line);border-radius:4px}.inv-stat{white-space:nowrap}.inv-stat b{color:var(--ui-text);font-weight:400}.inv-tabs{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:4px;border-bottom:1px solid var(--ui-line);padding-bottom:6px}.inv .inv-tab{min-height:40px;padding:4px 6px;line-height:1.5;font-size:9px;color:var(--ui-dim)}.inv .inv-tab[aria-selected=true]{color:#000;background:var(--ui-accent);border-color:var(--ui-accent)}.inv .inv-tab[aria-selected=true]:focus-visible{outline:2px solid var(--ui-text);outline-offset:1px}.inv-section{display:flex;flex-direction:column;gap:8px}.inv-cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.inv-member{padding:8px;background:var(--ui-bg);border:1px solid var(--ui-line);border-radius:4px;display:flex;flex-direction:column;gap:4px}.inv-member.status-D{opacity:.6}.inv-member-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px}.inv-num{color:var(--ui-accent)}.inv-name{color:var(--ui-text);font-size:11px}.inv-class{color:var(--ui-dim)}.inv-status{margin-left:auto}.status-P .inv-status{color:#5f5}.status-S .inv-status{color:#aaf}.status-D .inv-status{color:#f55}.inv-stats{display:flex;flex-wrap:wrap;gap:2px 12px}.inv-slot{display:flex;align-items:center;gap:8px;min-height:32px}.inv-slot .inv-label{min-width:6.5em}.inv-item{flex:1}.inv .inv-change{padding:0 10px;font-size:9px;color:var(--ui-accent)}.inv .inv-change[aria-expanded=true]{color:#000;background:var(--ui-accent)}.inv .inv-change[disabled]{opacity:.35;cursor:default}.inv-choices{display:flex;flex-wrap:wrap;gap:4px;padding:4px 0 4px 6.5em}.inv .inv-choice{padding:4px 8px;font-size:9px}.inv .inv-choice.current{border-color:var(--ui-accent);color:var(--ui-accent)}.inv-list ul,.inv-items{list-style:none;margin:0;padding:0}.inv-list li,.inv-items li{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:3px 0;border-bottom:1px dotted rgba(85,85,255,.35)}.inv-list li b{font-weight:400;color:var(--ui-text)}.inv-items li{justify-content:flex-start;min-height:28px}.inv-tag{padding:1px 6px;color:var(--ui-dim);border:1px solid var(--ui-dim);border-radius:3px;font-size:8px}.inv-chips{display:flex;flex-wrap:wrap;gap:4px}.inv-list .inv-grid{display:grid;grid-template-columns:1fr 1fr;gap:4px}.inv-list .inv-grid li{justify-content:flex-start;border:none}.inv-chip{display:inline-flex;align-items:center;gap:6px;padding:3px 6px;color:var(--ui-dim);border:1px dashed rgba(154,154,200,.45);border-radius:3px;opacity:.6}.inv-chip.on{color:var(--ui-text);border:1px solid var(--ui-accent);opacity:1}.inv-list .inv-grid .inv-chip{padding:4px 6px;border:1px dashed rgba(154,154,200,.45)}.inv-list .inv-grid .inv-chip.on{border:1px solid var(--ui-accent)}.inv-swatch{width:10px;height:10px;flex:none;border:1px solid var(--ui-dim)}.set-section{margin:0 0 12px;padding:8px 10px 4px;border:1px solid var(--ui-line);border-radius:4px}.set-section legend{padding:0 6px;color:var(--ui-accent);font-size:10px}.set-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);align-items:center;gap:4px 10px;margin-bottom:8px}.set-row label{font-size:10px}.set-hint{grid-column:1 / -1;color:var(--ui-dim);font-size:9px;line-height:1.5}.set-note{margin:0 0 8px;color:var(--ui-dim);font-size:9px}.set-input{min-height:32px;min-width:0;width:100%;box-sizing:border-box;font:inherit;font-size:10px;color:var(--ui-text);background:#000;border:1px solid var(--ui-line);border-radius:4px;padding:0 6px}.set-input:focus-visible,.set-check:focus-visible{outline:1px solid var(--ui-accent)}.set-check{justify-self:start;width:22px;height:22px;margin:0;accent-color:var(--ui-accent)}.set-range{justify-self:stretch;min-height:32px;margin:0;accent-color:var(--ui-accent)}.set-range:focus-visible{outline:1px solid var(--ui-accent)}.set-reload{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px;padding:8px 10px;border:1px solid var(--ui-accent);border-radius:4px;color:var(--ui-accent);font-size:10px}.panel .set-reload-btn{padding:0 10px;border-color:var(--ui-accent);color:var(--ui-accent);white-space:nowrap}@media(max-width:520px){.set-row{grid-template-columns:1fr}}.set-legal{display:flex;flex-wrap:wrap;gap:8px 18px;font-size:10px}.set-legal a{color:var(--ui-accent)}.pt-root{--pt-night: #070814;--pt-frame: #a6a8ff;--pt-ice: #bff6ff;--pt-ice-deep: #2bb7d6;--pt-gold: #ffd36a;--pt-rule: #d8323c;--pt-muted: #9aa0c8;--pt-display: "Pirata One", "Old English Text MT", serif;--pt-script: "Dancing Script", "Brush Script MT", cursive;--pt-pixel: "Press Start 2P", ui-monospace, monospace;position:absolute;inset:0;z-index:5;display:grid;place-items:center;container-type:size;background:radial-gradient(120% 80% at 50% 0%,#0d1030 0%,var(--pt-night) 65%);color:#fff}.pt-root[hidden]{display:none}.pt-screen{position:relative;width:min(100cqw,133.333cqh);aspect-ratio:4 / 3;container-type:inline-size}.pt-stars{position:absolute;inset:0;pointer-events:none}.pt-stars i{position:absolute;width:3px;height:3px;background:#fff;border-radius:50%;opacity:.5;animation:pt-twinkle 3.4s ease-in-out infinite}.pt-stars i.big{width:4px;height:4px}@keyframes pt-twinkle{50%{opacity:.08}}.pt-moon{position:absolute;top:4.5cqw;border-radius:50%}.pt-moon.t{left:30cqw;width:2.2cqw;height:2.2cqw;background:radial-gradient(circle at 35% 35%,#fff,#c7d2ff 60%,#7f8fd8);box-shadow:inset -.9cqw 0 0 .1cqw var(--pt-night);opacity:.8}.pt-moon.f{right:30cqw;width:1.6cqw;height:1.6cqw;background:radial-gradient(circle at 40% 40%,#fff,#ffe2b0 60%,#d9a45e);box-shadow:inset .7cqw 0 0 .05cqw var(--pt-night);opacity:.75}.pt-niche{position:absolute;top:3.5cqw;width:12.5cqw;height:11cqw;border-top:.5cqw solid #c9c9c9}.pt-niche.l{left:2.5cqw;border-left:.5cqw solid #c9c9c9}.pt-niche.r{right:2.5cqw;border-right:.5cqw solid #c9c9c9}.pt-niche:after{content:"";position:absolute;bottom:0;left:0;right:0;height:.5cqw;background:#c9c9c9}.pt-niche.l:after{right:2cqw}.pt-niche.r:after{left:2cqw}.pt-sprite{position:absolute;bottom:.5cqw;width:11.5cqw;aspect-ratio:1;image-rendering:pixelated;background-repeat:no-repeat;background-size:800% 100%;animation:pt-strip 1.1s steps(8) infinite}.pt-niche.l .pt-sprite{left:.8cqw}.pt-niche.r .pt-sprite{right:.8cqw;transform:scaleX(-1)}@keyframes pt-strip{to{background-position:114.2857% 0}}.pt-breath{position:absolute;top:4.2cqw;right:9.6cqw;font:400 2cqw/1 var(--pt-pixel);color:#ff8a3d;text-shadow:0 0 .6cqw #ff5a1f;opacity:0;animation:pt-puff 2.6s linear infinite}.pt-breath.b2{animation-delay:.9s;color:#ffc861}.pt-breath.b3{animation-delay:1.8s}@keyframes pt-puff{0%{transform:translate(0) scale(.6);opacity:0}15%{opacity:1}to{transform:translate(-7cqw,-1.5cqw) scale(1.1);opacity:0}}.pt-credit{position:absolute;top:3.2cqw;left:0;right:0;display:grid;justify-items:center;gap:.5cqw}.pt-lord{font:700 5.6cqw/1 var(--pt-script);color:var(--pt-ice);text-shadow:0 0 .8cqw #2bb7d655;border-bottom:.3cqw solid var(--pt-ice-deep);padding:0 2cqw .3cqw}.pt-small{font:400 1.75cqw/1 var(--pt-pixel);letter-spacing:.1em}.pt-company{font:400 2.6cqw/1 var(--pt-pixel);color:var(--pt-frame);letter-spacing:.05em;padding-bottom:.5cqw;border-bottom:.35cqw solid var(--pt-rule)}.pt-logo{position:absolute;top:19.6cqw;left:0;right:0;text-align:center;font:400 12.4cqw/1.05 var(--pt-display);white-space:nowrap}.pt-ice{background:linear-gradient(180deg,#fff 8%,var(--pt-ice) 38%,var(--pt-ice-deep) 62%,#e9fdff 86%);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 .35cqw 0 #0b4a63) drop-shadow(0 0 1.2cqw #2bb7d640)}.pt-gold{background:linear-gradient(180deg,#fff6d6 10%,var(--pt-gold) 45%,#b8862b 70%,#fff1c4 90%);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 .35cqw 0 #5a3a0c)}.pt-num{font-size:.78em;margin-left:.12em}.pt-shine{position:relative}.pt-shine:after{content:"";position:absolute;inset:-10% -5%;background:linear-gradient(105deg,transparent 40%,#ffffffb0 50%,transparent 60%);background-size:250% 100%;mix-blend-mode:overlay;animation:pt-shine 5.5s ease-in-out infinite;pointer-events:none}@keyframes pt-shine{0%,60%{background-position:120% 0}to{background-position:-120% 0}}.pt-cursor{display:inline-block;width:.32em;height:.7em;margin-left:.06em;background:var(--pt-gold);vertical-align:-.02em;box-shadow:0 0 1cqw var(--pt-gold);animation:pt-blink 1.05s steps(1) infinite}@keyframes pt-blink{50%{opacity:0}}.pt-subtitle{position:absolute;top:35.6cqw;left:0;right:0;text-align:center;font:400 4.6cqw/1 var(--pt-display);letter-spacing:.28em;color:#d9dbe8;text-shadow:0 .3cqw 0 #3a3d5c;text-transform:uppercase}.pt-box{position:absolute;left:3cqw;right:3cqw;bottom:2.6cqw;height:31cqw;box-sizing:border-box;border:1.4cqw solid var(--pt-frame);border-radius:2.6cqw;background:#000;display:grid;grid-template-rows:auto 1fr auto;padding:2cqw 2cqw 1.4cqw;text-align:center}.pt-tagline{font:400 1.75cqw/1.3 var(--pt-pixel);text-wrap:balance}.pt-menu,.pt-notice{align-self:center;justify-self:center;display:grid;gap:.55cqw;text-align:left;font:400 1.9cqw/1 var(--pt-pixel)}.pt-menu[hidden],.pt-notice[hidden]{display:none}.pt-notice{text-align:center;gap:1cqw}.pt-notice p{margin:0}.pt-head{padding-left:4.2cqw}.pt-spiral{color:#8a8cff;margin-left:1.4cqw;display:inline-block;animation:pt-spin 1.6s linear infinite}@keyframes pt-spin{to{transform:rotate(360deg)}}.pt-item{all:unset;cursor:pointer;color:#fff;padding:.35cqw 1cqw .35cqw 4.2cqw;position:relative;border-radius:.5cqw}.pt-item:before{content:"▶";position:absolute;left:1.3cqw;color:var(--pt-gold);opacity:0}.pt-item.on,.pt-item:focus-visible{background:#1a1d48;color:var(--pt-gold)}.pt-item.on:before,.pt-item:focus-visible:before{opacity:1}.pt-item:focus-visible{outline:.3cqw solid var(--pt-gold)}.pt-foot{font:400 1.75cqw/1.4 var(--pt-pixel)}.pt-foot small{display:block;font-size:1.4cqw;color:var(--pt-muted)}.pt-legal{position:absolute;left:0;right:0;bottom:.45cqw;display:flex;justify-content:center;gap:2.5cqw;font:400 1.05cqw/1 var(--pt-pixel)}.pt-legal a{color:var(--pt-muted);text-decoration:none}.pt-legal a:hover,.pt-legal a:focus-visible{color:var(--pt-gold);outline:none}.pt-legal a.support{color:#ff8fb3}.pt-root.opening:not(.done) .pt-legal{animation:pt-fade .6s 3.4s ease-out both}.pt-root.opening:not(.done) .pt-stars{animation:pt-fade .8s ease-out both}.pt-root.opening:not(.done) .pt-moon{animation:pt-fade 1s .2s ease-out both}.pt-root.opening:not(.done) .pt-lord{animation:pt-write 1.1s .4s steps(14) both}.pt-root.opening:not(.done) .pt-small,.pt-root.opening:not(.done) .pt-company{animation:pt-fade .5s 1.4s ease-out both}.pt-root.opening:not(.done) .pt-logo{animation:pt-drop .8s 1.9s cubic-bezier(.2,1.4,.4,1) both}.pt-root.opening:not(.done) .pt-subtitle{animation:pt-spread .6s 2.6s ease-out both}.pt-root.opening:not(.done) .pt-box{animation:pt-open .6s 3s ease-out both}.pt-root.opening:not(.done) .pt-niche{animation:pt-slide .7s 3.5s ease-out both}@keyframes pt-fade{0%{opacity:0}}@keyframes pt-write{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 0 0 0)}}@keyframes pt-drop{0%{opacity:0;transform:translateY(-4cqw) scale(1.08)}}@keyframes pt-spread{0%{opacity:0;letter-spacing:.9em}}@keyframes pt-open{0%{transform:scaleX(.02);opacity:0}40%{transform:scaleX(.02);opacity:1}}@keyframes pt-slide{0%{transform:translateY(-14cqw)}}.pt-music{position:absolute;right:1.2cqw;bottom:1.2cqw;z-index:1;width:5.6cqw;height:5.6cqw;border-radius:50%;cursor:pointer;padding:0;font:400 2.8cqw/1 system-ui,sans-serif;color:var(--pt-gold);background:#10132e;border:.6cqw solid var(--pt-frame);display:grid;place-items:center}.pt-music:hover{background:#1a1d48}.pt-music:focus-visible{outline:.4cqw solid var(--pt-gold);outline-offset:.3cqw}.pt-music.off{color:var(--pt-muted)}.pt-music.off:after{content:"";position:absolute;width:62%;height:.45cqw;background:currentColor;transform:rotate(-45deg)}.pt-root.opening:not(.done) .pt-music{animation:pt-fade .6s 3.4s ease-out both}@media(prefers-reduced-motion:reduce){.pt-root *,.pt-root *:after{animation:none!important}.pt-breath{opacity:0}}.panel-body.wm-body{flex:1;min-height:0;overflow:hidden;padding:8px;container-type:size}.wm{display:flex;gap:8px;width:100%;height:100%}.wm-view{position:relative;flex:1;min-width:0;min-height:0;background:#000;border:1px solid var(--ui-line);overflow:hidden}.wm-canvas{position:absolute;inset:0;width:100%;height:100%;display:block;touch-action:none;cursor:grab;image-rendering:pixelated;image-rendering:crisp-edges}.wm-canvas:active{cursor:grabbing}.wm-canvas:focus-visible{outline:2px solid var(--ui-accent);outline-offset:-2px}.wm-tools{position:absolute;top:6px;right:6px;display:flex;gap:4px}.wm .wm-tools button{min-width:var(--tap);min-height:var(--tap);font-size:14px;background:#0d0d18d9}.wm .wm-tools .wm-centre{font-size:9px;padding:0 8px}.wm-hint{position:absolute;left:6px;bottom:6px;right:6px;font-size:8px;color:var(--ui-dim);pointer-events:none;text-shadow:1px 1px 0 #000,-1px -1px 0 #000;line-height:1.5}.wm-tip{position:absolute;z-index:1;padding:4px 6px;font-size:9px;white-space:nowrap;color:var(--ui-text);background:var(--ui-bg);border:1px solid var(--ui-accent);border-radius:3px;pointer-events:none;transform:translate(-50%,calc(-100% - 10px))}.wm-tip[hidden]{display:none}.wm-side{width:230px;flex:none;display:flex;flex-direction:column;min-height:0}.wm-side h3{margin:0 0 4px;font-size:10px;color:var(--ui-accent)}.wm-count{font-size:8px;color:var(--ui-dim);margin-bottom:6px}.wm-list{flex:1;min-height:0;overflow-y:auto;padding-right:4px}.wm-none{font-size:9px;color:var(--ui-dim)}.wm-group{margin:0 0 8px}.wm-group h4{display:flex;align-items:center;gap:6px;margin:0 0 3px;font-size:8px;font-weight:400;color:var(--ui-dim);text-transform:uppercase}.wm-swatch{width:9px;height:9px;flex:none;border:1px solid #000;box-shadow:0 0 0 1px #fff6}.wm-group ul{list-style:none;margin:0;padding:0;display:grid;gap:3px}.wm .wm-group button{width:100%;min-height:32px;text-align:left;font-size:9px;padding:4px 6px;line-height:1.4}.wm .wm-group button.sel{border-color:var(--ui-accent);color:var(--ui-accent)}@container (max-aspect-ratio: 1/1) or (max-width: 620px){.wm{flex-direction:column}.wm-side{width:auto;height:34%}.wm-group ul{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}}#stage canvas.pointer-target{cursor:pointer;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.pointer-mark{position:absolute;box-sizing:border-box;border:2px solid var(--ui-accent);border-radius:3px;pointer-events:none!important;animation:pointer-fade .45s ease-out forwards}.pointer-mark-bad{border-color:#f55}@keyframes pointer-fade{0%{opacity:1;transform:scale(1.15)}to{opacity:0;transform:scale(1)}}.pointer-menu{position:absolute;z-index:5;display:flex;flex-direction:column;gap:4px;min-width:9em;max-height:calc(100% - 8px);overflow-y:auto;padding:6px;box-sizing:border-box;background:var(--ui-panel);border:2px solid var(--ui-line);border-radius:6px;box-shadow:0 0 0 3px #000}.pointer-menu-title{color:var(--ui-accent);font-size:10px;padding:2px 4px 4px;border-bottom:1px solid var(--ui-line)}.pointer-menu button{min-height:var(--tap);font:inherit;font-size:10px;text-align:left;color:var(--ui-text);background:var(--ui-bg);border:1px solid var(--ui-line);border-radius:4px;padding:4px 10px;cursor:pointer}.pointer-menu button:hover,.pointer-menu button:focus-visible{border-color:var(--ui-accent);outline:none}.pointer-menu button:active{background:var(--ui-line)}.pointer-menu .pointer-menu-cancel{color:var(--ui-dim)}.pointer-look{position:absolute;z-index:5;padding:6px 8px;font-size:10px;background:var(--ui-panel);border:1px solid var(--ui-accent);border-radius:4px;pointer-events:none!important;transform:translate(-50%,-130%);white-space:nowrap}#stage.layout-modern{container:stage / size}.hud-grid{--gap: 12px;--side-min: 280px;--map: min(calc(100cqh - 2 * var(--gap)), calc(100cqw - 3 * var(--gap) - var(--side-min)));display:grid;grid-template-columns:var(--map) minmax(var(--side-min),440px);grid-template-rows:var(--map);gap:var(--gap);align-content:center;justify-content:center;width:100%;height:100%;padding:var(--gap);box-sizing:border-box}.hud-map{width:var(--map);height:var(--map);display:grid;place-items:center;min-width:0;min-height:0}.hud-side{display:grid;grid-template-rows:auto auto minmax(0,1fr);gap:10px;min-width:0;min-height:0}.hud-side[hidden]{display:none}.hud-grid.solo{grid-template-columns:1fr;grid-template-rows:1fr}.hud-grid.solo .hud-map{width:100%;height:100%}.hud-panel{background:var(--ui-bg);border:3px solid #a6a8ff;border-radius:8px;padding:10px 12px;min-width:0;box-sizing:border-box}.hud-party{display:grid;gap:9px;align-content:start}.hud-party h2{margin:0;font-size:11px;color:var(--ui-accent);font-weight:400}.hud-list{margin:0;font:inherit;font-size:11px;line-height:1.6;white-space:pre;overflow-x:auto}.hud-member{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:3px 8px;font-size:11px;border-radius:5px;padding:3px 4px;margin:-3px -4px}.hud-n{color:var(--ui-dim)}.hud-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hud-hp{font-variant-numeric:tabular-nums}.hud-class{grid-column:2 / -1;font-size:8px;color:var(--ui-dim)}.hud-bar{grid-column:1 / -1;height:5px;background:#22223a;border-radius:3px;overflow:hidden}.hud-bar i{display:block;height:100%;background:#55ff7a;transition:width .25s}.hud-member.poison .hud-bar i,.hud-member.poison .hud-hp{background:#7dff55;color:#7dff55}.hud-member.poison .hud-hp{background:none}.hud-member.low .hud-bar i{background:#ff5a6a}.hud-member.sleep{opacity:.7}.hud-member.dead{opacity:.45}.hud-member.turn{background:#1d2060;outline:2px solid var(--ui-accent)}.hud-member.flash{filter:invert(1)}.hud-res{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;font-size:10px}.hud-res b{color:#ffd34d;font-weight:400;font-variant-numeric:tabular-nums}.hud-effect{color:var(--ui-accent)}.hud-moons{display:inline-flex;gap:6px;font-size:14px}.hud-moon{width:1em;height:1em;border-radius:50%;box-shadow:inset var(--shade) 0 0 0 var(--ui-bg)}.hud-moon.trammel{background:radial-gradient(circle at 35% 35%,#fff,#c7d2ff 60%,#7f8fd8)}.hud-moon.felucca{background:radial-gradient(circle at 40% 40%,#fff,#ffe2b0 60%,#d9a45e)}.hud-moon.new{opacity:.22}.hud-st{margin-left:4px;font-weight:400;color:#ffd34d}.hud-console{display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden;font-size:12px;line-height:1.55}.hud-line{white-space:pre;min-height:1.55em}.hud-cursor{display:inline-block;width:.85em;height:1em;background:var(--ui-accent);vertical-align:-2px;animation:hud-blink 1s steps(1) infinite}@keyframes hud-blink{50%{opacity:0}}@container stage (max-aspect-ratio: 1/1){.hud-grid{--map: min(calc(100cqw - 2 * var(--gap)), calc(100cqh - 3 * var(--gap) - 240px));grid-template-columns:var(--map);grid-template-rows:var(--map) minmax(0,1fr);align-content:start}.hud-party{grid-template-columns:1fr 1fr;column-gap:22px}.hud-party h2,.hud-list{grid-column:1 / -1}}@container stage (max-aspect-ratio: 1/1) and (max-width: 560px){.hud-grid{--gap: 8px;--map: min(calc(100cqw - 2 * var(--gap)), calc(100cqh - 3 * var(--gap) - 190px))}.hud-side{gap:6px}.hud-panel{padding:6px 8px;border-width:2px}.hud-party{grid-template-columns:repeat(4,1fr);gap:6px}.hud-member{grid-template-columns:1fr;font-size:8px;gap:3px;margin:0}.hud-n,.hud-class{display:none}.hud-res{font-size:8px;gap:4px 10px}.hud-moons{font-size:12px}.hud-console{font-size:9px}}@media(prefers-reduced-motion:reduce){.hud-cursor{animation:none}.hud-bar i{transition:none}}.hud-grid:not(.solo) .hud-map canvas{box-shadow:0 0 0 3px #a6a8ff;border-radius:2px}
