:root{--safe-top:env(safe-area-inset-top,0px);--safe-right:env(safe-area-inset-right,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px);--bg:#101416;--ink:#e8e2d4;--dim:#9aa3a0;--panel:#101416d1;--line:#2d3538}[hidden]{display:none!important}body{-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;touch-action:none;font:15px/1.35 system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif}#stage{position:fixed;top:0;left:0}#stage canvas{image-rendering:pixelated;image-rendering:crisp-edges;touch-action:none;display:block}#hud{top:calc(var(--safe-top) + 8px);left:calc(var(--safe-left) + 8px);right:calc(var(--safe-right) + 8px);pointer-events:none;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:8px;font-size:12px;display:flex;position:fixed}.hud-column{justify-items:start;gap:6px;min-width:0;max-width:calc(50% - 4px);display:grid}.hud-right{justify-items:end;margin-left:auto}.hud-right .hud-chip{white-space:normal;text-align:right}.frame.target-frame{width:min(42vw,170px)}.frame{background:var(--panel);border:1px solid var(--line);border-radius:8px;gap:4px;width:min(46vw,190px);padding:6px 8px 7px;display:grid}.frame-title{align-items:center;gap:5px;min-width:0;display:flex}.frame-icon{color:var(--dim);display:inline-flex}.frame-icon svg{width:14px;height:14px}.frame-name{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.frame-level{color:var(--dim);font-variant-numeric:tabular-nums;white-space:nowrap;margin-left:auto;font-size:11px}.target-frame.boss{border-color:#d9b04a}.target-frame.boss .frame-name{color:#f0cf7a}.target-frame.ally .frame-name{color:#9be58a}.target-frame.enemy{border-color:#6e2c25}.target-frame.enemy .frame-name{color:#ff7466}.war-chip{font-variant-numeric:tabular-nums;letter-spacing:.04em;align-items:baseline;gap:5px;font-weight:700;display:flex}.war-name.mine{text-underline-offset:3px;text-decoration:underline}.war-colon{color:var(--dim);font-style:normal}.troll-chip{color:var(--dim);font-size:11px}.troll-chip.awake{color:#ff7466;border-color:#6e2c25}.war-chip.bump{animation:.7s ease-out war-bump}@keyframes war-bump{0%{border-color:#e9c86a;box-shadow:0 0 #e9c86ab3}to{box-shadow:0 0 0 10px #e9c86a00}}.bar{background:#1c1715;border-radius:3px;height:12px;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #00000080}.bar i{background:var(--fill);transition:width .18s ease-out;position:absolute;top:0;bottom:0;left:0;right:auto}.bar span{font-variant-numeric:tabular-nums;text-align:center;text-shadow:0 1px 1px #000;font:600 9px/12px system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;display:block;position:relative}.bar-hp{--fill:linear-gradient(#e0574c, #b3342b)}.hero-frame .bar-hp{--fill:linear-gradient(#7fd05a, #4c9a33)}.bar-xp{--fill:linear-gradient(#e9c86a, #b58a2e);height:7px}.bar-xp span{display:none}#controls{left:0;right:0;bottom:calc(var(--safe-bottom) + 14px);pointer-events:none;justify-items:center;gap:10px;display:grid;position:fixed}.skills{gap:14px;display:flex}.skill{width:62px;height:62px;color:var(--ink);pointer-events:auto;touch-action:none;cursor:pointer;background:radial-gradient(circle at 50% 35%,#2a3236,#151a1c);border:2px solid #3d484c;border-radius:50%;place-items:center;padding:0;display:grid;position:relative;overflow:hidden;box-shadow:0 3px #07090a,0 0 0 1px #0009}.skill:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.skill-icon svg{width:30px;height:30px}.sheet-icon{image-rendering:pixelated;display:block}.skill-shade{background:conic-gradient(#060809c7 var(--share,0%), transparent 0);position:absolute;top:0;bottom:0;left:0;right:0}.skill-seconds{font-variant-numeric:tabular-nums;text-shadow:0 1px 2px #000;font:700 18px/1 system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;position:absolute}.skill-lock{color:var(--ink);font:700 10px/1 system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;position:absolute;bottom:7px}.skill.locked .skill-icon{opacity:.3}.skill.pressed{animation:.16s ease-out press}.skill.ready{animation:.45s ease-out ready}@keyframes press{50%{transform:scale(.9)}}@keyframes ready{0%{box-shadow:0 3px #07090a,0 0 #e9c86ae6}to{box-shadow:0 3px #07090a,0 0 0 12px #e9c86a00}}.toast{background:var(--panel);border:1px solid var(--line);text-align:center;border-radius:999px;max-width:min(86vw,360px);padding:6px 12px;font-size:13px}.toast.gold{color:#f6dc8e;border-color:#b58a2e}.news-card{left:50%;bottom:calc(var(--safe-bottom) + 96px);z-index:5;pointer-events:auto;background:#0a0e14eb;border:1px solid #5c4a26;border-radius:12px;gap:8px;width:min(92vw,360px);padding:12px 14px;display:grid;position:fixed;transform:translate(-50%)}.news-card b{color:#f0cf7a;font-size:14px}.news-card p{color:var(--ink);margin:0;font-size:14px}.news-actions{gap:8px;display:flex}.news-actions button{flex:1}.death{text-align:center;background:#101416e0;border:1px solid #5a2a24;border-radius:12px;padding:14px 22px;position:fixed;top:40%;left:50%;transform:translate(-50%,-50%)}.death h2{color:#e0574c;letter-spacing:.04em;margin:0 0 4px;font-size:22px}.death p{color:var(--dim);font-variant-numeric:tabular-nums;margin:0}.death .death-killer{color:var(--ink);margin-bottom:2px}@media (prefers-reduced-motion:reduce){.skill.pressed,.skill.ready,.war-chip.bump{animation:none}.bar i{transition:none}}.hud-chip{background:var(--panel);border:1px solid var(--line);white-space:nowrap;border-radius:8px;padding:4px 8px}.hud-chip.warn{border-color:#b8742c}.hud-debug{white-space:pre;font:11px/1.35 ui-monospace,Menlo,Consolas,monospace}.hud-row{gap:6px;display:flex}.chat-form{top:calc(var(--safe-top) + 8px);left:calc(var(--safe-left) + 8px);right:calc(var(--safe-right) + 8px);background:var(--panel);border:1px solid var(--line);border-radius:10px;gap:6px;padding:6px;display:flex;position:fixed}.chat-form input{border:1px solid var(--line);min-width:0;color:var(--ink);background:#0b0e0f;border-radius:8px;flex:1;padding:9px 10px;font:16px system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif}.chat-form input:focus-visible{outline:2px solid var(--ink);outline-offset:1px}.chat-form button.primary{padding:9px 14px}.chat-log{left:calc(var(--safe-left) + 8px);bottom:calc(var(--safe-bottom) + 150px);pointer-events:none;gap:3px;max-width:min(72vw,320px);display:grid;position:fixed}.chat-line{background:var(--panel);overflow-wrap:anywhere;border-radius:8px;justify-self:start;padding:3px 8px;font-size:12px;line-height:1.3;animation:.5s ease-in 8s forwards chat-fade}.chat-line b{color:var(--ink);margin-right:5px}.chat-line.mine b{color:#f0cf7a}.chat-line.enemy b{color:#ff7466}.chat-log .chat-line:nth-last-child(n+5){display:none}.chat-log.open .chat-line{animation:none}.chat-log.open .chat-line:nth-last-child(n+5){display:block}.chat-log.open .chat-line:nth-last-child(n+9){display:none}@keyframes chat-fade{to{opacity:0}}.quest-slot{width:min(46vw,190px);display:grid}.quest-tracker{background:var(--panel);border:1px solid var(--line);text-align:left;border-radius:8px;gap:3px;padding:5px 8px 6px;display:grid}.quest-tracker.done{border-color:#b58a2e}.quest-line{align-items:baseline;gap:6px;min-width:0;display:flex}.quest-title{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.quest-count{color:var(--dim);font-variant-numeric:tabular-nums;margin-left:auto;font-size:11px}.quest-progress{background:#1c1715;border-radius:2px;height:4px;display:block;position:relative;overflow:hidden}.quest-progress i{background:linear-gradient(#e9c86a,#b58a2e);position:absolute;top:0;bottom:0;left:0;right:auto}.quest-hint{color:var(--dim);font-size:10px}.quest-tracker.done .quest-hint{color:#f0cf7a}.quest-head{font-size:15px}.quest-panel .items-close{margin-left:auto}.quest-list{overscroll-behavior:contain;align-content:start;gap:8px;min-height:0;display:grid;overflow-y:auto}.quest-section{color:var(--dim);letter-spacing:.04em;text-transform:uppercase;margin:4px 0 0;font-size:11px;font-weight:600}.quest-card{background:#161c1f;border:1px solid #2a3336;border-radius:8px;gap:5px;padding:8px 10px;display:grid}.quest-card.done{border-color:#b58a2e}.quest-card.rewarded{opacity:.6}.quest-text{color:var(--dim);margin:0;font-size:12px;line-height:1.35}.quest-foot{align-items:center;gap:8px;min-height:30px;display:flex}.quest-reward{color:#f0cf7a;flex:1;font-size:11px}.quest-state{color:var(--dim);white-space:nowrap;font-size:11px}.quest-foot button.primary{padding:7px 16px}.quest-empty{color:var(--dim);margin:0;font-size:12px}#overlay{pointer-events:none;position:fixed;top:0;bottom:0;left:0;right:0}.screen{padding:calc(var(--safe-top) + 24px) calc(var(--safe-right) + 20px) calc(var(--safe-bottom) + 24px) calc(var(--safe-left) + 20px);background:var(--bg) url(/assets/lobby-tall-pFSoNM1G.png) center / cover no-repeat;image-rendering:pixelated;text-align:center;pointer-events:auto;flex-direction:column;align-items:center;gap:16px;display:flex;position:fixed;top:0;bottom:0;left:0;right:0;overflow-y:auto}@media (min-aspect-ratio:3/5){.screen{background-image:url(/assets/lobby-wide-1kYQvgzp.png)}}.screen>:first-child:not(.screen-logo),.screen-logo+*{margin-top:auto}.screen>:last-child{margin-bottom:auto}.screen h1{letter-spacing:.04em;margin:0;font-size:30px}.screen h1,.screen p{text-shadow:0 1px 3px #000000d9}.screen p{max-width:34ch;color:var(--dim);margin:0}.screen .screen-logo{flex-shrink:0;line-height:0}.screen-logo img{image-rendering:auto;width:min(82vw,340px,46vh);height:auto}.away-card{text-align:left;background:#0a0e14cc;border:1px solid #5c4a26;border-radius:12px;gap:6px;width:min(100%,360px);padding:12px 14px;display:grid}.away-card b{color:#f0cf7a;letter-spacing:.02em;font-size:14px}.away-card ul{gap:4px;margin:0;padding:0;list-style:none;display:grid}.away-card li{color:var(--ink);font-size:14px}.away-card li:before{content:"· ";color:#f0cf7a}.spinner{border:3px solid #3a4448;border-top-color:var(--ink);border-radius:50%;width:28px;height:28px;animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.factions{gap:12px;width:min(100%,360px);display:grid}.faction{border:2px solid var(--accent);background:#182024;background:color-mix(in srgb, var(--accent) 16%, var(--bg));color:var(--ink);font:inherit;text-align:left;cursor:pointer;border-radius:12px;gap:2px;padding:16px 18px;display:grid}.faction b{color:var(--accent);font-size:22px}.faction:active{transform:scale(.98)}.slots{gap:10px;width:min(100%,360px);display:grid}.slot{border:2px solid var(--accent);background:#182024;background:color-mix(in srgb, var(--accent) 14%, var(--bg));border-radius:12px;align-items:stretch;display:flex;overflow:hidden}.slot-play{min-width:0;color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex:1;align-items:center;gap:12px;padding:14px 16px;display:flex}.slot-play:active,.slot-empty:active{transform:scale(.98)}.slot-play .class-icon svg{width:28px;height:28px}.slot-text{gap:2px;min-width:0;display:grid}.slot-text b{text-overflow:ellipsis;white-space:nowrap;font-size:19px;overflow:hidden}.slot-text small{color:var(--dim);font-size:13px}.slot-delete{border:0;border-left:1px solid color-mix(in srgb, var(--accent) 35%, transparent);width:52px;color:var(--dim);cursor:pointer;background:#0000002e;place-items:center;display:grid}.slot-delete svg{width:20px;height:20px}.slot-empty{border:2px dashed var(--line);color:var(--dim);font:inherit;cursor:pointer;background:0 0;justify-content:center;padding:18px}.name-form{gap:12px;width:min(100%,320px);display:grid}.name-field{grid-template-columns:1fr auto;gap:8px;display:grid}.name-field input{min-width:0}.name-reroll{border:2px solid var(--line);width:52px;color:var(--ink);cursor:pointer;background:0 0;border-radius:10px;place-items:center;display:grid}.name-reroll svg{width:24px;height:24px}.name-reroll:active{transform:rotate(-15deg)scale(.94)}.name-form input{border:2px solid var(--accent);color:var(--ink);text-align:center;-webkit-user-select:text;user-select:text;touch-action:manipulation;background:#0c1012;border-radius:10px;padding:12px 14px;font:600 19px/1.2 system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif}.name-form input:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.screen .form-error{color:#f08a7e;font-size:13px}.actions{gap:10px;width:min(100%,320px);display:grid}button.secondary{border:1px solid var(--line);color:var(--dim);font:inherit;cursor:pointer;background:0 0;border-radius:10px;padding:11px 22px}button.primary.danger{color:#fff;background:#d8433a}.hud-button{pointer-events:auto;color:var(--ink);font:inherit;cursor:pointer}.class-card b{color:var(--ink);align-items:center;gap:8px;display:flex}.class-icon{color:var(--accent);display:inline-flex}.class-card small{color:var(--dim);font-size:12px}button.primary{background:var(--ink);color:var(--bg);font:inherit;cursor:pointer;border:0;border-radius:10px;padding:12px 22px;font-weight:600}.frame-gold{color:#f0cf7a;font-variant-numeric:tabular-nums;font:600 11px/1 system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif}.frame-gold:empty{display:none}.action-bar{align-items:center;gap:12px;display:flex}.potions{gap:8px;display:grid}.potion{pointer-events:auto;touch-action:none;cursor:pointer;background:radial-gradient(circle at 50% 35%,#2a3236,#151a1c);border:2px solid #3d484c;border-radius:50%;place-items:center;width:42px;height:42px;padding:0;display:grid;position:relative;overflow:hidden;box-shadow:0 2px #07090a}.potion-icon,.item-icon{image-rendering:pixelated;image-rendering:crisp-edges}.potion-icon{width:32px;height:32px}.potion.empty .potion-icon{opacity:.35;filter:grayscale()}.potion-count{font-variant-numeric:tabular-nums;text-shadow:0 1px 2px #000,0 0 2px #000;font:700 11px/1 system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;position:absolute;bottom:2px;right:4px}.bag-button{color:#f0d58a;pointer-events:auto;touch-action:none;cursor:pointer;background:radial-gradient(circle at 50% 35%,#36302a,#1a1714);border:2px solid #6b5a3a;border-radius:14px;place-items:center;width:52px;height:52px;padding:0;display:grid;box-shadow:0 3px #07090a}.bag-button svg{width:28px;height:28px}.potion:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.bag-button:focus-visible{outline:2px solid var(--ink);outline-offset:2px}@media (max-width:359px){.skill{width:54px;height:54px}.skills{gap:10px}}.items-panel{--cell:min(52px, calc((min(100vw, 420px) - 48px) / 5));box-sizing:border-box;width:min(100vw,420px);max-height:66vh;padding:10px 12px calc(var(--safe-bottom) + 12px);border:1px solid var(--line);pointer-events:auto;touch-action:manipulation;background:#0e1214f5;border-bottom:0;border-radius:16px 16px 0 0;grid-template-rows:auto minmax(0,1fr) auto;gap:10px;font-size:13px;display:grid;position:fixed;bottom:0;left:50%;transform:translate(-50%);box-shadow:0 -8px 24px #00000073}.items-head{align-items:center;gap:10px;display:flex}.items-tabs{gap:6px;display:flex}.items-tab{border:1px solid var(--line);color:var(--dim);cursor:pointer;background:0 0;border-radius:999px;padding:7px 12px;font:600 13px/1 system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif}.items-tab.active{background:var(--ink);border-color:var(--ink);color:var(--bg)}.items-gold{color:#f0cf7a;font-variant-numeric:tabular-nums;margin-left:auto;font-weight:700}.items-close{width:34px;height:34px;color:var(--ink);cursor:pointer;background:#1f2629;border:0;border-radius:50%;font:400 22px/1 system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif}.items-body{height:calc(var(--cell) * 4 + 18px);overscroll-behavior:contain;min-height:0;max-height:36vh;overflow-y:auto}.items-grid{grid-template-columns:repeat(5, var(--cell));grid-auto-rows:var(--cell);justify-content:center;gap:6px;display:grid}.item-cell{cursor:pointer;background:#161c1f;border:1px solid #2a3336;border-radius:8px;place-items:center;padding:0;display:grid;position:relative}.item-cell.equip{background:#1d1a15;border-color:#4a3f2c}.item-cell.equip:not(.filled):after{content:attr(data-caption);color:#7d725c;text-align:center;font:600 9px/1.1 system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif}.item-cell.filled{border-color:color-mix(in srgb, var(--quality) 60%, #2a3336);box-shadow:inset 0 0 12px color-mix(in srgb, var(--quality) 22%, transparent)}.item-cell.selected,.shop-row.selected{outline:2px solid var(--ink);outline-offset:1px}.item-cell .item-icon{width:calc(var(--cell) - 14px);height:calc(var(--cell) - 14px)}.item-cell.broken .item-icon{filter:grayscale()brightness(.8)}.item-qty{font-variant-numeric:tabular-nums;text-shadow:0 1px 2px #000,0 0 2px #000;font:700 11px/1 system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;position:absolute;bottom:2px;right:3px}.item-wear{background:#3a1c18;border-radius:2px;height:3px;position:absolute;bottom:3px;left:5px;right:5px;overflow:hidden}.item-wear:before{content:"";width:var(--dur);background:#e0a13a;position:absolute;top:0;bottom:0;left:0;right:auto}.item-cell.broken .item-wear:before{background:#e0574c}.shop-list{gap:6px;display:grid}.shop-row{border:1px solid #2a3336;border-left:3px solid var(--quality);color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:#161c1f;border-radius:8px;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:10px;padding:6px 10px;display:grid}.shop-row .item-icon{width:32px;height:32px}.shop-text{gap:1px;min-width:0;display:grid}.shop-text b{text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.shop-text small{color:var(--dim);font-size:11px}.shop-price{color:#f0cf7a;font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:700}.shop-repair{width:100%}.item-card{align-content:start;gap:8px;min-height:150px;display:grid}.item-hint{color:var(--dim);text-align:center;align-self:center;margin:0}.item-head{align-items:center;gap:10px;display:flex}.item-head .item-icon{border:1px solid var(--quality);background:#161c1f;border-radius:8px;width:40px;height:40px;padding:2px}.item-title{gap:1px;min-width:0;display:grid}.item-title b{color:var(--quality);font-size:15px}.item-title small,.item-lines .dim{color:var(--dim)}.item-lines{gap:2px;display:grid}.item-lines .warn{color:#e9c86a}.item-lines .bad{color:#f08a7e}.item-actions{flex-wrap:wrap;gap:8px;display:flex}.item-actions button{flex:auto;padding:10px 14px}.item-actions .danger{color:#fff;font:inherit;cursor:pointer;background:#d8433a;border:0;border-radius:10px;font-weight:600}.item-actions button:disabled,.shop-repair:disabled{opacity:.45;cursor:default}
