:root{--bg:#020704;--panel:#0c1114;--text:#f8faf8;--muted:#abb7af;--purple:#bd31ed;--lime:#b6ff38;--line:rgba(255,255,255,.16)}
*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden;background:#020503;color:var(--text);font-family:Arial,"Helvetica Neue",sans-serif}button{font:inherit;color:inherit}.hidden{display:none!important}.activation-screen{height:100vh;display:grid;grid-template-columns:72% 28%;background:radial-gradient(circle at 60% 45%,rgba(18,103,45,.35),transparent 33%),linear-gradient(145deg,#020604,#06170c 52%,#020604)}.activation-main{position:relative;padding:5vh 5vw;background:linear-gradient(150deg,transparent 35%,rgba(18,101,46,.16) 36%,transparent 63%)}.activation-header{display:flex;align-items:center;gap:1.2vw;font-size:2vw;font-weight:300}.activation-header i{height:5vh;width:2px;background:#fff}.brand-mark{width:4.3vw;height:4.3vw;border:3px solid var(--lime);border-radius:50%;display:grid;place-items:center;color:var(--lime);font-style:italic;font-size:1.4vw;font-weight:900;box-shadow:0 0 1.2vw rgba(182,255,56,.24)}.activation-copy{position:absolute;left:5vw;top:32vh;max-width:45vw}.kicker{color:var(--lime);letter-spacing:.16em;font-size:.8vw;font-weight:800}.activation-copy h1{font-size:3.2vw;margin:1vh 0}.activation-copy>p:not(.kicker){font-size:1.25vw;color:#c6d0ca;line-height:1.5}.sync-state{display:flex;align-items:center;gap:1vw;margin-top:5vh;padding:1.5vh 1.1vw;width:max-content;border:1px solid rgba(182,255,56,.28);border-radius:.7vw;background:rgba(0,0,0,.28);color:#d7e6db}.spinner{width:1.2vw;height:1.2vw;border:3px solid rgba(255,255,255,.2);border-top-color:var(--lime);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.activation-main footer{position:absolute;bottom:5vh;color:#829087;font-size:.9vw}.activation-card{position:relative;border-left:2px solid rgba(255,255,255,.55);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4vh 2.4vw;background:linear-gradient(155deg,rgba(0,0,0,.48),rgba(7,33,17,.78))}.qr-wrap{position:relative;width:15.5vw;height:15.5vw;padding:.7vw;border:.22vw solid #1da8ff;border-radius:1vw;background:#fff;display:grid;place-items:center}.qr-wrap img{width:100%;height:100%;object-fit:contain}.qr-wrap span{position:absolute;color:#111;font-size:3vw;font-weight:900;z-index:-1}.qr-label{color:var(--purple);font-size:1.25vw;margin:2.3vh 0 3.3vh}.device-field{text-align:center;margin:1.1vh 0}.device-field label{display:block;font-size:1.15vw;margin-bottom:.8vh}.device-field strong{color:var(--purple);font-size:1.75vw;font-weight:500;letter-spacing:.04em}.refresh-button{margin-top:2.3vh;border-radius:2vw;background:rgba(255,255,255,.07)}.activation-card small{max-width:20vw;margin-top:1.3vh;color:#78857c;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.version{position:absolute;right:1.2vw;bottom:2vh;font-size:1vw}.focusable{border:1px solid var(--line);outline:0;cursor:pointer;transition:.15s transform,.15s box-shadow}.focusable:focus{transform:scale(1.045);border-color:#fff;box-shadow:0 0 0 .24vw var(--purple),0 0 2vw rgba(189,49,237,.48);z-index:3}.app-shell{height:100vh;padding:2.6vh 2.2vw;background:radial-gradient(circle at 78% 0,rgba(42,129,64,.28),transparent 35%),#030706}.catalog-header{height:7vh;display:flex;justify-content:space-between;align-items:center}.brand{display:flex;align-items:center;gap:1vw;font-size:1.2vw;font-weight:800}.brand .brand-mark{width:3.1vw;height:3.1vw;font-size:1vw}.catalog-status{display:flex;align-items:center;gap:2vw;color:var(--muted)}.catalog-status strong{font-size:1.7vw;color:#fff}.catalog-hero{height:24vh;padding:3vh 2vw;border:1px solid var(--line);border-radius:1.3vw;background:linear-gradient(90deg,rgba(6,28,15,.96),rgba(24,11,38,.78)),radial-gradient(circle at 75% 30%,#7a2e91,transparent 35%)}.catalog-hero h1{font-size:2.5vw;margin:.7vh 0}.catalog-hero p:not(.kicker){color:#b7c0ba;margin:.6vh 0 2vh}.primary{padding:1.15vh 1.3vw;border-radius:.45vw;background:linear-gradient(135deg,#9d2dea,#6b24cf);font-weight:800}.main-nav{height:9vh;display:grid;grid-template-columns:repeat(4,1fr);gap:1vw;margin:1.4vh 0}.nav-item{border-radius:.7vw;background:#0d1511;font-size:1.15vw;font-weight:800;display:flex;justify-content:center;align-items:center;gap:.7vw}.nav-item b{color:var(--purple);font-size:.85vw}.nav-item.active{background:linear-gradient(135deg,#183b26,#111b15);border-color:rgba(182,255,56,.32)}.library-panel{height:54vh;border:1px solid var(--line);border-radius:1.3vw;background:rgba(8,11,14,.92);padding:2vh 1.3vw;overflow:hidden}.library-title{display:flex;justify-content:space-between;align-items:center}.library-title h2{font-size:1.35vw;margin:0 0 1.6vh}.library-title span{color:var(--muted)}.media-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:1vw;max-height:47vh;overflow:hidden;padding:.3vw}.media-card{position:relative;height:19vh;border-radius:.65vw;background:linear-gradient(150deg,#283d35,#15121d);overflow:hidden;padding:0;text-align:left}.media-card img{width:100%;height:12.7vh;object-fit:cover;background:#19251f}.media-card .fallback-art{height:12.7vh;display:grid;place-items:center;font-size:2vw;color:var(--lime);background:linear-gradient(145deg,#153e29,#321543)}.media-card .card-copy{display:block;padding:1vh .65vw;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.82vw}.media-card em{position:absolute;top:.7vh;left:.5vw;background:#e23858;border-radius:.25vw;padding:.25vh .35vw;font-size:.55vw;font-style:normal}.player-modal,.dialog{position:fixed;inset:0;background:#000;display:none;align-items:center;justify-content:center;z-index:20}.player-modal.open,.dialog.open{display:flex}.player-modal video{width:100%;height:100%;object-fit:contain}.player-heading{position:absolute;left:2vw;top:3vh;display:flex;flex-direction:column;text-shadow:0 1px 4px #000}.player-heading strong{font-size:1.4vw}.player-heading span{color:#ccc}.close-player{position:absolute;right:2vw;top:3vh;padding:1vh 1vw;border-radius:.4vw;background:rgba(0,0,0,.7)}.dialog{background:rgba(0,0,0,.82)}.dialog-box{width:38vw;border:1px solid #555;border-radius:1vw;background:#11171a;padding:3vw;text-align:center}.dialog-box h2{font-size:2vw}.dialog-box p{color:#c1cbc4;line-height:1.5;font-size:1.05vw}
