#qr-login{margin:20px 0;padding:20px 0;border-bottom:1px solid #d8d8d8}
#qr-login>button{width:100%;min-height:48px}
.qr-content:empty{display:none}
.qr-content{text-align:center;margin-top:16px}
.qr-content img{display:block;width:280px;max-width:100%;height:auto;background:#fff;margin:0 auto 12px}
.qr-code{display:block;font-size:32px;letter-spacing:6px;font-variant-numeric:tabular-nums;margin:12px 0}
.phone-login{max-width:480px;margin:8vh auto;padding:24px}
.phone-login button{width:100%;min-height:48px}
.phone-login small{display:block;margin-top:24px}
[hidden]{display:none!important}
#tv-controls{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 18px;margin:0 0 16px;border:1px solid #bd9b58;background:#272a22;color:#f6e6bc;border-radius:8px}
#tv-controls strong{font-size:17px}#tv-controls p{margin:4px 0}#tv-controls small{display:block;font-size:12px;opacity:.85}
#tv-controls button{min-height:48px;min-width:190px;padding:10px 18px;font-size:16px;border:2px solid #c9a75d;background:#eee0bb;color:#25291f;border-radius:6px;cursor:pointer}
#tv-controls button:disabled{opacity:.65}
@media(max-width:600px){#tv-controls{flex-direction:column;align-items:stretch;margin:8px 0 16px}#tv-controls button{width:100%}}
html.tv-qr,html.tv-qr body,html.tv-qr #app{background:#20211b!important}
.tv-qr .login{position:fixed!important;inset:45px!important;width:calc(100% - 90px)!important;max-width:none!important;height:calc(100% - 90px)!important;margin:0!important;padding:0!important;background:repeating-linear-gradient(25deg,rgba(119,82,35,.035) 0 1px,transparent 1px 4px),linear-gradient(100deg,#cba35e,#d8b873 45%,#c39a53)!important;border-radius:3px!important;border:3px ridge #aa8950!important;box-shadow:inset 0 0 22px #94723c35,0 4px 13px #0005!important;display:grid!important;place-items:center!important}
.tv-qr .login>:not(#qr-login){display:none!important}
.tv-qr #qr-login{margin:0;padding:0;border:0;font-size:0}
.tv-qr .qr-content{margin:0;font-size:0}
.tv-qr .qr-content img{width:714px;max-width:90vw;height:auto;max-height:90vh;margin:0;image-rendering:pixelated;mix-blend-mode:multiply}
.tv-qr .qr-code,.tv-qr .qr-content p,.tv-qr #qr-login>button{display:none!important}

.tv-controls-actions{display:flex;gap:10px;flex-wrap:wrap}
#tv-qr-scanner{width:520px;max-width:94vw;max-height:92vh;padding:22px;color:#302b20;background:#f0dfb8}#tv-qr-scanner h2{font-size:22px}#tv-qr-scanner video{width:100%;max-height:45vh;object-fit:contain;background:#111}#tv-qr-scanner button,.tv-qr-photo{display:block;width:100%;min-height:48px;padding:12px;margin-top:12px;background:#302f25;color:#f6e6bc;border:1px solid #b38e47;border-radius:5px;text-align:center;cursor:pointer}.tv-qr-photo input{margin-top:8px;width:100%}
@media(max-width:600px){.tv-controls-actions{flex-direction:column;width:100%}}

#tv-qr-scanner{opacity:1;transform:translateY(0) scale(1);transition:opacity .28s ease,transform .28s ease}#tv-qr-scanner::backdrop{transition:background-color .28s ease,backdrop-filter .28s ease}#tv-qr-scanner.tv-qr-leaving{opacity:0;transform:translateY(12px) scale(.98);pointer-events:none}#tv-qr-scanner.tv-qr-leaving::backdrop{background-color:transparent;backdrop-filter:blur(0)}
@media(prefers-reduced-motion:reduce){#tv-qr-scanner,#tv-qr-scanner::backdrop{transition:none}}

