:root{--bg: #050505;--panel: #141416;--panel-hi: #1e1e22;--line: #2a2a2f;--gold: #d4af37;--gold-light: #f1d77a;--gold-dark: #9c7c1e;--text: #fff;--dim: #b4b4ba;--faint: #7c7c84;--danger: #e5534b;--ok: #58c46b}*{box-sizing:border-box}html{font-size:clamp(15px,1.45vw,26px)}body{margin:0;background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;overflow:hidden}button,input{font:inherit;color:inherit}button{background:var(--panel);border:.15rem solid transparent;border-radius:.5rem;padding:.6rem 1.1rem;cursor:pointer}button:hover{background:var(--panel-hi)}:focus{outline:none}:focus-visible,.focused{border-color:var(--gold)!important;background:var(--panel-hi);box-shadow:0 0 0 .12rem var(--gold)}input{background:var(--panel);border:.15rem solid var(--line);border-radius:.5rem;padding:.6rem .8rem;width:100%}input:focus{border-color:var(--gold)}h1,h2{margin:0 0 .6rem;color:var(--gold)}h1{font-size:1.8rem}h2{font-size:1.4rem}.dim{color:var(--dim)}.faint{color:var(--faint);font-size:.85rem}.error{color:var(--danger)}.ok{color:var(--ok)}.row{display:flex;gap:.6rem;align-items:center}.grow{flex:1;min-width:0}.app{height:100vh;display:flex;flex-direction:column}.top{display:flex;align-items:center;gap:.4rem;padding:.5rem 1rem;background:#000;border-bottom:1px solid var(--line);flex:none;overflow-x:auto}.top img{height:2rem;margin-right:.8rem}.top .tab{background:transparent;white-space:nowrap}.top .tab.on{color:var(--gold-light);border-bottom:.15rem solid var(--gold-dark)}.content{flex:1;min-height:0;padding:1rem 1.2rem;display:flex;flex-direction:column}.crumbs{color:var(--dim);margin-bottom:.6rem}.fill{flex:1;min-height:0}.vgrid{height:100%;overflow-y:auto;position:relative}.vgrid .inner{position:relative}.cell{position:absolute;padding:.2rem}.cell button{text-align:left}.cell .row>button{display:flex;align-items:center}.cell .row>button.grow{overflow:hidden}.list-logo{width:4.2rem;height:2.6rem;object-fit:contain;background:#000;border-radius:.3rem;flex:none}.poster{padding:.25rem}.poster button{display:flex;flex-direction:column;align-items:stretch;padding:.4rem;overflow:hidden}.poster img,.poster>button>div{width:100%;flex:1;min-height:0;object-fit:cover;background:#000;border-radius:.3rem}.cell .t{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.poster .t{font-size:.85rem;text-align:center;padding-top:.3rem}.star{color:var(--faint)}.star.on{color:var(--gold)}.login{display:grid;grid-template-columns:1fr 1fr;gap:2rem;padding:2rem 3rem;height:100vh;overflow:auto}.login .card{background:var(--panel);border-radius:.8rem;padding:1.4rem}.qrbox{background:#fff;padding:.8rem;border-radius:.6rem;width:min(24rem,100%);aspect-ratio:1}.qrbox svg{width:100%;height:100%;display:block}.code{font-size:2.6rem;letter-spacing:.4rem;color:var(--gold-light);font-weight:700}.field{margin:.5rem 0}.field label{display:block;color:var(--dim);margin-bottom:.25rem}.phone{padding:1.2rem;max-width:30rem;margin:0 auto;height:100vh;overflow:auto}.phone input{font-size:1.1rem}.phone button.primary,.login button.primary{background:var(--gold-dark);color:#000;font-weight:700}.player{position:fixed;inset:0;background:#000;z-index:50}.player video{width:100%;height:100%;background:#000}.player .bar{position:absolute;left:0;right:0;bottom:0;padding:1.2rem 1.5rem;background:#000000b3}.player .bar .title{font-size:1.4rem}.player .seek{height:.35rem;background:var(--line);border-radius:.2rem;margin:.6rem 0}.player .seek>div{height:100%;background:var(--gold);border-radius:.2rem}.player .msg{position:absolute;top:40%;left:0;right:0;text-align:center;font-size:1.4rem;padding:0 2rem}.player .controls{display:flex;gap:.5rem;margin-top:.4rem}.spinner{width:2.4rem;height:2.4rem;border:.3rem solid var(--line);border-top-color:var(--gold);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.spinner{animation-duration:3s}}.detail{display:flex;gap:1.5rem;margin-bottom:.8rem}.detail img{width:9rem;height:13rem;object-fit:cover;background:#000;border-radius:.4rem}.chips{display:flex;flex-wrap:wrap;gap:.4rem;margin:.4rem 0}.chips button.on{background:var(--gold-dark);color:#000}.panel-list label{display:flex;gap:.6rem;padding:.3rem 0}pre.diag{background:var(--panel);padding:.8rem;border-radius:.5rem;white-space:pre-wrap;font-size:.8rem;color:var(--dim)}@media(max-width:800px){html{font-size:16px}.login{grid-template-columns:1fr;padding:1rem}.top img{display:none}}.fb-back{position:fixed;inset:0;z-index:70;background:#000000c7;display:grid;place-items:center;padding:1rem}.fb{width:min(38rem,100%);background:var(--panel);border:.15rem solid var(--gold-dark);border-radius:.9rem;padding:1.4rem 1.4rem 1.6rem;box-shadow:0 .6rem 2rem #000000b3;text-align:center}.fb-title{font-size:1.5rem;color:var(--gold-light);font-weight:700}.fb-sub{color:var(--dim);font-size:.95rem;margin:.5rem 0 1.1rem}.fb-row{display:flex;gap:1rem;justify-content:center;align-items:center;flex-wrap:wrap}.fb-btn{display:flex;flex-direction:column;align-items:center;gap:.2rem;min-width:9rem;padding:.8rem 1.4rem;font-weight:700;border-radius:.8rem}.fb-btn.up{color:var(--ok)}.fb-btn.down{color:var(--danger)}.fb-btn.up:focus-visible{box-shadow:0 0 0 .15rem var(--ok);border-color:var(--ok)!important}.fb-btn.down:focus-visible{box-shadow:0 0 0 .15rem var(--danger);border-color:var(--danger)!important}
