/* Stagshley V3 Madness hub — deliberately scoped so V2 keeps its current look. */
#madness {
  --v3-ink: #f7f6ff;
  --v3-muted: #aaa8bd;
  --v3-panel: rgba(11, 9, 25, .92);
  --v3-line: rgba(255, 255, 255, .13);
  --v3-cyan: var(--cyan, #20e7ff);
  --v3-pink: var(--pink, #ff2d78);
  --v3-gold: var(--gold, #ffc857);
  --v3-purple: var(--purple, #9c6cff);
  color: var(--v3-ink);
}
.v3-now-strip{display:grid;grid-template-columns:1fr 1fr;gap:10px;max-width:720px;margin:12px auto 0}.v3-now-card{display:flex;min-height:82px;flex-direction:column;justify-content:center;align-items:flex-start;padding:13px 15px;border:1px solid rgba(0,229,255,.35);border-radius:14px;background:linear-gradient(135deg,rgba(0,229,255,.1),rgba(164,92,255,.08));color:#fff;text-align:left;text-decoration:none;cursor:pointer}.v3-now-card.fm{border-color:rgba(255,210,74,.4);background:linear-gradient(135deg,rgba(255,210,74,.1),rgba(255,45,149,.08))}.v3-now-card small{color:var(--cyan);font-size:9px;font-weight:900;letter-spacing:1.4px}.v3-now-card.fm small{color:var(--gold)}.v3-now-card b{margin:3px 0;font-size:14px}.v3-now-card span{color:var(--mute);font-size:9px}
#madness .v3-panel{margin-top:14px}#madness .v3-grid>.v3-panel{margin-top:0}#madness .v3-tabs{display:flex;gap:7px;overflow-x:auto;margin:18px 0 10px;padding-bottom:3px;scrollbar-width:none}#madness .v3-tabs button{flex:0 0 auto}#madness .v3-tabs button.on{border-color:var(--v3-gold);background:rgba(255,200,87,.14)}#madness .v3-tab-panel{display:none}#madness .v3-tab-panel.on{display:block}#madness .v3-record-options{display:grid;grid-template-columns:1fr 1fr;gap:8px}#madness .v3-record{width:100%;margin-top:7px}#madness .v3-status{min-height:20px;margin-top:8px;color:var(--v3-muted);font-size:10px}#madness .v3-contacts{display:grid;gap:8px}#madness .v3-contact{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px;border:1px solid var(--v3-line);border-radius:11px;background:rgba(255,255,255,.035)}#madness .v3-contact b,#madness .v3-contact small{display:block}#madness .v3-contact small{margin-top:2px;color:var(--v3-muted);font-size:10px}#madness .v3-contact-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:5px}#madness .v3-contact-actions a{padding:7px 8px;border:1px solid rgba(32,231,255,.35);border-radius:7px;color:#fff;font:900 8px "Space Mono",monospace;text-decoration:none}#madness .v3-danger-zone{border-color:rgba(255,45,120,.55);background:linear-gradient(145deg,rgba(255,45,120,.1),var(--v3-panel))}

#madness *,
#v3RoomModal * {
  box-sizing: border-box;
}

#madness [hidden],
#v3RoomModal[hidden],
#v3RoomModal [hidden] {
  display: none !important;
}

#madness .v3-grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: 14px;
}

#madness .v3-card {
  grid-column: span 6;
  position: relative;
  min-width: 0;
  padding: 18px;
  border: 1px solid var(--v3-line);
  border-radius: 18px 4px 18px 4px;
  background:
    linear-gradient(145deg, rgba(32, 231, 255, .07), transparent 42%),
    var(--v3-panel);
  box-shadow: 0 16px 48px rgba(0, 0, 0, .28), inset 0 1px rgba(255, 255, 255, .05);
  overflow: hidden;
}

