:root{--bg: #06080e;--panel: rgba(14, 18, 28, .92);--panel-border: rgba(120, 140, 190, .22);--text: #e6ecff;--text-dim: #93a0c0;--accent: #5eead4;--accent-strong: #2dd4bf;--danger: #f87171;--warn: #fbbf24;--ok: #4ade80;--radius: 12px;--shadow: 0 18px 48px rgba(0, 0, 0, .55)}*{box-sizing:border-box}html,body{margin:0;height:100%;overflow:hidden;background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:15px;line-height:1.45;-webkit-font-smoothing:antialiased}button,input{font:inherit;color:inherit}.hhs-root{position:fixed;inset:0;overflow:hidden}.hhs-viewport{position:absolute;inset:0}.hhs-canvas{display:block;width:100%;height:100%;touch-action:none}.hhs-hud,.hhs-killfeed,.hhs-toasts,.hhs-overlay,.hhs-debug-layer{position:absolute;inset:0;pointer-events:none}.hhs-overlay{display:flex;align-items:center;justify-content:center;padding:24px;background:radial-gradient(circle at 50% 30%,#1e2942a6,#04060ceb);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);pointer-events:auto}.panel{width:min(420px,100%);padding:28px;border:1px solid var(--panel-border);border-radius:var(--radius);background:var(--panel);box-shadow:var(--shadow)}.panel-centered{display:flex;flex-direction:column;align-items:center;gap:14px;text-align:center}.panel-title{margin:0 0 4px;font-size:22px;letter-spacing:.02em}.panel-subtitle{margin:0 0 18px;color:var(--text-dim);font-size:14px}.panel-centered .panel-subtitle{margin:0}.panel-form{display:flex;flex-direction:column;gap:14px}.tabs{display:flex;gap:6px;margin-bottom:18px;padding:4px;border-radius:10px;background:#ffffff0a}.tab{flex:1;padding:8px 10px;border:0;border-radius:8px;background:transparent;color:var(--text-dim);cursor:pointer;transition:background .12s ease,color .12s ease}.tab:hover:not(:disabled){color:var(--text)}.tab.is-active{background:#5eead424;color:var(--accent)}.field{display:flex;flex-direction:column;gap:6px}.field-label{color:var(--text-dim);font-size:13px}.field-input{padding:10px 12px;border:1px solid var(--panel-border);border-radius:9px;background:#060910d9;outline:none;transition:border-color .12s ease}.field-input:focus{border-color:var(--accent-strong)}.field-input:disabled{opacity:.6}.button-primary{padding:11px 14px;border:0;border-radius:9px;background:var(--accent-strong);color:#04120f;font-weight:650;cursor:pointer;transition:filter .12s ease}.button-primary:hover:not(:disabled){filter:brightness(1.08)}.button-primary:disabled{cursor:progress;opacity:.55}.button-ghost{padding:8px 12px;border:1px solid var(--panel-border);border-radius:9px;background:transparent;color:var(--text-dim);cursor:pointer}.button-ghost:hover:not(:disabled){color:var(--text);border-color:#788cbe80}.form-message{margin:0;padding:9px 11px;border:1px solid rgba(248,113,113,.35);border-radius:9px;background:#f871711f;color:#ffc9c9;font-size:13px}.form-hint{margin:0;color:var(--text-dim);font-size:12px}.spinner{width:26px;height:26px;border:3px solid rgba(148,163,184,.25);border-top-color:var(--accent);border-radius:50%;animation:hhs-spin .9s linear infinite}@keyframes hhs-spin{to{transform:rotate(360deg)}}.hud{position:absolute;inset:0}.hud-panel{position:absolute;display:flex;padding:12px 14px;border:1px solid var(--panel-border);border-radius:var(--radius);background:#0a0e16b8;pointer-events:auto}.hud-left{top:16px;left:16px;flex-direction:column;gap:8px;min-width:250px}.hud-right{top:16px;right:16px;align-items:center;gap:8px}.hud-identity{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.hud-name{font-weight:650;letter-spacing:.01em}.hud-level{color:var(--accent);font-size:13px}.bar{position:relative;height:20px;border-radius:6px;background:#04060cd9;overflow:hidden}.bar-slim{height:14px}.bar-fill{height:100%;width:0%;transition:width .14s linear}.bar-fill.hp{background:linear-gradient(90deg,#22c55e,#4ade80)}.bar-fill.xp{background:linear-gradient(90deg,#6366f1,#a78bfa)}.bar-fill.stamina{background:linear-gradient(90deg,#2563eb,#60a5fa);transition:width 80ms linear}.bar-fill.stamina.is-winded{background:linear-gradient(90deg,#b45309,#f59e0b)}.bar-text{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:11px;font-variant-numeric:tabular-nums;text-shadow:0 1px 2px rgba(0,0,0,.85)}.pill{padding:4px 9px;border:1px solid var(--panel-border);border-radius:999px;font-size:12px;font-variant-numeric:tabular-nums;color:var(--text-dim)}.pill.is-ok{border-color:#4ade8066;color:var(--ok)}.pill.is-warn{border-color:#fbbf2466;color:var(--warn)}.pill.is-bad{border-color:#f8717173;color:var(--danger)}.hud-mute{background:transparent;font-family:inherit;cursor:pointer}.hud-mute:hover{color:var(--text);border-color:#788cbe80}.hud-mute.is-muted{border-color:#fbbf2459;color:var(--warn)}.hud-logout{padding:5px 10px;font-size:12px}.action-bar{position:absolute;bottom:16px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:8px;pointer-events:none}.key-slot{--slot-tint: var(--text-dim);position:relative;width:54px;height:54px;display:flex;align-items:center;justify-content:center;border:1px solid var(--panel-border);border-color:color-mix(in srgb,var(--slot-tint) 48%,transparent);border-radius:10px;background:#080c14c7;box-shadow:inset 0 0 20px -10px var(--slot-tint),0 6px 18px #00000073;color:var(--slot-tint);transition:opacity .12s ease,border-color .12s ease}.key-slot-power{margin-left:20px}.key-slot-power+.key-slot-boon{margin-left:20px}.key-slot-timer{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:19px;font-weight:700;font-variant-numeric:tabular-nums;color:#e6ecffeb;text-shadow:0 1px 4px rgba(0,0,0,.95);pointer-events:none}.key-slot.has-timer{--icon-opacity: .35}.key-slot.is-active{border-color:var(--slot-tint);box-shadow:inset 0 0 22px -6px var(--slot-tint),0 0 14px -2px var(--slot-tint),0 6px 18px #00000073}.key-slot.is-active .key-slot-timer{color:var(--slot-tint)}.key-slot-icon{display:flex;width:26px;height:26px;opacity:var(--icon-opacity, 1)}.key-slot-icon svg{width:100%;height:100%}.key-slot-key{position:absolute;right:-1px;bottom:-1px;padding:0 4px;border-radius:0 0 9px;background:#060910eb;color:#e6ecffbf;font-size:11px;font-weight:700;letter-spacing:.04em;line-height:15px}.key-slot.is-locked{opacity:.35}.hud-boss{position:absolute;bottom:78px;left:50%;transform:translate(-50%);display:flex;flex-direction:column;gap:5px;width:min(460px,62vw);padding:8px 12px;border:1px solid rgba(248,113,113,.42);border-radius:var(--radius);background:#0a0e16b8;pointer-events:none}.hud-boss-name{color:#fecaca;font-size:13px;font-weight:650;letter-spacing:.09em;text-align:center;text-transform:uppercase}.bar-fill.boss{background:linear-gradient(90deg,#991b1b,#f87171)}.hud-class{position:absolute;right:16px;bottom:16px;padding:9px 14px;border:1px solid rgba(94,234,212,.4);border-radius:999px;background:#0a0e16d1;color:var(--accent);font-size:13px;font-weight:600;cursor:pointer;pointer-events:auto;transition:border-color .12s ease,filter .12s ease}.hud-class:hover{border-color:var(--accent-strong);filter:brightness(1.12)}.class-panel{width:min(680px,100%);max-height:min(88vh,720px);overflow-y:auto}.class-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px;margin-bottom:14px}.class-card{display:flex;flex-direction:column;gap:8px;padding:14px;border:1px solid var(--panel-border);border-radius:10px;background:#06091099;color:inherit;text-align:left;cursor:pointer;transition:border-color .12s ease,background .12s ease}.class-card:hover:not(:disabled){border-color:#788cbe8c;background:#0c121ebf}.class-card:disabled{cursor:not-allowed;opacity:.5}.class-card.is-active{border-color:#2dd4bf8c;background:#2dd4bf1a}.class-card-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.class-card-name{font-size:17px;font-weight:650}.class-badge{padding:2px 8px;border:1px solid rgba(45,212,191,.5);border-radius:999px;color:var(--accent);font-size:11px}.class-card-tag{color:var(--text-dim);font-size:13px}.class-moves{display:flex;flex-direction:column;gap:6px;margin:0;padding:0;list-style:none}.class-move{display:grid;grid-template-columns:1fr auto;gap:0 8px;font-size:12px}.class-move-key{grid-column:2;grid-row:1;color:var(--accent);font-variant-numeric:tabular-nums;text-align:right}.class-move-name{grid-column:1;grid-row:1;font-weight:600}.class-move-stat{grid-column:1 / -1;grid-row:2;color:var(--text-dim)}.class-section{margin-top:2px;padding-top:8px;border-top:1px solid var(--panel-border);color:var(--text-dim);font-size:11px;letter-spacing:.06em;text-transform:uppercase}.class-card-hint{color:#93a0c0bf;font-size:12px;line-height:1.4}.death{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;background:#3c080c52}.death-title{margin:0;font-size:40px;font-weight:700;letter-spacing:.06em;color:#ffb4b4;text-shadow:0 4px 18px rgba(0,0,0,.7)}.death-countdown{margin:0;color:var(--text);font-variant-numeric:tabular-nums}.damage-flash{position:absolute;inset:0;opacity:0;background:radial-gradient(ellipse at center,#dc262600 32%,#dc26268c 74%,#991b1be6)}.hhs-killfeed{display:flex;flex-direction:column;align-items:flex-end;gap:5px;padding:78px 16px 0}.kill-line{max-width:min(320px,62vw);padding:4px 10px;border:1px solid var(--panel-border);border-radius:8px;background:#0a0e16b8;color:var(--text-dim);font-size:12.5px;line-height:1.35;text-align:right;animation:hhs-kill-in .16s ease-out;transition:opacity .24s ease,transform .24s ease}.kill-name{color:var(--text);font-weight:600}.kill-blades{margin:0 7px;color:var(--text-dim)}.kill-note{color:#fbbf24d9}.kill-line.is-kill{border-color:#2dd4bf80;color:#99f6e4}.kill-line.is-kill .kill-name{color:var(--accent)}.kill-line.is-death{border-color:#f8717180;color:#fecaca}.kill-line.is-death .kill-name{color:#fca5a5}.kill-line.is-leaving{opacity:0;transform:translate(8px)}@keyframes hhs-kill-in{0%{opacity:0;transform:translate(10px)}}.hhs-debug{position:absolute;top:152px;left:16px;width:236px;padding:8px 10px;border:1px solid var(--panel-border);border-radius:10px;background:#060910db;color:var(--text-dim);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11.5px;line-height:1.55;font-variant-numeric:tabular-nums;pointer-events:none}.hhs-debug-row{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.hhs-debug-value{color:var(--text);white-space:nowrap}.hhs-debug-title{margin-top:7px;padding-top:7px;border-top:1px solid var(--panel-border);color:var(--accent);font-size:10px;letter-spacing:.12em;text-transform:uppercase}.hhs-debug-title:first-child{margin-top:0;padding-top:0;border-top:0}.hhs-toasts{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:8px;padding-top:92px}.toast{padding:8px 14px;border:1px solid var(--panel-border);border-radius:999px;background:#0a0e16e6;font-size:13px;box-shadow:var(--shadow);animation:hhs-toast-in .18s ease-out;transition:opacity .24s ease,transform .24s ease}.toast-good{border-color:#4ade8073;color:#bbf7d0}.toast-bad{border-color:#f8717173;color:#fecaca}.toast.is-leaving{opacity:0;transform:translateY(-6px)}@keyframes hhs-toast-in{0%{opacity:0;transform:translateY(-8px)}}@media(max-width:640px){.hud-left{min-width:190px}.hhs-killfeed{padding:132px 10px 0;gap:4px}.kill-line{max-width:66vw;font-size:12px}.key-slot{width:44px;height:44px;border-radius:9px}.key-slot-icon{width:22px;height:22px}.key-slot-power,.key-slot-power+.key-slot-boon{margin-left:10px}.key-slot-timer{font-size:16px}.hud-boss{bottom:68px;width:min(320px,88vw)}}.hidden{display:none}
