:root{color-scheme:dark;--bg:#090a12;--panel:#111321;--panel2:#181b2d;--line:#303349;--muted:#a2a7bf;--text:#f4f5ff;--blue:#5e8cff;--purple:#9f6cff;--pink:#e87dfb;--danger:#ff9ba8;--good:#7df3cc;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-synthesis:none}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(ellipse 52% 38% at 76% -8%,#23317b55,transparent 80%),radial-gradient(ellipse 30% 30% at 12% 15%,#492a6950,transparent 80%),var(--bg);color:var(--text);min-height:100vh;font-size:16px;line-height:1.5}body:before{content:"";pointer-events:none;position:absolute;top:0;left:0;right:0;height:540px;background-image:linear-gradient(#ffffff07 1px,transparent 1px),linear-gradient(90deg,#ffffff07 1px,transparent 1px);background-size:44px 44px;mask-image:linear-gradient(#000,transparent)}[hidden]{display:none!important}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit}button:disabled{opacity:.55;cursor:wait}.wrap{width:min(1180px,calc(100% - 48px));margin-inline:auto}.topbar{height:86px;display:flex;justify-content:space-between;align-items:center;position:relative;z-index:1;border-bottom:1px solid #ffffff14}.brand{display:inline-flex;align-items:center;gap:12px;text-decoration:none;font-size:19px;font-weight:900;letter-spacing:.035em;line-height:1}.brand-light{font-weight:550;color:#bdc5e4;letter-spacing:.08em;font-size:13px}.brand-mark{width:31px;height:31px;display:grid;grid-template-columns:repeat(2,1fr);gap:4px;transform:rotate(-12deg)}.brand-mark i{background:var(--blue);box-shadow:0 0 18px #557eff66}.brand-mark i:nth-child(2){background:var(--pink)}.brand-mark i:nth-child(3){background:#644cf3}.brand-mark i:nth-child(4){background:#67cfff}.topbar-note{font-size:13px;color:var(--muted);letter-spacing:.04em}.shell{position:relative;z-index:1;padding:56px 0 96px}.intro{margin-bottom:42px;max-width:750px}.eyebrow,.section-label{color:#aebcff;font-size:12px;font-weight:800;letter-spacing:.18em}.eyebrow{display:flex;align-items:center;gap:10px;margin:0 0 18px}.eyebrow-line{height:1px;width:32px;background:var(--blue);box-shadow:0 0 15px var(--blue)}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(38px,5.5vw,68px);line-height:1.08;letter-spacing:-.055em;margin:0 0 20px;font-weight:790}h1 em{font-style:normal;background:linear-gradient(100deg,#73a5ff,#b880ff 55%,#f59be6);background-clip:text;color:transparent}.intro>p:last-child{max-width:650px;color:#b8bfd6;font-size:17px;line-height:1.65;margin:0}.form-layout{display:grid;grid-template-columns:286px minmax(0,1fr);gap:22px;align-items:start}.progress-card,.form-card,.invite-state,.admin-panel,.admin-sidebar{background:linear-gradient(135deg,#191b2b,#111321 45%);border:1px solid #34384e;border-radius:18px;box-shadow:0 30px 70px #0000002b}.progress-card{padding:26px;position:sticky;top:24px}.progress-head{display:flex;align-items:center;justify-content:space-between;color:#c1c8e1;font-size:11px;letter-spacing:.15em;font-weight:800}.progress-head strong{font-size:13px;color:var(--text);letter-spacing:.05em}.progress-track{height:4px;background:#30354c;border-radius:5px;margin:18px 0 29px;overflow:hidden}.progress-track span{display:block;width:25%;height:100%;border-radius:5px;background:linear-gradient(90deg,var(--blue),var(--pink));transition:width .25s ease}.steps{list-style:none;padding:0;margin:0;display:grid;gap:28px}.steps li{display:flex;gap:14px;align-items:flex-start;color:#8e96b1;font-size:14px;font-weight:650}.steps li>span{display:grid;place-items:center;flex:0 0 32px;height:32px;border:1px solid #3e425d;border-radius:8px;font-size:11px;font-weight:800}.steps li.current{color:#fff}.steps li.current>span{border-color:#8ca8ff;background:#536bcb48;box-shadow:0 0 22px #6077e147}.steps li.done>span{border-color:#4d9e92;color:var(--good)}.steps small{display:block;color:#848da9;font-size:12px;font-weight:450;margin-top:2px}.progress-footer{margin-top:34px;border-top:1px solid var(--line);padding-top:20px;font-size:12px;color:#8f99b5;line-height:1.6}.progress-footer span{font-size:14px;color:#d4dcff;font-weight:700}.form-card{padding:clamp(25px,4.3vw,48px);min-height:510px}.section-label{margin-bottom:13px}.section-label span{color:#6a718e}h2{font-size:clamp(26px,3.2vw,36px);letter-spacing:-.035em;line-height:1.15;margin:0 0 9px}.section-desc{color:#aeb5ce;margin:0 0 32px;max-width:650px;font-size:15px;line-height:1.65}.field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:19px}.field{display:flex;flex-direction:column;gap:8px;font-size:14px;font-weight:680;color:#d8def3;min-width:0}.field.full{grid-column:1/-1}.required{color:#ad9bff}.optional{font-weight:400;color:#858ea9;font-size:12px;margin-left:5px}.field input,.field select,.field textarea,.login-form input,.new-event input,.search-field input{width:100%;background:#0d0f1c;border:1px solid #3b3e55;border-radius:9px;color:var(--text);min-height:47px;padding:11px 14px;outline:none;transition:border-color .16s,box-shadow .16s}.field textarea{resize:vertical;min-height:95px}.field input:focus,.field select:focus,.field textarea:focus,.login-form input:focus,.new-event input:focus,.search-field input:focus{border-color:#8a9fff;box-shadow:0 0 0 3px #798ff633}.field input::placeholder,.field textarea::placeholder,.login-form input::placeholder,.new-event input::placeholder{color:#737c99}.field select:invalid{color:#79829d}.field option{color:var(--text);background:#16182a}.form-actions{display:flex;justify-content:space-between;align-items:center;gap:12px;border-top:1px solid var(--line);margin-top:36px;padding-top:26px}.form-actions button:only-child{margin-left:auto}.button{appearance:none;border:0;border-radius:9px;display:inline-flex;gap:17px;align-items:center;justify-content:center;text-decoration:none;font-size:14px;font-weight:800;min-height:48px;padding:11px 19px;white-space:nowrap}.button-primary{background:linear-gradient(105deg,#597cfa,#895dec);color:white;box-shadow:0 10px 26px #5d67df3d}.button-primary:hover{filter:brightness(1.13)}.button-quiet{color:#d8dff7;background:#25283d;border:1px solid #383b55}.button-quiet:hover{background:#30344e}.button-danger{color:#ffc5cc;background:#5a273552;border:1px solid #8b4a57}.button-small{min-height:38px;font-size:12px;padding:8px 13px;gap:8px}.feedback{padding:13px 15px;background:#57263855;border:1px solid #a44b66;color:#ffc1c9;border-radius:9px;margin:24px 0 0;font-size:14px}.moments{display:grid;gap:12px}.moment{border:1px solid #363a50;background:#141626;border-radius:12px;padding:19px;display:flex;gap:18px}.moment-icon{flex:0 0 36px;height:36px;border:1px solid #595e83;border-radius:9px;display:grid;place-items:center;color:#aebfff;font-size:11px;font-weight:800}.moment-body{flex:1;min-width:0}.moment h3{margin:0 0 3px;font-size:17px}.moment p{color:#929bb5;font-size:13px;margin:0 0 14px}.moment-fields{display:grid;grid-template-columns:140px minmax(0,1fr);gap:14px}.choice-group{border:0;padding:0;margin:0}.choice-group legend{font-size:16px;font-weight:750;padding:0}.choice-group>p{color:#949eba;font-size:13px;margin:3px 0 15px}.choice-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.choice-grid label{position:relative;cursor:pointer}.choice-grid input{position:absolute;opacity:0;inset:0;width:100%;height:100%;cursor:pointer}.choice-grid span{display:flex;align-items:center;justify-content:center;min-height:43px;padding:8px;border:1px solid #40445d;border-radius:8px;background:#111422;text-align:center;color:#c1c8df;font-size:13px;line-height:1.2}.choice-grid input:checked+span{border-color:#8496fc;background:#5769d438;color:white}.choice-grid input:focus-visible+span{outline:3px solid #889fff;outline-offset:2px}.music-fields{margin-top:23px}.services{margin-top:28px;padding-top:26px;border-top:1px solid var(--line)}.review{display:grid;gap:12px}.review-block{background:#131625;border:1px solid #343a55;border-radius:11px;padding:18px}.review-block h3{font-size:15px;margin:0 0 11px;color:#aebfff}.review-line{display:grid;grid-template-columns:150px 1fr;gap:10px;margin:6px 0;font-size:14px;white-space:pre-wrap;overflow-wrap:anywhere}.review-line span:first-child{color:#939cb7}.review-line span:last-child{color:#e2e5f6}.consent{display:flex;align-items:flex-start;gap:11px;margin-top:25px;color:#bbc3db;font-size:13px;cursor:pointer}.consent input{accent-color:#8474ff;margin-top:4px}.success{display:flex;flex-direction:column;align-items:flex-start;gap:12px;padding:30px 0}.success-symbol{display:grid;place-items:center;width:60px;height:60px;border:1px solid #61d6b9;border-radius:16px;background:#31977e35;color:var(--good);font-size:30px;margin-bottom:8px}.success p{color:#b6bfd7;max-width:530px;line-height:1.65;margin:0}.success .small-copy{font-size:13px}.reference{padding:13px 16px;border:1px solid #484e72;border-radius:9px;background:#252945;color:#aeb6d7;font-size:13px;margin:9px 0}.reference strong{display:block;color:white;font-size:19px;letter-spacing:.09em}.invite-state{padding:45px;text-align:center;max-width:710px;min-height:200px;margin:auto}.invite-state h2{font-size:25px;margin:12px 0}.invite-state p{color:#abb5d2;margin:0}.invite-state a{display:inline-flex;margin-top:22px}.state-spinner{display:inline-block;border:2px solid #4552a0;border-top-color:#acc0ff;width:25px;height:25px;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.footer{border-top:1px solid #ffffff1c;min-height:80px;display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:12px;color:#8992ae}.footer a{color:#afbded;text-decoration:none}.footer a:hover{text-decoration:underline}
/* Administración */
.admin-page .shell{padding-top:42px}.admin-header{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:28px}.admin-header h1{font-size:clamp(32px,4vw,48px);margin:0}.admin-header p{color:#aeb7d0;margin:10px 0 0}.admin-panel{padding:28px}.login-panel{width:min(460px,100%);margin:60px auto 0}.login-panel h2{font-size:29px}.login-form{display:grid;gap:16px;margin-top:25px}.login-form label,.new-event label{display:grid;gap:7px;color:#dbe1f5;font-size:14px;font-weight:650}.login-form .button{margin-top:5px}.admin-layout{display:grid;grid-template-columns:350px minmax(0,1fr);gap:20px;align-items:start}.admin-sidebar{padding:22px;position:sticky;top:24px}.admin-sidebar h2{font-size:20px;margin-bottom:18px}.new-event{display:grid;gap:14px}.new-event .button{width:100%;margin-top:3px}.admin-divider{border:0;border-top:1px solid var(--line);margin:27px 0}.search-field{position:relative;display:block;margin:12px 0 16px}.search-field input{padding-left:38px}.search-field:before{content:"⌕";position:absolute;left:14px;top:8px;font-size:22px;color:#8e98b6}.event-list{display:grid;gap:8px;max-height:570px;overflow:auto}.event-item{text-align:left;width:100%;background:#141626;border:1px solid #343850;border-radius:10px;color:var(--text);padding:14px;display:grid;gap:5px}.event-item:hover,.event-item.selected{border-color:#7990f9;background:#242947}.event-item .event-title{font-size:15px;font-weight:780;overflow-wrap:anywhere}.event-item .event-meta{font-size:12px;color:#9da7c3}.event-item .pill{justify-self:start}.pill{display:inline-flex;align-items:center;gap:6px;padding:3px 8px;border-radius:5px;color:#a9f0d9;background:#215c5066;font-size:11px;font-weight:800;letter-spacing:.04em}.pill.pending{color:#c9d0ea;background:#3a405a}.pill.closed{color:#ffbdca;background:#583444}.detail-panel{min-height:560px}.detail-empty{display:grid;place-items:center;min-height:480px;text-align:center;color:#aeb6cf}.detail-empty strong{display:block;color:#e9ecff;font-size:21px;margin-bottom:7px}.detail-top{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;border-bottom:1px solid var(--line);padding-bottom:20px;margin-bottom:23px}.detail-top h2{font-size:29px;overflow-wrap:anywhere}.detail-top .pill{margin-bottom:12px}.detail-top small{color:#98a1bb}.detail-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.detail-section{border-top:1px solid var(--line);padding:20px 0 3px}.detail-section h3{font-size:16px;color:#acbbff;margin-bottom:14px}.detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.data-label{color:#929dbb;font-size:12px;letter-spacing:.02em}.data-value{font-size:15px;margin-top:3px;white-space:pre-wrap;overflow-wrap:anywhere}.timeline{display:grid;gap:0;margin-top:5px}.timeline-item{display:grid;grid-template-columns:75px 14px 1fr;gap:13px;min-height:70px}.timeline-hour{color:#c5cfff;font-weight:750;font-size:14px;padding-top:2px}.timeline-line{position:relative}.timeline-line:before{content:"";position:absolute;top:6px;left:4px;width:7px;height:7px;border-radius:50%;background:#859bff;box-shadow:0 0 10px #7c83ff}.timeline-line:after{content:"";position:absolute;top:16px;left:7px;bottom:-5px;width:1px;background:#40486b}.timeline-item:last-child .timeline-line:after{display:none}.timeline-text strong{display:block;font-size:15px}.timeline-text span{color:#aeb7d4;font-size:14px}.plain-note{color:#b6bfd6;margin:4px 0 15px;white-space:pre-wrap;overflow-wrap:anywhere}.link-box{display:flex;align-items:center;gap:8px;margin:17px 0}.link-box input{flex:1;min-width:0;background:#0d0f1c;border:1px solid var(--line);border-radius:8px;color:#bec8e9;padding:11px;font-size:13px}.admin-feedback{font-size:13px;color:#b9c9ff;margin:14px 0 0}.admin-feedback.error{color:var(--danger)}.empty-list{color:#9ca5bf;font-size:14px}.setup-message{background:#352e4a;border:1px solid #7663a8;border-radius:10px;padding:16px;color:#dcd2fb;margin-top:17px}
@media(max-width:850px){.form-layout,.admin-layout{grid-template-columns:1fr}.progress-card,.admin-sidebar{position:static}.progress-card{padding:20px}.steps{grid-template-columns:repeat(4,1fr);gap:6px}.steps li{display:block;font-size:11px;line-height:1.2}.steps li>span{margin-bottom:8px}.steps small,.progress-footer{display:none}.progress-track{margin:12px 0 18px}.admin-layout .admin-sidebar{order:1}.admin-layout .detail-panel{order:2}.event-list{max-height:300px}}
@media(max-width:620px){.wrap{width:min(100% - 28px,1180px)}.topbar{height:70px}.topbar-note{display:none}.shell{padding:37px 0 55px}.intro{margin-bottom:28px}.intro>p:last-child{font-size:15px}.form-card{padding:23px 18px;min-height:0}.progress-card{padding:18px}.steps li{font-size:0}.steps li>span{width:29px;height:29px;font-size:10px}.steps li.current{font-size:11px}.steps li.current div{font-size:11px}.field-grid,.moment-fields,.detail-grid{grid-template-columns:1fr}.moment{gap:11px;padding:15px}.moment-icon{flex-basis:29px;height:29px}.choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.review-line{grid-template-columns:1fr;gap:0}.form-actions{margin-top:28px}.button{white-space:normal}.footer{flex-wrap:wrap;padding-block:20px}.footer span:nth-child(2){display:none}.admin-panel,.admin-sidebar{padding:19px}.admin-header{align-items:flex-start}.admin-header h1{font-size:31px}.detail-top{display:block}.detail-actions{justify-content:flex-start;margin-top:18px}.link-box{flex-wrap:wrap}.link-box input{flex-basis:100%}}
@media print{body{background:#fff!important;color:#111!important}.topbar,.footer,.admin-header,.admin-sidebar,.detail-actions,.link-box,.admin-feedback{display:none!important}.wrap{width:100%}.shell{padding:0}.admin-layout{display:block}.detail-panel{border:0;box-shadow:none;background:white;padding:0}.detail-top,.detail-section{border-color:#aaa}.detail-section h3,.timeline-hour{color:#333}.data-label,.timeline-text span,.plain-note,.data-value{color:#222}.pill{color:#111;background:#eee}.timeline-line:before{background:#333}.timeline-line:after{background:#bbb}.print-brand{display:block!important;font-size:15px;font-weight:900;border-bottom:2px solid #111;margin:0 0 25px;padding-bottom:10px}}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.account-actions{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;margin-top:18px}.account-actions button{border:0;background:transparent;color:#b7c5ff;text-decoration:underline;text-underline-offset:3px;padding:0;font-size:13px}.account-actions button:hover{color:white}