#madness .v3-card::after {
  content: "";
  position: absolute;
  right: -24px;
  top: -40px;
  width: 90px;
  height: 90px;
  border: 1px solid rgba(255, 45, 120, .24);
  transform: rotate(45deg);
  pointer-events: none;
}

#madness .v3-card.is-wide {
  grid-column: 1 / -1;
}

#madness .v3-kicker,
#madness .v3-card-top,
#madness .v3-muted,
#madness small {
  font-family: "Space Mono", ui-monospace, SFMono-Regular, Consolas, monospace;
}

#madness .v3-kicker {
  color: var(--v3-cyan);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .16em;
  text-transform: uppercase;
}

#madness h3 {
  margin: 7px 0;
  color: var(--v3-ink);
  font-size: clamp(17px, 4.5vw, 24px);
  line-height: 1.08;
}

#madness p {
  margin: 8px 0;
  color: var(--v3-muted);
  line-height: 1.5;
}

#madness input:not([type="checkbox"]),
#madness textarea,
#madness select {
  width: 100%;
  min-height: 46px;
  margin: 6px 0;
  padding: 11px 12px;
  border: 1px solid var(--v3-line);
  border-radius: 10px 2px 10px 2px;
  outline: none;
  color: var(--v3-ink);
  background: rgba(0, 0, 0, .35);
  font: 700 13px/1.35 "Space Mono", ui-monospace, monospace;
}

#madness textarea {
  min-height: 90px;
  resize: vertical;
}

#madness input:focus,
#madness textarea:focus,
#madness select:focus {
  border-color: var(--v3-cyan);
  box-shadow: 0 0 0 3px rgba(32, 231, 255, .13);
}

#madness label {
  color: var(--v3-muted);
  font: 700 11px/1.4 "Space Mono", ui-monospace, monospace;
  letter-spacing: .04em;
}

#madness .v3-check {
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 44px;
}

#madness input[type="checkbox"] {
  width: 22px;
  height: 22px;
  accent-color: var(--v3-pink);
}

#madness button,
#madness .v3-action,
#v3RoomModal button,
#v3RoomModal .v3-action {
  min-height: 46px;
  border: 1px solid rgba(32, 231, 255, .42);
  border-radius: 11px 2px 11px 2px;
  padding: 11px 14px;
  color: #fff;
  background: linear-gradient(135deg, rgba(32, 231, 255, .18), rgba(156, 108, 255, .16));
  box-shadow: inset 0 1px rgba(255, 255, 255, .08);
  font: 900 11px/1.2 "Space Mono", ui-monospace, monospace;
  letter-spacing: .055em;
  text-align: center;
  text-decoration: none;
  text-transform: uppercase;
  cursor: pointer;
  touch-action: manipulation;
}

#madness button:active,
#madness .v3-action:active,
#v3RoomModal button:active,
#v3RoomModal .v3-action:active {
  transform: translateY(1px);
}

#madness button:disabled,
#madness .v3-action:disabled {
  cursor: not-allowed;
  filter: grayscale(.8);
  opacity: .45;
}

#madness .v3-actions,
#madness .v3-room-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 9px;
  margin-top: 12px;
}

#madness .v3-action {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

#madness .v3-action.is-whatsapp {
  border-color: rgba(37, 211, 102, .7);
  background: rgba(37, 211, 102, .15);
}

#madness .v3-proof-btn.is-on,
#madness .v3-action.is-done {
  border-color: rgba(94, 255, 150, .75);
  background: rgba(94, 255, 150, .14);
  box-shadow: 0 0 24px rgba(94, 255, 150, .11);
}

#madness #v3ProofButtons {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

#madness .v3-proof-btn {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 8px;
  min-height: 52px;
  text-align: left;
}

#madness .v3-proof-btn span {
  font-size: 20px;
}

#madness #v3RollCall,
#madness #v3Awards {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

