:root{--navy:#071825;--panel:#0d2533;--copper:#d9945b;--cream:#f7f2eb;--muted:#a9b5be;--line:rgba(255,255,255,.14)}
*{box-sizing:border-box}
body{margin:0;background:radial-gradient(circle at 85% 0,#173746,#071825 46%,#041019);color:var(--cream);font:15px/1.55 Inter,system-ui,sans-serif}
.briefing-shell{width:min(900px,calc(100% - 32px));margin:auto;padding:28px 0 72px}
header{display:flex;justify-content:space-between;align-items:center;margin-bottom:70px}
.brand{font:600 1.5rem Georgia,serif;color:var(--cream);text-decoration:none}.brand span{color:var(--copper)}
.private{border:1px solid rgba(217,148,91,.5);border-radius:999px;padding:7px 12px;color:#f0bb8e;font-size:.7rem;text-transform:uppercase;letter-spacing:.1em}
.intro{max-width:650px;margin-bottom:42px}.kicker{color:#e2a36f;text-transform:uppercase;letter-spacing:.16em;font-size:.72rem;font-weight:700}
.intro h1{font:500 clamp(2.3rem,6vw,4.2rem)/1.05 Georgia,serif;margin:0 0 16px}.intro p{color:var(--muted);font-size:1.05rem}
.form-section{padding:28px 0;border-top:1px solid var(--line)}h2{font:500 1.6rem Georgia,serif;margin:0 0 20px}
.grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}label{display:grid;gap:7px;color:#d9e1e5;font-size:.9rem}.wide{grid-column:1/-1}
input,select,textarea{width:100%;border:1px solid var(--line);border-radius:10px;background:#081a27;color:var(--cream);padding:12px 13px;font:inherit;resize:vertical}
input:focus,select:focus,textarea:focus{outline:2px solid rgba(217,148,91,.4);border-color:var(--copper)}
.checks{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.checks label,.consent{display:flex;align-items:center;gap:9px}.checks input,.consent input{width:18px;height:18px;accent-color:var(--copper)}
.consent{margin-top:24px;color:var(--muted);font-size:.82rem}.submit{margin-top:28px;border:0;border-radius:10px;background:var(--copper);color:#1c120c;padding:14px 20px;font-weight:700;font-size:.95rem;cursor:pointer}.submit:disabled{cursor:wait;opacity:.65}
.success{margin-top:18px;color:#9ee3bc}.access-status{padding:18px 20px;border:1px solid var(--line);border-radius:12px;background:rgba(13,37,51,.72);color:var(--muted)}.access-status.error{border-color:rgba(230,111,94,.55);color:#ffc0b7}
.spotify-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:22px}.spotify-picker{position:relative;min-width:0;border:1px solid rgba(217,148,91,.26);border-radius:16px;padding:20px;background:linear-gradient(145deg,rgba(14,42,57,.9),rgba(7,25,37,.92))}.spotify-picker.banned-picker{border-color:rgba(229,116,103,.24)}.music-kicker{display:block;color:var(--copper);font-size:.68rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.spotify-picker h3{margin:5px 0 6px;font:500 1.35rem Georgia,serif}.spotify-picker>p{min-height:42px;margin:0 0 16px;color:var(--muted);font-size:.82rem}.spotify-search-label{font-size:.78rem}.spotify-results{position:absolute;z-index:8;top:157px;left:20px;right:20px;overflow:hidden;border:1px solid var(--line);border-radius:11px;background:#081a27;box-shadow:0 18px 45px rgba(0,0,0,.48)}.spotify-results:empty{display:none}.spotify-result{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:10px;width:100%;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--cream);padding:9px;text-align:left;cursor:pointer}.spotify-result:last-child{border-bottom:0}.spotify-result:hover,.spotify-result:focus-visible{background:#123044}.spotify-cover{width:42px;height:42px;border-radius:7px;object-fit:cover;background:#173345}.spotify-track-copy{min-width:0}.spotify-track-copy strong,.spotify-track-copy span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.spotify-track-copy span{color:var(--muted);font-size:.75rem}.spotify-add{color:#efb17f;font-size:.75rem;font-weight:800}.selected-tracks{display:grid;gap:8px;margin-top:13px}.selected-tracks:empty::before{content:"Todavía no has seleccionado ninguna canción.";display:block;border:1px dashed var(--line);border-radius:9px;padding:12px;color:#80919c;font-size:.76rem}.selected-track{display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:9px;border:1px solid var(--line);border-radius:10px;padding:7px;background:rgba(4,16,25,.5)}.selected-track .spotify-cover{width:38px;height:38px}.remove-track{width:31px;height:31px;border:1px solid var(--line);border-radius:50%;background:transparent;color:var(--muted);font-size:1rem;cursor:pointer}.remove-track:hover,.remove-track:focus-visible{border-color:#e57467;color:#ffc0b7}.manual-music{margin-top:15px;color:var(--muted);font-size:.74rem}.manual-music textarea{margin-top:3px}.music-status{min-height:20px;margin:12px 0 0;color:#efb17f;font-size:.8rem}.music-status.error{color:#ffc0b7}
[hidden]{display:none!important}
@media(max-width:760px){.spotify-grid{grid-template-columns:1fr}.spotify-picker>p{min-height:0}.spotify-results{top:139px}}
@media(max-width:640px){.briefing-shell{width:min(100% - 24px,900px)}header{margin-bottom:46px}.grid,.checks{grid-template-columns:1fr}.wide{grid-column:auto}.intro h1{font-size:2.65rem}.spotify-picker{padding:17px}.spotify-results{left:17px;right:17px}.spotify-result{grid-template-columns:40px minmax(0,1fr)}.spotify-add{grid-column:2}.music-intro-grid{gap:14px}}
