@font-face{font-family:"Niiice 8x16";src:url(/fonts/unifont-8x16.woff2) format("woff2");font-display:block}:root{--bg: #06050a;--ink: #e9e4f5;--dim: #8d86a3;--line: #2c2640;--line2: #4a4166;--panel: #0f0d18;--gold: #f4d23c;--red: #e43b44;--green: #3ec46d;--blue: #3f8ff2;--violet: #a35bd6;--px: 2px;--safe-t: env(safe-area-inset-top, 0px);--safe-b: env(safe-area-inset-bottom, 0px);--safe-l: env(safe-area-inset-left, 0px);--safe-r: env(safe-area-inset-right, 0px)}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}html,body{margin:0;height:100%;background:var(--bg);color:var(--ink);font:16px/1 "Niiice 8x16",ui-monospace,monospace;overflow:hidden;overscroll-behavior:none;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}body{position:fixed;inset:0}html.pwa,html.pwa body{height:max(100%,100vh)}html.pwa body{bottom:auto}html.pwa{--safe-b: calc(env(safe-area-inset-bottom, 0px)/2) }button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer;touch-action:manipulation}[hidden]{display:none!important}#game{position:absolute;inset:0;display:flex;flex-direction:column;padding:var(--safe-t) var(--safe-r) 0 var(--safe-l);background:radial-gradient(120% 60% at 50% 0%,#15102a 0%,transparent 60%),radial-gradient(120% 50% at 50% 100%,#120b1c 0%,transparent 70%),var(--bg)}#hud{padding:8px 12px 6px;display:grid;gap:6px;z-index:3}.hpline{display:flex;align-items:center;gap:8px}.lbl{color:var(--red);text-shadow:0 0 8px rgba(228,59,68,.6)}.bar{flex:1;height:12px;background:#1a1424;position:relative;box-shadow:0 -2px 0 0 var(--line2),0 2px 0 0 var(--line2),-2px 0 0 0 var(--line2),2px 0 0 0 var(--line2);margin:0 2px}.bar i{position:absolute;left:0;top:0;bottom:0;width:100%;background:linear-gradient(#7af0a0 0 3px,#3ec46d 3px 9px,#1f7a44 9px);box-shadow:0 0 10px #3ec46d8c;transition:width .25s steps(8)}.bar i.mid{background:linear-gradient(#ffe48a 0 3px,#f4b03c 3px 9px,#a3702a 9px);box-shadow:0 0 10px #f4b03c8c}.bar i.low{background:linear-gradient(#ff9aa0 0 3px,#e43b44 3px 9px,#8f1d2c 9px);box-shadow:0 0 12px #e43b44cc;animation:pulse .8s steps(2) infinite}@keyframes pulse{50%{opacity:.55}}#hp{min-width:4.5em;text-align:right}#snd{width:28px;height:22px;display:grid;place-items:center;opacity:.8}#snd i{width:12px;height:12px;display:block;background:linear-gradient(var(--ink),var(--ink)) 0 4px / 3px 4px no-repeat,linear-gradient(var(--ink),var(--ink)) 3px 2px / 2px 8px no-repeat,linear-gradient(var(--ink),var(--ink)) 5px 0 / 2px 12px no-repeat,linear-gradient(var(--ink),var(--ink)) 9px 3px / 2px 6px no-repeat}#snd.off i{background:linear-gradient(var(--dim),var(--dim)) 0 4px / 3px 4px no-repeat,linear-gradient(var(--dim),var(--dim)) 3px 2px / 2px 8px no-repeat,linear-gradient(var(--dim),var(--dim)) 5px 0 / 2px 12px no-repeat,linear-gradient(var(--red),var(--red)) 8px 5px / 4px 2px no-repeat}.stats{display:flex;justify-content:space-between;gap:6px}.stats span{display:flex;gap:4px;align-items:baseline}.stats em{font-style:normal;color:var(--dim)}.stats b{font-weight:400}.stats .au b{color:var(--gold);text-shadow:0 0 8px rgba(244,210,60,.5)}#status{display:flex;gap:6px;flex-wrap:wrap;min-height:0}#status:empty{display:none}#status span{padding:2px 4px;background:#1a1424;color:var(--ink)}#status .bad{color:#ff8a8f;box-shadow:inset 0 0 0 2px #6a1c26;animation:pulse 1s steps(2) infinite}#status .warn{color:#ffc56a;box-shadow:inset 0 0 0 2px #6a4a1c}#status .good{color:#7ff0ea;box-shadow:inset 0 0 0 2px #1c5a6a}#status .magic{color:#d6a8ff;box-shadow:inset 0 0 0 2px #4a2a6a}#status .gold{color:var(--gold);box-shadow:inset 0 0 0 2px #6a5a1c;text-shadow:0 0 6px rgba(244,210,60,.7)}#view{flex:1;position:relative;overflow:hidden;min-height:0;margin:0 8px;box-shadow:0 0 0 2px #000,0 0 0 4px var(--line),0 0 30px #7850ff14;background:#000}#view canvas{position:absolute;left:0;top:0;image-rendering:pixelated;image-rendering:crisp-edges}#bloom{pointer-events:none;filter:blur(6px) saturate(1.4) brightness(1.5);mix-blend-mode:screen;opacity:.55}.crt{position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(to bottom,#0000 0 2px,#00000029 2px 3px),radial-gradient(130% 100% at 50% 50%,transparent 55%,rgba(0,0,0,.55) 100%);mix-blend-mode:multiply}#banner{position:absolute;left:0;right:0;top:38%;text-align:center;pointer-events:none;font-size:32px;letter-spacing:6px;color:#fff;text-shadow:2px 2px 0 #000,0 0 18px rgba(160,120,255,.9),0 0 4px #9fd3ff;opacity:0}#banner.show{animation:banner 1.6s steps(16) forwards}@keyframes banner{0%{opacity:0;transform:scaleX(2.2)}15%{opacity:1;transform:scaleX(1)}75%{opacity:1}to{opacity:0;transform:translateY(-10px)}}#aim{position:absolute;left:50%;bottom:14px;transform:translate(-50%);padding:6px 10px;background:#0f0d18d9;color:var(--gold);box-shadow:0 -2px 0 0 var(--gold),0 2px 0 0 var(--gold),-2px 0 0 0 var(--gold),2px 0 0 0 var(--gold);animation:pulse 1s steps(2) infinite}#pad{flex:none;height:calc(196px + var(--safe-b));padding:14px 18px calc(10px + var(--safe-b));display:flex;align-items:center;justify-content:space-between}#dpad{position:relative;width:156px;height:156px;touch-action:none}#dpad:before{content:"";position:absolute;inset:4px;border-radius:50%;background:radial-gradient(circle at 50% 45%,#1a1527,#0a0811 70%);box-shadow:inset 0 3px #0009,0 1px #ffffff0d}#dpad .arm,#dpad .hub{position:absolute;width:48px;height:48px;background:#2a2440;box-shadow:inset 0 3px #3f3760,inset 0 -4px #17132a,0 4px #07060c}#dpad .hub{left:54px;top:54px;background:#241f38;box-shadow:inset 0 -4px #17132a,0 4px #07060c}#dpad .hub:after{content:"";position:absolute;left:18px;top:16px;width:12px;height:12px;border-radius:50%;background:#17132a;box-shadow:inset 0 2px #0a0811}#dpad .n{left:54px;top:6px}#dpad .s{left:54px;top:102px}#dpad .w{left:6px;top:54px}#dpad .e{left:102px;top:54px}#dpad .arm:after{content:"";position:absolute;left:50%;top:50%;width:0;height:0;transform:translate(-50%,-50%);border:7px solid transparent}#dpad .n:after{border-bottom-color:#6f6596;border-top-width:0}#dpad .s:after{border-top-color:#6f6596;border-bottom-width:0}#dpad .w:after{border-right-color:#6f6596;border-left-width:0}#dpad .e:after{border-left-color:#6f6596;border-right-width:0}#dpad[data-dir=n] .n,#dpad[data-dir=ne] .n,#dpad[data-dir=nw] .n,#dpad[data-dir=s] .s,#dpad[data-dir=se] .s,#dpad[data-dir=sw] .s,#dpad[data-dir=e] .e,#dpad[data-dir=ne] .e,#dpad[data-dir=se] .e,#dpad[data-dir=w] .w,#dpad[data-dir=nw] .w,#dpad[data-dir=sw] .w{background:#3d3560;transform:translateY(3px);box-shadow:inset 0 3px #5a4f88,inset 0 -2px #17132a,0 1px #07060c,0 0 18px #a078ff73}#dpad[data-dir=n] .n:after,#dpad[data-dir=ne] .n:after,#dpad[data-dir=nw] .n:after{border-bottom-color:#d8c8ff}#dpad[data-dir=s] .s:after,#dpad[data-dir=se] .s:after,#dpad[data-dir=sw] .s:after{border-top-color:#d8c8ff}#dpad[data-dir=e] .e:after,#dpad[data-dir=ne] .e:after,#dpad[data-dir=se] .e:after{border-left-color:#d8c8ff}#dpad[data-dir=w] .w:after,#dpad[data-dir=nw] .w:after,#dpad[data-dir=sw] .w:after{border-right-color:#d8c8ff}#btns{position:relative;width:168px;height:156px}.btn{position:absolute;display:grid;justify-items:center;gap:8px}.btn span{display:grid;place-items:center;border-radius:50%;font-size:32px;color:#ffffffe6;text-shadow:0 2px 0 rgba(0,0,0,.45);transition:transform .05s}.btn b{font-weight:400;color:var(--dim);font-size:16px;letter-spacing:1px}.btn.a{right:0;top:4px}.btn.a span{width:80px;height:80px;background:radial-gradient(circle at 38% 32%,#ff8a8f 0 10%,#e43b44 11% 60%,#9b1f2b);box-shadow:0 6px #5a0f18,0 8px 18px #e43b4459,inset 0 -4px #00000040}.btn.a.go span{background:radial-gradient(circle at 38% 32%,#c8e8ff 0 10%,#3f8ff2 11% 60%,#1f3f8a);box-shadow:0 6px #102457,0 8px 22px #3f8ff299,inset 0 -4px #00000040;animation:glow 1.2s steps(6) infinite alternate}.btn.a.go b{color:#9fd3ff}@keyframes glow{to{filter:brightness(1.25)}}.btn.b{left:0;top:52px}.btn.b span{width:64px;height:64px;font-size:32px;background:radial-gradient(circle at 38% 32%,#d6a8ff 0 10%,#8a4fd0 11% 60%,#4a2486);box-shadow:0 6px #2a1052,0 8px 18px #a35bd659,inset 0 -4px #00000040}.btn.down span{transform:translateY(5px);box-shadow:0 1px #0009,inset 0 -2px #00000040!important}#end{position:absolute;inset:0;z-index:10;display:grid;place-items:center;padding:calc(12px + var(--safe-t)) calc(12px + var(--safe-r)) calc(12px + var(--safe-b)) calc(12px + var(--safe-l));background:#040308b8;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);animation:fadein .15s steps(3)}@keyframes fadein{0%{opacity:0}}.ov{position:absolute;inset:0;z-index:10;display:flex;align-items:center;justify-content:center;padding:calc(12px + var(--safe-t)) calc(12px + var(--safe-r)) calc(12px + var(--safe-b)) calc(12px + var(--safe-l));background:#040308b8;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);animation:fadein .15s steps(3)}.panel{width:min(100%,460px);max-height:100%;min-height:0;display:flex;flex-direction:column;background:linear-gradient(#141122,#0c0a14);box-shadow:0 -4px 0 0 var(--line2),0 4px 0 0 var(--line2),-4px 0 0 0 var(--line2),4px 0 0 0 var(--line2),0 0 0 4px #000,0 20px 60px #000000b3}.ph{display:flex;align-items:center;gap:10px;padding:12px 12px 10px;border-bottom:2px solid var(--line)}#pack-title{color:#fff;letter-spacing:2px}.pg{flex:1;color:var(--dim)}.pg em{font-style:normal}.pg b{font-weight:400;color:var(--gold)}.x{width:40px;height:32px;font-size:32px;line-height:28px;color:var(--dim)}#pack-list,#hist-list{flex:1 1 auto;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;touch-action:pan-y;overscroll-behavior:contain;padding:6px;display:grid;align-content:start;gap:2px}.ph,.pf{flex:none}.row{display:flex;align-items:center;gap:10px;padding:6px 8px;text-align:left;width:100%}.row img{width:30px;height:30px;image-rendering:pixelated;flex:none}.row .nm{flex:1;line-height:18px}.row kbd{display:none}.row .tag{color:#9fd3ff;font-size:16px;padding:2px 4px;box-shadow:inset 0 0 0 2px #1c3a5a;white-space:nowrap}.row.sel{background:#231d38;box-shadow:inset 4px 0 0 var(--violet)}.row.cursed .nm{color:#ff8a8f}.row.dim{opacity:.35}.pf{border-top:2px solid var(--line);padding:10px 12px 12px;display:grid;gap:10px;background:#0c0a14;box-shadow:0 -10px 16px #00000080}#pack-desc{color:var(--dim);min-height:16px}#pack-desc:empty{display:none}#pack-acts{display:flex;gap:8px;flex-wrap:wrap}#pack-acts button,#end button{padding:10px 14px;background:#2a2440;color:#fff;letter-spacing:1px;box-shadow:0 -2px #4a4166,0 2px #17132a,-2px 0 #3a3356,2px 0 #3a3356,0 5px #07060c}#pack-acts button:first-child{background:#3d3560}#pack-acts button:active,#end button:active{transform:translateY(3px);box-shadow:0 -2px #4a4166,0 2px #17132a,-2px 0 #3a3356,2px 0 #3a3356}#end{background:radial-gradient(80% 60% at 50% 30%,#28143c99,#020104f0);overflow-y:auto;touch-action:pan-y;display:flex;flex-direction:column;align-items:center}.stone{width:min(100%,420px);text-align:center;display:grid;justify-items:center;gap:8px;padding:10px 0 20px;margin:auto 0;flex:none}#tomb{width:144px;height:144px;image-rendering:pixelated;filter:drop-shadow(0 10px 20px rgba(0,0,0,.8));animation:rise .9s steps(9)}#end.won #tomb{filter:drop-shadow(0 0 24px rgba(244,210,60,.8));animation:rise .9s steps(9),float 2.4s ease-in-out infinite}@keyframes rise{0%{transform:translateY(40px);opacity:0}}@keyframes float{50%{transform:translateY(-6px)}}#end h1{margin:6px 0 0;font:inherit;font-size:32px;letter-spacing:4px;color:#fff;text-shadow:2px 2px 0 #000,0 0 16px rgba(163,91,214,.8)}#end.won h1{color:var(--gold);text-shadow:2px 2px 0 #000,0 0 18px rgba(244,210,60,.9)}#end p{margin:0;line-height:20px}#end .gold b{font-weight:400;color:var(--gold);font-size:32px;text-shadow:0 0 10px rgba(244,210,60,.6)}#end .gold em{font-style:normal;color:var(--dim)}#end-how{color:var(--ink);max-width:30ch}#end .year{color:var(--dim)}#end-form{display:grid;gap:8px;margin-top:10px;width:100%;max-width:320px}#end-form label{color:var(--dim)}.nameline{display:flex;gap:8px}#end-name{flex:1;min-width:0;font:inherit;font-size:16px;color:#fff;background:#0a0811;border:0;padding:10px;box-shadow:inset 0 0 0 2px var(--line2);outline:none;border-radius:0;-webkit-user-select:text;user-select:text;touch-action:manipulation}#end-name:focus{box-shadow:inset 0 0 0 2px var(--violet),0 0 14px #a35bd666}#end-carve:disabled{opacity:.5}#end-note{color:var(--dim);min-height:20px}#board{width:100%;display:grid;gap:2px;margin-top:6px}#board:empty{display:none}#board .bh{color:var(--dim);letter-spacing:3px;padding:6px 0}#board .br{display:grid;grid-template-columns:2.5em 1fr auto;grid-template-rows:auto auto;column-gap:8px;row-gap:2px;text-align:left;padding:6px 8px;background:#141122b3}#board .rk{grid-row:span 2;color:var(--dim);text-align:right}#board .au{color:var(--gold);text-align:right}#board .hw{grid-column:2 / span 2;color:var(--dim);font-size:16px}#board .br.won .hw{color:#f7d977}#board .br.me{background:#2a2140;box-shadow:inset 4px 0 0 var(--gold);animation:msgin .3s steps(4)}#end-again{position:sticky;bottom:calc(10px + var(--safe-b));z-index:2;margin:10px 0 6px;padding:14px 32px!important;letter-spacing:3px;color:#fff;background:#3d3560!important;box-shadow:0 0 0 2px #000,0 0 0 4px var(--violet),0 8px 24px #000000b3,0 0 20px #a35bd673!important;animation:msgin .3s steps(4)}@media(orientation:landscape)and (max-height:540px){#game{display:grid;padding:0;grid-template-columns:calc(170px + var(--safe-l)) minmax(0,1fr) calc(176px + var(--safe-r));grid-template-rows:auto auto minmax(0,1fr)}#game.touch{grid-template-columns:calc(8px + var(--safe-l)) minmax(0,1fr) calc(128px + var(--safe-r))}#hud{grid-column:2;grid-row:1;padding:6px 4px 4px}#status:empty{display:none}#log{grid-column:2;grid-row:2;height:28px;margin:0 0 4px}#view{grid-column:2;grid-row:3;margin:0 0 8px}#game.pad #pad{display:contents}#dpad{grid-column:1;grid-row:1 / span 3;align-self:center;justify-self:center;margin-left:var(--safe-l);transform:scale(.94)}#btns{grid-column:3;grid-row:1 / span 3;align-self:center;justify-self:center;margin-right:calc(var(--safe-r) + 8px);transform:scale(.88)}#game.touch #bar{grid-column:3;grid-row:1 / span 3;flex-direction:column;justify-content:center;gap:10px;padding:8px calc(8px + var(--safe-r)) 8px 8px}.tb .ico{width:48px;height:48px}.tb.big span{width:72px;height:72px}}@media(max-height:700px)and (orientation:portrait){#pad{height:calc(172px + var(--safe-b));padding-top:8px}#dpad,#btns{transform:scale(.9)}}#log{flex:none;margin:0 8px 6px;padding:5px 8px;height:54px;overflow:hidden;cursor:pointer;display:flex;flex-direction:column;justify-content:flex-end;gap:4px;background:#0c0a14;box-shadow:inset 0 0 0 2px var(--line);touch-action:manipulation}#log div{flex:none;line-height:20px;height:20px;font-size:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#hist-list div{flex:none;line-height:20px;font-size:16px;white-space:normal;padding:2px 4px;overflow:visible}#log .new{animation:msgin .18s steps(3)}#log .mid{opacity:.72}#log .old{opacity:.45}#hist-list .old,#hist-list .mid{opacity:.7}@keyframes msgin{0%{transform:translate(-6px);opacity:0}}#mini{position:absolute;left:auto!important;right:6px;top:6px;z-index:2;image-rendering:pixelated;cursor:pointer;opacity:.85;filter:drop-shadow(1px 1px 0 #000) drop-shadow(-1px -1px 0 #000)}.mapwrap{max-width:100%;max-height:100%;display:flex;flex-direction:column;align-items:center;background:linear-gradient(#141122,#0c0a14);box-shadow:0 -4px 0 0 var(--line2),0 4px 0 0 var(--line2),-4px 0 0 0 var(--line2),4px 0 0 0 var(--line2),0 0 0 4px #000}.mapwrap .ph{width:100%}#bigmap-cv{image-rendering:pixelated;margin:12px;cursor:pointer}#hoverline{position:absolute;left:8px;bottom:6px;color:#d8d0ec;pointer-events:none;text-shadow:1px 1px 0 #000,0 0 6px #000}#mode{width:30px;height:22px;display:grid;place-items:center;opacity:.8}#mode i{width:16px;height:10px;display:block;position:relative;background:linear-gradient(var(--dim),var(--dim)) 2px 4px / 6px 2px no-repeat,linear-gradient(var(--dim),var(--dim)) 4px 2px / 2px 6px no-repeat,linear-gradient(var(--dim),var(--dim)) 11px 3px / 2px 2px no-repeat,linear-gradient(var(--dim),var(--dim)) 13px 5px / 2px 2px no-repeat;box-shadow:0 0 0 2px var(--dim)}#mode.on i{filter:brightness(2.2) drop-shadow(0 0 4px rgba(160,120,255,.9))}#mode.hand i{width:10px;height:16px;box-shadow:0 0 0 2px var(--dim);border-radius:2px;background:radial-gradient(circle,#a35bd6 0 2.4px,transparent 2.6px) no-repeat;background-size:6px 6px;background-position:right 1px bottom 1px}#mode.hand.l i{background-position:left 1px bottom 1px}#game.touch.lefty #bar{flex-direction:row-reverse}#game.touch.lefty #quick{margin-right:0;margin-left:auto}@media(orientation:landscape)and (max-height:540px){#game.touch.lefty{grid-template-columns:calc(128px + var(--safe-l)) minmax(0,1fr) calc(8px + var(--safe-r))}#game.touch.lefty #bar{grid-column:1;flex-direction:column;padding:8px 8px 8px calc(8px + var(--safe-l))}#game.touch.lefty #quick{margin-left:0}}#bar{flex:none;display:none;align-items:center;justify-content:flex-end;gap:12px;padding:10px 18px calc(12px + var(--safe-b))}#game.touch #bar{display:flex}#game.touch #pad{display:none}.tb{display:grid;justify-items:center;gap:6px;color:var(--dim)}.tb b{font-weight:400;letter-spacing:1px}.tb .ico{width:56px;height:56px;display:block;position:relative;background:#241f38;box-shadow:inset 0 3px #3f3760,inset 0 -4px #17132a,0 4px #07060c;clip-path:polygon(6px 0,calc(100% - 6px) 0,100% 6px,100% calc(100% - 6px),calc(100% - 6px) 100%,6px 100%,0 calc(100% - 6px),0 6px)}.tb .ico:after{content:"";position:absolute;inset:16px}.tb .map:after{background:linear-gradient(#8f86b0,#8f86b0) 0 0 / 10px 8px no-repeat,linear-gradient(#c08040,#c08040) 10px 3px / 6px 2px no-repeat,linear-gradient(#8f86b0,#8f86b0) 14px 6px / 10px 10px no-repeat,linear-gradient(#fff,#fff) 18px 10px / 2px 2px no-repeat}.tb .pack:after{inset:14px 15px;background:linear-gradient(#8a5a34,#8a5a34) 6px 0 / 14px 4px no-repeat,linear-gradient(#b57a48,#b57a48) 0 4px / 26px 22px no-repeat,linear-gradient(#f4d23c,#f4d23c) 11px 12px / 4px 4px no-repeat}.tb.down .ico{transform:translateY(3px);box-shadow:inset 0 3px #5a4f88,0 1px #07060c}.tb.big span{width:84px;height:84px;border-radius:50%;display:grid;place-items:center;font-size:32px;color:#ffffffe6;background:radial-gradient(circle at 38% 32%,#ff8a8f 0 10%,#e43b44 11% 60%,#9b1f2b);box-shadow:0 6px #5a0f18,0 8px 18px #e43b4459,inset 0 -4px #00000040;text-shadow:0 2px 0 rgba(0,0,0,.45)}.tb.big.go span{background:radial-gradient(circle at 38% 32%,#c8e8ff 0 10%,#3f8ff2 11% 60%,#1f3f8a);box-shadow:0 6px #102457,0 8px 22px #3f8ff299,inset 0 -4px #00000040;animation:glow 1.2s steps(6) infinite alternate}.tb.big.go b{color:#9fd3ff}.tb.big.down span{transform:translateY(5px);box-shadow:0 1px #0009!important}#game.pad #pad{display:flex}#side{display:none}body.desk #game{display:grid;padding:18px;grid-template-columns:minmax(0,1fr) 380px;grid-template-rows:auto auto minmax(0,1fr);grid-template-areas:"view hud" "view log" "view side";column-gap:18px}body.desk #hud{grid-area:hud;padding:0 0 10px}body.desk #log{grid-area:log;height:260px;margin:0 0 12px;justify-content:flex-start;overflow-y:auto}body.desk #log div{white-space:normal;height:auto}body.desk #view{grid-area:view;margin:0}body.desk #side{grid-area:side;display:flex;flex-direction:column;min-height:0;background:#0c0a14;box-shadow:inset 0 0 0 2px var(--line)}body.desk #pad,body.desk #bar,body.desk #mode{display:none!important}body.desk .row kbd,body.desk #pack-acts kbd{display:inline-block}.sh{display:flex;justify-content:space-between;padding:10px 12px 6px;color:var(--dim);letter-spacing:2px}#side-pick{letter-spacing:0;color:var(--gold)}#side-pack{flex:1 1 auto;min-height:0;overflow-y:auto;padding:0 6px 6px;display:grid;align-content:start;gap:1px}#side-pack .row{padding:3px 6px}#side-pack .row:hover{background:#1c1730}#side-pack .row img{width:20px;height:20px}#side-pack .row.can{box-shadow:inset 3px 0 0 var(--gold)}kbd{font:inherit;color:var(--gold);min-width:1ch}.row kbd{width:1.2em}#pack-acts kbd{margin-right:6px}#side-keys{flex:none;border-top:2px solid var(--line);padding:8px 12px 10px;color:var(--dim)}#side-keys p{margin:0;line-height:20px}#side-keys b{font-weight:400;color:var(--ink)}body.desk #view canvas#cv{cursor:crosshair}#pack-verbs{flex:none;display:flex;flex-wrap:wrap;gap:6px;padding:8px 10px;border-bottom:2px solid var(--line);scrollbar-width:none}#pack-verbs::-webkit-scrollbar{display:none}#pack-verbs button{flex:none;padding:7px 10px;background:#1c1730;color:var(--dim);letter-spacing:1px;box-shadow:inset 0 0 0 2px var(--line2)}#pack-verbs button.on{background:#3d3560;color:#fff;box-shadow:inset 0 0 0 2px var(--violet),0 0 12px #a35bd673}#pack-verbs kbd{margin-right:5px}body.desk #pack-verbs kbd{display:inline}#quick{display:flex;gap:8px;margin-right:auto}.qs{display:grid;justify-items:center;gap:6px;color:var(--dim)}.qs b{font-weight:400;letter-spacing:1px;font-size:16px}.qs i{width:52px;height:52px;display:grid;place-items:center;position:relative;background:#17132a;box-shadow:inset 0 0 0 2px var(--line2),inset 0 -4px #0e0b1a,0 3px #07060c}.qs img{width:30px;height:30px;image-rendering:pixelated}.qs img:not([src]){visibility:hidden}.qs em{position:absolute;right:3px;bottom:2px;font-style:normal;color:#fff;text-shadow:1px 1px 0 #000,-1px 0 0 #000,0 -1px 0 #000}.qs.empty i{background:transparent;box-shadow:inset 0 0 0 2px var(--line)}.qs.empty b{opacity:.45}.qs.hot i{box-shadow:inset 0 0 0 2px var(--gold),0 0 14px #f4d23c80,0 3px #07060c;animation:glow .8s steps(4) infinite alternate}.qs.hot b{color:var(--gold)}.qs.down i{transform:translateY(3px);box-shadow:inset 0 0 0 2px var(--violet),0 0 #07060c}@media(max-width:360px){.qs i{width:44px;height:44px}#quick{gap:6px}}@media(orientation:landscape)and (max-height:540px){#quick{margin:0;gap:4px}.qs i{width:36px;height:36px}.qs img{width:24px;height:24px}.qs b{display:none}}#closed{position:absolute;inset:0;z-index:11;display:grid;place-items:center;padding:24px;background:radial-gradient(80% 60% at 50% 40%,#1a1030,#030206)}#closed h1{margin:0;font:inherit;font-size:32px;letter-spacing:6px;color:#fff;text-shadow:2px 2px 0 #000,0 0 16px rgba(163,91,214,.8)}#closed p{color:var(--ink);max-width:30ch;text-align:center;line-height:22px}#closed button{padding:12px 24px;background:#2a2440;color:#fff;box-shadow:0 -2px #4a4166,0 2px #17132a,-2px 0 #3a3356,2px 0 #3a3356,0 5px #07060c}.ov .panel,.ov .mapwrap{animation:panelIn .22s cubic-bezier(.2,.9,.3,1.15)}.ov.out{animation:fadeout .15s forwards}.ov.out .panel,.ov.out .mapwrap{animation:panelOut .15s forwards}@keyframes panelIn{0%{transform:translateY(22px) scale(.96);opacity:0}}@keyframes panelOut{to{transform:translateY(14px) scale(.97);opacity:0}}@keyframes fadeout{to{opacity:0}}.row.enter{animation:rowIn .22s cubic-bezier(.2,.9,.3,1.1) backwards}@keyframes rowIn{0%{transform:translate(-10px);opacity:0}}.row.chosen{background:#3d3560!important;box-shadow:inset 4px 0 0 var(--gold)!important;animation:chosen .12s steps(2)}@keyframes chosen{50%{filter:brightness(1.6)}}#pack-acts button,#pack-verbs button{transition:transform .08s,background .12s}#pack-acts button:active,#pack-verbs button:active{transform:scale(.94)}.bump{animation:bump .42s cubic-bezier(.2,1.6,.4,1)}@keyframes bump{35%{transform:scale(1.3);filter:brightness(1.6)}}.stats b{transition:color .6s}.stats span.bump b.up{color:#7ff0a8}.stats span.bump b.down{color:#ff8a8f}.bar.hurt{animation:hurt .5s}@keyframes hurt{0%,to{transform:none}15%{transform:translate(-4px);box-shadow:0 0 14px #e43b44e6,0 -2px #e43b44,0 2px #e43b44,-2px 0 #e43b44,2px 0 #e43b44}35%{transform:translate(3px)}55%{transform:translate(-2px)}}.bar.heal{animation:heal .5s}@keyframes heal{30%{box-shadow:0 0 16px #3ec46de6,0 -2px #3ec46d,0 2px #3ec46d,-2px 0 #3ec46d,2px 0 #3ec46d}}#log.ping{animation:ping .45s}@keyframes ping{20%{box-shadow:inset 0 0 0 2px var(--violet),0 0 14px #a35bd673}}#status span.new{animation:tagIn .35s cubic-bezier(.2,1.5,.4,1)}@keyframes tagIn{0%{transform:scale(.4);opacity:0}}#status .sick{color:#b8f07a;box-shadow:inset 0 0 0 2px #3a6a1c}.qs.fire i{animation:fire .38s}@keyframes fire{30%{transform:scale(1.15);box-shadow:inset 0 0 0 2px var(--gold),0 0 18px #f4d23cb3}}.tb.bump .ico,.btn.bump span{animation:bump .42s cubic-bezier(.2,1.6,.4,1)}.flyer{position:fixed;width:32px;height:32px;image-rendering:pixelated;z-index:50;pointer-events:none;filter:drop-shadow(0 0 6px rgba(255,240,180,.8));transition:transform .55s cubic-bezier(.55,-.35,.6,1),opacity .55s ease-in}#aim{animation:aimIn .25s cubic-bezier(.2,1.4,.4,1),pulse 1s steps(2) .25s infinite}@keyframes aimIn{0%{transform:translate(-50%) translateY(10px);opacity:0}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.btn.a.offer span,.tb.big.offer span{background:radial-gradient(circle at 38% 32%,#fff3b0 0 10%,#e9b52c 11% 60%,#8a5a14);box-shadow:0 6px #4a2f08,0 8px 22px #f4d23c8c,inset 0 -4px #00000040}.offer span img{width:40px;height:40px;image-rendering:pixelated;filter:drop-shadow(0 2px 0 rgba(0,0,0,.45))}.offer b{color:var(--gold)!important}.offer.ending span{animation:pulse .5s steps(2) infinite}#stairs-btn{position:absolute;left:50%;bottom:46px;transform:translate(-50%);z-index:3;display:flex;align-items:center;gap:10px;padding:10px 14px 10px 12px;letter-spacing:2px;color:#e6f4ff;background:linear-gradient(#2a5fb8,#1f3f8a);border-radius:6px;box-shadow:0 0 0 2px #0b1a3a,0 0 0 4px #5aa2ff,0 6px 0 4px #0b1a3a,0 0 28px #5aa2ff8c;animation:stairsGlow 1.4s ease-in-out infinite alternate}#stairs-btn:hover{filter:brightness(1.15)}#stairs-btn:active{transform:translate(-50%) translateY(3px)}#stairs-btn i{width:16px;height:16px;display:block;background:linear-gradient(#e6f4ff,#e6f4ff) 0 12px / 16px 4px no-repeat,linear-gradient(#e6f4ff,#e6f4ff) 4px 8px / 12px 4px no-repeat,linear-gradient(#e6f4ff,#e6f4ff) 8px 4px / 8px 4px no-repeat,linear-gradient(#e6f4ff,#e6f4ff) 12px 0 / 4px 4px no-repeat}#stairs-btn kbd{color:#0b1a3a;background:#e6f4ff;padding:1px 7px;border-radius:3px;letter-spacing:0}#stairs-btn.up{background:linear-gradient(#c8981e,#8a5a14);color:#fff6d0;box-shadow:0 0 0 2px #3a2508,0 0 0 4px #f4d23c,0 6px 0 4px #3a2508,0 0 28px #f4d23c8c}#stairs-btn.up i{transform:scaleX(-1)}#stairs-btn.up kbd{color:#3a2508}@keyframes stairsGlow{to{box-shadow:0 0 0 2px #0b1a3a,0 0 0 4px #8fc2ff,0 6px 0 4px #0b1a3a,0 0 40px #5aa2ffcc}}#stairs-btn.pop{animation:stairsPop .4s cubic-bezier(.2,1.6,.4,1)}@keyframes stairsPop{0%{transform:translate(-50%) scale(.6);opacity:0}}.row.fresh{background:linear-gradient(90deg,rgba(127,240,234,.14),transparent 70%);box-shadow:inset 3px 0 #7ff0ea}.row.fresh .nm{color:#e6fffd}.row .tag.new{color:#7ff0ea;box-shadow:inset 0 0 0 2px #1c5a6a}#side-pack .row.fresh:hover{background:linear-gradient(90deg,#7ff0ea38,#1c1730 70%)}#side-pack .row.can.fresh{box-shadow:inset 3px 0 0 var(--gold)}.row.landed{animation:landed 1.2s ease-out}@keyframes landed{0%{background-color:#7ff0ea8c;transform:translate(6px)}25%{transform:translate(0)}to{background-color:transparent}}@media(prefers-reduced-motion:reduce){.row.landed{animation:none}}#tell{position:absolute;left:50%;top:14%;z-index:4;transform:translate(-50%);width:max-content;max-width:min(86%,560px);padding:10px 16px;display:grid;gap:4px;text-align:center;line-height:1.35;color:#e6f6ff;cursor:pointer;background:#0c0918eb;box-shadow:0 0 0 2px #000,0 0 0 4px var(--line),0 0 0 6px #000,0 10px 30px #0009,0 0 30px #a35bd640;opacity:0}#tell div{flex:none}#tell.show{animation:tellIn .28s cubic-bezier(.2,1.4,.4,1) forwards}#tell.out{animation:tellOut .26s ease-in forwards}@keyframes tellIn{0%{opacity:0;transform:translate(-50%) translateY(-8px) scale(.94)}to{opacity:1;transform:translate(-50%)}}@keyframes tellOut{0%{opacity:1;transform:translate(-50%)}to{opacity:0;transform:translate(-50%) translateY(-6px)}}body.desk #tell{font-size:18px;padding:14px 22px;top:12%}@media(prefers-reduced-motion:reduce){#tell.show{animation:none;opacity:1}#tell.out{animation:none;opacity:0}}#pwa-tip{position:absolute;left:8px;right:8px;bottom:8px;z-index:5;display:flex;align-items:center;gap:10px;padding:8px 8px 8px 10px;background:#0c0918f2;color:#d8d0ec;box-shadow:0 0 0 2px #000,0 0 0 4px var(--line),0 0 0 6px #000,0 0 24px #a35bd64d}#pwa-tip img{width:36px;height:36px;image-rendering:pixelated;flex:none;box-shadow:0 0 0 2px #000}#pwa-tip .txt{flex:1;display:grid;gap:2px;min-width:0}#pwa-tip b{color:#fff;letter-spacing:2px;font-weight:400}#pwa-tip i{font-style:normal;color:#fff}#pwa-tip .share{width:12px;height:15px;vertical-align:-2px;color:#3f8ff2;margin:0 2px}#pwa-install{flex:none;padding:8px 12px;letter-spacing:2px;color:#fff;background:#3d3560;box-shadow:inset 0 0 0 2px var(--violet)}#pwa-later{flex:none;width:36px;height:36px;color:var(--dim)}#pwa-tip.show{animation:pwaIn .4s cubic-bezier(.2,1.4,.4,1)}@keyframes pwaIn{0%{opacity:0;transform:translateY(14px)}}@media(prefers-reduced-motion:reduce){#pwa-tip.show{animation:none}}#board .br.me{scroll-margin:100px 0}#gear{position:absolute;left:6px;top:6px;z-index:2;pointer-events:none;display:grid;gap:2px;padding:4px 8px 4px 5px;background:#080610b8;border:1px solid rgba(80,70,120,.5);border-radius:4px;font-size:12px;line-height:16px;color:#d8d0ec;text-shadow:1px 1px 0 #000;max-width:calc(100% - 130px)}#gear .gr{display:grid;grid-template-columns:16px minmax(0,1fr) auto;align-items:center;gap:6px;border-radius:3px}#gear img{width:16px;height:16px;image-rendering:pixelated}#gear .gr.none img{visibility:hidden}#gear span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#gear .gr.none span{color:var(--dim)}#gear b{font-weight:400;color:#9fd8ff;white-space:nowrap}#gear .gr.cursed span,#gear .gr.cursed b{color:#ff8a8f}#gear .gr.bump{animation:gearbump .6s}@keyframes gearbump{0%{background:#7ff0a859}to{background:transparent}}body.desk #gear{font-size:15px;line-height:20px;padding:6px 10px 6px 7px;gap:3px}body.desk #gear .gr{grid-template-columns:20px minmax(0,1fr) auto;gap:8px}body.desk #gear img{width:20px;height:20px}@media(prefers-reduced-motion:reduce){#gear .gr.bump{animation:none}}.stats span,#hp-wrap{position:relative}.floatup{position:absolute;right:0;bottom:100%;z-index:6;pointer-events:none;font-style:normal;white-space:nowrap;font-size:15px;line-height:1;text-shadow:1px 1px 0 #000,-1px -1px 0 #000,1px -1px 0 #000,-1px 1px 0 #000,0 0 8px #000;opacity:0}.floatup.gold{color:#f4d23c}.floatup.good{color:#7ff0a8}.floatup.bad{color:#ff8a8f}.floatup.go{animation:floatup 1.2s ease-out forwards}@keyframes floatup{0%{opacity:0;transform:translateY(14px) scale(.8)}12%{opacity:1;transform:translateY(6px) scale(1.15)}25%{transform:translateY(4px) scale(1)}75%{opacity:1}to{opacity:0;transform:translateY(-10px)}}body.desk .floatup{font-size:18px}@media(prefers-reduced-motion:reduce){.floatup.go{animation:floatfade 1.2s forwards}}@keyframes floatfade{0%,70%{opacity:1}to{opacity:0}}#hp-wrap .floatup{right:100%;bottom:auto;top:0;margin-right:6px}#share{display:grid;gap:8px;justify-items:center;width:100%;max-width:320px;margin-top:4px}#share-out{width:100%}#share-url{flex:1;min-width:0;font:inherit;font-size:14px;color:#9fd3ff;background:#0a0811;border:0;padding:10px;box-shadow:inset 0 0 0 2px var(--line2);outline:none;border-radius:0;-webkit-user-select:text;user-select:text}#share-make:disabled{opacity:.5}#share-note{color:var(--dim);font-size:14px}.foodline{display:none;align-items:center;gap:8px}body.desk .foodline{display:flex}.food-lbl{color:#f7a33b;text-shadow:0 0 8px rgba(247,163,59,.5)}#food{min-width:4.5em;text-align:right;color:var(--dim)}#food.hungry{color:#ffc56a}#food.weak,#food.faint{color:#ff8a8f;animation:pulse 1s steps(2) infinite}#food.full{color:#7ff0a8}#offer-btn{position:absolute;left:50%;bottom:46px;transform:translate(-50%);z-index:3;display:flex;align-items:center;gap:10px;padding:8px 12px 8px 10px;letter-spacing:1px;color:#f3eefc;background:linear-gradient(#3d3560,#2a2440);border-radius:6px;max-width:calc(100% - 40px);white-space:nowrap;box-shadow:0 0 0 2px #120f1e,0 0 0 4px #a35bd6,0 6px 0 4px #120f1e,0 0 24px #a35bd673}#offer-btn img{width:20px;height:20px;image-rendering:pixelated}#offer-btn span{overflow:hidden;text-overflow:ellipsis}#offer-btn kbd{color:#120f1e;background:#f3eefc;padding:1px 7px;border-radius:3px;letter-spacing:0}#offer-btn:hover{filter:brightness(1.15)}#offer-btn:active{transform:translate(-50%) translateY(3px)}#offer-btn.pop{animation:stairsPop .4s cubic-bezier(.2,1.6,.4,1)}#offer-btn.ending{opacity:.6}#offer-btn.hungry{background:linear-gradient(#a3702a,#6a4a1c);box-shadow:0 0 0 2px #2a1a08,0 0 0 4px #f7a33b,0 6px 0 4px #2a1a08,0 0 24px #f7a33b80;animation:hungryGlow 1.2s ease-in-out infinite alternate}@keyframes hungryGlow{to{box-shadow:0 0 0 2px #2a1a08,0 0 0 4px #ffd08a,0 6px 0 4px #2a1a08,0 0 36px #f7a33bcc}}@media(prefers-reduced-motion:reduce){#offer-btn.hungry{animation:none}}
