.event-page {
  --event-copy:var(--muted);
}
.event-observation,.event-content,.event-related,.event-categories,.event-card {
  --text:var(--panel-ink); --muted:var(--panel-muted); --accent:var(--panel-accent);
  --line:var(--panel-line); --event-copy:var(--panel-muted); color:var(--text);
}
.event-observation,.event-content,.event-related {
  border:1px solid var(--line); border-radius:18px;
  background:var(--panel-bg); box-shadow:0 16px 45px #03060e40;
}
.event-inner {
  width:min(100%,calc(1160px + 2 * var(--gutter)));
  margin-inline:auto;
  padding:clamp(34px,6vw,84px) var(--gutter) clamp(56px,8vw,118px);
}
.event-breadcrumb {
  display:flex; flex-wrap:wrap; align-items:center; gap:7px 9px;
  margin:0 0 clamp(22px,4vw,40px); color:var(--muted); font-size:13px;
}
.event-breadcrumb a { color:var(--accent); text-underline-offset:.22em; }
.event-hero h1 {
  max-width:20ch; margin:0; color:var(--text); font-size:clamp(37px,6.4vw,88px);
  font-weight:738; line-height:1.02; letter-spacing:-.065em;
}
.event-hero > p {
  max-width:62ch; margin:14px 0 0; color:var(--event-copy);
  font-size:clamp(16px,1.7vw,22px); line-height:1.55;
}
.event-hero time,.event-card time { font-variant-numeric:tabular-nums; }
.event-hero time { color:var(--accent); }
.event-page h2 {
  margin:0; color:var(--text); font-size:clamp(24px,3.2vw,42px);
  font-weight:723; letter-spacing:-.045em; line-height:1.08;
}
.event-categories {
  display:flex; flex-wrap:wrap; align-items:center; gap:7px;
  margin:clamp(21px,3.4vw,38px) 0; padding:0; list-style:none;
}
.event-categories > ul {
  display:contents; padding:0; margin:0; list-style:none;
}
.event-categories a {
  display:inline-flex; align-items:center; justify-content:center; min-height:44px;
  padding:8px 13px; border:1px solid var(--line); border-radius:8px;
  background:var(--panel-bg); color:var(--text); font-weight:600;
  font-size:14px; text-decoration:none;
}
.event-categories a:hover:not([aria-current]) { background:var(--panel-inset); border-color:var(--accent); }
.event-categories a[aria-current] {
  background:var(--accent); border-color:var(--accent); color:#fff;
}
.event-grid {
  display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px;
  margin:18px 0 0; padding:0; list-style:none;
}
.event-card { min-width:0; }
.event-card > a {
  display:flex; flex-direction:column; align-items:flex-start; gap:8px;
  min-height:100%; padding:clamp(15px,2vw,24px); overflow:hidden;
  color:var(--text); background:var(--panel-inset);
  border:1px solid var(--line); border-radius:14px; text-decoration:none;
  transition:border-color .2s,background-color .2s,color .2s;
}
.event-card > a:hover { color:var(--accent); border-color:var(--accent); background:#fafdff; }
.event-card :is(h2,h3) { margin:0; font-size:clamp(19px,2.15vw,28px); line-height:1.15; letter-spacing:-.027em; }
.event-card time,.event-card .event-card-date { color:var(--accent); font-size:14px; font-weight:650; }
.event-card p { margin:0; color:var(--event-copy); font-size:14px; line-height:1.55; }
.event-card img {
  display:block; width:100%; aspect-ratio:3 / 2; object-fit:cover; border-radius:8px;
}
.event-observation {
  max-width:900px; margin-top:clamp(27px,4vw,54px); padding:clamp(15px,3vw,29px);
}
.event-observation header {
  display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; gap:12px 20px;
}
.event-controls,.event-actions {
  display:flex; flex-wrap:wrap; align-items:end; gap:8px 10px;
}
.event-controls { margin-top:18px; }
.event-controls label {
  display:block; margin-bottom:5px; color:var(--event-copy); font-size:13px; font-weight:650;
}
.event-observation select {
  min-width:min(100%,10rem); max-width:100%; min-height:44px; padding:8px 10px;
  border:1px solid var(--line); border-radius:8px;
  background:#fff; color:var(--text); color-scheme:light; font:inherit; font-size:16px;
}
.event-observation button,.event-actions :is(button,a) {
  display:inline-flex; align-items:center; justify-content:center; min-height:44px;
  padding:8px 12px; border:1px solid var(--line); border-radius:8px;
  background:var(--panel-inset); color:var(--accent); font:inherit; font-size:14px; font-weight:650;
  text-decoration:none;
}
.event-observation button:hover:not(:disabled),.event-actions a:hover { background:#dbe8f8; border-color:var(--accent); }
.event-observation button:disabled { opacity:.55; cursor:default; }
.event-data {
  display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:9px;
  margin:16px 0 0; padding:0;
}
.event-data > div { min-width:0; border:1px solid var(--line); border-radius:10px; padding:10px 12px; background:var(--panel-inset); }
.event-data dt {
  margin:0 0 4px; color:var(--muted); font-size:13px; font-weight:570;
}
.event-data dd {
  margin:0; color:var(--text); font-size:clamp(17px,2.5vw,25px); font-weight:690;
  font-variant-numeric:tabular-nums; line-height:1.17; overflow-wrap:anywhere;
}
.event-status {
  max-width:64ch; margin:12px 0 0; color:var(--event-copy); font-size:14px; line-height:1.5;
}
.event-status:empty { display:none; }
.event-status[data-state=error] { color:#a12b24; }
.event-actions { margin-top:16px; }
.event-content { max-width:900px; margin-top:clamp(24px,3.5vw,42px); padding:clamp(16px,3vw,29px); }
.event-content > p { max-width:68ch; }
.event-content:has(> .event-grid) { max-width:none; }
.event-method { margin:14px 0 0; color:var(--muted); font-size:13px; line-height:1.5; }
.event-content p + h2 { margin-top:30px; }
#event-observation-heading { scroll-margin-top:18px; }
.event-related ul { margin:6px 0 0; }
.event-related a { color:var(--accent); text-underline-offset:.22em; }
.event-content section + section { margin-top:30px; }
.event-content p,.event-content li {
  color:var(--event-copy); font-size:clamp(15px,1.6vw,18px); line-height:1.65;
}
.event-content p { margin:12px 0 0; }
.event-content ul { padding-inline-start:1.25em; }
.event-content a:not(.event-card > a) { color:var(--accent); text-underline-offset:.22em; }
.event-related {
  display:flex; flex-wrap:wrap; gap:10px 24px; max-width:900px;
  margin-top:clamp(24px,3.5vw,42px); padding:clamp(16px,3vw,29px);
}
@media(max-width:860px) {
  .event-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:540px) {
  .event-grid { grid-template-columns:minmax(0,1fr); }
  .event-card > a { padding:16px; }
  .event-data { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

.event-hero > .event-peak { font-size:15px; color:var(--muted); }
.event-peak span { display:inline-block; margin-inline-start:.35em; color:var(--accent); }
.event-method a { color:var(--accent); }
.event-content .event-grid { padding:0; }
.event-content .event-card p { margin:0; font-size:14px; line-height:1.55; }
