@font-face{font-family:Outfit;src:url(./Outfit-vXxiUg8D.ttf)format("truetype");font-weight:100 900;font-display:swap}@font-face{font-family:Plus Jakarta Sans;src:url(./PlusJakartaSans-BZU_LQer.ttf)format("truetype");font-weight:200 800;font-display:swap}@font-face{font-family:Space Grotesk;src:url(./SpaceGrotesk-Dcw4Q7AU.ttf)format("truetype");font-weight:300 700;font-display:swap}.tv-ui{--accent:#38bdf8;--accent-strong:#0ea5e9;--ink:#08131d;--surface:#182234;--border:#2a3b53;--muted:#a5b6ca;--radius:.9em;--gap:1em;color:#f1f5f9;box-sizing:border-box;background:#070c14;min-height:100dvh;font:clamp(12px,1.25vw,24px)/1.45 Outfit,sans-serif}.tv-ui *{box-sizing:border-box}:where(.tv-ui) button,:where(.tv-ui) input{font:inherit}.tv-ui button{cursor:pointer}.tv-ui button:disabled{cursor:default;opacity:.35}.tv-ui h1,.tv-ui h2,.tv-ui h3,.tv-ui p{margin:0}.tv-ui .icon{vertical-align:middle;flex-shrink:0;width:1.35em;height:1.35em}.demo-toolbar{background:#0a101b;border-bottom:1px solid #243244;flex-wrap:wrap;align-items:center;gap:.6em;min-height:3em;padding:.5em 1.5em;display:flex}.demo-label{color:var(--muted);letter-spacing:.14em;text-transform:uppercase;margin-right:auto;font-size:.7em}.demo-tabs{flex-wrap:wrap;gap:.35em;display:flex}.demo-toolbar .tv-tab{padding:.35em .7em;font-size:.76em}.demo-workspace{grid-template-rows:auto minmax(0,1fr);height:100dvh;display:grid}.demo-stage{justify-content:center;align-items:center;padding:.5em;display:flex;container-type:size}.screen{--canvas-width:min(100cqw,calc(100cqh * 16 / 9));width:var(--canvas-width);height:calc(var(--canvas-width) * 9 / 16);font-size:calc(var(--canvas-width) / 80);aspect-ratio:16/9;background:radial-gradient(at 50% 5%,#15344a77,#0000 60%),linear-gradient(#141e2e,#0f1725 50%,#0b111b);border:1px solid #33415588;border-radius:1.5em;flex-shrink:0;grid-template-rows:max-content minmax(0,1fr) max-content;padding:1.8em 2.8em;display:grid;position:relative;overflow:hidden;box-shadow:0 1em 3em #0004}.screen-header{flex-shrink:0}.brand{flex-direction:column;align-items:center;gap:.3em;display:flex}.brand-symbol{filter:drop-shadow(0 0 1em #0ea5e955);width:3.5em;height:3.5em}.brand-wordmark{letter-spacing:.02em;font-size:2.2em;font-weight:800;line-height:1.2}.brand-wordmark>span{letter-spacing:.2em;color:#7dd3fc;font-weight:400}.screen-content{flex:1;justify-content:center;align-items:center;min-height:0;padding:1em 0;display:flex}.screen-footer{min-height:2.8em;color:var(--muted);flex-shrink:0;justify-content:center;align-items:center;font-family:Plus Jakarta Sans,sans-serif;font-size:.65em;display:flex;position:relative}.device-metadata{flex-direction:column;align-items:center;gap:.15em;display:flex}.device-metadata i{color:var(--accent);padding:0 .4em;font-style:normal}.device-mac{letter-spacing:.05em;font-family:monospace}.device-mac b{color:#7dd3fc}.remote-legend{text-transform:uppercase;background:#182234;border:1px solid #2a3b53;border-radius:.7em;align-items:center;gap:.9em;padding:.5em .7em;font:600 .85em Outfit,sans-serif;display:flex;position:absolute;bottom:0;right:0}.remote-legend>span{align-items:center;gap:.45em;display:flex}.remote-legend kbd{color:var(--accent);font:inherit;background:#0f1725;border:1px solid #38bdf866;border-radius:.3em;padding:.25em .45em}.legend-extra{opacity:.45}.tv-control{color:#f1f5f9;border-radius:var(--radius);background:linear-gradient(145deg,#ffffff14,#b4e1ff05);border:1px solid #c3f5ff33;outline:none;justify-content:center;align-items:center;gap:.6em;min-width:0;transition:background .12s,border-color .12s;display:inline-flex;box-shadow:inset 0 1px 1px #fff2,0 .4em 1.2em #0003}.tv-button{padding:.6em 1.2em;font-weight:500}.tv-card{flex-direction:column;padding:1.2em;font-size:1.3em;font-weight:700}.tv-row{text-align:left;justify-content:flex-start;padding:.7em 1.2em}.tv-icon{border-radius:.6em;padding:.5em}.tv-tab{box-shadow:none;background:#172234;border-color:#0000}.tv-control:focus,.tv-control[aria-pressed=true]:focus{background:linear-gradient(145deg,var(--accent),var(--accent-strong));color:var(--ink);outline-offset:2px;border-color:#b3ebff;outline:2px solid #7dd3fc77;box-shadow:0 .5em 1.5em #0ea5e933}.tv-tab[aria-pressed=true]{border-color:var(--accent);color:var(--accent)}.tv-control.primary{background:linear-gradient(145deg,var(--accent),var(--accent-strong));color:var(--ink);font-weight:800}.tv-control:disabled{box-shadow:none}.tv-field{border:1px solid var(--border);background:#0f1725cc;border-radius:.9em;align-items:center;gap:.7em;min-width:0;padding:.65em .9em;display:flex;position:relative}.tv-field:focus-within{border-color:var(--accent);box-shadow:0 0 1em #38bdf833}.tv-field>.icon{color:var(--muted)}.tv-field:focus-within>.icon{color:var(--accent)}.tv-field input{color:#f1f5f9;background:0 0;border:0;outline:none;width:100%;min-width:0;padding:.15em 0;font:400 .9em Plus Jakarta Sans,sans-serif}.tv-field input::placeholder{color:#e2e8f0}.tv-field .tv-icon{box-shadow:none;background:0 0;border:0;padding:0}.editing-hint{color:var(--accent);z-index:2;background:#0f1725;font-size:.6em;position:absolute;top:100%;right:.8em}.is-editing{outline:2px solid var(--accent)}.language-list{flex-direction:column;gap:.55em;width:46%;display:flex}.section-caption{text-align:center;color:#cbd5e1;font-family:Plus Jakarta Sans,sans-serif;font-size:.9em;margin-bottom:1.4em!important}.language-list .tv-row{gap:.9em;font-size:1.05em;font-weight:700}.language-list .tv-row>.icon{opacity:0;width:1em;margin-left:auto}.flag{border-radius:.2em;flex-shrink:0;width:1.7em;height:1.1em;display:inline-flex;overflow:hidden;box-shadow:0 0 0 1px #fff2}.flag-fr{background:linear-gradient(90deg,#002395 33.3%,#fff 33.3% 66.6%,#ed2939 66.6%)}.flag-es{background:linear-gradient(#aa151b 25%,#f1bf00 25% 75%,#aa151b 75%)}.flag-de{background:linear-gradient(#000 33.3%,#d00 33.3% 66.6%,#ffce00 66.6%)}.flag-it{background:linear-gradient(90deg,#009246 33.3%,#fff 33.3% 66.6%,#ce2b37 66.6%)}.flag svg{width:100%;height:100%}.scroll-hint{text-align:center;color:#38bdf888;font-size:1.1em;line-height:.6}.dual-content{flex-direction:column;gap:1em;width:78%;display:flex}.dual-content>h1{text-align:center;font-size:1.4em}.dual-panels{grid-template-columns:1fr 1fr;gap:1.5em;display:grid}.glass-panel{background:linear-gradient(145deg,#ffffff14,#b4e1ff04);border:1px solid #c3f5ff33;border-radius:1.25em;padding:1.5em;box-shadow:inset 0 1px 1px #fff2,0 .6em 1.7em #0003}.glass-panel h2{margin-bottom:.85em;font-size:1.35em}.sample-form{flex-direction:column;gap:.65em;display:flex}.sample-form>.tv-button{margin-top:.55em}.qr-panel{text-align:center;flex-direction:column;justify-content:space-between;align-items:center;gap:.8em;display:flex}.qr-panel h2{margin-bottom:0;font-size:1.25em}.qr-placeholder{color:#374151;background:#cbd5e1;border:.6em solid #fff;border-radius:1em;flex-direction:column;justify-content:center;align-items:center;gap:.5em;width:9.5em;height:9.5em;display:flex}.qr-placeholder .icon{width:2.5em;height:2.5em}.qr-panel p{color:#cbd5e1;font-family:Plus Jakarta Sans,sans-serif;font-size:.8em}.home-content{flex-direction:column;align-items:center;gap:1.2em;width:83%;display:flex}.playlist-pill{color:#cbd5e1;background:#bae6fd15;border:1px solid #fff4;border-radius:2em;padding:.5em 1.1em;font-size:.7em}.playlist-pill b{color:#7dd3fc}.home-caption{color:var(--muted);font-family:Plus Jakarta Sans,sans-serif;font-size:.65em}.home-cards{grid-template-columns:repeat(4,1fr);gap:1em;width:100%;display:grid}.home-cards .tv-card{min-height:7.5em}.home-cards .icon{width:2.7em;height:2.7em;color:var(--accent);margin-bottom:.5em}.home-cards .tv-card:focus .icon{color:var(--ink)}.home-actions{gap:.8em;margin-top:.6em;display:flex}.home-actions .tv-button{font-size:.85em}.home-actions .icon{color:var(--accent)}.screen--live{--accent:#00e5ff;--accent-strong:#00b2d6;--surface:#141a22;--border:#2a323d;--muted:#bac9cc;background:#0b1017;border:0;border-radius:.5em;padding:0}.screen--live .screen-header{background:#060a0f;border-bottom:1px solid #2a323d;justify-content:space-between;align-items:center;height:4.1em;padding:0 1.6em;display:flex}.brand--compact{flex-direction:row;gap:.65em}.brand--compact .brand-wordmark{letter-spacing:.02em;font:700 1.4em Space Grotesk,sans-serif}.brand--compact .brand-wordmark>span{color:var(--accent);letter-spacing:0;font-weight:800}.brand-tile{width:2.5em;height:2.5em;color:var(--accent);background:#00e5ff15;border:1px solid #00e5ff66;border-radius:.7em;justify-content:center;align-items:center;display:flex}.version-badge{color:var(--muted);background:#2a323d;border-radius:.3em;padding:.3em .6em;font-size:.6em}.live-heading{align-items:center;gap:1.2em;display:flex}.live-heading>span:last-child{font:600 1.3em Space Grotesk,sans-serif}.live-heading .icon{margin-right:.4em;font-size:.7em}.live-heading small{color:var(--muted);font:400 .45em Outfit,sans-serif}.status-pill{color:var(--accent);letter-spacing:.07em;background:#00e5ff12;border:1px solid #00e5ff77;border-radius:2em;padding:.35em .9em;font-size:.8em;font-weight:700}.screen--live .screen-content{align-items:stretch;gap:.8em;padding:.9em 1.2em}.live-columns{grid-template-columns:3.2em 1fr 1.28fr 1.1fr;gap:.8em;width:100%;min-height:0;display:grid}.live-sidebar{background:#060a0f;border:1px solid #2a323d;border-radius:1em;flex-direction:column;gap:.8em;padding:.8em .4em;display:flex}.live-sidebar .tv-icon{font-size:.95em}.sidebar-bottom{margin-top:auto}.live-panel{background:#141a22;border:1px solid #2a323d77;border-radius:1em;flex-direction:column;gap:.5em;min-width:0;padding:1em .8em;display:flex;overflow:hidden}.live-panel h1,.live-panel h2{letter-spacing:.02em;text-transform:uppercase;flex-shrink:0;margin-bottom:.5em;font-size:.85em}.live-panel h1 span,.live-panel h2 span{float:right;color:var(--muted);background:#2a323d;border-radius:1em;padding:.1em .5em;font-size:.8em}.live-list{flex-direction:column;gap:.5em;padding:.2em;display:flex;overflow:auto}.live-list .tv-row{box-shadow:none;background:#191f27;border-color:#0000;border-radius:.7em;flex-shrink:0;gap:.7em;width:100%;min-height:3.5em;padding:.8em .7em;font-size:.8em}.live-list .tv-row:focus{border-color:var(--accent);color:#fff;outline-color:var(--accent);background:#00e5ff15;box-shadow:0 0 1em #00e5ff22}.live-list .tv-row[aria-pressed=true]{color:#00363d;background:#00e5ff}.row-text{flex-direction:column;gap:.2em;min-width:0;display:flex}.row-text strong{white-space:nowrap;text-overflow:ellipsis;font-size:1.05em;overflow:hidden}.row-text small{color:var(--muted);font-size:.75em}.channel-monogram{color:var(--accent);background:#2a323d;border-radius:.5em;flex-shrink:0;justify-content:center;align-items:center;width:2.7em;height:2.7em;font-size:.75em;font-weight:700;display:flex}.row-count{color:var(--muted);background:#2a323d;border-radius:.5em;margin-left:auto;padding:.3em .55em;font-size:.8em}.preview-column{flex-direction:column;gap:.8em;min-width:0;display:flex}.preview-placeholder{background:radial-gradient(at 50% 100%,#14637555,#0000),#101c25;border:1px solid #2a323d;border-radius:1em;flex-direction:column;justify-content:center;align-items:center;gap:.6em;height:9em;display:flex;position:relative}.preview-placeholder>.icon{color:#4cd6fb;width:2.4em;height:2.4em}.preview-placeholder>span{font-size:.8em}.preview-placeholder small{color:var(--muted);font-size:.65em}.preview-caption{color:var(--accent);font-size:.55em;position:absolute;top:.65em;left:.8em}.programme-panel{background:#141a22;border:1px solid #2a323d;border-radius:1em;flex-direction:column;gap:.7em;padding:1em;display:flex}.programme-panel h3{font:600 1.15em Space Grotesk,sans-serif}.programme-panel p{color:var(--muted);font-size:.7em}.programme-panel .status-pill{align-self:flex-start;font-size:.6em}.progress-track{background:#2a323d;border-radius:1em;height:.4em;overflow:hidden}.progress-track span{background:linear-gradient(90deg,#4cd6fb,#c3f5ff,#00e5ff);width:62%;height:100%;display:block}.sample-note{color:var(--muted);font-size:.6em;line-height:1.4}.screen-footer--live{background:#060a0f;border-top:1px solid #2a323d;justify-content:space-between;height:3.4em;padding:0 1.8em;font-size:.65em}.screen-footer--live .remote-legend{background:0 0;border:0;padding:0;font-size:1em;position:static}.screen-footer--live kbd{color:#fff;background:#2a323d;border-color:#3b494c}.screen-footer--live kbd.key-primary{background:var(--accent);color:#00363d}.color-legend{text-transform:uppercase;gap:1em;font:600 1em Outfit,sans-serif;display:flex}.color-legend>span{align-items:center;gap:.4em;display:flex}.color-legend i{background:#00e5ff;border-radius:50%;width:.6em;height:.6em}.color-legend i.red{background:#ef4444}.color-legend i.green{background:#22c55e}.color-legend i.yellow{background:#eab308}.gallery-content{text-align:center;flex-direction:column;gap:1.5em;width:85%;display:flex}.gallery-content h1{font-size:1.6em}.gallery-content p{color:var(--muted);font-size:.85em}.gallery-content .home-cards .tv-card{min-height:6em;font-size:1em}.lab-content{align-items:stretch;gap:1em;width:95%;display:flex}.lab-controls{grid-template-columns:1fr 1fr;gap:.6em;width:58%;display:grid}.lab-controls .tv-control{font-size:.8em}.lab-controls .tv-field{grid-column:1/-1}.lab-list{flex-direction:column;gap:.5em;width:42%;max-height:14em;padding:.2em;display:flex;overflow:auto}.lab-list .tv-control{flex-shrink:0;font-size:.8em}.lab-feedback{color:#7dd3fc;min-height:1.5em;font-size:.8em}.content-state{text-align:center;color:var(--muted);padding:1em}.content-state>.icon{color:var(--accent);margin-bottom:.5em;font-size:1.5em}.content-state h2{color:#fff;font-size:1.2em}.content-state p{margin-top:.5em;font-size:.75em}.demo-status{color:#7dd3fc;flex-basis:100%;font-size:.7em}.modal-backdrop{z-index:10;background:#030711cc;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.demo-dialog{background:linear-gradient(145deg,#1b2f45,#0e1929);border:1px solid #38bdf877;border-radius:1.3em;flex-direction:column;gap:1em;width:28em;max-width:90vw;padding:2em;display:flex;box-shadow:0 1em 4em #0009}.demo-dialog h2{font-size:1.5em}.demo-dialog p{color:var(--muted);font-size:.9em}.dialog-actions{gap:.7em;display:flex}.diagnostic{color:#eef5fc;margin:3rem;font:1.2rem system-ui,sans-serif}.diagnostic button{font:inherit;padding:.6rem 1.2rem}.diagnostic button:focus-visible{outline-offset:4px;outline:3px solid #69d7f0}body{background:#070c14;margin:0}html{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@media (prefers-reduced-motion:reduce){.tv-ui *{transition:none!important}}@media (max-aspect-ratio:4/3){.demo-label{width:100%}}.language-list .tv-row:focus>.icon{opacity:1}