#madness .v3-person-state,
#madness .v3-award {
  display: flex;
  align-items: center;
  min-width: 0;
  gap: 10px;
  padding: 11px;
  border: 1px solid var(--v3-line);
  border-radius: 12px 3px 12px 3px;
  background: rgba(255, 255, 255, .035);
}

#madness .v3-person-state.is-checked {
  border-color: rgba(94, 255, 150, .25);
}

#madness .v3-avatar,
#madness .v3-award-rank {
  display: grid;
  flex: 0 0 36px;
  width: 36px;
  height: 36px;
  place-items: center;
  border-radius: 50%;
  background: rgba(255, 255, 255, .07);
  font-size: 19px;
}

#madness .v3-person-state div,
#madness .v3-award div {
  min-width: 0;
}

#madness .v3-person-state b,
#madness .v3-person-state small {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

#madness .v3-person-state small,
#madness .v3-award small {
  margin-top: 3px;
  color: var(--v3-muted);
  font-size: 9px;
}

#madness #v3MissionList,
#madness #v3VoiceList,
#madness #v3TapeList {
  display: grid;
  gap: 10px;
}

#madness .v3-mission,
#madness .v3-tape,
#madness .v3-memory,
#madness .v3-empty {
  min-width: 0;
  padding: 14px;
  border: 1px solid var(--v3-line);
  border-radius: 14px 3px 14px 3px;
  background: rgba(255, 255, 255, .035);
}

#madness .v3-mission.is-complete {
  border-color: rgba(94, 255, 150, .3);
  opacity: .78;
}

#madness .v3-card-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  color: var(--v3-cyan);
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .12em;
}

#madness .v3-card-top strong {
  color: var(--v3-gold);
}

#madness .v3-tape {
  display: flex;
  gap: 12px;
}

#madness .v3-tape.is-fm {
  border-color: rgba(255, 200, 87, .34);
  background: linear-gradient(120deg, rgba(255, 200, 87, .09), rgba(255, 45, 120, .04));
}

#madness .v3-tape-icon {
  display: grid;
  flex: 0 0 43px;
  width: 43px;
  height: 43px;
  place-items: center;
  border-radius: 50%;
  background: rgba(156, 108, 255, .15);
  font-size: 21px;
}

#madness .v3-tape-copy {
  min-width: 0;
  flex: 1;
}

#madness .v3-tape p,
#madness .v3-memory small {
  color: var(--v3-muted);
  font-size: 10px;
}

#madness .v3-audio-slot {
  margin-top: 9px;
}

#madness audio {
  display: block;
  width: 100%;
  min-height: 42px;
}

#madness .v3-mini-link {
  display: inline-flex;
  margin-top: 10px;
  color: var(--v3-cyan);
  font: 900 10px/1.3 "Space Mono", ui-monospace, monospace;
  text-decoration: none;
}

#madness .v3-award h3,
#madness .v3-award p {
  margin: 2px 0;
}

#madness .v3-award p {
  font-size: 10px;
}

#madness .v3-empty {
  grid-column: 1 / -1;
  text-align: center;
}

#madness .v3-empty.is-locked {
  border-style: dashed;
}

#madness .v3-empty b {
  color: var(--v3-pink);
  font: 900 10px/1.3 "Space Mono", ui-monospace, monospace;
  letter-spacing: .12em;
}

#madness #v3RecordBtn.is-recording {
  border-color: var(--v3-pink);
  background: rgba(255, 45, 120, .18);
  box-shadow: 0 0 26px rgba(255, 45, 120, .22);
}

#madness #v3RecordStatus {
  min-height: 22px;
  margin: 8px 0;
  color: var(--v3-muted);
  font: 800 10px/1.4 "Space Mono", ui-monospace, monospace;
}

#madness #v3RecordStatus[data-tone="recording"],
#madness #v3RecordStatus[data-tone="error"] {
  color: var(--v3-pink);
}

#madness #v3RecordStatus[data-tone="success"] {
  color: #5eff96;
}

