:root{color-scheme:dark;--paper: #e9e9df;--muted: #85899b;--panel: #171925;--line: #ffffff18;--accent: #b8ff55;--pink: #f45091;--blue: #8dd9ff;--shell: #70768d}*{box-sizing:border-box}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}body{margin:0;min-height:100vh;color:var(--paper);background:radial-gradient(circle at 10% 0,#343a58 0,transparent 38rem),linear-gradient(135deg,#141622,#090a0f 75%);font-family:Segoe UI,system-ui,sans-serif}button,input,select{font:inherit}button,select,input{accent-color:var(--pink)}.layout{width:min(1500px,calc(100% - 32px));margin:0 auto;padding:28px 0 50px}.masthead,.shared-heading{display:flex;align-items:end;justify-content:space-between;gap:20px}.masthead{padding-bottom:18px;border-bottom:1px solid var(--line)}.brand-lockup{display:flex;align-items:center;gap:14px;color:inherit;text-decoration:none}.brand-mark{width:clamp(48px,5vw,64px);height:auto;filter:drop-shadow(0 8px 18px #0007)}.brand-copy{display:grid}.brand-copy .eyebrow{margin-bottom:2px}.wordmark{color:var(--paper);font-size:clamp(30px,4vw,50px);line-height:.95;letter-spacing:-.055em}.wordmark>span{color:var(--pink)}.masthead-actions{display:flex;align-items:center;gap:14px}.compare-toggle,.audio-toggle{cursor:pointer;padding:8px 11px;border:1px solid #ffffff24;border-radius:7px;color:#b9bdca;background:#202331;font:700 10px Consolas,monospace}.page-link{padding:8px 11px;border:1px solid #ffffff24;border-radius:7px;color:#d9dbe4;text-decoration:none;font:700 10px Consolas,monospace}.compare-toggle[aria-pressed=true],.audio-toggle[aria-pressed=true]{border-color:#b8ff5566;color:#11131c;background:var(--accent)}.audio-toggle:disabled{cursor:default;opacity:.45}.eyebrow{margin:0 0 5px;color:var(--accent);font:700 10px/1.2 Consolas,monospace;letter-spacing:.18em}h1,h2,h3{margin:0;letter-spacing:-.035em}h1{font-size:clamp(30px,4vw,50px)}h1 em{color:var(--pink);font-style:normal}h2{font-size:22px}h3{font-size:16px}.connection,.viewer-connection{display:flex;align-items:center;gap:8px;color:#aeb2c1;font:11px Consolas,monospace}.connection>span:first-child,.viewer-connection i{width:8px;height:8px;border-radius:50%;background:#d95a62;box-shadow:0 0 0 4px #d95a6222}.connection.online>span:first-child,.viewer.online .viewer-connection i{background:var(--accent);box-shadow:0 0 0 4px #b8ff5522,0 0 14px #b8ff5570}.comparison{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:22px}.comparison.single-viewer{grid-template-columns:minmax(0,560px);justify-content:center}.comparison .viewer{width:min(100%,var(--height-fit-width, 100%));justify-self:center}.viewer{container-type:inline-size;min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:20px;background:#11131ddd;box-shadow:0 24px 70px #0005}.source-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.current-player-badge{max-width:min(230px,35vw);overflow:hidden;padding:3px 5px;border:1px solid #b8ff5580;border-radius:0;color:var(--accent);background:#b8ff5514;font:800 8px Consolas,monospace;text-overflow:ellipsis;white-space:nowrap}.viewer-letter{display:grid;place-items:center;width:34px;height:34px;border:1px solid #b8ff5555;border-radius:7px;color:var(--accent);font:800 16px Consolas,monospace}.viewer:nth-child(2) .viewer-letter{border-color:#8dd9ff66;color:var(--blue)}.viewer-title{font-size:19px}.screen-bezel{margin:3.75cqw;padding:2.9cqw 3.75cqw 3.75cqw;border-radius:2.7cqw 2.7cqw 7.9cqw;background:#242637;box-shadow:inset 0 0 16px #0009}.viewer-meta{display:flex;align-items:center;min-width:0;gap:7px;color:#aeb2c2;font:8px Consolas,monospace;letter-spacing:.07em;white-space:nowrap}.screen-resolution,.viewer-meta .now-playing{flex:none;color:#777d92;font-size:7px}.viewer-meta .source-name{min-width:0;color:#e4e7d9;font-size:9px}.masthead-actions .viewer-meta{max-width:min(510px,48vw)}.screen-footer{display:flex;align-items:center;justify-content:space-between;gap:2.5cqw;min-height:5cqw}.emulation-speed{margin-left:auto;color:#969bac;font:2cqw Consolas,monospace;letter-spacing:.04em;white-space:nowrap}.local-volume{position:relative;display:flex;align-items:center;justify-content:flex-end;min-width:24px;color:#9fa4b5;font:8px Consolas,monospace}.local-volume-toggle{display:grid;place-items:center;width:24px;height:24px;padding:0;border:0;border-radius:5px;color:#d7d7df;background:transparent;cursor:pointer;font-size:15px;line-height:1}.local-volume-toggle:disabled{cursor:default;opacity:.45}.local-volume-toggle[aria-pressed=true]{color:var(--accent)}.local-volume-popover{position:absolute;right:0;bottom:29px;z-index:5;display:grid;grid-template-columns:100px 32px;align-items:center;gap:7px;width:148px;padding:8px 9px;border:1px solid #ffffff22;border-radius:7px;background:#171a28ee;box-shadow:0 10px 24px #0008;opacity:0;pointer-events:none;transform:translateY(4px);transition:opacity .14s ease,transform .14s ease}.local-volume:hover .local-volume-popover,.local-volume:focus-within .local-volume-popover{opacity:1;pointer-events:auto;transform:translateY(0)}.local-volume input{width:100%;height:12px}.local-volume output{color:#d0ff8f;font-size:8px;text-align:right}.lcd{--scanline-opacity: 0;--pixel-grid-opacity: 0;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;width:100%;margin:auto;aspect-ratio:160 / 144;background:#bdca8f;box-shadow:inset 0 0 14px #252917aa,0 0 0 3px #11131e}.lcd:after{content:"";position:absolute;z-index:2;inset:0;pointer-events:none;background-image:repeating-linear-gradient(to bottom,rgb(0 0 0 / var(--scanline-opacity)) 0 1px,transparent 1px 4px),linear-gradient(to right,rgb(8 15 18 / var(--pixel-grid-opacity)) 1px,transparent 1px),linear-gradient(to bottom,rgb(8 15 18 / var(--pixel-grid-opacity)) 1px,transparent 1px);background-size:auto,.625% 100%,100% calc(100% / 144)}canvas{position:relative;z-index:1;display:block;flex:none;width:100%;height:100%;image-rendering:pixelated;image-rendering:crisp-edges}.brand{margin-top:2.3cqw;color:#d7d7df;font-size:2.5cqw;font-weight:800;font-style:italic;letter-spacing:-.05em}.brand i{color:var(--blue);letter-spacing:-.1em}.viewer[data-screen-size="2"] .lcd{width:min(100%,320px)}.viewer[data-screen-size="3"] .lcd{width:min(100%,480px)}.viewer[data-screen-size="4"] .lcd{width:min(100%,640px)}.viewer.frame-hidden .screen-bezel{padding:0;border-radius:0;background:transparent;box-shadow:none}.viewer.frame-hidden .screen-footer{display:none}.viewer.frame-hidden .lcd{box-shadow:0 0 0 1px #ffffff18}.workbench{padding:3px 19px 20px}.field{display:grid;gap:7px;margin-top:14px;color:#c8cad5;font-size:12px}.field>span:first-child{display:flex;justify-content:space-between;gap:8px}.field small{align-self:center;color:var(--accent);font:7px Consolas,monospace;letter-spacing:.08em;text-transform:uppercase}output{color:var(--accent);font:11px Consolas,monospace}input[type=range]{width:100%}select,.field input[type=number]{width:100%;box-sizing:border-box;padding:8px 9px;border:1px solid #ffffff22;border-radius:6px;color:#eee;background:#222534}select:disabled{opacity:.35}.option-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 12px}.field.compact{font-size:11px}.stream-options{margin-top:15px;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:#0d0f17aa}.stream-options>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 12px;cursor:pointer;color:#c8cad5;font-size:11px;list-style:none}.stream-options>summary::-webkit-details-marker{display:none}.stream-options>summary:after{content:"+";color:var(--accent);font:700 14px Consolas,monospace}.stream-options[open]>summary:after{content:"\2212"}.stream-options>summary small{margin-left:auto;color:#73778a;font:8px Consolas,monospace;text-transform:uppercase}.stream-options-body{padding:0 12px 12px;border-top:1px solid var(--line)}.stream-options:not([open])>.stream-options-body{display:none}.comparison:not(.single-viewer) .stream-options{margin-top:0;overflow:visible;border:0;background:transparent}.comparison:not(.single-viewer) .stream-options>summary{display:none}.comparison:not(.single-viewer) .stream-options-body{padding:0;border-top:0}.header-options,.comparison:not(.single-viewer) .header-options{position:relative;flex:none;margin:0;overflow:visible;border:1px solid #8e957055;border-radius:0;background:#1a1d2a;box-shadow:inset 1px 1px #ffffff12,inset -1px -1px #0009}.header-options>summary,.comparison:not(.single-viewer) .header-options>summary{display:flex;padding:4px 6px;color:#d9dbe4;font:700 8px Consolas,monospace}.header-options>summary small{display:none}.header-options>summary:after{margin-left:3px;font-size:11px}.header-options .stream-options-body,.comparison:not(.single-viewer) .header-options .stream-options-body{position:absolute;z-index:8;top:calc(100% + 8px);right:0;width:min(340px,calc(100vw - 48px));padding:4px 13px 14px;border:1px solid #ffffff22;border-radius:10px;background:#11131df5;box-shadow:0 18px 44px #0009}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:18px 0 0;overflow:hidden;border:1px solid var(--line);border-radius:8px}.metrics div{min-width:0;padding:10px 8px;border-right:1px solid #ffffff10;border-bottom:1px solid #ffffff10}.metrics div:nth-child(4n){border-right:0}.metrics div:nth-last-child(-n+4){border-bottom:0}.metrics dt{overflow:hidden;color:#74798c;font:8px Consolas,monospace;text-transform:uppercase;text-overflow:ellipsis;white-space:nowrap}.metrics dd{overflow:hidden;margin:5px 0 0;color:#f4f4ef;font:700 12px Consolas,monospace;text-overflow:ellipsis;white-space:nowrap}.packet-line{margin:9px 1px 0;color:#74798c;font:9px Consolas,monospace}.packet-line strong{color:#cfd2dd}.replay-diagnostics{max-height:108px;overflow:auto}.replay-diagnostics div{margin-top:4px;font:10px Consolas,monospace}.display-options{margin-top:15px;padding-top:12px;border-top:1px solid var(--line)}.display-options summary{cursor:pointer;color:#9da1b2;font:10px Consolas,monospace}.switches{display:flex;align-items:end;flex-wrap:wrap;gap:8px 14px;padding-top:25px}.switches label{display:flex;gap:6px;color:#aeb1c0;font:10px Consolas,monospace;cursor:pointer}.shared-panel{margin-top:22px;padding:20px;border:1px solid var(--line);border-radius:18px;background:#171925dd}.shared-heading{padding-bottom:17px;border-bottom:1px solid var(--line)}.protocol{padding:6px 8px;border:1px solid #b8ff5555;border-radius:4px;color:var(--accent);font:10px Consolas,monospace}.shared-body{display:grid;grid-template-columns:minmax(360px,.8fr) minmax(440px,1.2fr);gap:24px}.controls,.controls *{-webkit-touch-callout:none;-webkit-user-drag:none;-webkit-user-select:none;user-select:none}.controls{position:relative;height:48cqw;min-height:0;-webkit-tap-highlight-color:transparent}.comparison.single-viewer .viewer>.controls{margin:-.4cqw 3.95cqw 2.1cqw;border-top:1px solid var(--line)}.shared-panel.controls-in-viewer .shared-body{grid-template-columns:1fr}.shared-panel.controls-in-viewer{display:none}.controls button{touch-action:none;cursor:pointer;border:0;color:#ddd;background:#272a3d;box-shadow:inset 2px 2px 3px #ffffff17,inset -3px -3px 5px #0008,0 4px 7px #0004}.controls button.pressed{transform:translateY(2px);filter:brightness(.72);box-shadow:inset 2px 2px 5px #000a}.dpad{position:absolute;left:2%;top:7.3cqw;display:grid;width:30cqw;height:30cqw;grid-template:repeat(3,10cqw) / repeat(3,10cqw)}.dpad button{border-radius:1.45cqw}.dpad button:nth-child(1){grid-area:1 / 2}.dpad button:nth-child(2){grid-area:2 / 1}.dpad span{grid-area:2 / 2;background:#272a3d}.dpad button:nth-child(4){grid-area:2 / 3}.dpad button:nth-child(5){grid-area:3 / 2}.action-buttons{position:absolute;right:4%;top:12.1cqw;display:flex;gap:3.75cqw;transform:rotate(-24deg)}.action-buttons button{width:12.9cqw;height:12.9cqw;border-radius:50%;background:#8e2456;font:800 4.6cqw Consolas,monospace}.menu-buttons{position:absolute;left:54%;bottom:5.8cqw;display:flex;gap:3.3cqw;transform:translate(-50%) rotate(-10deg)}.menu-buttons label{display:grid;gap:1cqw;justify-items:center;color:#777c90;font:1.7cqw Consolas,monospace}.menu-buttons button{width:11.25cqw;height:2.7cqw;border-radius:2.1cqw}.keys{position:absolute;bottom:0;left:0;margin:0;color:#73778a;font:1.9cqw Consolas,monospace}.session{padding-top:18px}.session[hidden]{display:none}.section-heading{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.section-heading span{color:#74798c;font:9px Consolas,monospace;text-transform:uppercase}.session-controls{display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:8px;margin-top:14px}.speed-control{display:grid;grid-template-columns:repeat(3,1fr);padding:3px;border:1px solid #ffffff1c;border-radius:7px;background:#10121c}.speed-control button,.utility-button{cursor:pointer;border:0;border-radius:5px;color:#b9bdca;background:transparent;font:700 10px Consolas,monospace}.speed-control button{padding:8px 4px}.speed-control button:hover,.speed-control button.active{color:#11131c;background:var(--accent)}.utility-button{padding:9px;border:1px solid #ffffff22;background:#232635}.utility-button.danger{color:#ff9bbd}.session button:disabled{cursor:wait;opacity:.45}.session-message{min-height:18px;padding-top:7px;color:var(--accent);font:10px Consolas,monospace}.session-message.error{color:#ff8194}.snapshot-gallery{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.snapshot-card{position:relative;overflow:hidden;border:1px solid var(--line);border-radius:7px;background:#10121b}.snapshot-load{display:block;width:100%;cursor:pointer;border:0;padding:0;color:inherit;background:transparent;text-align:left}.snapshot-load img{display:block;width:100%;aspect-ratio:160 / 144;image-rendering:pixelated;background:#222}.snapshot-meta{display:grid;gap:2px;padding:6px 24px 6px 7px}.snapshot-meta strong{overflow:hidden;color:#e7e8e2;font:8px Consolas,monospace;text-overflow:ellipsis}.snapshot-meta small{color:#696e82;font:8px Consolas,monospace}.snapshot-delete{position:absolute;right:4px;bottom:5px;width:19px;height:19px;cursor:pointer;border:0;border-radius:50%;color:#ff8aad;background:#f4509120}.snapshot-empty{margin:6px 0 0;padding:10px;border:1px dashed var(--line);border-radius:7px;color:#686d80;font:9px Consolas,monospace;text-align:center}.session-hint{margin:7px 0 0;color:#666b7e;font:9px Consolas,monospace}.explainer{margin-top:14px;padding:14px 16px;border-left:3px solid var(--accent);color:#aeb1c0;background:#b8ff5509;font-size:11px;line-height:1.55}.explainer strong{display:block;color:#eef0e8}.viewer-layout{max-width:1500px}.client-workbench{padding-top:0}.play-grid{display:grid;grid-template-areas:"chat game players";grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(190px,.46fr);gap:20px;align-items:start;justify-content:center;margin-top:22px}.play-primary{grid-area:game;min-width:0}.play-primary .comparison{margin-top:0}.poll-panel,.presence-panel,.chat-panel{border:1px solid var(--line);border-radius:16px;background:#151722e8;box-shadow:0 18px 44px #0003}.poll-panel{margin-top:14px;padding:15px 17px}.viewport-live-controls{margin:.2cqw 0 1.9cqw;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}.viewport-live-controls .poll-heading{min-height:2.5cqw}.viewport-live-controls .poll-clock{width:100%;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:1.7cqw}.viewport-live-controls .poll-clock strong{overflow:hidden;color:#d9e3b6;font-size:1.7cqw;text-overflow:ellipsis;white-space:nowrap}.viewport-live-controls .poll-clock span{color:#b8ff55;font-size:1.7cqw}.viewport-live-controls .poll-progress{height:.85cqw;margin-top:.85cqw;border:0;border-radius:0;background:#080a10}.viewport-live-controls .poll-progress span{border-radius:0;background:linear-gradient(to bottom,#ffe596,#d6a843 58%,#9c6d20);box-shadow:none}.viewport-live-controls .vote-meter{height:5.6cqw;margin-top:.85cqw;overflow:visible;border:1px solid #05070b;border-radius:0}.viewport-live-controls .vote-segment{overflow:visible;border-right-color:#080a0f}.viewport-live-controls .vote-segment .game-keycap{position:relative;z-index:1;min-width:7.5cqw;height:6.7cqw;padding-inline:1.7cqw;border-radius:1.45cqw;font-size:2.5cqw;transform:translateY(-1.25cqw)}.viewport-live-controls .vote-segment .game-keycap-a,.viewport-live-controls .vote-segment .game-keycap-b{width:7.1cqw;min-width:7.1cqw;border-radius:50%}.viewport-live-controls .vote-segment .game-keycap-start,.viewport-live-controls .vote-segment .game-keycap-select{min-width:11.25cqw;height:4.6cqw;font-size:1.7cqw}.viewport-live-controls .vote-empty{color:#5f6477;font-size:1.7cqw}.viewport-live-controls .vote-legend,.viewport-live-controls .poll-message{display:none}.poll-heading,.presence-heading,.chat-heading{display:flex;align-items:center;justify-content:space-between;gap:14px}.poll-heading h2,.presence-heading h2,.chat-heading h2{font-size:17px}.poll-heading .eyebrow,.presence-heading .eyebrow,.chat-heading .eyebrow{margin-bottom:2px;font-size:8px}.poll-clock{display:grid;justify-items:end;gap:2px;font-family:Consolas,monospace}.poll-clock strong{color:var(--accent);font-size:10px;text-transform:uppercase}.poll-clock span{color:#85899b;font-size:9px}.poll-progress{width:100%;height:4px;margin-top:13px;overflow:hidden;border-radius:999px;background:#ffffff0d}.poll-progress span{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--pink),var(--accent));box-shadow:0 0 10px #b8ff5550;transition:width .1s linear}.poll-progress.inactive span{width:0!important;transition:none}.vote-meter{display:flex;width:100%;height:46px;margin-top:7px;overflow:hidden;border:1px solid #ffffff1c;border-radius:8px;background:#0b0d14}.vote-segment{display:grid;place-items:center;min-width:0;overflow:hidden;border-right:1px solid #080a0f99;background:color-mix(in srgb,var(--vote-color) 72%,#171925);transition:width .24s ease}.vote-segment:last-child{border-right:0}.vote-empty{margin:auto;color:#5f6477;font:8px Consolas,monospace;text-transform:uppercase}.vote-legend{display:flex;flex-wrap:wrap;gap:7px 14px;min-height:24px;margin-top:9px}.vote-legend>span{display:inline-flex;align-items:center;gap:6px;color:#a8acba;font:9px Consolas,monospace}.vote-legend strong{color:var(--vote-color);font:900 11px Consolas,monospace}.game-keycap{display:inline-grid;place-items:center;box-sizing:border-box;min-width:36px;height:32px;padding:0 8px;border:1px solid color-mix(in srgb,var(--key-color) 75%,white);border-radius:7px;color:var(--key-color);background:linear-gradient(145deg,#34384c,#171a27);box-shadow:inset 1px 1px 2px #ffffff20,inset -2px -2px 3px #0008,0 3px 5px #0006;font:900 12px Consolas,monospace;text-shadow:0 1px #000}.game-keycap-a,.game-keycap-b{width:34px;min-width:34px;padding:0;border-radius:50%}.game-keycap-start,.game-keycap-select{min-width:54px;height:22px;border-radius:999px;font-size:8px}.game-keycap.compact{min-width:28px;height:25px;padding-inline:5px;font-size:9px}.game-keycap-a.compact,.game-keycap-b.compact{width:26px;min-width:26px}.game-keycap-start.compact,.game-keycap-select.compact{min-width:45px;height:18px;font-size:7px}.vote-bump{animation:vote-bump .24s steps(3,end)}@keyframes vote-bump{0%,to{transform:translateY(-1.25cqw)}45%{transform:translateY(-2.3cqw)}}.poll-message{min-height:14px;margin:4px 0 0;color:#7f8496;font:9px/1.45 Consolas,monospace}.chat-panel{grid-area:chat;position:sticky;top:18px;width:min(100%,560px);min-width:0;justify-self:end;padding:17px}.players-stack{grid-area:players;position:sticky;top:18px;display:grid;grid-template-rows:repeat(2,minmax(0,1fr));gap:12px;width:min(100%,260px);justify-self:start}.presence-panel,.players-stack .input-votes{min-height:0;padding:17px;overflow:hidden;border:1px solid var(--line);border-radius:16px;background:#151722e8;box-shadow:0 18px 44px #0003}.play-grid.sidebar-synced .chat-panel{display:flex;flex-direction:column;height:var(--gameboy-frame-height)}.play-grid.sidebar-synced .players-stack{height:var(--gameboy-frame-height)}.play-grid.sidebar-synced .chat-messages{height:auto;min-height:72px;flex:1 1 0;overflow-y:hidden}.play-grid.sidebar-synced .chat-messages:hover,.play-grid.sidebar-synced .chat-messages:focus-within{overflow-y:auto}.players-stack .input-votes{display:flex;flex-direction:column;margin:0;border-top:1px solid var(--line)}.players-stack .input-votes-list{min-height:0;max-height:none;flex:1 1 0;overflow-y:hidden}.players-stack .input-votes:hover .input-votes-list,.players-stack .input-votes:focus-within .input-votes-list{overflow-y:auto}.chat-heading>span{color:var(--accent);font:8px Consolas,monospace;text-transform:uppercase}.chat-messages{display:grid;align-content:end;gap:10px;height:min(48vh,430px);min-height:260px;margin-top:13px;padding:11px;overflow-y:auto;overscroll-behavior:contain;border:1px solid #ffffff12;border-radius:9px;background:#0b0d14}.chat-empty{align-self:center;margin:auto;color:#5f6477;font:12px/1.5 Consolas,monospace;text-align:center}.chat-message{min-width:0}.chat-message header{display:flex;align-items:center;gap:6px}.chat-message header i{width:7px;height:7px;flex:none;border-radius:50%;background:var(--player-color)}.chat-message header strong{overflow:hidden;color:var(--player-color);font:700 11px Consolas,monospace;text-overflow:ellipsis;white-space:nowrap}.chat-message header em{padding:1px 3px;border-radius:3px;color:#11131c;background:var(--accent);font:800 7px Consolas,monospace;font-style:normal;text-transform:uppercase}.chat-message header time{margin-left:auto;color:#575c6d;font:8px Consolas,monospace}.chat-message p{margin:4px 0 0 13px;overflow-wrap:anywhere;color:#c8cad5;font-size:12px;line-height:1.45;white-space:pre-wrap}.chat-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px;margin-top:9px}.chat-form input{min-width:0;padding:9px;border:1px solid #ffffff22;border-radius:6px;outline:0;color:#eef0e8;background:#0e1018;font-size:12px}.chat-form input:focus{border-color:#b8ff5570;box-shadow:0 0 0 3px #b8ff5510}.chat-form button{cursor:pointer;padding:8px 10px;border:1px solid #f4509166;border-radius:6px;color:#fff;background:#f45091;font:800 10px Consolas,monospace}.chat-hint{min-height:12px;margin:6px 0 0;color:#626779;font:10px/1.45 Consolas,monospace}.input-votes{margin-top:16px;padding-top:14px;border-top:1px solid #ffffff12}.input-votes .chat-heading{gap:8px}.input-votes .chat-heading>span{color:#777c90;font:7px Consolas,monospace;text-transform:uppercase}.input-votes-list{display:grid;align-content:start;gap:5px;margin-top:9px;padding:8px;border:1px solid #ffffff12;border-radius:8px;background:#0b0d14}.input-vote-round{display:grid;align-content:start;align-self:start;gap:3px;padding:5px;border-bottom:1px solid #ffffff0d}.input-vote-round:last-child{border-bottom:0}.input-vote-round-heading{display:flex;justify-content:space-between;gap:8px;padding:2px 2px 4px;color:#777c90;font:8px Consolas,monospace;text-transform:uppercase}.input-vote-round-heading strong{color:#aeb2c0;font-weight:700}.input-vote-round.history-newest{animation:history-round-in .42s ease-out both}.history-removed{padding:4px 2px 1px;color:#626779;font:7px Consolas,monospace;text-align:center;animation:history-round-out .9s ease-out both}.input-vote{display:flex;align-items:center;gap:8px;min-height:26px;padding:4px 5px;border-radius:5px;background:#ffffff06}.input-vote strong{margin-left:auto;overflow:hidden;color:#c8cad5;font:10px Consolas,monospace;text-overflow:ellipsis;white-space:nowrap}@keyframes history-round-in{0%{opacity:0;transform:translateY(-10px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes history-round-out{0%{opacity:0;transform:translateY(4px)}20%,75%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(3px)}}.presence-count{display:grid;place-items:center;min-width:28px;height:28px;padding-inline:7px;border:1px solid #b8ff5540;border-radius:50%;color:var(--accent);font:700 11px Consolas,monospace}.profile-form{margin-top:15px;padding-top:13px;border-top:1px solid var(--line)}.profile-form>label{display:block;margin-bottom:6px;color:#85899b;font:9px Consolas,monospace;text-transform:uppercase}.profile-form>div{display:grid;grid-template-columns:1fr auto;gap:6px}.profile-form input{min-width:0;padding:8px 9px;border:1px solid #ffffff22;border-radius:6px;outline:0;color:#eef0e8;background:#0e1018;font-size:12px}.profile-form input:focus{border-color:#b8ff5570;box-shadow:0 0 0 3px #b8ff5510}.profile-form button{cursor:pointer;padding:7px 10px;border:1px solid #b8ff5544;border-radius:6px;color:#11131c;background:var(--accent);font:800 10px Consolas,monospace}.profile-hint,.presence-note{color:#6f7487;font:11px/1.5 Consolas,monospace}.profile-hint{min-height:12px;margin:6px 0 0}.presence-note{margin:12px 0 0;padding-top:11px;border-top:1px solid var(--line)}.participant-list{display:grid;gap:4px;max-height:420px;margin:14px 0 0;padding:0;overflow:hidden;list-style:none}.presence-panel:hover .participant-list,.presence-panel:focus-within .participant-list{overflow-y:auto}.participant{display:grid;grid-template-columns:10px minmax(0,1fr) auto;gap:9px;align-items:center;min-height:38px;padding:7px 8px;border:1px solid transparent;border-radius:8px;background:#0e1018a8}.participant.self{border-color:#ffffff20;background:#1b1e2b}.participant.observer{opacity:.52}.participant-color{width:9px;height:9px;border-radius:50%;background:var(--player-color);box-shadow:0 0 0 3px color-mix(in srgb,var(--player-color) 18%,transparent)}.participant-copy{min-width:0}.participant-name{display:flex;align-items:center;gap:5px;min-width:0}.participant-name strong{overflow:hidden;color:#e5e6df;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.participant-name em{flex:none;padding:2px 4px;border-radius:3px;color:#11131c;background:var(--accent);font:800 8px Consolas,monospace;font-style:normal;text-transform:uppercase}.participant-name small{flex:none;color:#777c90;font:8px Consolas,monospace;text-transform:uppercase}.participant-status{display:block;margin-top:2px;color:#74798c;font:7px Consolas,monospace;text-transform:uppercase}.participant-choice{display:grid;min-width:45px;place-items:center;color:#f5f5ef;text-align:center}.participant-choice.empty{color:#555a6c;font:800 12px Consolas,monospace}.participant-list-empty{padding:18px 8px;color:#656a7c;font:9px Consolas,monospace;text-align:center}.monitor-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(340px,.75fr);gap:20px;align-items:start;margin-top:22px}.monitor-grid .comparison{margin-top:0}.monitor-grid .comparison.single-viewer{grid-template-columns:1fr}.monitor-sidebar{display:grid;gap:20px}.monitor-sidebar .presence-panel,.monitor-sidebar .chat-panel{position:static}.server-panel,.telemetry-panel,.stats-panel{padding:20px;border:1px solid var(--line);border-radius:18px;background:#171925dd}.server-note{margin:12px 0 0;color:#85899b;font-size:11px;line-height:1.5}.server-note strong{color:var(--accent)}.telemetry-panel,.stats-panel{margin-top:20px}.stats-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:15px}.stats-summary div{padding:11px 13px;border:1px solid #ffffff13;border-radius:8px;background:#0e1018}.stats-summary span{display:block;color:#777c90;font:8px Consolas,monospace;text-transform:uppercase}.stats-summary strong{display:block;margin-top:4px;color:var(--paper);font:800 18px Consolas,monospace}.stats-filters{display:grid;grid-template-columns:minmax(180px,1.4fr) repeat(3,minmax(130px,.75fr)) auto;gap:9px;align-items:end;margin-top:14px}.stats-filters label{display:grid;gap:6px;min-width:0}.stats-filters label>span{color:#777c90;font:8px Consolas,monospace;text-transform:uppercase}.stats-filters input,.stats-filters select{min-width:0;height:35px;padding:7px 9px;border:1px solid #ffffff22;border-radius:6px;outline:0;color:#eee;background:#0e1018;font-size:10px}.stats-filters input:focus,.stats-filters select:focus{border-color:#b8ff5570}.stats-refresh{height:35px;cursor:pointer;padding:7px 12px;border:1px solid #b8ff5555;border-radius:6px;color:#11131c;background:var(--accent);font:800 9px Consolas,monospace}.stats-table-wrap{margin-top:13px;overflow-x:auto;border:1px solid #ffffff14;border-radius:9px;background:#0b0d14}.stats-table{width:100%;min-width:940px;border-collapse:collapse;font:10px Consolas,monospace;font-variant-numeric:tabular-nums}.stats-table th,.stats-table td{padding:9px 10px;border-bottom:1px solid #ffffff0e;text-align:right;white-space:nowrap}.stats-table th:first-child,.stats-table td:first-child,.stats-table th:nth-child(2),.stats-table td:nth-child(2){text-align:left}.stats-table th{position:sticky;top:0;z-index:1;color:#74798c;background:#12141e;font-size:8px;text-transform:uppercase}.stats-table th button{cursor:pointer;border:0;padding:0;color:inherit;background:transparent;font:inherit;text-transform:inherit}.stats-table th button:hover,.stats-table th button.active{color:var(--accent)}.stats-table tbody tr:hover{background:#ffffff05}.stats-table tbody tr:last-child td{border-bottom:0}.stats-player{display:flex;align-items:center;gap:8px;min-width:150px}.stats-player i{width:8px;height:8px;flex:none;border-radius:50%;background:var(--player-color)}.stats-player span{display:grid;gap:2px;min-width:0}.stats-player strong{overflow:hidden;color:#e6e7e1;text-overflow:ellipsis}.stats-player small{color:#555a6b;font-size:7px}.stats-presence{display:inline-flex;align-items:center;gap:5px;color:#777c90;font-size:8px;text-transform:uppercase}.stats-presence:before{content:"";width:6px;height:6px;border-radius:50%;background:#555a6b}.stats-presence.active:before{background:var(--accent);box-shadow:0 0 7px #b8ff5570}.stats-presence.observer:before{background:#f2cc60}.stats-admin{margin-left:5px;padding:1px 3px;border-radius:3px;color:#11131c;background:var(--accent);font-size:6px}.stats-total{color:var(--accent);font-weight:800}.stats-empty{height:90px;color:#626779;text-align:center!important}.stats-note{margin:9px 0 0;color:#686d80;font:8px Consolas,monospace}.chart-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:16px}.chart-card{position:relative;min-width:0;padding:11px;overflow:hidden;border:1px solid var(--line);border-radius:9px;background:#0e1018}.chart-card>span{display:block;color:#777c90;font:8px Consolas,monospace;text-transform:uppercase}.chart-card>strong{display:block;margin-top:5px;color:#f4f4ef;font:700 13px Consolas,monospace}.chart-card canvas{width:100%;height:96px;margin-top:8px;cursor:crosshair;image-rendering:auto}.chart-tooltip{position:absolute;z-index:3;top:48px;pointer-events:none;padding:4px 6px;border:1px solid #b8ff5555;border-radius:4px;color:#f4f4ef;background:#080a10ee;box-shadow:0 3px 12px #0008;font:8px Consolas,monospace;white-space:nowrap}@media(max-width:1050px),(orientation:portrait){.comparison{grid-template-columns:1fr}.viewer{width:min(720px,100%);margin-inline:auto}.play-grid{grid-template-areas:"game" "chat" "players";grid-template-columns:minmax(0,720px)}.players-stack,.presence-panel,.chat-panel{position:static;width:100%;justify-self:stretch}.players-stack{height:auto;grid-template-rows:none}.play-grid.sidebar-synced .chat-panel{display:block;height:auto}.play-grid.sidebar-synced .players-stack{height:auto}.play-grid.sidebar-synced .chat-messages{height:250px;min-height:0}.play-grid.sidebar-synced .input-votes-list{max-height:none;overflow:visible}.shared-body,.monitor-grid{grid-template-columns:1fr}.chart-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.stats-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.stats-filters label:first-child{grid-column:1 / -1}}@media(max-width:620px){.layout{width:min(100% - 18px,720px);padding-top:16px}.brand-lockup{gap:9px}.brand-copy .eyebrow{max-width:15ch;font-size:7px}.connection{display:none}.masthead-actions{gap:7px}.masthead-actions .viewer-meta{max-width:none}.viewer-meta .screen-resolution,.viewer-meta .now-playing,.viewer-meta .source-name,.viewer-meta .current-player-badge{display:none}.header-options>summary,.comparison:not(.single-viewer) .header-options>summary{padding:5px 7px;font-size:8px}.viewer-heading-actions{align-items:flex-end;flex-direction:column;gap:5px}.viewer-heading .viewer-connection{display:none}.current-player-badge{max-width:44vw}.play-grid{margin-top:14px}.poll-panel,.presence-panel,.chat-panel{border-radius:13px}.chat-messages{height:250px;min-height:0}.participant-list{max-height:none}.workbench{padding-inline:13px}.metrics{grid-template-columns:repeat(2,1fr)}.metrics div,.metrics div:nth-child(4n){border-right:1px solid #ffffff10;border-bottom:1px solid #ffffff10}.metrics div:nth-child(2n){border-right:0}.metrics div:nth-last-child(-n+2){border-bottom:0}.option-grid{grid-template-columns:1fr}.shared-panel{padding:14px}.shared-body{grid-template-columns:1fr}.session-controls{grid-template-columns:1fr 1fr}.speed-control{grid-column:1 / -1}.snapshot-gallery{grid-template-columns:repeat(2,1fr)}.chart-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.stats-panel{padding:14px}.stats-summary strong{font-size:14px}.stats-filters{grid-template-columns:1fr}.stats-filters label:first-child{grid-column:auto}}
