.ktv-root{position:fixed;inset:0;display:flex;flex-direction:column;background:#0b0c0f;color:#f5f5f4;cursor:none;overflow:hidden;font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;font-size:19px;font-size:calc(clamp(11px,.55vw + .85vh,34px) * var(--ktv-scale, 1));line-height:1.15;-webkit-user-select:none;-moz-user-select:none;user-select:none}.ktv-root *{cursor:none!important;box-sizing:border-box}.ktv-d0{--ktv-scale: 1}.ktv-d1{--ktv-scale: .82}.ktv-d2{--ktv-scale: .68}.ktv-header{display:flex;align-items:center;justify-content:space-between;padding:.5em 1em;background:#15171c;border-bottom:2px solid #2a2d35;flex:0 0 auto}.ktv-title{font-weight:900;letter-spacing:.08em;font-size:1.3em;color:#fbbf24}.ktv-count{font-weight:800;font-size:1.2em;color:#e7e5e4}.ktv-right{display:flex;align-items:center;gap:1em}.ktv-clock{font-weight:900;font-size:1.5em;font-variant-numeric:tabular-nums}.ktv-status{font-size:.85em;font-weight:700;color:#a8a29e}.ktv-status.ktv-bad{color:#111;background:#fbbf24;padding:.15em .6em;border-radius:1em}.ktv-body{position:relative;flex:1 1 auto;min-height:0;padding:.6em;overflow:hidden}.ktv-grid{position:relative;height:100%;overflow:hidden;display:grid;grid-template-columns:repeat(auto-fill,minmax(20em,1fr));grid-auto-rows:max-content;align-content:start;align-items:start;grid-gap:.6em;gap:.6em}.ktv-card{background:#171a20;border:2px solid #2f333c;border-left-width:.45em;border-radius:.6em;padding:.5em .7em .6em;overflow:hidden}.ktv-card.ktv-hidden{visibility:hidden}.ktv-late{background:#3b0d10;border-color:#ef4444}.ktv-head{display:flex;align-items:flex-start;justify-content:space-between}.ktv-turno{font-weight:900;font-size:2.3em;line-height:1;font-variant-numeric:tabular-nums}.ktv-turno small{font-size:.42em;color:#a8a29e;margin-right:.25em;letter-spacing:.05em}.ktv-cliente{font-weight:800;font-size:1.15em;line-height:1.15;margin-top:.15em;color:#fef3c7;max-width:11em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ktv-timerbox{text-align:right;min-width:6.2em}.ktv-timer{display:inline-block;font-weight:900;font-size:1.7em;line-height:1.1;font-variant-numeric:tabular-nums;background:#262a33;color:#e7e5e4;border-radius:.4em;padding:.05em .4em}.ktv-late .ktv-timer{background:#ef4444;color:#fff}.ktv-late-row{height:1.2em;font-weight:900;font-size:.95em;color:#fca5a5;font-variant-numeric:tabular-nums;white-space:nowrap}.ktv-badge{display:inline-block;font-weight:900;font-size:1.05em;letter-spacing:.04em;border-radius:1em;padding:.15em .8em;margin-top:.3em}.ktv-lines{list-style:none;margin:.5em 0 0;padding:.4em 0 0;border-top:2px dashed #3a3f4a}.ktv-line{padding:.15em 0;font-size:1.2em;font-weight:800}.ktv-qty{display:inline-block;min-width:1.9em;color:#fbbf24;font-weight:900}.ktv-tag{font-size:.6em;font-weight:900;background:#fbbf24;color:#111;border-radius:1em;padding:.05em .5em;margin-left:.5em;vertical-align:middle}.ktv-detail{display:block;padding-left:2.2em;font-size:.82em;font-weight:700;color:#c7c2bd}.ktv-lnote{display:block;padding-left:2.2em;font-size:.82em;font-weight:800;font-style:italic;color:#fca5a5}.ktv-more{font-weight:900;color:#fbbf24;font-size:1em;padding-top:.2em}.ktv-note{margin-top:.5em;padding:.3em .6em;border-radius:.5em;background:#3a2f0a;color:#fde68a;font-weight:800;font-style:italic;font-size:.95em}.ktv-nolines{color:#a8a29e;font-weight:700;font-size:1em;padding-top:.3em}.ktv-queue{position:absolute;right:.8em;bottom:.8em;z-index:5;background:#fbbf24;color:#111;font-weight:900;font-size:1.4em;border-radius:2em;padding:.25em 1em;box-shadow:0 0 0 3px #0b0c0f}.ktv-empty{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:3em;font-weight:900;color:#78716c;text-align:center;padding:1em}.ktv-center{position:fixed;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#0b0c0f;color:#e7e5e4;font-size:28px;font-weight:800;text-align:center;padding:1em}.ktv-banner{position:fixed;top:0;left:0;right:0;z-index:50;background:#fbbf24;color:#111;text-align:center;font-weight:900;padding:.7em 1em;font-size:18px}.ktv-ribbon{flex:0 0 auto;background:#7c3aed;color:#fff;text-align:center;font-weight:900;font-size:.8em;padding:.2em;letter-spacing:.05em}.ktv-pair{position:fixed;inset:0;overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:#0b0c0f;color:#f5f5f4;padding:2em;font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;font-size:20px;font-size:clamp(14px,.55vw + .85vh,34px)}.ktv-pair-title{font-weight:900;letter-spacing:.1em;color:#fbbf24;font-size:1.6em}.ktv-pair-code{margin:.4em 0;font-weight:900;font-size:7em;letter-spacing:.08em;font-variant-numeric:tabular-nums;color:#fff;background:#171a20;border:.06em solid #fbbf24;border-radius:.2em;padding:.1em .4em}.ktv-pair-timer{font-size:1.6em;font-weight:800;color:#fde68a}.ktv-pair-steps{margin:1.2em 0 0;padding:0;list-style:none;font-size:1.5em;font-weight:700;color:#e7e5e4;line-height:1.5}.ktv-pair-off{margin-top:1em;background:#fbbf24;color:#111;font-weight:900;border-radius:1em;padding:.2em .9em;font-size:1.1em}.ktv-pair-link{margin-top:2em;background:none;border:0;color:#a8a29e;font-size:.9em;text-decoration:underline;cursor:pointer}.ktv-reconectando{position:fixed;top:1rem;left:50%;transform:translate(-50%);z-index:50;padding:.6rem 1.4rem;border-radius:999px;background:#f59e0b;color:#1c1917;font-weight:800;font-size:1.4rem;box-shadow:0 4px 16px #00000080}.ktv-roku-hint{position:fixed;top:1rem;left:50%;transform:translate(-50%);z-index:60;padding:.6rem 1.4rem;border-radius:999px;background:#fbbf24;color:#111;font-weight:800;font-size:1.2rem;box-shadow:0 4px 16px #00000080;pointer-events:none;text-align:center}.ktv-roku-hint kbd{background:#111;color:#fbbf24;border-radius:.3em;padding:.05em .5em;font-weight:900;margin:0 .1em}.logo{height:6em;padding:1.5em;will-change:filter;transition:filter .3s}.logo:hover{filter:drop-shadow(0 0 2em #646cffaa)}.logo.react:hover{filter:drop-shadow(0 0 2em #61dafbaa)}@keyframes logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media(prefers-reduced-motion:no-preference){a:nth-of-type(2) .logo{animation:logo-spin infinite 20s linear}}.card{padding:2em}.read-the-docs{color:#888}
