@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@500;600;700;800&family=DM+Mono:wght@400;500&family=Outfit:wght@400;500;600;700&display=swap');

:root {
  --event-bg:#0b1010;
  --event-panel:#121a18;
  --event-panel-2:#17221f;
  --event-ink:#edf0e6;
  --event-muted:#84938a;
  --event-dim:#53625b;
  --event-rust:#f07442;
  --event-rust-light:#f58b5f;
  --event-acid:#d7ef65;
  --event-amber:#f2ca76;
  --event-blue:#70c5bb;
  --event-line:#31413b;
  --event-mono:"DM Mono", monospace;
  --event-display:"Barlow Condensed", sans-serif;
  --event-body:"Outfit", sans-serif;
}

body.events-page {
  margin:0;
  min-height:100dvh;
  background:radial-gradient(800px 400px at 80% 0%,#24342c 0%,transparent 68%),linear-gradient(150deg,#0a0f0e,#101715 56%,#0a100f);
  color:var(--event-ink);
  font-family:var(--event-body);
}
body.events-page::after {
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  opacity:.035;
  z-index:0;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 140 140' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence baseFrequency='.9' numOctaves='3'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}
.events-page * { box-sizing:border-box; }
.events-page button,.events-page input,.events-page select { font:inherit; }
.events-page button { cursor:pointer; }
.events-wrap { width:min(1280px,92vw); margin:auto; position:relative; z-index:1; }

.events-nav {
  min-height:68px;
  display:flex;
  align-items:center;
  border-bottom:1px solid var(--event-line);
  position:sticky;
  top:0;
  z-index:4;
  background:rgba(11,18,16,.91);
  backdrop-filter:blur(15px);
}
.events-brand {
  color:var(--event-ink);
  font:800 1.35rem var(--event-display);
  letter-spacing:.14em;
  display:flex;
  align-items:center;
  gap:10px;
}
.events-mark {
  width:17px;
  height:17px;
  display:inline-block;
  transform:rotate(45deg);
  background:var(--event-rust);
  box-shadow:4px 4px 0 rgba(240,116,66,.22);
}
.events-nav a { color:var(--event-muted); text-decoration:none; font-size:.82rem; }
.events-nav a:hover,.events-nav .events-back { color:var(--event-ink); }
.events-links { display:flex; gap:22px; margin-left:auto; }
.events-nav-toggle { display:none; margin-left:auto; background:none; border:0; color:var(--event-ink); font-size:1.5rem; }

.events-main { padding:34px 0 86px; }
.events-kicker {
  color:var(--event-rust);
  font:500 .7rem var(--event-mono);
  letter-spacing:.18em;
  text-transform:uppercase;
}
.events-hero {
  display:grid;
  grid-template-columns:1fr 350px;
  gap:38px;
  align-items:end;
  padding:12px 0 32px;
  border-bottom:1px solid var(--event-line);
}
.events-hero h1 {
  max-width:7ch;
  margin:19px 0 18px;
  font:800 clamp(3.8rem,8vw,6.5rem)/.78 var(--event-display);
  letter-spacing:-.035em;
  text-transform:uppercase;
}
.events-hero h1 span { color:var(--event-rust); }
.events-lead { max-width:53ch; color:var(--event-muted); font-size:.95rem; line-height:1.6; }

.events-ledger {
  position:relative;
  overflow:hidden;
  padding:20px;
  border:1px solid var(--event-line);
  background:linear-gradient(135deg,#17231f,#101715);
}
.events-ledger::before {
  content:"LIVE READINESS";
  position:absolute;
  top:14px;
  right:17px;
  color:var(--event-blue);
  font:500 .62rem var(--event-mono);
  letter-spacing:.12em;
}
.events-ledger-title {
  max-width:72%;
  margin:0 0 21px;
  font:700 1.3rem var(--event-display);
  letter-spacing:.05em;
  text-transform:uppercase;
}
.events-progress { height:10px; margin:10px 0 9px; overflow:hidden; background:#2a3732; }
.events-progress span {
  display:block;
  width:0;
  height:100%;
  background:linear-gradient(90deg,var(--event-rust),var(--event-acid));
  transition:width .55s ease;
}
.events-progress-meta {
  display:flex;
  justify-content:space-between;
  color:var(--event-muted);
  font:500 .68rem var(--event-mono);
  text-transform:uppercase;
}
.events-progress-meta strong { color:var(--event-ink); }
.events-credit {
  display:flex;
  justify-content:space-between;
  align-items:end;
  margin-top:19px;
  padding-top:16px;
  border-top:1px solid var(--event-line);
}
.events-credit b { color:var(--event-acid); font:500 1.7rem var(--event-mono); }
.events-credit small {
  max-width:16ch;
  color:var(--event-muted);
  text-align:right;
  font:.66rem/1.4 var(--event-mono);
  text-transform:uppercase;
}

.events-section { padding-top:31px; }
.events-section-head { display:flex; align-items:end; justify-content:space-between; gap:15px; margin-bottom:14px; }
.events-section h2 {
  margin:5px 0 0;
  font:700 clamp(1.8rem,4vw,2rem)/1 var(--event-display);
  letter-spacing:.05em;
  text-transform:uppercase;
}
.events-section-head p { margin:6px 0 0; color:var(--event-muted); font-size:.82rem; }
.events-actions { display:flex; gap:8px; flex-wrap:wrap; }
.event-btn {
  padding:12px 14px;
  border:1px solid var(--event-line);
  background:var(--event-panel-2);
  color:var(--event-ink);
  font:500 .68rem var(--event-mono);
  letter-spacing:.04em;
  text-transform:uppercase;
  transition:transform .2s,border-color .2s,background .2s;
}
.event-btn:hover:not(:disabled) { transform:translateY(-2px); border-color:var(--event-rust); }
.event-btn:focus-visible,.events-toolbar input:focus-visible,.events-toolbar select:focus-visible { outline:2px solid var(--event-acid); outline-offset:2px; }
.event-btn.primary { border-color:var(--event-rust); background:var(--event-rust); color:#17100d; }
.event-btn.acid { border-color:var(--event-acid); background:var(--event-acid); color:#151a10; }
.event-btn:disabled { opacity:.42; cursor:not-allowed; transform:none; }
.event-btn.loading { opacity:.7; }

.events-callout {
  display:grid;
  grid-template-columns:1fr auto;
  gap:16px;
  align-items:center;
  margin-bottom:12px;
  padding:18px 20px;
  border:1px solid rgba(240,116,66,.35);
  background:linear-gradient(100deg,#3b241c,#171d19);
}
.events-callout h3 { margin:0 0 3px; font:700 1.25rem var(--event-display); text-transform:uppercase; }
.events-callout p { margin:0; color:var(--event-muted); font-size:.82rem; }
.events-callout .friday { margin-top:8px; color:var(--event-acid); font:500 .67rem var(--event-mono); text-transform:uppercase; }
.events-callout > .events-kicker { color:var(--event-acid); font-size:.65rem; }
.nuke-recovery {
  display:grid;
  grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);
  gap:1px;
  margin-bottom:12px;
  border:1px solid rgba(215,239,101,.35);
  background:rgba(215,239,101,.35);
}
.nuke-recovery-copy,.nuke-meter-card { padding:20px; background:#121a17; }
.nuke-recovery h3 { margin:6px 0 5px; font:700 1.4rem var(--event-display); text-transform:uppercase; }
.nuke-recovery p { max-width:68ch; margin:0; color:var(--event-muted); font-size:.78rem; line-height:1.5; }
.nuke-weights { display:flex; flex-wrap:wrap; gap:7px; margin-top:13px; }
.nuke-weights span { padding:6px 8px; border:1px solid var(--event-line); color:var(--event-muted); font:500 .58rem var(--event-mono); letter-spacing:.07em; text-transform:uppercase; }
.nuke-weights b { margin-left:4px; color:var(--event-acid); }
.nuke-meter-card { display:flex; flex-direction:column; justify-content:center; background:linear-gradient(145deg,#17221d,#101613); }
.nuke-meter-head,.nuke-meter-foot { display:flex; justify-content:space-between; gap:14px; align-items:center; }
.nuke-meter-head span,.nuke-meter-foot { color:var(--event-muted); font:500 .58rem var(--event-mono); letter-spacing:.07em; text-transform:uppercase; }
.nuke-meter-head strong { color:var(--event-acid); font:600 1rem var(--event-mono); }
.nuke-meter { height:9px; margin:13px 0; overflow:hidden; border:1px solid var(--event-line); background:#0b100e; }
.nuke-meter span { display:block; width:0; height:100%; background:linear-gradient(90deg,var(--event-rust),var(--event-acid)); transition:width .35s ease; }
.nuke-meter-foot b { color:var(--event-ink); text-align:right; font-weight:500; }
.events-stats {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:1px;
  margin-bottom:18px;
  border:1px solid var(--event-line);
  background:var(--event-line);
}
.event-stat { padding:16px 18px; background:var(--event-panel); }
.event-stat small { display:block; color:var(--event-muted); font:500 .62rem var(--event-mono); letter-spacing:.08em; text-transform:uppercase; }
.event-stat strong { display:block; margin-top:8px; color:var(--event-ink); font:500 1.35rem var(--event-mono); }
.event-stat strong.acid { color:var(--event-acid); }

.events-toolbar { display:flex; align-items:center; gap:8px; flex-wrap:wrap; margin:17px 0; }
.events-toolbar input,.events-toolbar select {
  min-height:41px;
  padding:0 12px;
  border:1px solid var(--event-line);
  outline:none;
  background:var(--event-panel);
  color:var(--event-ink);
  font:.72rem var(--event-mono);
}
.events-toolbar input { flex:1 1 220px; min-width:170px; }
.missing-cards-toggle { min-height:41px; padding:0 13px; white-space:nowrap; }
.missing-cards-toggle.is-active {
  border-color:var(--event-acid);
  background:rgba(215,239,101,.12);
  color:var(--event-acid);
}
.events-filter-count {
  align-self:center;
  margin-left:auto;
  color:var(--event-muted);
  font:500 .68rem var(--event-mono);
  letter-spacing:.08em;
  text-transform:uppercase;
}

.events-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:11px; }
.event-card {
  min-width:0;
  border:1px solid var(--event-line);
  background:var(--event-panel);
  transition:transform .2s,border-color .2s;
}
.event-card:hover { transform:translateY(-4px); border-color:rgba(240,116,66,.67); }
.event-card.is-unowned {
  border-color:#27312d;
  background:#111613;
  filter:grayscale(1) saturate(.08);
  opacity:.62;
}
.event-card.is-unowned:hover { border-color:#53625b; }
.event-art {
  position:relative;
  display:grid;
  height:148px;
  overflow:hidden;
  place-items:center;
  background:radial-gradient(circle at 50% 42%,#34453d,#18221f 68%);
}
.event-art::before {
  content:"";
  position:absolute;
  width:102px;
  height:102px;
  border:1px solid rgba(215,239,101,.13);
  transform:rotate(45deg);
}
.event-art::after {
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(135deg,transparent 46%,rgba(240,116,66,.08));
}
.event-art span:not(.event-card-category) {
  position:relative;
  z-index:1;
  color:rgba(237,240,230,.8);
  font:800 2.5rem var(--event-display);
  letter-spacing:.08em;
}
.event-art img {
  position:relative;
  z-index:2;
  width:100%;
  height:100%;
  padding:14px;
  object-fit:contain;
  filter:drop-shadow(0 12px 12px rgba(0,0,0,.53));
}
.event-card.is-unowned .event-art img {
  filter:grayscale(1) contrast(.82) brightness(.7) drop-shadow(0 12px 12px rgba(0,0,0,.53));
}
.event-card-category {
  position:absolute;
  top:9px;
  left:10px;
  z-index:3;
  color:var(--event-acid);
  font:500 .58rem var(--event-mono);
  letter-spacing:.1em;
  text-transform:uppercase;
}
.event-card-body { padding:12px; }
.event-card-top { display:flex; justify-content:space-between; gap:5px; align-items:start; }
.event-card h3 { margin:0; font:700 1.15rem/1 var(--event-display); text-transform:uppercase; }
.event-rarity { color:var(--event-rust); font:500 .57rem var(--event-mono); letter-spacing:.08em; text-transform:uppercase; white-space:nowrap; }
.event-card p { min-height:32px; margin:10px 0; color:var(--event-muted); font-size:.7rem; line-height:1.4; }
.event-card-foot { display:flex; justify-content:space-between; align-items:center; gap:5px; padding-top:10px; border-top:1px solid var(--event-line); }
.event-qty { color:var(--event-muted); font:500 .65rem var(--event-mono); text-transform:uppercase; }
.event-qty strong { color:var(--event-acid); }
.event-card.is-unowned .event-qty { color:#a7afa9; }
.event-sell { padding:7px 8px; font-size:.56rem; }
.event-sell.is-opening-locked {
  opacity:.55;
  cursor:not-allowed;
  filter:grayscale(.35);
}
.event-sell.is-opening-locked:hover { transform:none; border-color:var(--event-line); }

.events-state { padding:46px 20px; border:1px solid var(--event-line); background:var(--event-panel); color:var(--event-muted); text-align:center; }
.events-state strong { display:block; margin-bottom:8px; color:var(--event-ink); font:700 1.5rem var(--event-display); text-transform:uppercase; }
.events-spinner { width:26px; height:26px; margin:0 auto 14px; border:2px solid var(--event-line); border-top-color:var(--event-rust); border-radius:50%; animation:eventSpin .8s linear infinite; }
@keyframes eventSpin { to { transform:rotate(360deg); } }
.events-toast {
  position:fixed;
  z-index:10;
  bottom:24px;
  left:50%;
  padding:13px 18px;
  background:var(--event-ink);
  color:#101511;
  box-shadow:0 12px 30px rgba(0,0,0,.35);
  font-weight:600;
  opacity:0;
  pointer-events:none;
  transform:translate(-50%,20px);
  transition:opacity .2s,transform .2s;
}
.events-toast.show { opacity:1; transform:translate(-50%,0); }
.events-preview-note {
  margin:14px 0 0;
  padding:10px 12px;
  border:1px solid rgba(215,239,101,.46);
  background:rgba(215,239,101,.07);
  color:var(--event-acid);
  font:500 .62rem/1.45 var(--event-mono);
  letter-spacing:.08em;
  text-transform:uppercase;
}
.events-preview-note[hidden] { display:none; }

/* Crate breach: the reveal is intentionally a separate visual language from
   the archive grid — sealed graphite, signal orange, and a cold acid hit. */
.reveal-state {
  position:relative;
  overflow:hidden;
  padding:28px clamp(16px,4vw,42px) 30px;
  border-color:rgba(240,116,66,.55);
  background:radial-gradient(ellipse at 50% 0%,rgba(240,116,66,.14),transparent 58%),#101715;
}
.reveal-heading { text-align:left; }
.reveal-heading h2 { margin:7px 0 5px; font:800 clamp(2rem,5vw,3.2rem)/.9 var(--event-display); letter-spacing:.02em; text-transform:uppercase; }
.reveal-heading p { margin:0; color:var(--event-muted); font-size:.8rem; }
.reveal-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:clamp(10px,2.5vw,24px); max-width:860px; margin:27px auto 20px; }
.reveal-card { --reveal-color:var(--event-rust); position:relative; min-width:0; perspective:1100px; -webkit-perspective:1100px; }
.reveal-surface {
  position:relative; display:block; width:100%; aspect-ratio: .69; padding:0;
  border:1px solid #46544d; background:#151d1a; color:var(--event-ink);
  transform-style:preserve-3d; -webkit-transform-style:preserve-3d;
  transition:transform .72s cubic-bezier(.2,.8,.2,1), border-color .25s, box-shadow .25s;
}
.reveal-surface:hover:not(:disabled),.reveal-surface:focus-visible { border-color:var(--reveal-color); box-shadow:0 0 0 2px rgba(240,116,66,.16),0 18px 38px rgba(0,0,0,.32); }
.reveal-surface:focus-visible { outline:2px solid var(--event-acid); outline-offset:4px; }
.reveal-surface:disabled { cursor:default; }
.reveal-back,.reveal-face { position:absolute; inset:0; display:flex; flex-direction:column; align-items:center; justify-content:center; backface-visibility:hidden; -webkit-backface-visibility:hidden; }
.reveal-back { overflow:hidden; gap:10px; background:linear-gradient(140deg,#202d28,#111715 62%); }
.reveal-back::before,.reveal-back::after { content:""; position:absolute; width:68%; aspect-ratio:1; border:1px solid rgba(215,239,101,.17); transform:rotate(45deg); }
.reveal-back::after { width:43%; border-color:rgba(240,116,66,.4); }
.reveal-back i,.reveal-back b,.reveal-back small { position:relative; z-index:1; font-style:normal; }
.reveal-back i { color:var(--event-rust-light); font:500 .63rem var(--event-mono); letter-spacing:.19em; }
.reveal-back b { font:800 clamp(2.6rem,7vw,4.8rem)/.8 var(--event-display); letter-spacing:.04em; }
.reveal-back small { margin-top:12px; color:var(--event-muted); font:500 .51rem var(--event-mono); letter-spacing:.12em; }
.reveal-face { transform:rotateY(180deg); -webkit-transform:rotateY(180deg); padding:10px; justify-content:flex-end; background:linear-gradient(165deg,#27332d,#101613 70%); }
.reveal-face::before { content:""; position:absolute; inset:7px; border:1px solid color-mix(in srgb,var(--reveal-color),transparent 45%); pointer-events:none; }
.reveal-face img { position:absolute; inset:9% 8% 27%; width:84%; height:62%; object-fit:contain; filter:drop-shadow(0 13px 12px rgba(0,0,0,.58)); }
.reveal-face small,.reveal-face strong,.revealed-rarity,.reveal-face em { position:relative; z-index:1; max-width:100%; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.reveal-face small { color:var(--event-muted); font:500 .52rem var(--event-mono); letter-spacing:.1em; text-transform:uppercase; }
.reveal-face strong { margin-top:4px; font:800 clamp(1rem,2.2vw,1.5rem)/.9 var(--event-display); text-transform:uppercase; }
.revealed-rarity { margin-top:7px; color:var(--reveal-color); font:500 .56rem var(--event-mono); letter-spacing:.12em; text-transform:uppercase; }
.reveal-face em { margin-top:9px; padding:4px 6px; font:500 .52rem var(--event-mono); letter-spacing:.1em; font-style:normal; }
.card-new { color:#172012; background:var(--event-acid); }.card-duplicate { color:#17100d; background:var(--event-rust-light); }
.reveal-card.is-revealed .reveal-surface { transform:rotateY(180deg); -webkit-transform:rotateY(180deg); cursor:default; border-color:var(--reveal-color); box-shadow:0 13px 35px color-mix(in srgb,var(--reveal-color),transparent 78%); }
.reveal-card.is-revealing .reveal-surface { animation:breach .76s cubic-bezier(.2,.8,.2,1) both; }
@keyframes breach { 0%{transform:rotateY(0) scale(1)} 35%{transform:rotateY(85deg) scale(1.04)} 65%{transform:rotateY(125deg) scale(1.06)} 100%{transform:rotateY(180deg) scale(1)} }
.rarity-uncommon { --reveal-color:#70c5bb; }.rarity-rare { --reveal-color:#70a7ef; }.rarity-epic { --reveal-color:#c78bff; }.rarity-legendary { --reveal-color:#f2ca76; }.rarity-mythic { --reveal-color:#ff8b68; }
.rarity-rare.is-revealing .reveal-surface { animation-duration:.9s; }
.rarity-epic.is-revealing .reveal-surface,.rarity-legendary.is-revealing .reveal-surface { animation-duration:1.05s; }
.rarity-mythic.is-revealing .reveal-surface { animation:mythicBreach 1.25s cubic-bezier(.15,.85,.2,1) both; }
@keyframes mythicBreach { 0%{transform:rotateY(0) scale(1)} 25%{transform:rotateY(70deg) scale(1.06)} 45%{transform:rotateY(102deg) scale(1.1)} 62%{transform:rotateY(92deg) scale(1.03)} 100%{transform:rotateY(180deg) scale(1)} }
.reveal-particle { position:absolute; left:50%; top:50%; width:4px; height:4px; opacity:0; background:var(--reveal-color); transform:rotate(calc(var(--particle) * 51deg)) translateY(0); }
.is-revealing .reveal-particle { animation:particleBurst .8s ease-out calc(var(--particle) * 25ms) both; }
@keyframes particleBurst { 0%{opacity:0;transform:rotate(calc(var(--particle) * 51deg)) translateY(0)} 25%{opacity:1} 100%{opacity:0;transform:rotate(calc(var(--particle) * 51deg)) translateY(clamp(55px,10vw,110px))} }
.reveal-lock { margin:0; color:var(--event-muted); font:500 .62rem var(--event-mono); letter-spacing:.14em; text-transform:uppercase; }
.reveal-lock.complete { color:var(--event-acid); }
.reveal-return { margin-top:17px; }

.events-footer {
  padding:20px 0 32px;
  border-top:1px solid var(--event-line);
  color:var(--event-dim);
  font:500 .63rem var(--event-mono);
  letter-spacing:.09em;
  text-transform:uppercase;
}

/* When the owner disables the event, keep the archive visible as background
   context but lock the entire player-facing screen behind an explicit notice. */
body.events-page.event-inactive { overflow:hidden; }
body.events-page.event-inactive .events-nav,
body.events-page.event-inactive .events-main,
body.events-page.event-inactive .events-footer {
  filter:grayscale(1) saturate(.12) brightness(.52);
  user-select:none;
}
.event-inactive-cover {
  position:fixed;
  z-index:8;
  inset:0;
  display:grid;
  place-items:center;
  padding:24px;
  background:rgba(9,13,15,.48);
  backdrop-filter:grayscale(1) saturate(.12) brightness(.72) blur(1px);
}
.event-inactive-cover[hidden] { display:none; }
.event-inactive-card {
  width:min(440px,100%);
  padding:32px 34px;
  border:1px solid rgba(255,255,255,.74);
  background:linear-gradient(145deg,#f1f3f2,#cfd5d2);
  color:#17201d;
  text-align:center;
  box-shadow:0 24px 80px rgba(0,0,0,.55), inset 0 0 0 5px rgba(255,255,255,.2);
}
.event-inactive-mark {
  display:block;
  margin-bottom:13px;
  color:#7d8582;
  font-size:1.8rem;
  line-height:1;
}
.event-inactive-card p {
  margin:0;
  color:#59625e;
  font:600 .64rem var(--event-mono);
  letter-spacing:.18em;
  text-transform:uppercase;
}
.event-inactive-card h2 {
  margin:8px 0 0;
  font:800 clamp(2.6rem,8vw,4rem)/.82 var(--event-display);
  letter-spacing:.035em;
  text-transform:uppercase;
}
.event-inactive-rule {
  display:block;
  width:72px;
  height:2px;
  margin:19px auto;
  background:#7d8582;
}
.event-inactive-card div {
  color:#303936;
  font-size:.98rem;
  font-weight:700;
}
.event-inactive-card small {
  display:block;
  margin:10px auto 0;
  max-width:33ch;
  color:#5b6662;
  font:.7rem/1.55 var(--event-mono);
}

@media (max-width:900px) {
  .events-grid { grid-template-columns:repeat(3,1fr); }
  .events-hero { grid-template-columns:1fr; gap:28px; }
}
@media (max-width:650px) {
  .events-nav { min-height:62px; }
  .events-links {
    display:none;
    position:absolute;
    top:58px;
    right:4vw;
    left:4vw;
    flex-direction:column;
    gap:14px;
    padding:14px;
    border:1px solid var(--event-line);
    background:var(--event-panel);
  }
  .events-links.open { display:flex; }
  .events-nav-toggle { display:block; }
  .events-main { padding-top:27px; }
  .events-hero h1 { font-size:clamp(4rem,19vw,6rem); }
  .events-section-head { display:block; }
  .events-actions { margin-top:15px; }
  .events-callout,.events-stats { grid-template-columns:1fr; }
  .nuke-recovery { grid-template-columns:1fr; }
  .nuke-meter-head,.nuke-meter-foot { align-items:flex-start; }
  .nuke-meter-foot { flex-direction:column; gap:6px; }
  .nuke-meter-foot b { text-align:left; }
  .events-grid { grid-template-columns:repeat(2,1fr); gap:8px; }
  .event-art { height:125px; }
  .event-card p { min-height:unset; }
  .events-filter-count { width:100%; margin-left:0; }
  .event-inactive-card { padding:27px 22px; }
  .reveal-state { padding:24px 12px; }
  .reveal-grid { grid-template-columns:minmax(0,1fr); gap:16px; width:min(100%,320px); margin:22px auto 20px; }
  .reveal-back b { font-size:2.25rem; }
  .reveal-back small { font-size:.5rem; letter-spacing:.09em; }
  .reveal-face strong { font-size:1.2rem; }
}
@media (prefers-reduced-motion: reduce) {
  .events-page *, .events-page *::before, .events-page *::after { animation-duration:.01ms !important; transition-duration:.01ms !important; scroll-behavior:auto !important; }
  .reveal-card.is-revealed .reveal-surface { transform:rotateY(180deg); }
}