#madness #v3RecordStatus[data-tone="uploading"] {
  color: var(--v3-gold);
}

#madness #v3FreshBtn {
  border-color: rgba(255, 45, 120, .65);
  background: rgba(255, 45, 120, .14);
}

html.v3-modal-open,
html.v3-modal-open body {
  overflow: hidden;
}

#v3RoomModal {
  position: fixed;
  z-index: 10020;
  inset: 0;
  display: grid;
  place-items: center;
  padding: max(12px, env(safe-area-inset-top)) max(12px, env(safe-area-inset-right)) max(12px, env(safe-area-inset-bottom)) max(12px, env(safe-area-inset-left));
  background: rgba(2, 2, 9, .92);
  backdrop-filter: blur(10px);
}

#v3RoomModal .v3-room-shell {
  display: grid;
  grid-template-rows: auto minmax(0, 1fr) auto;
  width: min(100%, 1000px);
  height: min(100%, 760px);
  overflow: hidden;
  border: 1px solid rgba(32, 231, 255, .38);
  border-radius: 18px 4px 18px 4px;
  background: #070713;
  box-shadow: 0 0 80px rgba(32, 231, 255, .12);
}

#v3RoomModal .v3-room-head,
#v3RoomModal .v3-room-foot {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 10px;
}

#v3RoomModal #v3RoomTitle {
  margin: 0;
  color: #fff;
  font-size: 16px;
}

#v3RoomModal #v3RoomFrame {
  width: 100%;
  height: 100%;
  min-height: 320px;
  border: 0;
  background: #111;
}

#v3RoomModal .v3-room-foot {
  color: #aaa8bd;
  font: 700 9px/1.35 "Space Mono", ui-monospace, monospace;
}

#v3RoomModal #v3RoomDirect {
  flex: 0 0 auto;
}
#v3RoomModal .v3-room-card.v3-room-shell{display:flex;flex-direction:column;width:min(100%,1000px);height:min(100%,760px);padding:12px;overflow:auto}#v3RoomModal .v3-room-bar{display:flex;align-items:center;justify-content:space-between;gap:12px}#v3RoomModal .v3-room-bar small,#v3RoomModal .v3-room-bar b{display:block}#v3RoomModal .v3-room-bar small{color:var(--v3-cyan);font:900 9px "Space Mono",monospace;letter-spacing:1px}#v3RoomModal .v3-room-choice{display:flex;flex-wrap:wrap;gap:7px;margin:8px 0}#v3RoomModal .v3-room-choice .gbtn{flex:1 1 150px;margin:0}#v3RoomModal .v3-room-card iframe{flex:1;min-height:420px}

@media (max-width: 720px) {
  .v3-now-strip{grid-template-columns:1fr}.v3-now-card{min-height:72px}
  #madness .v3-card,
  #madness .v3-card.is-wide {
    grid-column: 1 / -1;
  }

  #madness .v3-card {
    padding: 14px;
  }

  #v3RoomModal {
    padding: env(safe-area-inset-top) 0 env(safe-area-inset-bottom);
  }

  #v3RoomModal .v3-room-shell {
    width: 100%;
    height: 100%;
    border-radius: 0;
  }
  #v3RoomModal .v3-room-card.v3-room-shell{padding:8px}#v3RoomModal .v3-room-card iframe{min-height:55vh}#madness .v3-contact{align-items:flex-start;flex-direction:column}#madness .v3-contact-actions{justify-content:flex-start}
}

@media (max-width: 390px) {
  #madness #v3RollCall,
  #madness #v3Awards {
    grid-template-columns: 1fr;
  }

  #madness .v3-room-actions {
    grid-template-columns: 1fr;
  }

  #madness .v3-tape {
    gap: 9px;
  }
}

@media (prefers-reduced-motion: reduce) {
  #madness *,
  #v3RoomModal * {
    scroll-behavior: auto !important;
    transition: none !important;
    animation: none !important;
  }
}
