:root{--bg:#eef2ea;--bg-deep:#0f1410;--panel:#f7faf4;--ink:#152018;--muted:#5d6b60;--line:#c9d4c4;--accent:#c8f542;--accent-ink:#1a2408;--danger:#b42318;--ok:#1f7a3f;--shadow:0 18px 50px #0f14101f;color:var(--ink);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;background:radial-gradient(circle at 0 0,#c8f5422e,#0000 35%),linear-gradient(160deg,#f4f7f0 0%,#e7eee3 45%,#dfe8da 100%);font-family:Manrope,system-ui,sans-serif;font-weight:500;line-height:1.45}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0}a{color:inherit}button,input{font:inherit}button{background:var(--accent);color:var(--accent-ink);cursor:pointer;border:0;border-radius:10px;padding:.85rem 1.1rem;font-weight:700}button:disabled{opacity:.55;cursor:not-allowed}button.ghost,.ghost-link{border:1px solid var(--line);color:var(--ink);background:0 0;border-radius:10px;justify-content:center;align-items:center;padding:.7rem .95rem;text-decoration:none;display:inline-flex}button.danger{color:var(--danger);background:#f8e3e1}input{border:1px solid var(--line);background:#fff;border-radius:10px;width:100%;margin-top:.35rem;padding:.75rem .9rem}label{font-size:.92rem;font-weight:600;display:block}.brand{letter-spacing:.06em;color:var(--ink);margin:0;font-family:Bebas Neue,sans-serif;font-size:1.35rem}h1,h2{letter-spacing:.04em;margin:.2rem 0 .5rem;font-family:Bebas Neue,sans-serif;font-weight:400}h1{font-size:clamp(2.2rem,5vw,3.4rem)}h2{font-size:1.8rem}.muted{color:var(--muted)}.hint{color:var(--muted);font-size:.9rem}.error{color:var(--danger);margin:0}.ok{color:var(--ok);margin:0}.screen-center,.login-page{place-items:center;min-height:100vh;padding:1.5rem;display:grid}.login-panel,.panel{background:color-mix(in srgb, var(--panel) 92%, white);border:1px solid color-mix(in srgb, var(--line) 70%, white);box-shadow:var(--shadow);border-radius:22px}.login-panel{width:min(420px,100%);padding:2rem}.stack{gap:1rem;margin-top:1.5rem;display:grid}.admin-page{gap:1.25rem;width:min(1100px,100% - 2rem);margin:0 auto;padding:2rem 0 3rem;display:grid}.admin-header{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:1rem;display:flex}.header-actions{gap:.6rem;display:flex}.panel{padding:1.35rem}.upload-form{grid-template-columns:2fr 1fr auto;align-items:end;gap:1rem;display:grid}.progress-track{background:var(--line);border-radius:999px;height:8px;margin-top:1rem;overflow:hidden}.progress-fill{background:var(--accent);height:100%;transition:width .16s}.playlist{gap:.85rem;margin:1rem 0 0;padding:0;list-style:none;display:grid}.playlist li{border:1px solid var(--line);background:#fff;border-radius:16px;grid-template-columns:120px 1fr auto;align-items:center;gap:1rem;padding:.85rem;display:grid}.playlist li.inactive{opacity:.55}.thumb{background:var(--bg-deep);border-radius:12px;width:120px;height:72px;overflow:hidden}.thumb img,.thumb video{object-fit:cover;width:100%;height:100%;display:block}.meta{gap:.25rem;display:grid}.meta .inline{align-items:center;gap:.5rem;max-width:160px;display:flex}.meta .inline input{margin-top:0}.row-actions{flex-wrap:wrap;justify-content:end;gap:.4rem;display:flex}.player-page{color:#fff;background:#000;min-height:100vh;position:relative;overflow:hidden}.player-chrome{z-index:2;background:linear-gradient(#000000b3,#0000);justify-content:space-between;align-items:center;width:100%;padding:1rem 1.25rem;display:flex;position:absolute;inset:0 auto auto 0}.player-chrome a{margin-right:.75rem}.player-chrome button.ghost{color:#fff;border-color:#ffffff59}.player-empty{text-align:center;place-content:center;gap:.5rem;min-height:100vh;padding:2rem;display:grid}.player-empty .brand{color:var(--accent);font-size:2.5rem}.audio-gate{z-index:3;color:#f2f5ef;cursor:pointer;background:radial-gradient(circle,#c8f5421f,#0000 45%),#0f1410;border:0;border-radius:0;place-content:center;gap:.75rem;width:100%;min-height:100vh;padding:2rem;display:grid;position:absolute;inset:0}.audio-gate .brand{color:var(--accent);font-size:clamp(2.5rem,8vw,4.5rem)}.audio-gate strong{font-size:clamp(1.25rem,3vw,1.8rem);font-weight:700}.muted-on-dark{color:#f2f5efb3;font-size:.95rem}.stage{place-items:center;min-height:100vh;animation:.42s fadeIn;display:grid}.stage-media{object-fit:contain;background:#000;width:100vw;height:100vh}@keyframes fadeIn{0%{opacity:.15}to{opacity:1}}@media (width<=860px){.upload-form,.playlist li{grid-template-columns:1fr}.row-actions{justify-content:start}}
