:root{--navy-950:#0b1023;--navy-900:#10172e;--navy-800:#1a2340;--navy-700:#242f52;--navy-600:#33406b;--gold-300:#f7d795;--gold-400:#f0c469;--gold-500:#e0a83f;--gold-600:#c08a26;--ink:#eef1fa;--ink-dim:#9aa3c0;--danger:#ff7a7a;--ok:#6fdb9a;--radius:14px;--gold-gradient:linear-gradient(135deg,#f7d795,#e0a83f 55%,#c08a26)}*{box-sizing:border-box;margin:0;padding:0}body,html{min-height:100%}body{background:radial-gradient(1200px 800px at 50% -200px,var(--navy-800),var(--navy-950));color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;-webkit-font-smoothing:antialiased}a{color:var(--gold-400);text-decoration:none}.container{max-width:560px}.container,.container-wide{margin:0 auto;padding:24px 16px 64px}.container-wide{max-width:1100px}.brand-mark{display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center}.brand-name{font-size:2.2rem;font-weight:800;letter-spacing:.12em;background:var(--gold-gradient);-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:0 0 40px hsla(40,82%,68%,.25)}.brand-name.small{font-size:1.2rem}.brand-star{font-size:1.6rem;filter:drop-shadow(0 0 12px rgba(240,196,105,.6))}.brand-slogan{color:var(--ink-dim);font-size:.85rem;font-style:italic;letter-spacing:.03em}.brand-tagline{color:var(--gold-300);font-size:1rem;font-weight:600}.card{background:linear-gradient(180deg,rgba(36,47,82,.65),rgba(16,23,46,.85));border:1px solid hsla(40,82%,68%,.18);border-radius:var(--radius);padding:20px;box-shadow:0 12px 40px rgba(0,0,0,.35)}.stack{flex-direction:column;gap:14px}.row,.stack{display:flex}.row{gap:10px;align-items:center}label{font-size:.85rem;color:var(--ink-dim)}input,select{width:100%;padding:12px 14px;border-radius:10px;border:1px solid var(--navy-600);background:var(--navy-900);color:var(--ink);font-size:1rem;outline:none}input:focus,select:focus{border-color:var(--gold-500);box-shadow:0 0 0 3px rgba(224,168,63,.18)}input.code-input{text-transform:uppercase;letter-spacing:.35em;font-size:1.3rem}input.code-input,input.pin-input{text-align:center;font-weight:700}input.pin-input{letter-spacing:.5em;font-size:1.4rem}button{cursor:pointer;border:none;border-radius:10px;padding:12px 18px;font-size:1rem;font-weight:700;transition:transform .06s ease,opacity .15s ease}button:active{transform:scale(.98)}button:disabled{opacity:.5;cursor:not-allowed}.btn-gold{background:var(--gold-gradient);color:#241a05}.btn-ghost{background:transparent;color:var(--gold-300);border:1px solid hsla(40,82%,68%,.4)}.btn-danger{background:hsla(0,100%,74%,.15);color:var(--danger);border:1px solid hsla(0,100%,74%,.4)}.btn-sm{padding:8px 12px;font-size:.85rem;border-radius:8px}.queue-item{display:flex;gap:12px;align-items:center;padding:10px;border-radius:10px;background:rgba(26,35,64,.7);border:1px solid rgba(51,64,107,.6)}.queue-item.playing{border-color:var(--gold-500);background:linear-gradient(90deg,rgba(224,168,63,.12),rgba(26,35,64,.7))}.queue-item.pending{opacity:.6;border-style:dashed}.queue-thumb{width:72px;height:40px;border-radius:6px;object-fit:cover;flex-shrink:0;background:var(--navy-800)}.queue-pos{width:28px;height:28px;border-radius:50%;background:var(--navy-700);color:var(--gold-300);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.85rem;flex-shrink:0}.queue-title{font-size:.92rem;font-weight:600;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.queue-meta{font-size:.78rem;color:var(--ink-dim)}.badge{display:inline-block;padding:2px 10px;border-radius:999px;font-size:.72rem;font-weight:700;letter-spacing:.03em}.badge-gold{background:rgba(224,168,63,.18);color:var(--gold-300)}.badge-dim{background:var(--navy-700);color:var(--ink-dim)}.badge-ok{background:rgba(111,219,154,.15);color:var(--ok)}.badge-danger{background:hsla(0,100%,74%,.15);color:var(--danger)}.result-item{display:flex;gap:12px;padding:10px;border-radius:10px;border:1px solid transparent;align-items:center}.result-item:hover{background:rgba(36,47,82,.6);border-color:hsla(40,82%,68%,.25)}.hint{color:var(--ink-dim);font-size:.85rem;line-height:1.5}.error-text{color:var(--danger);font-size:.9rem}.ok-text{color:var(--ok);font-size:.9rem}.display-layout{display:grid;grid-template-columns:1fr 340px;grid-gap:16px;gap:16px;height:100vh;padding:16px}.display-player{background:#000;border-radius:var(--radius);overflow:hidden;position:relative}.display-player iframe,.display-player>div{width:100%;height:100%}.display-sidebar{overflow-y:auto;display:flex;flex-direction:column;gap:10px}@media (max-width:900px){.display-layout{grid-template-columns:1fr;height:auto}.display-player{aspect-ratio:16/9}}table{width:100%;border-collapse:collapse;font-size:.88rem}td,th{text-align:left;padding:10px 8px;border-bottom:1px solid var(--navy-700)}th{color:var(--ink-dim);font-weight:600;font-size:.78rem;text-transform:uppercase;letter-spacing:.05em}.landing-hero{min-height:88vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;text-align:center;padding:48px 16px 32px}.landing-hero .brand-name{font-size:clamp(2.6rem,8vw,4rem)}.landing-lede{max-width:520px;color:var(--ink-dim);font-size:1.05rem;line-height:1.65}.btn-cta{font-size:1.15rem;padding:16px 34px;border-radius:999px;box-shadow:0 8px 30px rgba(224,168,63,.35)}.landing-section{max-width:960px;margin:0 auto;padding:48px 16px}.section-title{text-align:center;font-size:1.5rem;font-weight:800;margin-bottom:8px}.section-sub{text-align:center;color:var(--ink-dim);margin-bottom:28px;line-height:1.6}.feature-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));grid-gap:14px;gap:14px}.feature-card{display:flex;flex-direction:column;gap:8px}.feature-icon{font-size:1.8rem}.feature-title{font-weight:700;font-size:1rem}.feature-desc{color:var(--ink-dim);font-size:.9rem;line-height:1.55}.steps-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:14px;gap:14px;counter-reset:step}.step-card{text-align:center}.step-num{width:40px;height:40px;margin:0 auto 10px;border-radius:50%;background:var(--gold-gradient);color:#241a05;font-weight:800;font-size:1.1rem;display:flex;align-items:center;justify-content:center}.landing-footer{text-align:center;padding:32px 16px 40px;color:var(--ink-dim);font-size:.85rem;line-height:1.7;border-top:1px solid rgba(51,64,107,.5)}.gate-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:16px}.gate-card{max-width:420px;width:100%;text-align:center}