*{box-sizing:border-box}[hidden]{display:none!important}html,body{margin:0;height:100%;overflow:hidden;background:#4e7a3c;font-family:Segoe UI,Malgun Gothic,sans-serif;color:#fff;-webkit-user-select:none;user-select:none}#game{position:fixed;top:0;right:0;bottom:0;left:0}#reconnect{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:20;padding:14px 24px;font-size:18px;font-weight:800;background:#28221ee6;border:3px solid #2f2a26;border-radius:12px}#debug{position:fixed;left:10px;top:8px;z-index:5;pointer-events:none;font-size:12px;font-weight:700;opacity:.8;text-shadow:0 1px 0 #2f2a26,1px 0 0 #2f2a26,-1px 0 0 #2f2a26,0 -1px 0 #2f2a26}#game canvas{display:block}.outline{text-shadow:0 2px 0 #2f2a26,2px 0 0 #2f2a26,-2px 0 0 #2f2a26,0 -2px 0 #2f2a26}#hud{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none}#hud button,#hud .card{pointer-events:auto}#top{position:absolute;top:14px;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:6px}#levelLine{font-weight:800;font-size:20px;display:flex;gap:10px;align-items:baseline;text-shadow:0 2px 0 #2f2a26,2px 0 0 #2f2a26,-2px 0 0 #2f2a26,0 -2px 0 #2f2a26}#clsText{color:#ffe08a}#zoneText{font-size:14px;font-weight:700;opacity:.9}#xpBar{width:320px;height:12px;border-radius:6px;background:#00000073;border:2px solid #2f2a26;overflow:hidden}#xpFill{height:100%;width:0;background:linear-gradient(#ffe37a,#f2b632);transition:width .15s}#choices{display:flex;gap:8px;margin-top:4px}#choices button{font:inherit;font-weight:800;font-size:15px;color:#fff;cursor:pointer;background:#28221ec7;border:3px solid #2f2a26;border-radius:10px;padding:8px 14px;box-shadow:0 3px #2f2a26}#choices button:hover{background:#504232e6}#choices kbd{background:#ffe08a;color:#2f2a26;border-radius:5px;padding:0 6px;margin-right:6px;font-family:inherit}#choices .more{align-self:center;font-weight:800;font-size:13px;opacity:.85}#lb{position:absolute;top:14px;right:14px;width:200px;background:#1e1a168c;border:3px solid rgba(47,42,38,.8);border-radius:12px;padding:8px 12px;font-size:14px;font-weight:700}.lb-title{font-weight:800;margin-bottom:4px;color:#ffe08a}#lbList{margin:0;padding-left:22px}#lbList li{display:flex;justify-content:space-between;gap:8px}#lbList li span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#lbList li.me{color:#9ff07a}#lbMe{margin-top:6px;font-size:13px;opacity:.9}#stats{position:absolute;left:14px;bottom:92px;width:190px;background:#1e1a168c;border:3px solid rgba(47,42,38,.8);border-radius:12px;padding:8px 12px;font-size:14px;font-weight:700}.st-title{font-weight:800;margin-bottom:4px;color:#ffe08a}#statRows .row{display:flex;justify-content:space-between;gap:8px;line-height:1.6}#statRows .val{font-variant-numeric:tabular-nums}#statRows .up{color:#9ff07a;font-size:12px;margin-left:4px}#bottom{position:absolute;left:14px;bottom:14px;display:flex;gap:12px;align-items:flex-end}#skill{position:relative;width:150px;padding:8px 10px;overflow:hidden;background:#1e1a16a6;border:3px solid #2f2a26;border-radius:12px;font-weight:800}#skillCdFill{position:absolute;left:0;right:0;bottom:0;height:0;background:#00000080}#skillKey{position:relative;font-size:11px;color:#ffe08a;letter-spacing:1px}#skillName{position:relative;font-size:16px}#skillState{position:relative;font-size:12px;opacity:.85}#autoAtk{display:flex;flex-direction:column;align-items:flex-start;width:96px;padding:8px 10px;background:#1e1a16a6;border:3px solid #2f2a26;border-radius:12px;color:inherit;font:inherit;font-weight:800;text-align:left;cursor:pointer}#autoAtk .aa-key{font-size:11px;color:#ffe08a;letter-spacing:1px}#autoAtk .aa-name{font-size:14px}#autoAtkState{font-size:12px;opacity:.85}#autoAtk.on{background:#466e2dcc;border-color:#9ff07a}#autoAtk.on #autoAtkState{color:#9ff07a;opacity:1}#inv{display:flex;gap:10px;flex-wrap:wrap;max-width:60vw;background:#1e1a168c;border:3px solid rgba(47,42,38,.8);border-radius:12px;padding:8px 12px;font-weight:700;font-size:14px}#inv b{color:#ffe08a}kbd{display:inline-block;min-width:1.6em;padding:0 5px;margin:0 1px;text-align:center;background:#ffe08a;color:#2f2a26;border-radius:5px;border-bottom:2px solid #b8913a;font-family:inherit;font-weight:800;font-size:.85em;line-height:1.5}#minimap{position:absolute;right:14px;bottom:14px;width:170px;height:170px;border:3px solid rgba(47,42,38,.85);border-radius:12px;background:#1e1a1666;box-shadow:0 3px #2f2a2699}#keys{position:absolute;right:200px;bottom:16px;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:4px 12px;max-width:38vw;font-size:13px;font-weight:700;text-shadow:0 1px 0 #2f2a26,1px 0 0 #2f2a26,-1px 0 0 #2f2a26,0 -1px 0 #2f2a26}#keys kbd{text-shadow:none}.help{position:relative;outline:none}.help-btn{display:inline-block;cursor:help;font-size:14px;font-weight:800;color:#ffe08a;padding:4px 12px;border:2px solid #ffe08a;border-radius:999px}.help-tip{display:none;position:absolute;left:50%;bottom:calc(100% + 10px);transform:translate(-50%);width:min(520px,92vw);max-height:70vh;overflow-y:auto;z-index:10;padding:14px 18px;text-align:left;font-size:13px;font-weight:600;line-height:1.6;background:#1e1a16f7;border:3px solid #2f2a26;border-radius:14px;box-shadow:0 6px #2f2a26}.help:hover .help-tip,.help:focus-within .help-tip{display:block}.help-tip section+section{margin-top:10px}.help-tip h3{margin:0 0 4px;font-size:15px;color:#ffe08a}.help-tip p{margin:0}.help-tip b{color:#9fd8ff}.help-tip table{border-collapse:collapse;width:100%}.help-tip td{padding:2px 0;vertical-align:top}.help-tip td:first-child{white-space:nowrap;padding-right:14px}#classPick{position:absolute;left:50%;bottom:18px;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:8px}.cp-title{font-weight:800;font-size:18px;text-shadow:0 2px 0 #2f2a26,2px 0 0 #2f2a26,-2px 0 0 #2f2a26,0 -2px 0 #2f2a26}.cp-title small{font-size:13px;opacity:.85;margin-left:6px}#classCards{display:flex;gap:10px}.card{width:170px;padding:10px 12px;cursor:pointer;background:#28221ed9;border:3px solid #2f2a26;border-radius:12px;box-shadow:0 4px #2f2a26;font-size:12px;font-weight:600}.card:hover{background:#544432f2;transform:translateY(-2px)}.card h3{margin:0;font-size:18px;display:flex;gap:6px;align-items:center}.card h3 kbd{background:#ffe08a;color:#2f2a26;border-radius:5px;padding:0 6px;font-size:13px;font-family:inherit}.card .desc{opacity:.85;margin:2px 0 6px}.card .row{display:flex;justify-content:space-between}.card .dots{color:#ffe08a;letter-spacing:1px}.card .sk{margin-top:6px;color:#9fd8ff}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#141e0f73}#start.overlay{background:radial-gradient(ellipse at center,#141e0f26,#141e0f8c)}.panel{display:flex;flex-direction:column;align-items:center;gap:12px;padding:28px 36px;min-width:320px;background:#28221ee0;border:4px solid #2f2a26;border-radius:18px;box-shadow:0 6px #2f2a26}.panel h1{margin:0;font-size:56px;letter-spacing:2px;font-weight:900;text-shadow:0 4px 0 #2f2a26}.panel h1 span{color:#ffe08a}.panel h2{margin:0;font-size:32px}.sub{margin:-6px 0 6px;opacity:.85;font-weight:700}#nameInput{width:260px;font:inherit;font-size:18px;font-weight:700;text-align:center;padding:10px;border-radius:10px;border:3px solid #2f2a26;outline:none}.panel button{font:inherit;font-size:22px;font-weight:900;color:#2f2a26;cursor:pointer;width:260px;padding:10px;border-radius:12px;border:3px solid #2f2a26;background:#8fd36a;box-shadow:0 4px #2f2a26}.panel button:hover{background:#a6e283}.panel button:active{transform:translateY(2px);box-shadow:0 2px #2f2a26}.controls{font-size:13px;opacity:.8;font-weight:600}#connStatus{font-size:13px;color:#ffb4a8;min-height:1em}#deathInfo{text-align:center;line-height:1.7;font-weight:700}#menu.overlay{background:#141e0f40;z-index:15}.panel button.alt{background:#e8dcc0}.panel button.alt:hover{background:#f4ead2}.panel button:disabled{opacity:.45;cursor:not-allowed;transform:none}.panel button:disabled:hover{background:#e8dcc0}#menuNote{min-height:1em;text-align:center}#menuNote.warn{color:#ffb4a8;opacity:1}#deathInfo b{color:#ffe08a}
