/* Eventus · "Arma tu noche" — elemento interactivo insignia de la portada.
   Sin JS se ve el salón completo y la lista de servicios; con JS cada capa aparece al tocarla. */
.arma{position:relative;overflow:clip;background:var(--sky-midnight)}
.arma .wrap{position:relative;z-index:1}
.arma__grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(28px,4vw,56px);align-items:start;margin-top:clamp(28px,4vw,48px)}

/* Escena */
.arma__stage{position:relative;min-width:0}
.arma__frame{position:relative;border-radius:50% 50% 6px 6px / 34% 34% 6px 6px;padding:10px;box-shadow:inset 0 0 0 1px var(--border-gold-soft);background:rgba(3,5,11,.35)}
.arma__frame::after{content:"";position:absolute;inset:4px;border-radius:inherit;box-shadow:inset 0 0 0 1px var(--border-gold-faint);pointer-events:none}
.arma__scene{display:block;width:100%;height:auto;max-width:100%;border-radius:50% 50% 4px 4px / 33% 33% 4px 4px;background:var(--night-950)}
.arma__ilus{position:absolute;right:22px;bottom:16px;margin:0;font:var(--fs-micro)/1 var(--font-sans);letter-spacing:.06em;color:rgba(232,238,247,.7);text-shadow:0 1px 3px rgba(0,0,0,.8)}
.arma__status{margin:16px 0 0;text-align:center;font:var(--type-eyebrow);letter-spacing:var(--tracking-caps-wide);text-transform:uppercase;color:var(--gold-300);min-height:1.4em}
.arma__status strong{font-weight:inherit;color:var(--pearl-0)}

/* Capas: visibles por defecto (sin JS); con JS se encienden al elegirlas */
.arma__scene [data-layer]{transition:opacity 900ms var(--ease-soft)}
.arma--live .arma__scene [data-layer]:not(.is-on){opacity:0}
.arma__scene .confetti{opacity:0;transition:opacity var(--dur-slow) var(--ease-soft)}
.arma--done .arma__scene .confetti{opacity:1}

/* Animaciones ambientales */
@keyframes arma-sway{0%,100%{opacity:.35}50%{opacity:.85}}
@keyframes arma-fall{0%{transform:translateY(-40px);opacity:0}15%{opacity:1}100%{transform:translateY(760px);opacity:0}}
.arma__scene .beams{mix-blend-mode:screen}
.arma__scene .beam{animation:arma-sway 3.2s ease-in-out infinite}
.arma__scene .confetti circle{transform-box:fill-box;animation:arma-fall 3.8s linear infinite}

/* Elecciones */
.arma__panel{display:flex;flex-direction:column;gap:22px;min-width:0}
.arma__hint{margin:0;font:var(--type-lede);color:var(--text-muted)}
.arma__list{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.arma__opt{width:100%;display:grid;grid-template-columns:28px minmax(0,1fr);gap:14px;align-items:start;text-align:left;padding:14px 18px;border:0;border-radius:var(--radius-card);background:rgba(11,22,54,.55);box-shadow:inset 0 0 0 1px var(--border-gold-faint);color:var(--text-body);cursor:pointer;font:inherit;transition:box-shadow var(--dur-base) var(--ease-soft),background-color var(--dur-base) var(--ease-soft),transform var(--dur-fast) var(--ease-soft);-webkit-tap-highlight-color:transparent}
.arma__opt:hover{box-shadow:inset 0 0 0 1px var(--border-gold-soft)}
.arma__opt:active{transform:scale(.99)}
.arma__opt:focus-visible{outline:2px solid var(--gold-300);outline-offset:3px}
.arma__opt[aria-pressed="true"]{background:rgba(26,53,119,.55);box-shadow:inset 0 0 0 1px var(--gold-500),0 0 24px rgba(215,182,21,.12)}
.arma__tick{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;box-shadow:inset 0 0 0 1px var(--border-gold-soft);color:transparent;transition:all var(--dur-base) var(--ease-soft)}
.arma__tick svg{width:14px;height:14px}
.arma__opt[aria-pressed="true"] .arma__tick{background:var(--gold-metal,var(--gold-500));color:var(--night-900);box-shadow:none}
.arma__name{display:block;font:var(--fw-medium) var(--fs-serif-md)/1.2 var(--font-serif);color:var(--text-strong)}
.arma__desc{display:block;margin-top:4px;font:var(--type-small);color:var(--text-muted)}

/* Mensaje */
.arma__msg{display:flex;flex-direction:column;gap:14px;padding:20px;border-radius:var(--radius-card);box-shadow:inset 0 0 0 1px var(--border-gold-soft);background:rgba(3,5,11,.45)}
.arma__msg h3{margin:0;font:var(--type-eyebrow);letter-spacing:var(--tracking-caps-wide);text-transform:uppercase;color:var(--gold-400)}
.arma__fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.arma__field{display:flex;flex-direction:column;gap:6px;min-width:0}
.arma__field--full{grid-column:1/-1}
.arma__field label{font:var(--type-small);color:var(--text-muted)}
.arma__field select,.arma__field input{width:100%;min-height:46px;padding:0 12px;border:0;border-radius:var(--radius-input);background:var(--night-900);color:var(--text-strong);box-shadow:inset 0 0 0 1px var(--border-gold-faint);font:var(--type-body);color-scheme:dark}
.arma__field select:focus-visible,.arma__field input:focus-visible{outline:2px solid var(--gold-300);outline-offset:1px}
.arma__preview{margin:0;padding:14px 16px;border-radius:12px 12px 12px 2px;background:rgba(26,53,119,.45);font:italic 400 1.0625rem/1.5 var(--font-serif);color:var(--text-body)}
.arma__msg .ev-btn{width:100%;white-space:normal;text-align:center;padding-block:10px}
.arma__note{margin:0;font:var(--type-small);color:var(--text-muted)}

@media (max-width:900px){
  .arma__grid{grid-template-columns:minmax(0,1fr)}
  .arma__stage{max-width:560px;width:100%;margin-inline:auto}
}
/* En celular la escena queda fija arriba mientras se tocan las opciones */
@media (max-width:640px){
  .arma__grid{display:block}
  .arma__panel{margin-top:20px}
  .arma__stage{position:sticky;top:calc(env(safe-area-inset-top,0px) + 62px);z-index:3;width:auto;max-width:none;margin-inline:calc(-1 * var(--gutter));padding:10px var(--gutter) 10px;background:var(--night-950);box-shadow:0 14px 18px -8px rgba(3,5,11,.95)}
  .arma__frame{max-width:270px;margin-inline:auto}
  .arma__status{margin-top:8px;font-size:var(--fs-caps-xs)}
}
@media (max-width:420px){.arma__fields{grid-template-columns:minmax(0,1fr)}}
@media (prefers-reduced-motion:reduce){
  .arma__scene [data-layer],.arma__opt,.arma__tick{transition:none}
  .arma__scene .beam,.arma__scene .confetti circle{animation:none}
}
