/* Apay charte overlay — P3.1 + logo 1.0.
   Loaded AFTER assets/style.css. Does not replace checkout or APION.
*/
:root {
  --apay-void: #05070d;
  --apay-navy: #0a1220;
  --apay-signal: #00b4ff;
  --apay-ember: #ff7a1a;
  --apay-ember-deep: #e8650c;
  --apay-mist: #e8eef7;
  --apay-duration: 200ms;
  --apay-ease: cubic-bezier(0.22, 1, 0.36, 1);
  --ink: #05070d;
  --ink-2: #0a1220;
  --azure: #00b4ff;
  --azure-2: #5fd0ff;
}
.btn-primary,
.t-buy,
.om-confirm {
  background: var(--apay-ember);
  color: #05070d;
  border-color: transparent;
  box-shadow: 0 10px 24px rgba(255, 122, 26, 0.28);
  transition: background var(--apay-duration) var(--apay-ease),
    box-shadow var(--apay-duration) var(--apay-ease);
}
.btn-primary:hover,
.t-buy:hover,
.om-confirm:hover {
  background: var(--apay-ember-deep);
  box-shadow: 0 16px 32px rgba(255, 122, 26, 0.4),
    0 0 0 4px rgba(255, 122, 26, 0.12);
}
.eyebrow {
  color: var(--apay-ember);
  background: rgba(255, 122, 26, 0.1);
  border-color: rgba(255, 122, 26, 0.32);
}
.hero h1 .accent,
.accent { color: var(--apay-signal); }
.btn-ghost { border-color: rgba(0, 180, 255, 0.35); }
.cat-card:hover,
.ticket:hover,
.mini-ticket:hover {
  border-color: var(--apay-signal);
  box-shadow: 0 18px 36px rgba(0, 180, 255, 0.16);
}
.tab-btn.active {
  border-color: var(--apay-signal);
  color: var(--apay-mist);
}
.cta-band .btn-primary { background: var(--apay-ember); color: #05070d; }
.logo-text { display: flex; flex-direction: column; line-height: 1.05; }
.logo-text::after {
  content: "PLAY \00b7 DIGITAL \00b7 MORE";
  font-family: "Space Grotesk", Inter, sans-serif;
  font-size: 7px;
  font-weight: 700;
  letter-spacing: 0.16em;
  color: var(--apay-signal);
  margin-top: 3px;
}
img.logo-icon {
  width: 36px !important;
  height: 36px !important;
  border-radius: 8px;
  object-fit: none;
  object-position: -9999px;
  background: #05070d url("img/apay-icon.svg") center / contain no-repeat;
}
.ifc-band {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 6px 24px;
  align-items: center;
  padding: 22px 26px;
  border: 1px solid rgba(0, 180, 255, 0.28);
  border-radius: 18px;
  background: linear-gradient(90deg, rgba(0, 180, 255, 0.08), rgba(255, 122, 26, 0.06));
  color: inherit;
}
.ifc-kicker {
  grid-column: 1;
  font-family: "Space Grotesk", Inter, sans-serif;
  font-size: 11px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--apay-ember);
}
.ifc-band strong { grid-column: 1; font-family: "Space Grotesk", Inter, sans-serif; font-size: 1.25rem; }
.ifc-meta { grid-column: 1; color: #8b97ab; font-size: 0.9rem; }
.ifc-cta {
  grid-column: 2; grid-row: 1 / span 3; align-self: center;
  background: var(--apay-ember); color: #05070d; font-weight: 700;
  font-size: 0.88rem; padding: 0.75rem 1.15rem; border-radius: 999px; white-space: nowrap;
}
@media (max-width: 720px) {
  .ifc-band { grid-template-columns: 1fr; }
  .ifc-cta { grid-column: 1; grid-row: auto; justify-self: start; margin-top: 8px; }
}
.apay-room, .pass-tier {
  background: #10182a; border: 1px solid #1c2740; border-radius: 16px;
  padding: 1.5rem; color: inherit; text-decoration: none; display: block;
}
.apay-room:hover, .pass-tier:hover { border-color: #00b4ff; transform: translateY(-3px); }
.room-kicker {
  display: inline-block; font-family: "Space Grotesk", Inter, sans-serif;
  font-size: 11px; letter-spacing: 0.14em; text-transform: uppercase;
  color: #ff7a1a; margin-bottom: 10px;
}
.apay-room h3, .pass-tier h3 { margin: 0 0 8px; font-family: "Space Grotesk", Inter, sans-serif; }
.apay-room p, .pass-tier p { margin: 0; color: #8b97ab; }
.faq-list { display: grid; gap: 12px; }
.faq-item { border: 1px solid #1c2740; border-radius: 16px; background: #10182a; padding: 16px 18px; }
.faq-item h3 { margin: 0 0 8px; font-size: 1rem; font-family: "Space Grotesk", Inter, sans-serif; }
.faq-item p { margin: 0; color: #8b97ab; }
.presence-bar {
  display: flex; flex-wrap: wrap; align-items: center; gap: 10px 16px;
  padding: 14px 18px; border: 1px solid rgba(0, 180, 255, 0.28);
  border-radius: 999px; background: rgba(0, 180, 255, 0.06);
  color: #e8eef7; font-size: 0.92rem;
}
.presence-dot {
  width: 8px; height: 8px; border-radius: 50%; background: #00b4ff;
  box-shadow: 0 0 0 4px rgba(0, 180, 255, 0.2);
}
.presence-bar strong { font-family: "Space Grotesk", Inter, sans-serif; }
.presence-bar span { color: #8b97ab; }
@media (max-width: 720px) { .presence-bar { border-radius: 16px; } }
.legal-content { color: #e8eef7; }
.legal-content h1, .legal-content h2 { font-family: "Space Grotesk", Inter, sans-serif; }
.legal-content a { color: var(--apay-signal); }
.legal-nav { display: flex; flex-wrap: wrap; gap: 10px 16px; margin-bottom: 22px; }
.legal-nav a { color: #8b97ab; text-decoration: none; font-size: 0.92rem; }
.legal-nav a.active { color: var(--apay-ember); }
