:root{--ink:#3b2a1e;--ink-soft:#6b5240;--cream:#fff4d6;--good:#2f7d32;--bad:#b3261e;--gold:#ffd23f;--font:"Pixelify Sans", "Trebuchet MS", monospace;--title:"Jacquard 24", "Pixelify Sans", serif}*{box-sizing:border-box}html,body{height:100%;font-family:var(--font);color:var(--ink);cursor:var(--ui-cursor) 22 17, auto;-webkit-user-select:none;user-select:none;background:#47aba9;margin:0;overflow:hidden}#arena{image-rendering:pixelated;display:block;position:fixed;inset:0}img{image-rendering:pixelated}button{font:inherit;color:inherit;cursor:var(--ui-cursor-hand) 30 20, pointer}button:disabled{cursor:var(--ui-cursor) 22 17, not-allowed}kbd{font-family:var(--font);background:#3b2a1e1f;border-bottom:2px solid #3b2a1e59;border-radius:4px;padding:0 6px}.panel,.btn,.ribbon,.bar,.slot,.btn-square{image-rendering:pixelated}.panel{border-style:solid;border-color:#0000}.panel-paper{border-width:26px;border-image:var(--ui-paper) 64 fill / 26px stretch}.panel-paper-special{border-width:26px;border-image:var(--ui-paper-special) 64 fill / 26px stretch}.panel-banner{border-width:48px;border-image:var(--ui-banner) 128 fill / 48px stretch}.panel-wood{border-width:40px;border-image:var(--ui-wood) 128 fill / 40px stretch;color:var(--cream)}.btn{border:22px solid #0000;border-image:var(--ui-btn-blue) 64 fill / 22px stretch;color:#fff;text-shadow:0 2px #00000059;background:0 0;justify-content:center;align-items:center;gap:4px;min-height:64px;padding:2px 10px 8px;font-size:20px;font-weight:700;transition:transform 80ms,filter .12s;display:inline-flex}.btn:hover:not(:disabled){filter:brightness(1.12);transform:translateY(-2px)}.btn:active:not(:disabled){border-image-source:var(--ui-btn-blue-pressed);transform:translateY(1px)}.btn.red{border-image-source:var(--ui-btn-red)}.btn.red:active:not(:disabled){border-image-source:var(--ui-btn-red-pressed)}.btn:disabled{filter:grayscale(.85)brightness(.85);opacity:.8}.btn.small{border-width:18px;border-image-width:18px;min-height:52px;padding:0 4px 6px;font-size:15px}.btn-square{background:var(--ui-btn-small-blue) center / contain no-repeat;border:none;place-items:center;width:64px;height:64px;padding:6px 0 12px;display:grid}.btn-square:active{background-image:var(--ui-btn-small-blue-pressed)}.btn-square img{width:28px;height:28px}.ribbon{border:0 solid #0000;border-width:0 56px;color:#fff;text-shadow:0 2px #0006;white-space:nowrap;border-image-slice:0 128 fill;border-image-width:0 56px;justify-content:center;align-items:center;min-width:180px;height:56px;padding:0 4px 6px;font-size:20px;font-weight:700;display:inline-flex}.ribbon.big{border-width:0 84px;border-image-width:0 84px;height:84px;padding-bottom:10px;font-size:34px}.ribbon.big span{font-family:var(--title);letter-spacing:1px;font-size:44px;font-weight:400}.ribbon.small{border-width:0 40px;border-image-width:0 40px;min-width:120px;height:40px;padding-bottom:4px;font-size:15px}.ribbon-0{border-image-source:var(--ui-ribbon-0)}.ribbon-1{border-image-source:var(--ui-ribbon-1)}.ribbon-2{border-image-source:var(--ui-ribbon-2)}.ribbon-3{border-image-source:var(--ui-ribbon-3)}.ribbon-4{border-image-source:var(--ui-ribbon-4)}.bar{border:0 solid #0000;border-width:0 34px;border-image:var(--ui-bar-big) 0 64 fill / 0 34px stretch;width:300px;height:52px;position:relative}.bar .fill{background:var(--ui-bar-fill) center / 100% 340% no-repeat;width:100%;height:20px;transition:width .15s;position:absolute;top:16px;left:-12px}.bar span{color:#fff;text-shadow:0 2px #3b2a1e,0 0 3px #3b2a1e;place-items:center;font-size:18px;font-weight:700;display:grid;position:absolute;inset:0 0 4px}.bar.small{border-width:0 26px;border-image:var(--ui-bar-small) 0 64 fill / 0 26px stretch;width:220px;height:40px}.bar.small .fill{filter:hue-rotate(190deg)saturate(1.3);height:10px;top:15px;left:-4px}.bar.small span{font-size:15px;inset:-2px 0 0}.coin{vertical-align:middle;width:22px;height:22px}#hud{pointer-events:none;z-index:2;position:fixed;inset:0}#hud[hidden]{display:none}.hud-left{gap:2px;display:grid;position:absolute;top:12px;left:16px}.gold{color:#fff;text-shadow:0 2px #3b2a1e,0 0 4px #3b2a1e;align-items:center;gap:6px;padding-left:8px;font-size:26px;font-weight:700;display:flex}.gold img{width:36px;height:36px}.hud-center{justify-items:center;display:grid;position:absolute;top:8px;left:50%;transform:translate(-50%)}#timer-text{color:#fff;text-shadow:0 3px #3b2a1e,0 0 6px #3b2a1e;margin-top:-4px;font-size:42px;font-weight:700}#timer-text.urgent{color:#ffd23f}#pause-btn{pointer-events:auto;position:absolute;top:12px;right:14px}#boss-bar{justify-items:center;display:grid;position:absolute;bottom:18px;left:50%;transform:translate(-50%)}#boss-bar[hidden]{display:none}.bar-boss{width:min(560px,80vw)}.boss-ribbon{margin-bottom:-8px}#screen{z-index:3;padding:24px 16px;position:fixed;inset:0;overflow:auto}#screen[hidden]{display:none}#screen.center{background:#1e323c40;place-items:center;display:grid}#screen.column,#screen.shop{background:#1e2d378c;flex-direction:column;align-items:center;gap:10px;display:flex}#screen.shop{gap:4px;padding:8px 12px}#screen.shop .ribbon.big{border-width:0 64px;border-image-width:0 64px;height:64px}#screen.shop .ribbon.big span{font-size:34px}h2,h3{margin:0 0 8px}h2{font-family:var(--title);text-align:center;font-size:44px;font-weight:400}p{margin:6px 0}.title-panel{text-align:center;justify-items:center;gap:12px;width:min(640px,94vw);display:grid}.title-panel .lead{font-size:20px;line-height:1.4}.menu-buttons{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.menu-buttons .btn{min-width:200px}.credit{color:var(--ink-soft)}.howto-panel{justify-items:center;width:min(680px,94vw);display:grid}.howto{gap:10px;margin:0 0 12px;padding:0;font-size:18px;list-style:none;display:grid}.howto li{grid-template-columns:40px 1fr;align-items:center;gap:10px;display:grid}.howto img{object-fit:contain;width:40px;height:40px}.screen-title{justify-items:center;display:grid}.subtitle{color:#fff;text-shadow:0 2px #3b2a1e;font-size:18px}.cards{flex-wrap:wrap;justify-content:center;gap:14px;max-width:1100px;display:flex}.card{text-align:center;background:0 0;align-content:start;justify-items:center;gap:4px;width:230px;font-size:15px;transition:transform .12s,filter .12s;display:grid;position:relative}button.card:hover{filter:brightness(1.05);transform:translateY(-6px)rotate(-1deg)}.card h3{margin:2px 0 0;font-size:18px;line-height:1.1}.card>*{max-width:100%}.mods li{overflow-wrap:anywhere}.card .key{background:var(--cream);font-size:14px;position:absolute;top:-18px;right:-14px}.avatar{object-fit:contain;width:96px;height:96px}.big-icon{object-fit:contain;width:64px;height:64px}.weapon-line{align-items:center;gap:6px;font-weight:700;display:flex}.weapon-line img{width:28px;height:28px}.mods{gap:2px;margin:4px 0;padding:0;font-size:15px;list-style:none;display:grid}.pos{color:var(--good)}.neg{color:var(--bad)}.big-mod{font-size:22px;font-weight:700}.kind,.note{color:var(--ink-soft);margin:0;font-size:13px}.back{margin-top:8px}.row-buttons{gap:10px;display:flex}.stats-panel{width:270px;font-size:14px}.stats-panel h3{text-align:center;color:var(--gold);text-shadow:0 2px #0006}.stats-panel ul{gap:3px;margin:0;padding:0;list-style:none;display:grid}.stats-panel li{justify-content:space-between;gap:8px;display:flex}.stats-panel .pos{color:#9df59d}.stats-panel .neg{color:#ff9a8f}.choice-layout{flex-wrap:wrap;justify-content:center;align-items:flex-start;gap:14px;display:flex}.choice-main{justify-items:center;gap:12px;max-width:860px;display:grid}.upgrade-card{width:196px}.shop-top{flex-wrap:wrap;justify-content:center;align-items:center;gap:14px;display:flex}.big-gold{font-size:30px}.big-gold .coin{width:40px;height:40px}.shop-body{flex-wrap:wrap;justify-content:center;align-items:flex-start;gap:14px;display:flex}.shop-main{justify-items:center;gap:12px;display:grid}.offer{border-width:22px;border-image-width:22px;gap:2px;width:204px;min-height:270px;font-size:14px}.offer .big-icon{width:48px;height:48px}.offer .mods{margin:2px 0;font-size:13px}.offer.sold{opacity:.55;filter:grayscale(.6)}.offer.locked{outline-offset:-18px;outline:4px dashed #b3261e99}.offer .mods.neutral{color:var(--ink)}.offer-buttons{flex-direction:column;align-items:center;gap:0;width:100%;margin-top:auto;display:flex}.offer-buttons .buy{width:100%;min-height:56px}.offer-buttons .small{border-width:14px;border-image-width:14px;min-height:44px;padding:0 8px 4px;font-size:13px}.inventory{border-width:30px;border-image-width:30px;gap:4px;width:min(860px,94vw);display:grid}.inv-row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.inv-row h3{min-width:110px;margin:0}.slots,.items{flex-wrap:wrap;gap:6px;display:flex}.slot{background:var(--ui-banner-slot) center / 100% 100% no-repeat;border:none;place-items:center;width:56px;height:56px;display:grid;position:relative}.slot img{width:38px;height:38px}.slot span{font-size:12px;font-weight:700;position:absolute;bottom:2px;right:6px}.slot.empty{opacity:.45}.slot.selected{filter:drop-shadow(0 0 4px #ffd23f);transform:translateY(-4px)}.slot.tier-2 span{color:#1f6fb2}.slot.tier-3 span{color:#7a3fb0}.slot.tier-4 span{color:#b3261e}.items img{object-fit:contain;width:40px;height:40px}.weapon-detail{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.hint{color:var(--ink-soft);font-size:14px}.shop-message{color:#fff;text-shadow:0 2px #3b2a1e;min-height:22px;font-weight:700}.btn.go{min-width:240px;font-size:22px}.shop-side{justify-items:center;gap:4px;display:grid}.shop-side .btn.go{width:100%}.hero-attack{text-align:center;justify-items:center;gap:8px;width:min(300px,94vw);display:grid}.hero-attack h3,.hero-attack p{margin:0}.hero-attack .avatar{width:64px;height:64px}.hero-attack .btn{overflow-wrap:anywhere;width:100%;font-size:16px}.pause-layout{flex-wrap:wrap;justify-content:center;align-items:center;gap:16px;display:flex}.pause-panel,.end-panel{text-align:center;justify-items:center;gap:10px;width:min(560px,94vw);font-size:18px;display:grid}.summary{gap:4px;width:100%;max-width:360px;margin:0;padding:0;list-style:none;display:grid}.summary li{justify-content:space-between;display:flex}#loading{z-index:5;background:#47aba9;place-items:center;display:grid;position:fixed;inset:0}#loading .loading-panel{text-align:center;color:#fff;text-shadow:0 2px #2b5f5e;border:none}#loading .title{font-family:var(--title);margin:0;font-size:64px;font-weight:400}.loading-track{background:#0003;border-radius:5px;width:280px;height:10px;margin:12px auto 0;overflow:hidden}#loading-fill{background:#fff4d6;width:0;height:100%;transition:width .1s}@media (width<=700px){.bar{width:220px}.bar.small{width:170px}.ribbon.big span,#timer-text{font-size:30px}}@media (prefers-reduced-motion:reduce){*{transition:none!important}}.hud-loadout{pointer-events:auto;gap:4px;display:flex;position:absolute;bottom:12px;left:12px}.hud-loadout img{width:36px;height:36px;image-rendering:pixelated}.offer{min-height:0}.offer .note{display:none}.offer:hover .note{display:block}.forge{width:min(860px,94vw);max-height:330px;overflow:auto}.recipes{grid-template-columns:repeat(2,1fr);gap:6px 14px;display:grid}.recipe{grid-template-columns:40px 1fr auto;align-items:center;gap:8px;font-size:13px;display:grid}.recipe img{object-fit:contain;width:40px;height:40px}.recipe small{display:block}.recipe.ready b{color:var(--good)}.inv-row.hero-attack{flex-wrap:nowrap}.inv-row.hero-attack small{color:var(--ink-soft);font-size:13px;display:block}.mini-avatar{object-fit:contain;width:48px;height:48px}.inv-row .weapon-detail{margin-left:auto}.inventory .inv-row.hero-attack{text-align:left;border:none;flex-direction:row;justify-items:start;gap:10px;width:auto;padding:0;display:flex}.inventory .inv-row.hero-attack>div{flex:1}.inventory .inv-row.hero-attack .btn{width:auto;font-size:14px}.hud-left .bar{width:340px}.hud-left .bar span{letter-spacing:.3px;text-shadow:0 2px #2b1d16,2px 0 #2b1d16,-2px 0 #2b1d16,0 -2px #2b1d16,0 0 4px #000;font-size:19px}.bar-xp .fill{filter:hue-rotate(195deg)saturate(1.4)brightness(1.1)}.hud-left .bar-xp span{font-size:16px}@media (width<=700px){.hud-left .bar{width:240px}.hud-left .bar span{font-size:15px}}#floor-name{color:#fff1cf;text-align:center;text-shadow:0 2px 2px #1b171d;font-size:18px}@media (width<=700px){.hud-center{width:calc(100% - 24px);top:112px}.hud-center .ribbon{min-width:0;max-width:100%;font-size:16px}}
