.build-version-tag{position:fixed;right:6px;bottom:4px;z-index:9999;padding:2px 6px;background:#000000b8;color:#9fe8ff;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10px;line-height:1.2;letter-spacing:.5px;border:1px solid rgba(159,232,255,.28);border-radius:2px;pointer-events:none;-webkit-user-select:none;user-select:none;white-space:nowrap}:root{--bg: #0c0c0c;--panel: rgba(8, 8, 8, .84);--panel-strong: rgba(0, 0, 0, .94);--gold: #fcd8a8;--ink: #f8efc6;--muted: #d8c48c;--danger: #ff8d72;--heal: #8effa7;--font-ui: "Lucida Console", "Consolas", "Courier New", monospace}*{box-sizing:border-box}html,body,#app{width:100%;height:100%;margin:0}body{overflow:hidden;background:var(--bg);color:var(--ink);font-family:var(--font-ui)}button,input,select,textarea{font:inherit}.shell{position:relative;width:100%;height:100%;overflow:hidden}.game-root{position:absolute;inset:0}.game-root canvas{width:100%;height:100%;image-rendering:pixelated;touch-action:none}.hud{position:absolute;inset:0;pointer-events:none}.panel{background:linear-gradient(180deg,#c84c0c1a,#c84c0c00),var(--panel);border:2px solid var(--gold);box-shadow:0 8px #00000047,0 0 0 2px #000000d1}.top-strip,.collapse-chip{transition:opacity .14s ease}.hud.is-menu .top-strip,.hud.is-menu .collapse-chip{opacity:0}.top-strip{position:absolute;top:18px;left:18px;display:flex;gap:18px;align-items:center;padding:10px 14px}.metric{display:grid;gap:2px;min-width:68px}.metric-label{color:var(--muted);font-size:11px;letter-spacing:.12em;text-transform:uppercase}.metric-value{font-size:28px;line-height:1;text-shadow:2px 2px 0 #000}.collapse-chip{position:absolute;top:18px;right:18px;width:min(280px,calc(100vw - 36px));display:grid;gap:8px;padding:10px 14px}.collapse-chip strong{font-size:18px;line-height:1.15}.collapse-bar{height:10px;overflow:hidden;border:2px solid #000;background:#ffffff14}.collapse-bar>span{display:block;width:0%;height:100%;background:linear-gradient(90deg,#a86518,#fcd8a8)}.collapse-detail{color:var(--muted);font-size:12px;letter-spacing:.1em;text-transform:uppercase}.overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:24px;pointer-events:none;background:linear-gradient(180deg,#0000002e,#0000008f),repeating-linear-gradient(180deg,#0003 0 4px,#0000000f 4px 8px);opacity:0;transition:opacity .16s ease}.overlay.is-visible{opacity:1;pointer-events:auto}.overlay-card{width:min(640px,100%);padding:26px 28px 30px;text-align:center}.overlay-kicker{margin:0 0 10px;color:var(--muted);font-size:14px;letter-spacing:.22em;text-transform:uppercase}.overlay-card h1{margin:0;font-size:clamp(34px,8vw,78px);line-height:.94;letter-spacing:.1em;text-transform:uppercase;text-shadow:4px 4px 0 #000}.overlay-copy{margin:16px 0 0;font-size:clamp(18px,3vw,24px);line-height:1.3;text-transform:uppercase}.overlay-note{margin:10px 0 0;color:var(--muted);font-size:13px;line-height:1.4;text-transform:uppercase}.overlay-button{pointer-events:auto;margin-top:22px;padding:14px 24px;border:2px solid var(--gold);background:linear-gradient(180deg,#fcd8a829,#fcd8a800),var(--panel-strong);color:var(--ink);font-size:18px;letter-spacing:.14em;text-transform:uppercase;text-shadow:2px 2px 0 #000;cursor:pointer}.overlay-button:hover,.overlay-button:focus-visible{outline:none;border-color:#fcfcfc}.overlay{justify-content:flex-start;padding:clamp(28px,7vw,86px);background:linear-gradient(90deg,#000000f0,#000000b8 42%,#00000047 72%,#000000b3),repeating-linear-gradient(180deg,#00000038 0 3px,#0000000d 3px 6px)}.overlay-card{width:min(560px,calc(100vw - 56px));padding:0 0 0 24px;border:0;border-left:5px solid var(--gold);background:transparent;box-shadow:none;text-align:left}.overlay-kicker{margin-bottom:14px;color:#d9ba77;font-size:clamp(12px,1.4vw,16px);letter-spacing:.26em}.overlay-card h1{font-size:clamp(54px,10vw,112px);line-height:.86;letter-spacing:.04em;text-shadow:5px 5px 0 #000,9px 9px 0 rgba(95,43,16,.9)}.overlay-copy{max-width:34rem;margin-top:22px;color:#f0d595;font-size:clamp(17px,2.4vw,28px);letter-spacing:.1em}.overlay-note,.overlay-stats{max-width:34rem;color:#f8efc6c2;letter-spacing:.12em}.overlay-button{min-width:180px;margin-top:24px;border:0;border-left:5px solid var(--gold);background:#000000c7;box-shadow:inset 0 0 0 2px #fcd8a847,5px 5px #000000b3;text-align:left;transition:transform 90ms steps(2,end),background 90ms linear}.overlay-button:hover,.overlay-button:focus-visible{transform:translate(6px);border-left-color:#fff4c7;background:#171108eb}.accent-danger{color:var(--danger)}.accent-heal{color:var(--heal)}.accent-rupee{color:#7fd6ff}.join-screen{width:100%;height:100%;display:flex;align-items:center;justify-content:center;padding:24px;background:radial-gradient(circle at top,rgba(252,216,168,.12),transparent 40%),linear-gradient(180deg,#120d08,#090908 65%)}.join-card{width:min(520px,100%);display:grid;gap:16px;padding:24px;background:linear-gradient(180deg,#c84c0c1f,#c84c0c00),var(--panel-strong);border:2px solid var(--gold);box-shadow:0 10px #00000059,0 0 0 2px #000000d9}.join-card h1,.join-card p{margin:0}.join-card h1{font-size:clamp(32px,8vw,54px);line-height:.95;letter-spacing:.08em;text-transform:uppercase;text-shadow:4px 4px 0 #000}.join-card p{color:var(--muted);line-height:1.5}.join-card label{display:grid;gap:8px;color:var(--muted);font-size:14px;letter-spacing:.08em;text-transform:uppercase}.join-card input{width:100%;padding:12px 14px;border:2px solid var(--gold);background:#00000080;color:var(--ink)}.join-buttons{display:flex;gap:12px;flex-wrap:wrap}.join-buttons button{flex:1 1 200px;padding:14px 18px;border:2px solid var(--gold);background:linear-gradient(180deg,#fcd8a824,#fcd8a800),var(--panel-strong);color:var(--ink);letter-spacing:.08em;text-transform:uppercase;cursor:pointer}.join-buttons .secondary{border-color:#fcd8a899}.join-status{min-height:1.2em;color:var(--ink)}.title-screen{position:relative;width:100%;height:100%;overflow:hidden;display:flex;align-items:center;justify-content:center;background:#000;color:var(--gold)}.title-screen:after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(0deg,#0000 0px 2px,#0000002e 3px 4px);pointer-events:none;z-index:2}.title-sky{position:absolute;inset:0;background:radial-gradient(ellipse at 50% 20%,rgba(255,200,92,.1),transparent 60%),radial-gradient(ellipse at 50% 90%,rgba(180,92,32,.08),transparent 60%);z-index:1}.title-card{position:relative;z-index:3;width:min(560px,92vw);padding:32px 28px 24px;display:grid;gap:18px;text-align:center;background:#000;border:3px solid var(--gold);box-shadow:0 0 0 4px #000,0 0 0 6px var(--gold),0 16px 40px #000000b3}.title-mark{display:grid;gap:6px;justify-items:center}.title-triforce{position:relative;width:72px;height:64px;margin-bottom:8px}.title-triforce>span{position:absolute;width:0;height:0;border-style:solid;border-color:transparent transparent var(--gold) transparent;filter:drop-shadow(2px 2px 0 #000)}.title-triforce .triforce-a{left:18px;top:0;border-width:0 18px 30px 18px}.title-triforce .triforce-b{left:0;bottom:0;border-width:0 18px 30px 18px}.title-triforce .triforce-c{right:0;bottom:0;border-width:0 18px 30px 18px}.title-word{display:flex;justify-content:center;gap:6px;margin:0;font-family:Courier New,Consolas,monospace;font-weight:900;font-size:clamp(36px,9vw,64px);letter-spacing:.12em;color:var(--gold);text-shadow:3px 3px 0 #000,6px 6px 0 rgba(0,0,0,.4);line-height:1}.title-word-small{font-size:clamp(22px,5.5vw,38px);letter-spacing:.18em;color:#f4e3a6}.title-word span{display:inline-block}@keyframes title-pulse{0%,to{transform:translateY(0)}50%{transform:translateY(-2px)}}.title-word span:nth-child(1){animation:title-pulse 2s ease-in-out infinite;animation-delay:0s}.title-word span:nth-child(2){animation:title-pulse 2s ease-in-out infinite;animation-delay:.12s}.title-word span:nth-child(3){animation:title-pulse 2s ease-in-out infinite;animation-delay:.24s}.title-word span:nth-child(4){animation:title-pulse 2s ease-in-out infinite;animation-delay:.36s}.title-word span:nth-child(5){animation:title-pulse 2s ease-in-out infinite;animation-delay:.48s}.title-word span:nth-child(6){animation:title-pulse 2s ease-in-out infinite;animation-delay:.6s}.title-tag{margin:0;color:#d8c48c;font-size:13px;letter-spacing:.14em;text-transform:uppercase}.title-form{display:grid;gap:10px;text-align:left}.title-form label{display:grid;gap:4px;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:#d8c48c}.title-form input{background:#000;border:2px solid var(--gold);color:var(--ink);padding:10px 12px;font-family:Courier New,monospace;font-size:14px;letter-spacing:.08em}.title-form input:focus{outline:none;background:#1a1409}.title-buttons{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}.title-button{flex:1 1 180px;padding:12px 14px;background:#000;border:2px solid var(--gold);color:var(--gold);font-family:Courier New,monospace;font-size:12px;letter-spacing:.16em;text-transform:uppercase;cursor:pointer;transition:background .12s linear}.title-button:hover:not(:disabled){background:#fcd8a81f}.title-button:disabled{opacity:.45;cursor:default}.title-button-secondary{border-color:#8c7644;color:#c9b37a}.title-status{margin:0;min-height:2.4em;display:grid;gap:2px}.title-status .queue-line{color:var(--gold);font-size:14px;letter-spacing:.12em;text-transform:uppercase}.title-status .queue-countdown{color:#ffcb56;font-size:20px;font-weight:700;letter-spacing:.1em;text-shadow:2px 2px 0 #000}.title-screen{display:block;background:#050604;isolation:isolate}.title-screen:before{content:"";position:absolute;inset:-4%;z-index:0;background-image:url(/user-assets/zelda/overworld-q1-bg.png);background-repeat:no-repeat;background-size:min(280vw,4352px) auto;background-position:54% 45%;image-rendering:pixelated;opacity:.48;filter:saturate(.88) contrast(1.12);transform:scale(1.02)}.title-screen:after{z-index:2;background:repeating-linear-gradient(0deg,#0000 0px 2px,#00000047 3px 4px);mix-blend-mode:multiply}.title-sky{z-index:1;background:linear-gradient(90deg,#000000f2,#000000db 34%,#00000059 62%,#000000b8),radial-gradient(circle at 18% 26%,rgba(252,216,168,.17),transparent 34%),radial-gradient(circle at 74% 64%,rgba(13,33,20,.78),transparent 48%),linear-gradient(180deg,#0000001f,#0000009e)}.title-card{width:100%;min-height:100%;padding:clamp(24px,5vw,64px);grid-template-columns:minmax(300px,560px) minmax(120px,1fr);grid-template-rows:1fr auto auto;column-gap:clamp(24px,8vw,120px);align-items:center;text-align:left;background:transparent;border:0;box-shadow:none}.title-card:after{content:"17 x 8 OVERWORLD";position:absolute;right:clamp(22px,5vw,72px);bottom:clamp(18px,4vw,46px);padding:6px 10px;border-left:3px solid var(--gold);color:#fcd8a8bd;font-size:11px;letter-spacing:.22em;text-transform:uppercase;text-shadow:2px 2px 0 #000}.title-mark{align-self:end;gap:10px;justify-items:start;grid-column:1}.title-triforce{width:68px;height:60px;margin-bottom:2px}.title-triforce>span{filter:drop-shadow(4px 4px 0 #000)}.title-triforce .triforce-a{left:17px;border-width:0 17px 28px 17px}.title-triforce .triforce-b,.title-triforce .triforce-c{border-width:0 17px 28px 17px}.title-kicker{margin:0;color:#d9ba77;font-size:clamp(12px,1.4vw,16px);letter-spacing:.26em;text-transform:uppercase;text-shadow:2px 2px 0 #000}.title-word{display:grid;gap:2px;justify-content:start;font-size:clamp(50px,8vw,96px);letter-spacing:.03em;line-height:.82;text-align:left;text-transform:uppercase;text-shadow:5px 5px 0 #000,9px 9px 0 rgba(95,43,16,.9)}.title-word span{animation:none}@keyframes title-word-step{0%,to{transform:translateZ(0)}50%{transform:translate3d(0,-3px,0)}}.title-word span:last-child{color:#f4e3a6;animation:title-word-step 2.4s steps(2,end) infinite}.title-tag{grid-column:1;margin:14px 0 0;max-width:34rem;color:#f0d595;font-size:clamp(15px,1.8vw,20px);line-height:1.35;letter-spacing:.12em;text-shadow:2px 2px 0 #000}.title-form{grid-column:1;width:min(390px,100%);gap:8px;margin-top:20px}.title-form label{gap:8px;color:#d9ba77;font-size:12px;letter-spacing:.22em;text-shadow:2px 2px 0 #000}.title-form input{min-height:50px;border:0;border-left:5px solid var(--gold);background:#000000c7;box-shadow:inset 0 0 0 2px #fcd8a847,5px 5px #000000b3;font-size:18px;text-transform:uppercase}.title-form input:focus{outline:2px solid #fff4c7;outline-offset:3px;background:#120f08}.title-buttons{grid-column:1;display:grid;width:min(420px,100%);gap:10px;margin-top:18px;justify-content:stretch}.title-button{display:flex;align-items:center;justify-content:flex-start;min-height:58px;padding:12px 18px;border:0;border-left:5px solid #7d5b24;background:#000000c7;box-shadow:inset 0 0 0 2px #fcd8a847,5px 5px #000000b3;text-align:left;transition:transform 90ms steps(2,end),border-color 90ms linear,background 90ms linear}.title-button span{font-size:clamp(18px,2vw,24px);letter-spacing:.14em;text-transform:uppercase;text-shadow:2px 2px 0 #000}.title-button:hover:not(:disabled){transform:translate(6px);border-left-color:var(--gold);background:#171108eb}.title-button:focus-visible{outline:2px solid #fff4c7;outline-offset:3px}.title-button-primary{border-left-color:var(--gold)}.title-button-secondary{color:#c9b37a}.title-status{grid-column:1;min-height:1.4em;color:var(--ink);text-shadow:2px 2px 0 #000}.title-status .queue-line{font-size:15px}.title-status .queue-countdown{font-size:22px}@media(prefers-reduced-motion:reduce){.title-word span:last-child{animation:none}.title-button{transition:none}}.kill-feed{position:absolute;top:16px;right:16px;width:240px;display:flex;flex-direction:column;gap:4px;pointer-events:none;z-index:5;font-family:Courier New,monospace;font-size:12px;letter-spacing:.08em;text-align:right}.feed-line{padding:3px 8px;background:#0009;border-right:3px solid var(--gold);color:var(--ink);text-shadow:1px 1px 0 #000;transition:opacity .24s linear}.feed-actor{color:var(--gold)}.feed-verb{color:var(--danger);margin:0 4px}.feed-target{color:#d8c48c}.chat-panel{position:absolute;left:12px;bottom:12px;width:min(360px,calc(100vw - 24px));z-index:7;pointer-events:auto;font-family:var(--font-ui)}.chat-log{max-height:108px;display:flex;flex-direction:column;justify-content:flex-end;gap:3px;overflow:hidden;margin-bottom:5px;pointer-events:none}.chat-line{display:grid;grid-template-columns:18px minmax(48px,max-content) 1fr;gap:5px;align-items:baseline;padding:3px 6px;background:#000000ad;border-left:2px solid var(--gold);color:var(--ink);font-size:11px;line-height:1.25;text-shadow:1px 1px 0 #000}.chat-global{border-left-color:#6fd6ff}.chat-tag{color:#000;background:var(--gold);padding:0 3px;text-align:center;text-shadow:none}.chat-global .chat-tag{background:#6fd6ff}.chat-name{max-width:120px;overflow:hidden;color:var(--gold);font-weight:700;text-overflow:ellipsis;white-space:nowrap}.chat-text{min-width:0;overflow-wrap:anywhere}.chat-form{display:grid;grid-template-columns:auto 1fr;gap:5px;padding:5px;background:#000000d1;border:2px solid var(--gold)}.chat-form:focus-within{box-shadow:0 0 0 2px #000,0 0 0 4px #fcd8a859}.chat-scope{display:flex}.chat-scope button{border:0;border-right:1px solid rgba(252,216,168,.35);background:#111;color:var(--muted);padding:4px 6px;font-family:inherit;font-size:10px;letter-spacing:0;text-transform:uppercase;cursor:pointer}.chat-scope button:last-child{border-right:0}.chat-scope button.is-active{background:var(--gold);color:#000}.chat-form input{min-width:0;border:0;outline:1px solid rgba(252,216,168,.35);background:#000;color:var(--ink);padding:4px 6px;font-family:inherit;font-size:11px}.hud.is-menu .chat-panel,.hud.is-paused .chat-panel{display:none}.shop-prompt{position:absolute;bottom:48px;left:50%;transform:translate(-50%);padding:6px 14px;background:#000;color:var(--gold);border:2px solid var(--gold);font-family:Courier New,monospace;font-size:11px;letter-spacing:.16em;text-transform:uppercase;text-shadow:1px 1px 0 #000;pointer-events:none;z-index:6;animation:shop-prompt-pulse 1s ease-in-out infinite alternate}@keyframes shop-prompt-pulse{0%{opacity:.65}to{opacity:1}}.shop-modal{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#0000008c;z-index:10;font-family:Courier New,monospace}.shop-modal[hidden]{display:none}.shop-panel{width:min(380px,90vw);background:#000;border:3px solid var(--gold);box-shadow:0 0 0 4px #000,0 0 0 6px var(--gold);color:var(--ink);padding:14px 16px}.shop-header{display:flex;justify-content:space-between;align-items:baseline;padding-bottom:6px;border-bottom:2px solid var(--gold);margin-bottom:8px}.shop-header h3{margin:0;color:var(--gold);font-size:16px;letter-spacing:.14em;text-transform:uppercase}.shop-close{font-size:10px;color:#d8c48c;letter-spacing:.1em;text-transform:uppercase}.shop-close kbd{background:#ffffff14;padding:1px 4px;border-radius:2px;font-family:inherit}.shop-list{list-style:none;margin:0;padding:0;display:grid;gap:2px}.shop-row{display:flex;justify-content:space-between;padding:6px 8px;background:#fcd8a80a;border-left:3px solid transparent;font-size:12px;letter-spacing:.08em}.shop-row.is-selected{background:#fcd8a82e;border-left-color:var(--gold);color:var(--gold)}.shop-row.is-unavailable{opacity:.45}.shop-item-name{text-transform:uppercase}.shop-item-meta{color:#d8c48c}.shop-footer{margin-top:10px;padding-top:8px;border-top:2px solid var(--gold);display:flex;justify-content:space-between;font-size:11px;color:#d8c48c;letter-spacing:.1em}.shop-footer strong{color:var(--gold)}.hearts{display:inline-flex;gap:2px;font-family:Arial Unicode MS,Segoe UI Symbol,sans-serif;font-size:14px;line-height:1}.heart{text-shadow:1px 1px 0 #000}.heart-full{color:#ff4f57}.heart-half{color:#ff4f57;position:relative}.heart-half:after{content:"";position:absolute;top:0;right:0;width:50%;height:100%;background:#1a1409}.heart-empty{color:#5a3636}@media(max-width:700px){.top-strip{top:12px;left:12px;right:12px;gap:10px;justify-content:space-between;flex-wrap:wrap}.metric{min-width:52px}.metric-value{font-size:20px}.collapse-chip{inset:auto 12px 72px;width:auto}.title-screen:before{background-size:auto 118%;background-position:58% 50%;opacity:.38}.title-card{min-height:100%;grid-template-columns:1fr;padding:24px;align-content:center}.title-card:after{display:none}.title-word{font-size:clamp(48px,17vw,78px)}.title-form,.title-buttons{width:100%}.overlay{align-items:center;padding:24px}.overlay-card{width:min(520px,100%);padding:0 0 0 18px}}:root{--hud-bar-height: clamp(58px, 8.5vh, 78px)}.top-strip.panel{position:absolute;top:0;left:0;right:0;height:var(--hud-bar-height);display:grid;grid-template-columns:minmax(74px,.8fr) repeat(4,minmax(72px,1fr));align-items:center;gap:clamp(10px,3vw,42px);padding:10px clamp(16px,4vw,44px);background:#000;border:0;border-bottom:3px solid #090909;box-shadow:none}.top-strip .metric{min-width:0;gap:4px}.top-strip .metric-label{color:#f1d495;font-size:clamp(10px,1vw,13px);letter-spacing:.22em}.top-strip .metric-value{color:#f8efc6;font-size:clamp(26px,3.3vw,44px);line-height:.9;letter-spacing:.03em;text-shadow:none}.top-strip .hearts{align-items:end;gap:4px;font-size:clamp(13px,1.6vw,18px)}.top-strip .heart{text-shadow:none}.collapse-chip.panel{top:calc(var(--hud-bar-height) + 10px);right:12px;width:min(236px,calc(100vw - 24px));padding:8px 10px;border:0;border-left:4px solid #fcd8a8;background:#000000d1;box-shadow:none}.collapse-chip strong{font-size:14px}.collapse-detail{font-size:10px}@media(max-width:700px){:root{--hud-bar-height: 62px}.top-strip.panel{top:0;left:0;right:0;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;padding:8px 10px}.top-strip .metric-label{font-size:8px;letter-spacing:.12em}.top-strip .metric-value{font-size:22px}.collapse-chip.panel{top:calc(var(--hud-bar-height) + 8px);left:auto;right:8px;bottom:auto;width:min(190px,calc(100vw - 16px))}}.admin-app{min-height:100vh;background:linear-gradient(180deg,#080e12f5,#05080bfa),#05080b}.admin-app [hidden]{display:none!important}.admin-shell{width:min(1440px,calc(100vw - 32px));margin:0 auto;padding:24px 0 40px;color:#f6ebc3}.admin-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px}.admin-header h1,.admin-room h2,.admin-panel h2,.admin-panel h3{margin:0;font-family:"Press Start 2P",monospace;letter-spacing:0}.admin-kicker,.admin-subtitle,.admin-room-head p,.admin-stat-hint{margin:0;color:#f6ebc3b8}.admin-kicker{margin-bottom:8px;text-transform:uppercase;font-size:11px}.admin-subtitle{margin-top:10px;font-size:13px}.admin-actions{display:flex;gap:10px;flex-wrap:wrap}.admin-button{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 14px;border:1px solid rgba(242,198,92,.34);background:#161e27e0;color:#f6ebc3;text-decoration:none;font:inherit;cursor:pointer}.admin-button-primary{background:#264d8f;border-color:#85a9ff85}.admin-panel,.admin-room,.admin-empty{border:1px solid rgba(242,198,92,.18);background:#0a0e13f0;box-shadow:0 0 0 1px #ffffff0a inset}.admin-panel,.admin-empty{padding:16px;margin-bottom:18px}.admin-room-list{display:grid;gap:18px}.admin-room{padding:18px}.admin-room-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px}.admin-room-meta{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.admin-pill,.admin-chip{display:inline-flex;align-items:center;min-height:28px;padding:0 10px;border:1px solid rgba(242,198,92,.18);background:#12171fe0;color:#f6ebc3}.admin-chip-row{display:flex;flex-wrap:wrap;gap:8px}.admin-chip-warn{border-color:#e5533d7a;background:#54111180;color:#ffd4cc}.admin-chip-empty{color:#f6ebc38c}.admin-section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px}.admin-section-copy,.admin-empty-copy{margin:0;color:#f6ebc3b8}.admin-room-picker{display:flex;flex-wrap:wrap;gap:10px}.admin-room-button,.admin-zone-button{border:1px solid rgba(242,198,92,.18);background:#12171fe0;color:#f6ebc3;font:inherit;cursor:pointer}.admin-room-button{display:flex;flex-direction:column;align-items:flex-start;gap:4px;min-width:190px;padding:10px 12px}.admin-room-button-title{color:#fff7dc}.admin-room-button-meta{color:#f6ebc3b8;font-size:12px}.admin-room-button.is-selected,.admin-zone-button.is-selected{border-color:#85a9ff85;background:#264d8f66}.admin-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(320px,.9fr);align-items:start;gap:18px;margin-bottom:18px}.admin-viewer-panel{margin-bottom:0}.admin-canvas-frame{position:relative;border:1px solid rgba(242,198,92,.14);background:#05080b;overflow:hidden}.admin-canvas{display:block;width:100%;aspect-ratio:34 / 11;background:#05080b;cursor:crosshair}.admin-viewer-hud{position:absolute;left:12px;right:12px;top:12px;display:flex;justify-content:space-between;align-items:flex-start;gap:12px;pointer-events:none}.admin-viewer-badges,.admin-zone-tabs,.admin-side-stack,.admin-room-meta-stack{display:flex;flex-wrap:wrap;gap:8px}.admin-zone-tabs{justify-content:flex-end}.admin-zone-button{min-height:32px;padding:0 10px}.admin-viewer-meta{display:flex;flex-wrap:wrap;gap:8px;padding:6px 8px;border:1px solid rgba(242,198,92,.18);background:#080b0fe0;color:#fff7dc}.admin-side-stack,.admin-room-meta-stack{flex-direction:column}.admin-side-stack>.admin-panel{margin-bottom:0}.admin-room-meta-line{color:#f6ebc3}.admin-entity-panel,.admin-stat-grid,.admin-section-grid{display:grid;gap:12px}.admin-stat-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.admin-section-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));margin:16px 0}.admin-stat{min-height:96px;padding:14px;border:1px solid rgba(242,198,92,.12);background:#10141ceb}.admin-stat-label{color:#f6ebc3bd;font-size:12px;text-transform:uppercase}.admin-stat-value{margin-top:10px;font-size:24px;color:#fff7dc}.admin-panel h2,.admin-panel h3{margin-bottom:12px}.admin-details{margin-top:14px}.admin-details summary{cursor:pointer;color:#fff7dc;margin-bottom:12px}.admin-table-wrap{overflow:auto;border:1px solid rgba(242,198,92,.14);background:#090c10e0}.admin-table{width:100%;border-collapse:collapse;min-width:760px}.admin-table th,.admin-table td{padding:10px 12px;border-bottom:1px solid rgba(242,198,92,.1);text-align:left;vertical-align:top}.admin-table th{position:sticky;top:0;background:#141b23f7;color:#fff2c1;z-index:1}.admin-pre{margin:0;padding:14px;overflow:auto;background:#080b0ff0;border:1px solid rgba(242,198,92,.12);color:#d7e3ff;font-family:Cascadia Mono,Consolas,monospace;font-size:12px;line-height:1.55}.admin-error p{margin:0;color:#ffd4cc}.admin-auth-panel{max-width:520px;margin-bottom:0}.admin-login-form,.admin-follow-panel{display:grid;gap:12px}.admin-login-label,.admin-follow-label{display:grid;gap:8px}.admin-login-label span,.admin-follow-copy{color:#f6ebc3b8}.admin-login-input,.admin-follow-select{min-height:40px;padding:0 12px;border:1px solid rgba(242,198,92,.18);background:#090c10e0;color:#fff7dc;font:inherit}.admin-login-error{margin:0;color:#ffd4cc}.admin-follow-row{cursor:pointer}.admin-follow-row:hover td{background:#264d8f2e}@media(max-width:900px){.admin-shell{width:min(100vw - 20px,1440px);padding-top:18px}.admin-header,.admin-room-head,.admin-section-head{flex-direction:column}.admin-room-meta,.admin-actions,.admin-zone-tabs{justify-content:flex-start}.admin-stat-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.admin-layout{grid-template-columns:1fr}}:root{--hud-frame-width: min(100vw, calc(100vh * 1.1034483));--hud-bar-height: calc(var(--hud-frame-width) * .21875);--nes-blue: #3458ff;--nes-red: #e71921;--nes-white: #f8efc6}.game-root{inset:var(--hud-bar-height) 0 0 0;display:block;background:#000}.game-root canvas{width:auto;height:auto;max-width:100%;max-height:100%;image-rendering:pixelated;touch-action:none}.hud.is-menu+.game-root,.hud.is-menu .game-root{inset:0}.title-card:after{display:none}.top-strip.panel.zelda-hud{top:0;left:0;right:0;z-index:14;height:var(--hud-bar-height);display:block;padding:0;background:#000;border:0;box-shadow:none;color:var(--nes-white);font-family:Lucida Console,Consolas,Courier New,monospace;image-rendering:pixelated;overflow:hidden}.hud-rom-frame{position:absolute;top:0;left:50%;width:var(--hud-frame-width);height:100%;transform:translate(-50%);background:#000;image-rendering:pixelated}.hud-canvas{display:block;width:100%;height:100%;image-rendering:pixelated}.collapse-chip.panel,.hud.is-paused .top-strip.panel.zelda-hud,.hud.is-paused .kill-feed{display:none}.kill-feed{top:calc(var(--hud-bar-height) + 8px)}.pause-menu{position:absolute;inset:0;z-index:12;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;min-height:0;padding:16px;background:#000;border:0;color:var(--nes-white);pointer-events:auto}.hud.is-paused .pause-menu{padding:16px}.pause-menu[hidden]{display:none}.pause-rom-screen{width:min(90vw,calc(80vh * 256 / 240));max-width:90vw;height:auto;max-height:72vh;object-fit:contain;image-rendering:pixelated;image-rendering:crisp-edges}.pause-equip-tray{width:min(90vw,calc(80vh * 256 / 240));max-width:90vw;display:flex;flex-direction:column;gap:8px;color:var(--nes-white, #fff);font-family:monospace;font-size:11px}.pause-equip-meta{display:flex;justify-content:space-between;border-top:1px solid #444;padding-top:4px}.inventory-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:4px}.inv-slot{background:#111;border:1px solid #333;color:inherit;padding:8px 4px;font-family:inherit;font-size:10px;display:flex;flex-direction:column;align-items:center;gap:4px;cursor:pointer}.inv-slot:hover:not(.is-passive){border-color:var(--nes-yellow, #fcd800)}.inv-slot.is-equipped{border-color:var(--nes-yellow, #fcd800);background:#2a2200}.inv-slot.is-passive{opacity:.5;cursor:default}.inv-slot[disabled]{cursor:default}.inv-glyph{font-size:22px}.inv-name{text-transform:uppercase}.inv-empty{opacity:.5;font-size:11px}.subscreen-map{background:#002;border:1px solid #333;padding:4px}.pause-footer{display:flex;justify-content:space-between;font-size:11px;border-top:1px solid #444;padding-top:8px}.pause-shrine-ready{color:var(--nes-yellow, #fcd800);animation:shrine-pulse 1s infinite}@keyframes shrine-pulse{0%,to{opacity:1}50%{opacity:.6}}@media(max-width:700px){:root{--hud-frame-width: min(100vw, calc(100vh * 1.1034483));--hud-bar-height: calc(var(--hud-frame-width) * .21875)}.top-strip.panel.zelda-hud{background:#000}.pause-menu,.hud.is-paused .pause-menu{padding:0}.chat-panel{left:8px;right:8px;bottom:8px;width:auto}.chat-log{max-height:84px}.chat-form{grid-template-columns:1fr}.chat-name{max-width:88px}}
