body.pairing-open{overflow:hidden}
#sync-panel{position:fixed;inset:0;z-index:10000;margin:0;padding:clamp(14px,3vh,32px) 16px;background:rgba(6,12,20,.96);border:0;border-radius:0;overflow:auto;overscroll-behavior:contain;display:grid;align-items:start;justify-items:center}
#sync-panel[hidden]{display:none}
.pairing-dialog{width:100%;max-width:880px;padding:clamp(20px,3vw,36px);border:1px solid #29496f;border-radius:22px;background:#102641;box-sizing:border-box;line-height:1.6}
.pairing-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}
.pairing-heading h2{font-size:clamp(24px,2.5vw,34px);line-height:1.35;margin:0}
.pairing-heading #pair-close{flex:none;min-width:48px;padding:8px 14px}
.pairing-dialog p{font-size:17px;margin:14px 0;color:#d4deea}
.pairing-dialog .pairing-lead{font-size:19px;color:#f2f6fc}
.pairing-dialog h3{font-size:23px;margin:12px 0}
.pairing-actions{display:flex;gap:14px;flex-wrap:wrap;margin:22px 0}
.pairing-actions .tv-button{flex:1;min-width:190px}
.pairing-grid{display:grid;grid-template-columns:minmax(230px,1fr) minmax(240px,1fr);gap:28px;align-items:center;margin:22px 0}
#pair-qr{display:block;width:100%;max-width:320px;height:auto;margin:auto;border-radius:6px;image-rendering:pixelated}
#pair-qr[hidden]{display:none}
.pairing-code{font-family:ui-monospace,monospace;font-size:clamp(40px,5.5vw,64px);font-weight:700;letter-spacing:.12em;white-space:nowrap;color:#9bf0d5;line-height:1.3;margin:14px 0}
#pair-site{overflow-wrap:anywhere;color:#9bf0d5}
#pair-expiry{font-variant-numeric:tabular-nums;font-size:16px}
#pair-code-input{font:inherit;font-size:32px;letter-spacing:.15em;width:100%;box-sizing:border-box;margin:10px 0}
.pairing-confirm-check{display:flex;gap:12px;align-items:flex-start;margin:20px 0;font-size:18px}
.pairing-confirm-check input{width:24px;height:24px;flex:none;accent-color:#9bf0d5;margin-top:4px}
.pairing-warning{padding:14px 18px;border:1px solid #927336;border-radius:12px;background:#342f22}
.pairing-dialog .pairing-small{font-size:15px;color:#b9cada}
.pairing-dialog details{border-top:1px solid #36506b;margin-top:24px;padding-top:16px}
.pairing-dialog summary{cursor:pointer;padding:12px 0;color:#c6d5e5}
.pairing-dialog #sync-code{font-size:14px;min-width:0}
.pairing-dialog #sync-status{font-size:15px;color:#a9c5b9;border-top:1px solid #29496f;padding-top:14px}
#pair-notice{padding:12px 18px;border:1px solid #4c8375;border-radius:10px;background:#122e2a;color:#d7fff3;font-size:16px}
#pair-error{margin:18px 0 0}
.pairing-dialog [hidden]{display:none!important}
.pairing-dialog :focus-visible{outline:3px solid #9bf0d5;outline-offset:4px}
@media(max-width:600px){.pairing-grid{grid-template-columns:1fr;gap:16px}.pairing-dialog{padding:20px}.pairing-actions{flex-direction:column;gap:12px}.pairing-actions .tv-button{width:100%;min-width:0}.pairing-code{font-size:44px}.pairing-dialog p{font-size:16px}#pair-qr{max-width:248px}.pairing-heading h2{font-size:24px}}
@media(min-width:1051px) and (max-height:800px){#sync-panel{padding:16px}.pairing-dialog{max-width:900px;padding:22px 30px}.pairing-grid{margin:14px 0}#pair-qr{max-width:256px}.pairing-dialog h3{margin:8px 0}.pairing-dialog p{margin:10px 0}}
