.lab-content button,.lab-content input{font:inherit}.lab-content button,.file-button{color:#356b88;cursor:pointer;background:linear-gradient(#fff,#e3e8eb);border:1px solid #a7b3b9;border-radius:3px;padding:7px 13px;font-size:12px;font-weight:600}.lab-content button:hover,.file-button:hover{background:#e4e8ea}.lab-content button:disabled,.disabled{opacity:.45;cursor:default}.lab-content :focus-visible{outline:3px solid #5387a5;outline-offset:3px}.showcase-site{--lab-line:#d5dde1;--lab-ink:#303b42;--lab-blue:#356b88;--lab-amber:#986325;--lab-grid:#dde2e5;--lab-axis:#b8c3ca;--lab-muted:#68747b;--lab-surface:#f8f9f9}.lab-content{min-width:0}.lab-nav>div{display:flex;flex-wrap:wrap;gap:8px 22px;margin-bottom:22px;font-size:12px}.lab-nav [aria-current]{color:#45494c;font-weight:700}.lab-nav a:last-child{margin-left:auto}.lab-hero{margin-bottom:22px}.lab-hero .section-heading span{letter-spacing:.5px;font-size:10px}.lab-hero h2{color:#45494c;margin:20px 0 10px;font:26px/1.3 Georgia,Times New Roman,serif}.lab-hero em{color:var(--lab-blue)}.hero-copy{color:#626b70;max-width:760px;margin:0}.eyebrow{letter-spacing:1px;color:var(--lab-muted);font:10px/1.6 ui-monospace,monospace}.lab-controls{display:flex;background:#f2f4f5;border:1px solid #cbd2d6;border-radius:3px;flex-wrap:wrap;justify-content:space-between;align-items: center;gap:16px;padding:18px}.sample-info,.control-actions{display:flex;align-items: center;gap:12px}.sample-info{flex:240px;min-width:0}.sample-info>div{min-width:0}.sample-info strong{display:block;overflow-wrap:anywhere;font:14px ui-monospace,monospace}.sample-info div>span{color:#68747b;font-size:12px}.sample-icon{color:var(--lab-blue);background:#e3e9ed;border-radius:3px;padding:8px 13px;font-size:22px}.control-actions{flex-wrap:wrap}.file-button{position:relative}.file-button:focus-within{outline:2px solid #5387a5;outline-offset:3px}.file-button input{position:absolute;opacity:0;cursor:pointer;width:100%;height:100%;inset:0}.lab-content .run-button{background:var(--lab-blue);border-color:var(--lab-blue);color:#fff}.lab-content .run-button:hover{background:#28546c}.run-button span{margin-left:14px}.lab-content .stop{background:var(--lab-amber);border-color:var(--lab-amber)}.run-status{display:flex;color:#68747b;flex-wrap:wrap;align-items: center;gap:9px;margin:14px 2px 22px;font:11px/1.5 ui-monospace,monospace}.status-light{background:#929b9f;border-radius:50%;width:6px;height:6px}.status-light.active{background:#638b4f;box-shadow:0 0 10px #638b4f40}.elapsed{margin-left:auto}.pipeline{display:grid;grid-template-columns:minmax(0,1fr)28px minmax(0,1fr)28px minmax(0,1fr);border-top:1px solid #d7dadc;align-items: center;padding:24px 0}.pipeline small{display:block;color:#68747b;letter-spacing:1px;font:10px ui-monospace,monospace}.pipeline strong{display:block;letter-spacing:-1px;margin:12px 0 6px;font:26px ui-monospace,monospace}.pipeline div>span{color:#68747b;font-size:12px}.flow-arrow{color:#8296a1;font-size:26px}.moving{animation:1.2s infinite alternate pulse}@keyframes pulse{to{color:#356b88;transform:translate(4px)}}.stream-progress{display:flex;color:#68747b;align-items: center;gap:18px;font:10px ui-monospace,monospace}.progress-track{overflow:hidden;background:#e3e8eb;border-radius:3px;flex:1;height:4px}.progress-track span{display:block;background:var(--lab-blue);height:100%;transition:width .15s linear}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;padding:28px 0}.metrics>div{border-left:1px solid #d7dadc;padding-left:18px}.metrics span{display:block;color:#68747b;font-size:11px}.metrics strong{display:block;padding-top:8px;font:21px ui-monospace,monospace}.metrics small{color:#68747b;margin-left:4px;font-size:12px}.lab-panel{background:var(--lab-surface);border:1px solid #d0d6d9;border-radius:3px;min-width:0;margin-bottom:18px;padding:18px}.panel-title{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:18px}.panel-title h2{margin:0;font-size:14px;font-weight:600}.panel-title>span{color:#68747b;font:10px ui-monospace,monospace}.chart-legend{display:flex;color:#68747b;gap:20px;margin-bottom:20px;font:10px ui-monospace,monospace}.chart-legend>:last-child{margin-left:auto}.output-dot:before,.input-dot:before{content:"";display:inline-block;background:var(--lab-blue);border-radius:50%;width:6px;height:6px;margin-right:6px}.input-dot:before{background:var(--lab-amber)}.throughput svg{color:var(--lab-grid);overflow:visible;width:100%;height:165px}.input-line,.output-line{fill:none;stroke-width:2;vector-effect:non-scaling-stroke;stroke:var(--lab-amber)}.output-line{stroke:var(--lab-blue)}.chart-axis{display:flex;color:#68747b;justify-content:space-between;margin-top:10px;font:10px ui-monospace,monospace}.lab-two-columns{display:grid;grid-template-columns:minmax(0,1fr)minmax(0,1fr);gap:20px}.byte-histogram{display:flex;border-bottom:1px solid #cbd2d6;align-items: end;gap:4px;height:142px}.byte-histogram>div{background:linear-gradient(var(--lab-blue),#a6c0cf);transform-origin:center bottom;border-radius:2px 2px 0 0;flex:1;min-width:0;height:100%;transition:transform .42s cubic-bezier(.22,.61,.36,1)}.hex-grid{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));color:var(--lab-blue);gap:5px;font:12px/1.4 ui-monospace,monospace}.hex-cell{display:grid;overflow:hidden;text-align:center;transition:opacity var(--preview-fade)linear;border:1px solid #b7c9d3;border-radius:3px;padding:3px 1px}.hex-value{grid-area:1/1}.hex-value.entering{animation:hex-enter var(--preview-fade)linear both}.hex-value.leaving{animation:hex-leave var(--preview-fade)linear both;pointer-events:none}@keyframes hex-enter{0%{opacity:0}to{opacity:1}}@keyframes hex-leave{0%{opacity:1}to{opacity:0}}.lab-muted{color:#68747b;margin-bottom:0;font-size:11px}.radar{background:#f0f3f4;border:1px solid #cbd2d6}.radar svg{display:block;width:100%}.radar-control{display:flex;color:#68747b;justify-content:space-between;align-items: center;gap:12px;margin-top:14px;font-size:11px}.radar-control button{padding:4px 10px;font-size:10px}.lab-content input[type=range]{accent-color:var(--lab-blue);width:100%}.scoreboard{display:grid;grid-template-columns:minmax(0,1fr)minmax(0,1fr);gap:12px}.scoreboard>div{background:#edf0f2;border-radius:3px;padding:14px}.scoreboard span{display:block;font-size:11px}.scoreboard strong{font:34px ui-monospace,monospace}.team-t{color:var(--lab-amber)}.team-ct{color:var(--lab-blue)}.match-counters{display:flex;color:#68747b;flex-wrap:wrap;gap:16px;margin:18px 0;font-size:10px}.match-counters b{display:block;color:#45494c;font:18px ui-monospace,monospace}.match-feed-panel{display:flex;flex-direction:column;min-height:0}.event-viewport{position:relative;overflow:hidden;flex:1;min-height:0}.event-feed{position:absolute;list-style:none;overflow:hidden;margin:0;padding:0;font:11px/1.7 ui-monospace,monospace;inset:0}.event-entry{display:grid;grid-template-rows:1fr;animation:.26s ease-out reveal-event}.event-reveal{overflow:hidden;min-height:0}.event-content{display:flex;overflow-wrap:anywhere;animation:.26s ease-out slide-event;border-bottom:1px solid #dce1e4;gap:14px;padding:9px 0}.event-content>span{min-width:0}@keyframes reveal-event{0%{grid-template-rows:0fr}to{grid-template-rows:1fr}}@keyframes slide-event{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}.event-feed time{color:#68747b;flex-shrink:0}.event-feed .empty-feed{color:#68747b;padding:30px 0}.stats-scroll{overflow-x:auto}.player-stats{border-collapse:collapse;table-layout:fixed;font-variant-numeric:tabular-nums;text-align:right;width:100%;min-width:520px;font:12px ui-monospace,monospace}.player-stats th,.player-stats td{border-bottom:1px solid #dce1e4;padding:12px 10px}.player-stats th:not(:first-child),.player-stats td:not(:first-child){white-space:nowrap;width:52px}.player-stats th{color:#68747b;font-size:10px;font-weight:400}.player-stats th:first-child,.player-stats td:first-child{text-align:left}.lab-explainer{display:grid;grid-template-columns:1fr 2fr;border-top:1px solid #d7dadc;gap:30px;margin-top:20px;padding:24px 0 10px}.lab-explainer h2{color:var(--lab-blue);font:24px/1.3 Georgia,serif}.lab-explainer code{display:block;overflow-wrap:anywhere;color:var(--lab-blue);background:#f2f4f5;border:1px solid #cbd2d6;border-radius:3px;padding:18px;font-size:12px}.lab-explainer p:not(.eyebrow){color:#68747b;font-size:12px}.lab-footer{display:flex;color:#68747b;border-top:1px solid #d7dadc;flex-wrap:wrap;justify-content:space-between;gap:20px;padding:16px 0 0;font-size:11px}.lab-error{color:#88452b;overflow-wrap:anywhere;background:#fff4ed;border:1px solid #cf9b80;border-radius:3px;padding:16px}@media (max-width:800px){.match-feed-panel{height:clamp(420px,75svh,640px)}.lab-two-columns{grid-template-columns:minmax(0,1fr);gap:0}.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.lab-explainer{gap:20px}}@media (max-width:560px){.lab-controls,.lab-panel{padding:14px}.pipeline{grid-template-columns:minmax(0,1fr);gap:14px}.pipeline>div{display:grid;grid-template-columns:minmax(0,1fr)auto;align-items: center}.pipeline strong{text-align:right;margin:0;font-size:22px}.pipeline div>span{grid-column:1/-1}.flow-arrow{display:none}.metrics{gap:18px 10px}.metrics>div{padding-left:10px}.metrics strong{font-size:18px}.panel-title,.chart-legend{flex-wrap:wrap;gap:8px}.chart-legend>:last-child{margin-left:0}.lab-explainer{grid-template-columns:minmax(0,1fr);gap:6px}.elapsed{flex-basis:100%;padding-left:15px}.hex-grid{gap:3px;font-size:11px}}@media (prefers-reduced-motion:reduce){.hex-value.leaving{display:none}.lab-content *,.lab-content *:before,.lab-content *:after{animation:none!important;transition:none!important}}.memory-values{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.memory-values span{display:block;color:#68747b;font-size:11px}.memory-values strong{display:block;padding-top:8px;font:21px ui-monospace,monospace}@media (max-width:500px){.memory-values{grid-template-columns:1fr;gap:16px}}.lab-panel,.scoreboard>div,.metrics>div,.player-stats td:first-child{overflow-wrap:anywhere}.lab-content .animated-number{display:inline;font:inherit;color:inherit;font-variant-numeric:tabular-nums}.radar-marker.live{transition:transform .16s linear}.stream-progress{margin-bottom:24px}.radar-marker text{paint-order:stroke;stroke:var(--lab-surface);stroke-width:3px;stroke-linejoin:round;font-weight:700}.gsi-controls label,.gsi-inspector label{display:flex;color:var(--lab-muted);align-items: center;gap:8px;font-size:11px}.gsi-controls select,.gsi-inspector select{color:var(--lab-blue);background:var(--lab-surface);font:inherit;border:1px solid #a7b3b9;border-radius:3px;min-width:0;padding:7px}.gsi-timeline{margin:-8px 0 22px}.gsi-main{grid-template-columns:minmax(0,1.6fr)minmax(240px,1fr)}.gsi-score{display:grid;grid-template-columns:1fr 1.2fr 1fr;text-align:center;align-items: center;padding:10px 0 20px}.gsi-score span{display:block;letter-spacing:1px;font:11px ui-monospace,monospace}.gsi-score strong{display:block;margin-top:8px;font:40px ui-monospace,monospace}.gsi-score .gsi-phase strong{color:#45494c;font-size:25px}.gsi-phase>span{animation:.2s ease-out gsi-observe}.gsi-bomb{color:var(--lab-muted);background:#e9edef;border:1px solid #d0d6d9;margin-bottom:16px;padding:12px;transition:background .24s,color .24s}.gsi-bomb.active{color:var(--lab-amber);background:#f2e8d9;border-color:#cfb591}.gsi-bomb>div:first-child{display:flex;justify-content:space-between;align-items: center;gap:10px;font:10px ui-monospace,monospace}.gsi-bomb>div>span{font-variant-numeric:tabular-nums;font-size:15px}.gsi-bomb-track{overflow:hidden;background:#d6dce0;height:3px;margin-top:10px}.gsi-bomb-track i{display:block;background:var(--lab-amber);transform-origin:left;height:100%}.gsi-rosters{display:grid;grid-template-columns:1fr 1fr;gap:20px}.gsi-player{border:1px solid #0000;margin-bottom:3px;padding:8px 7px;transition:opacity .22s,background .22s}.gsi-player.observed{background:#e8eef1;border-color:#c5d2da}.gsi-player.eliminated{opacity:.4}.gsi-player>div:first-child,.gsi-player-meta{display:flex;justify-content:space-between;gap:6px;font-size:11px}.gsi-player-meta{color:var(--lab-muted);font:9px ui-monospace,monospace}.gsi-health{position:relative;overflow:hidden;background:#dce2e5;height:3px;margin:7px 0}.gsi-health i{position:absolute;transform-origin:left;background:currentColor;transition:transform .12s linear;inset:0}.gsi-health .damage-trail{background:#c2a17f;transition:transform .6s ease-out}.gsi-observer{display:flex;animation:.24s ease-out gsi-observe;border-top:1px solid #d0d6d9;flex-wrap:wrap;align-items: center;gap:10px;margin-top:12px;padding-top:16px}.gsi-observer span{color:var(--lab-muted);font:10px ui-monospace,monospace}.gsi-observer strong{color:var(--lab-blue)}@keyframes gsi-observe{0%{opacity:.2;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}.gsi-events{display:flex;flex-direction:column;min-height:0}.gsi-events ol{overflow-y:auto;list-style:none;scrollbar-width:thin;flex:1;height:340px;margin:14px 0;padding:0}.gsi-events li button{display:flex;text-align:left;background:0 0;border:0;border-bottom:1px solid #dce1e4;border-radius:0;gap:10px;width:100%;padding:12px 3px;font:11px ui-monospace,monospace}.gsi-events li button:hover,.gsi-events li button[aria-pressed=true]{background:#e6edf1}.gsi-events time{color:var(--lab-muted)}.gsi-events li button>span:last-child{margin-left:auto}.gsi-events small{display:block;color:var(--lab-muted);margin-top:5px;font-size:10px;font-weight:400}.gsi-empty{color:var(--lab-muted);text-align:center;padding:40px 12px;font-size:12px}.gsi-event-note{color:var(--lab-muted);border-top:1px solid #d0d6d9;padding-top:14px;font-size:11px}.gsi-packets{overflow:hidden;height:40px}.gsi-packet-track{display:flex;will-change:transform;align-items: end;width:102.083%;height:100%}.gsi-packet-track>span{display:flex;flex:0 0 2.04082%;align-items: end;height:100%;padding-right:5px}.gsi-packets i{display:block;background:#e0e5e8;width:100%}.gsi-packets .received{animation:.3s ease-out gsi-packet;background:#90aebf}@keyframes gsi-packet{0%{background:var(--lab-blue);opacity:.4}to{background:#90aebf;opacity:1}}.gsi-telemetry{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));color:var(--lab-muted);font-variant-numeric:tabular-nums;gap:12px;margin-top:18px;font:10px ui-monospace,monospace}.gsi-telemetry>span{min-width:0}.gsi-telemetry b{display:block;color:#45494c;min-height:1.65em;font-size:15px;font-weight:400}.gsi-json-columns{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:18px}.gsi-json-panel{min-width:0}.gsi-json-panel h3{color:var(--lab-blue);margin:0 0 10px;font:11px ui-monospace,monospace}.gsi-json-panel pre{overflow:auto;tab-size:2;white-space:pre;overflow-wrap:normal;background:#eef2f4;border:1px solid #d6dee3;height:310px;margin:0;padding:12px;font:10px/1.7 ui-monospace,monospace}.gsi-json-panel code{display:block;width:max-content;min-width:100%}.gsi-field{display:block;white-space:pre;min-width:100%}.gsi-field.changed{animation:.8s ease-out forwards gsi-field-fade;background:#e7dfc6}@keyframes gsi-field-fade{0%{background:#dfc489}to{background:#ece6d5}}@media (max-width:800px){.gsi-main{grid-template-columns:1fr}.gsi-events ol{flex:auto;height:260px}}@media (max-width:560px){.gsi-json-columns{grid-template-columns:1fr}.gsi-rosters{gap:8px}.gsi-telemetry{grid-template-columns:repeat(2,minmax(0,1fr))}.gsi-score span{font-size:9px}.gsi-score strong{font-size:32px}.gsi-controls label{flex-wrap:wrap}}@media (prefers-reduced-motion:reduce){.gsi-packet-track{will-change:auto;transform:translate(-2.04082%)!important}}.smoke-study{margin-bottom:28px}.smoke-intro,.smoke-view-heading,.smoke-frame-label{display:flex;justify-content:space-between;align-items: center;gap:16px}.smoke-intro,.smoke-message,.smoke-footnote{padding:0 22px}.smoke-intro{padding-block-start:16px;padding-block-end:16px}.smoke-intro p{margin:0}.smoke-actions{display:flex;flex-wrap:wrap;align-items: center;gap:10px}.smoke-study button,.smoke-study select{border:1px solid var(--lab-line);background:var(--lab-surface);color:var(--lab-ink);font:inherit;border-radius:5px;padding:8px 12px}.smoke-study button{cursor:pointer}.smoke-study button[aria-pressed=true]{border-color:var(--lab-blue);color:var(--lab-blue)}.smoke-study button:disabled{opacity:.4;cursor:default}.smoke-study :focus-visible{outline:2px solid var(--lab-blue);outline-offset:3px}.smoke-workspace{display:grid;grid-template-columns:260px minmax(0,1fr);border-top:1px solid var(--lab-line)}.smoke-catalog{border-right:1px solid var(--lab-line);padding:22px}.smoke-field{display:grid;gap:9px;margin-bottom:16px;font-size:13px}.smoke-field select{width:100%;min-width:0}.smoke-radar{display:block;background:#101820;border-radius:6px;width:100%;margin-top:20px}.smoke-pin{cursor:pointer}.smoke-pin:hover circle,.smoke-pin:focus circle{stroke-width:5px}.smoke-pin text{pointer-events:none}.smoke-volume{min-width:0}.smoke-view-heading{padding:16px 22px;font-size:13px}.smoke-view-heading span,.smoke-frame-label span{color:var(--lab-muted)}.smoke-canvas{display:block;touch-action:none;cursor:grab;background:#0b1116;width:100%;height:470px}.smoke-canvas:active{cursor:grabbing}.smoke-view-controls{padding:20px 22px}.smoke-view-controls input[type=range]{accent-color:var(--lab-blue);width:100%;margin:12px 0}.smoke-study input[type=checkbox]{accent-color:var(--lab-blue)}.smoke-frame-label{margin-top:24px;font-size:12px}.smoke-settings{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:24px}.smoke-empty{text-align:center;padding:60px 24px}.smoke-footnote{border-top:1px solid var(--lab-line);margin:0;padding-block-start:16px;padding-block-end:16px;font-size:12px}@media (max-width:850px){.smoke-workspace{grid-template-columns:210px minmax(0,1fr)}.smoke-catalog{padding:14px}.smoke-intro,.smoke-view-heading,.smoke-frame-label{flex-direction:column;align-items: flex-start;gap:8px}}@media (max-width:620px){.smoke-workspace{display:flex;flex-direction:column}.smoke-catalog{border-right:0;border-bottom:1px solid var(--lab-line)}.smoke-radar{max-width:300px;margin:16px auto}.smoke-canvas{height:340px}.smoke-settings{gap:12px}}.round-replay{margin-bottom:24px}.round-replay>p,.replay-controls,.round-replay>.replay-actions{margin:16px 0}.round-strip{display:flex;overflow-x:auto;scrollbar-width:thin;gap:2px;padding:4px 3px}.round-strip button{position:relative;text-align:center;font-variant-numeric:tabular-nums;background:0 0;border:0;border-radius:2px;flex:1 0 30px;min-width:30px;min-height:40px;padding:10px 4px 5px}.round-strip button:before{content:"";position:absolute;opacity:.45;background:currentColor;height:3px;inset:0 0 auto}.round-strip button[aria-pressed=true]{outline:1px solid;outline-offset:-1px;background:#e4e8ea}.round-strip button[aria-pressed=true]:before{opacity:1}.round-strip button:focus-visible{outline:2px solid var(--lab-blue);outline-offset:1px}.replay-actions{display:flex;flex-wrap:wrap;align-items: center;gap:12px}.replay-controls input[type=range]{accent-color:var(--lab-blue);width:100%;margin:16px 0}.replay-actions select{font:inherit;padding:6px}.round-strip .team-t{color:var(--lab-amber)}.round-strip .team-ct{color:var(--lab-blue)}
