:root{--bg:#0b0f17;--panel:#111827;--panel-2:#172033;--border:#243049;--text:#e5e7eb;--muted:#94a3b8;--accent:#3b82f6;--accent-2:#60a5fa;--ok:#34d399;--warn:#fbbf24;--danger:#f87171;--ad:#f59e0b;--live:#ef4444;--border-hover:#3a4a6b;--row-line:var(--row-line);--code-bg:#0a0e16;--badge-bg:#1f2a40;--badge-text:#cbd5e1;--ok-bg:#34d39926;--danger-bg:#f8717126;--accent-bg:#3b82f633;--live-bg:#ef444433;--live-text:#fca5a5;--ad-bg:#f59e0b33;--ad-text:var(--ad);--info-bg:#a78bfa2e;--info-text:#c4b5fd;--hl-bg:#f59e0b2e;--hl-text:#fde68a;--break-bg:#f59e0b1a;--chart-grid:#94a3b826;--chart-text:#cbd5e1;--shadow:0 8px 24px #0006;--radius:10px;--mono:ui-monospace, "SF Mono", "JetBrains Mono", Menlo, Consolas, monospace;color:var(--text);background:var(--bg);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:14px}:root[data-theme=light]{--bg:#f4f6fa;--panel:#fff;--panel-2:#eef2f7;--border:#d5dce6;--border-hover:#aab6c8;--text:#0f172a;--muted:#5b6577;--accent:#2563eb;--accent-2:#1d4ed8;--ok:#047857;--warn:#b45309;--danger:#dc2626;--ad:#d97706;--row-line:#e6eaf0;--code-bg:#f8fafc;--badge-bg:#e8edf4;--badge-text:#334155;--ok-bg:#d1fae5;--danger-bg:#fee2e2;--accent-bg:#dbeafe;--live-bg:#fee2e2;--live-text:#b91c1c;--ad-bg:#fef3c7;--ad-text:#92400e;--info-bg:#ede9fe;--info-text:#6d28d9;--hl-bg:#fef3c7;--hl-text:#78350f;--break-bg:#fffbeb;--chart-grid:#64748b2e;--chart-text:#334155;--shadow:0 8px 24px #0f172a1f;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:light){:root:not([data-theme]){--bg:#f4f6fa;--panel:#fff;--panel-2:#eef2f7;--border:#d5dce6;--border-hover:#aab6c8;--text:#0f172a;--muted:#5b6577;--accent:#2563eb;--accent-2:#1d4ed8;--ok:#047857;--warn:#b45309;--danger:#dc2626;--ad:#d97706;--row-line:#e6eaf0;--code-bg:#f8fafc;--badge-bg:#e8edf4;--badge-text:#334155;--ok-bg:#d1fae5;--danger-bg:#fee2e2;--accent-bg:#dbeafe;--live-bg:#fee2e2;--live-text:#b91c1c;--ad-bg:#fef3c7;--ad-text:#92400e;--info-bg:#ede9fe;--info-text:#6d28d9;--hl-bg:#fef3c7;--hl-text:#78350f;--break-bg:#fffbeb;--chart-grid:#64748b2e;--chart-text:#334155;--shadow:0 8px 24px #0f172a1f;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}}.player{--accent:#3b82f6;--accent-2:#60a5fa;--ok:#34d399;--ad:#f59e0b;--muted:#94a3b8;--text:#e5e7eb;--danger:#f87171;color:var(--text);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}body{background:var(--bg);min-height:100vh;margin:0}button,input,select,textarea{font:inherit;color:inherit}button,select{cursor:pointer}button,select,input[type=url],textarea{background:var(--panel-2);border:1px solid var(--border);border-radius:8px;padding:7px 11px}button:hover:not(:disabled),select:hover:not(:disabled){border-color:var(--border-hover)}:focus-visible{outline:2px solid var(--accent-2);outline-offset:2px}button.primary{background:var(--accent);border-color:var(--accent);color:#fff;padding-inline:18px;font-weight:600}code,.mono{font-family:var(--mono);font-size:12px}.muted{color:var(--muted)}.small{font-size:12px}.break{word-break:break-all}.error{color:var(--danger)}.topbar{border-bottom:1px solid var(--border);background:var(--panel);z-index:20;align-items:center;gap:20px;padding:12px 20px;display:flex;position:sticky;top:0}.brand{white-space:nowrap;align-items:center;gap:10px;font-weight:700;display:flex}.brand .logo{background:var(--accent) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Cpath d='M12 9l12 7-12 7z' fill='white'/%3E%3C/svg%3E") center / 100% no-repeat;border-radius:7px;width:26px;height:26px}.brand .tagline{color:var(--muted);font-size:12px;font-weight:500}.load-form{flex:1;gap:8px;min-width:0;display:flex}.load-form input{flex:1;min-width:0}.load-form select{max-width:220px}.icon-btn{place-items:center;padding:6px 8px;display:grid}.settings{background:var(--panel);border-bottom:1px solid var(--border);grid-template-columns:minmax(260px,1fr) minmax(260px,1fr) auto;gap:16px 24px;padding:14px 20px;display:grid}.settings[hidden]{display:none}.field{flex-direction:column;gap:6px;display:flex}.field label{font-weight:600}.field small{color:var(--muted);font-weight:400}.field small.ok{color:var(--ok)}.field small.warn{color:var(--warn)}.field.checks{justify-content:center}.field.checks label{align-items:center;gap:8px;font-weight:400;display:flex}textarea{resize:vertical;font-family:var(--mono);font-size:12px}.layout{--stats-width:460px;grid-template-columns:minmax(0, 1fr) 20px var(--stats-width);align-items:start;padding:20px;display:grid}.splitter{cursor:col-resize;touch-action:none;outline:none;align-self:stretch;position:relative}.splitter:before{content:"";background:var(--border);border-radius:2px;width:4px;height:48px;margin:0 auto;transition:background .15s;display:block;position:sticky;top:calc(50vh - 24px)}.splitter:hover:before,.splitter:focus-visible:before,.splitter.dragging:before{background:var(--accent)}body.resizing{cursor:col-resize;-webkit-user-select:none;user-select:none}body.resizing .player{pointer-events:none}.player-col{min-width:0}.stats-col{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;min-width:0;max-height:calc(100vh - 100px);display:flex;position:sticky;top:80px}@media (max-width:1100px){.layout{grid-template-columns:minmax(0,1fr);gap:20px;padding:16px}.splitter{display:none}.stats-col{max-height:none;position:static}}@media (max-width:720px){.topbar{flex-direction:column;align-items:stretch;gap:10px;padding:10px 16px}.load-form{flex-wrap:wrap}.load-form input{flex-basis:100%}.load-form select{flex:1;min-width:0;max-width:none}.settings{grid-template-columns:1fr;padding:14px 16px}.brand .tagline{display:none}}.player{border-radius:var(--radius);aspect-ratio:16/9;background:#000;border:2px solid #0000;outline:none;transition:border-color .2s;position:relative;overflow:hidden;container-type:inline-size}.player.in-break{border-color:var(--ad)}.player:fullscreen{aspect-ratio:auto;border-radius:0}.player video{background:#000;width:100%;height:100%;display:block}.player-message{text-align:center;color:var(--muted);pointer-events:none;place-items:center;padding:24px;display:grid;position:absolute;inset:0 0 64px}.player-message[hidden]{display:none}.player-message strong{color:var(--text);font-size:18px}.player-message.error strong{color:var(--danger)}.player-message.error p{color:#fecaca;max-width:640px}.spinner{pointer-events:none;border:4px solid #fff3;border-top-color:#fff;border-radius:50%;width:48px;height:48px;animation:.9s linear infinite spin;position:absolute;top:calc(50% - 56px);left:calc(50% - 24px)}.spinner[hidden]{display:none}@keyframes spin{to{transform:rotate(360deg)}}.ad-banner{background:var(--ad);color:#1c1917;letter-spacing:.04em;border-radius:6px;padding:6px 12px;font-size:13px;font-weight:800;position:absolute;top:14px;left:14px;box-shadow:0 4px 16px #0006}.ad-banner[hidden]{display:none}.nerd-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);font-family:var(--mono);background:#0a0c12d1;border-radius:8px;max-width:min(460px,100% - 28px);max-height:calc(100% - 100px);padding:10px 30px 10px 12px;font-size:11px;position:absolute;top:14px;right:14px;overflow:auto}.nerd-overlay[hidden]{display:none}.nerd-overlay th{text-align:right;color:var(--muted);white-space:nowrap;vertical-align:top;padding:1px 10px 1px 0;font-weight:500}.nerd-overlay td{word-break:break-all}.nerd-overlay .close{background:0 0;border:none;padding:0 7px;font-size:16px;position:absolute;top:4px;right:4px}.controls{background:linear-gradient(#0000,#000000d9);padding:18px 12px 8px;transition:opacity .25s;position:absolute;bottom:0;left:0;right:0}.player.has-media:not(.paused):not(:hover):not(:focus-within) .controls{opacity:0}.ctl-row{align-items:center;gap:6px;min-width:0;display:flex}.ctl{color:#fff;background:0 0;border:none;border-radius:6px;place-items:center;padding:6px;display:grid}.ctl:hover{background:#ffffff1f}.ctl[aria-pressed=true]{color:var(--accent-2)}.ctl[hidden]{display:none}.vol-group{align-items:center;display:flex}.volume{accent-color:#fff;width:80px}.time{font-family:var(--mono);color:#e2e8f0;white-space:nowrap;margin-left:6px;font-size:12px}.live-btn{letter-spacing:.06em;background:#ffffff1f;border:none;padding:3px 8px 3px 20px;font-size:11px;font-weight:800;position:relative}.live-btn:before{content:"";background:#94a3b8;border-radius:50%;width:7px;height:7px;margin-top:-3.5px;position:absolute;top:50%;left:8px}.live-btn.at-edge:before{background:var(--live)}.live-btn[hidden]{display:none}.spacer{flex:1}.ctl-label{color:var(--muted);align-items:center;gap:4px;font-size:11px;display:flex}.ctl-select{background:#0f172acc;border:1px solid #ffffff26;border-radius:6px;max-width:150px;padding:4px 6px;font-size:12px}.ctl-select.narrow{max-width:64px}.ctl-select:disabled{opacity:.5;cursor:default}@container (width<=1080px){.ctl-label span{display:none}.ctl-select{max-width:118px}}@container (width<=760px){.ctl-select{max-width:84px}.volume{width:52px}}@media (max-width:600px){.player{aspect-ratio:auto;flex-direction:column;display:flex}.player video{aspect-ratio:16/9;height:auto}.controls{background:#000;padding:8px 6px 6px;position:static}.player-message{inset:0}.ctl-row{flex-wrap:wrap;row-gap:6px}.spacer{flex-basis:100%;height:0}.ctl-label{flex:28%;min-width:0}.ctl-select{width:100%;max-width:none}.player.has-media:not(.paused):not(:hover):not(:focus-within) .controls{opacity:1}}.seekbar{cursor:pointer;touch-action:none;height:18px;margin:0 4px 4px;position:relative}.sb-track{background:#ffffff38;border-radius:2px;height:4px;transition:height .1s,top .1s;position:absolute;top:7px;left:0;right:0}.seekbar:hover .sb-track{height:6px;top:6px}.sb-buffered,.sb-markers{position:absolute;inset:0}.sb-range{background:#ffffff59;position:absolute;top:0;bottom:0}.sb-played{background:var(--accent);border-radius:2px;position:absolute;top:0;bottom:0;left:0}.sb-break{background:#f59e0bb3;border-radius:2px;position:absolute;top:-3px;bottom:-3px}.sb-marker{background:var(--ad);z-index:2;border:1px solid #1c1917;border-radius:2px;width:10px;height:10px;margin:-5px 0 0 -5px;padding:0;position:absolute;top:50%;transform:rotate(45deg)}.sb-marker.in{background:var(--ok)}.sb-marker.other{background:#a78bfa}.sb-thumb{pointer-events:none;z-index:3;background:#fff;border-radius:50%;width:12px;height:12px;margin-left:-6px;position:absolute;top:3px}.sb-tooltip{font-family:var(--mono);opacity:0;pointer-events:none;white-space:nowrap;background:#000000d9;border-radius:4px;padding:2px 6px;font-size:11px;position:absolute;bottom:22px;transform:translate(-50%)}.sb-tooltip.visible{opacity:1}.stream-summary{color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px 14px;margin-top:12px;font-size:13px;display:flex}.stats-head{justify-content:space-between;align-items:center;gap:8px;padding:12px 14px 8px;display:flex}.stats-head h2{margin:0;font-size:15px}.stats-actions{gap:6px;display:flex}.stats-actions button{padding:5px 9px;font-size:12px}.tabs{border-bottom:1px solid var(--border);flex-wrap:wrap;gap:0;padding:0 8px;display:flex}.tab{color:var(--muted);white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;border-radius:0;align-items:center;gap:6px;padding:8px 6px;font-size:13px;display:flex}.tab[aria-selected=true]{color:var(--text);border-bottom-color:var(--accent)}.tab .count{background:var(--ad);color:#1c1917;border-radius:9px;padding:0 6px;font-size:11px;font-weight:700}.tab .count.warn{background:var(--danger)}.stats-head,.tabs{flex-shrink:0}.tab-body{flex:auto;min-height:300px;padding:4px 14px 16px;overflow:auto}.tab-pane h3{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:18px 0 6px;font-size:12px}.tab-pane h4{color:var(--muted);margin:12px 0 4px;font-size:12px}table{border-collapse:collapse;width:100%}table.kv th{text-align:left;color:var(--muted);vertical-align:top;width:40%;padding:4px 8px 4px 0;font-weight:500}table.kv td{padding:4px 0}table.kv tr+tr{border-top:1px solid var(--row-line)}table.grid th{text-align:left;color:var(--muted);border-bottom:1px solid var(--border);white-space:nowrap;padding:5px 6px;font-size:11px;font-weight:600}table.grid td{border-bottom:1px solid var(--row-line);vertical-align:top;padding:5px 6px}table.grid.compact td{padding:3px 6px;font-size:12px}table.grid td.empty{color:var(--muted);text-align:center;padding:14px}.network-table .url{word-break:break-all;min-width:150px;display:inline-block}.badge{background:var(--badge-bg);color:var(--badge-text);white-space:nowrap;border-radius:10px;padding:1px 7px;font-size:11px;font-weight:600;display:inline-block}.badge.ok{background:var(--ok-bg);color:var(--ok)}.badge.warn{background:var(--danger-bg);color:var(--danger)}.badge.accent{background:var(--accent-bg);color:var(--accent-2)}.badge.live{background:var(--live-bg);color:var(--live-text)}.badge.out{background:var(--ad-bg);color:var(--ad-text)}.badge.in{background:var(--ok-bg);color:var(--ok)}.badge.other{background:var(--info-bg);color:var(--info-text)}.chart-wrap{background:var(--panel-2);border-radius:8px;margin-top:10px;padding:4px}.chart{width:100%;height:150px;display:block}.toolbar{align-items:center;gap:10px;margin:10px 0;display:flex}.toolbar select{flex:1;min-width:0;max-width:100%;padding:5px 8px;font-size:12px}.toolbar button{padding:5px 9px;font-size:12px}pre.code{background:var(--code-bg);border:1px solid var(--border);font-family:var(--mono);white-space:pre;border-radius:8px;max-height:420px;margin:6px 0;padding:10px;font-size:11.5px;line-height:1.5;overflow:auto}pre.manifest{max-height:60vh}pre .line{width:max-content;min-width:100%;display:block}pre .hl{background:var(--hl-bg);color:var(--hl-text)}.scte-status .break-state{background:var(--panel-2);border-left:4px solid var(--ok);border-radius:8px;margin-top:12px;padding:10px 12px}.scte-status .break-state.in-break{border-left-color:var(--ad);background:var(--break-bg)}.linklike{text-align:left;color:var(--accent-2);background:0 0;border:none;border-radius:0;padding:0}.linklike:hover{text-decoration:underline}.linklike.selected{color:var(--ad);font-weight:600}.decoder{border-top:1px solid var(--border);margin-top:18px;padding-top:10px}.decoder summary{cursor:pointer;color:var(--muted);font-weight:600}.decoder textarea{width:100%;margin:8px 0}.log{margin:10px 0;padding:0;font-size:12px;list-style:none}.log li{border-bottom:1px solid var(--row-line);padding:4px 0}.log li.warn{color:var(--warn)}.log li.error{color:var(--danger)}.toast{background:var(--panel-2);border:1px solid var(--border);box-shadow:var(--shadow);z-index:50;border-radius:8px;padding:9px 16px;position:fixed;bottom:20px;left:50%;transform:translate(-50%)}.toast[hidden]{display:none}.shaka-text-container{pointer-events:none;flex-direction:column;justify-content:flex-end;align-items:center;font-size:clamp(14px,3.6cqw,34px);line-height:1.35;transition:bottom .2s;display:flex;position:absolute;inset:0 0 8px}.shaka-text-container span:not(:empty){color:#fff;background:#000000c7;padding:0 .3em}.player:is(.paused,:hover,:focus-within) .shaka-text-container{bottom:64px}@media (max-width:600px){.shaka-text-container,.player:is(.paused,:hover,:focus-within) .shaka-text-container{aspect-ratio:16/9;bottom:auto;inset:0 0 auto}}.network-table td:not(:last-child){white-space:nowrap}.theme-btn{white-space:nowrap;align-items:center;gap:6px;padding:6px 10px;font-size:12px;display:flex}.theme-btn svg{flex-shrink:0}@media (max-width:720px){.theme-btn span{display:none}}
