.tv{min-height:100vh;background:radial-gradient(ellipse at top,#202c20,#101313 65%);font-family:Manrope,system-ui,sans-serif}.tv #display{max-width:1800px;margin:auto;padding:4vw}.pair-entry{max-width:680px;margin:12vh auto}.pair-entry h1{font-size:clamp(32px,5vw,64px)}.pair-entry input{font-size:28px;letter-spacing:5px;width:100%;margin:15px 0}.pair-entry button{width:100%}.tv-header{display:flex;justify-content:space-between;align-items:center;gap:20px}.tv h1{font-size:clamp(32px,4vw,72px)}.tv-connection{padding:10px 16px;border:1px solid var(--line);border-radius:25px;color:var(--green)}.tv-connection.stale{color:#ffd0bc;border-color:#83574b}.tv-stats{display:flex;gap:24px;flex-wrap:wrap;margin:35px 0}.tv-stat{padding:20px 30px;border-left:2px solid var(--green);background:#c5ee9108;min-width:170px}.tv-stat b{font-size:clamp(32px,4vw,68px);display:block}.tv-stat span{color:var(--muted);font-size:16px}.tv-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:15px}.tv-player{padding:22px;background:#1c241e;border:1px solid #3d4c35;border-radius:12px;min-height:120px}.tv-player strong{display:block;font-size:clamp(21px,2vw,36px);overflow-wrap:anywhere}.tv-player small{font-size:15px;display:block;margin-top:12px}.tv-player.dead{background:#171a18;border-color:#303532;opacity:.6}.tv-player.dead strong{text-decoration:line-through}.tv-tally{margin-top:35px}.tv-tally .chip{font-size:22px;padding:15px 22px}.tv-footer{margin-top:35px;display:flex;justify-content:space-between;align-items:center;gap:20px}.tv-footer button{font-size:13px}.tv-night{text-align:center;padding:4vh 0;margin-bottom:25px;color:var(--green);font-family:Georgia,serif;font-size:clamp(25px,3vw,46px)}.tv-blank{display:grid;place-content:center;min-height:70vh;text-align:center}.tv-blank h1{color:var(--green)}.display-pair{display:flex;gap:30px;align-items:center;flex-wrap:wrap}.qr{background:white;padding:12px;border-radius:10px;width:190px;flex-shrink:0}.qr svg{display:block;width:100%;height:auto}.pair-code{font-size:34px;font-weight:800;letter-spacing:4px;color:var(--green)}.public-preview-grid{display:flex;flex-wrap:wrap}@media(max-width:600px){.tv-grid{grid-template-columns:1fr 1fr}.tv-player{padding:15px}.tv-header{display:block}.tv-stats{gap:10px}.tv-stat{min-width:100px;padding:12px 18px}.tv-footer{flex-wrap:wrap}}
.tv{background:radial-gradient(ellipse at 8% 0,#34274799,transparent 60%),radial-gradient(ellipse at right,#16444566,transparent 65%),#111520}.tv-player{background:linear-gradient(135deg,#20393c,#1e2b36);border-color:#477273}.tv-player:nth-child(3n+2){border-color:#70608b;background:linear-gradient(135deg,#352c46,#252d3a)}.tv-player:nth-child(3n+3){border-color:#657146;background:linear-gradient(135deg,#303c2b,#242f35)}.tv-player small{color:#b6ebd6}.tv-player.dead{opacity:1;border-color:#7c4c53;background:#33252f}.tv-player.dead strong{color:#e3b7b6}.tv-player.dead small{color:#ffb3a9}.tv-stat{border-color:var(--cyan);background:#7cdddc0a;border-radius:4px}.tv-stat b{color:var(--cyan)}.tv-stat:nth-child(2){border-color:var(--violet);background:#c2a8ff0a}.tv-stat:nth-child(2) b{color:var(--violet)}.tv-stat:nth-child(3){border-color:var(--amber);background:#ffd47c0a}.tv-stat:nth-child(3) b{color:var(--amber)}.tv-report{margin-top:20px}.tv-report h2{font-size:clamp(26px,2.7vw,44px)}.tv-report li{font-size:clamp(19px,2vw,30px)}.tv-report ul{display:flex;flex-wrap:wrap;gap:8px 50px}.tv-tally{padding:26px;border:1px solid #8b7646;border-top:4px solid var(--amber);border-radius:13px;background:linear-gradient(130deg,#383323,#252838);margin:24px 0 30px}.tv-tally .eyebrow{color:var(--amber)}.tv-tally h2{font-size:clamp(23px,2.5vw,38px);margin-top:9px}.tally-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin-top:20px}.tally-candidate{padding:18px;background:#10152077;border:1px solid #6c634b;border-radius:9px}.tally-candidate strong{font-size:clamp(18px,2vw,29px);overflow-wrap:anywhere}.tally-number{color:var(--amber);font-size:clamp(32px,4vw,60px);padding-left:15px}.tally-candidate.leader{border-color:var(--cyan);background:#1d3d3c}.tally-candidate.leader .tally-number{color:#acf1dd}.vote-track{height:9px;border-radius:10px;background:#0005;overflow:hidden;margin-top:12px}.vote-track span{height:100%;display:block;background:var(--amber);border-radius:10px}.leader .vote-track span{background:var(--cyan)}@media(max-width:600px){.tv-tally .row{flex-wrap:wrap}.tally-grid{grid-template-columns:1fr}.tv-report ul{display:block}}
.restriction-badges{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px}.restriction-badges span{display:inline-block;border-radius:6px;font-size:clamp(14px,1.4vw,21px);font-weight:700;padding:7px 10px;border:1px solid}.mouth-badge{background:#483661;color:#ebd5ff;border-color:#a78bd0!important}.hand-badge{background:#4a3d25;color:#ffe4a0;border-color:#b79850!important}
