:root{font-family:Inter,Arial,sans-serif;color:#fff;background:#0d0d1b}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(circle at top,#5822aa,#0d0d1b 58%);padding:24px}.card,.admin{max-width:680px;margin:6vh auto;padding:32px;border:1px solid #ffffff35;border-radius:24px;background:#15152ded;box-shadow:0 24px 80px #0008}.client-card{min-height:520px}.admin{max-width:1200px;margin:2vh auto}.eyebrow{font-size:.78rem;font-weight:bold;letter-spacing:.14em;color:#f5c2ff;margin:0 0 8px}h1{margin:0 0 10px;font-size:clamp(2rem,7vw,3.4rem)}h2{margin:20px 0 12px}p{line-height:1.5;color:#dedaf0}form{display:grid;gap:15px;margin-top:26px}label{font-weight:bold;display:grid;gap:7px}input{width:100%;padding:15px;border-radius:12px;border:1px solid #a9a1c7;background:#fff;color:#181426;font-size:1rem}button,a,.file-button{border:0;border-radius:12px;padding:12px 15px;font-size:.95rem;font-weight:bold;cursor:pointer;text-align:center;text-decoration:none;background:#ee61e7;color:#251027}button:hover,a:hover,.file-button:hover{filter:brightness(1.1)}button:disabled{opacity:.55;cursor:wait}#message,#login-message{min-height:24px;font-weight:bold}.ok{color:#aaf2bd}.error{color:#ffb2c0}.approved{display:inline-block;background:#73e692;color:#073916;border-radius:999px;padding:5px 10px;font-weight:bold}.welcome{display:flex;align-items:center;justify-content:space-between;gap:12px}.status-orb{font-size:4rem;text-align:center;margin-top:45px}#pending,#rejected{text-align:center}.song,.request,.my-request{display:grid;grid-template-columns:1fr auto;gap:14px;align-items:center;padding:16px;margin:9px 0;border-radius:16px;background:#252442}.song strong,.request strong,.my-request strong{font-size:1.05rem}.song small,.request small,.my-request small{display:block;color:#d2cbed;margin-top:5px}.my-request{display:block}.empty{color:#d2cbed;padding:24px;text-align:center}header{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:22px}.controls,.actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.controls a{background:#ded6ff;color:#2c185c}.controls button,.actions button{padding:8px 10px;font-size:.82rem;background:#d8d0ff;color:#22124d}.danger,.actions button:last-child{background:#ff9bac!important;color:#4c0010!important}.catalog-upload{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:14px 18px;background:#22213d;border-radius:14px;margin-bottom:18px}.catalog-upload h2,.catalog-upload p{margin:4px 0}.file-button input{display:none}.admin-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:24px}.presence{display:inline-block;width:10px;height:10px;border-radius:50%;background:#777;margin-right:8px}.presence.online{background:#56e27f;box-shadow:0 0 10px #56e27f}.qr-card{text-align:center;max-width:720px}.qr-card #qr{background:#fff;border-radius:22px;padding:20px;margin:25px auto;max-width:480px}.qr-card #qr img{width:100%;height:auto;display:block}@media(max-width:820px){.admin-grid{grid-template-columns:1fr}}@media(max-width:650px){body{padding:12px}.card,.admin{padding:22px;margin:3vh auto}header,.catalog-upload{align-items:flex-start;flex-direction:column}.song,.request{grid-template-columns:1fr}.welcome{align-items:flex-start;flex-direction:column}}
