/* Pass 4 Board/team replacement owns these responsive selectors. Keep the
   legacy application rules inert so they cannot reassert the old geometry. */
/*
.feature-kicker { color: var(--accent); font-size: var(--public-label-size); font-weight: 800; letter-spacing: 0.1em; text-transform: uppercase; }

@media (max-width: 900px) {
  .public-team-workspace { width: min(100%, calc(var(--public-board-columns) * 9rem)); grid-template-columns: minmax(0, 1fr); }
  .public-team-sidebar.public-ui-sectioned-surface { display: grid; height: auto; min-height: 0; grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .public-team-sidebar.public-ui-sectioned-surface > .public-ui-sectioned-surface__section { border-top: 0; border-left: 1px solid var(--public-ui-divider); }
  .public-team-sidebar.public-ui-sectioned-surface > .public-ui-sectioned-surface__section:first-child { border-left: 0; }
  .team-board-overlay-content .public-team-sidebar.public-ui-sectioned-surface.tile-context-sidebar { width: min(100%, calc(var(--public-board-columns) * 9rem)); height: auto; min-height: 0; margin-inline: auto; }
  .team-board-overlay-content .public-team-sidebar.public-ui-sectioned-surface.tile-context-sidebar > [data-tile-completion-breakdown],
  .team-board-overlay-content .public-team-sidebar.public-ui-sectioned-surface.tile-context-sidebar > [data-tile-eligible-drops] { display: none; }
  .team-contributors-section { display: none; }
}

@media (min-width: 531px) and (max-width: 900px) {
  .team-board-overlay-content .public-team-sidebar.public-ui-sectioned-surface.tile-context-sidebar { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: stretch; }
  .team-board-overlay-content .public-team-sidebar.public-ui-sectioned-surface.tile-context-sidebar > .public-ui-sectioned-surface__section { border-top: 0; border-left: 1px solid var(--public-ui-divider); }
  .team-board-overlay-content .public-team-sidebar.public-ui-sectioned-surface.tile-context-sidebar > .public-ui-sectioned-surface__section:first-child { border-left: 0; }
  .team-board-overlay-content .public-team-sidebar.public-ui-sectioned-surface.tile-context-sidebar > .public-ui-evidence-gallery-section { display: flex; grid-column: 2; min-height: 0; height: auto; flex: 0 0 auto; overflow: hidden; }
  .team-board-overlay-content .public-team-sidebar.public-ui-sectioned-surface.tile-context-sidebar > .public-ui-evidence-gallery-section > .public-ui-evidence-gallery { flex: 0 1 auto; grid-template-columns: repeat(2, minmax(0, 1fr)); max-height: min(calc(18.75vw - 0.85rem), calc(var(--public-board-columns) * 1.6875rem - 0.85rem)); }
}

@media (min-width: 761px) and (max-width: 900px) {
  .team-board-overlay-content .public-team-sidebar.public-ui-sectioned-surface.tile-context-sidebar > .public-ui-evidence-gallery-section > .public-ui-evidence-gallery { grid-template-columns: repeat(3, minmax(0, 1fr)); max-height: min(calc(25vw - 1rem), calc(var(--public-board-columns) * 2.25rem - 1rem)); }
}

@media (max-width: 530px) {
  .team-board-overlay-content .public-team-sidebar.public-ui-sectioned-surface.tile-context-sidebar { display: flex; flex-direction: column; }
  .team-board-overlay-content .public-team-sidebar.public-ui-sectioned-surface.tile-context-sidebar > [data-tile-completion-breakdown],
  .team-board-overlay-content .public-team-sidebar.public-ui-sectioned-surface.tile-context-sidebar > [data-tile-eligible-drops] { display: block; }
  .team-board-overlay-content .public-team-sidebar.public-ui-sectioned-surface.tile-context-sidebar > .public-ui-sectioned-surface__section { border-top: 1px solid var(--public-ui-divider); border-left: 0; }
  .team-board-overlay-content .public-team-sidebar.public-ui-sectioned-surface.tile-context-sidebar > .public-ui-sectioned-surface__section:first-child { border-top: 0; }
  .team-board-overlay-content .public-team-sidebar.public-ui-sectioned-surface.tile-context-sidebar > .public-ui-evidence-gallery-section { display: flex; min-height: 0; height: auto; flex: 0 0 auto; overflow: hidden; }
  .team-board-overlay-content .public-team-sidebar.public-ui-sectioned-surface.tile-context-sidebar > .public-ui-evidence-gallery-section > .public-ui-evidence-gallery { flex: 0 1 auto; grid-template-columns: repeat(3, minmax(0, 1fr)); max-height: min(calc(50vw - 0.9rem), calc(var(--public-board-columns) * 4.5rem - 0.9rem)); }
}

@media (min-width: 761px) and (max-width: 900px) {
  .public-team-sidebar:not(.tile-context-sidebar) { box-sizing: border-box; width: min(100%, calc(var(--public-board-columns) * 9rem)); margin-inline: auto; }
}

@media (max-width: 1100px) {
  .recent-drop-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 1000px) {
  .public-dashboard-masthead { width: auto; max-width: none; grid-template-columns: 1fr; }
  .public-event-dashboard .public-dashboard-masthead { width: 100%; max-width: 100%; }
  .public-event-dashboard .public-dashboard-masthead > .public-ui-view-switcher { justify-self: center; }
}

@media (min-width: 901px) and (max-width: 1100px) {
  .public-event-dashboard .public-dashboard-masthead:has(> .public-dashboard-hero > .public-dashboard-masthead-actions--dual) { margin-bottom: 1.35rem; }
  .public-event-dashboard .public-dashboard-hero:has(> .public-dashboard-masthead-actions--dual) {
    grid-template-columns: minmax(0, 1fr) 1px minmax(0, 1fr) 1px minmax(0, 1fr) 1px minmax(0, 1fr);
    grid-template-rows: auto 0.55rem auto;
  }
  .public-event-dashboard .public-dashboard-hero > .public-dashboard-masthead-divider:has(+ .public-dashboard-masthead-actions--dual) {
    display: none;
  }
  .public-event-dashboard .public-dashboard-hero > .public-dashboard-masthead-actions--dual {
    grid-column: 1 / -1;
    grid-row: 3;
    justify-content: flex-end;
    padding-block: 0.75rem;
  }
  .public-ui-masthead-row:has(> .public-dashboard-masthead-actions--dual) { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .public-ui-masthead-row > .public-dashboard-masthead-actions--dual { grid-column: 1 / -1; }
}

@media (max-width: 900px) {
  .public-event-dashboard .public-dashboard-masthead:has(> .public-dashboard-hero > .public-dashboard-masthead-actions > .public-ui-action) { margin-bottom: 0.35rem; }
  .public-event-dashboard .public-dashboard-masthead { grid-template-columns: 1fr; gap: 0; }
  .public-event-dashboard .public-dashboard-hero > .public-dashboard-title,
  .public-event-dashboard .public-dashboard-hero > .public-dashboard-masthead-actions { box-sizing: border-box; padding-inline: 0.75rem; }
  .public-event-dashboard .public-dashboard-hero {
    grid-column: 1;
    grid-template-columns: minmax(0, 1fr) 1px minmax(0, 1fr);
    grid-template-rows: auto 1px auto 1px auto;
    padding: 0 0 0.75rem;
  }
  .public-event-dashboard .public-dashboard-hero > :nth-child(1) { grid-column: 1; grid-row: 1; }
  .public-event-dashboard .public-dashboard-hero > :nth-child(2) { grid-column: 2; grid-row: 1; width: 1px; height: 4rem; }
  .public-event-dashboard .public-dashboard-hero > :nth-child(3) { grid-column: 3; grid-row: 1; }
  .public-event-dashboard .public-dashboard-hero > :nth-child(4) { grid-column: 1 / -1; grid-row: 2; width: 100%; height: 1px; }
  .public-event-dashboard .public-dashboard-hero > :nth-child(5) { grid-column: 1; grid-row: 3; }
  .public-event-dashboard .public-dashboard-hero > :nth-child(6) { grid-column: 2; grid-row: 3; width: 1px; height: 4rem; }
  .public-event-dashboard .public-dashboard-hero > :nth-child(7) { grid-column: 3; grid-row: 3; }
  .public-event-dashboard .public-dashboard-hero > :nth-child(8) { grid-column: 1 / -1; grid-row: 4; width: 100%; height: 1px; }
  .public-event-dashboard .public-dashboard-hero > :nth-child(9) { grid-column: 1 / -1; grid-row: 5; }
  .public-event-dashboard .public-dashboard-hero > .public-dashboard-masthead-actions { justify-content: flex-end; padding-block: 0.75rem; }
  .public-ui-masthead-row > .public-dashboard-masthead-actions { grid-column: 1 / -1; }
  .public-ui-masthead-row > .public-dashboard-masthead-actions .public-dashboard-masthead-action-list { justify-content: flex-end; }
  .public-event-dashboard .public-ui-masthead-row { display: grid; grid-column: 1; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.85rem; }
  .public-event-dashboard .public-ui-masthead-row > .public-ui-surface { grid-column: auto; }
  .public-event-dashboard .public-ui-masthead-card--spacer { display: none; }
}

@media (max-width: 991px) {
  .public-event-dashboard .public-ui-masthead-row { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 767px) {
  .public-event-dashboard .public-dashboard-hero { width: 100%; }
  .public-event-dashboard .public-dashboard-masthead-divider { width: 100%; height: 1px; }
  .public-event-dashboard .public-ui-masthead-row { width: 100%; }
}

@media (max-width: 760px) {
  .public-event-dashboard { padding-top: 0.5rem; }
  .public-dashboard-masthead { grid-template-columns: 1fr; gap: 0.75rem; }
  .public-dashboard-masthead > .public-ui-view-switcher { width: 100%; }
  .public-dashboard-hero { min-height: 0; padding: 0.85rem 0 1rem; }
  .public-event-mark { width: 2.85rem; height: 2.85rem; font-size: 0.9rem; }
  .recent-drop-grid { grid-template-columns: 1fr; }
  .public-team-heading { grid-template-columns: auto minmax(0, 1fr); }
  .public-team-heading .winner-label { grid-column: 1 / -1; }
  .public-full-board { gap: 0.42rem; min-width: calc(var(--public-board-columns) * 7.25rem); }
}

@media (max-width: 630px) {
  .public-team-sidebar.public-ui-sectioned-surface:not(.tile-context-sidebar) { grid-template-columns: 1fr; }
  .public-team-sidebar.public-ui-sectioned-surface:not(.tile-context-sidebar) > .public-ui-sectioned-surface__section { border-top: 1px solid var(--public-ui-divider); border-left: 0; }
  .public-team-sidebar.public-ui-sectioned-surface:not(.tile-context-sidebar) > .public-ui-sectioned-surface__section:first-child { border-top: 0; }
}

@media (max-width: 540px) {
  .recent-drop-card { grid-template-columns: 6rem minmax(0, 1fr); }
  .public-team-heading .rank-medallion { width: 2.5rem; height: 2.5rem; }
  .public-team-sidebar.public-ui-sectioned-surface { grid-template-columns: 1fr; }
  .public-team-sidebar.public-ui-sectioned-surface > .public-ui-sectioned-surface__section { border-top: 1px solid var(--public-ui-divider); border-left: 0; }
  .public-team-sidebar.public-ui-sectioned-surface > .public-ui-sectioned-surface__section:first-child { border-top: 0; }
  .public-team-switcher { grid-template-columns: 1fr; gap: 0.55rem; }
  .public-team-switcher > span { display: none; }
}

@media (max-width: 390px) {
  .public-event-dashboard .public-dashboard-hero { grid-template-columns: 1fr; grid-template-rows: none; }
  .public-event-dashboard .public-dashboard-hero > :nth-child(n) { grid-column: auto; grid-row: auto; }
  .public-event-dashboard .public-dashboard-hero > :nth-child(9) { grid-column: 1 / -1; }
  .public-event-dashboard .public-dashboard-hero > .public-dashboard-masthead-divider { width: 100%; height: 1px; }
  .public-ui-masthead-row { grid-template-columns: 1fr; }
}

@media (max-width: 720px) {
  .public-home { padding-top: 0; }
  .public-hero { padding: 0.65rem 0; }
  .public-event-card { grid-template-columns: minmax(0, 1fr) auto; gap: 0.35rem 0.75rem; padding: 0.75rem; }
  .public-event-status { grid-column: 1; grid-row: 1; justify-self: start; align-self: auto; }
  .public-event-title { grid-column: 1 / -1; grid-row: 2; }
  .public-event-meta { grid-column: 1; grid-row: 3; }
  .public-event-action { grid-column: 2; grid-row: 3; white-space: nowrap; }
  .mission-header, .team-board-header, .tile-detail-header { align-items: start; flex-direction: column; }
  .mission-actions { align-items: start; }
  .mission-team-card > header { grid-template-columns: auto 1fr; }
  .mission-team-card .winner-label { grid-column: 1 / -1; }
  .tile-detail-layout { grid-template-columns: 1fr; }
  .public-full-board { grid-template-columns: repeat(var(--public-board-columns), minmax(7.5rem, 1fr)); }
}

@media (prefers-reduced-motion: reduce) {
  .team-board-overlay[open]:not(.closing), .team-board-overlay::backdrop, .team-board-overlay.closing::backdrop { animation-duration: 0.01ms; }
  .public-event-card, .mission-team-card, .public-tile:not(.public-ui-team-board-tile), .public-ui-action { transition: none; }
  .public-event-card:hover, .mission-team-card:hover, .public-tile:not(.public-ui-team-board-tile):hover { transform: none; }
}

*/
.status-dot {
  width: 0.65rem;
  height: 0.65rem;
  margin-top: 0.3rem;
  background: var(--success);
  border-radius: 50%;
  box-shadow: 0 0 0 0.25rem rgba(114, 184, 121, 0.13);
}

.content-page {
  padding: 4rem 0;
}

.form-page,
.table-page {
  padding: 3rem 0 5rem;
}

.form-page {
  max-width: 38rem;
}

.wide-form {
  max-width: 48rem;
}

.form-page h1,
.table-page h1 {
  font-size: var(--page-title-size);
}

.form-intro,
.form-hint {
  color: var(--muted);
}

.panel {
  margin-top: 1.5rem;
  padding: 1.4rem;
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: 0.8rem;
}

.form-stack {
  display: grid;
  gap: 0.65rem;
}

.form-stack h2 {
  margin: 0 0 0.5rem;
  font-size: 1.2rem;
}

.form-control,
.form-select {
  color: var(--text);
  background: var(--page);
  border-color: var(--border);
}

.form-control:focus,
.form-select:focus {
  color: var(--text);
  background: var(--page);
  border-color: var(--admin-focus-accent, var(--accent));
}

.check-row,
.button-row,
.filter-row,
.page-heading {
  display: flex;
  align-items: center;
  gap: 0.8rem;
}

.info-icon {
  position: relative;
  display: inline-grid;
  place-items: center;
  width: 1.15rem;
  height: 1.15rem;
  color: var(--page);
  background: var(--accent);
  border-radius: 50%;
  font-family: Georgia, serif;
  font-size: 0.8rem;
  font-style: italic;
  font-weight: 700;
  cursor: help;
}

.info-icon::after {
  position: absolute;
  z-index: 10;
  bottom: calc(100% + 0.55rem);
  left: 50%;
  width: min(19rem, 75vw);
  padding: 0.65rem 0.75rem;
  color: var(--text);
  background: var(--surface-raised);
  border: 1px solid var(--border);
  border-radius: 0.45rem;
  box-shadow: 0 0.5rem 1.5rem rgba(0, 0, 0, 0.35);
  content: attr(data-tooltip);
  font-family: Inter, ui-sans-serif, system-ui, sans-serif;
  font-size: 0.82rem;
  font-style: normal;
  font-weight: 400;
  line-height: 1.4;
  opacity: 0;
  pointer-events: none;
  transform: translate(-50%, 0.25rem);
  transition: opacity 120ms ease, transform 120ms ease;
}

.info-icon:hover::after,
.info-icon:focus::after {
  opacity: 1;
  transform: translate(-50%, 0);
}

.button-row {
  margin-top: 0.6rem;
}

.page-heading {
  justify-content: space-between;
}

.filter-row {
  align-items: end;
  flex-wrap: wrap;
}

.filter-row > div {
  flex: 1 1 14rem;
}

.form-grid,
.action-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
}

.action-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.subheading {
  margin-top: 2.5rem;
}

.inline-form {
  display: flex;
  gap: 0.4rem;
}

.inline-form input {
  min-width: 8rem;
  color: var(--text);
  background: var(--page);
  border: 1px solid var(--border);
}

.event-summary p {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
}

.private-link {
  overflow-wrap: anywhere;
}

.board-workspace { display: grid; grid-template-columns: minmax(0, 1fr) minmax(14rem, 20rem); gap: 1.25rem; align-items: start; margin: 2rem 0; }
.board-editor { display: grid; grid-template-columns: repeat(var(--board-columns), minmax(7rem, 1fr)); gap: 0.65rem; overflow-x: auto; }
.board-cell { display: flex; min-height: 7rem; padding: 0.8rem; flex-direction: column; justify-content: space-between; background: var(--surface); border: 1px solid var(--border); border-radius: 0.55rem; cursor: grab; transition: border-color 120ms ease, box-shadow 120ms ease, background 120ms ease; }
.board-cell.empty { color: var(--muted); border-style: dashed; cursor: default; }
.board-cell.line-highlight { border-color: var(--accent); background: color-mix(in srgb, var(--accent) 13%, var(--surface)); box-shadow: 0 0 0 2px color-mix(in srgb, var(--accent) 25%, transparent); }
.tile-details-button { display: flex; flex: 1; flex-direction: column; justify-content: space-between; align-items: flex-start; padding: 0; color: inherit; background: transparent; border: 0; text-align: left; }
.line-summary { position: sticky; top: 1rem; }
.line-summary > div { display: flex; justify-content: space-between; padding: 0.45rem 0.65rem; border-bottom: 1px solid var(--border); border-radius: 0.3rem; }
.line-stat:hover, .line-stat:focus { color: var(--admin-focus-accent, var(--accent)); background: var(--surface-raised); outline: none; }
.balance-warning { margin-top: 1rem; padding: 0.7rem; color: #f0ca7a; border: 1px solid color-mix(in srgb, #f0ca7a 45%, transparent); border-radius: 0.4rem; }
.tile-dialog { width: min(38rem, calc(100vw - 2rem)); color: var(--text); background: var(--surface); border: 1px solid var(--border); border-radius: 0.7rem; }
.tile-dialog::backdrop { background: rgba(0, 0, 0, 0.7); }
.dialog-close { float: right; color: var(--text); background: transparent; border: 0; font-size: 2rem; }
.catalogue-record { margin: 0.8rem 0; }
.catalogue-record summary { cursor: pointer; }
.compact-row { gap: 0.35rem; }
.compact-row > input { min-width: 8rem; }
.csv-header { display: block; overflow-wrap: anywhere; white-space: normal; }
.requirement-row { display: flex; justify-content: space-between; gap: 1rem; padding: 0.8rem 0; border-bottom: 1px solid var(--border); }
.board-page { max-width: 100rem; padding-top: 1.15rem; }
.board-editing-status { margin: 0.55rem 0; padding: 0.65rem 0.8rem; }
.board-editing-status > div { display: grid; gap: 0.08rem; }
.board-editing-status span { color: var(--muted); font-size: 0.74rem; }
.compact-board-setup { display: grid; grid-template-columns: minmax(16rem, 1fr) 9rem 9rem auto; gap: 1rem; align-items: end; }
.compact-board-setup h2, .compact-board-setup p { margin: 0; }
.board-toolbar { display: flex; justify-content: flex-start; align-items: center; gap: 0.55rem; margin: 0.65rem 0 0; padding: 0.65rem 0.75rem; }
.board-toolbar-summary { display: grid; min-width: 0; margin-right: auto; gap: 0.06rem; }
.board-toolbar-summary .eyebrow { margin: 0; font-size: 0.62rem; }
.board-toolbar-summary strong { font-size: 0.92rem; }
.board-toolbar-summary > span:last-child { color: var(--muted); font-size: 0.72rem; }
.board-toolbar details { position: relative; margin-left: auto; }
.board-toolbar form { margin: 0; }
.board-toolbar summary { list-style: none; }

.published-board-toolbar {
  padding-block: 0.5rem;
}

.published-board-toolbar .board-toolbar-summary {
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  column-gap: 0.55rem;
}

.published-board-toolbar .board-toolbar-summary .eyebrow {
  flex-basis: 100%;
}

.published-board-workspace {
  grid-template-columns: minmax(0, 1fr) minmax(18rem, 21rem);
}

.team-workload-stat {
  align-items: start;
}

.team-workload-stat small {
  display: block;
  margin-top: 0.12rem;
  line-height: 1.35;
}
.toolbar-popover { position: absolute; z-index: 20; right: 0; width: 16rem; margin-top: 0.5rem; padding: 1rem; background: var(--surface); border: 1px solid var(--border); border-radius: 0.55rem; box-shadow: 0 1rem 3rem rgba(0,0,0,.35); }
.redesigned-board-workspace { grid-template-columns: minmax(0, 1fr) minmax(16rem, 20rem); gap: 0.75rem; margin: 0.75rem 0 1.5rem; }
.board-canvas { min-width: 0; margin: 0; padding: 0.7rem; }
.board-canvas-heading { display: flex; justify-content: space-between; gap: 1rem; align-items: end; margin-bottom: 0.6rem; }
.board-canvas-heading .eyebrow { margin: 0 0 0.08rem; font-size: 0.62rem; }
.board-canvas-heading h2 { margin: 0; font-size: 1.2rem; }
.board-canvas-heading > span { max-width: 25rem; color: var(--muted); font-size: 0.7rem; text-align: right; }
.board-page .board-editor { width: 100%; grid-template-columns: repeat(var(--board-columns), minmax(6rem, 1fr)); align-items: stretch; gap: 0.42rem; }
.board-page .board-cell { min-height: 6rem; padding: 0.55rem; border-radius: 0.48rem; }
.board-page .tile-details-button { gap: 0.55rem; }
.board-page .tile-details-button strong { max-width: calc(100% - 1rem); font-size: 0.82rem; line-height: 1.2; }
.board-page .tile-details-button span { padding: 0.14rem 0.35rem; color: var(--muted); background: var(--surface-raised); border-radius: 999px; font-size: 0.63rem; font-weight: 700; }
.board-page .drag-handle { top: 0.2rem; right: 0.3rem; font-size: 0.92rem; }
.board-sidebar { display: grid; gap: 0.65rem; }
.board-sidebar > .panel { margin: 0; padding: 0.7rem; }
.board-panel-heading { display: flex; justify-content: space-between; gap: 0.7rem; align-items: end; }
.board-panel-heading .eyebrow { margin: 0 0 0.08rem; font-size: 0.62rem; }
.board-panel-heading h2 { margin: 0; font-size: 1.05rem; }
.board-panel-heading > span { color: var(--muted); font-size: 0.68rem; }
.stats-panel h2 { margin: 0; }
.stats-panel dl { margin: 0.55rem 0; }
.stats-panel dl > div { display: flex; justify-content: space-between; gap: 0.7rem; padding: 0.28rem 0; border-bottom: 1px solid var(--border); font-size: 0.72rem; }
.stats-panel dd { margin: 0; font-weight: 700; text-align: right; }
.inline-stat-form { display: grid; grid-template-columns: minmax(0, 1fr) 4.4rem; gap: 0.55rem; align-items: center; margin-top: 0.55rem; }
.inline-stat-form label { color: var(--muted); font-size: 0.7rem; }
.inline-stat-form input { min-width: 0; min-height: 2.1rem; padding: 0.3rem 0.45rem; font-size: 0.78rem; }
.board-sidebar .line-summary { position: static; }
.board-sidebar .line-summary > summary { padding-bottom: 0.45rem; cursor: pointer; font-size: 0.78rem; }
.board-sidebar .line-summary > div { padding: 0.34rem 0.4rem; font-size: 0.7rem; }
.board-sidebar .line-stat small { display: block; color: var(--muted); font-size: 0.62rem; font-weight: 400; }
.board-sidebar .balance-warning { margin: 0.5rem 0 0; padding: 0.45rem; font-size: 0.68rem; }
.create-tile-button { display: grid; place-items: center; width: 100%; min-height: 5.5rem; color: var(--muted); background: transparent; border: 0; border-radius: 0.4rem; }
.create-tile-button span { color: var(--accent); font-size: 1.6rem; line-height: 1; }
.create-tile-button:hover, .create-tile-button:focus-visible { color: var(--text); background: var(--surface-raised); }
.board-cell.populated { position: relative; }
.drag-handle { position: absolute; z-index: 2; top: 0.35rem; right: 0.45rem; color: var(--muted); cursor: grab; font-size: 1.2rem; }
.board-cell.dragging { opacity: 0.45; }
.board-cell.drop-target { border-color: var(--accent); background: color-mix(in srgb, var(--accent) 18%, var(--surface)); transform: translateY(-2px); }
.create-tile-dialog { position: relative; width: min(41rem, calc(100vw - 2rem)); max-height: calc(100vh - 2rem); padding: 0.85rem; overflow-y: auto; }
.create-tile-dialog > .dialog-close { position: absolute; z-index: 2; top: 0.65rem; right: 0.65rem; float: none; }
.create-tile-dialog > .eyebrow { margin: 0 0 0.1rem; }
.create-tile-dialog > h2 { margin: 0 0 0.55rem; }
.create-tile-dialog .form-stack { gap: 0.55rem; }
.create-tile-dialog small, .form-stack label small { display: block; color: var(--muted); font-weight: 400; }
.create-tile-dialog .checkbox-dropdown > summary { cursor: pointer; }
.tile-editor-section { display: grid; gap: 0.45rem; padding: 0.65rem; background: color-mix(in srgb, var(--surface-raised) 35%, transparent); border: 1px solid var(--border); border-radius: 0.55rem; }
.tile-editor-section-heading { display: flex; gap: 0.55rem; align-items: baseline; }
.tile-editor-section-heading h3 { margin: 0; font-size: 0.95rem; }
.tile-editor-section-heading span { color: var(--muted); font-size: 0.66rem; }
.tile-details-grid, .tile-finish-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 0.65rem; align-items: start; }
.tile-field-label { display: flex; justify-content: flex-start; gap: 0.4rem; align-items: baseline; }
.tile-field-label small { display: inline !important; font-size: 0.65rem; text-align: left; }
.tile-finish-grid textarea { resize: vertical; }
.add-objective-button { justify-self: start; }
.requirement-editor { display: grid; gap: 0.45rem; margin: 0; padding: 0.6rem; border: 1px solid var(--border); border-radius: 0.55rem; }
.requirement-editor legend { float: none; width: auto; margin: 0; color: var(--text); font-size: 0.82rem; font-weight: 700; }
.objective-heading { display: flex; justify-content: space-between; gap: 1rem; align-items: center; }
.objective-core-grid { display: grid; grid-template-columns: minmax(8rem, 0.62fr) minmax(20rem, 1.65fr) 5rem; gap: 0.55rem; align-items: end; }
.objective-source-field { display: grid; gap: 0.3rem; min-width: 0; }
.boss-picker { position: relative; }
.boss-picker > .checkbox-dropdown-menu { position: absolute; z-index: 40; top: calc(100% + 0.2rem); right: 0; left: 0; max-height: 15rem; margin: 0; background: var(--page); border: 1px solid var(--border); border-radius: 0.45rem; box-shadow: 0 0.8rem 2rem rgba(0, 0, 0, 0.38); }
.drop-only-fields { display: grid; gap: 0.3rem; }
.eligible-drop-heading { display: flex; justify-content: space-between; gap: 0.7rem; align-items: center; }
.eligible-drop-heading > strong { font-size: 0.78rem; }
.eligible-drop-heading > div:last-child { display: flex; gap: 0.35rem; }
.eligible-drop-actions[hidden] { display: none; }
.drop-picker-empty { margin: 0; padding: 0; }
.missing-drop-help { margin: 0.1rem 0 0; }
.objective-counting-options { padding: 0.55rem 0.65rem; background: color-mix(in srgb, var(--surface-raised) 35%, transparent); border: 1px solid var(--border); border-radius: 0.45rem; }
.objective-counting-options summary { color: var(--muted); cursor: pointer; font-size: 0.72rem; font-weight: 700; }
.objective-counting-options > div { display: grid; gap: 0.4rem; margin-top: 0.55rem; }
.drop-weight-field { width: 4.5rem; margin-left: auto; }
.drop-weight-field[hidden] { display: none; }
.drop-weight-field .form-control, .objective-core-grid input[type="number"] { color-scheme: dark; }
.drop-weight-field input[type="number"]::-webkit-inner-spin-button, .objective-core-grid input[type="number"]::-webkit-inner-spin-button { opacity: 1; }
.warning-outline-action { color: #e0ae42; background: transparent; border: 1px solid color-mix(in srgb, #e0ae42 72%, transparent); }
.warning-outline-action:hover, .warning-outline-action:focus-visible { color: #f0ca7a; background: color-mix(in srgb, #e0ae42 10%, transparent); border-color: #e0ae42; }
@media (max-width: 760px) {
    .tile-editor-section-heading, .eligible-drop-heading { align-items: flex-start; flex-direction: column; }
    .tile-editor-section-heading span { text-align: left; }
    .tile-details-grid, .tile-finish-grid, .objective-core-grid { grid-template-columns: 1fr; }
    .objective-heading { align-items: flex-start; }
    grid-auto-rows: minmax(6rem, auto);
    height: 100%;
}

.board-page .board-editor > form {
    height: 100%;
}

.dialog-actions { display: flex; justify-content: flex-end; gap: 0.7rem; margin-top: 0.8rem; }
.catalogue-page { max-width: 94rem; padding-top: 1.4rem; }
.catalogue-page-heading { margin-bottom: 0.75rem; }
.catalogue-page-heading h1 { margin-bottom: 0.25rem; }
.catalogue-page-heading .form-intro { margin: 0.35rem 0 0; }
.catalogue-page > .information-callout { margin: 0 0 1rem; }
.catalogue-heading-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 0.55rem; }
.catalogue-heading-actions .btn { min-height: 2.2rem; padding: 0.35rem 0.65rem; }
.catalogue-heading { display: flex; justify-content: space-between; align-items: center; gap: 1rem; margin: 0 0 0.8rem; }
.catalogue-heading h2 { margin: 0; font-size: 1.45rem; }
.catalogue-heading > div:first-child { display: flex; align-items: baseline; gap: 0.7rem; }
.catalogue-heading > div:first-child span { color: var(--muted); font-size: 0.8rem; }
.catalogue-toolbar { display: flex; justify-content: space-between; gap: 1rem; align-items: center; margin-bottom: 0.9rem; }
.catalogue-search { width: min(25rem, 100%); }
.catalogue-search label { font-size: 0.78rem; }
.catalogue-search .form-control { min-height: 2.35rem; }
.catalogue-filters { display: flex; flex-wrap: wrap; gap: 0.45rem; }
.catalogue-filter { display: inline-flex; gap: 0.45rem; align-items: center; min-height: 2.35rem; padding: 0.35rem 0.65rem; color: var(--muted); background: transparent; border: 1px solid var(--border); border-radius: 999px; font-size: 0.78rem; font-weight: 700; }
.catalogue-filter span { display: grid; min-width: 1.25rem; height: 1.25rem; padding: 0 0.25rem; place-items: center; color: var(--text); background: var(--surface-raised); border-radius: 999px; font-size: 0.68rem; }
.catalogue-filter:hover, .catalogue-filter.active { color: var(--text); border-color: var(--accent); background: color-mix(in srgb, var(--accent) 10%, transparent); }
.catalogue-empty-results { margin-top: 0.8rem; color: var(--muted); text-align: center; }
.catalogue-list { display: grid; gap: 0.65rem; }
.catalogue-record { margin: 0; padding: 0; overflow: hidden; }
.catalogue-record[hidden] { display: none; }
.catalogue-record.is-inactive { opacity: 0.68; }
.catalogue-record[open] { opacity: 1; }
.catalogue-record-summary { display: grid; grid-template-columns: 3.8rem minmax(0, 1fr) auto; gap: 0.8rem; align-items: center; min-height: 4.8rem; padding: 0.6rem 0.8rem; cursor: pointer; list-style: none; }
.catalogue-record-summary::-webkit-details-marker { display: none; }
.catalogue-record-summary::after { color: var(--muted); content: "›"; font-size: 1.35rem; grid-column: 4; transition: transform 150ms ease; }
.catalogue-record[open] > .catalogue-record-summary::after { transform: rotate(90deg); }
.catalogue-record-title { display: grid; min-width: 0; gap: 0.12rem; }
.catalogue-record-title > strong { overflow: hidden; font-size: 1rem; text-overflow: ellipsis; white-space: nowrap; }
.catalogue-record-title > small { color: var(--muted); font-size: 0.75rem; font-weight: 400; }
.catalogue-image-placeholder { display: grid; width: 3.6rem; height: 3.6rem; place-items: center; overflow: hidden; color: color-mix(in srgb, var(--muted) 72%, transparent); background: linear-gradient(145deg, var(--surface-raised), var(--page)); border: 1px dashed var(--border); border-radius: 0.5rem; font-size: 0.62rem; font-weight: 700; text-transform: uppercase; }
.catalogue-image-placeholder img {
  display: block;
  width: 78%;
  height: 78%;
  max-width: 78%;
  max-height: 78%;
  object-fit: contain;
  object-position: center;
}
.catalogue-image-placeholder.has-image { padding: 0.2rem; background: color-mix(in srgb, var(--surface-raised) 55%, transparent); border: 1px solid color-mix(in srgb, var(--border) 82%, transparent); }
.catalogue-drop-image.has-image { background: transparent; border-color: transparent; }
.catalogue-image-placeholder-large { width: 10rem; height: 10rem; }
.catalogue-image-placeholder-large img { width: 84%; height: 84%; max-width: 84%; max-height: 84%; }
.catalogue-warnings { display: flex; flex-wrap: wrap; gap: 0.3rem; margin-top: 0.15rem; }
.catalogue-warning { width: max-content; padding: 0.15rem 0.4rem; color: #f4d89d; background: color-mix(in srgb, var(--warning) 14%, transparent); border: 1px solid color-mix(in srgb, var(--warning) 40%, transparent); border-radius: 999px; font-size: 0.65rem; font-weight: 700; }
.catalogue-status { display: inline-flex; align-items: center; justify-content: center; padding: 0.25rem 0.55rem; border: 1px solid; border-radius: 999px; font-size: 0.7rem; font-weight: 750; }
.catalogue-status.is-active { color: #d7f4da; background: rgba(64, 136, 76, 0.25); border-color: rgba(114, 184, 121, 0.5); }
.catalogue-status.is-inactive { color: var(--muted); background: var(--surface-raised); border-color: var(--border); }
.catalogue-record-body { padding: 0.9rem; border-top: 1px solid var(--border); }
.catalogue-pagination { display: flex; align-items: center; justify-content: center; gap: 0.75rem; padding: 1rem 0 0; }
.catalogue-pagination > span { color: var(--muted); }
.catalogue-boss-editor { display: grid; grid-template-columns: 11rem minmax(0, 1fr); gap: 1rem; align-items: start; padding-bottom: 0.9rem; border-bottom: 1px solid var(--border); }
.catalogue-editor-image { display: grid; gap: 0.35rem; justify-items: center; }
.catalogue-editor-image small { color: var(--muted); font-size: 0.66rem; text-align: center; }
.catalogue-source-fields { display: grid; grid-template-columns: minmax(10rem, 1.25fr) minmax(9rem, .75fr) minmax(13rem, 1fr); gap: 0.7rem; align-items: start; }
.catalogue-source-fields label, .catalogue-drop-edit-form label { display: block; margin-bottom: 0.2rem; font-size: 0.75rem; }
.catalogue-source-fields small, .catalogue-drop-edit-form small, .catalogue-dialog-form small { display: block; margin-top: 0.2rem; color: var(--muted); font-size: 0.68rem; }
.catalogue-source-fields .form-control, .catalogue-source-fields .form-select { min-height: 2.45rem; padding: 0.45rem 0.6rem; font-size: 0.85rem; }
.catalogue-save-boss { grid-column: 1 / -1; justify-self: end; min-width: 7.5rem; }
.catalogue-additional-details { grid-column: 1 / -1; border: 1px solid var(--border); border-radius: 0.45rem; }
.catalogue-additional-details > summary { padding: 0.55rem 0.7rem; color: var(--muted); cursor: pointer; font-size: 0.75rem; font-weight: 700; }
.catalogue-additional-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.65rem; padding: 0 0.7rem 0.7rem; }
.catalogue-source-actions { display: flex; justify-content: space-between; gap: 1rem; align-items: end; margin: 0.9rem 0 0.65rem; }
.catalogue-source-actions h3 { margin: 0; font-size: 1.15rem; }
.catalogue-source-actions small { color: var(--muted); font-size: 0.72rem; }
.catalogue-source-actions > div:last-child { display: flex; gap: 0.45rem; align-items: center; }
.catalogue-compact-action { display: inline-flex; height: 2.25rem; min-height: 2.25rem; padding: 0.35rem 0.65rem; align-items: center; justify-content: center; line-height: 1; font-size: 0.76rem; }
.catalogue-source-actions .catalogue-compact-action { min-width: 7.5rem; text-align: center; }
.catalogue-add-action {
  --bs-btn-active-color: #e7f4ff;
  --bs-btn-active-bg: color-mix(in srgb, var(--info) 18%, transparent);
  --bs-btn-active-border-color: var(--info);
  --bs-btn-active-shadow: none;
  color: var(--info);
  background: transparent;
  border-color: color-mix(in srgb, var(--info) 68%, var(--border));
}
.catalogue-add-action:hover, .catalogue-add-action:focus-visible { color: #e7f4ff; background: color-mix(in srgb, var(--info) 18%, transparent); border-color: var(--info); }
.neutral-outline-action {
  --bs-btn-active-color: var(--text);
  --bs-btn-active-bg: color-mix(in srgb, var(--text) 10%, transparent);
  --bs-btn-active-border-color: var(--text);
  --bs-btn-active-shadow: none;
  color: var(--text);
  background: transparent;
  border-color: color-mix(in srgb, var(--text) 68%, var(--border));
}
.neutral-outline-action:hover, .neutral-outline-action:focus-visible { color: var(--text); background: color-mix(in srgb, var(--text) 10%, transparent); border-color: var(--text); }
.catalogue-toggle-form, .catalogue-drop-toggle { display: flex; margin: 0; align-items: center; }
.btn-outline-danger { color: var(--danger); background: transparent; border: 1px solid color-mix(in srgb, var(--danger) 62%, var(--border)); }
.btn-outline-danger:hover { color: #ffe9e6; background: color-mix(in srgb, var(--danger) 18%, transparent); border-color: var(--danger); }
.empty-drop-list { margin: 0; padding: 1rem; color: var(--muted); text-align: center; border: 1px dashed var(--border); border-radius: 0.45rem; }
.catalogue-drop-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.6rem; }
.catalogue-drop-card { display: grid; gap: 0.6rem; min-width: 0; padding: 0.75rem; background: color-mix(in srgb, var(--surface-raised) 45%, var(--surface)); border: 1px solid var(--border); border-radius: 0.55rem; }
.catalogue-drop-card.is-inactive { opacity: 0.6; }
.catalogue-drop-card > header { display: flex; justify-content: space-between; gap: 0.55rem; align-items: center; }
.catalogue-drop-card > header > div { display: flex; flex-wrap: wrap; gap: 0.4rem; align-items: center; min-width: 0; }
.catalogue-drop-card > header strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.catalogue-drop-heading > div { display: flex; flex-wrap: wrap; gap: 0.4rem; align-items: center; min-width: 0; }
.catalogue-name-edit { display: inline-grid; width: 1.4rem; height: 1.4rem; padding: 0; place-items: center; color: var(--muted); background: transparent; border: 0; border-radius: 0.3rem; font-size: 0.8rem; cursor: pointer; }
.catalogue-name-edit:hover, .catalogue-name-edit:focus-visible { color: var(--info); background: color-mix(in srgb, var(--info) 12%, transparent); }
.catalogue-drop-image { display: grid; flex: 0 0 auto; width: 2.5rem; height: 2.5rem; place-items: center; overflow: hidden; color: color-mix(in srgb, var(--muted) 70%, transparent); background: var(--page); border: 1px dashed var(--border); border-radius: 0.4rem; font-size: 0.5rem; font-weight: 700; text-transform: uppercase; }
.catalogue-drop-image img {
  display: block;
  width: 76%;
  height: 76%;
  max-width: 76%;
  max-height: 76%;
  object-fit: contain;
  object-position: center;
}
.catalogue-drop-edit-form { display: grid; grid-template-columns: minmax(8rem, 1fr) minmax(10rem, 1fr) minmax(7.5rem, .7fr); gap: 0.55rem; align-items: start; }
.catalogue-drop-name-editor { grid-column: 1 / -1; }
.catalogue-drop-edit-form .form-control { min-height: 2.35rem; padding: 0.4rem 0.55rem; font-size: 0.8rem; }
.catalogue-ehb-result output { display: flex; min-height: 2.35rem; padding: 0.4rem 0.55rem; align-items: center; color: var(--text); background: var(--page); border: 1px solid var(--border); border-radius: 0.4rem; font-size: 0.8rem; font-weight: 700; }
.catalogue-drop-additional { grid-column: 1 / -1; }
.catalogue-drop-additional > .catalogue-additional-grid { padding: 0 0.7rem 0.7rem; }
.catalogue-rate-variants { display: grid; gap: 0.35rem; margin: 0 0.7rem 0.7rem; padding-top: 0.65rem; border-top: 1px solid var(--border); }
.catalogue-rate-variant { display: grid; grid-template-columns: minmax(6rem, .8fr) minmax(6rem, 1fr); gap: 0.2rem 0.7rem; align-items: baseline; }
.catalogue-rate-variant > small { grid-column: 1 / -1; margin: 0; }
.catalogue-drop-card-actions { display: flex; justify-content: space-between; gap: 0.45rem; align-items: center; }
.catalogue-drop-toggle { margin-left: auto; }
.catalogue-editor-dialog { width: min(44rem, calc(100vw - 2rem)); }
.catalogue-dialog-intro { margin: 0 0 0.75rem; color: var(--muted); font-size: 0.8rem; }
.catalogue-dialog-form { display: grid; gap: 0.7rem; }
.catalogue-dialog-form label { display: block; margin-bottom: 0.2rem; font-size: 0.8rem; }
.catalogue-dialog-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.7rem; }
.catalogue-formula-note { padding: 0.7rem 0.8rem; color: #d8ecfb; background: color-mix(in srgb, var(--info) 13%, var(--surface)); border-left: 3px solid var(--info); border-radius: 0.35rem; font-size: 0.76rem; }
.checkbox-dropdown { position: relative; }
.checkbox-dropdown > summary { padding: 0.75rem 0.9rem; cursor: pointer; background: var(--page); border: 1px solid var(--border); border-radius: 0.4rem; list-style-position: inside; }
.checkbox-dropdown-menu { max-height: 15rem; margin-top: 0.35rem; padding: 0.45rem; overflow-y: auto; background: var(--page); border: 1px solid var(--border); border-radius: 0.4rem; }
.checkbox-dropdown-menu label { display: flex; gap: 0.55rem; align-items: center; padding: 0.45rem 0.5rem; cursor: pointer; border-radius: 0.3rem; }
.checkbox-dropdown-menu label:hover { background: var(--surface-raised); }
.eligible-drop-list { display: grid; gap: 0.75rem; }
.eligible-drop-heading { align-items: end; margin-bottom: 0.35rem; }
.eligible-drop-heading > div { display: flex; gap: 0.4rem; }
.eligible-drop-group { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.45rem; padding: 0.75rem; border: 1px solid var(--border); border-radius: 0.5rem; }
.eligible-drop-group[hidden] { display: none; }
.eligible-drop-group h4 { grid-column: 1 / -1; margin: 0 0 0.2rem; color: var(--accent); font-size: 1rem; }
.eligible-drop-option { display: flex; gap: 0.55rem; align-items: center; padding: 0.65rem; cursor: pointer; background: var(--page); border: 1px solid var(--border); border-radius: 0.4rem; }
.eligible-drop-option[hidden], .challenge-only-fields[hidden], .drop-only-fields[hidden] { display: none; }
.eligible-drop-option:has(input:checked) { border-color: var(--accent); background: color-mix(in srgb, var(--accent) 12%, var(--page)); }
.eligible-drop-option small { display: block; }
.team-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(19rem, 1fr)); gap: 1rem; }
.team-card { min-width: 0; }
.team-card.current-team, .current-turn { border-color: var(--accent); box-shadow: 0 0 0 2px color-mix(in srgb, var(--accent) 35%, transparent); }
.team-grid.is-scrambling,
.draft-live-team-list.is-scrambling { pointer-events: none; }
.team-grid.is-scrambling .team-card[data-draft-team="true"],
.draft-live-team-list.is-scrambling .draft-live-team[data-draft-team="true"] {
  border-color: color-mix(in srgb, var(--accent) 70%, var(--border));
  box-shadow: 0 0.55rem 1.6rem rgba(0, 0, 0, 0.28);
}
.team-grid.is-scrambling [data-draft-rank],
.draft-live-team-list.is-scrambling [data-draft-rank] {
  color: var(--accent);
  animation: draft-rank-pulse 420ms ease-in-out infinite alternate;
}
.draft-page .team-grid.is-scrambling .team-card,
.draft-page .draft-live-team-list.is-scrambling .draft-live-team {
  border-color: var(--admin-border);
  box-shadow: none;
}
.draft-page .team-grid.is-scrambling .team-card.current-team,
.draft-page .draft-live-team-list.is-scrambling .draft-live-team.current-team {
  border-color: var(--accent);
}
@keyframes draft-rank-pulse {
  from { opacity: 0.58; transform: scale(0.94); }
  to { opacity: 1; transform: scale(1.04); }
}
@media (prefers-reduced-motion: reduce) {
  .team-grid.is-scrambling [data-draft-rank],
  .draft-live-team-list.is-scrambling [data-draft-rank] { animation: none; }
}
.team-card ul { display: grid; gap: 0.45rem; padding: 0; list-style: none; }
.team-card li { display: flex; justify-content: space-between; gap: 0.75rem; align-items: center; padding: 0.55rem 0; border-bottom: 1px solid var(--border); }
.team-card li span small { display: block; color: var(--muted); }
.team-card > img { width: 4rem; height: 4rem; object-fit: cover; border-radius: 0.5rem; }
.drafted-player { opacity: 0.62; }
.drop-picker-empty { color: var(--muted); font-size: 0.7rem; }
.challenge-only-fields { display: grid; gap: 0.55rem; }

.admin-shell-body .admin-dashboard-wip {
  min-height: clamp(28rem, calc(100vh - 10rem), 44rem);
  padding: 1.25rem 0 3rem;
  color: var(--admin-text);
  background: var(--admin-page);
  font-family: inherit;
}
.admin-shell-body .admin-dashboard-wip h1 { margin: 0; font: inherit; font-size: 1rem; font-weight: 600; line-height: 1.25; }

.admin-shell-body .draft-page {
  width: 100%;
  max-width: none;
  margin: 0;
  color: var(--admin-text);
  font-family: inherit;
}

.draft-overview {
  display: grid;
  gap: 0.85rem;
}

.draft-page:is(.draft-page-predraft, .draft-page-finalized) .draft-teams-section { margin-top: 1.5rem; }
.draft-page:is(.draft-page-predraft, .draft-page-finalized) .draft-participant-heading h2 { font-size: 1.35rem; }
.team-heading-actions { display: flex; flex: 0 0 auto; flex-wrap: wrap; justify-content: flex-end; gap: 0.45rem; }
.team-heading-actions form { margin: 0; }
.draft-page:is(.draft-page-predraft, .draft-page-finalized) .team-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 0.65rem; }
.draft-page:is(.draft-page-predraft, .draft-page-finalized) .team-card { margin-top: 0; padding: 0.8rem; }
.team-card-heading-actions { display: flex; align-items: center; gap: 0.4rem; }
.team-card-heading-actions form { margin: 0; }
.draft-page:is(.draft-page-predraft, .draft-page-finalized) .team-card h3 { margin: 0; font-size: 0.95rem; }
.draft-page:is(.draft-page-predraft, .draft-page-finalized) .team-card > p { margin: 0.55rem 0; color: var(--muted); font-size: 0.72rem; }
.draft-page:is(.draft-page-predraft, .draft-page-finalized) .team-card ul { margin: 0.25rem 0 0.65rem; }
.draft-page:is(.draft-page-predraft, .draft-page-finalized) .team-card li { padding: 0.35rem 0; font-size: 0.76rem; }
.draft-page:is(.draft-page-predraft, .draft-page-finalized) .team-card .dialog-actions { margin-top: auto; }
.draft-page-finalized .draft-teams-section { margin-top: 1.2rem; }
.draft-page-finalized .team-grid { align-items: start; }

.draft-page:is(.draft-page-predraft, .draft-page-finalized) { padding-top: 1.5rem; }

.draft-page-finalized .finalized-team-card { display: flex; min-height: 0; flex-direction: column; padding: 0.7rem; }
.finalized-team-heading { display: flex; justify-content: space-between; gap: 0.6rem; align-items: start; padding-bottom: 0.45rem; border-bottom: 1px solid var(--border); }
.finalized-team-heading h3 { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: var(--accent); font-size: 1rem !important; }
.finalized-team-heading small { display: block; margin-top: 0.12rem; color: var(--muted); font-size: 0.68rem; }
.finalized-roster-list { display: grid; gap: 0; margin: 0 !important; padding: 0; list-style: none; }
.draft-page-finalized .finalized-roster-list li { display: grid; grid-template-columns: 1.5rem minmax(0, 1fr) auto; gap: 0.35rem; align-items: center; min-height: 1.75rem; padding: 0.24rem 0; border-bottom: 1px solid var(--border); font-size: 0.74rem; }
.finalized-roster-list li strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.finalized-roster-list li small,
.finalized-roster-pick { color: var(--muted); font-size: 0.65rem; }
.finalized-roster-captain strong { font-size: 0.79rem; }
.finalized-team-footer { display: flex; justify-content: space-between; gap: 0.6rem; align-items: center; margin-top: 0.55rem; }
.finalized-team-footer span { color: var(--muted); font-size: 0.68rem; }

.team-roster-dialog {
  width: min(42rem, calc(100vw - 2rem));
  max-height: calc(100vh - 2rem);
  padding: 1rem;
  overflow-y: auto;
}

.team-roster-dialog-header {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  align-items: start;
  margin-bottom: 0.75rem;
}

.team-roster-dialog-header h2 { margin: 0.1rem 0 0; font-size: 1.7rem; }
.team-roster-dialog-header .dialog-close { float: none; flex: 0 0 auto; padding: 0 0.35rem; line-height: 1; }
.team-roster-section { margin-top: 0.55rem; border: 1px solid var(--border); border-radius: 0.55rem; }
.team-roster-section > summary { display: flex; gap: 0.65rem; align-items: center; padding: 0.7rem 0.8rem; cursor: pointer; list-style: none; }
.team-roster-section > summary::-webkit-details-marker { display: none; }
.team-roster-section > summary::before { content: "›"; color: var(--muted); font-size: 1.1rem; transition: transform 160ms ease; }
.team-roster-section[open] > summary::before { transform: rotate(90deg); }
.team-roster-section > summary span { display: grid; gap: 0.08rem; }
.team-roster-section > summary small,
.team-roster-roles > header small { color: var(--muted); font-size: 0.72rem; }
.team-roster-section > form,
.team-roster-section > p { margin: 0; padding: 0 0.8rem 0.8rem; }
.team-roster-section label { display: grid; gap: 0.2rem; font-size: 0.78rem; }
.team-roster-section .form-control,
.team-roster-section .form-select { min-height: 2.2rem; padding: 0.38rem 0.55rem; font-size: 0.8rem; }
.team-roster-section .dialog-actions { justify-content: flex-end; }
.team-roster-roles { padding: 0.75rem 0.8rem; }
.team-roster-roles > header { margin-bottom: 0.35rem; padding: 0 0.35rem 0.45rem; }
.team-roster-roles h3 { margin: 0; font-size: 1rem; }
.team-roster-form-section > header { padding: 0.7rem 0.8rem 0.35rem; }
.team-roster-form-section > header h3 { margin: 0; font-size: 1rem; }
.team-roster-form-section > header small,
.external-team-dialog-intro { color: var(--muted); font-size: 0.75rem; }
.external-team-dialog-intro { margin: 0; }
.team-role-form { display: grid; grid-template-columns: minmax(7rem, 1fr) minmax(10rem, 14rem) auto; gap: 0.55rem; align-items: center; border-top: 1px solid var(--border); }
/* This more specific rule intentionally wins over the generic section form
   padding, so roster rows retain space on every side of their controls. */
.team-roster-roles > .team-role-form { margin: 0; padding: 0.65rem 0.35rem; }
.team-role-form strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.team-role-change-form,
.team-role-remove-form { display: contents; }
.team-role-form .form-select { min-height: 2.35rem; }
.participant-row-actions { width: 2rem; text-align: center; }
.participant-row-actions form { display: inline-flex; margin: 0; }
.team-roster-empty { margin: 0; color: var(--muted); }
.team-member-move { margin: 0 0 0.4rem; }
.team-member-move > summary { color: var(--muted); cursor: pointer; font-size: 0.72rem; }
.team-member-move-form { display: grid; grid-template-columns: 1fr 1fr auto; gap: 0.4rem; margin-top: 0.4rem; }
.team-roster-advanced > p { color: var(--muted); font-size: 0.75rem; }

@media (max-width: 650px) {
  .team-roster-dialog { width: calc(100vw - 1rem); max-height: calc(100vh - 1rem); padding: 0.75rem; }
  .team-role-form,
  .team-member-move-form { grid-template-columns: 1fr; }
  .team-role-form strong { white-space: normal; }
}

/* Admin Audit: full-width history table and filter ownership. */
.admin-shell-body .admin-audit-page {
  display: grid;
  gap: 1.25rem;
  width: 100%;
  padding: 1.25rem 0 3rem;
  color: var(--admin-text);
  font-family: inherit;
}
.admin-shell-body .admin-audit-context { display: grid; gap: 0.3rem; }
.admin-shell-body .admin-audit-eyebrow { margin: 0; color: var(--admin-muted); font-size: 0.625rem; font-weight: 700; letter-spacing: 0.1em; line-height: 1.2; text-transform: uppercase; }
.admin-shell-body .admin-audit-context h1 { margin: 0; color: var(--admin-text); font-family: inherit; font-size: clamp(1.125rem, 2vw, 1.25rem); font-weight: 700; line-height: 1.2; }
.admin-shell-body .admin-audit-toolbar {
  display: grid;
  grid-template-columns: minmax(14rem, 18rem) repeat(5, minmax(8rem, 1fr)) auto;
  gap: 0.75rem;
  align-items: end;
  padding: 1.25rem;
  background: var(--admin-surface);
  border-radius: 0.75rem;
}
.admin-shell-body .admin-audit-toolbar .admin-field { min-width: 0; }
.admin-shell-body .admin-audit-toolbar .admin-field .form-control { min-height: 2.25rem; }
.admin-shell-body .admin-audit-toolbar .admin-audit-action-field { display: grid; }
.admin-shell-body .admin-audit-toolbar .admin-audit-action-field > svg { top: 2.1rem; }
.admin-shell-body .admin-audit-toolbar .admin-audit-action-field .admin-search-field-input { width: min(18rem, 100%); }
.admin-shell-body .admin-audit-toolbar .field-validation-error { color: var(--admin-danger); font-size: 0.625rem; line-height: 1.35; }
.admin-shell-body .admin-audit-toolbar .form-control:user-invalid { border-color: var(--admin-danger); }
.admin-shell-body .admin-audit-toolbar-actions { display: flex; flex-wrap: wrap; gap: 0.5rem; align-items: center; }
.admin-shell-body .admin-audit-toolbar-actions > :is(.admin-button-primary, .admin-button-secondary) { min-height: 2rem; white-space: nowrap; }
.admin-shell-body .admin-audit-toolbar :is(.admin-button-primary, .admin-button-secondary):focus-visible { outline: 2px solid var(--admin-focus-accent-strong); outline-offset: 2px; }
.admin-shell-body .admin-audit-surface { min-width: 0; overflow: hidden; background: var(--admin-surface); border-radius: 0.75rem; }
.admin-shell-body .admin-audit-surface-heading { display: flex; align-items: start; justify-content: space-between; gap: 1rem; padding: 1.25rem; }
.admin-shell-body .admin-audit-surface-heading h2 { margin: 0; color: var(--admin-text); font-family: inherit; font-size: 0.875rem; font-weight: 600; line-height: 1.25; }
.admin-shell-body .admin-audit-surface-heading p { margin: 0.25rem 0 0; color: var(--admin-muted); font-size: 0.6875rem; line-height: 1.4; }
.admin-shell-body .admin-audit-page-indicator { flex: 0 0 auto; color: var(--admin-muted); font-size: 0.6875rem; line-height: 1.4; }
.admin-shell-body .admin-audit-table-wrap { min-width: 0; overflow-x: auto; }
.admin-shell-body .admin-audit-table { width: 100%; min-width: 58rem; border-collapse: collapse; table-layout: fixed; text-align: left; }
.admin-shell-body .admin-audit-table thead tr { background: var(--admin-surface-soft); }
.admin-shell-body .admin-audit-table th { padding: 0.65rem 1.25rem; color: var(--admin-text); background: transparent; border: 0; font: inherit; font-size: 0.6875rem; font-weight: 500; line-height: 1.25; text-align: left; }
.admin-shell-body .admin-audit-table th:nth-child(1) { width: 12%; }
.admin-shell-body .admin-audit-table th:nth-child(2) { width: 15%; }
.admin-shell-body .admin-audit-table th:nth-child(3) { width: 16%; }
.admin-shell-body .admin-audit-table th:nth-child(4) { width: 20%; }
.admin-shell-body .admin-audit-table th:nth-child(5) { width: 37%; }
.admin-shell-body .admin-audit-table tbody { color: var(--admin-text-soft); font-size: 0.75rem; line-height: 1.5; }
.admin-shell-body .admin-audit-table tbody tr { border: 0; transition: background-color 150ms ease; }
.admin-shell-body .admin-audit-table tbody tr:hover { background: var(--admin-surface-soft); }
.admin-shell-body .admin-audit-table td { min-width: 0; padding: 0.9rem 1.25rem; color: var(--admin-text-soft); border: 0; font: inherit; vertical-align: top; overflow-wrap: anywhere; }
.admin-shell-body .admin-audit-table td:first-child { color: var(--admin-text); white-space: nowrap; }
.admin-shell-body .admin-audit-action { color: var(--admin-text); background: transparent; font: inherit; font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size: 0.6875rem; overflow-wrap: anywhere; }
.admin-shell-body .admin-audit-target-type,
.admin-shell-body .admin-audit-target-id { display: block; overflow-wrap: anywhere; }
.admin-shell-body .admin-audit-target-type { color: var(--admin-text); font-weight: 600; }
.admin-shell-body .admin-audit-target-id { color: var(--admin-muted); font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size: 0.6875rem; }
.admin-shell-body .admin-audit-details-text { display: block; overflow-wrap: anywhere; }
.admin-shell-body .admin-audit-change { margin-top: 0.55rem; }
.admin-shell-body .admin-audit-change summary { width: fit-content; max-width: 100%; color: var(--admin-muted); cursor: pointer; font-size: 0.6875rem; line-height: 1.4; }
.admin-shell-body .admin-audit-change summary:hover { color: var(--admin-text); }
.admin-shell-body .admin-audit-change summary:focus-visible { outline: 2px solid var(--admin-focus-accent-strong); outline-offset: 2px; }
.admin-shell-body .admin-audit-change dl { display: grid; gap: 0.55rem; margin: 0.65rem 0 0; }
.admin-shell-body .admin-audit-change dl > div { display: grid; grid-template-columns: 3.5rem minmax(0, 1fr); gap: 0.55rem; min-width: 0; }
.admin-shell-body .admin-audit-change dt { color: var(--admin-muted); font-size: 0.625rem; font-weight: 600; line-height: 1.45; }
.admin-shell-body .admin-audit-change dd { min-width: 0; margin: 0; }
.admin-shell-body .admin-audit-json { display: block; max-width: 100%; max-height: 12rem; padding: 0; color: var(--admin-text-soft); background: transparent; font: inherit; font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size: 0.625rem; line-height: 1.45; white-space: pre-wrap; overflow-wrap: anywhere; overflow: auto; }
.admin-shell-body .admin-audit-empty { padding: 2rem 1.25rem; text-align: center; }
.admin-shell-body .admin-audit-empty h3 { margin: 0; color: var(--admin-text); font-family: inherit; font-size: 0.8125rem; font-weight: 600; line-height: 1.35; }
.admin-shell-body .admin-audit-empty p { margin: 0.3rem 0 0; color: var(--admin-muted); font-size: 0.6875rem; line-height: 1.4; }
.admin-shell-body .admin-audit-pagination { display: flex; min-height: 2rem; align-items: center; justify-content: space-between; gap: 0.75rem; }
.admin-shell-body .admin-audit-pagination :is(.admin-button-secondary, .admin-audit-page-link) { min-height: 2rem; }
.admin-shell-body .admin-audit-page-link { display: inline-flex; align-items: center; justify-content: center; padding: 0.375rem 0.75rem; color: var(--admin-muted); background: transparent; border: 1px solid var(--admin-border); border-radius: 0.5rem; font-size: 0.6875rem; font-weight: 600; line-height: 1.25; }
.admin-shell-body .admin-audit-page-link.is-disabled { cursor: not-allowed; opacity: 0.55; }
.admin-shell-body .admin-audit-page-count { color: var(--admin-muted); font-size: 0.6875rem; line-height: 1.4; }

@media (max-width: 1100px) {
  .admin-shell-body .admin-audit-toolbar { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .admin-shell-body .admin-audit-toolbar .admin-audit-action-field .admin-search-field-input { width: 100%; }
  .admin-shell-body .admin-audit-toolbar-actions { grid-column: 1 / -1; justify-content: flex-start; }
  .admin-shell-body .admin-audit-table-wrap { overflow: visible; }
  .admin-shell-body .admin-audit-table,
  .admin-shell-body .admin-audit-table tbody,
  .admin-shell-body .admin-audit-table tr,
  .admin-shell-body .admin-audit-table td { display: block; width: 100%; min-width: 0; }
  .admin-shell-body .admin-audit-table { min-width: 0; }
  .admin-shell-body .admin-audit-table thead { display: none; }
  .admin-shell-body .admin-audit-table tbody { display: grid; gap: 0.75rem; }
  .admin-shell-body .admin-audit-table tbody tr { padding: 0.9rem 1rem; background: var(--admin-surface-soft); border-radius: 0.75rem; }
  .admin-shell-body .admin-audit-table td { display: grid; grid-template-columns: minmax(6.5rem, 7rem) minmax(0, 1fr); gap: 0.65rem; padding: 0.35rem 0; }
  .admin-shell-body .admin-audit-table td::before { color: var(--admin-muted); content: attr(data-label); font-size: 0.625rem; font-weight: 600; line-height: 1.35; }
  .admin-shell-body .admin-audit-table td > :is(.admin-audit-action, .admin-audit-details-text, .admin-audit-change, .admin-audit-target-type, .admin-audit-target-id) { grid-column: 2; min-width: 0; }
  .admin-shell-body .admin-audit-table td:first-child { white-space: normal; }
}

@media (max-width: 700px) {
  .admin-shell-body .admin-audit-toolbar { grid-template-columns: 1fr; padding: 1rem; }
  .admin-shell-body .admin-audit-toolbar-actions { grid-column: auto; }
  .admin-shell-body .admin-audit-surface-heading { flex-direction: column; gap: 0.35rem; padding: 1rem; }
  .admin-shell-body .admin-audit-table tbody tr { padding: 0.75rem; }
  .admin-shell-body .admin-audit-table td { grid-template-columns: minmax(5.75rem, 6.25rem) minmax(0, 1fr); }
  .admin-shell-body .admin-audit-change dl > div { grid-template-columns: 3.25rem minmax(0, 1fr); }
  .admin-shell-body .admin-audit-pagination { gap: 0.5rem; }
}

@media (prefers-reduced-motion: reduce) {
  .admin-shell-body .admin-audit-table tbody tr { transition: none; }
}

.draft-participant-section { position: relative; }
.draft-participant-heading { display: flex; justify-content: space-between; gap: 1rem; align-items: end; margin-bottom: 0.65rem; }
.draft-participant-heading h2 { margin: 0; }
.draft-participant-heading p { margin: 0.2rem 0 0; color: var(--muted); font-size: 0.78rem; }

@media (max-width: 1250px) {
  .draft-page:is(.draft-page-predraft, .draft-page-finalized) .team-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 900px) {
  .draft-page:is(.draft-page-predraft, .draft-page-finalized) .team-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .team-heading-actions { justify-content: flex-end; width: 100%; }
  .admin-shell-body .draft-page .draft-team-section-heading { flex-wrap: wrap; }
  .admin-shell-body .draft-page .draft-team-section-heading > div:first-child { flex: 1 1 100%; }
}

@media (max-width: 650px) {
  .draft-page:is(.draft-page-predraft, .draft-page-finalized) .team-grid { grid-template-columns: 1fr; }
  .draft-participant-heading { align-items: stretch; flex-direction: column; }
}

.draft-page-live {
  padding-top: 0.75rem;
}

.draft-live-shell {
  display: grid;
  gap: 0.85rem;
}

.draft-live-toolbar-status,
.draft-live-toolbar-actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.45rem;
}

.draft-live-toolbar-status > strong {
  padding-left: 0.25rem;
}

.draft-live-toolbar-copy {
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 0.45rem;
}

.draft-live-toolbar-copy > span {
  color: var(--muted);
  font-size: 0.75rem;
  line-height: 1;
}

.draft-live-toolbar-copy > strong {
  line-height: 1;
}

.draft-live-toolbar-actions {
  justify-content: flex-end;
  margin-left: auto;
}

.draft-live-toolbar-actions form {
  margin: 0;
}

.draft-live-workspace {
  display: grid;
  grid-template-columns: minmax(0, 1.6fr) minmax(22rem, 0.9fr);
  gap: 0.85rem;
  align-items: start;
}

.draft-live-section-heading {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 0.6rem;
}

.draft-live-section-heading .eyebrow {
  margin: 0 0 0.1rem;
  font-size: 0.62rem;
}

.draft-live-section-heading h2 {
  margin: 0;
  font-size: 1.12rem;
}

.draft-live-section-heading > span {
  color: var(--muted);
  font-size: 0.72rem;
}

.draft-live-team-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(9rem, 1fr));
  gap: 0.45rem;
}

.draft-live-team.current-team {
  border-color: var(--accent);
  box-shadow: none;
}

.draft-live-team > header {
  padding-bottom: 0.25rem;
}

.draft-live-team h3 {
  min-width: 0;
  margin: 0;
  overflow: hidden;
  color: var(--admin-text-soft);
  font-size: 0.9rem;
  font-weight: 600;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.draft-live-team.current-team h3 {
  color: var(--accent);
}

.draft-live-team-count {
  position: absolute;
  right: 0.5rem;
  bottom: 0.35rem;
  color: var(--muted);
  font-size: 0.62rem;
  font-variant-numeric: tabular-nums;
}

.draft-live-picks {
  display: grid;
  gap: 0;
  margin: 0;
  padding: 0;
  list-style: none;
  counter-reset: draft-pick;
}

.draft-live-picks li,
.draft-live-player {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.6rem;
  min-width: 0;
  padding: 0.45rem 0;
  border-bottom: 1px solid var(--border);
}

.draft-live-picks li {
  justify-content: flex-start;
  padding: 0.27rem 0;
}

.draft-live-picks .draft-live-captain strong {
  font-size: 0.79rem;
  font-weight: 800;
}

.draft-live-picks .draft-live-pick-number {
  min-width: 1.3rem;
  color: color-mix(in srgb, var(--muted) 62%, transparent);
  font-size: 0.6rem;
  font-variant-numeric: tabular-nums;
}

.draft-live-picks li:last-child,
.draft-live-player:last-child {
  border-bottom: 0;
}

.draft-live-picks strong,
.draft-live-player strong {
  overflow: hidden;
  font-size: 0.72rem;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.draft-live-picks span,
.draft-live-player span {
  flex: 0 0 auto;
  color: var(--muted);
  font-size: 0.67rem;
}

.draft-live-empty {
  margin: 0;
  padding: 0.7rem 0 0.15rem;
  color: var(--muted);
  font-size: 0.75rem;
}

.draft-live-player-panel {
  margin: 0;
  padding: 0.75rem;
}

.draft-live-player-list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.15rem 0.45rem;
}

.draft-live-player > div {
  display: grid;
  min-width: 0;
}

.draft-live-player form {
  flex: 0 0 auto;
  margin: 0;
}

.draft-live-player {
  box-sizing: border-box;
  padding: 0.3rem 0;
  background: transparent;
  border: 0;
  border-bottom: 1px solid var(--border);
  border-radius: 0;
}

.draft-live-player:last-child {
  border-bottom: 0;
}

.draft-live-player .draft-live-pick-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.55rem;
  min-width: 1.55rem;
  height: 1.55rem;
  min-height: 1.55rem;
  padding: 0;
  color: color-mix(in srgb, var(--accent) 82%, white);
  background: transparent;
  border-color: var(--accent);
  font-size: 1rem;
  font-weight: 700;
  line-height: 1;
}

.draft-live-player .draft-live-pick-button:disabled {
  color: color-mix(in srgb, var(--accent) 55%, var(--muted));
  background: transparent;
  border-color: color-mix(in srgb, var(--accent) 42%, var(--border));
  opacity: 0.58;
}

.draft-live-player .draft-live-pick-button:hover,
.draft-live-player .draft-live-pick-button:focus-visible {
  color: var(--page);
  background: var(--accent);
  border-color: var(--accent);
}

@media (min-width: 992px) and (max-width: 1250px) {
  .draft-live-player-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 991.98px) {
  .draft-live-workspace { grid-template-columns: 1fr; }
  .draft-live-team-list { grid-template-columns: repeat(auto-fit, minmax(9rem, 1fr)); }
  .draft-live-player-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* Teams/Draft: the route uses Admin operational rows and table primitives;
   these selectors only compose them for the Draft workspace. */
.admin-shell-body .draft-page {
  display: grid;
  gap: 0.75rem;
  padding: 1.25rem 0 3rem;
}
.admin-shell-body .draft-page .event-overview-section {
  display: grid;
  gap: 1rem;
  margin: 0;
  padding: 1rem;
  background: var(--admin-surface);
  border: 0;
  border-radius: 0.75rem;
}
.admin-shell-body .draft-page .event-overview-section-heading {
  display: flex;
  justify-content: space-between;
  gap: 0.75rem;
  align-items: end;
  padding: 0;
  border: 0;
}
.admin-shell-body .draft-page .event-overview-section-heading h2 {
  margin: 0;
  color: var(--admin-text);
  font-family: inherit;
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1.25;
}
.admin-shell-body .draft-page .event-overview-section-heading p,
.admin-shell-body .draft-page .event-overview-section-heading small,
.admin-shell-body .draft-page .event-overview-section > p {
  margin: 0.25rem 0 0;
  color: var(--admin-muted);
  font-size: 0.6875rem;
  line-height: 1.4;
}
.admin-shell-body .draft-page .event-overview-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  min-width: 0;
  margin: 0;
  padding: 0.75rem;
  color: var(--admin-text-soft);
  background: var(--admin-surface-soft);
  border: 1px solid transparent;
  border-radius: 0.6rem;
}
.admin-shell-body .draft-page .event-overview-row strong,
.admin-shell-body .draft-page .event-overview-row h3 {
  color: var(--admin-text);
}
.admin-shell-body .draft-page .draft-publication-label,
.admin-shell-body .draft-page .finalized-roster-name { color: var(--admin-text); font-size: 0.78rem; font-weight: 500; line-height: 1.35; }
.admin-shell-body .draft-page .event-overview-row p {
  margin: 0.2rem 0 0;
  color: var(--admin-muted);
  font-size: 0.6875rem;
  line-height: 1.4;
}
.admin-shell-body .draft-page .event-overview-row :is(.admin-button-primary, .admin-button-secondary, .admin-button-create, .action-danger-outline) {
  justify-self: end;
  white-space: nowrap;
}
.admin-shell-body .draft-page .draft-team-setup form {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr)) auto;
  gap: 1.25rem;
  align-items: end;
}
.admin-shell-body .draft-page .draft-team-setup label,
.admin-shell-body .draft-page .draft-publication-form label {
  display: grid;
  gap: 0.25rem;
  color: var(--admin-text-soft);
  font-size: 0.75rem;
}
.admin-shell-body .draft-page .draft-team-setup .admin-button-create { justify-self: end; }
.admin-shell-body .draft-page .draft-planning-section .draft-pool-counts {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 0.75rem 1.25rem;
  color: var(--admin-muted);
  font-size: 0.6875rem;
}
.admin-shell-body .draft-page .draft-planning-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.65rem;
  align-items: stretch;
}
.admin-shell-body .draft-page .draft-planning-section {
  gap: 0.5rem;
}
.admin-shell-body .draft-page .draft-planning-label {
  display: block;
  color: var(--admin-text);
  font-size: 0.78rem;
  font-weight: 500;
  line-height: 1.35;
}
.admin-shell-body .draft-page .draft-planning-area {
  min-width: 0;
  color: var(--admin-text-soft);
}
.admin-shell-body .draft-page .draft-planning-panel {
  display: flex;
  flex-direction: column;
  padding: 0.75rem;
  background: var(--admin-surface-soft);
  border-radius: 0.6rem;
}
.admin-shell-body .draft-page .draft-planning-area > p,
.admin-shell-body .draft-page .draft-planning-control-copy > p {
  margin: 0.2rem 0 0;
  color: var(--admin-muted);
  font-size: 0.6875rem;
  line-height: 1.4;
  overflow-wrap: anywhere;
}
.admin-shell-body .draft-page .draft-planning-control-copy { min-width: 0; align-self: flex-start; }
.admin-shell-body .draft-page .draft-planning-control {
  display: grid;
  gap: 0.75rem;
}
.admin-shell-body .draft-page .draft-planning-control-panel {
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  gap: 0.75rem;
}
.admin-shell-body .draft-page .draft-planning-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.45rem;
  align-items: end;
  justify-content: flex-end;
}
.admin-shell-body .draft-page .draft-start-form {
  margin-left: auto;
}
.admin-shell-body .draft-page .draft-start-form button { white-space: nowrap; }
.admin-shell-body .draft-page .draft-pool-counts span { display: inline-flex; gap: 0.3rem; align-items: baseline; }
.admin-shell-body .draft-page .draft-pool-count { color: var(--admin-text); font-size: 0.875rem; font-weight: 500; }
.admin-shell-body .draft-page .draft-publication-form {
  display: block;
  min-width: 0;
  text-align: right;
}
.admin-shell-body .draft-page .draft-publication-form input { width: min(100%, 19rem); }
.admin-shell-body .draft-page .draft-publication-form > summary.action-danger-outline {
  display: inline-block;
  width: fit-content;
  min-height: 2rem;
  padding: 0.375rem 0.75rem;
  font-size: 0.6875rem;
  font-weight: 600;
  line-height: 1.25;
  list-style: none;
}
.admin-shell-body .draft-page .draft-publication-form > summary.action-danger-outline::marker { content: ""; }
.admin-shell-body .draft-page .draft-publication-form > summary.action-danger-outline::-webkit-details-marker { display: none; }
.admin-shell-body .draft-page .draft-team-section-heading { align-items: end; }
.admin-shell-body .draft-page .draft-team-section-heading > div:first-child { min-width: 0; }
.admin-shell-body .draft-page .draft-teams-section { background: var(--admin-surface); }
.admin-shell-body .draft-page .team-heading-actions,
.admin-shell-body .draft-page .team-card-heading-actions,
.admin-shell-body .draft-page .finalized-team-footer,
.admin-shell-body .draft-page .dialog-actions { display: flex; flex-wrap: wrap; gap: 0.45rem; align-items: center; }
.admin-shell-body .draft-page .team-heading-actions,
.admin-shell-body .draft-page .finalized-team-footer { justify-content: flex-end; }
.admin-shell-body .draft-page .team-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.5rem;
  align-items: start;
}
.admin-shell-body .draft-page .team-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 0.55rem 0.9rem;
  min-width: 0;
  align-self: start;
  margin: 0;
  padding: 0.75rem;
  background: var(--admin-surface-soft);
  border: 0;
  border-radius: 0.6rem;
  box-shadow: none;
}
.admin-shell-body .draft-page .team-card > .team-card-summary,
.admin-shell-body .draft-page .team-card > .finalized-team-heading,
.admin-shell-body .draft-page .team-card > p,
.admin-shell-body .draft-page .team-card > ul,
.admin-shell-body .draft-page .team-card > ol,
.admin-shell-body .draft-page .team-card > .finalized-team-footer,
.admin-shell-body .draft-page .team-card > .dialog-actions { grid-column: 1 / -1; }
.admin-shell-body .draft-page .team-card-footer { display: flex; grid-column: 1 / -1; justify-content: space-between; gap: 0.75rem; align-items: center; }
.admin-shell-body .draft-page .team-card-summary,
.admin-shell-body .draft-page .finalized-team-heading {
  display: flex;
  justify-content: space-between;
  gap: 0.75rem;
  align-items: start;
}
.admin-shell-body .draft-page .finalized-team-heading { padding: 0; border: 0; }
.admin-shell-body .draft-page .team-card-summary h3,
.admin-shell-body .draft-page .finalized-team-heading h3 { margin: 0; color: var(--admin-text); font-size: 0.875rem; font-weight: 500; }
.admin-shell-body .draft-page .team-card-summary small,
.admin-shell-body .draft-page .finalized-team-heading small,
.admin-shell-body .draft-page .finalized-team-footer span { color: var(--admin-muted); font-size: 0.6875rem; }
.admin-shell-body .draft-page .team-card > p { margin: 0; color: var(--admin-muted); font-size: 0.6875rem; }
.admin-shell-body .draft-page .team-card-footer > p { margin: 0; color: var(--admin-muted); font-size: 0.6875rem; }
.admin-shell-body .draft-page .team-card ul,
.admin-shell-body .draft-page .finalized-roster-list { display: grid; gap: 0.2rem; margin: 0; padding: 0; list-style: none; }
.admin-shell-body .draft-page .team-card li,
.admin-shell-body .draft-page .finalized-roster-list li {
  display: flex;
  min-width: 0;
  justify-content: space-between;
  gap: 0.75rem;
  align-items: center;
  padding: 0.3rem 0;
  color: var(--admin-text-soft);
  border: 0;
  font-size: 0.75rem;
}
.admin-shell-body .draft-page .team-card li small,
.admin-shell-body .draft-page .finalized-roster-list li small,
.admin-shell-body .draft-page .finalized-roster-pick { color: var(--admin-muted); font-size: 0.625rem; }
.admin-shell-body .draft-page .team-card .dialog-actions { justify-content: flex-end; }
.admin-shell-body .draft-page .team-card .action-remove-x,
.admin-shell-body .draft-page .participant-row-actions .action-remove-x { flex: 0 0 auto; }
.admin-shell-body .draft-page .team-roster-dialog {
  width: min(42rem, calc(100vw - 2rem));
  max-height: calc(100dvh - 2rem);
  padding: 1rem;
  overflow-y: auto;
  color: var(--admin-text-soft);
  background: var(--admin-surface);
  border: 0;
  border-radius: 0.75rem;
  box-shadow: 0 1rem 3rem rgb(0 0 0 / 35%);
}
.admin-shell-body .draft-page .team-roster-dialog::backdrop { background: rgb(0 0 0 / 45%); }
.admin-shell-body .draft-page .team-roster-section {
  margin-top: 0.75rem;
  padding: 0.75rem 0 0;
  background: var(--admin-surface-soft);
  border: 0;
  border-radius: 0.6rem;
}
.admin-shell-body .draft-page .team-roster-section > summary { padding: 0 0.75rem 0.75rem; }
.admin-shell-body .draft-page .team-roster-section > form,
.admin-shell-body .draft-page .team-roster-section > p { padding-inline: 0.75rem; }
.admin-shell-body .draft-page .team-roster-roles { padding: 0.75rem; }
.admin-shell-body .draft-page .team-role-form { border: 0; }
.admin-shell-body .draft-page .team-role-name { overflow: hidden; color: var(--admin-text-soft); font-size: 0.75rem; font-weight: 400; text-overflow: ellipsis; white-space: nowrap; }
.admin-shell-body .draft-page .draft-participant-heading { align-items: end; }
.admin-shell-body .draft-page .draft-participant-heading > div { min-width: 0; }
.admin-shell-body .draft-page .draft-participant-heading p { margin: 0.25rem 0 0; }
.admin-shell-body .draft-page .draft-participant-controls {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 0.75rem;
  align-items: end;
  margin: 0;
  padding: 0.75rem;
  background: var(--admin-surface-soft);
  border: 0;
  border-radius: 0.6rem;
}
.admin-shell-body .draft-page .draft-participant-section { display: grid; gap: 0.65rem; padding: 0; background: transparent; }
.admin-shell-body .draft-page .draft-participant-controls .admin-search-field { width: min(18rem, 100%); }
.admin-shell-body .draft-page .admin-events-table-wrap {
  margin: 0;
  padding: 0;
  overflow: hidden;
  background: var(--admin-surface);
  border: 0;
  border-radius: 0.75rem;
}
.admin-shell-body .draft-page .draft-participant-table-wrap > .draft-participant-heading {
  padding: 0.85rem 0.9rem 0.3rem;
}
.admin-shell-body .draft-page .admin-events-table-scroll { overflow-x: auto; overscroll-behavior-inline: contain; }
.admin-shell-body .draft-page .event-table {
  width: 100%;
  min-width: 48rem;
  border-collapse: collapse;
  table-layout: auto;
  text-align: left;
}
.admin-shell-body .draft-page .participant-table { table-layout: fixed; }
.admin-shell-body .draft-page .participant-table-with-actions th:nth-child(1),
.admin-shell-body .draft-page .participant-table-with-actions td:nth-child(1) { width: 29%; }
.admin-shell-body .draft-page .participant-table-with-actions th:nth-child(2),
.admin-shell-body .draft-page .participant-table-with-actions td:nth-child(2) { width: 8%; }
.admin-shell-body .draft-page .participant-table-with-actions th:nth-child(3),
.admin-shell-body .draft-page .participant-table-with-actions td:nth-child(3) { width: 11%; }
.admin-shell-body .draft-page .participant-table-with-actions th:nth-child(4),
.admin-shell-body .draft-page .participant-table-with-actions td:nth-child(4) { width: 20%; }
.admin-shell-body .draft-page .participant-table-with-actions th:nth-child(5),
.admin-shell-body .draft-page .participant-table-with-actions td:nth-child(5) { width: 31%; }
.admin-shell-body .draft-page .participant-table-with-actions th:last-child,
.admin-shell-body .draft-page .participant-table-with-actions td:last-child { width: 8rem; min-width: 8rem; max-width: 8rem; padding-inline: 0.9rem; white-space: normal; }
.admin-shell-body .draft-page .participant-table-with-actions .participant-row-actions { width: auto; min-width: 0; text-align: left; white-space: normal; }
.admin-shell-body .draft-page .event-table thead tr { background: var(--admin-surface-soft); border: 0; }
.admin-shell-body .draft-page .event-table th {
  padding: 0.65rem 0.9rem;
  color: var(--admin-text);
  background: transparent;
  border: 0;
  font-size: 0.6875rem;
  font-weight: 500;
  text-transform: none;
}
.admin-shell-body .draft-page .event-table td {
  padding: 0.7rem 0.9rem;
  color: var(--admin-text-soft);
  border: 0;
  font-size: 0.75rem;
  vertical-align: middle;
}
.admin-shell-body .draft-page .event-table tbody tr { border: 0; }
.admin-shell-body .draft-page .event-table tbody tr:hover { background: var(--admin-surface-soft); }
.admin-shell-body .draft-page .event-table td > small { display: block; margin-top: 0.15rem; color: var(--admin-muted); font-size: 0.625rem; }
.admin-shell-body .draft-page .participant-sort {
  min-height: 1.5rem;
  padding: 0;
  color: inherit;
  background: transparent;
  border: 0;
  font: inherit;
  text-align: left;
}
.admin-shell-body .draft-page .participant-sort:hover { color: var(--admin-text); }
.admin-shell-body .draft-page .participant-sort:focus-visible { outline: 2px solid var(--admin-focus-accent-strong); outline-offset: 2px; }
.admin-shell-body .draft-page .draft-live-shell { display: grid; gap: 0.85rem; }
.admin-shell-body .draft-page .draft-live-toolbar {
  display: flex;
  justify-content: space-between;
  gap: 0.75rem 1.25rem;
  align-items: center;
  margin: 0;
  padding: 0.75rem;
  color: var(--admin-text-soft);
  background: var(--admin-surface);
  border: 0;
  border-radius: 0.75rem;
}
.admin-shell-body .draft-page .draft-live-toolbar-status,
.admin-shell-body .draft-page .draft-live-toolbar-actions { display: flex; flex-wrap: wrap; gap: 0.45rem; align-items: center; }
.admin-shell-body .draft-page .draft-live-toolbar-copy { display: flex; flex-wrap: wrap; gap: 0.45rem; align-items: baseline; }
.admin-shell-body .draft-page .draft-live-toolbar-copy > strong { color: var(--admin-text); }
.admin-shell-body .draft-page .draft-live-toolbar-copy > span { color: var(--admin-muted); font-size: 0.6875rem; }
.admin-shell-body .draft-page .draft-live-toolbar-actions { justify-content: flex-end; margin-left: auto; }
.admin-shell-body .draft-page .draft-live-workspace {
  display: grid;
  grid-template-columns: minmax(0, 1.6fr) minmax(22rem, 0.9fr);
  gap: 0.85rem;
  align-items: start;
}
.admin-shell-body .draft-page .draft-live-section-heading { display: flex; justify-content: space-between; gap: 1rem; align-items: end; margin-bottom: 0.6rem; }
.admin-shell-body .draft-page .draft-live-section-heading .eyebrow { margin: 0 0 0.1rem; color: var(--admin-navigation-accent); font-size: 0.625rem; }
.admin-shell-body .draft-page .draft-live-section-heading h2 { margin: 0; color: var(--admin-text); font-size: 1.12rem; }
.admin-shell-body .draft-page .draft-live-section-heading > span { color: var(--admin-muted); font-size: 0.6875rem; }
.admin-shell-body .draft-page .draft-live-team-list { display: grid; grid-template-columns: repeat(auto-fit, minmax(12rem, 1fr)); gap: 0.5rem; }
.admin-shell-body .draft-page .draft-live-team {
  min-width: 0;
  padding: 0.75rem;
  color: var(--admin-text-soft);
  background: var(--admin-surface);
  border: 1px solid transparent;
  border-radius: 0.75rem;
  box-shadow: none;
}
.admin-shell-body .draft-page .draft-live-team.current-team { border-color: var(--admin-focus-accent-strong); box-shadow: none; }
.admin-shell-body .draft-page .draft-live-team > header { padding: 0; border: 0; }
.admin-shell-body .draft-page .draft-live-team h3 { margin: 0; color: var(--admin-text); font-size: 0.875rem; }
.admin-shell-body .draft-page .draft-live-team.current-team h3 { color: var(--admin-navigation-accent); }
.admin-shell-body .draft-page .draft-live-team-count { display: block; margin-top: 0.55rem; color: var(--admin-muted); font-size: 0.6875rem; text-align: right; }
.admin-shell-body .draft-page .draft-live-picks { display: grid; gap: 0.15rem; margin: 0.55rem 0 0; padding: 0; list-style: none; }
.admin-shell-body .draft-page .draft-live-picks li { display: flex; gap: 0.5rem; align-items: baseline; padding: 0.3rem 0; border: 0; }
.admin-shell-body .draft-page .draft-live-picks strong { color: var(--admin-text); font-size: 0.75rem; }
.admin-shell-body .draft-page .draft-live-picks .draft-live-pick-number { color: var(--admin-muted); font-size: 0.625rem; }
.admin-shell-body .draft-page .draft-live-picks .draft-live-captain strong { font-weight: 700; }
.admin-shell-body .draft-page .draft-live-player-panel { padding: 0.75rem; background: var(--admin-surface); border-radius: 0.75rem; }
.admin-shell-body .draft-page .draft-live-player-list { display: grid; grid-template-columns: repeat(auto-fit, minmax(10rem, 1fr)); gap: 0.45rem; }
.admin-shell-body .draft-page .draft-live-player {
  display: flex;
  min-width: 0;
  justify-content: space-between;
  gap: 0.6rem;
  align-items: center;
  padding: 0.55rem;
  color: var(--admin-text-soft);
  background: var(--admin-surface-soft);
  border: 0;
  border-radius: 0.5rem;
}
.admin-shell-body .draft-page .draft-live-player > div { display: grid; min-width: 0; gap: 0.15rem; }
.admin-shell-body .draft-page .draft-live-player strong { overflow: hidden; color: var(--admin-text); font-size: 0.75rem; text-overflow: ellipsis; white-space: nowrap; }
.admin-shell-body .draft-page .draft-live-player span { color: var(--admin-muted); font-size: 0.625rem; }
.admin-shell-body .draft-page .draft-live-pick-button { min-width: 3.25rem; padding-inline: 0.55rem; }
.admin-shell-body .draft-page .draft-live-player .draft-live-pick-button:hover,
.admin-shell-body .draft-page .draft-live-player .draft-live-pick-button:focus-visible {
  color: var(--admin-text);
  background: var(--admin-action-hover);
  border-color: var(--admin-action-border);
}
.admin-shell-body .draft-page .draft-live-empty { margin: 0; color: var(--admin-muted); font-size: 0.6875rem; }
.admin-shell-body .draft-page :is(a, button, input, select, textarea, summary):focus-visible { outline: 2px solid var(--admin-focus-accent-strong); outline-offset: 2px; }

@media (max-width: 1100px) {
  .admin-shell-body .draft-page .draft-planning-grid,
  .admin-shell-body .draft-page .team-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .admin-shell-body .draft-page .admin-events-table-wrap { overflow: visible; background: transparent; }
  .admin-shell-body .draft-page .admin-events-table-scroll { overflow: visible; }
  .admin-shell-body .draft-page .event-table,
  .admin-shell-body .draft-page .event-table tbody,
  .admin-shell-body .draft-page .event-table tr,
  .admin-shell-body .draft-page .event-table td { display: block; width: 100%; min-width: 0; }
  .admin-shell-body .draft-page .event-table thead { display: none; }
  .admin-shell-body .draft-page .event-table tbody { display: grid; gap: 0.65rem; }
  .admin-shell-body .draft-page .event-table tr { padding: 0.75rem; background: var(--admin-surface); border: 0; border-radius: 0.75rem; }
  .admin-shell-body .draft-page .event-table td { display: grid; grid-template-columns: minmax(6rem, 7rem) minmax(0, 1fr); gap: 0.65rem; padding: 0.3rem 0; }
  .admin-shell-body .draft-page .event-table td { width: 100%; }
  .admin-shell-body .draft-page .event-table td::before { color: var(--admin-muted); content: attr(data-label); font-size: 0.625rem; font-weight: 500; }
  .admin-shell-body .draft-page .event-table td > .participant-primary-value,
  .admin-shell-body .draft-page .event-table td > small,
  .admin-shell-body .draft-page .event-table td > span { grid-column: 2; min-width: 0; }
  .admin-shell-body .draft-page .draft-live-workspace { grid-template-columns: 1fr; }
  .admin-shell-body .draft-page .draft-live-player-list { grid-template-columns: repeat(auto-fit, minmax(12rem, 1fr)); }
}
@media (max-width: 650px) {
  .admin-shell-body .draft-page { gap: 0.9rem; padding-bottom: 1.5rem; }
  .admin-shell-body .draft-page .event-overview-section { padding: 0.85rem; }
  .admin-shell-body .draft-page .draft-teams-section { padding: 0.85rem; }
  .admin-shell-body .draft-page .draft-planning-grid,
  .admin-shell-body .draft-page .team-grid { grid-template-columns: 1fr; }
  .admin-shell-body .draft-page .draft-planning-control-panel { flex-direction: column; align-items: stretch; }
  .admin-shell-body .draft-page .draft-planning-control-copy { align-self: stretch; }
  .admin-shell-body .draft-page .draft-planning-actions { align-items: stretch; flex-direction: column; }
  .admin-shell-body .draft-page .draft-start-form { margin-left: 0; }
  .admin-shell-body .draft-page .draft-team-setup form { grid-template-columns: 1fr; }
  .admin-shell-body .draft-page .draft-team-setup .admin-button-create { justify-self: start; }
  .admin-shell-body .draft-page .draft-publication-form { text-align: left; }
  .admin-shell-body .draft-page .draft-participant-controls { grid-template-columns: 1fr; }
  .admin-shell-body .draft-page .draft-live-toolbar { align-items: stretch; flex-direction: column; }
  .admin-shell-body .draft-page .draft-live-toolbar-actions { justify-content: flex-start; margin-left: 0; }
  .admin-shell-body .draft-page .draft-live-team-list,
  .admin-shell-body .draft-page .draft-live-player-list { grid-template-columns: 1fr; }
  .admin-shell-body .draft-page .team-roster-dialog { width: calc(100vw - 1rem); max-height: calc(100dvh - 1rem); padding: 0.75rem; }
  .admin-shell-body .draft-page .team-role-form,
  .admin-shell-body .draft-page .team-member-move-form { grid-template-columns: 1fr; }
}

.validation-summary,
.field-error {
  color: #ff9b91;
}

.validation-summary:empty,
.field-error:empty {
  display: none;
}

.status-message,
.app-notice {
  padding: 0.8rem 1rem;
  border-radius: 0.5rem;
}

#app-notice-region {
  display: grid;
  gap: 0.5rem;
  position: fixed;
  right: 1rem;
  bottom: 1rem;
  z-index: 2147483000;
  width: min(24rem, calc(100vw - 2rem));
  margin: 0;
  pointer-events: none;
}
#app-notice-region:empty { display: none; }
.status-message { margin: 1rem 0; }
.app-notice {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 0.65rem;
  align-items: baseline;
  margin: 0;
  box-shadow: 0 0.8rem 2.5rem rgba(0, 0, 0, 0.42);
}
.app-notice strong { flex: 0 0 auto; font-size: 0.78rem; letter-spacing: 0.04em; text-transform: uppercase; }
.app-notice-dismiss {
  display: grid;
  width: 1.7rem;
  height: 1.7rem;
  padding: 0;
  color: currentColor;
  font: inherit;
  font-size: 1.25rem;
  line-height: 1;
  cursor: pointer;
  background: transparent;
  border: 0;
  border-radius: 0.3rem;
  align-self: center;
  place-items: center;
}
.app-notice-dismiss:hover,
.app-notice-dismiss:focus-visible { background: rgba(255, 255, 255, 0.1); }
.notice-success { color: #d7f4da; background: rgba(114, 184, 121, 0.14); border: 1px solid rgba(114, 184, 121, 0.5); }
.notice-error { color: #ffd7d3; background: rgba(228, 127, 118, 0.13); border: 1px solid rgba(228, 127, 118, 0.55); }
.notice-warning { color: #f9e5bd; background: rgba(228, 184, 95, 0.13); border: 1px solid rgba(228, 184, 95, 0.5); }
.notice-information { color: #d8ecfb; background: rgba(107, 169, 220, 0.13); border: 1px solid rgba(107, 169, 220, 0.5); }

@media (max-width: 575.98px) {
  .app-nav .navbar-brand { order: 0; }
  .app-nav .header-notification {
    order: 1;
    margin-left: auto;
    margin-right: 0.3rem;
  }
  .app-nav .header-notification .nav-panel { right: -3.8rem; }
  .app-nav .navbar-toggler { order: 2; }
  .app-nav .navbar-collapse { order: 3; }
  .navbar-collapse.show,
  .navbar-collapse.collapsing {
    margin-top: 0.55rem;
    padding-top: 0.45rem;
  }
  .navbar-collapse.nav-authenticated.show,
  .navbar-collapse.nav-authenticated.collapsing {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: end;
  }
  .navbar-collapse.collapsing { transition: height 180ms ease; }
  .navbar-collapse.nav-authenticated > .navbar-nav:first-child { grid-column: 1; }
  .navbar-collapse.nav-authenticated > .nav-utilities {
    display: flex;
    grid-column: 2;
    flex-direction: row;
    align-items: center;
    align-self: end;
    min-height: 2.5rem;
  }
  .navbar-collapse:not(.nav-authenticated) .nav-utilities {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
  }
  .navbar-collapse:not(.nav-authenticated) .nav-utilities > .settings-popover { grid-area: 1 / 2; }
  .navbar-collapse:not(.nav-authenticated) .nav-utilities > .nav-item:last-child { grid-area: 1 / 1; }
  .nav-popover { display: block; }
  .nav-icon-button { margin: 0 0.15rem; }
  .navbar-collapse.nav-authenticated .nav-panel {
    position: absolute;
    width: min(24rem, calc(100vw - 2rem));
    margin: 0.25rem 0 0.5rem;
  }
  .navbar-collapse:not(.nav-authenticated) .nav-panel { position: absolute; right: 0; width: min(18rem, calc(100vw - 2rem)); margin: 0.25rem 0 0.5rem; }
}

@media (max-width: 767.98px) {
  .app-breadcrumbs li:not(:nth-last-child(-n+2)) { display: none; }
  .app-breadcrumbs li:nth-last-child(2)::before { margin-left: 0; content: "←"; }
  .app-notice { grid-template-columns: minmax(0, 1fr) auto; align-items: start; gap: 0.2rem 0.65rem; }
  .app-notice strong { grid-column: 1; }
  .app-notice span { grid-column: 1; }
  .app-notice-dismiss { grid-area: 1 / 2 / span 2; }
  .content-page { padding: 2.25rem 0 3rem; }
}

.completion-correction {
  display: grid;
  gap: 0.2rem;
}

.completion-correction small {
  color: var(--muted);
}

.completion-correction strong {
  color: var(--accent);
}

.completion-correction-form {
  display: grid;
  min-width: 18rem;
  gap: 0.5rem;
}

.completion-correction-form label {
  display: grid;
  gap: 0.2rem;
  color: var(--muted);
  font-size: 0.78rem;
}

.completion-correction-form input,
.completion-correction-form input:focus {
  color: var(--text);
  background: var(--page);
  border-color: var(--border);
}

.table-wrap {
  overflow-x: auto;
}

table {
  width: 100%;
  border-collapse: collapse;
}

/* Guided event creation */
.event-create-page { padding: 1rem 0 4rem; }
.event-create-heading { margin-bottom: 1rem; }
.event-create-heading h1 { max-width: none; font-size: var(--page-title-size); }
.event-create-heading > p:last-child:not(.admin-module-description) { max-width: 48rem; margin: 0.55rem 0 0; color: var(--muted); }
.event-create-form > .validation-summary { margin: 0 0 0.75rem; }
.event-create-layout { display: grid; grid-template-columns: 13rem minmax(0, 1fr); gap: 1rem; align-items: start; }
.event-create-steps { display: none; gap: 0.35rem; position: sticky; top: 1rem; }
.is-guided .event-create-steps { display: grid; }
.event-create-step {
  display: grid;
  grid-template-columns: 1.75rem minmax(0, 1fr);
  gap: 0.55rem;
  align-items: center;
  width: 100%;
  padding: 0.55rem;
  color: var(--muted);
  background: transparent;
  border: 1px solid transparent;
  border-radius: 0.55rem;
  text-align: left;
}
.event-create-step > span { display: grid; width: 1.75rem; height: 1.75rem; place-items: center; background: var(--surface); border: 1px solid var(--border); border-radius: 50%; font-size: 0.72rem; }
.event-create-step strong { min-width: 0; font-size: 0.82rem; line-height: 1.2; }
.event-create-step:hover { color: var(--text); border-color: var(--border); }
.event-create-step[aria-current="step"] { color: var(--text); background: var(--surface); border-color: var(--accent); }
.event-create-step[aria-current="step"] > span { color: var(--page); background: var(--accent); border-color: var(--accent); }
.event-create-step.is-complete > span { color: #d9f5dc; background: #244b2b; border-color: #3d7447; }
.event-create-workspace.panel { min-width: 0; margin: 0; padding: 1.15rem; }
.event-create-panel + .event-create-panel { margin-top: 2rem; padding-top: 2rem; border-top: 1px solid var(--border); }
.is-guided .event-create-panel { display: none; }
.is-guided .event-create-panel.is-active { display: block; }
.is-guided .event-create-panel + .event-create-panel { margin-top: 0; padding-top: 0; border-top: 0; }
.event-create-panel-heading { display: flex; justify-content: space-between; gap: 1rem; align-items: end; margin-bottom: 1rem; }
.event-create-panel-heading h2, .custom-question-heading h3 { margin: 0; font-size: 1.15rem; }
.event-create-panel-heading > p { max-width: 30rem; margin: 0; color: var(--muted); font-size: 0.82rem; line-height: 1.45; text-wrap: balance; }
.step-kicker { margin: 0 0 0.2rem; color: var(--accent); font-size: 0.66rem; font-weight: 750; letter-spacing: 0.08em; text-transform: uppercase; }
.event-create-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.8rem; align-items: start; }
.event-create-field { display: grid; min-width: 0; gap: 0.3rem; }
.event-create-field label, .event-create-field .field-label { color: var(--text); font-size: 0.8rem; font-weight: 650; }
.event-create-field small { color: var(--muted); font-size: 0.74rem; line-height: 1.4; }
.event-create-field .form-control, .event-create-field .form-select { min-height: 2.45rem; padding: 0.45rem 0.6rem; }
.event-create-field.full-field { grid-column: 1 / -1; }
.event-banner-preview { display: grid; min-height: 6.5rem; overflow: hidden; place-items: center; background: color-mix(in srgb, var(--surface-raised) 55%, transparent); border: 1px solid var(--border); border-radius: 0.55rem; color: var(--muted); font-size: 0.78rem; }
.event-banner-preview img { width: 100%; height: 8rem; object-fit: cover; }
.event-create-field.compact-field { max-width: 22rem; }
.event-datetime-picker { display: none; }
.has-date-pickers .event-datetime-picker, .has-date-pickers .flatpickr-wrapper { display: block; }
.has-date-pickers .event-datetime-fallback { display: none; }
.event-datetime-fallback { display: grid; grid-template-columns: minmax(0, 1fr) 6.5rem; gap: 0.45rem; }
.event-datetime-fallback > div { display: grid; gap: 0.25rem; }
.event-datetime-fallback label { color: var(--muted); font-size: 0.7rem; }
.schedule-option-card { min-height: 2.45rem; padding: 0.35rem 0.6rem; align-content: center; }
.setting-card {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 0.65rem;
  align-items: start;
  min-width: 0;
  margin: 0;
  padding: 0.7rem;
  cursor: pointer;
  background: color-mix(in srgb, var(--surface-raised) 45%, transparent);
  border: 1px solid var(--border);
  border-radius: 0.55rem;
}
.setting-card:has(input:checked) { border-color: color-mix(in srgb, var(--accent) 70%, var(--border)); background: color-mix(in srgb, var(--accent) 8%, var(--surface)); }
.setting-card input { margin-top: 0.2rem; }
.setting-card strong, .setting-card small { display: block; }
.setting-card strong { font-size: 0.82rem; }
.setting-card small { margin-top: 0.12rem; color: var(--muted); font-size: 0.72rem; font-weight: 400; line-height: 1.4; }
.signup-field-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 1rem; margin-bottom: 1.25rem; border-top: 1px solid var(--border); }
.signup-field-list > div { display: flex; justify-content: space-between; gap: 0.75rem; align-items: center; min-width: 0; padding: 0.55rem 0; border-bottom: 1px solid var(--border); }
.signup-field-list strong, .signup-field-list small { display: block; }
.signup-field-list strong { font-size: 0.8rem; }
.signup-field-list small { margin-top: 0.1rem; color: var(--muted); font-size: 0.7rem; }
.system-field-badge { flex: 0 0 auto; padding: 0.16rem 0.38rem; color: var(--muted); background: var(--surface-raised); border-radius: 999px; font-size: 0.62rem; font-weight: 700; }
.custom-question-heading { display: flex; justify-content: space-between; gap: 1rem; align-items: center; margin-bottom: 0.6rem; }
.custom-question-heading p { margin: 0.2rem 0 0; color: var(--muted); font-size: 0.76rem; }
.custom-question-empty { margin: 0; padding: 0.75rem; color: var(--muted); border: 1px dashed var(--border); border-radius: 0.55rem; font-size: 0.82rem; }
.custom-question-list { display: grid; gap: 0.65rem; }
.custom-question-card { padding: 0.7rem; background: color-mix(in srgb, var(--surface-raised) 40%, transparent); border: 1px solid var(--border); border-radius: 0.6rem; }
.custom-question-card .event-create-fields { gap: 0.65rem; }
.custom-question-card-heading { display: flex; justify-content: space-between; gap: 1rem; align-items: center; margin-bottom: 0.65rem; }
.custom-question-card-heading strong { font-size: 0.82rem; }
.compact-setting { align-self: end; }
.choice-options[hidden], .signup-code-field[hidden] { display: none; }
.signup-settings-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.65rem; margin-top: 1.1rem; }
.signup-code-field { max-width: 22rem; margin-top: 0.75rem; }
.planning-fields { max-width: 42rem; }
.planning-fields .event-create-field { max-width: none; }
.information-callout { display: flex; gap: 0.75rem; align-items: baseline; margin-top: 1rem; padding: 0.75rem; color: #d8ecfb; background: rgba(107, 169, 220, 0.1); border-left: 3px solid var(--info); border-radius: 0.25rem; font-size: 0.78rem; }
.information-callout strong { flex: 0 0 auto; }

.important-callout { color: #f9e5bd; background: rgba(228, 184, 95, 0.1); border-left-color: var(--warning); }
.event-create-summary { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.65rem; }
.event-create-summary > div { display: grid; gap: 0.15rem; min-width: 0; padding: 0.75rem; background: color-mix(in srgb, var(--surface-raised) 45%, transparent); border: 1px solid var(--border); border-radius: 0.55rem; }
.event-create-summary span { color: var(--muted); font-size: 0.68rem; font-weight: 700; letter-spacing: 0.05em; text-transform: uppercase; }
.event-create-summary strong { overflow-wrap: anywhere; font-size: 0.9rem; }
.event-create-summary small { overflow-wrap: anywhere; color: var(--muted); font-size: 0.72rem; }
.create-event-submit { margin-left: auto; }
.event-create-guided-actions { display: none; justify-content: space-between; gap: 0.75rem; align-items: center; margin-top: 1.15rem; padding-top: 0.85rem; border-top: 1px solid var(--border); }
.is-guided .event-create-guided-actions { display: flex; }
.event-create-guided-actions > span { color: var(--muted); font-size: 0.74rem; }

@media (min-width: 768px) {
  .event-create-page {
    width: min(calc(100% - 2rem), 920px);
    margin-inline: auto;
    padding-top: 0.8rem;
  }

  .event-create-heading {
    margin-bottom: 1.3rem;
  }

  .event-create-heading h1 {
    font-size: clamp(2.8rem, 4vw, 3.7rem);
  }

  .event-create-heading > p:last-child {
    max-width: 44rem;
    margin-top: 0.35rem;
    font-size: 0.92rem;
  }

  .event-create-layout {
    grid-template-columns: minmax(0, 1fr);
    gap: 1.35rem;
  }

  .event-create-steps {
    position: relative;
    top: auto;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 0;
    padding: 0.45rem 0.65rem 0.75rem;
    background: transparent;
    border: 0;
    border-radius: 0;
  }

  .event-create-steps::before {
    content: "";
    position: absolute;
    z-index: 0;
    top: 1.32rem;
    right: 10%;
    left: 10%;
    height: 1px;
    background: var(--border);
  }

  .event-create-step {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 0.35rem;
    padding: 0.35rem 0.25rem;
    border: 0;
    border-radius: 0;
    text-align: center;
  }

  .event-create-step:not(:last-child)::after {
    content: none;
  }

  .event-create-step > span,
  .event-create-step strong {
    position: relative;
    z-index: 1;
  }

  .event-create-step strong {
    padding-inline: 0.15rem;
    background: transparent;
    font-size: 0.76rem;
    line-height: 1.2;
  }

  .event-create-step > span {
    background: var(--page);
  }

  .event-create-step.is-complete > span {
    font-size: 0;
  }

  .event-create-step:hover {
    color: var(--text);
    border-color: transparent;
  }

  .event-create-step:focus-visible {
    outline: none;
  }

  .event-create-step:focus-visible > span {
    outline: 2px solid color-mix(in srgb, var(--admin-focus-accent, var(--accent)) 55%, transparent);
    outline-offset: 3px;
  }

  .event-create-step[aria-current="step"] {
    color: var(--text);
    background: transparent;
    border-color: transparent;
  }

  .event-create-workspace.panel {
    padding: 1.35rem 1.45rem;
  }

  .event-create-panel-heading {
    align-items: end;
    padding-bottom: 0.85rem;
    border-bottom: 1px solid var(--border);
  }

  .event-create-panel-heading > p {
    max-width: 27rem;
    padding: 0 0 0.1rem;
    text-align: right;
  }
}

/* Event date and time picker */
.flatpickr-calendar.event-calendar-picker {
  width: 19.5rem;
  color: var(--text);
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: 0.65rem;
  box-shadow: 0 1rem 2.5rem rgba(0, 0, 0, 0.45);
}

.flatpickr-calendar.event-calendar-picker.arrowTop::before { border-bottom-color: var(--border); }
.flatpickr-calendar.event-calendar-picker.arrowTop::after { border-bottom-color: var(--surface); }
.event-calendar-picker .flatpickr-months,
.event-calendar-picker .flatpickr-weekdays { background: var(--surface); }
.event-calendar-picker .flatpickr-months .flatpickr-month,
.event-calendar-picker span.flatpickr-weekday,
.event-calendar-picker .flatpickr-current-month,
.event-calendar-picker .flatpickr-current-month input.cur-year,
.event-calendar-picker .flatpickr-current-month .flatpickr-monthDropdown-months { color: var(--text); background: transparent; }
.event-calendar-picker .flatpickr-monthDropdown-months option { color: var(--text); background: var(--surface); }
.event-calendar-picker .flatpickr-prev-month,
.event-calendar-picker .flatpickr-next-month { color: var(--muted); fill: var(--muted); }
.event-calendar-picker .flatpickr-prev-month:hover,
.event-calendar-picker .flatpickr-next-month:hover { color: var(--accent); fill: var(--accent); }
.event-calendar-picker .flatpickr-day { color: var(--text); border-radius: 0.4rem; }
.event-calendar-picker .flatpickr-day.prevMonthDay,
.event-calendar-picker .flatpickr-day.nextMonthDay,
.event-calendar-picker .flatpickr-day.flatpickr-disabled { color: color-mix(in srgb, var(--muted) 45%, transparent); }
.event-calendar-picker .flatpickr-day:hover,
.event-calendar-picker .flatpickr-day:focus { color: var(--text); background: var(--surface-raised); border-color: var(--surface-raised); }
.event-calendar-picker .flatpickr-day.today { border-color: var(--accent); }
.event-calendar-picker .flatpickr-day.selected,
.event-calendar-picker .flatpickr-day.selected:hover { color: var(--page); background: var(--accent); border-color: var(--accent); }
.flatpickr-calendar.event-calendar-picker.hasTime .event-calendar-time {
  display: flex;
  box-sizing: border-box;
  height: 5rem;
  min-height: 5rem;
  max-height: 5rem;
  padding: 0.85rem 0.9rem;
  align-items: center;
  border-top: 1px solid var(--border);
  line-height: normal;
}
.event-calendar-picker .event-calendar-time > .numInputWrapper,
.event-calendar-picker .event-calendar-time > .flatpickr-time-separator,
.event-calendar-picker .event-calendar-time > .flatpickr-am-pm { display: none; }
.event-calendar-time-label { display: flex; width: 100%; gap: 0.55rem; align-items: center; color: var(--muted); font-size: 0.88rem; font-weight: 650; line-height: 1.2; }
.event-time-select { flex: 1 1 auto; min-width: 0; min-height: 2.8rem; padding: 0.45rem 2rem 0.45rem 0.65rem; color: var(--text); background: var(--page); border: 1px solid var(--border); border-radius: 0.45rem; font-size: 0.96rem; }

/* Bootstrap's container is only about 45rem wide between the phone and full
   desktop layouts. Move wide workspaces to their compact structure before
   fixed/minimum-width children can be clipped inside that tablet-width gap. */
@media (max-width: 991.98px) {
  .board-workspace,
  .published-board-workspace,
  .redesigned-board-workspace,
  .tile-detail-layout,
  .review-layout {
    grid-template-columns: 1fr;
  }

  .line-summary { position: static; }

  .catalogue-boss-editor { grid-template-columns: 1fr; }
  .catalogue-editor-image { display: none; }
  .catalogue-drop-list { grid-template-columns: 1fr; }
}

@media (max-width: 767px) {
  .event-create-layout { grid-template-columns: 1fr; }
  .event-create-steps { position: static; grid-template-columns: repeat(5, minmax(0, 1fr)); }
  .event-create-step { grid-template-columns: 1fr; justify-items: center; gap: 0.3rem; padding: 0.45rem 0.3rem; text-align: center; }
  .event-create-step strong { font-size: 0.7rem; }
}

/* Admin Pass 1B remediation: authoritative dashboard and directory. */
.admin-module-actions { display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: 0.5rem; }
.admin-secondary-action,
.admin-dashboard-panel-link,
.admin-dashboard-row-action { color: var(--admin-accent-strong); font-size: 0.6875rem; font-weight: 600; text-decoration: none; }
.admin-secondary-action { display: inline-flex; min-height: 2rem; align-items: center; gap: 0.45rem; padding: 0.5rem 0.75rem; color: var(--admin-muted); border: 1px solid var(--admin-border-strong); border-radius: var(--admin-radius); }
.admin-secondary-action:hover,
.admin-dashboard-panel-link:hover,
.admin-dashboard-row-action:hover { color: var(--admin-text); }
.admin-secondary-action svg { width: 0.875rem; height: 0.875rem; }
.admin-secondary-action:focus-visible,
.admin-dashboard-panel-link:focus-visible,
.admin-dashboard-row-action:focus-visible { outline: 2px solid var(--admin-focus-accent-strong); outline-offset: 2px; }
.admin-dashboard-metrics { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 0.75rem; }
.admin-dashboard-metric { display: flex; min-width: 0; align-items: center; gap: 0.75rem; padding: 0.875rem 1rem; color: var(--admin-text); background: var(--admin-surface); border: 1px solid var(--admin-border); border-radius: 0.5rem; text-decoration: none; }
.admin-dashboard-metric:hover { background: var(--admin-surface-raised); border-color: var(--admin-border-strong); }
.admin-dashboard-metric > span:last-child { display: grid; min-width: 0; gap: 0.2rem; }
.admin-dashboard-metric strong { color: var(--admin-text); font-size: 1.35rem; font-weight: 700; line-height: 1; }
.admin-dashboard-metric small { overflow: hidden; color: var(--admin-muted); font-size: 0.625rem; font-weight: 600; line-height: 1.3; text-overflow: ellipsis; white-space: nowrap; }
.admin-dashboard-metric-icon { display: grid; width: 2rem; height: 2rem; flex: 0 0 auto; place-items: center; color: var(--admin-accent-strong); background: color-mix(in srgb, var(--admin-accent) 12%, transparent); border: 1px solid var(--admin-border-strong); border-radius: 0.375rem; }
.admin-dashboard-metric-icon svg { width: 1rem; height: 1rem; }
.admin-dashboard-panel-heading { align-items: center; }
.admin-dashboard-panel-heading > div { min-width: 0; }
.admin-dashboard-empty { margin: 0; color: var(--admin-muted); font-size: 0.75rem; }
.admin-dashboard-attention-list,
.admin-dashboard-audit-list { display: grid; gap: 0; margin: 0; padding: 0; list-style: none; }
.admin-dashboard-attention-list li { display: grid; grid-template-columns: minmax(10rem, 1.5fr) auto minmax(8rem, 1fr) auto; align-items: center; gap: 0.75rem; min-width: 0; padding: 0.75rem 0; border-top: 1px solid var(--admin-border); }
.admin-dashboard-attention-list li:first-child,
.admin-dashboard-audit-list li:first-child { padding-top: 0; border-top: 0; }
.admin-dashboard-attention-reason { min-width: 0; overflow: hidden; color: var(--admin-muted); font-size: 0.6875rem; text-overflow: ellipsis; white-space: nowrap; }
.admin-dashboard-event-copy { display: grid; min-width: 0; gap: 0.2rem; }
.admin-dashboard-event-copy strong { overflow: hidden; color: var(--admin-text); font-size: 0.75rem; font-weight: 600; line-height: 1.25; text-overflow: ellipsis; white-space: nowrap; }
.admin-dashboard-event-copy small { overflow: hidden; color: var(--admin-muted); font-size: 0.625rem; line-height: 1.25; text-overflow: ellipsis; white-space: nowrap; }
.admin-active-events-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0.75rem; }
.admin-active-event { display: grid; gap: 0.625rem; min-width: 0; padding: 0.875rem; background: var(--admin-surface-raised); border: 1px solid var(--admin-border); border-radius: 0.5rem; }
.admin-active-event-heading { display: flex; min-width: 0; align-items: start; justify-content: space-between; gap: 0.5rem; }
.admin-active-event-date,
.admin-active-event-summary { margin: 0; color: var(--admin-muted); font-size: 0.6875rem; line-height: 1.35; }
.admin-active-event-date { color: var(--admin-text); font-weight: 500; }
.admin-dashboard-audit-list li { display: grid; grid-template-columns: minmax(8rem, 1fr) minmax(8rem, 1fr) auto; gap: 0.75rem; padding: 0.65rem 0; border-top: 1px solid var(--admin-border); color: var(--admin-muted); font-size: 0.6875rem; }
.admin-dashboard-audit-list strong { color: var(--admin-text); font-weight: 600; }
.admin-dashboard-audit-list time { white-space: nowrap; }
@media (max-width: 900px) {
  .admin-dashboard-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .admin-active-events-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 767px) {
  .admin-module-actions { justify-content: flex-start; }
  .admin-dashboard-metrics,
  .admin-active-events-grid { grid-template-columns: 1fr; }
  .admin-dashboard-attention-list li { grid-template-columns: minmax(0, 1fr) auto; }
  .admin-dashboard-attention-list li .admin-dashboard-attention-reason { grid-column: 1; }
  .admin-dashboard-attention-list li .admin-dashboard-row-action { grid-column: 2; grid-row: 1 / span 2; }
  .admin-dashboard-audit-list li { grid-template-columns: 1fr; gap: 0.2rem; }
  .admin-dashboard-audit-list time { font-size: 0.625rem; }
}

.admin-dashboard-page .admin-primary-action { color: var(--admin-text); background: var(--admin-action); border-color: var(--admin-action-border); }
.admin-dashboard-page .admin-primary-action:hover { color: var(--admin-text); background: var(--admin-action-hover); border-color: var(--admin-action-border); }
.admin-dashboard-main-grid,
.admin-dashboard-detail-grid { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(18rem, 0.85fr); gap: 1rem; }
.admin-dashboard-main-grid .admin-dashboard-panel,
.admin-dashboard-detail-grid .admin-dashboard-panel { min-width: 0; }
.admin-dashboard-panel-link { display: inline-flex; align-items: center; gap: 0.25rem; }
.admin-dashboard-panel-link svg { width: 0.875rem; height: 0.875rem; }
.admin-dashboard-panel-count { color: var(--admin-text); font-size: 1.25rem; line-height: 1; }
.admin-dashboard-milestone-list,
.admin-dashboard-evidence-list,
.admin-dashboard-readiness-list,
.admin-dashboard-sync-list { display: grid; gap: 0; margin: 0; padding: 0; list-style: none; }
.admin-dashboard-milestone-list li,
.admin-dashboard-evidence-list li,
.admin-dashboard-readiness-list li,
.admin-dashboard-sync-list article { display: grid; min-width: 0; align-items: center; gap: 0.75rem; padding: 0.7rem 0; border-top: 1px solid var(--admin-border); }
.admin-dashboard-milestone-list li:first-child,
.admin-dashboard-evidence-list li:first-child,
.admin-dashboard-readiness-list li:first-child,
.admin-dashboard-sync-list article:first-child { padding-top: 0; border-top: 0; }
.admin-dashboard-milestone-list li { grid-template-columns: minmax(0, 1fr) auto; }
.admin-dashboard-milestone-copy { display: grid; gap: 0.15rem; justify-items: end; color: var(--admin-text-soft); font-size: 0.6875rem; text-align: right; }
.admin-dashboard-milestone-copy time { color: var(--admin-muted); font-size: 0.625rem; white-space: nowrap; }
.admin-active-events-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.admin-active-event-details { display: grid; gap: 0.35rem; padding-top: 0.6rem; border-top: 1px solid var(--admin-border); }
.admin-active-event-details p { display: flex; min-width: 0; align-items: center; gap: 0.35rem; margin: 0; overflow: hidden; color: var(--admin-muted); font-size: 0.6875rem; line-height: 1.35; text-overflow: ellipsis; white-space: nowrap; }
.admin-active-event-details p svg { width: 0.875rem; height: 0.875rem; flex: 0 0 auto; color: currentColor; }
.admin-active-event-footer { display: flex; align-items: center; justify-content: space-between; gap: 0.5rem; }
.admin-dashboard-row-action { display: inline-flex; align-items: center; gap: 0.25rem; white-space: nowrap; }
.admin-dashboard-row-action svg { width: 0.875rem; height: 0.875rem; }
.admin-dashboard-attention-count { color: var(--admin-warning); font-size: 0.6875rem; font-weight: 600; }
.admin-dashboard-muted-status { color: var(--admin-muted); font-size: 0.6875rem; }
.admin-dashboard-evidence-list li { grid-template-columns: minmax(0, 1fr) auto auto; }
.admin-dashboard-evidence-list li > div:nth-child(2) { display: grid; gap: 0.15rem; color: var(--admin-text-soft); font-size: 0.6875rem; text-align: right; white-space: nowrap; }
.admin-dashboard-evidence-list li > div:nth-child(2) small { color: var(--admin-muted); font-size: 0.625rem; }
.admin-dashboard-readiness-list li { grid-template-columns: minmax(0, 1fr) minmax(8rem, 1fr) auto; align-items: start; }
.admin-dashboard-readiness-copy { display: grid; gap: 0.35rem; min-width: 0; }
.admin-dashboard-readiness-copy .admin-status-pill { justify-self: start; }
.admin-dashboard-readiness-copy small { color: var(--admin-muted); font-size: 0.6875rem; line-height: 1.35; }
.admin-dashboard-blocker-list { grid-column: 1 / -1; margin: 0; padding-left: 1rem; color: var(--admin-warning); font-size: 0.6875rem; line-height: 1.4; }
.admin-dashboard-sync-list article { grid-template-columns: minmax(10rem, 0.8fr) minmax(12rem, 1fr) minmax(0, 1.2fr); }
.admin-dashboard-sync-facts { display: grid; gap: 0.2rem; color: var(--admin-muted); font-size: 0.6875rem; }
.admin-dashboard-warning { margin: 0; color: var(--admin-warning); font-size: 0.6875rem; line-height: 1.35; }
.admin-dashboard-audit-list li { grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; }
.admin-dashboard-audit-list li > svg { width: 1rem; height: 1rem; color: var(--admin-muted); }
.admin-dashboard-audit-copy { display: grid; min-width: 0; gap: 0.15rem; }
.admin-dashboard-audit-copy strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.admin-dashboard-audit-copy span,
.admin-dashboard-audit-copy small { overflow: hidden; color: var(--admin-muted); font-size: 0.6875rem; line-height: 1.35; text-overflow: ellipsis; white-space: nowrap; }
.admin-dashboard-audit-copy small { font-size: 0.625rem; }

@media (max-width: 900px) {
  .admin-dashboard-main-grid,
  .admin-dashboard-detail-grid { grid-template-columns: 1fr; }
  .admin-dashboard-sync-list article { grid-template-columns: minmax(10rem, 0.8fr) minmax(0, 1fr); }
  .admin-dashboard-sync-list article .admin-dashboard-warning { grid-column: 1 / -1; }
}

@media (max-width: 767px) {
  .admin-dashboard-heading .admin-module-actions { align-items: stretch; }
  .admin-dashboard-heading .admin-module-actions > * { flex: 1 1 auto; justify-content: center; }
  .admin-active-events-grid { grid-template-columns: 1fr; }
  .admin-dashboard-evidence-list li,
  .admin-dashboard-readiness-list li { grid-template-columns: minmax(0, 1fr) auto; }
  .admin-dashboard-evidence-list li > div:nth-child(2) { grid-column: 1; justify-self: start; text-align: left; }
  .admin-dashboard-evidence-list li .admin-dashboard-row-action { grid-column: 2; grid-row: 1 / span 2; }
  .admin-dashboard-readiness-copy { grid-column: 1; }
  .admin-dashboard-readiness-list li .admin-dashboard-row-action { grid-column: 2; grid-row: 1 / span 2; }
  .admin-dashboard-sync-list article { grid-template-columns: 1fr; }
  .admin-dashboard-sync-list article .admin-dashboard-warning { grid-column: auto; }
  .admin-dashboard-audit-list li { grid-template-columns: auto minmax(0, 1fr); }
  .admin-dashboard-audit-list li time { grid-column: 2; }
}

@media (max-width: 600px) {
  .event-create-page { padding-top: 0.6rem; }
  .event-create-heading { margin-bottom: 0.75rem; }
  .event-create-heading > p:last-child { font-size: 0.82rem; }
  .event-create-steps { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .event-create-step { grid-template-columns: 1.55rem minmax(0, 1fr); justify-items: initial; text-align: left; }
  .event-create-step:last-child { grid-column: 1 / -1; }
  .event-create-step > span { width: 1.55rem; height: 1.55rem; }
  .event-create-workspace.panel { padding: 0.85rem; }
  .event-create-panel-heading { align-items: start; flex-direction: column; gap: 0.35rem; }
  .event-create-panel-heading > p { font-size: 0.76rem; }
  .event-create-fields,
  .signup-field-list,
  .signup-settings-grid,
  .event-create-summary { grid-template-columns: 1fr; }
  .event-create-field.full-field { grid-column: auto; }
  .event-create-field.compact-field,
  .planning-fields .event-create-field,
  .signup-code-field { max-width: none; }
  .custom-question-heading { align-items: start; }
  .custom-question-heading .btn { flex: 0 0 auto; }
  .information-callout { align-items: start; flex-direction: column; gap: 0.2rem; }
  .event-create-guided-actions { flex-wrap: wrap; }
  .event-create-guided-actions > span { order: -1; width: 100%; text-align: center; }
  .event-create-guided-actions [data-create-next],
  .event-create-guided-actions [data-create-submit] { margin-left: auto; }
}

th,
td {
  padding: 0.8rem;
  border-bottom: 1px solid var(--border);
  text-align: left;
  vertical-align: top;
}

th {
  color: var(--muted);
  font-size: 0.78rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.badge-status {
  display: inline-block;
  padding: 0.25rem 0.55rem;
  border-radius: 999px;
  background: var(--surface-raised);
}

.badge-full { color: #a9e4af; }
.badge-correctiononly { color: #f0ca7a; }
.badge-disabled { color: #ff9b91; }

.event-index-page {
  padding: 1rem 0 4rem;
}

.event-index-heading {
  margin-bottom: 0.8rem;
}

.event-index-heading h1 {
  font-size: var(--page-title-size);
}

.event-list-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  margin-bottom: 0.65rem;
}

.event-filters {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
}

.event-filter {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  padding: 0.38rem 0.65rem;
  color: var(--muted);
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: 999px;
  font-size: 0.78rem;
  font-weight: 600;
  text-decoration: none;
}

.event-filter:hover,
.event-filter.active {
  color: var(--text);
  border-color: var(--accent);
}

.event-filter.active {
  background: color-mix(in srgb, var(--accent) 13%, var(--surface));
}

.event-filter span {
  display: grid;
  min-width: 1.35rem;
  height: 1.35rem;
  padding: 0 0.3rem;
  place-items: center;
  color: var(--text);
  background: var(--surface-raised);
  border-radius: 999px;
  font-size: 0.72rem;
}

.event-table-wrap {
  margin-top: 0;
  padding: 0.35rem 0.8rem;
}

.event-table td {
  padding: 0.65rem 0.7rem;
  font-size: 0.92rem;
  vertical-align: middle;
}

.event-table th {
  padding: 0.6rem 0.7rem;
  font-size: 0.7rem;
}

.event-table td > strong,
.event-date-cell strong,
.event-signup-cell strong {
  font-weight: 650;
}

.event-table small,
.event-date-cell strong,
.event-signup-cell strong {
  display: block;
}

.event-table small {
  margin-top: 0.15rem;
  color: var(--muted);
}

.event-date-cell {
  min-width: 12rem;
}

.event-signup-cell {
  min-width: 15rem;
}

.event-list-status {
  display: inline-flex;
  width: fit-content;
  padding: 0.32rem 0.58rem;
  color: var(--muted);
  background: var(--surface-raised);
  border: 1px solid transparent;
  border-radius: 999px;
  font-size: 0.72rem;
  font-weight: 700;
  white-space: nowrap;
}

.event-list-status.state-signupopen { color: #d7fbf7; background: #164a47; border-color: #28726d; }
.event-list-status.state-setup,
.event-list-status.state-draft,
.event-list-status.state-signupclosed { color: #dcecff; background: #203c5c; border-color: #355f8d; }
.event-list-status.state-live { color: #d9f5dc; background: #244b2b; border-color: #3d7447; }
.event-list-status.state-awaitingfinalreview { color: #ffe7c2; background: #5b3b17; border-color: #8a5d27; }
.event-list-status.state-finalized { color: #fff0bd; background: #594713; border-color: #8c7023; }
.event-list-status.state-archived { color: #dedbd3; background: #37342f; border-color: #575149; }

.attention-count {
  color: var(--text);
  font-size: 0.88rem;
  font-weight: 600;
}

.muted-value {
  color: var(--muted);
}

.event-row-action {
  font-size: 0.88rem;
  white-space: nowrap;
}

.event-list-empty {
  padding: 2rem;
  text-align: center;
}

.event-list-empty h2,
.event-list-empty p {
  margin: 0;
}

.event-list-empty p {
  margin-top: 0.35rem;
  color: var(--muted);
}

/* Event management workspace */
.event-manage-page { --event-major-gap: 1.5rem; --event-section-inset: 1rem; --event-label-gap: 0.4rem; padding: 0.5rem 0 4rem; }
.event-manage-title-row { display: flex; flex-wrap: wrap; gap: 0.65rem; align-items: center; }
.event-manage-title-row .event-list-status { align-self: center; }
.event-manage-section,
.event-participants-section { margin-top: var(--event-major-gap); padding-top: var(--event-section-inset); border-top: 1px solid var(--border); }
.event-manage-section { margin-bottom: 0; }
.event-manage-section > .eyebrow { margin-bottom: var(--event-label-gap); }
.event-manage-section-heading,
.event-participants-heading { display: flex; justify-content: space-between; gap: 1.5rem; align-items: end; margin-bottom: 0.75rem; }
.event-manage-section-heading h2,
.event-participants-heading h2 { margin: 0; font-size: 1.35rem; }
.event-manage-section-heading > p,
.event-participants-heading > div > p:last-child { max-width: 28rem; margin: 0; color: var(--muted); font-size: 0.8rem; text-wrap: balance; }
.event-control-workspace { display: grid; grid-template-columns: 1fr; gap: 0.75rem; align-items: start; }
.event-control-workspace > .panel { margin-top: 0; }
.event-admin-controls > header { display: flex; justify-content: space-between; gap: 1rem; align-items: center; }
.event-admin-control-group { display: grid; grid-template-columns: minmax(9rem, 0.7fr) minmax(15rem, 1.3fr); gap: 0.7rem 1rem; align-items: center; margin-top: 0.8rem; padding-top: 0.8rem; border-top: 1px solid var(--border); }
.event-signup-toggle-form.button-only .btn { grid-column: 2; }
.event-signup-toggle-form.has-reason label { grid-column: 1; }
.event-signup-toggle-form.has-reason input { grid-column: 1; }
.event-signup-toggle-form.has-reason .btn { grid-column: 2; grid-row: 2; }
.event-admin-event-actions { display: flex; flex-wrap: wrap; gap: 0.4rem; justify-content: flex-end; align-items: center; }
.event-admin-event-actions form { margin: 0; }
.event-reopen-form { display: grid; grid-template-columns: minmax(13rem, 1fr) minmax(13rem, 1fr) auto; gap: 0.5rem; align-items: end; grid-column: 1 / -1; margin-top: 0.1rem; padding-top: 0.7rem; border-top: 1px solid var(--border); }
.event-reopened-note { grid-column: 1 / -1; color: var(--muted); }
.event-code-toggle-form { display: flex; align-self: center; justify-content: flex-end; margin: 0; }
.event-admin-code-group .event-evidence-content { grid-column: 1 / -1; width: 100%; }
.event-evidence-settings { margin-bottom: 2rem; padding: 1rem; }
.event-evidence-settings > header { display: flex; justify-content: space-between; gap: 1.5rem; align-items: center; }
.event-evidence-settings h2 { margin: 0; font-size: 1.25rem; }
.event-evidence-settings header p:last-child { max-width: 44rem; margin: 0.25rem 0 0; color: var(--muted); font-size: 0.78rem; }
.event-evidence-content { display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(15rem, 0.75fr); gap: 1rem; margin-top: 1rem; padding-top: 1rem; border-top: 1px solid var(--border); }
.event-evidence-form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.65rem; align-content: start; }
.event-evidence-form > div { display: grid; gap: 0.3rem; }
.event-evidence-note,
.event-evidence-actions { grid-column: 1 / -1; }
.event-evidence-actions { display: flex !important; gap: 0.45rem !important; }
.event-code-history { padding-left: 1rem; border-left: 1px solid var(--border); }
.event-code-history h3 { margin: 0 0 0.55rem; font-size: 0.85rem; }
.event-code-history > p { color: var(--muted); font-size: 0.76rem; }
.event-code-history ul { display: grid; gap: 0.4rem; max-height: 14rem; margin: 0; padding: 0; overflow: auto; list-style: none; }
.event-code-history li { display: grid; grid-template-columns: auto 1fr; gap: 0.1rem 0.55rem; padding: 0.5rem; background: var(--surface-raised); border-radius: 0.45rem; font-size: 0.72rem; }
.event-code-history li strong { color: var(--accent); }
.event-code-history li span { text-align: right; }
.event-code-history li small { grid-column: 1 / -1; color: var(--muted); }
.event-participants-heading .eyebrow { margin-bottom: 0.3rem; }
.event-participants-heading h2 + p { margin-top: 0.3rem !important; }
.event-participants-heading > div:last-child { display: flex; gap: 0.45rem; }
.participant-group-list { display: grid; gap: 0.65rem; }
.participant-group { position: relative; margin-top: 0; padding: 0; overflow: hidden; }
.participant-group > summary { display: flex; justify-content: space-between; gap: 1rem; align-items: center; min-height: 3.7rem; padding: 0.8rem 17.5rem 0.8rem 0.9rem; cursor: pointer; list-style: none; }
.participant-group > summary::-webkit-details-marker { display: none; }
.participant-group > summary::before { content: "›"; color: var(--muted); font-size: 1.2rem; transition: transform 160ms ease; }
.participant-group[open] > summary::before { transform: rotate(90deg); }
.participant-group > summary > span:first-of-type { display: grid; flex: 1; gap: 0.1rem; }
.participant-group summary strong { font-size: 0.86rem; }
.participant-group summary small { color: var(--muted); font-size: 0.72rem; }
.participant-group-tools { position: absolute; top: 0.82rem; right: 0.9rem; display: flex; gap: 0.45rem; align-items: center; }
.participant-group-tools input { width: min(14rem, 24vw); min-height: 2rem; padding: 0.32rem 0.55rem; color: var(--text); background: var(--page); border: 1px solid var(--border); border-radius: 0.4rem; font-size: 0.72rem; }
.participant-group-tools input:focus { border-color: var(--admin-focus-accent, var(--accent)); outline: 2px solid color-mix(in srgb, var(--admin-focus-accent, var(--accent)) 25%, transparent); outline-offset: 1px; }
.participant-table-wrap { overflow-x: auto; border-top: 1px solid var(--border); }
.participant-table { width: 100%; }
.participant-table th { padding: 0.5rem 0.65rem; font-size: 0.64rem; }
.participant-sort { display: inline-flex; gap: 0.25rem; align-items: center; padding: 0; color: inherit; background: transparent; border: 0; font: inherit; letter-spacing: inherit; text-transform: inherit; cursor: pointer; }
.participant-sort:hover { color: var(--text); }
.participant-sort[data-direction="asc"]::after { content: "↑"; color: var(--accent); }
.participant-sort[data-direction="desc"]::after { content: "↓"; color: var(--accent); }
.participant-table td { padding: 0.55rem 0.65rem; font-size: 0.76rem; vertical-align: middle; }
.participant-table td > small { display: block; color: var(--muted); }
.participant-table a { text-decoration: none; }
.participant-table a:not(.participant-sort-link):hover { text-decoration: underline; }
.participant-captain { margin-top: 0.12rem; color: var(--accent) !important; }
.participant-status { font-weight: 650; }
.participant-payment-form { display: flex; align-items: center; }
.participant-payment-form select { min-width: 7rem; min-height: 1.95rem; padding: 0.28rem 1.65rem 0.28rem 0.4rem; color: var(--text); background: var(--page); border: 1px solid var(--border); border-radius: 0.35rem; font-size: 0.7rem; }
.participant-row-actions { width: 1%; min-width: 19rem; }
.participant-action-form { display: grid; grid-template-columns: minmax(6rem, 1fr) auto auto; gap: 0.3rem; }
.participant-action-form input { min-width: 0; padding: 0.34rem 0.45rem; color: var(--text); background: var(--page); border: 1px solid var(--border); border-radius: 0.35rem; font-size: 0.72rem; }
.participant-empty { padding: 1.25rem !important; color: var(--muted); text-align: center; }
.participant-search-empty td { padding: 1.25rem !important; color: var(--muted); text-align: center; }

/* Pass 3 event overview: reference structure backed by real lifecycle projections. */
.event-manage-layout { display: grid; grid-template-columns: minmax(0, 2fr) minmax(18rem, 1fr); grid-template-areas: "summary summary" "readiness dates" "operations dates"; column-gap: 1.25rem; row-gap: 1.25rem; margin-top: 0.25rem; align-items: start; }
.event-manage-main,
.event-overview { display: contents; }
.event-overview-summary { display: grid; grid-area: summary; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1.25rem; min-width: 0; }
.event-overview-metric { display: grid; min-width: 0; min-height: 6.75rem; grid-template-rows: auto 1fr; gap: 0; padding: 0.9rem; background: var(--admin-surface); border: 0; border-radius: 0.75rem; }
.event-overview-metric-header { display: flex; min-width: 0; justify-content: space-between; gap: 1rem; align-items: center; color: var(--admin-text); font-size: 0.8125rem; font-weight: 400; line-height: 1.35; }
.event-overview-metric-label { display: inline-flex; min-width: 0; align-items: center; gap: 0.5rem; overflow: hidden; }
.event-overview-metric-label > span { display: block; overflow: hidden; line-height: 1.35; text-overflow: ellipsis; white-space: nowrap; }
.event-overview-metric-icon,
.event-overview-metric-arrow { flex: 0 0 auto; width: 1rem; height: 1rem; color: currentColor; }
.event-overview-metric-arrow { width: 0.95rem; height: 0.95rem; }
.event-overview-metric-body { display: flex; min-width: 0; flex-direction: column; justify-content: flex-end; gap: 0; margin-top: 0.85rem; }
.event-overview-metric-value-row { display: flex; min-width: 0; align-items: center; justify-content: space-between; gap: 0.75rem; }
.event-overview-metric-value-row > strong { display: block; min-width: 0; overflow: hidden; color: var(--admin-text); font-size: 1.4rem; font-weight: 600; font-variant-numeric: tabular-nums; line-height: 1.25; text-overflow: ellipsis; white-space: nowrap; }
.event-overview-metric-value-row > strong small { color: var(--admin-muted); font-size: 0.75rem; font-weight: 500; }
.event-overview-metric-context { display: inline-flex; min-width: 0; max-width: 58%; align-items: center; justify-content: flex-end; gap: 0.35rem; overflow: hidden; color: var(--admin-muted); font-size: 0.6875rem; line-height: 1.3; text-align: right; text-overflow: ellipsis; white-space: nowrap; }
.event-overview-metric-dot { width: 0.45rem; height: 0.45rem; flex: 0 0 auto; background: var(--admin-muted); border-radius: 50%; }
.event-overview-metric-context.is-purple .event-overview-metric-dot { background: var(--admin-status-purple); }
.event-overview-metric-context.is-green .event-overview-metric-dot { background: var(--admin-status-green); }
.event-overview-metric-context.is-orange .event-overview-metric-dot { background: var(--admin-status-orange); }
.event-overview-metric-context.is-pink .event-overview-metric-dot { background: var(--admin-status-pink); }
.event-overview-section { min-width: 0; padding: 1.25rem; background: var(--admin-surface); border: 0; border-radius: 0.75rem; }
.event-overview-readiness-panel { grid-area: readiness; align-self: start; }
.event-overview-dates-panel { position: sticky; top: calc(var(--admin-header-height) + 1rem); grid-area: dates; align-self: start; max-height: calc(100vh - var(--admin-header-height) - 2rem); overflow-y: auto; }
.event-overview-section-heading { display: flex; justify-content: space-between; gap: 1rem; align-items: center; padding-bottom: 0.35rem; border-bottom: 0; }
.event-overview-heading-label { display: flex; gap: 0.55rem; align-items: center; }
.event-overview-section-heading h2 { margin: 0; color: var(--admin-text); font-family: inherit; font-size: 0.875rem; line-height: 1.25; }
.event-overview-blocker-link { color: var(--admin-status-yellow); font-size: 0.75rem; font-weight: 400; text-decoration: none; white-space: nowrap; }
.event-overview-row { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 0.75rem; align-items: center; margin-top: 0.6rem; padding: 0.8rem; background: var(--admin-surface-soft); border: 0; border-radius: 0.75rem; }
.event-overview-section-heading + .event-overview-row { margin-top: 0.75rem; }
.event-overview-row-icon-badge { display: grid; width: 1.65rem; height: 1.65rem; flex: 0 0 auto; place-items: center; background: color-mix(in srgb, var(--admin-status-yellow) 10%, transparent); border-radius: 0.4rem; }
.event-overview-row-icon { width: 0.95rem; height: 0.95rem; }
.event-overview-row-healthy .event-overview-row-icon-badge { color: var(--admin-status-green); background: color-mix(in srgb, var(--admin-status-green) 10%, transparent); }
.event-overview-row-blocked .event-overview-row-icon-badge { color: var(--admin-status-yellow); }
.event-overview-row strong { color: var(--admin-text); font-size: 0.78rem; font-weight: 700; line-height: 1.35; }
.event-overview-row p { margin: 0.2rem 0 0; color: #8a8a8e; font-size: 0.6875rem; line-height: 1.4; }
.event-overview-row-action { display: inline-flex; min-height: 1.8rem; align-items: center; gap: 0.35rem; padding: 0.35rem 0.55rem; color: #aaa9a5 !important; background: transparent; border: 0; border-radius: 999px; font-size: 0.6875rem; font-weight: 500; text-decoration: none; white-space: nowrap; }
.event-overview-row-action::after { content: "↗"; font-size: 0.8rem; line-height: 1; }
.event-overview-row-action:hover { color: var(--admin-text) !important; background: transparent; }
.event-overview-row-action:focus-visible { outline: 2px solid var(--admin-focus-accent-strong); outline-offset: 2px; }
.event-overview-dates { position: relative; display: grid; margin: 0; }
.event-overview-date-row { position: relative; display: grid; grid-template-columns: minmax(0, 1fr); align-items: center; padding: 0.65rem 0.5rem; border-radius: 0.6rem; }
.event-overview-date-copy { display: flex; min-width: 0; justify-content: space-between; gap: 1rem; align-items: center; }
.event-overview-dates dt { color: var(--admin-text-soft); font-size: 0.6875rem; font-weight: 500; }
.event-overview-dates dd { margin: 0; color: var(--admin-text-soft); font-size: 0.6875rem; font-variant-numeric: tabular-nums; text-align: right; }
.event-overview-status-text { font-size: 0.6875rem; font-weight: 500; }
.event-overview-status-text.is-yellow { color: var(--admin-status-yellow); }
.event-overview-status-text.is-green { color: var(--admin-status-green); }
.event-overview-information-summary { display: flex; justify-content: space-between; gap: 1rem; align-items: center; }
.event-overview-information-summary > div { min-width: 0; }
.event-overview-information-summary dd { margin: 0; }
.event-overview-information-name { overflow: hidden; }
.event-overview-information-name dd { overflow: hidden; color: var(--admin-text); font-size: 0.8125rem; font-weight: 500; white-space: normal; overflow-wrap: anywhere; }
.event-overview-information-status { display: flex; flex: 0 0 auto; justify-content: flex-end; }
.admin-status-pill { display: inline-flex; width: fit-content; min-height: 1.6rem; align-items: center; padding: 0.25rem 0.65rem; color: var(--admin-muted); background: color-mix(in srgb, var(--admin-muted) 12%, transparent); border: 0; border-radius: 999px; font-size: 0.6875rem; font-weight: 400; letter-spacing: normal; line-height: 1.2; text-transform: none; white-space: nowrap; overflow-wrap: normal; }
.admin-status-pill.is-cyan { color: var(--admin-status-cyan); background: color-mix(in srgb, var(--admin-status-cyan) 14%, transparent); }
.admin-status-pill.is-green { color: var(--admin-status-green); background: color-mix(in srgb, var(--admin-status-green) 14%, transparent); }
.admin-status-pill.is-yellow { color: var(--admin-status-yellow); background: color-mix(in srgb, var(--admin-status-yellow) 14%, transparent); }
.admin-status-pill.is-orange { color: var(--admin-status-orange); background: color-mix(in srgb, var(--admin-status-orange) 14%, transparent); }
.admin-status-pill.is-purple { color: var(--admin-status-purple); background: color-mix(in srgb, var(--admin-status-purple) 14%, transparent); }
.admin-status-pill.is-pink { color: var(--admin-status-pink); background: color-mix(in srgb, var(--admin-status-pink) 14%, transparent); }
.admin-status-pill.is-blue { color: var(--admin-status-blue); background: color-mix(in srgb, var(--admin-status-blue) 14%, transparent); }
.admin-status-pill.is-muted { color: var(--admin-muted); background: color-mix(in srgb, var(--admin-muted) 12%, transparent); }
.admin-status-pill.is-danger { color: var(--admin-danger); background: color-mix(in srgb, var(--admin-danger) 14%, transparent); }
.event-public-pages { margin-top: 0.75rem; padding-top: 0.2rem; border-top: 0; }
.event-public-pages h3 { margin: 0 0 0.6rem; padding: 0.35rem 0 0; color: var(--admin-text-soft); font-size: 0.6875rem; font-weight: 600; }
.event-public-page-row { display: flex; align-items: center; justify-content: space-between; gap: 0.75rem; margin-top: 0.4rem; padding: 0.35rem 0.45rem 0.35rem 0.65rem; background: var(--admin-page); border: 0; border-radius: 0.75rem; }
.event-public-page-row:hover, .event-public-page-row:focus-within { border-color: var(--admin-divider); }
.event-public-page-row a { color: #aaa9a5; font-size: 0.6875rem; text-decoration: none; }
.event-public-page-row a::after { margin-left: 0.35rem; content: "↗"; font-size: 0.8rem; }
.event-public-page-row a:hover { color: var(--admin-text); }
.event-copy-link { display: inline-grid; width: 1.75rem; height: 1.75rem; place-items: center; padding: 0; color: var(--admin-muted); background: transparent; border: 1px solid transparent; border-radius: 0.35rem; }
.event-copy-link:hover, .event-copy-link:focus-visible { color: var(--admin-text); background: var(--admin-surface-raised); border-color: var(--admin-border-strong); }
.event-copy-link svg { width: 0.9rem; height: 0.9rem; }
.event-control-status { display: flex; flex-wrap: wrap; gap: 0.35rem; align-items: center; color: var(--admin-muted); }
.event-control-status a { display: inline-flex; align-items: center; gap: 0.3rem; color: #aaa9a5; font-weight: 500; text-decoration: none; }
.event-control-status a::after { content: "↗"; font-size: 0.8rem; line-height: 1; }
.event-control-status a:hover { color: var(--admin-text); }
.event-confirmation-box { display: grid; gap: 0.75rem; margin-top: 0.7rem; padding: 0.75rem; background: var(--admin-surface-raised); border: 0; border-radius: 0.5rem; }
.event-confirmation-box p { margin: 0; color: var(--admin-text-soft); }
.event-confirmation-supporting { color: var(--admin-muted) !important; font-size: 0.6875rem; line-height: 1.35; }
.event-confirmation-list { display: grid; gap: 0.25rem; margin: 0; padding-left: 1rem; color: var(--admin-text-soft); font-size: 0.6875rem; line-height: 1.35; }
.event-confirmation-form { display: grid; gap: 0.75rem; }
.event-confirmation-actions { display: flex; flex-wrap: wrap; gap: 0.45rem; align-items: center; }
.admin-signup-warning-ack { display: grid; gap: 1.25rem; min-width: 0; padding: 1.25rem; background: var(--admin-surface-soft); border: 0; border-radius: 0.75rem; }
.admin-signup-warning-list { display: grid; gap: 0.5rem; margin: 0; padding: 0; list-style: none; }
.admin-signup-warning-list li { padding: 0.75rem 1rem; color: var(--admin-text-soft); background: var(--admin-surface-raised); border-radius: 0.75rem; font-size: 12px; font-weight: 400; line-height: 1.4; }
.admin-signup-warning-ack .event-confirmation-form { gap: 1.25rem; }
.admin-signup-warning-ack .event-confirmation-actions { margin: 0; }
.admin-destructive-confirmation { position: relative; display: inline-block; text-align: left; white-space: normal; }
.admin-destructive-confirmation > summary { list-style: none; cursor: pointer; }
.admin-destructive-confirmation > summary::-webkit-details-marker { display: none; }
.admin-destructive-confirmation[open] > summary { border-color: var(--admin-danger) !important; }
.admin-destructive-confirmation[open] > .event-confirmation-box { position: absolute; z-index: 20; right: 0; top: calc(100% + 0.45rem); width: min(19rem, calc(100vw - 2rem)); margin: 0; }
.event-danger-zone-container { display: flex; justify-content: space-between; gap: 1rem; align-items: center; margin-top: 1rem; padding: 1rem; color: var(--admin-text); background: color-mix(in srgb, var(--admin-danger) 7%, transparent); border: 0; border-radius: 0.75rem; }
.event-danger-zone-copy { min-width: 0; }
.event-danger-zone-copy h2 { display: flex; gap: 0.4rem; align-items: center; margin: 0; color: var(--admin-danger); }
.event-danger-zone-copy h2 svg { flex: 0 0 auto; width: 0.95rem; height: 0.95rem; }
.event-danger-zone-copy p { max-width: 42rem; margin: 0.35rem 0 0; color: var(--admin-muted); font-family: inherit; font-size: 0.6875rem; line-height: 1.4; }
.event-danger-zone-form { min-width: min(27rem, 80vw); margin-top: 0.75rem; padding-top: 0.75rem; border-top: 1px solid color-mix(in srgb, var(--admin-danger) 32%, var(--admin-border)); }
.event-danger-zone-form .form-stack { gap: 0.55rem; }
.action-danger-outline { color: var(--admin-danger) !important; background: transparent !important; border: 1px solid color-mix(in srgb, var(--admin-danger) 70%, var(--admin-border)) !important; }
.action-danger-outline:hover, .action-danger-outline:focus-visible { background: color-mix(in srgb, var(--admin-danger) 12%, transparent) !important; border-color: var(--admin-danger) !important; }
/* Pass 4: one compact signup workspace and the shared route-backed editor shell. */
.admin-shell-body .event-participants-page { width: 100%; max-width: none; }
.admin-shell-body .event-participants-page .admin-header-actions-inline { display: flex; align-items: center; justify-content: flex-end; gap: 0.75rem; flex-wrap: wrap; }
.admin-shell-body .event-participants-page .participant-settings-panel { margin: 0 0 1rem; padding: 1.25rem; background: var(--admin-surface); border: 1px solid var(--admin-border); border-radius: 0.75rem; }
.admin-shell-body .event-participants-page .participant-settings-panel .admin-section-heading { align-items: start; }
.admin-shell-body .event-participants-page .participant-settings-panel .admin-section-heading > div p { margin: 0.25rem 0 0; }
.participant-capacity-summary { color: var(--admin-text-soft); font-size: 0.75rem; font-weight: 600; white-space: nowrap; }
.participant-settings-form { display: grid; gap: 1rem; }
.participant-settings-form .event-create-fields { grid-template-columns: minmax(12rem, 18rem) minmax(0, 1fr); align-items: start; }
.participant-waiting-confirm { grid-column: 1 / -1; padding-top: 0; }
.admin-setting-toggle { display: flex; align-items: start; gap: 0.6rem; padding-top: 1.35rem; color: var(--admin-text-soft); font-size: 0.75rem; }
.admin-setting-toggle input { margin-top: 0.15rem; accent-color: var(--admin-accent); }
.admin-setting-toggle span { display: grid; gap: 0.2rem; }
.admin-setting-toggle small { color: var(--admin-muted); font-size: 0.6875rem; line-height: 1.35; }
.participant-settings-actions { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding-top: 0.9rem; border-top: 1px solid var(--admin-border); }
.admin-muted-note { margin: 0; color: var(--admin-muted); font-size: 0.6875rem; line-height: 1.4; }
.participant-field-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.75rem 1rem; }
.participant-filter-form { display: grid; grid-template-columns: minmax(14rem, 1.5fr) repeat(6, minmax(7rem, 1fr)) auto; gap: 0.75rem; align-items: end; margin-bottom: 1rem; }
.participant-filter-form .admin-search-field { align-self: end; }
.participant-filter-actions { display: flex; justify-content: flex-end; }
.participant-group-list { display: grid; gap: 1rem; }
.participant-group { background: var(--admin-surface); border: 1px solid var(--admin-border); border-radius: 0.75rem; overflow: hidden; }
.participant-group > summary { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: 0.9rem 1rem; cursor: pointer; list-style: none; }
.participant-group > summary::-webkit-details-marker { display: none; }
.participant-group > summary > span:first-child { display: grid; gap: 0.2rem; }
.participant-group > summary strong { color: var(--admin-text); font-family: Cinzel, Georgia, serif; font-size: 0.875rem; }
.participant-group > summary small { color: var(--admin-muted); font-size: 0.6875rem; line-height: 1.35; }
.participant-group-tools { display: flex; justify-content: flex-end; padding: 0 1rem 0.75rem; }
.participant-group-tools .admin-search-field { width: min(18rem, 100%); }
.participant-table-wrap { overflow-x: auto; border-top: 1px solid var(--admin-border); }
.participant-table { width: 100%; min-width: 58rem; border-collapse: collapse; color: var(--admin-text-soft); font-size: 0.6875rem; }
.participant-table th { padding: 0.6rem 0.75rem; color: var(--admin-muted); font-size: 0.625rem; font-weight: 600; text-align: left; white-space: nowrap; }
.participant-table td { padding: 0.7rem 0.75rem; border-top: 1px solid var(--admin-border); vertical-align: middle; }
.participant-table td > a { color: var(--admin-text); }
.participant-table td small { display: block; margin-top: 0.2rem; color: var(--admin-muted); font-size: 0.625rem; }
.participant-table .participant-status { color: var(--admin-text-soft); }
.participant-table .participant-captain { color: var(--admin-accent-strong); }
.participant-payment-form { display: flex; align-items: center; gap: 0.45rem; }
.participant-payment-form select { min-height: 2rem; padding: 0.25rem 1.65rem 0.25rem 0.45rem; color: var(--admin-text); background: var(--admin-surface-raised); border: 1px solid var(--admin-border-strong); border-radius: 0.4rem; font: inherit; }
.participant-payment-form .save-state { color: var(--admin-muted); font-size: 0.625rem; }
.participant-row-actions { text-align: right; white-space: nowrap; }
.participant-row-actions form { display: inline; }
.participant-row-actions .admin-button-secondary { min-height: 2rem; padding: 0.3rem 0.55rem; font-size: 0.625rem; }
.participant-empty { color: var(--admin-muted); text-align: center; }
.admin-route-dialog { box-sizing: border-box; width: min(41rem, calc(100vw - 3rem)); max-width: calc(100vw - 3rem); max-height: calc(100dvh - 3rem); padding: 0; color: var(--admin-text); background: transparent; border: 0; border-radius: 0; box-shadow: none; overflow: visible; }
.admin-route-dialog::backdrop { background: color-mix(in srgb, #05070b 72%, transparent); backdrop-filter: blur(0.25rem); }
.admin-route-dialog-close { display: inline-grid; width: 2.25rem; height: 2.25rem; place-items: center; margin: 0; padding: 0; color: var(--admin-muted); background: transparent; border: 0; border-radius: 0.5rem; }
.admin-route-dialog-close:hover { color: var(--admin-text-soft); }
.admin-route-dialog-close:focus { outline: 0; }
.admin-route-dialog-close:focus-visible { outline: 0; box-shadow: 0 0 0 2px var(--admin-search), 0 0 0 4px var(--admin-focus-accent-strong); }
.admin-route-dialog-close svg { width: 0.875rem; height: 0.875rem; pointer-events: none; }
.admin-route-dialog-content { width: 100%; max-height: min(38rem, calc(100dvh - 7rem)); overflow: auto; background: transparent; }
.admin-route-dialog-loading { margin: 0; padding: 1.25rem; color: var(--admin-muted); font-size: 0.75rem; }
.participant-add-dialog { max-width: calc(100vw - 3rem); }
.admin-route-dialog-open { overflow: hidden; }
.admin-shell-body .participant-confirmation-box { display: grid; gap: 0.75rem; padding: 0.75rem 0; border-top: 1px solid var(--admin-border); }
.admin-shell-body .participant-confirmation-box > summary { cursor: pointer; }
.admin-shell-body .participant-confirmation-box p { margin: 0; color: var(--admin-muted); font-size: 0.6875rem; line-height: 1.4; }
.admin-shell-body .participant-confirmation-box form { display: grid; gap: 0.6rem; }
.admin-shell-body .participant-admin-page { width: min(100%, 72rem); max-width: 72rem; }
.admin-shell-body .participant-admin-page .participant-admin-workspace { gap: 1rem; }
.admin-shell-body .participant-admin-page .participant-edit-card,
.admin-shell-body .participant-admin-page .participant-admin-sidebar > .panel { background: var(--admin-surface); border-color: var(--admin-border); border-radius: 0.75rem; }
.admin-shell-body .participant-admin-page .participant-field-grid > label,
.admin-shell-body .participant-admin-page .participant-wide-field,
.admin-shell-body .participant-admin-page .participant-admin-sidebar label { gap: 0.25rem; color: var(--admin-text-soft); font-size: 0.75rem; }
.admin-overlay-body { min-width: 0; }
.admin-overlay-body main { padding: 1rem; }
.admin-dialog-page { width: min(100%, 64rem); margin: 0 auto; color: var(--admin-text); font-family: inherit; }
.admin-dialog-page-kicker { margin: 0; color: var(--admin-muted); font-size: 0.625rem; font-weight: 500; line-height: 1.3; }
.admin-dialog-page-body { display: grid; gap: 1rem; padding: 1.25rem; background: transparent; border: 0; }
.admin-shell-body .admin-dialog-page-body { background: transparent; border: 0; border-radius: 0; box-shadow: none; }
.admin-dialog-section-heading { display: flex; align-items: start; justify-content: space-between; gap: 1rem; }
.admin-dialog-section-heading h4 { margin: 0; color: var(--admin-text); font-size: 0.8125rem; font-weight: 600; line-height: 1.25; }
.admin-dialog-section-heading p { margin: 0.25rem 0 0; color: var(--admin-muted); font-size: 0.6875rem; line-height: 1.4; }
.admin-dialog-form { display: grid; gap: 1rem; }
.admin-dialog-page-actions { display: flex; justify-content: flex-end; gap: 0.75rem; padding-top: 0.25rem; }
.admin-dialog-page-actions .admin-button-primary { min-width: 10rem; }
.admin-dialog-page .participant-field-grid { gap: 0.75rem 1rem; }
.admin-dialog-page .participant-field-grid .admin-field { min-width: 0; }
.admin-dialog-page .participant-field-grid .admin-field > label small { margin-left: 0.25rem; color: var(--admin-muted); font-size: 0.625rem; font-weight: 500; }

@media (max-width: 1100px) {
  .participant-filter-form { grid-template-columns: minmax(14rem, 2fr) repeat(3, minmax(8rem, 1fr)); }
  .participant-filter-actions { justify-content: flex-start; }
}

@media (max-width: 700px) {
  .admin-shell-body .event-participants-page .admin-header-actions-inline,
  .participant-settings-actions { align-items: stretch; flex-direction: column; }
  .admin-shell-body .event-participants-page .admin-header-actions-inline > * { width: 100%; text-align: center; }
  .participant-settings-form .event-create-fields,
  .participant-field-grid,
  .participant-filter-form { grid-template-columns: 1fr; }
  .participant-capacity-region .participant-capacity-field { display: grid; }
  .admin-setting-toggle { padding-top: 0; }
  .participant-filter-actions .admin-button-secondary { width: 100%; text-align: center; }
  .admin-route-dialog { width: 100vw; max-width: none; max-height: 100dvh; }
  .admin-route-dialog-content { width: 100%; max-height: calc(100dvh - 5rem); }
  .admin-overlay-body main { padding: 0.85rem; }
}

@media (max-width: 700px) {
  .admin-dialog-page-body { padding: 1rem; }
  .admin-dialog-section-heading { flex-direction: column; gap: 0.35rem; }
  .admin-dialog-page-actions { align-items: stretch; flex-direction: column; }
  .admin-dialog-page-actions .admin-button-primary { width: 100%; }
}

/* Lower Manage operations consume the shared Admin component and row primitives. */
.event-manage-page .event-control-workspace {
  gap: 0;
  font-family: "Plus Jakarta Sans", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
.event-manage-page .event-admin-lower { grid-area: operations; min-width: 0; margin-top: 0; padding-top: 0; border-top: 0; }
.event-manage-page .event-control-workspace > .panel { background: var(--admin-surface); border: 0; border-radius: 0.75rem; }
.event-manage-page .event-admin-controls { padding: 1.25rem; }
.event-manage-page .event-admin-control-group { margin-top: 0.65rem; padding: 0.9rem 1rem; background: var(--admin-surface-soft); border: 0; border-radius: 0.75rem; }
.event-manage-page .event-admin-controls > .event-admin-control-group:first-of-type { margin-top: 0; }
.event-manage-page .event-admin-control-group.event-control-group-warning { background: color-mix(in srgb, var(--admin-chart-yellow) 3%, var(--admin-surface-soft)); }
.event-manage-page .event-admin-control-group.event-control-group-success { background: color-mix(in srgb, var(--admin-chart-green) 3%, var(--admin-surface-soft)); }
.event-manage-page .event-admin-controls > .event-admin-control-group h3 { margin: 0; color: var(--admin-text); font-family: inherit; font-size: 0.75rem; line-height: 1.35; }
.event-manage-page .event-admin-controls > .event-admin-control-group p { margin: 0; color: var(--admin-muted); font-size: 0.6875rem; line-height: 1.4; }
.event-manage-page .event-admin-controls .event-create-cancel { grid-column: auto; grid-row: auto; align-self: auto; margin-top: 0; }
.event-manage-page .event-admin-controls > .event-admin-control-group > .event-control-status { justify-self: end; max-width: 100%; text-align: right; }
.event-manage-page .event-control-copy { display: grid; min-width: 0; gap: 0.18rem; align-content: start; }
.event-manage-page .event-signup-group { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; }
.event-manage-page .event-signup-group .event-admin-event-actions { display: grid; justify-items: end; }
.event-manage-page .event-signup-group .event-confirmation-box { width: min(28rem, 100%); margin-top: 0; }
.event-manage-page .event-signup-group .admin-signup-warning-ack { width: min(28rem, 100%); }
.event-manage-page .event-code-history h3 { margin-bottom: 0.55rem; }
.event-manage-page .event-admin-controls > .admin-section-heading { margin-bottom: 0.85rem; padding-bottom: 0.2rem; border-bottom: 0; }
.event-manage-page .event-admin-controls > .admin-section-heading > p { margin: 0; }
.event-manage-page .event-admin-event-actions { width: fit-content; max-width: 100%; justify-self: end; align-self: center; align-items: center; }
.event-manage-page .event-admin-event-actions .event-confirmation-box { margin-top: 0; }
.event-manage-page .event-reopen-form > button { width: fit-content; justify-self: end; }
.event-manage-page .event-code-toggle-form { width: fit-content; max-width: 100%; justify-self: end; }
.event-manage-page .event-evidence-actions { justify-content: flex-end; }
.event-manage-page .event-control-subsection { grid-column: 1 / -1; }
.event-manage-page .event-reopen-form,
.event-manage-page .event-evidence-content { border-top-color: var(--admin-border); }
.event-manage-page .event-code-history { border-left-color: var(--admin-border); }
.event-manage-page .event-wom-section { grid-template-columns: minmax(9rem, 0.7fr) minmax(15rem, 1.3fr); gap: 0.7rem 1rem; align-items: center; }
.event-manage-page .event-wom-header { display: grid; min-width: 0; gap: 0.25rem; align-items: start; }
.event-manage-page .event-wom-header > p { margin: 0; text-wrap: balance; }
.event-manage-page .event-wom-header > p.event-wom-status { justify-self: start; max-width: 32rem; text-align: left; }
.event-manage-page .event-control-static { display: grid; min-width: 0; gap: 0.75rem; grid-column: 1 / -1; justify-items: stretch; }
.event-manage-page .event-wom-section > .event-control-static { grid-column: 2; width: 100%; max-width: 100%; justify-items: stretch; }
.event-manage-page .event-wom-form { display: flex; flex-wrap: wrap; gap: 0.75rem; align-items: end; justify-content: flex-end; width: 100%; max-width: 100%; min-width: 0; }
.event-manage-page .event-wom-form > .event-create-field { width: 7rem; flex: 0 0 7rem; }
.event-manage-page .event-wom-form .event-create-field label { color: var(--admin-muted); font-size: 0.625rem; font-weight: 500; }
.event-manage-page .event-wom-form :is(input, select) { min-height: 2.2rem; padding: 0.35rem 0.55rem; font-size: 0.6875rem; }
.event-manage-page .event-wom-form > .event-create-field input { width: 100%; min-width: 0; max-width: none; }
.event-manage-page .event-wom-form input[type="number"] { appearance: textfield; -moz-appearance: textfield; }
.event-manage-page .event-wom-form input[type="number"]::-webkit-inner-spin-button,
.event-manage-page .event-wom-form input[type="number"]::-webkit-outer-spin-button { margin: 0; -webkit-appearance: none; }
.event-manage-page .event-wom-schedule-field { display: grid; min-width: 0; gap: 0.25rem; }
.event-manage-page .event-wom-form .event-wom-schedule-field { width: 11rem; max-width: 11rem; flex: 0 0 11rem; }
.event-manage-page .event-wom-select-wrap { position: relative; min-width: 0; }
.event-manage-page .event-wom-select-wrap .form-select { width: 100%; overflow: hidden; padding-right: 1.9rem; appearance: none; -webkit-appearance: none; text-overflow: ellipsis; white-space: nowrap; }
.event-manage-page .event-wom-select-chevron { position: absolute; top: 50%; right: 0.6rem; width: 0.8rem; height: 0.8rem; pointer-events: none; color: var(--admin-muted); transform: translateY(-50%); }
.event-manage-page .event-wom-form > button { flex: 0 0 auto; align-self: end; width: fit-content; min-width: 0; max-width: 100%; min-height: 2.2rem; margin-top: 1.05rem; overflow: hidden; font-size: 0.6875rem; text-overflow: ellipsis; white-space: nowrap; }
.event-manage-page .event-control-static > form:not(.event-wom-form) { width: auto; justify-self: start; }
.event-manage-page .event-wom-budget { margin: 0; color: var(--admin-muted); }
.event-manage-page .event-wom-status-value { display: inline; font-weight: 600; }
.event-manage-page .event-wom-status-value.event-wom-status-danger { color: var(--admin-danger); }
.event-manage-page .event-wom-status-value.event-wom-status-success { color: var(--admin-success); }
.event-manage-page .event-wom-status-value.event-wom-status-warning { color: var(--admin-warning); }
.event-manage-page .event-wom-status-value.event-wom-status-info { color: var(--admin-muted); }
.event-manage-page .event-danger-zone-copy h2 { font-family: inherit; font-size: 0.75rem; font-weight: 700; line-height: 1.25; }
.event-manage-page .event-danger-zone .action-danger-outline svg { width: 0.875rem; height: 0.875rem; flex: 0 0 auto; }
.event-manage-page .event-danger-zone { border-top-color: color-mix(in srgb, var(--admin-danger) 70%, var(--admin-border)); }
.event-manage-page .event-danger-zone h3 { color: var(--admin-danger); }
.event-manage-page .event-danger-zone-form {
  display: grid;
  width: min(26rem, 100%);
  max-width: 26rem;
  min-width: 0;
  margin: 0;
  padding: 0.65rem;
  color: var(--admin-text);
  background: var(--admin-surface-raised);
  border: 1px solid var(--admin-border);
  border-radius: 0.5rem;
  font-family: "Plus Jakarta Sans", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
.event-manage-page .event-danger-zone-form > p {
  margin: 0 0 0.55rem;
  color: var(--admin-muted);
  font-family: inherit;
  font-size: 0.6875rem;
  line-height: 1.4;
}
.event-manage-page .event-danger-zone-form .event-create-field { gap: 0.25rem; }
.event-manage-page .event-danger-zone-form .event-create-field label {
  color: var(--admin-text-soft);
  font-family: inherit;
  font-size: 0.6875rem;
  line-height: 1.4;
}
.event-manage-page .event-danger-zone-form .event-create-field textarea.form-control {
  min-height: 2.75rem;
  height: 2.75rem;
  padding: 0.35rem 0.55rem;
  font-family: inherit;
  font-size: 0.6875rem;
  line-height: 1.4;
  resize: vertical;
}

@media (max-width: 1100px) {
  .event-manage-layout { grid-template-columns: 1fr; grid-template-areas: "summary" "readiness" "operations"; }
  .event-overview-dates-panel { display: none; }
  .event-overview-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .admin-header-blockers { display: none; }
  .event-manage-page .event-wom-section { grid-template-columns: 1fr; }
  .event-manage-page .event-wom-section > .event-control-static { grid-column: 1; }
  .event-manage-page .event-wom-form { width: 100%; }
  .event-manage-page .event-wom-form .event-wom-schedule-field { width: 11rem; max-width: 11rem; }
}

@media (max-width: 900px) {
  .event-evidence-content { grid-template-columns: 1fr; }
  .event-code-history { padding: 1rem 0 0; border-top: 1px solid var(--border); border-left: 0; }
}

@media (max-width: 600px) {
  .event-manage-page { padding-top: 0.6rem; }
  .event-manage-section-heading,
  .event-participants-heading,
  .event-evidence-settings > header { align-items: stretch; flex-direction: column; }
  .event-manage-title-row { align-items: start; flex-direction: column; gap: 0.45rem; }
  .event-admin-control-group { grid-template-columns: 1fr; }
  .event-manage-page .event-wom-section { grid-template-columns: 1fr; }
  .event-manage-page .event-wom-header { grid-template-columns: 1fr; }
  .event-manage-page .event-wom-header > p.event-wom-status { justify-self: start; text-align: left; }
  .event-manage-page .event-control-static { justify-items: stretch; }
  .event-manage-page .event-wom-section > .event-control-static { width: 100%; justify-items: stretch; }
  .event-manage-page .event-wom-form { align-items: stretch; flex-direction: column; width: 100%; }
  .event-manage-page .event-wom-form > .event-create-field,
  .event-manage-page .event-wom-form .event-wom-schedule-field { width: 100%; max-width: none; flex-basis: auto; }
  .event-manage-page .event-wom-form > .event-create-field input,
  .event-manage-page .event-wom-form .event-wom-schedule-field { width: 100%; max-width: none; }
  .event-manage-page .event-wom-form > button { margin-top: 0; align-self: start; }
  .event-danger-zone-container { align-items: stretch; flex-direction: column; }
  .event-manage-page .event-danger-zone-form { width: 100%; max-width: none; }
  .event-manage-page .event-signup-group { grid-template-columns: 1fr; }
  .event-manage-page .event-admin-event-actions,
  .event-manage-page .event-code-toggle-form { width: fit-content; max-width: 100%; justify-self: start; }
  .event-manage-page .event-signup-group .event-admin-event-actions { width: 100%; justify-items: stretch; }
  .event-manage-page .event-signup-group .event-create-cancel { display: inline-flex; margin-top: 0; }
  .event-admin-event-actions { display: flex; justify-content: flex-start; }
  .event-manage-page .event-admin-event-actions,
  .event-manage-page .event-code-toggle-form { width: 100%; max-width: 100%; justify-self: stretch; }
  .event-manage-page .event-admin-event-actions > form,
  .event-manage-page .event-code-toggle-form > form { max-width: 100%; }
  .event-reopen-form { grid-template-columns: 1fr; }
  .event-manage-page .event-reopen-form > button { justify-self: start; }
  .event-code-toggle-form { justify-content: flex-start; }
  .event-evidence-form { grid-template-columns: 1fr; }
  .event-evidence-note,
  .event-evidence-actions { grid-column: auto; }
  .event-evidence-actions { flex-direction: column; }
  .event-manage-page .event-evidence-actions { align-items: flex-start; }
  .event-participants-heading > div:last-child { display: grid; grid-template-columns: 1fr; }
  .event-overview-summary { grid-template-columns: 1fr; }
  .event-overview-row { grid-template-columns: auto minmax(0, 1fr); }
  .event-overview-row > a { grid-column: 2; justify-self: start; }
  .participant-group > summary { min-height: 0; padding-right: 0.9rem; }
  .participant-group-tools { position: static; justify-content: flex-end; padding: 0 0.9rem 0.75rem 2.9rem; }
  .participant-group-tools input { width: min(14rem, 70vw); }
  .participant-table thead { display: none; }
  .participant-table,
  .participant-table tbody,
  .participant-table tr,
  .participant-table td { display: block; width: 100%; }
  .participant-table tr { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); padding: 0.7rem; border-bottom: 1px solid var(--border); }
  .participant-table tr:last-child { border-bottom: 0; }
  .participant-table td { display: grid; gap: 0.15rem; padding: 0.3rem; border: 0; }
  .participant-table td::before { content: attr(data-label); color: var(--muted); font-size: 0.62rem; font-weight: 700; letter-spacing: 0.05em; text-transform: uppercase; }
  .participant-row-actions { grid-column: 1 / -1; min-width: 0; }
  .participant-row-actions::before { content: none !important; }
  .participant-payment-form { align-items: stretch; flex-direction: column; }
  .participant-payment-form select { width: 100%; }
  .participant-action-form { grid-template-columns: 1fr 1fr; }
  .participant-action-form input { grid-column: 1 / -1; min-height: 2.3rem; }
}

@media (min-width: 901px) {
  .event-overview-section { padding: 1.5rem; }
}

.details-list p {
  display: grid;
  grid-template-columns: minmax(8rem, 12rem) 1fr;
  gap: 1rem;
  margin: 0;
  padding: 0.55rem 0;
  border-bottom: 1px solid var(--border);
}

.details-list p:last-child {
  border-bottom: 0;
}

.my-accounts-page { max-width: 56rem; }
.my-accounts-list > .page-heading { align-items: start; margin-bottom: 0.8rem; }
.my-accounts-list > .page-heading h2 { margin: 0; font-size: 1.2rem; }
.my-accounts-list > .page-heading p { max-width: 34rem; margin: 0.25rem 0 0; color: var(--muted); font-size: 0.82rem; }
.my-accounts-list-items { display: grid; gap: 0.75rem; margin: 0; padding: 0; list-style: none; }
.my-account-card { display: grid; gap: 0.7rem; padding: 0.85rem; background: color-mix(in srgb, var(--surface-raised) 45%, var(--surface)); border: 1px solid var(--border); border-radius: 0.55rem; }
.my-account-card > header, .my-account-card > header > div, .my-account-actions, .my-account-order { display: flex; flex-wrap: wrap; gap: 0.5rem; align-items: center; }
.my-account-card > header { justify-content: space-between; gap: 0.75rem; }
.my-account-card form { margin: 0; }
.my-account-position { color: var(--muted); font-size: 0.75rem; font-variant-numeric: tabular-nums; }
.account-state { padding: 0.15rem 0.4rem; color: var(--accent); border: 1px solid color-mix(in srgb, var(--accent) 58%, var(--border)); border-radius: 999px; font-size: 0.68rem; font-weight: 700; }
.account-entry-form { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 0.55rem 0.7rem; align-items: end; }
.account-entry-form > label, .account-entry-form > .field-error, .account-entry-form > .form-hint { grid-column: 1 / -1; }
.account-entry-form > button { width: fit-content; }
.account-entry-form.compact { grid-template-columns: minmax(0, 1fr) minmax(0, 9rem) auto; }
.account-entry-form.compact > label { grid-column: auto; }
.my-account-correction summary { width: fit-content; color: var(--accent); cursor: pointer; }
.my-account-correction .account-entry-form { margin-top: 0.7rem; }
.account-warning { border-color: color-mix(in srgb, var(--danger) 60%, var(--border)); }
.empty-drop-list { display: grid; gap: 0.25rem; }
@media (max-width: 650px) {
  .account-entry-form, .account-entry-form.compact { grid-template-columns: 1fr; }
  .account-entry-form.compact > label { grid-column: 1; }
  .my-account-card > header { align-items: start; flex-direction: column; }
}

.admin-links a {
  color: inherit;
  text-decoration: none;
}

.admin-home > .eyebrow {
  margin-bottom: 0.35rem;
}

.admin-home > h1 {
  margin-bottom: 1.25rem;
  font-size: var(--page-title-size);
}

.evidence-code-banner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 1rem;
  border: 1px solid color-mix(in srgb, var(--accent) 70%, var(--border));
}

.evidence-code-banner strong {
  color: var(--accent);
  font-size: clamp(1.3rem, 4vw, 2rem);
  letter-spacing: 0.08em;
}

.captain-board {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(14rem, 1fr));
  gap: 1rem;
}

.captain-tile {
  display: flex;
  flex-direction: column;
  gap: 0.65rem;
}

.captain-tile.complete {
  border-color: rgba(114, 184, 121, 0.75);
  background: color-mix(in srgb, var(--surface) 88%, #4b8f52);
}

.captain-tile .btn {
  align-self: flex-start;
  margin-top: auto;
}

.evidence-drop {
  display: grid;
  place-items: center;
  gap: 0.4rem;
  min-height: 10rem;
  padding: 1.25rem;
  border: 2px dashed var(--border);
  border-radius: 0.75rem;
  text-align: center;
}

.evidence-drop.dragging {
  border-color: var(--accent);
  background: color-mix(in srgb, var(--surface) 85%, var(--accent));
}

.evidence-input-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.75rem;
  align-items: center;
}

.paste-status {
  min-height: 1.25rem;
  color: var(--muted);
}

.evidence-drop img,
.evidence-preview,
.evidence-viewer img {
  display: block;
  max-width: 100%;
  max-height: 70vh;
  object-fit: contain;
  border-radius: 0.5rem;
}

.evidence-lightbox-trigger {
  display: block;
  width: 100%;
  padding: 0;
  border: 0;
  background: transparent;
  cursor: zoom-in;
}

.evidence-lightbox {
  width: min(96vw, 90rem);
  height: min(94vh, 70rem);
  padding: 3rem 1rem 1rem;
  border: 1px solid var(--border);
  border-radius: 0.75rem;
  background: #090806;
  color: var(--text);
}

.evidence-lightbox::backdrop {
  background: rgba(0, 0, 0, 0.86);
}

.evidence-lightbox img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.evidence-lightbox .dialog-close {
  position: absolute;
  top: 0.35rem;
  right: 0.75rem;
}

.review-layout {
  display: grid;
  grid-template-columns: minmax(0, 2fr) minmax(16rem, 1fr);
  gap: 1rem;
  align-items: start;
}

.filter-bar {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  align-items: center;
}

.filter-bar select {
  flex: 1 1 12rem;
}

.footer {
  flex-shrink: 0;
  margin-top: auto;
  padding: 1.25rem 0;
  color: var(--muted) !important;
  border-color: var(--border) !important;
}

.keyboard-navigation .btn:focus-visible,
.keyboard-navigation .nav-link:focus-visible,
.keyboard-navigation .form-control:focus-visible,
.keyboard-navigation .form-select:focus-visible,
.keyboard-navigation .form-check-input:focus-visible,
.keyboard-navigation a:focus-visible,
.keyboard-navigation button:focus-visible,
.keyboard-navigation select:focus-visible,
.keyboard-navigation textarea:focus-visible,
.keyboard-navigation summary:focus-visible,
.keyboard-navigation [tabindex]:focus-visible {
  outline: 2px solid color-mix(in srgb, var(--admin-focus-accent, var(--accent)) 55%, transparent);
  outline-offset: 2px;
  border-radius: 0.3rem;
  box-shadow: none;
}

.pointer-navigation :is(a, button, input, select, textarea, summary):focus-visible {
  outline: none !important;
  box-shadow: none !important;
}
.pointer-navigation [tabindex]:focus-visible {
  outline: none !important;
  box-shadow: none !important;
}

.app-nav .nav-link:focus-visible,
.app-nav .navbar-brand:focus-visible {
  background: color-mix(in srgb, var(--accent) 12%, transparent);
}

.evidence-image-button:focus-visible {
  outline-offset: -3px;
}

.status-code-page {
  max-width: 46rem;
  margin: 4rem auto;
  padding: clamp(1.5rem, 5vw, 3rem);
  text-align: center;
}

.status-code-page h1 {
  font-size: var(--page-title-size);
}

.status-code-page > p:not(.eyebrow) {
  margin: 1rem auto 1.5rem;
  color: var(--muted);
}

@media (max-width: 767px) {
  .hero {
    padding-top: 3rem;
  }

  .foundation-grid {
    grid-template-columns: 1fr;
  }

  .form-grid,
  .action-grid {
    grid-template-columns: 1fr;
  }

  .compact-board-setup { grid-template-columns: 1fr; }
  .board-toolbar { align-items: stretch; flex-direction: column; }
  .board-toolbar details { margin-left: 0; }
  .toolbar-popover { position: static; width: auto; }
  .catalogue-heading { align-items: stretch; flex-direction: column; }
  .catalogue-toolbar { align-items: stretch; flex-direction: column-reverse; }
  .catalogue-search { width: 100%; }
  .catalogue-page { padding-top: 0.8rem; }
  .catalogue-page-heading { align-items: stretch; }
  .catalogue-heading-actions { justify-content: stretch; }
  .catalogue-heading-actions .btn { flex: 1; }
  .catalogue-filters { flex-wrap: nowrap; margin-right: -0.75rem; padding-right: 0.75rem; overflow-x: auto; scrollbar-width: none; }
  .catalogue-filter { flex: 0 0 auto; }
  .catalogue-record-summary { grid-template-columns: 3.1rem minmax(0, 1fr) auto; gap: 0.6rem; min-height: 4.15rem; padding: 0.5rem 0.6rem; }
  .catalogue-record-summary::after { grid-column: 3; grid-row: 2; justify-self: end; }
  .catalogue-record-summary > .catalogue-status { grid-column: 3; grid-row: 1; }
  .catalogue-image-placeholder { width: 3rem; height: 3rem; }
  .catalogue-record-title > small { white-space: normal; }
  .catalogue-record-body { padding: 0.65rem; }
  .catalogue-source-fields { grid-template-columns: 1fr; }
  .catalogue-save-boss { justify-self: stretch; }
  .catalogue-additional-grid, .catalogue-dialog-grid { grid-template-columns: 1fr; }
  .catalogue-source-actions { align-items: stretch; flex-direction: column; }
  .catalogue-source-actions > div:last-child { justify-content: space-between; }
  .catalogue-drop-edit-form { grid-template-columns: 1fr; }
  .catalogue-drop-card-actions { align-items: stretch; }
  .catalogue-drop-card-actions > button,
  .catalogue-drop-card-actions > form { flex: 1; }
  .catalogue-drop-card-actions .btn { width: 100%; }
  .catalogue-editor-dialog { width: calc(100vw - 1rem); max-height: calc(100vh - 1rem); }
  .eligible-drop-group { grid-template-columns: 1fr; }
  .evidence-code-banner { align-items: flex-start; flex-direction: column; }
  .event-index-page { padding-top: 1rem; }
  .event-list-toolbar { align-items: stretch; flex-direction: column; }
  .event-create-button { align-self: flex-end; padding: 0.45rem 0.65rem; }
  .event-filters { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.4rem; }
  .event-filter { justify-content: space-between; min-width: 0; }
  .event-table-wrap { padding: 0; border: 0; background: transparent; overflow: visible; }
  .event-table,
  .event-table tbody,
  .event-table tr,
  .event-table td { display: block; width: 100%; }
  .event-table thead { display: none; }
  .event-table tbody { display: grid; gap: 0.65rem; }
  .event-table tr { padding: 0.8rem; background: var(--surface); border: 1px solid var(--border); border-radius: 0.7rem; }
  .event-table td { display: grid; grid-template-columns: 7.5rem minmax(0, 1fr); gap: 0.65rem; padding: 0.3rem 0; border: 0; }
  .event-table td::before { color: var(--muted); content: attr(data-label); font-size: 0.72rem; font-weight: 700; letter-spacing: 0.05em; text-transform: uppercase; }
  .event-table td > strong,
  .event-table td > small,
  .event-table td > span { grid-column: 2; }
  .event-table .event-row-action { display: block; margin-top: 0.35rem; padding-top: 0.65rem; border-top: 1px solid var(--border); text-align: right; }
  .event-table .event-row-action::before { content: none; }
  .event-date-cell,
  .event-signup-cell { min-width: 0; }
}
.participant-admin-page { padding-top: 2rem; }
.admin-shell-body .participant-admin-page .participant-read-only-note { margin: 0 0 1rem; }
.participant-admin-heading {
  display: flex;
  justify-content: space-between;
  gap: 1.5rem;
  align-items: end;
  margin-bottom: 1.35rem;
}
.participant-admin-heading .eyebrow { margin-bottom: 0.25rem; }
.participant-admin-heading h1 { margin: 0; }
.participant-admin-heading p:last-child { margin: 0.35rem 0 0; color: var(--muted); }
.participant-admin-title-row { display: flex; flex-wrap: wrap; gap: 0.75rem; align-items: center; }
.participant-status-badge {
  display: inline-flex;
  align-items: center;
  min-height: 1.8rem;
  padding: 0.25rem 0.7rem;
  color: var(--text);
  background: color-mix(in srgb, var(--muted) 16%, var(--surface));
  border: 1px solid var(--border);
  border-radius: 999px;
  font-size: 0.72rem;
  font-weight: 700;
}
.participant-status-badge.status-confirmed { color: #d7f4da; background: rgba(64, 136, 76, 0.28); border-color: rgba(114, 184, 121, 0.55); }
.participant-status-badge.status-waitinglist { color: #d8ecfb; background: rgba(62, 115, 158, 0.28); border-color: rgba(107, 169, 220, 0.55); }
.participant-status-badge.status-withdrawn,
.participant-status-badge.status-removed { color: #f9e5bd; background: rgba(135, 93, 39, 0.28); border-color: rgba(228, 184, 95, 0.5); }
.participant-admin-workspace {
  display: grid;
  grid-template-columns: minmax(0, 2fr) minmax(18rem, 0.8fr);
  gap: 1rem;
  align-items: start;
}
.participant-admin-workspace > .panel,
.participant-admin-sidebar > .panel { margin-top: 0; }
.participant-edit-card { display: grid; gap: 1.15rem; }
.participant-edit-card > header {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  align-items: center;
  padding-bottom: 0.85rem;
  border-bottom: 1px solid var(--border);
}
.participant-edit-card header p,
.participant-custom-answers header p { margin: 0.2rem 0 0; color: var(--muted); font-size: 0.8rem; }
.participant-field-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.8rem 1rem; }
.participant-field-grid > label,
.participant-wide-field { display: grid; gap: 0.35rem; min-width: 0; }
.participant-field-grid > label > span:first-child,
.participant-wide-field > span:first-child { font-size: 0.76rem; font-weight: 700; }
.participant-field-grid label small { margin-left: 0.3rem; color: var(--muted); font-size: 0.65rem; font-weight: 500; }
.participant-field-grid .participant-wide-field { grid-column: 1 / -1; }
.check-card {
  display: flex;
  gap: 0.55rem;
  align-items: center;
  min-height: 2.5rem;
  padding: 0.55rem 0.75rem;
  cursor: pointer;
  background: var(--page);
  border: 1px solid var(--border);
  border-radius: 0.45rem;
  font-weight: 500;
}
.check-card:has(input:checked) { border-color: var(--accent); background: color-mix(in srgb, var(--accent) 9%, var(--page)); }
.participant-custom-answers { display: grid; gap: 0.8rem; padding-top: 1.1rem; border-top: 1px solid var(--border); }
.participant-previous-answers { padding: 0.8rem 0; border-top: 1px solid var(--border); border-bottom: 1px solid var(--border); }
.participant-previous-answers > summary { cursor: pointer; font-weight: 700; }
.participant-previous-answers dl { margin: 0.75rem 0 0; }
.participant-previous-answers dl > div { display: grid; grid-template-columns: minmax(7rem, 0.8fr) minmax(0, 1fr); gap: 0.7rem; padding: 0.55rem 0; border-bottom: 1px solid var(--border); }
.participant-previous-answers dl > div:last-child { border-bottom: 0; }
.participant-previous-answers dt { color: var(--muted); font-size: 0.72rem; font-weight: 700; }
.participant-previous-answers dd { margin: 0; overflow-wrap: anywhere; text-align: right; }
.participant-edit-card > footer { display: flex; justify-content: flex-end; padding-top: 0.9rem; border-top: 1px solid var(--border); }
.participant-admin-sidebar { display: grid; gap: 1rem; }
.participant-summary-card header { padding-bottom: 0.65rem; border-bottom: 1px solid var(--border); }
.participant-summary-card dl { margin: 0; }
.participant-edit-link-card { display: grid; gap: 0.75rem; }
.participant-edit-link-card p { margin: 0; color: var(--muted); font-size: 0.8rem; }
.participant-copy-link { display: grid; gap: 0.55rem; }
.participant-copy-link input { width: 100%; min-width: 0; padding: 0.55rem 0.65rem; color: var(--muted); background: var(--page); border: 1px solid var(--border); border-radius: 0.4rem; font-size: 0.68rem; }
.participant-edit-link-card form .btn,
.participant-copy-link .btn { width: 100%; }

@media (max-width: 991.98px) {
  .participant-admin-workspace { grid-template-columns: 1fr; }
  .participant-admin-sidebar { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 575.98px) {
  .participant-admin-page { padding-top: 1.35rem; }
  .participant-admin-heading { align-items: flex-start; flex-direction: column; }
  .participant-admin-heading .btn { align-self: stretch; }
  .participant-edit-card > header { align-items: flex-start; flex-direction: column; }
  .participant-edit-card > header .btn { width: 100%; }
  .participant-field-grid,
  .participant-admin-sidebar { grid-template-columns: 1fr; }
  .participant-edit-card > footer .btn { width: 100%; }
}

.collaboration-status {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  border-color: rgba(224, 177, 66, .55);
}
.collaboration-status[hidden] { display: none; }
.collaboration-status > div,
.board-presence { flex-wrap: wrap; }
.collaboration-status span { display: block; color: var(--muted); }
.collaboration-update {
  position: fixed;
  right: 1rem;
  bottom: 1rem;
  z-index: 50;
  padding: .75rem 1rem;
  border: 1px solid var(--accent);
  border-radius: .5rem;
  background: var(--surface);
}
.collaboration-update[hidden] { display: none; }
.tile-dialog-details {
    width: min(48rem, calc(100vw - 2rem));
}

.tile-dialog-details > h2 {
    margin-bottom: .35rem;
}

.tile-dialog-summary {
    margin: 0;
}

.tile-dialog-section {
    margin-top: 1rem;
    padding-top: 1rem;
    border-top: 1px solid rgba(191, 164, 112, .28);
}

.tile-dialog-section > h3 {
    margin: 0 0 .65rem;
}

.tile-dialog-objectives {
    display: grid;
    gap: .65rem;
}

.tile-dialog-objective {
    padding: .8rem .9rem;
    border: 1px solid rgba(191, 164, 112, .28);
    border-radius: .65rem;
    background: rgba(255, 255, 255, .015);
}

.tile-dialog-objective p {
    margin: .55rem 0 0;
}

.tile-dialog-objective-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
}

.tile-dialog-quantity {
    color: #c8bca6;
    font-size: .88rem;
    white-space: nowrap;
}

.tile-dialog-facts {
    display: grid;
    gap: .5rem;
    margin: .65rem 0 0;
}

.tile-dialog-facts > div {
    display: grid;
    grid-template-columns: 9.5rem minmax(0, 1fr);
    gap: .75rem;
}

.tile-dialog-facts dt {
    font-weight: 700;
}

.tile-dialog-facts dd {
    margin: 0;
    color: #c8bca6;
}

.tile-dialog-ehb {
    margin: 1rem 0;
}

@media (max-width: 640px) {
    .tile-dialog-facts > div {
        grid-template-columns: 1fr;
        gap: .15rem;
    }
}

/* Compact Admin operational shell. Module bodies keep their existing routes,
   forms, feedback, and component selectors inside this shared frame. */
body.admin-shell-body {
  --page: var(--admin-page);
  --surface: var(--admin-surface);
  --surface-raised: var(--admin-surface-raised);
  --text: var(--admin-text);
  --muted: var(--admin-muted);
  --border: var(--admin-border);
  --admin-navigation-accent: #b8cd4a;
  --admin-focus-accent: var(--admin-navigation-accent);
  --admin-focus-accent-strong: var(--admin-navigation-accent);
  --accent: var(--admin-accent);
  --success: var(--admin-success);
  --warning: var(--admin-warning);
  --danger: var(--admin-danger);
  --info: var(--admin-info);
  background: var(--admin-page);
  color: var(--admin-text);
}

.admin-shell-body .admin-header,
.admin-shell-body .admin-sidebar,
.admin-shell-body .draft-page,
.admin-shell-body .event-manage-page,
.admin-shell-body .admin-events-page,
.admin-shell-body .admin-accounts-page,
.admin-shell-body .admin-catalogue-page,
.admin-shell-body .event-create-page,
.admin-shell-body .identity-editor-page,
.admin-shell-body .schedule-editor-page,
.admin-shell-body .signup-question-page,
.admin-shell-body .admin-account-route-page.is-website-account,
.admin-shell-body .admin-account-route-page.is-emergency-credential {
  --admin-text: #eaeae5;
  --admin-text-soft: #c2c2be;
  --admin-muted: #969692;
  --admin-divider: #2b2b2b;
  --admin-border: var(--admin-divider);
  --admin-border-strong: var(--admin-divider);
  font-family: "Plus Jakarta Sans", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
.admin-shell-body { --admin-content-gutter: 24px; }

.admin-shell-body input:not([type="checkbox"]):not([type="radio"]):not([type="file"])::placeholder,
.admin-shell-body textarea::placeholder {
  color: var(--admin-muted);
  font-family: inherit;
  font-size: 0.75rem;
  font-weight: 500;
  letter-spacing: normal;
  line-height: 1rem;
  opacity: 0.75;
}

/* Shared Admin primitives: Events directory and Create are the canonical
   sources; page selectors below only add layout-specific composition. */
.admin-shell-body .admin-button-primary {
  display: inline-flex;
  min-height: 2rem;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  padding: 0.4rem 0.7rem;
  color: var(--admin-text-soft);
  background: transparent;
  border: 1px solid var(--admin-border-strong);
  border-radius: 0.5rem;
  font-size: 0.6875rem;
  font-weight: 600;
  line-height: 1.25;
  text-decoration: none;
}
.admin-shell-body .admin-button-primary:hover { color: var(--admin-text); background: var(--admin-surface-active); border-color: var(--admin-border-strong); }
.admin-shell-body .admin-button-primary:focus-visible { outline: 2px solid var(--admin-focus-accent-strong); outline-offset: 2px; }
.admin-shell-body .admin-button-primary:disabled,
.admin-shell-body .admin-button-primary[aria-disabled="true"] { cursor: not-allowed; opacity: 0.55; }
.admin-shell-body .admin-button-secondary,
.admin-shell-body .event-create-cancel {
  display: inline-flex;
  min-height: 2rem;
  align-items: center;
  justify-content: center;
  gap: 0.4rem;
  padding: 0.375rem 0.75rem;
  color: var(--admin-text-soft);
  background: var(--admin-surface-raised);
  border: 1px solid var(--admin-border);
  border-radius: 0.5rem;
  font-size: 0.6875rem;
  font-weight: 600;
  line-height: 1.25;
  text-decoration: none;
}
.admin-shell-body .admin-button-secondary:hover,
.admin-shell-body .event-create-cancel:hover { color: var(--admin-text); background: var(--admin-surface-active); border-color: var(--admin-border-strong); }
.admin-shell-body .admin-button-secondary:focus-visible,
.admin-shell-body .event-create-cancel:focus-visible { outline: 2px solid var(--admin-focus-accent-strong); outline-offset: 2px; }
.admin-shell-body .admin-button-secondary:disabled,
.admin-shell-body .event-create-cancel:disabled,
.admin-shell-body .admin-button-secondary[aria-disabled="true"],
.admin-shell-body .event-create-cancel[aria-disabled="true"] { cursor: not-allowed; opacity: 0.55; }
.admin-shell-body .admin-button-secondary svg { width: 0.875rem; height: 0.875rem; }
.admin-shell-body .admin-button-create {
  display: inline-flex;
  min-height: 2rem;
  align-items: center;
  justify-content: center;
  gap: 0.4rem;
  padding: 0.375rem 0.75rem;
  color: var(--admin-text-soft);
  background: transparent;
  border: 1px solid transparent;
  border-radius: 0.5rem;
  font-size: 0.6875rem;
  font-weight: 600;
  line-height: 1.25;
  text-decoration: none;
  white-space: nowrap;
}
.admin-shell-body .admin-button-create:hover { color: var(--admin-text); background: transparent; border-color: transparent; }
.admin-shell-body .admin-button-create:focus-visible { outline: 2px solid var(--admin-focus-accent-strong); outline-offset: 2px; }
.admin-shell-body .admin-button-create:disabled,
.admin-shell-body .admin-button-create[aria-disabled="true"] { cursor: not-allowed; opacity: 0.55; }
.admin-shell-body .admin-button-create svg { width: 0.875rem; height: 0.875rem; flex: 0 0 auto; }

/* Pass 10 Accounts / Roles */
.admin-accounts-page { display: grid; gap: 1.5rem; min-width: 0; width: 100%; padding: 1.25rem 0 3rem; }
.admin-accounts-section { display: grid; gap: 0.75rem; min-width: 0; }
.admin-accounts-section-heading { padding: 0.85rem 1rem; }
.admin-accounts-section-heading h2 { margin: 0; color: var(--admin-text); font-family: inherit; font-size: 0.8125rem; font-weight: 600; line-height: 1.35; }
.admin-accounts-section-heading p { margin: 0.2rem 0 0; color: var(--admin-muted); font-size: 0.6875rem; line-height: 1.4; }
.admin-accounts-page .admin-events-directory-controls { grid-template-columns: minmax(14rem, 18rem) minmax(0, 1fr) auto; gap: 0.75rem; align-items: center; }
.admin-accounts-page .admin-events-directory-controls > .admin-events-toolbar { display: contents; }
.admin-accounts-page .admin-events-toolbar > .admin-search-field { grid-column: 1; min-width: 0; }
.admin-accounts-page .admin-events-state-filter { display: grid; grid-template-columns: auto auto minmax(0, 1fr); gap: 0.75rem; align-items: center; min-width: 0; color: var(--admin-text-soft); font-size: 0.75rem; font-weight: 500; line-height: 1.25; }
.admin-accounts-page .admin-events-state-filter { grid-column: 2; justify-self: end; width: 11rem; }
.admin-accounts-page .admin-events-state-filter > svg { width: 1rem; height: 1rem; color: var(--admin-muted); }
.admin-accounts-page .admin-events-state-filter label { margin: 0; white-space: nowrap; }
.admin-accounts-page .admin-events-state-select { position: relative; min-width: 0; }
.admin-accounts-page .admin-events-state-select .admin-filter-select { width: 100%; padding-right: 2rem; background-image: none; }
.admin-accounts-page .admin-events-state-chevron { position: absolute; top: 0.625rem; right: 0.6rem; width: 1rem !important; height: 1rem !important; pointer-events: none; color: var(--admin-muted) !important; }
.admin-accounts-page .admin-filter-select { transition: none; }
.admin-accounts-page .admin-filter-select:focus,
.admin-accounts-page .admin-filter-select:focus-visible { color: var(--admin-text); background-color: var(--admin-surface-raised); border-color: var(--admin-focus-accent); box-shadow: 0 0 0 0.15rem color-mix(in srgb, var(--admin-focus-accent) 20%, transparent); outline: 0; }
.admin-accounts-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 0.35rem; align-items: center; }
.admin-accounts-table-wrap { min-width: 0; overflow: hidden; background: var(--admin-surface); border: 0; border-radius: 0.75rem; }
.admin-accounts-table { width: 100%; min-width: 0; border-collapse: collapse; table-layout: fixed; text-align: left; }
.admin-accounts-table thead tr { background: var(--admin-surface-soft); border: 0; }
.admin-accounts-table th { padding: 0.65rem 1rem; color: var(--admin-text); background: transparent; border: 0; font-family: inherit; font-size: 0.6875rem; font-weight: 500; letter-spacing: normal; line-height: 1.25; text-align: left; text-transform: none; vertical-align: top; }
.admin-accounts-table th > .admin-accounts-table-header-label { display: inline-flex; min-height: 1.5rem; align-items: center; line-height: 1.25; }
.admin-accounts-table td { padding: 0.8rem 1rem; color: var(--admin-text-soft); background: transparent; border: 0; font-family: inherit; font-size: 0.75rem; font-weight: 400; line-height: 1.5; vertical-align: middle; }
.admin-accounts-table td > strong { display: block; color: var(--admin-text); font-size: 0.8125rem; font-weight: 600; line-height: 1.3; overflow-wrap: anywhere; }
.admin-accounts-table .admin-account-discord-name { display: block; margin-top: 0.15rem; color: var(--admin-muted); font-size: 0.625rem; font-weight: 400; line-height: 1.35; overflow-wrap: anywhere; }
.admin-accounts-table .admin-account-discord-status { font-size: 0.75rem; font-weight: 400; line-height: 1.5; }
.admin-accounts-table .admin-account-discord-status.is-linked { color: var(--admin-text); }
.admin-accounts-table .admin-account-discord-status.is-unlinked { color: var(--admin-status-orange); }
.admin-accounts-table .admin-account-support { color: var(--admin-muted); overflow-wrap: anywhere; }
.admin-accounts-table .admin-account-value { color: var(--admin-text-soft); overflow-wrap: anywhere; }
.admin-accounts-table .admin-account-ellipsis { display: block; overflow: hidden; overflow-wrap: normal; text-overflow: ellipsis; white-space: nowrap; }
.admin-accounts-table .event-row-action { text-align: left; white-space: nowrap; }
.admin-accounts-table .admin-accounts-empty { padding: 1.5rem 1rem; color: var(--admin-muted); text-align: center; }
.admin-accounts-pager { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 0.45rem; min-height: 0; }
.admin-accounts-actions { grid-column: 3; }
.admin-accounts-website-table .admin-accounts-col-account { width: 15%; }
.admin-accounts-website-table .admin-accounts-col-role { width: 10%; }
.admin-accounts-website-table .admin-accounts-col-state { width: 9%; }
.admin-accounts-website-table .admin-accounts-col-discord { width: 11%; }
.admin-accounts-website-table .admin-accounts-col-last-login { width: 12%; }
.admin-accounts-website-table .admin-accounts-col-event-roles { width: 32%; }
.admin-accounts-website-table .admin-accounts-col-actions { width: 11%; }
.admin-accounts-emergency-table .admin-accounts-col-login-username { width: 16%; }
.admin-accounts-emergency-table .admin-accounts-col-event { width: 22%; }
.admin-accounts-emergency-table .admin-accounts-col-team { width: 14%; }
.admin-accounts-emergency-table .admin-accounts-col-setup { width: 9%; }
.admin-accounts-emergency-table .admin-accounts-col-state { width: 10%; }
.admin-accounts-emergency-table .admin-accounts-col-cutoff { width: 12%; }
.admin-accounts-emergency-table .admin-accounts-col-last-login { width: 8%; }
.admin-accounts-emergency-table .admin-accounts-col-actions { width: 9%; }
.admin-account-route-page { display: grid; gap: 0.9rem; min-width: 0; width: min(100%, 54rem); padding: 0 0 2.5rem; }
.admin-account-route-heading { display: flex; justify-content: space-between; gap: 1rem; align-items: end; }
.admin-account-route-heading h1 { margin: 0; color: var(--admin-text); font-family: inherit; font-size: 1.125rem; font-weight: 600; line-height: 1.25; overflow-wrap: anywhere; }
.admin-account-route-heading p { max-width: 42rem; margin: 0.25rem 0 0; color: var(--admin-muted); font-size: 0.6875rem; line-height: 1.45; }
.admin-account-route-panel { display: grid; gap: 0.75rem; min-width: 0; padding: 1.25rem; background: var(--admin-surface); border: 0; border-radius: 0.75rem; }
.admin-account-route-panel-heading h2 { margin: 0; color: var(--admin-text); font-family: inherit; font-size: 0.875rem; font-weight: 500; line-height: 1.25; }
.admin-account-route-panel-heading p { margin: 0.2rem 0 0; color: var(--admin-muted); font-size: 0.6875rem; line-height: 1.4; }
.admin-account-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.75rem; align-items: start; }
.admin-account-fields .admin-account-scope-note { display: grid; grid-column: 2; grid-row: 1; align-self: end; gap: 0.2rem; min-height: 2.25rem; padding: 0.4rem 0.6rem; color: var(--admin-text-soft); background: var(--admin-surface-raised); border-radius: 0.5rem; font-size: 0.6875rem; line-height: 1.35; }
.admin-account-scope-note strong { color: var(--admin-text); font-size: 0.625rem; font-weight: 500; }
.admin-account-scope-note p { margin: 0.1rem 0 0; color: var(--admin-muted); }
.admin-account-route-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 0.45rem; align-items: center; }
.admin-account-option-form .admin-account-route-actions { grid-column: 1 / -1; }
.admin-account-summary-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 0.75rem; }
.admin-account-summary-grid > div { display: grid; gap: 0.25rem; min-width: 0; }
.admin-account-label { color: var(--admin-muted); font-size: 0.625rem; font-weight: 500; line-height: 1.25; }
.admin-account-summary-grid strong { color: var(--admin-text-soft); font-size: 0.75rem; font-weight: 500; overflow-wrap: anywhere; }
.admin-account-detail-rows { display: grid; gap: 0.55rem; }
.admin-account-detail-rows p { display: grid; grid-template-columns: 12rem minmax(0, 1fr); gap: 0.75rem; margin: 0; color: var(--admin-text-soft); font-size: 0.75rem; line-height: 1.4; }
.admin-account-detail-rows strong { color: var(--admin-muted); font-size: 0.6875rem; font-weight: 500; }
.admin-account-detail-rows small, .admin-account-event-history small { color: var(--admin-muted); }
.admin-account-history-list { display: grid; gap: 0.45rem; margin: 0; padding: 0; list-style: none; }
.admin-account-history-list li { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 0.5rem 1rem; padding: 0.55rem 0; color: var(--admin-text-soft); border-bottom: 1px solid var(--admin-divider); font-size: 0.75rem; line-height: 1.4; }
.admin-account-history-list li:last-child { border-bottom: 0; }
.admin-account-history-list strong { color: var(--admin-text); font-weight: 500; }
.admin-account-history-list span { color: var(--admin-muted); }
.admin-account-event-history { display: grid; gap: 0.75rem; margin: 0; }
.admin-account-event-history article {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 0.75rem;
  padding: 1rem;
  color: var(--admin-text-soft);
  background: var(--admin-surface-raised);
  border: 0;
  border-radius: 0.75rem;
  font-size: 0.75rem;
  line-height: 1.4;
}
.admin-account-event-copy { display: grid; min-width: 0; flex: 1 1 12rem; gap: 0.2rem; }
.admin-account-event-copy strong { color: var(--admin-text); font-weight: 500; overflow-wrap: anywhere; }
.admin-account-event-support { color: var(--admin-muted); font-size: 0.6875rem; line-height: 1.4; overflow-wrap: anywhere; }
.admin-account-event-history article > .admin-status-pill { flex: 0 0 auto; margin-left: auto; }
.admin-shell-body .admin-account-route-page.is-website-account .admin-account-summary-grid strong { color: var(--admin-text); }
.admin-shell-body .admin-account-route-page.is-website-account .admin-account-characters-panel .admin-account-history-list { gap: 0.75rem; padding: 0; }
.admin-shell-body .admin-account-route-page.is-website-account .admin-account-characters-panel .admin-account-character-row {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 0.75rem;
  padding: 1rem;
  color: var(--admin-text-soft);
  background: var(--admin-surface-raised);
  border: 0;
  border-radius: 0.75rem;
}
.admin-shell-body .admin-account-route-page.is-website-account .admin-account-characters-panel .admin-account-character-row > strong { min-width: 0; color: var(--admin-text); overflow-wrap: anywhere; }
.admin-shell-body .admin-account-route-page.is-website-account .admin-account-characters-panel .admin-account-character-row > span { color: var(--admin-muted); text-align: right; }
.admin-account-empty-copy { margin: 0; color: var(--admin-muted); font-size: 0.75rem; }
.admin-account-secret-panel { gap: 0.4rem; }
.admin-account-secret-panel strong { color: var(--admin-text); font-size: 0.75rem; font-weight: 600; }
.admin-account-secret-panel code { display: block; overflow-wrap: anywhere; color: var(--admin-text-soft); font-size: 0.6875rem; }
.admin-account-action-confirmation { display: block; width: 100%; }
.admin-account-action-confirmation > summary { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 0.2rem 1rem; align-items: center; width: 100%; }
.admin-account-action-confirmation > summary strong { font-size: 0.6875rem; font-weight: 600; }
.admin-account-action-confirmation > summary span { color: var(--admin-muted); font-size: 0.625rem; font-weight: 400; }
.admin-account-action-confirmation[open] > .event-confirmation-box { position: static; width: auto; margin: 0.45rem 0 0; }
.admin-account-final-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 0.45rem; width: fit-content; max-width: 100%; justify-self: end; }
.admin-account-final-action-form { display: flex; margin: 0; }
.admin-shell-body .admin-account-final-actions .action-danger-outline,
.admin-shell-body .admin-account-emergency-actions .action-danger-outline,
.admin-shell-body .admin-account-confirmation-dialog .action-danger-outline {
  display: inline-flex;
  width: fit-content;
  min-height: 2rem;
  align-items: center;
  justify-content: center;
  gap: 0.4rem;
  padding: 0.375rem 0.75rem;
  border-radius: 0.5rem;
  font-size: 0.6875rem;
  font-weight: 600;
  line-height: 1.25;
  text-decoration: none;
}
.admin-account-transfer-confirmation { display: block; width: min(100%, 42rem); }
.admin-account-transfer-confirmation > summary { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 0.2rem 1rem; align-items: center; width: 100%; }
.admin-account-transfer-confirmation[open] > .event-confirmation-box { position: static; width: auto; margin: 0.45rem 0 0; }
.admin-shell-body .admin-account-dialog-page { padding: 1.25rem; background: var(--admin-surface); border-radius: 0.75rem; }
.admin-shell-body .admin-account-dialog-page > .admin-dialog-component-heading { margin: 0; padding: 0; border-bottom: 0; }
.admin-shell-body .admin-account-dialog-page > .admin-dialog-component-heading h2 { margin: 0; color: var(--admin-text); font-family: inherit; font-size: 1.0625rem; font-weight: 600; line-height: 1.25; }
.admin-shell-body .admin-account-dialog-page > .admin-dialog-component-heading p { margin: 0.2rem 0 0; color: var(--admin-muted); font-size: 0.6875rem; line-height: 1.4; }
.admin-shell-body .admin-account-dialog-page .admin-account-route-panel { background: var(--admin-surface-soft); }
.admin-shell-body .admin-account-dialog-page .admin-account-action-confirmation { background: var(--admin-surface-soft); border-radius: 0.75rem; }
.admin-shell-body .admin-account-dialog-page .admin-field :is(.form-control, .form-select):focus { outline: 0; }
.admin-shell-body .admin-account-dialog-page :is(.admin-button-secondary, .action-danger-outline, .admin-button-create, .admin-route-dialog-close):focus-visible,
.admin-shell-body .admin-account-confirmation-dialog :is(.admin-button-secondary, .action-danger-outline, .admin-button-create, .admin-route-dialog-close):focus-visible {
  outline: 2px solid var(--admin-focus-accent-strong);
  outline-offset: 2px;
  box-shadow: none;
}
.admin-shell-body .admin-account-route-page.is-emergency-credential .admin-account-emergency-actions { display: flex; flex-wrap: wrap; gap: 0.45rem; align-items: center; justify-content: flex-end; }
.admin-shell-body .admin-account-confirmation-dialog {
  --admin-text: #eaeae5;
  --admin-text-soft: #c2c2be;
  --admin-muted: #969692;
  --admin-divider: #2b2b2b;
  --admin-border: var(--admin-divider);
  --admin-border-strong: var(--admin-divider);
  --admin-focus-accent-strong: var(--admin-navigation-accent);
  box-sizing: border-box;
  width: min(24rem, calc(100vw - 2rem));
  max-width: calc(100vw - 2rem);
  padding: 0;
  color: var(--admin-text-soft);
  background: var(--admin-surface-raised);
  border: 1px solid #2b2b2b;
  border-radius: 0.75rem;
  box-shadow: 0 1rem 3rem rgb(0 0 0 / 35%);
}
.admin-shell-body :is(.admin-account-confirmation-dialog, .board-page .tile-dialog)::backdrop { background: rgb(0 0 0 / 45%); }
.admin-account-confirmation-surface { display: grid; gap: 0.85rem; padding: 1rem; }
.admin-account-confirmation-heading { display: flex; gap: 0.75rem; align-items: start; padding-bottom: 0.75rem; border-bottom: 1px solid #2b2b2b; }
.admin-account-confirmation-heading h2 { flex: 1; margin: 0; color: #eaeae5; font-family: inherit; font-size: 0.875rem; font-weight: 600; line-height: 1.3; }
.admin-account-confirmation-dialog > .admin-account-confirmation-surface > p { margin: 0; color: #969692; font-size: 0.75rem; font-weight: 400; line-height: 1.45; }
.admin-account-confirmation-dialog .admin-account-confirmation-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 0.45rem; }
.admin-account-confirmation-dialog :is(.admin-button-secondary, .action-danger-outline, .admin-route-dialog-close):focus-visible { outline: 2px solid var(--admin-focus-accent-strong); outline-offset: 2px; }

@media (max-width: 1100px) {
  .admin-accounts-page .admin-events-directory-controls { grid-template-columns: 1fr; align-items: stretch; }
  .admin-accounts-page .admin-events-directory-controls > .admin-events-toolbar { display: grid; grid-template-columns: 1fr; }
  .admin-accounts-page .admin-events-state-filter { grid-column: auto; justify-self: stretch; width: auto; }
  .admin-accounts-page .admin-accounts-actions { grid-column: auto; }
  .admin-accounts-actions { justify-content: flex-end; }
  .admin-accounts-table-wrap { overflow: visible; background: transparent; }
  .admin-accounts-table,
  .admin-accounts-table colgroup,
  .admin-accounts-table tbody,
  .admin-accounts-table tr,
  .admin-accounts-table td { display: block; width: 100%; min-width: 0; }
  .admin-accounts-table thead { display: none; }
  .admin-accounts-table colgroup { display: none; }
  .admin-accounts-table tbody { display: grid; gap: 0.75rem; }
  .admin-accounts-table tr { padding: 0.875rem; background: var(--admin-surface); border: 0; border-radius: 0.75rem; }
  .admin-accounts-table td { display: grid; grid-template-columns: 7rem minmax(0, 1fr); gap: 0.65rem; padding: 0.35rem 0; border: 0; }
  .admin-accounts-table td::before { color: var(--admin-muted); content: attr(data-label); font-size: 0.625rem; font-weight: 500; line-height: 1.35; }
  .admin-accounts-table td > strong,
  .admin-accounts-table td > small,
  .admin-accounts-table td > span,
  .admin-accounts-table td > a { grid-column: 2; min-width: 0; }
  .admin-accounts-table .admin-account-ellipsis { overflow: visible; text-overflow: clip; white-space: normal; overflow-wrap: anywhere; }
  .admin-accounts-table .event-row-action { display: grid; justify-items: end; margin-top: 0.35rem; padding-top: 0.35rem; text-align: right; }
  .admin-accounts-table .admin-accounts-empty { display: block; padding: 0.25rem 0; }
  .admin-accounts-table .admin-accounts-empty::before { content: none; }
}

@media (max-width: 600px) {
  .admin-accounts-page { gap: 1.25rem; padding-bottom: 1.5rem; }
  .admin-accounts-actions { justify-content: stretch; }
  .admin-accounts-actions > * { flex: 1 1 auto; text-align: center; }
  .admin-accounts-table tr { padding: 0.75rem; }
  .admin-accounts-table td { grid-template-columns: 7rem minmax(0, 1fr); }
  .admin-account-route-page { gap: 0.75rem; padding-bottom: 1.5rem; }
  .admin-account-route-panel { padding: 0.9rem; }
  .admin-account-fields, .admin-account-summary-grid { grid-template-columns: 1fr; }
  .admin-account-fields .admin-account-scope-note { grid-column: 1; grid-row: auto; align-self: auto; }
  .admin-account-detail-rows p { grid-template-columns: 7rem minmax(0, 1fr); }
  .admin-account-route-actions { justify-content: stretch; }
  .admin-account-route-actions > * { flex: 1 1 auto; text-align: center; }
  .admin-shell-body .admin-account-route-page.is-website-account .admin-account-event-history article > .admin-status-pill { max-width: 100%; }
}
.admin-shell-body .admin-header-create-action {
  display: inline-flex;
  min-height: 0;
  flex: 0 0 auto;
  align-items: center;
  gap: 0.5rem;
  padding: 0.5rem 0.875rem;
  color: var(--admin-text);
  background: var(--admin-surface-raised);
  border: 1px solid var(--admin-border-strong);
  border-radius: 0.5rem;
  box-shadow: 0 1px 2px color-mix(in srgb, var(--admin-page) 35%, transparent);
  font-size: 0.75rem;
  font-weight: 700;
  line-height: 1rem;
  text-decoration: none;
}
.admin-shell-body .admin-header-create-action:hover { color: var(--admin-text); background: var(--admin-surface-active); border-color: var(--admin-border-strong); }
.admin-shell-body .admin-header-create-action:focus-visible { outline: 2px solid var(--admin-focus-accent-strong); outline-offset: 2px; }
.admin-shell-body .admin-header-create-action svg { width: 1rem; height: 1rem; }
.admin-shell-body .admin-field,
.admin-shell-body .event-create-field { display: grid; min-width: 0; gap: 0.25rem; }
.admin-shell-body .admin-field label,
.admin-shell-body .admin-field .field-label,
.admin-shell-body .event-create-field label,
.admin-shell-body .event-create-field .field-label,
.admin-shell-body .admin-setting-toggle-copy > strong { color: var(--admin-text-soft); font-family: inherit; font-size: 0.75rem; font-weight: 500; line-height: 1.25; }
.admin-shell-body .admin-field .form-control,
.admin-shell-body .admin-field .form-select,
.admin-shell-body .event-create-field .form-control,
.admin-shell-body .event-create-field .form-select {
  min-height: 2.25rem;
  padding: 0.4rem 0.6rem;
  color: var(--admin-text);
  background: var(--admin-surface-raised);
  border: 1px solid var(--admin-border-strong);
  border-radius: 0.5rem;
  font-size: 0.75rem;
  line-height: 1.25;
}
.admin-shell-body .admin-field textarea.form-control,
.admin-shell-body .event-create-field textarea.form-control { min-height: 5rem; }
.admin-shell-body .admin-field .form-control:focus,
.admin-shell-body .admin-field .form-select:focus,
.admin-shell-body .event-create-field .form-control:focus,
.admin-shell-body .event-create-field .form-select:focus { color: var(--admin-text); background: var(--admin-surface-raised); border-color: var(--admin-focus-accent); box-shadow: 0 0 0 0.15rem color-mix(in srgb, var(--admin-focus-accent) 20%, transparent); }
.admin-shell-body .admin-field .form-control:disabled,
.admin-shell-body .admin-field .form-select:disabled,
.admin-shell-body .event-create-field .form-control:disabled,
.admin-shell-body .event-create-field .form-select:disabled { color: var(--admin-muted); opacity: 0.65; }
.admin-shell-body .admin-field .form-control[readonly],
.admin-shell-body .admin-field .form-select[readonly],
.admin-shell-body .event-create-field .form-control[readonly],
.admin-shell-body .event-create-field .form-select[readonly] { background: var(--admin-surface-raised); color: var(--admin-text); }
.admin-shell-body .admin-field .form-control:-webkit-autofill,
.admin-shell-body .admin-field .form-select:-webkit-autofill,
.admin-shell-body .event-create-field .form-control:-webkit-autofill,
.admin-shell-body .event-create-field .form-select:-webkit-autofill { -webkit-text-fill-color: var(--admin-text); box-shadow: 0 0 0 1000px var(--admin-surface-raised) inset; caret-color: var(--admin-text); }
.admin-shell-body .admin-field-with-icon .form-control { padding-left: 2.25rem; }
.admin-shell-body .admin-search-field { position: relative; display: block; min-width: 0; color: var(--admin-muted); }
.admin-shell-body .admin-search-field > svg { position: absolute; top: 0.625rem; left: 0.75rem; z-index: 1; width: 1rem; height: 1rem; pointer-events: none; }
.admin-shell-body .admin-search-field-input {
  width: 100%;
  min-height: 2.25rem;
  padding: 0.4rem 2.25rem 0.4rem 2.25rem;
  color: var(--admin-text);
  background: var(--admin-search);
  border: 1px solid transparent;
  border-radius: 999px;
  font-size: 0.75rem;
  line-height: 1.25;
  transition: none;
}
.admin-shell-body .admin-search-field-input::placeholder { color: var(--admin-muted); opacity: 0.75; }
.admin-shell-body .admin-search-field-input:hover { border-color: var(--admin-border-strong); }
.admin-shell-body .admin-search-field-input:focus,
.admin-shell-body .admin-search-field-input:focus-visible { color: var(--admin-text); background: var(--admin-search); border-color: var(--admin-focus-accent); box-shadow: 0 0 0 0.15rem color-mix(in srgb, var(--admin-focus-accent) 20%, transparent); outline: 0; }
.admin-shell-body .admin-search-field-input:disabled { color: var(--admin-muted); opacity: 0.65; }
.admin-shell-body .admin-search-field-input::-webkit-search-cancel-button { display: none; }
.admin-shell-body .admin-accounts-page .admin-search-field-input.form-control:focus,
.admin-shell-body .admin-accounts-page .admin-search-field-input.form-control:focus-visible { color: var(--admin-text); background: var(--admin-search); border-color: var(--admin-focus-accent); box-shadow: 0 0 0 0.15rem color-mix(in srgb, var(--admin-focus-accent) 20%, transparent); outline: 0; }
.admin-shell-body .admin-search-clear { position: absolute; top: 50%; right: 0; display: inline-grid; width: 2.25rem; height: 2.25rem; place-items: center; margin: 0; padding: 0; color: var(--admin-muted); background: transparent; border: 0; border-radius: 0.5rem; transform: translateY(-50%); }
.admin-shell-body .admin-search-clear[hidden] { display: none; }
.admin-shell-body .admin-search-clear:hover { color: var(--admin-text-soft); }
.admin-shell-body .admin-search-clear:focus { outline: 0; }
.admin-shell-body .admin-search-clear:focus-visible { outline: 0; box-shadow: 0 0 0 2px var(--admin-search), 0 0 0 4px var(--admin-focus-accent-strong); }
.admin-shell-body .admin-search-clear svg { width: 0.75rem; height: 0.75rem; pointer-events: none; }
.admin-shell-body .admin-filter-select {
  box-sizing: border-box;
  min-height: 2.25rem;
  height: 2.25rem;
  padding: 0.4375rem 2rem 0.4375rem 0.6rem;
  color: var(--admin-text);
  background-color: var(--admin-surface-raised);
  background-position: right 0.6rem center;
  background-size: 1rem 0.75rem;
  background-repeat: no-repeat;
  border: 1px solid var(--admin-border-strong);
  border-radius: 0.5rem;
  font-size: 0.75rem;
  line-height: 1.25rem;
  transition: none;
  appearance: none;
  -webkit-appearance: none;
}
.admin-shell-body .admin-filter-select:hover { border-color: var(--admin-border); }
.admin-shell-body .admin-filter-select:focus,
.admin-shell-body .admin-filter-select:focus-visible { color: var(--admin-text); background-color: var(--admin-surface-raised); border-color: var(--admin-focus-accent); box-shadow: 0 0 0 0.15rem color-mix(in srgb, var(--admin-focus-accent) 20%, transparent); outline: none; }
.admin-shell-body .admin-filter-select:disabled { color: var(--admin-muted); opacity: 0.65; }
.admin-shell-body .admin-section-heading { display: flex; justify-content: space-between; gap: 1rem; align-items: end; margin-bottom: 0.85rem; padding-bottom: 0.7rem; border-bottom: 1px solid var(--admin-border); }
.admin-shell-body .admin-section-heading h2 { margin: 0; color: var(--admin-text); font-family: Cinzel, Georgia, serif; font-size: 0.875rem; font-weight: 700; line-height: 1.25rem; }
.admin-shell-body .admin-section-heading > p { max-width: 28rem; color: var(--admin-muted); font-size: 0.6875rem; line-height: 1.4; }
.admin-shell-body .event-manage-page .event-overview-section-heading h2 { font-family: inherit; }

.admin-header {
  position: sticky;
  top: 0;
  z-index: 1100;
  min-height: var(--admin-header-height);
  background: var(--admin-page);
}

.admin-header-nav {
  display: grid;
  grid-template-columns: var(--admin-sidebar-width) minmax(0, 1fr) minmax(12rem, 18rem) minmax(8rem, 1fr) auto;
  width: 100%;
  min-height: var(--admin-header-height);
  align-items: center;
  gap: 1.5rem;
  padding: 0 1rem 0 0;
}

.admin-page-context { display: grid; grid-column: 2; min-width: 0; gap: 0.12rem; align-content: center; }
.admin-page-title { overflow: hidden; color: var(--admin-text); font-size: 1rem; font-weight: 500; line-height: 1.2; text-overflow: ellipsis; white-space: nowrap; }
.admin-page-description { overflow: hidden; color: var(--admin-muted); font-size: 0.625rem; font-weight: 400; line-height: 1.2; text-overflow: ellipsis; white-space: nowrap; }

.admin-brand {
  display: flex;
  flex: 0 0 calc(var(--admin-sidebar-width) - 1.25rem);
  align-items: center;
  gap: 0.625rem;
  color: var(--admin-text) !important;
  text-decoration: none;
}

.admin-brand-copy { display: grid; min-width: 0; gap: 0.1rem; }
.admin-brand-line { display: inline-flex; align-items: center; gap: 0.4rem; line-height: 1; }
.admin-brand-product { color: var(--admin-text); font-size: 0.75rem; font-weight: 700; letter-spacing: 0.04em; }
.admin-brand-badge { display: inline-flex; height: 0.95rem; align-items: center; margin: 0; padding: 0 0.35rem; color: var(--admin-accent-strong); background: var(--admin-surface-raised); border: 1px solid var(--admin-border-strong); border-radius: 0.3rem; font-size: 0.5625rem; font-weight: 700; letter-spacing: 0.08em; line-height: 1; }
.admin-brand-subtitle { color: var(--admin-muted); font-size: 0.625rem; font-weight: 400; line-height: 1.2; }
.admin-brand { box-sizing: border-box; align-self: stretch; flex-basis: var(--admin-sidebar-width); gap: 0.375rem; padding-right: 1rem; padding-left: 1.75rem; border-right: 1px solid var(--admin-divider); }
.admin-brand-mark { display: block; width: 25px; height: 25px; flex: 0 0 25px; object-fit: contain; padding: 0; border: 0; background: transparent; border-radius: 0; box-shadow: none; }
.admin-brand-product { font-size: 0.95rem; font-weight: 600; letter-spacing: -0.02em; }
.admin-event-selector { flex: 0 1 auto; width: 100%; max-width: 24rem; min-width: 0; }
.admin-event-selector details { width: 100%; }
.admin-event-selector { grid-column: 3; justify-self: center; width: min(100%, 18rem); max-width: 18rem; }
.admin-selected-event { display: flex; width: 100%; min-width: 0; min-height: 2.25rem; box-sizing: border-box; align-items: center; gap: 0.5rem; padding: 0.55rem 1rem; color: var(--admin-text-soft); background: var(--admin-search); border: 0; border-radius: 999px; text-decoration: none; white-space: nowrap; }
.admin-selected-event-label { color: var(--admin-muted); font-size: 0.6875rem; font-weight: 500; letter-spacing: normal; }
.admin-selected-event-name { min-width: 0; margin-left: 0; overflow: hidden; color: var(--admin-muted); font-size: 0.8125rem; font-weight: 400; line-height: 1rem; text-overflow: ellipsis; white-space: nowrap; }
.admin-event-selector details[open] > .admin-selected-event,
.admin-selected-event-empty:hover { background: var(--admin-search); }
.admin-event-selector-chevron { width: 0.875rem; height: 0.875rem; margin-left: auto; flex: 0 0 auto; color: var(--admin-muted); }
.admin-event-selector-menu { position: absolute; top: calc(100% + 0.35rem); left: 0; z-index: 1110; display: grid; width: min(100%, 28rem); max-height: min(20rem, calc(100vh - 6rem)); gap: 0.15rem; overflow-y: auto; padding: 0.35rem; background: var(--admin-surface); border: 0; border-radius: var(--admin-radius); box-shadow: 0 0.75rem 1.5rem rgba(0, 0, 0, 0.22); }
.admin-event-option { display: grid; grid-template-columns: minmax(0, 1fr) auto; min-width: 0; align-items: center; gap: 0.5rem; padding: 0.45rem 0.55rem; color: var(--admin-muted); border-radius: 0.375rem; font-size: 0.75rem; font-weight: 500; line-height: 1.2; text-decoration: none; }
.admin-event-option:hover,
.admin-event-option.is-current { color: var(--admin-text); background: var(--admin-navigation-active); }
.admin-event-option-copy { display: flex; min-width: 0; align-items: center; gap: 0.5rem; }
.admin-event-option-copy > span { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.admin-event-option-check { width: 0.875rem; height: 0.875rem; color: var(--admin-accent-strong); }
.admin-header-blockers { display: inline-flex; grid-column: 4; align-items: center; justify-self: center; gap: 0.35rem; color: var(--admin-warning); font-size: 0.75rem; font-weight: 600; line-height: 1.2; text-decoration: none; white-space: nowrap; }
.admin-header-blockers:hover { color: var(--admin-text); }
.admin-header-blockers svg { width: 0.95rem; height: 0.95rem; flex: 0 0 auto; }
.admin-header-actions { display: flex; grid-column: 5; justify-self: end; align-items: center; gap: 0.3rem; }
.admin-header .header-notification { order: 0; }
.admin-header .admin-account-context { order: 1; display: flex; min-width: 0; align-items: center; gap: 0.5rem; margin-left: 0.35rem; }
.admin-header .settings-popover { order: 2; }
.admin-header .admin-menu-toggle { order: 3; }
.admin-account-avatar { display: grid; width: 1.75rem; height: 1.75rem; flex: 0 0 auto; place-items: center; color: var(--admin-text); background: var(--admin-surface-raised); border: 0; border-radius: 50%; font-size: 0.625rem; font-weight: 700; }
.admin-account-copy { display: grid; min-width: 0; gap: 0.05rem; line-height: 1.1; }
.admin-account-name { max-width: 11rem; overflow: hidden; color: var(--admin-text); font-size: 0.75rem; font-weight: 600; text-overflow: ellipsis; white-space: nowrap; }
.admin-account-role { color: var(--admin-muted); font-size: 0.625rem; font-weight: 400; white-space: nowrap; }
.admin-header .nav-icon-button { color: var(--admin-text); }
.admin-header .nav-panel { color: var(--admin-text); background: var(--admin-surface); border: 0; }
.admin-header .notification-count { border-color: var(--admin-surface); }
.admin-exit-link { display: flex; min-height: 2.1rem; align-items: center; gap: 0.625rem; padding: 0.5rem 0.75rem; color: var(--admin-text) !important; border-radius: 999px; font-size: 0.8125rem; font-weight: 400; line-height: 1.2; text-decoration: none; white-space: nowrap; }
.admin-exit-link:hover { color: var(--admin-text) !important; background: var(--admin-navigation-active); border-radius: 999px; }
.admin-menu-toggle { display: none; padding: 0.45rem 0.6rem; color: var(--admin-text); background: transparent; border: 0; border-radius: var(--admin-radius); line-height: 1; }
.admin-menu-icon { width: 1.2rem; height: 1.2rem; }
.admin-exit-icon { width: 1rem; height: 1rem; flex: 0 0 auto; }

.admin-layout { display: grid; grid-template-columns: var(--admin-sidebar-width) minmax(0, 1fr); min-height: calc(100vh - var(--admin-header-height)); }
.admin-sidebar { position: sticky; top: var(--admin-header-height); display: flex; height: calc(100vh - var(--admin-header-height)); flex-direction: column; overflow-y: auto; background: var(--admin-page); border-right: 1px solid var(--admin-divider); }
.admin-sidebar-nav { display: grid; flex: 0 0 auto; gap: 0.2rem; padding: 1.1rem 1rem 1.5rem; }
.admin-nav-label { margin: 0.35rem 0.75rem 0.25rem; color: var(--admin-muted); font-size: 0.625rem; font-weight: 700; letter-spacing: 0.1em; line-height: 1.2; text-transform: uppercase; }
.admin-nav-link { position: relative; display: flex; min-height: 2.1rem; align-items: center; gap: 0.625rem; padding: 0.4rem 0.75rem; color: var(--admin-muted) !important; border: 1px solid transparent; border-radius: 999px; font-size: 0.8125rem; font-weight: 400; line-height: 1.2; text-decoration: none; }
.admin-nav-icon { width: 1rem; height: 1rem; flex: 0 0 auto; color: currentColor; }
.admin-nav-link:hover { color: var(--admin-text) !important; background: var(--admin-navigation-active); }
.admin-nav-link.is-active { color: var(--admin-navigation-accent) !important; background: var(--admin-navigation-active); border-color: transparent; font-weight: 500; }
.admin-sidebar-nav > .admin-nav-link.is-active { padding-left: 0.75rem; }
.admin-sidebar-nav > .admin-nav-link.is-active::before { display: none; }
.admin-event-nav { --admin-event-link-left: 0.75rem; position: relative; display: grid; gap: 0.2rem; margin-top: 0.9rem; padding: 0.1rem 0 0.5rem; }
.admin-event-parent { display: flex; min-height: 2.1rem; align-items: center; gap: 0.625rem; margin-left: 0; padding: 0.4rem 0.75rem; color: var(--admin-muted); border-radius: 999px; font-size: 0.8125rem; font-weight: 400; line-height: 1.2; cursor: pointer; list-style: none; }
.admin-event-parent::-webkit-details-marker { display: none; }
.admin-event-parent:hover { color: var(--admin-text); background: var(--admin-navigation-active); }
.admin-event-chevron { width: 0.875rem; height: 0.875rem; margin-left: auto; color: currentColor; transition: transform 160ms ease; }
.admin-event-nav:not([open]) .admin-event-chevron { transform: rotate(-90deg); }
.admin-event-nav .admin-nav-link { min-height: 2.1rem; margin-left: var(--admin-event-link-left); padding: 0.3rem 0.75rem; gap: 0.625rem; border-radius: 999px; }
.admin-event-nav .admin-nav-icon { width: 0.875rem; height: 0.875rem; }
.admin-event-item { position: relative; }
.admin-event-item::before,
.admin-event-item::after { display: none; }
.admin-badge { display: inline-flex; width: fit-content; min-height: 0; align-self: start; align-items: center; justify-self: start; justify-content: center; padding: 0.125rem 0.5rem; color: var(--admin-muted); background: var(--admin-surface-raised); border: 1px solid var(--admin-border-strong); border-radius: 0.25rem; font-size: 0.625rem; font-weight: 700; letter-spacing: normal; line-height: 1.5; text-transform: uppercase; white-space: nowrap; overflow-wrap: normal; }
.admin-badge-signup-open { color: var(--admin-accent-strong); background: color-mix(in srgb, var(--admin-accent) 15%, transparent); border-color: color-mix(in srgb, var(--admin-accent) 30%, transparent); }
.admin-sidebar-footer { margin-top: auto; padding: 1rem 1rem 1rem; }
.admin-sidebar-footer::before { display: none; }
.admin-main { min-width: 0; padding: 0 var(--admin-content-gutter) 2.5rem; }
.admin-main > #main-content { width: min(100%, 80rem); margin-inline: auto; }
.admin-breadcrumb-bar { margin: 0 -0.25rem; }
.admin-main #main-content > .table-page,
.admin-main #main-content > .content-page,
.admin-main #main-content > .form-page { padding-top: 1.25rem; }
.admin-main #main-content > .table-page { padding-bottom: 3rem; }
.admin-main .page-heading h1,
.admin-main .event-index-heading h1 { color: var(--admin-text); }
.admin-menu-scrim { display: none; }

.admin-shell-body .admin-nav-link:focus-visible,
.admin-shell-body .admin-event-parent:focus-visible,
.admin-shell-body .admin-selected-event:focus-visible,
.admin-shell-body .admin-menu-toggle:focus-visible,
.admin-shell-body .admin-exit-link:focus-visible,
.admin-shell-body .admin-brand:focus-visible { outline: 2px solid var(--admin-focus-accent-strong); outline-offset: 2px; }

@media (max-width: 900px) {
  .admin-header-nav { display: flex; gap: 1rem; padding: 0 0.9rem; }
  .admin-brand { flex: 0 1 auto; flex-basis: auto; min-width: 0; gap: 0.625rem; padding-right: 0.5rem; padding-left: 1rem; }
  .admin-brand-product { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  .admin-page-context { flex: 0 1 10rem; min-width: 0; }
  .admin-event-selector { flex: 1 1 12rem; min-width: 0; }
  .admin-event-selector-menu { width: min(28rem, calc(100vw - 1.8rem)); }
  .admin-selected-event { gap: 0.3rem; min-height: 2.5rem; padding-inline: 0.625rem; }
  .admin-header-actions { flex: 0 0 auto; margin-left: 0.5rem; }
  .admin-header .admin-account-context { display: none; }
  .admin-menu-toggle { display: inline-grid; width: 2.5rem; height: 2.5rem; place-items: center; padding: 0; }
  .admin-layout { display: block; }
  .admin-sidebar { position: static; height: auto; min-height: 0; border-right: 0; }
  .admin-sidebar-nav { padding-bottom: 1.25rem; }
  .admin-main { padding-inline: 1rem; }
  html.admin-menu-enhanced .admin-sidebar { position: fixed; top: var(--admin-header-height); bottom: 0; left: 0; z-index: 1090; width: min(var(--admin-sidebar-width), calc(100vw - 3rem)); height: auto; transform: translateX(-105%); transition: transform 160ms ease; box-shadow: 0.8rem 0 2rem rgba(0, 0, 0, 0.25); }
  html.admin-menu-enhanced .admin-sidebar.is-open { transform: translateX(0); }
  html.admin-menu-enhanced .admin-menu-scrim { position: fixed; inset: var(--admin-header-height) 0 0; z-index: 1080; display: block; width: 100%; background: rgba(0, 0, 0, 0.48); border: 0; }
  html.admin-menu-enhanced .admin-menu-scrim[hidden] { display: none; }
  body.admin-menu-open { overflow: hidden; }
  .admin-sidebar-nav { gap: 0.3rem; }
  .admin-nav-link,
  .admin-event-parent,
  .admin-event-nav .admin-nav-link,
  .admin-exit-link { min-height: 2.5rem; }
}

@media (max-width: 600px) {
  .admin-page-context { display: none; }
  .admin-header-nav { gap: 0.5rem; padding-inline: 0.6rem; }
  .admin-brand { flex: 0 1 auto; padding-left: 0.25rem; }
  .admin-event-selector { flex-basis: 0; }
  .admin-event-selector-menu { left: auto; right: 0; width: min(28rem, calc(100vw - 1.2rem)); }
}

@media (min-width: 640px) {
  .admin-event-selector { max-width: 28rem; }
}

@media (prefers-reduced-motion: reduce) {
  html.admin-menu-enhanced .admin-sidebar { transition: none; }
}

/* Admin Pass 1B: dashboard and event-directory primitives. */
.admin-dashboard-page { display: grid; gap: 1.5rem; padding: 1.25rem 0 3rem; }
.admin-module-heading { display: flex; align-items: end; justify-content: space-between; gap: 1rem; }
.admin-module-heading > div { min-width: 0; }
.admin-module-eyebrow { margin: 0 0 0.35rem; color: var(--admin-muted); font-size: 0.625rem; font-weight: 700; letter-spacing: 0.1em; line-height: 1.2; text-transform: uppercase; }
.admin-module-title-row { display: flex; align-items: center; gap: 0.625rem; }
.admin-module-title-row h1 { margin: 0; color: var(--admin-text); font-family: inherit; font-size: clamp(1.125rem, 2vw, 1.25rem); font-weight: 700; line-height: 1.2; }
.admin-module-title-icon { width: 1.125rem; height: 1.125rem; flex: 0 0 auto; color: var(--admin-accent-strong); }
.admin-module-description { max-width: 44rem; margin: 0.4rem 0 0; color: var(--admin-muted); font-size: 0.75rem; line-height: 1.45; }
.admin-primary-action { display: inline-flex; min-height: 2rem; flex: 0 0 auto; align-items: center; gap: 0.5rem; padding: 0.5rem 0.875rem; color: var(--admin-page); background: var(--admin-accent); border: 1px solid var(--admin-accent); border-radius: var(--admin-radius); font-size: 0.75rem; font-weight: 700; line-height: 1.2; text-decoration: none; }
.admin-primary-action:hover { color: var(--admin-text); background: var(--admin-accent-strong); border-color: var(--admin-accent-strong); }
.admin-primary-action svg { width: 0.875rem; height: 0.875rem; flex: 0 0 auto; }
.admin-dashboard-links { display: grid; grid-template-columns: repeat(auto-fit, minmax(15rem, 1fr)); gap: 1rem; }
.admin-dashboard-link { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; min-width: 0; align-items: center; gap: 0.75rem; padding: 1rem; color: var(--admin-text); background: var(--admin-surface); border: 1px solid var(--admin-border); border-radius: 0.75rem; text-decoration: none; }
.admin-dashboard-link:hover { background: var(--admin-surface-raised); border-color: var(--admin-border-strong); }
.admin-dashboard-link:focus-visible,
.admin-primary-action:focus-visible { outline: 2px solid var(--admin-focus-accent-strong); outline-offset: 2px; }
.admin-dashboard-link-icon { display: grid; width: 2rem; height: 2rem; place-items: center; color: var(--admin-accent-strong); background: color-mix(in srgb, var(--admin-accent) 12%, transparent); border: 1px solid var(--admin-border-strong); border-radius: 0.5rem; }
.admin-dashboard-link-icon svg { width: 1rem; height: 1rem; }
.admin-dashboard-link-copy { display: grid; min-width: 0; gap: 0.25rem; }
.admin-dashboard-link-copy strong { font-size: 0.8125rem; font-weight: 600; line-height: 1.2; }
.admin-dashboard-link-copy span { color: var(--admin-muted); font-size: 0.6875rem; line-height: 1.35; }
.admin-dashboard-link-arrow { width: 0.875rem; height: 0.875rem; color: var(--admin-muted); }
.admin-dashboard-panel { display: grid; gap: 1rem; padding: 1.25rem; background: var(--admin-surface); border: 1px solid var(--admin-border); border-radius: 0.75rem; }
.admin-dashboard-panel-heading { display: flex; align-items: start; justify-content: space-between; gap: 1rem; }
.admin-dashboard-panel-heading h2 { margin: 0; color: var(--admin-text); font-family: inherit; font-size: 0.875rem; font-weight: 600; line-height: 1.25; }
.admin-dashboard-panel-icon { width: 1rem; height: 1rem; color: var(--admin-muted); }
.admin-dashboard-facts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0.75rem; margin: 0; }
.admin-dashboard-facts > div { display: grid; gap: 0.25rem; min-width: 0; padding: 0.75rem; background: var(--admin-surface-raised); border: 1px solid var(--admin-border); border-radius: 0.5rem; }
.admin-dashboard-facts dt { color: var(--admin-muted); font-size: 0.625rem; font-weight: 700; letter-spacing: 0.06em; text-transform: uppercase; }
.admin-dashboard-facts dd { margin: 0; overflow: hidden; color: var(--admin-text); font-size: 0.75rem; font-weight: 600; text-overflow: ellipsis; white-space: nowrap; }
.admin-dashboard-panel-note { margin: 0; color: var(--admin-muted); font-size: 0.6875rem; line-height: 1.4; }
@media (max-width: 767px) {
  .admin-module-heading { align-items: stretch; flex-direction: column; }
  .admin-primary-action { align-self: start; }
  .admin-dashboard-facts { grid-template-columns: 1fr; }
}

/* Admin Events directory: the single authoritative reference-parity block. */
.admin-events-page { display: grid; gap: 0.75rem; padding: 1.25rem 0 3rem; }
.admin-events-page .admin-events-toolbar { display: grid; grid-template-columns: minmax(14rem, 18rem) minmax(10rem, 14rem); gap: 0.75rem; align-items: end; min-width: 0; }
.admin-events-page .admin-events-search { min-width: 0; }
.admin-events-page .admin-events-state-filter { display: grid; grid-template-columns: auto auto minmax(0, 1fr); gap: 0.45rem; align-items: center; min-width: 0; color: var(--admin-text-soft); font-size: 0.75rem; font-weight: 500; line-height: 1.25; }
.admin-events-page .admin-events-state-filter > svg { width: 1rem; height: 1rem; color: var(--admin-muted); }
.admin-events-page .admin-events-state-filter label { margin: 0; white-space: nowrap; }
.admin-events-page .admin-events-state-filter select { min-width: 0; }
.admin-events-directory-controls { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 0.75rem; align-items: end; padding: 0.75rem 1rem; background: var(--admin-surface); border: 0; border-radius: 0.75rem; }
.admin-events-page .admin-events-table-wrap { margin: 0; padding: 0; overflow: hidden; background: var(--admin-surface); border: 0; border-radius: 0.75rem; }
.admin-events-page .admin-events-table-scroll { overflow-x: auto; overscroll-behavior-inline: contain; }
.admin-events-page .event-table { width: 100%; min-width: 54rem; border-collapse: collapse; table-layout: auto; text-align: left; }
.admin-events-page .event-table thead tr { background: var(--admin-surface-soft); border: 0; }
.admin-events-page .event-table th { padding: 0.65rem 1rem; color: var(--admin-text); background: transparent; border: 0; font-family: inherit; font-size: 0.6875rem; font-weight: 500; letter-spacing: normal; line-height: 1.25; text-align: left; text-transform: none; }
.admin-events-page .event-table tbody { color: var(--admin-text-soft); font-family: inherit; font-size: 0.75rem; line-height: 1.5; }
.admin-events-page .event-table tbody tr { border: 0; transition: background-color 150ms ease; }
.admin-events-page .event-table tbody tr:hover { background: var(--admin-surface-soft); }
.admin-events-page .event-table td { padding: 0.8rem 1rem; color: var(--admin-text-soft); border: 0; font-family: inherit; font-size: 0.75rem; line-height: 1.5; vertical-align: middle; }
.admin-events-page .event-table td > strong { display: block; color: var(--admin-text); font-size: 0.8125rem; font-weight: 600; line-height: 1.3; overflow-wrap: anywhere; }
.admin-events-page .event-table td > small { display: block; margin-top: 0.15rem; color: var(--admin-muted); font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size: 0.625rem; font-weight: 400; line-height: 1.5; overflow-wrap: anywhere; }
.admin-events-page .event-table .event-date-cell,
.admin-events-page .event-table .event-signup-cell { min-width: 0; }
.admin-events-page .event-table .event-date-cell strong { color: var(--admin-text); font-size: 0.75rem; font-weight: 400; }
.admin-events-page .event-table .event-signup-cell strong { color: var(--admin-text); font-size: 0.75rem; font-weight: 400; }
.admin-events-page .event-table .event-date-cell small,
.admin-events-page .event-table .event-signup-cell small { font-family: inherit; }
.admin-events-page .event-table .event-date-cell.is-incomplete strong,
.admin-events-page .event-table .event-date-cell.is-incomplete small { color: var(--admin-status-yellow); }
.admin-events-page .event-needs-attention-heading,
.admin-events-page .event-actions-heading { white-space: nowrap; }
.admin-events-page .admin-events-sort-link { display: inline-flex; min-height: 1.5rem; align-items: center; gap: 0.35rem; color: inherit; text-decoration: none; }
.admin-events-page .admin-events-sort-link:hover { color: var(--admin-text); }
.admin-events-page .admin-events-sort-link:focus-visible { outline: 2px solid var(--admin-focus-accent-strong); outline-offset: 2px; }
.admin-events-page .admin-events-sort-icon { width: 0.75rem; height: 0.75rem; flex: 0 0 auto; color: var(--admin-navigation-accent); }
.admin-events-page .event-table th.event-actions-heading { padding-left: calc(1rem + 0.55rem); text-align: left; }
.admin-events-page .event-actions-heading-label { display: inline-block; }
.admin-events-page .event-row-action { text-align: left; }
.admin-events-page .attention-count { color: var(--admin-status-yellow); font-size: 0.75rem; font-weight: 400; }
.admin-events-page .muted-value { color: var(--admin-muted); }
.admin-events-page .admin-events-toolbar { justify-content: space-between; }
.admin-events-page .admin-events-state-select { position: relative; min-width: 0; }
.admin-events-page .admin-events-state-select .admin-filter-select { width: 100%; padding-right: 2rem; background-image: none; }
.admin-events-page .admin-events-state-chevron { position: absolute; top: 50%; right: 0.6rem; width: 0.875rem; height: 0.875rem; pointer-events: none; color: var(--admin-muted); transform: translateY(-50%); }
.admin-events-page .admin-local-filter-empty[hidden] { display: none; }
.admin-events-page .event-list-empty { margin: 0; padding: 1.5rem; color: var(--admin-text-soft); text-align: center; }
.admin-events-page .event-list-empty h2 { margin: 0; color: var(--admin-text); font-size: 0.8125rem; font-weight: 500; line-height: 1.35; }
.admin-events-page .event-list-empty p { margin: 0.25rem 0 0; color: var(--admin-muted); font-size: 0.6875rem; line-height: 1.4; }

@media (max-width: 1100px) {
  .admin-events-directory-controls { grid-template-columns: 1fr; align-items: stretch; }
  .admin-events-page .admin-events-toolbar { grid-template-columns: 1fr; gap: 0.75rem; }
  .admin-events-page .admin-events-search { width: 100%; }
  .admin-events-page .admin-events-state-filter { grid-template-columns: auto auto minmax(0, 1fr); width: 100%; }
  .admin-events-directory-controls > .admin-button-create { justify-self: end; }
  .admin-events-page .admin-events-table-wrap { overflow: visible; background: transparent; }
  .admin-events-page .admin-events-table-scroll { overflow: visible; }
  .admin-events-page .event-table,
  .admin-events-page .event-table tbody,
  .admin-events-page .event-table tr,
  .admin-events-page .event-table td { display: block; width: 100%; min-width: 0; }
  .admin-events-page .event-table thead { display: none; }
  .admin-events-page .event-table tbody { display: grid; gap: 0.75rem; }
  .admin-events-page .event-table tr { padding: 0.875rem; background: var(--admin-surface); border: 0; border-radius: 0.75rem; }
  .admin-events-page .event-table td { display: grid; grid-template-columns: minmax(6rem, 7rem) minmax(0, 1fr); gap: 0.65rem; padding: 0.35rem 0; border: 0; }
  .admin-events-page .event-table td::before { color: var(--admin-muted); content: attr(data-label); font-size: 0.625rem; font-weight: 500; letter-spacing: normal; line-height: 1.35; text-transform: none; }
  .admin-events-page .event-table td > strong,
  .admin-events-page .event-table td > small,
  .admin-events-page .event-table td > span { grid-column: 2; min-width: 0; }
  .admin-events-page .event-table .event-row-action { display: block; margin-top: 0.35rem; padding-top: 0.35rem; text-align: right; }
  .admin-events-page .event-table .event-row-action::before { content: none; }
}

@media (prefers-reduced-motion: reduce) {
.admin-events-page .event-table tbody tr { transition: none; }
}

/* Participants workspace: compact signup settings, directory toolbar, and shared table cards. */
.admin-shell-body .event-participants-page { gap: 0.75rem; }
.admin-shell-body .event-participants-page .participant-settings-panel { margin: 0; padding: 1rem; background: var(--admin-surface); border: 0; border-radius: 0.75rem; }
.participant-settings-heading { display: flex; align-items: start; justify-content: space-between; gap: 1rem; margin-bottom: 0.85rem; }
.participant-settings-heading h2 { margin: 0; color: var(--admin-text); font-family: inherit; font-size: 0.875rem; font-weight: 600; line-height: 1.25; }
.participant-settings-heading p { margin: 0.25rem 0 0; color: var(--admin-muted); font-size: 0.6875rem; line-height: 1.4; }
.participant-settings-grid { display: grid; width: 100%; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.25rem; align-items: stretch; }
.participant-settings-region { display: flex; min-width: 0; flex-direction: column; padding: 0.9rem; background: var(--admin-surface); border-radius: 0.5rem; }
.participant-capacity-region .participant-settings-heading { margin-bottom: 0.75rem; }
.participant-signup-form-region .participant-settings-heading { margin-bottom: 0; }
.participant-form-preview { display: grid; gap: 0.45rem; margin-top: 0.35rem; padding: 0.65rem 0.75rem; background: var(--admin-surface-soft); border-radius: 0.4rem; }
.participant-form-summary { margin: 0; color: var(--admin-muted); font-size: 0.625rem; line-height: 1.4; }
.participant-form-preview-list { display: grid; gap: 0.35rem; margin: 0; padding: 0; list-style: none; }
.participant-form-preview-list li { display: flex; align-items: center; justify-content: space-between; gap: 0.75rem; min-width: 0; }
.participant-form-preview-list li span { min-width: 0; overflow: hidden; color: var(--admin-text-soft); font-size: 0.6875rem; font-weight: 400; line-height: 1.35; text-overflow: ellipsis; white-space: nowrap; }
.participant-form-preview-list li small { flex: 0 0 auto; color: var(--admin-muted); font-size: 0.625rem; line-height: 1.35; }
.participant-capacity-region .participant-capacity-summary { display: block; margin: 0.3rem 0 0; color: var(--admin-muted); font-size: 0.6875rem; font-weight: 400; line-height: 1.4; white-space: normal; }
.participant-settings-region .participant-settings-actions { justify-content: flex-end; margin-top: auto; }
.participant-settings-form { gap: 0.85rem; }
.participant-settings-form .event-create-fields { grid-template-columns: minmax(12rem, 18rem) minmax(0, 1fr); }
.participant-capacity-region .participant-settings-form { flex: 1 1 auto; display: flex; flex-direction: column; justify-content: center; }
.participant-capacity-region .participant-settings-form .participant-capacity-fields { width: 100%; max-width: none; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); grid-template-rows: auto auto auto auto; grid-template-areas: "capacity-heading waiting-heading" "capacity-control waiting-control" "capacity-error ." "confirm confirm"; gap: 0.25rem 1.25rem; margin-inline: 0; }
.participant-capacity-region .participant-capacity-field { display: contents; }
.participant-capacity-region .participant-capacity-field > label { grid-area: capacity-heading; }
.participant-capacity-region .participant-capacity-field > input { grid-area: capacity-control; }
.participant-capacity-region .participant-capacity-field > .field-error { grid-area: capacity-error; }
.admin-shell-body .event-participants-page .participant-shared-row-heading { grid-area: waiting-heading; align-self: center; }
.participant-capacity-region .participant-capacity-field > label,
.admin-shell-body .event-participants-page .participant-shared-row-heading { color: var(--admin-text-soft); font-family: inherit; font-size: 0.75rem; font-weight: 500; line-height: 1.25; }
.admin-shell-body .event-participants-page .participant-shared-row-content { display: grid; grid-area: waiting-control; grid-template-columns: auto minmax(0, 1fr); align-items: center; gap: 0.6rem; min-width: 0; }
.participant-settings-actions { padding-top: 0.75rem; border-top: 0; }
.admin-shell-body .event-participants-page .admin-setting-toggle { display: grid; grid-template-columns: 1rem minmax(0, 1fr); align-items: center; gap: 0.6rem; padding-top: 0; }
.admin-shell-body .event-participants-page .admin-setting-toggle-marker { display: flex; height: 1rem; align-items: center; }
.admin-shell-body .event-participants-page .admin-setting-toggle-copy { display: grid; min-width: 0; gap: 0.2rem; }
.admin-shell-body .event-participants-page .admin-setting-toggle-copy > strong { display: block; }
.admin-shell-body .event-participants-page .participant-shared-row { display: contents; }
.admin-shell-body .event-participants-page .participant-shared-row-content .admin-setting-toggle-marker { align-self: center; }
.admin-shell-body .event-participants-page .participant-waiting-confirm { grid-area: confirm; }
.admin-shell-body .event-participants-page .admin-setting-toggle input[type="checkbox"] { flex: 0 0 1rem; width: 1rem; height: 1rem; margin: 0; }
.admin-shell-body .event-participants-page .admin-setting-toggle input[type="checkbox"] { accent-color: var(--admin-navigation-accent); }
.admin-shell-body .event-participants-page .admin-setting-toggle input[type="checkbox"]:focus-visible { outline: 2px solid var(--admin-focus-accent-strong); outline-offset: 2px; }
.admin-shell-body .event-participants-page .participant-row-actions .admin-destructive-confirmation > summary,
.admin-shell-body .event-participants-page .participant-row-actions .admin-destructive-confirmation .action-danger-outline { border-width: 0.5px !important; }
.admin-shell-body .event-participants-page .participant-add-route-trigger { display: inline-flex; }
.participant-add-route-page { display: grid; grid-column: 1 / -1; gap: 0.75rem; width: min(100%, 48rem); margin-inline: auto; }
.participant-add-route-page .participant-add-dialog-page { margin: 0; }
.participant-add-route-page .admin-route-dialog-close { display: none; }
.event-participants-page .admin-events-directory-controls { margin: 0; }
.event-participants-page .admin-events-toolbar { grid-template-columns: minmax(14rem, 18rem) minmax(10rem, 14rem); }
.admin-shell-body .admin-events-page .admin-search-field-input:focus,
.admin-shell-body .admin-events-page .admin-search-field-input:focus-visible,
.admin-shell-body .event-participants-page .admin-search-field-input:focus,
.admin-shell-body .event-participants-page .admin-search-field-input:focus-visible,
.admin-shell-body .admin-accounts-page .admin-search-field-input:focus,
.admin-shell-body .admin-accounts-page .admin-search-field-input:focus-visible { color: var(--admin-text); background: var(--admin-search); border-color: var(--admin-focus-accent); box-shadow: 0 0 0 0.15rem color-mix(in srgb, var(--admin-focus-accent) 20%, transparent); outline: 0; }
.event-participants-page .participant-group-list { gap: 1rem; }
.event-participants-page .participant-group { background: var(--admin-surface); border: 0; border-radius: 0.75rem; }
.participant-group-heading { display: flex; align-items: start; justify-content: space-between; gap: 1rem; padding: 0.85rem 1rem; }
.participant-group-heading h2 { margin: 0; color: var(--admin-text); font-family: inherit; font-size: 0.8125rem; font-weight: 600; line-height: 1.35; }
.participant-group-heading p { margin: 0.2rem 0 0; color: var(--admin-muted); font-size: 0.6875rem; line-height: 1.4; }
.event-participants-page .participant-table-wrap { background: transparent; border: 0; border-radius: 0; }
.event-participants-page .participant-table { min-width: 58rem; }
.event-participants-page .participant-table th { padding: 0.6rem 1rem; color: var(--admin-text); font-size: 0.6875rem; font-weight: 500; line-height: 1.25; text-align: left; vertical-align: middle; }
.event-participants-page .participant-table td { padding: 0.75rem 1rem; }
.participant-sort-link { display: inline-flex; min-height: 1.5rem; align-items: center; gap: 0.35rem; color: inherit; line-height: 1.25; text-decoration: none; }
.participant-actions-heading-label { display: inline-flex; min-height: 1.5rem; align-items: center; line-height: 1.25; }
.participant-sort-link:hover { color: inherit; text-decoration: none; }
.participant-sort-link:focus-visible { outline: 2px solid var(--admin-focus-accent-strong); outline-offset: 2px; }
.participant-sort-icon { display: block; width: 0.75rem; height: 0.75rem; flex: 0 0 0.75rem; align-self: center; color: var(--admin-navigation-accent); }
.participant-status-pill { min-height: 1.45rem; padding: 0.2rem 0.55rem; font-size: 0.625rem; }
.participant-payment-form { display: inline-flex; }
.participant-payment-control { cursor: pointer; font-family: inherit; }
.participant-edit-action { display: inline-flex; width: 1.75rem; height: 1.75rem; align-items: center; justify-content: center; color: var(--admin-text-soft); }
.participant-edit-action:hover { color: var(--admin-text); }
.participant-edit-action:focus-visible { outline: 2px solid var(--admin-focus-accent-strong); outline-offset: 2px; }
.participant-edit-action svg { width: 0.9rem; height: 0.9rem; }
.event-participants-page .participant-table th.event-actions-heading { padding-left: 1rem; text-align: left; }
.event-participants-page .participant-table td.participant-actions-cell { text-align: left; white-space: nowrap; }
.event-participants-page .participant-row-actions { display: inline-flex; width: auto; min-width: 0; align-items: center; justify-content: flex-start; gap: 0.45rem; }
.participant-row-actions form { display: inline-flex; }
.participant-row-actions > small { color: var(--admin-muted); }
.participant-primary-value { display: block; color: var(--admin-text); font-size: 0.75rem; font-weight: 400; line-height: 1.5; }
.event-participants-page .participant-table td > small { font-family: inherit; }
.participant-table-empty td { color: var(--admin-muted); text-align: center; }

@media (max-width: 700px) {
  .participant-settings-heading { align-items: stretch; flex-direction: column; }
  .event-participants-page .admin-events-toolbar { grid-template-columns: 1fr; }
  .participant-settings-actions { align-items: stretch; flex-direction: column; }
  .participant-settings-actions > * { width: 100%; }
  .participant-capacity-region .participant-settings-form .participant-capacity-fields { width: 100%; grid-template-columns: 1fr; grid-template-rows: none; grid-template-areas: none; }
  .participant-capacity-region .participant-capacity-field { display: grid; }
  .admin-shell-body .event-participants-page .participant-shared-row { display: grid; grid-template-columns: 1fr; grid-column: auto; grid-row: auto; align-items: start; gap: 0.35rem; }
  .admin-shell-body .event-participants-page .participant-shared-row-heading,
  .admin-shell-body .event-participants-page .participant-shared-row-content { grid-column: auto; grid-row: auto; }
  .admin-shell-body .event-participants-page .participant-shared-row-heading,
  .admin-shell-body .event-participants-page .participant-shared-row-content,
  .admin-shell-body .event-participants-page .participant-waiting-confirm { grid-area: auto; }
  .admin-shell-body .event-participants-page .participant-shared-row-content { display: flex; align-items: center; gap: 0.6rem; }
}

@media (max-width: 900px) {
  .participant-settings-grid { grid-template-columns: 1fr; }
  .admin-shell-body .event-participants-page .participant-add-route-trigger { display: inline-flex; }
}

@media (max-width: 600px) {
  .event-participants-page .participant-table tr { display: block; padding: 0.875rem; background: var(--admin-surface); border: 0; border-radius: 0.75rem; }
  .event-participants-page .participant-table td { display: grid; grid-template-columns: minmax(6rem, 7rem) minmax(0, 1fr); gap: 0.65rem; padding: 0.35rem 0; }
  .event-participants-page .participant-table td::before { color: var(--admin-muted); content: attr(data-label); font-size: 0.625rem; font-weight: 500; line-height: 1.35; }
  .event-participants-page .participant-table td > strong,
  .event-participants-page .participant-table td > small,
  .event-participants-page .participant-table td > span,
  .event-participants-page .participant-table td > form { grid-column: 2; min-width: 0; }
  .event-participants-page .participant-table td.participant-actions-cell { display: block; grid-column: 1 / -1; margin-top: 0.35rem; padding-top: 0.65rem; border-top: 1px solid var(--admin-divider); }
  .event-participants-page .participant-table td.participant-actions-cell::before { content: none; }
  .event-participants-page .participant-table .participant-row-actions { display: flex; }
}

/* Admin Pass 2: compact five-step event creation. */
.admin-shell-body .event-create-page { width: min(100%, 42rem); max-width: 42rem; margin-inline: auto; padding: 0.25rem 0 2rem; color: var(--admin-text); font-family: inherit; }
.admin-shell-body .event-create-form { display: grid; gap: 0.75rem; }
.admin-shell-body .event-create-layout { grid-template-columns: 1fr; gap: 0.75rem; }
.admin-shell-body .event-create-steps { position: relative; top: auto; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 0.25rem; align-self: auto; padding: 0.5rem; background: var(--admin-surface-soft); border: 0; border-radius: 0.625rem; }
.admin-shell-body .event-create-steps::before { content: none; }
.admin-shell-body .event-create-step { display: flex; flex-direction: row; align-items: center; justify-content: flex-start; gap: 0.35rem; min-height: 2.25rem; min-width: 0; padding: 0.4rem 0.45rem; color: var(--admin-muted); background: transparent; border: 1px solid transparent; border-radius: 0.4rem; font-size: 0.6875rem; text-align: left; }
.admin-shell-body .event-create-step > span { width: 1.25rem; height: 1.25rem; flex: 0 0 auto; color: var(--admin-muted); background: var(--admin-surface-raised); border-color: var(--admin-border); font-size: 0.625rem; font-weight: 700; }
.admin-shell-body .event-create-step-number { display: inline; width: auto; height: auto; background: transparent; border: 0; font-size: inherit; }
.admin-shell-body .event-create-step-check { display: none; width: 0.75rem; height: 0.75rem; }
.admin-shell-body .event-create-step.is-complete .event-create-step-number { display: none; }
.admin-shell-body .event-create-step.is-complete .event-create-step-check { display: block; }
.admin-shell-body .event-create-step strong { overflow: visible; font-size: 0.6875rem; font-weight: 500; line-height: 1.25; text-overflow: clip; white-space: nowrap; }
.admin-shell-body .event-create-step:hover { color: var(--admin-text); background: var(--admin-surface-raised); border-color: var(--admin-border); }
.admin-shell-body .event-create-step[aria-current="step"] { color: var(--admin-text); background: transparent; border-color: transparent; }
.admin-shell-body .event-create-step[aria-current="step"] > span { color: var(--admin-page); background: var(--admin-navigation-accent); border-color: var(--admin-navigation-accent); }
.admin-shell-body .event-create-step.is-complete > span { color: var(--admin-navigation-accent); background: color-mix(in srgb, var(--admin-navigation-accent) 12%, var(--admin-page)); border-color: color-mix(in srgb, var(--admin-navigation-accent) 35%, var(--admin-border)); }
.admin-shell-body .event-create-workspace.panel { display: grid; gap: 1rem; min-width: 0; padding: 0; background: transparent; border: 0; border-radius: 0; box-shadow: none; }
.admin-shell-body .event-create-panel { margin: 0; padding: 1rem; background: var(--admin-surface); border: 0; border-radius: 0.625rem; }
.admin-shell-body .event-create-workspace.panel .event-create-panel { padding: 1rem; }
.admin-shell-body .event-create-page .event-create-panel { padding-top: 1.25rem; }
.admin-shell-body .event-create-panel-heading { align-items: end; margin-bottom: 0.85rem; padding-bottom: 0; border-bottom: 0; }
.admin-shell-body .event-create-panel-heading h2 { color: var(--admin-text); font-family: inherit; font-size: 0.875rem; font-weight: 600; line-height: 1.25; }
.admin-shell-body .event-create-panel-heading .step-kicker { margin: 0 0 0.2rem; color: var(--admin-muted); font-size: 0.625rem; font-weight: 500; letter-spacing: normal; line-height: 1.3; text-transform: none; }
.admin-shell-body .event-create-panel-heading > p { margin: 0; }
.admin-shell-body .custom-question-heading h3 { color: var(--admin-text); font-family: inherit; font-size: 0.8125rem; font-weight: 600; line-height: 1.25; }
.admin-shell-body .event-create-fields { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.75rem; }
.admin-shell-body .event-create-page .event-create-group { min-width: 0; margin: 0; padding: 0.75rem; color: inherit; background: var(--admin-surface-soft); border: 0; border-radius: 0.5rem; }
.admin-shell-body .event-create-page .event-create-group > legend { padding: 0; color: var(--admin-text-soft); font-size: 0.75rem; font-weight: 600; line-height: 1.25; }
.admin-shell-body .event-create-page .event-create-group > .event-create-fields,
.admin-shell-body .event-create-page .event-create-group > .signup-settings-grid,
.admin-shell-body .event-create-page .event-create-group > .signup-code-field { margin-top: 0.6rem; }
.admin-shell-body .event-create-page .custom-question-section { margin-top: 1rem; }
.admin-shell-body .event-create-page .signup-access-group { margin-top: 1rem; }
.admin-shell-body .event-create-field small { color: var(--admin-muted); font-size: 0.625rem; line-height: 1.35; }
.admin-shell-body .planning-fields textarea.form-control { min-height: 3.75rem; }
.admin-shell-body .admin-field input[type="file"].form-control,
.admin-shell-body .event-create-field input[type="file"].form-control { display: flex; align-items: center; min-height: 2.25rem; padding: 0.3rem 0.45rem; line-height: 1.25; }
.admin-shell-body .admin-field input[type="file"]::file-selector-button,
.admin-shell-body .event-create-field input[type="file"]::file-selector-button { height: 1.5rem; margin-block: 0; margin-right: 0.5rem; padding: 0.3rem 0.5rem; color: var(--admin-text-soft); background: var(--admin-surface); border: 1px solid var(--admin-border-strong); border-radius: 0.375rem; font-size: 0.6875rem; line-height: 1.25; }
.admin-shell-body .event-schedule-groups { display: grid; grid-template-columns: 1fr; gap: 0.75rem; }
.admin-shell-body .event-schedule-group { min-width: 0; padding: 0.75rem; background: var(--admin-surface-soft); border: 0; border-radius: 0.5rem; }
.admin-shell-body .event-schedule-group + .event-schedule-group { border-top: 0; }
.admin-shell-body .event-schedule-group-heading { display: flex; justify-content: space-between; gap: 0.5rem; align-items: baseline; margin-bottom: 0.6rem; }
.admin-shell-body .event-schedule-group-heading h3 { margin: 0; color: var(--admin-text-soft); font-size: 0.75rem; font-weight: 600; line-height: 1.25; }
.admin-shell-body .event-schedule-group-heading span { color: var(--admin-muted); font-size: 0.59375rem; text-align: right; }
.admin-shell-body .schedule-secondary-fields { margin-top: 0; padding: 0.9rem 0; }
.admin-shell-body .setting-card { padding: 0.35rem 0; background: transparent; border: 0; border-radius: 0; }
.admin-shell-body .setting-card:has(input:checked) { background: transparent; border-color: transparent; }
.admin-shell-body .setting-card strong { color: var(--admin-text-soft); font-size: 0.6875rem; font-weight: 600; }
.admin-shell-body .setting-card small { color: var(--admin-muted); font-size: 0.625rem; }
.admin-shell-body .event-create-page input[type="checkbox"] { accent-color: var(--admin-navigation-accent); }
.admin-shell-body .event-create-page input[type="checkbox"]:focus-visible { outline: 2px solid var(--admin-focus-accent-strong); outline-offset: 2px; }
.admin-shell-body .event-create-page .setting-card input[type="checkbox"] { align-self: center; margin-top: 0; }
.admin-shell-body .event-create-page .schedule-option-card { padding-top: 0; }
.admin-shell-body .system-field-badge { color: var(--admin-muted); background: var(--admin-surface-raised); border: 0; font-size: 0.59375rem; }
.admin-shell-body .signup-field-list { margin-bottom: 1rem; border-top: 0; }
.admin-shell-body .signup-field-list > div { border-bottom: 0; }
.admin-shell-body .standard-signup-fields-group .signup-field-list { gap: 0.5rem; margin-bottom: 0; }
.admin-shell-body .standard-signup-fields-group .signup-field-list > div { padding: 0.65rem 0.75rem; background: var(--admin-surface-raised); border: 1px solid var(--admin-border); border-radius: 0.5rem; }
.admin-shell-body .signup-field-list strong { color: var(--admin-text-soft); font-size: 0.75rem; font-weight: 600; }
.admin-shell-body .signup-field-list small { color: var(--admin-muted); font-size: 0.625rem; }
.admin-shell-body .custom-question-empty { padding: 0.65rem 0.75rem; color: var(--admin-muted); background: var(--admin-surface-soft); border: 0; border-radius: 0.5rem; font-size: 0.65625rem; }
.admin-shell-body .custom-question-heading p { color: var(--admin-muted); font-size: 0.65625rem; }
.admin-shell-body .custom-question-card { padding: 0.7rem; background: var(--admin-surface-soft); border: 0; border-radius: 0.5rem; }
.admin-shell-body .custom-question-card .compact-setting { padding: 0.35rem 0; background: transparent; border: 0; border-radius: 0; }
.admin-shell-body .custom-question-card-heading strong { color: var(--admin-text-soft); font-size: 0.75rem; }
.admin-shell-body .event-banner-preview { min-height: 5rem; background: var(--admin-surface-raised); border-color: var(--admin-border); font-size: 0.6875rem; }
.admin-shell-body .information-callout { display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: center; gap: 0 0.75rem; margin-top: 0.85rem; padding: 0.75rem; color: color-mix(in srgb, var(--admin-info) 52%, var(--admin-text-soft)); background: var(--admin-surface-soft); border: 0; border-radius: 0.5rem; font-size: 0.6875rem; text-align: left; }
.admin-shell-body .information-callout-heading { display: inline-flex; align-items: center; justify-self: start; gap: 0.35rem; color: color-mix(in srgb, var(--admin-info) 72%, var(--admin-text-soft)); }
.admin-shell-body .information-callout-icon { width: 0.8rem; height: 0.8rem; flex: 0 0 auto; color: currentColor; }
.admin-shell-body .information-callout strong { color: currentColor; font-weight: 600; }
.admin-shell-body .information-callout > span { max-width: none; }
.admin-shell-body .important-callout { color: color-mix(in srgb, var(--admin-info) 52%, var(--admin-text-soft)); background: var(--admin-surface-soft); }
.admin-shell-body .event-create-summary { gap: 0.35rem 1rem; border-top: 0; }
.admin-shell-body .event-create-summary > div { padding: 0.65rem 0.75rem; background: var(--admin-surface-soft); border: 0; border-radius: 0.4rem; }
.admin-shell-body .event-create-summary span { color: var(--admin-muted); font-size: 0.59375rem; font-weight: 500; letter-spacing: normal; text-transform: none; }
.admin-shell-body .event-create-summary strong { color: var(--admin-text); font-size: 0.8125rem; font-weight: 600; }
.admin-shell-body .event-create-summary small { color: var(--admin-muted); font-size: 0.625rem; }
.admin-shell-body .event-create-guided-actions { display: grid; grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr); align-items: center; gap: 0.5rem; margin-top: 0; padding: 0.75rem 0; background: transparent; border: 0; }
.admin-shell-body .event-create-guided-actions > span { grid-column: 2; color: var(--admin-muted); font-size: 0.6875rem; text-align: center; white-space: nowrap; }
.admin-shell-body .event-create-guided-actions [data-create-previous] { grid-column: 1; justify-self: start; }
.admin-shell-body .event-create-guided-actions [data-create-next],
.admin-shell-body .event-create-guided-actions [data-create-submit] { grid-column: 3; justify-self: end; }
.admin-shell-body .event-create-page .create-event-noscript-submit { margin-top: 0.75rem; }
.admin-shell-body .identity-editor-page { width: 100%; margin: 0; padding: 0.5rem 0 2rem; color: var(--admin-text); font-family: inherit; }
.admin-shell-body .identity-editor-layout { display: grid; grid-template-columns: 1fr; gap: 1.25rem; align-items: start; }
.admin-shell-body .identity-editor-main { min-width: 0; }
.admin-shell-body .identity-editor-form { display: grid; width: 100%; gap: 1.25rem; margin: 0; }
.admin-shell-body .identity-editor-group { min-width: 0; margin: 0; padding: 1.25rem; color: inherit; background: var(--admin-surface); border: 0; border-radius: 0.75rem; }
.admin-shell-body .identity-editor-group > legend { display: block; float: left; width: 100%; margin: 0; padding: 0; color: var(--admin-text); font-family: inherit; font-size: 0.875rem; font-weight: 500; line-height: 1.25; }
.admin-shell-body .identity-group-description { clear: both; margin: 0.3rem 0 0.85rem; color: var(--admin-muted); font-size: 0.6875rem; line-height: 1.4; }
.admin-shell-body .identity-editor-page .admin-field > small,
.admin-shell-body .identity-editor-page .identity-banner-field > small,
.admin-shell-body .identity-editor-page .compact-evidence-copy small { color: var(--admin-muted); font-size: 0.625rem; line-height: 1.35; }
.admin-shell-body .identity-primary-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.75rem; align-items: start; clear: both; }
.admin-shell-body .identity-primary-fields > .admin-field > input.form-control,
.admin-shell-body .identity-primary-fields > .admin-field > select.form-select { box-sizing: border-box; height: 2.25rem; min-height: 2.25rem; }
.admin-shell-body .identity-timezone-field,
.admin-shell-body .identity-timezone-reason { max-width: 22rem; }
.admin-shell-body .identity-description-field { grid-column: 1 / -1; }
.admin-shell-body .identity-banner-group { margin-top: 0; }
.admin-shell-body .identity-banner-field { gap: 0.5rem; }
.admin-shell-body .identity-banner-uploader { display: block; min-height: 8rem; padding: 0.75rem; overflow: hidden; background: var(--admin-surface-raised); border: 1px dashed var(--admin-border-strong); border-radius: 0.55rem; }
.admin-shell-body .identity-banner-uploader.has-preview { padding: 0; border-style: solid; }
.admin-shell-body .identity-banner-empty { display: grid; min-height: 6.5rem; place-items: center; padding: 1rem; cursor: pointer; }
.admin-shell-body .identity-banner-empty:hover { background: color-mix(in srgb, var(--admin-accent) 5%, transparent); }
.admin-shell-body .identity-banner-uploader:focus-within { border-color: var(--admin-focus-accent); box-shadow: 0 0 0 0.15rem color-mix(in srgb, var(--admin-focus-accent) 20%, transparent); }
.admin-shell-body .identity-banner-uploader .compact-evidence-preview-button { cursor: pointer; }
.admin-shell-body .identity-banner-uploader .compact-evidence-preview img { width: 100%; max-height: 14rem; object-fit: cover; }
.admin-shell-body .identity-banner-uploader .compact-evidence-remove { top: 0.25rem; right: 0.25rem; width: 2.5rem; height: 2.5rem; }
.admin-shell-body .identity-banner-file-input { margin-top: 0.75rem; }
.admin-shell-body .identity-banner-uploader.has-preview .identity-banner-file-input { margin-top: 0; padding: 0.75rem; }
.admin-shell-body .identity-banner-file-input input[type="file"] { width: 100%; max-width: none; color: var(--admin-muted); background: var(--admin-surface-raised); border-color: var(--admin-border-strong); }
.admin-shell-body .identity-banner-file-input input[type="file"]::file-selector-button { color: var(--admin-text-soft); background: var(--admin-surface); border-color: var(--admin-border-strong); }
.admin-shell-body .identity-banner-remove-form { display: none; }
.admin-shell-body .identity-timezone-confirmation { margin-top: 1rem; }
.admin-shell-body .identity-timezone-confirmation .event-create-summary { margin-top: 0.75rem; }
.admin-shell-body .identity-editor-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 0.5rem; margin-top: 0; padding-top: 0.25rem; }
.admin-shell-body .identity-editor-actions > * { min-height: 2rem; }
.admin-shell-body .identity-event-information-rail { min-width: 0; }
.admin-shell-body .identity-editor-layout > .identity-event-information-rail { grid-area: auto; }
.admin-shell-body .identity-event-information-rail .event-public-pages { margin-top: 0.75rem; }
.admin-shell-body .identity-event-information-rail .event-public-pages h3 { margin: 0 0 0.6rem; }

@media (min-width: 1101px) {
  .admin-shell-body .identity-editor-layout { grid-template-columns: minmax(0, 2fr) minmax(18rem, 1fr); }
  .admin-shell-body .identity-editor-form { width: min(100%, 48rem); margin-inline: auto; }
  .admin-shell-body .identity-event-information-rail { top: calc(var(--admin-header-height) + 0.5rem); }
}

@media (max-width: 1100px) {
  .admin-shell-body .identity-event-information-rail { display: none; }
  .admin-shell-body .identity-editor-form { width: 100%; max-width: none; }
}
.admin-shell-body .schedule-editor-page { width: 100%; margin: 0; padding: 0.5rem 0 2rem; color: var(--admin-text); font-family: inherit; }
.admin-shell-body .schedule-editor-layout { display: grid; grid-template-columns: 1fr; gap: 1.25rem; align-items: start; }
.admin-shell-body .schedule-editor-main { min-width: 0; }
.admin-shell-body .schedule-editor-form { display: grid; width: 100%; gap: 1.25rem; margin: 0; }
.admin-shell-body .schedule-editor-panel { min-width: 0; padding: 1.25rem; background: var(--admin-surface); border: 0; border-radius: 0.75rem; }
.admin-shell-body .schedule-editor-panel .event-schedule-groups { gap: 0.75rem; }
.admin-shell-body .schedule-editor-panel .event-schedule-group { padding: 0.9rem; background: var(--admin-surface-soft); border: 0; border-radius: 0.6rem; }
.admin-shell-body .schedule-editor-panel .event-schedule-group-heading { margin-bottom: 0.75rem; }
.admin-shell-body .schedule-editor-panel .event-schedule-group-heading h3 { color: var(--admin-text); font-size: 0.8125rem; font-weight: 600; }
.admin-shell-body .schedule-editor-panel .event-schedule-group-heading p { max-width: 38rem; }
.admin-shell-body .schedule-editor-panel .schedule-draft-field { margin-top: 0.75rem; }
.admin-shell-body .schedule-editor-panel .schedule-capacity-warning-grid { display: grid; grid-template-columns: 1fr; grid-template-areas: "capacity-label" "capacity-control"; gap: 0.75rem 1.25rem; align-items: stretch; }
.admin-shell-body .schedule-editor-panel .schedule-capacity-warning-grid .schedule-capacity-label { grid-area: capacity-label; }
.admin-shell-body .schedule-editor-panel .schedule-capacity-warning-grid .schedule-capacity-control { grid-area: capacity-control; min-width: 0; }
.admin-shell-body .schedule-editor-panel .schedule-editor-actions { margin-top: 0.75rem; padding-top: 0.25rem; border-top: 0; }
.admin-shell-body .schedule-event-information-rail { min-width: 0; }
.admin-shell-body .schedule-editor-layout > .schedule-event-information-rail { grid-area: auto; }

@media (min-width: 1101px) {
  .admin-shell-body .schedule-editor-page { width: min(100%, 76rem); margin-inline: auto; }
  .admin-shell-body .schedule-editor-layout { grid-template-columns: minmax(0, 2fr) minmax(18rem, 1fr); }
  .admin-shell-body .schedule-editor-form { width: 100%; margin: 0; }
  .admin-shell-body .schedule-event-information-rail { top: calc(var(--admin-header-height) + 0.5rem); }
}

@media (max-width: 1100px) {
  .admin-shell-body .schedule-event-information-rail { display: none; }
  .admin-shell-body .schedule-editor-form { width: 100%; max-width: none; }
}

@media (max-width: 600px) {
  .admin-shell-body .schedule-editor-page { padding-top: 0.25rem; }
  .admin-shell-body .schedule-editor-panel { padding: 0.75rem; }
  .admin-shell-body .schedule-editor-panel .event-schedule-group { padding: 0.75rem; }
  .admin-shell-body .schedule-editor-panel .event-create-fields { grid-template-columns: 1fr; }
  .admin-shell-body .schedule-editor-panel .schedule-editor-actions { justify-content: flex-start; }
  .admin-shell-body .schedule-editor-panel .schedule-editor-actions > * { min-height: 2.25rem; }
}

@media (min-width: 601px) {
  .admin-shell-body .schedule-editor-panel .schedule-capacity-warning-grid { grid-template-columns: minmax(12rem, 18rem); }
}
.admin-shell-body .event-datetime-visual { display: none; }
.admin-shell-body .has-event-datetime-adapters .event-datetime-visual { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.625rem; }
.admin-shell-body .has-event-datetime-adapters .event-datetime-canonical { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }
.admin-shell-body .event-datetime-part { display: block; color: var(--admin-muted); font-size: 0.75rem !important; font-weight: 500 !important; }
.admin-shell-body .event-datetime-part > span:first-child { display: none; }
.admin-shell-body .event-datetime-input { position: relative; display: flex; }
.admin-shell-body .event-datetime-input input { box-sizing: border-box; width: 100%; min-height: 2.25rem; padding: 0.4rem 2rem 0.4rem 0.6rem; color: var(--admin-text); background: var(--admin-surface-raised); border: 1px solid var(--admin-border-strong); border-radius: 0.5rem; font-size: 0.75rem; font-weight: 400; line-height: 1.25; }
.admin-shell-body .event-datetime-input input:focus-visible { outline: 2px solid var(--admin-focus-accent-strong); outline-offset: 1px; border-color: var(--admin-focus-accent); }
.admin-shell-body .event-datetime-input svg { position: absolute; top: 50%; right: 0.6rem; width: 1rem; height: 1rem; color: var(--admin-muted); pointer-events: none; transform: translateY(-50%); }
.admin-shell-body .flatpickr-calendar {
  color: var(--admin-text);
  background: var(--admin-surface);
  border: 1px solid var(--admin-border-strong);
  box-shadow: 0 0.75rem 1.5rem rgba(0, 0, 0, 0.28);
}
.admin-shell-body .flatpickr-calendar.arrowTop::before { border-bottom-color: var(--admin-border-strong); }
.admin-shell-body .flatpickr-calendar.arrowTop::after { border-bottom-color: var(--admin-surface); }
.admin-shell-body .flatpickr-calendar .flatpickr-months,
.admin-shell-body .flatpickr-calendar .flatpickr-weekdays,
.admin-shell-body .flatpickr-calendar .flatpickr-months .flatpickr-month { color: var(--admin-text); background: var(--admin-surface); }
.admin-shell-body .flatpickr-calendar .flatpickr-current-month,
.admin-shell-body .flatpickr-calendar .flatpickr-current-month input.cur-year,
.admin-shell-body .flatpickr-calendar .flatpickr-current-month .flatpickr-monthDropdown-months { color: var(--admin-text); background: transparent; }
.admin-shell-body .flatpickr-calendar .flatpickr-monthDropdown-months option { color: var(--admin-text); background: var(--admin-surface); }
.admin-shell-body .flatpickr-calendar .flatpickr-prev-month,
.admin-shell-body .flatpickr-calendar .flatpickr-next-month { color: var(--admin-muted); fill: var(--admin-muted); }
.admin-shell-body .flatpickr-calendar .flatpickr-prev-month:hover,
.admin-shell-body .flatpickr-calendar .flatpickr-next-month:hover { color: var(--admin-navigation-accent); fill: var(--admin-navigation-accent); }
.admin-shell-body .flatpickr-calendar .flatpickr-weekday { color: var(--admin-muted); }
.admin-shell-body .flatpickr-calendar .flatpickr-day { color: var(--admin-text-soft); border-radius: 0.4rem; }
.admin-shell-body .flatpickr-calendar .flatpickr-day.prevMonthDay,
.admin-shell-body .flatpickr-calendar .flatpickr-day.nextMonthDay,
.admin-shell-body .flatpickr-calendar .flatpickr-day.flatpickr-disabled { color: color-mix(in srgb, var(--admin-muted) 55%, transparent); }
.admin-shell-body .flatpickr-calendar .flatpickr-day:hover,
.admin-shell-body .flatpickr-calendar .flatpickr-day:focus { color: var(--admin-text); background: var(--admin-surface-raised); border-color: var(--admin-surface-raised); }
.admin-shell-body .flatpickr-calendar .flatpickr-day.today { border-color: var(--admin-border-strong); }
.admin-shell-body .flatpickr-calendar .flatpickr-day.selected,
.admin-shell-body .flatpickr-calendar .flatpickr-day.selected:hover { color: var(--admin-page); background: var(--admin-navigation-accent); border-color: var(--admin-navigation-accent); }
.admin-shell-body .flatpickr-calendar.hasTime .flatpickr-time { background: var(--admin-surface); border-top-color: var(--admin-border-strong); }
.admin-shell-body .flatpickr-calendar .event-time-select { color: var(--admin-text); background: var(--admin-surface-raised); border-color: var(--admin-border-strong); }
.admin-shell-body .flatpickr-calendar .event-time-select:focus-visible { outline: 2px solid var(--admin-focus-accent-strong); outline-offset: 1px; border-color: var(--admin-focus-accent); }
.admin-shell-body .schedule-editor-page .event-create-heading { padding-bottom: 0; border-bottom: 0; }
.admin-shell-body .schedule-editor-panel > .admin-section-heading { margin-bottom: 0; }
.admin-shell-body .schedule-editor-panel > .admin-section-heading > p { margin: 0; }
.admin-shell-body .event-schedule-group-heading > div { min-width: 0; }
.admin-shell-body .schedule-editor-panel .event-schedule-group-heading h3 { color: var(--admin-text); font-family: inherit; font-size: 0.75rem; font-weight: 650; }
.admin-shell-body .schedule-editor-panel .event-schedule-group-heading p { margin: 0.2rem 0 0; color: var(--admin-muted); font-size: 0.65625rem; line-height: 1.35; }
.admin-shell-body .schedule-actual-time { margin: 0.65rem 0 0; color: var(--admin-muted); font-size: 0.65625rem; line-height: 1.35; }
.admin-shell-body .schedule-actual-time strong { color: var(--admin-text-soft); font-weight: 650; }
.admin-shell-body .schedule-scheduled-state { margin: 0.65rem 0 0; color: var(--admin-muted); font-size: 0.65625rem; line-height: 1.35; }
.admin-shell-body .schedule-scheduled-state strong { color: var(--admin-text-soft); font-weight: 650; }
.admin-shell-body .schedule-locked-value { display: grid; min-width: 0; gap: 0.25rem; align-content: start; padding: 0.35rem 0; }
.admin-shell-body .schedule-locked-value span { color: var(--admin-muted); font-size: 0.625rem; }
.admin-shell-body .schedule-locked-value strong { color: var(--admin-text-soft); font-size: 0.75rem; font-weight: 600; }
.admin-shell-body .schedule-confirmation-box { margin-top: 1rem; }
.admin-shell-body .schedule-confirmation-box > ul { margin: 0.5rem 0 0; padding-left: 1rem; color: var(--admin-muted); font-size: 0.6875rem; line-height: 1.4; }
.admin-shell-body .schedule-confirmation-box .event-confirmation-actions { justify-content: flex-end; }
.admin-shell-body .schedule-editor-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 0.5rem; margin-top: 1.25rem; padding-top: 1rem; border-top: 1px solid var(--admin-border); }
.admin-shell-body .schedule-editor-actions .event-create-cancel { align-self: auto; }
.admin-shell-body .event-wom-link { margin: 1rem 0 0; padding: 0 0.75rem; background: var(--admin-surface-soft); border: 0; border-radius: 0.5rem; }
.admin-shell-body .event-wom-link[open] { border: 0; }
.admin-shell-body .event-wom-link summary { display: flex; align-items: center; justify-content: space-between; gap: 0.75rem; padding: 0.7rem 0; color: var(--admin-text-soft); cursor: pointer; list-style: none; }
.admin-shell-body .event-wom-link summary::-webkit-details-marker { display: none; }
.admin-shell-body .event-wom-link-label { display: inline-flex; min-width: 0; align-items: center; gap: 0.45rem; }
.admin-shell-body .event-wom-link-label svg { width: 1rem; height: 1rem; flex: 0 0 auto; color: var(--admin-navigation-accent); }
.admin-shell-body .event-wom-link-label strong { font-size: 0.6875rem; font-weight: 600; }
.admin-shell-body .event-wom-link-label small { color: var(--admin-muted); font-size: 0.625rem; }
.admin-shell-body .event-wom-link-chevron { width: 0.9rem; height: 0.9rem; flex: 0 0 auto; color: var(--admin-muted); }
.admin-shell-body .event-wom-link-body { display: grid; gap: 0.75rem; padding: 0 0 0.75rem; }
.admin-shell-body .event-wom-link-body > p { margin: 0; color: var(--admin-muted); font-size: 0.65625rem; line-height: 1.4; }
.admin-shell-body .event-create-name-field .event-create-label-row { display: flex; min-width: 0; align-items: baseline; justify-content: space-between; gap: 0.5rem; flex-wrap: wrap; }
.admin-shell-body .event-create-name-field .event-create-inline-error { color: var(--admin-danger); font-size: 0.625rem; font-weight: 600; line-height: 1.25; }
.admin-shell-body .schedule-waiting-list { display: grid; gap: 0.3rem; margin: 0; padding: 0; }
.admin-shell-body .event-create-step:focus-visible { outline: 2px solid var(--admin-focus-accent-strong); outline-offset: 2px; }

@media (max-width: 899px) {
  .admin-shell-body .event-create-layout { grid-template-columns: 1fr; }
  .admin-shell-body .event-create-steps { position: static; grid-template-columns: repeat(5, minmax(0, 1fr)); }
}
@media (min-width: 640px) {
  .admin-shell-body .event-create-steps { padding: 0.75rem; gap: 0.5rem; }
  .admin-shell-body .event-create-step strong { font-size: 0.75rem; }
  .admin-shell-body .event-create-guided-actions { padding-block: 1rem; }
}
@media (max-width: 767px) {
  .admin-shell-body .event-create-panel-heading { align-items: start; }
  .admin-shell-body .event-create-guided-actions > span { order: initial; width: auto; }
  .admin-shell-body .event-create-guided-actions [data-create-next],
  .admin-shell-body .event-create-guided-actions [data-create-submit] { margin-left: 0; }
  .admin-shell-body .information-callout { grid-template-columns: 1fr; gap: 0.35rem; }
}
@media (max-width: 600px) {
  .admin-shell-body .event-create-page { padding-top: 0; }
  .admin-shell-body .event-create-steps { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .admin-shell-body .event-create-step { flex-direction: row; justify-content: flex-start; gap: 0.45rem; padding: 0.45rem; text-align: left; }
  .admin-shell-body .event-create-step:last-child { grid-column: 1 / -1; }
  .admin-shell-body .event-create-step strong { white-space: normal; }
  .admin-shell-body .event-create-page .event-create-panel { padding-top: 1.25rem; }
  .admin-shell-body .event-create-panel-heading { align-items: start; }
  .admin-shell-body .event-create-guided-actions { gap: 0.4rem; }
  .admin-shell-body .event-schedule-groups { grid-template-columns: 1fr; }
  .admin-shell-body .event-schedule-group-heading { align-items: start; flex-direction: column; gap: 0.2rem; }
  .admin-shell-body .event-schedule-group-heading span { text-align: left; }
  .admin-shell-body .schedule-editor-actions { justify-content: flex-start; }
  .admin-shell-body .schedule-editor-actions > * { flex: 0 1 auto; }
  .admin-shell-body .event-create-fields, .admin-shell-body .event-create-summary { grid-template-columns: 1fr; }
  .admin-shell-body .event-create-field.full-field { grid-column: auto; }
  .admin-shell-body .identity-primary-fields { grid-template-columns: 1fr; }
  .admin-shell-body .identity-timezone-field,
  .admin-shell-body .identity-timezone-reason,
  .admin-shell-body .identity-description-field { grid-column: auto; max-width: none; }
  .admin-shell-body .identity-editor-actions { align-items: stretch; flex-direction: column-reverse; justify-content: stretch; }
  .admin-shell-body .identity-editor-actions > * { width: 100%; justify-content: center; }
}
@media (max-width: 480px) {
  .admin-shell-body .has-event-datetime-adapters .event-datetime-visual { grid-template-columns: 1fr; }
}

/* Route dialogs use one Manage-style component inside a transparent native container. */
.admin-shell-body .admin-dialog-page.event-overview-section { width: 100%; max-width: none; margin: 0; }
.admin-shell-body .admin-dialog-page.event-overview-section > .admin-dialog-page-body { padding: 0; }
.admin-shell-body .admin-dialog-page .admin-dialog-form { gap: 0.75rem; margin-top: 0.75rem; }
.admin-shell-body .admin-dialog-page .admin-dialog-form-section,
.admin-shell-body .admin-dialog-page .admin-dialog-inner-row { grid-template-columns: 1fr; gap: 0.75rem; align-items: stretch; margin: 0; padding: 0.8rem; background: var(--admin-surface-soft); border: 0; border-radius: 0.75rem; }
.admin-shell-body .admin-dialog-component-heading { align-items: start; }
.admin-shell-body .admin-dialog-component-heading > div { min-width: 0; }

/* Add participant is one Manage-style component, not a nested page surface. */
.admin-shell-body .participant-add-dialog-page { padding: 1.25rem; background: var(--admin-surface); border: 0; border-radius: 0.75rem; }
.admin-shell-body .participant-add-dialog-page .event-overview-section-heading { padding-bottom: 0; }
.admin-shell-body .participant-add-dialog-page .event-overview-section-heading h2 { font-size: 17px; font-weight: 600; line-height: 1.25; }
.admin-shell-body .participant-add-dialog-page .event-overview-section-heading p { margin: 0.35rem 0 0; color: var(--admin-muted); font-size: 0.6875rem; line-height: 1.4; }
.admin-shell-body .participant-add-dialog-page .admin-dialog-form { gap: 1.25rem; margin-top: 1.25rem; }
.admin-shell-body .participant-add-dialog-page .admin-dialog-form-section { gap: 0.75rem; padding: 1rem; background: var(--admin-surface-soft); border-radius: 0.75rem; }
.admin-shell-body .participant-add-dialog-page .admin-dialog-section-heading h4 { font-size: 0.75rem; font-weight: 500; line-height: 1.25; }
.admin-shell-body .participant-add-dialog-page .admin-dialog-section-heading p { margin-top: 0.2rem; }
.admin-shell-body .participant-add-dialog-page .participant-account-controls { display: grid; grid-template-columns: minmax(0, 1fr) minmax(7rem, 0.5fr); gap: 0.75rem; }
.admin-shell-body .participant-add-dialog-page .participant-account-controls.is-single { grid-template-columns: 1fr; }
.admin-shell-body .participant-add-dialog-page .admin-dialog-page-actions { padding-top: 0; }

@media (max-width: 700px) {
  .admin-shell-body .participant-add-dialog-page .participant-account-controls { grid-template-columns: 1fr; }
}

/* Questions uses the Manage component hierarchy in both route and dialog views. */
.admin-shell-body .signup-question-page {
  width: min(100%, 64rem);
  margin-inline: auto;
  padding: 1.25rem 0 3rem;
  color: var(--admin-text);
}
.admin-shell-body .signup-question-page.signup-question-dialog { width: 100%; max-width: none; margin: 0; padding: 1.25rem; color: var(--admin-text); background: var(--admin-surface); border: 0; border-radius: 0.75rem; }
.admin-shell-body .signup-question-page-heading { display: flex; justify-content: space-between; gap: 1rem; align-items: start; margin-bottom: 1rem; }
.admin-shell-body .signup-question-page-heading h1 { margin: 0; color: var(--admin-text); font-family: inherit; font-size: 1.25rem; font-weight: 600; line-height: 1.25; }
.admin-shell-body .signup-question-page-heading p { max-width: 42rem; margin: 0.3rem 0 0; color: var(--admin-muted); font-size: 0.75rem; line-height: 1.45; }
.admin-shell-body .signup-question-workspace { display: grid; gap: 1rem; }
.admin-shell-body .signup-question-dialog .signup-question-workspace { margin-top: 0.75rem; padding: 0; }
.admin-shell-body .signup-question-row { display: grid; gap: 0.75rem; margin: 0; }
.admin-shell-body .signup-question-page:not(.signup-question-dialog) .signup-question-row { padding: 1rem; background: var(--admin-surface); border-radius: 0.75rem; }
.admin-shell-body .signup-question-row-heading { display: flex; justify-content: space-between; gap: 1rem; align-items: start; }
.admin-shell-body .signup-question-row-heading h2 { margin: 0; color: var(--admin-text); font-family: inherit; font-size: 0.75rem; font-weight: 500; line-height: 1.25; }
.admin-shell-body .signup-question-row-heading p { max-width: 30rem; margin: 0; color: #8a8a8e; font-size: 0.6875rem; font-weight: 400; line-height: 1.4; text-align: right; }
.admin-shell-body .signup-question-page .standard-signup-fields-group { min-width: 0; margin: 0; padding: 0.75rem; color: inherit; background: var(--admin-surface-soft); border: 0; border-radius: 0.5rem; }
.admin-shell-body .signup-question-page .signup-question-standard-heading h2 { margin: 0; color: var(--admin-text-soft); font-family: inherit; font-size: 0.75rem; font-weight: 600; line-height: 1.25; }
.admin-shell-body .signup-question-page .standard-signup-fields-group .signup-field-list { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.5rem; margin: 0.25rem 0 0; border-top: 0; }
.admin-shell-body .signup-question-page .standard-signup-fields-group .signup-field-list > div { padding: 0.65rem 0.75rem; background: var(--admin-surface-raised); border: 1px solid var(--admin-border); border-radius: 0.5rem; }
.admin-shell-body .signup-question-page .standard-signup-fields-group .signup-field-list strong { color: var(--admin-text-soft); font-size: 0.75rem; font-weight: 600; }
.admin-shell-body .signup-question-page .standard-signup-fields-group .signup-field-list small { color: var(--admin-muted); font-size: 0.625rem; }
.admin-shell-body .signup-question-page .standard-signup-fields-group .system-field-badge { color: var(--admin-muted); background: var(--admin-surface-raised); border: 0; font-size: 0.59375rem; }
.admin-shell-body .signup-question-empty { margin: 0; padding: 0.65rem 0; color: #8a8a8e; font-size: 0.6875rem; font-weight: 400; line-height: 1.4; }
.admin-shell-body .signup-question-list { display: grid; gap: 0.45rem; }
.admin-shell-body .signup-question-item { display: grid; grid-template-columns: 1.25rem minmax(0, 1fr) auto auto 1.5rem; gap: 0.4rem; align-items: center; min-width: 0; padding: 0.65rem 0.75rem; background: var(--admin-surface-soft); border-radius: 0.45rem; }
.admin-shell-body .signup-question-number { display: grid; width: 1.25rem; height: 1.25rem; place-items: center; color: #8a8a8e; background: transparent; border-radius: 50%; font-size: 0.6875rem; font-weight: 400; }
.admin-shell-body .signup-question-item > .signup-question-copy { grid-column: 2; grid-row: 1; min-width: 0; }
.admin-shell-body .signup-question-item .signup-question-name,
.admin-shell-body .signup-question-item small { display: block; }
.admin-shell-body .signup-question-item .signup-question-name { color: var(--admin-text); font-size: 0.75rem; font-weight: 500; line-height: 1.35; }
.admin-shell-body .signup-question-item small { margin-top: 0.12rem; color: #8a8a8e; font-size: 0.6875rem; font-weight: 400; line-height: 1.4; }
.admin-shell-body .signup-question-item > .signup-question-edit,
.admin-shell-body .signup-question-item > .signup-question-remove { display: contents; margin: 0; }
.admin-shell-body .signup-question-item > .signup-question-edit > summary { grid-column: 3; grid-row: 1; }
.admin-shell-body .signup-question-item > .signup-question-edit-form { grid-column: 1 / -1; grid-row: 2; width: auto; min-width: 0; justify-self: stretch; }
.admin-shell-body .signup-question-item > .signup-question-remove > summary { grid-column: 4; grid-row: 1; }
.admin-shell-body .signup-question-item > .signup-question-remove > .event-confirmation-box { grid-column: 1 / -1; grid-row: 2; position: static; width: auto; min-width: 0; margin: 0.65rem 0 0; }
.admin-shell-body .signup-question-item > .signup-question-order-actions { grid-column: 5; grid-row: 1; }
.admin-shell-body .signup-question-edit-action { display: grid; width: 1.75rem; height: 2rem; place-items: center; padding: 0; color: var(--admin-muted); background: transparent; border: 0; border-radius: 0.3rem; cursor: pointer; list-style: none; }
.admin-shell-body .signup-question-edit-action::-webkit-details-marker { display: none; }
.admin-shell-body .signup-question-edit-action svg { width: 0.9rem; height: 0.9rem; }
.admin-shell-body .signup-question-edit-action:hover { color: var(--admin-text); background: var(--admin-surface-active); }
.admin-shell-body .signup-question-edit-action:focus-visible { outline: 2px solid var(--admin-focus-accent-strong); outline-offset: 2px; }
.admin-shell-body .signup-question-order-actions { display: grid; gap: 0.05rem; justify-items: center; }
.admin-shell-body .signup-question-order-actions > form { margin: 0; }
.admin-shell-body .signup-question-order-button { display: grid; width: 1.5rem; min-width: 1.5rem; height: 1.15rem; min-height: 1.15rem; place-items: center; padding: 0; color: var(--admin-muted); background: transparent !important; border: 0 !important; border-radius: 0.25rem; box-shadow: none !important; font-size: 0.6875rem; font-weight: 500; line-height: 1; }
.admin-shell-body .signup-question-order-button:hover { color: var(--admin-text); background: transparent !important; }
.admin-shell-body .signup-question-order-button:focus-visible { outline: 2px solid var(--admin-focus-accent-strong); outline-offset: 2px; }
.admin-shell-body .signup-question-item .signup-question-remove[open] { z-index: 2; }
.admin-shell-body .signup-question-edit-form { display: grid; gap: 0.65rem; margin-top: 0.65rem; padding-top: 0.65rem; }
.admin-shell-body .signup-question-edit-form[hidden] { display: none; }
.admin-shell-body .signup-question-edit-form > p { margin: 0; color: #8a8a8e; font-size: 0.6875rem; font-weight: 400; line-height: 1.4; }
.admin-shell-body .signup-question-page .signup-question-add-row,
.admin-shell-body .signup-question-page .signup-question-access-row {
  min-width: 0;
  padding: 0.9rem;
  background: var(--admin-surface-soft);
  border: 0;
  border-radius: 0.6rem;
}
.admin-shell-body .signup-question-page .signup-question-custom-row {
  min-width: 0;
  padding: 0;
  background: transparent;
  border-radius: 0;
}
.admin-shell-body .signup-question-page:not(.signup-question-dialog) .signup-question-custom-row {
  padding: 0;
  background: transparent;
  border-radius: 0;
}
.admin-shell-body .signup-question-page .signup-question-custom-row .signup-question-list { gap: 0.75rem; }
.admin-shell-body .signup-question-page .signup-question-custom-row .signup-question-item { border-radius: 0.75rem; }
.admin-shell-body .signup-question-page .signup-question-add,
.admin-shell-body .signup-question-page .signup-code-form {
  display: grid;
  min-width: 0;
  gap: 1rem;
  margin: 0;
  padding: 0;
  background: transparent;
  border: 0;
  border-radius: 0;
}
.admin-shell-body .signup-question-page .signup-question-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.75rem; align-items: start; }
.admin-shell-body .signup-question-page .signup-question-field.full-field { grid-column: 1 / -1; }
.admin-shell-body .signup-question-page .signup-question-field > small,
.admin-shell-body .signup-question-page .signup-code-help { color: var(--admin-muted); font-size: 0.6875rem; font-weight: 400; line-height: 1.4; }
.admin-shell-body .signup-question-page .signup-question-toggle {
  display: grid;
  grid-template-columns: 1rem minmax(0, 1fr);
  align-items: center;
  gap: 0.6rem;
  margin: 0;
  color: var(--admin-text-soft);
  font-size: 0.75rem;
  font-weight: 400;
}
.admin-shell-body .signup-question-page .signup-question-toggle .admin-setting-toggle-marker { display: flex; width: 1rem; height: 1rem; align-items: center; }
.admin-shell-body .signup-question-page .signup-question-toggle input[type="checkbox"] { width: 1rem; height: 1rem; margin: 0; accent-color: var(--admin-navigation-accent); }
.admin-shell-body .signup-question-page .signup-question-toggle input[type="checkbox"]:focus-visible { outline: 2px solid var(--admin-focus-accent-strong); outline-offset: 2px; }
.admin-shell-body .signup-question-page .signup-question-toggle .admin-setting-toggle-copy { display: grid; gap: 0.2rem; color: var(--admin-text-soft); }
.admin-shell-body .signup-question-page .signup-question-toggle .admin-setting-toggle-copy > small { color: var(--admin-muted); font-size: 0.6875rem; font-weight: 400; line-height: 1.35; }
.admin-shell-body .signup-question-page .signup-question-fields > .signup-question-toggle { align-self: end; min-height: 2.25rem; padding-top: 1.35rem; }
.admin-shell-body .signup-question-page .signup-question-add-actions { display: flex; align-items: center; justify-content: space-between; gap: 0.75rem; margin: 0; }
.admin-shell-body .signup-question-page .signup-question-add-actions.without-info { justify-content: flex-end; }
.admin-shell-body .signup-question-page .signup-question-add-actions .signup-question-help-note { display: grid; flex: 1 1 auto; grid-template-columns: auto minmax(0, 1fr); min-width: 0; align-items: center; gap: 0 0.45rem; margin: 0; }
.admin-shell-body .signup-question-page .signup-question-add-actions .signup-question-help-note .information-callout-heading { grid-column: 1; }
.admin-shell-body .signup-question-page .signup-question-add-actions .signup-question-help-note > span { grid-column: 2; min-width: 0; }
.admin-shell-body .signup-question-page .signup-code-form { grid-template-columns: minmax(12rem, 1fr) minmax(12rem, 16rem) auto; align-items: center; gap: 0.75rem; max-width: none; }
.admin-shell-body .signup-question-page .signup-code-heading { display: block; grid-column: 1 / -1; }
.admin-shell-body .signup-question-page .signup-code-heading h2 { margin: 0; color: var(--admin-text); font-family: inherit; font-size: 0.75rem; font-weight: 600; line-height: 1.25; }
.admin-shell-body .signup-question-page .signup-code-heading p { max-width: 42rem; margin: 0.2rem 0 0; color: var(--admin-muted); font-size: 0.6875rem; font-weight: 400; line-height: 1.4; text-align: left; }
.admin-shell-body .signup-question-page .signup-code-form .signup-question-toggle { align-self: center; }
.admin-shell-body .signup-question-page .signup-code-control { display: grid; min-width: 0; gap: 0.25rem; }
.admin-shell-body .signup-question-page .signup-code-control > .admin-field { min-width: 0; }
.admin-shell-body .signup-question-page .signup-code-control > .signup-code-help { color: var(--admin-muted); font-family: inherit; font-size: 0.625rem; font-weight: 400; line-height: 1.35; }
.admin-shell-body .signup-question-page .signup-code-form > .admin-button-secondary { grid-column: 3; justify-self: end; }

/* The dialog is one Manage surface; sections use spacing and tonal rows. */
.admin-shell-body .signup-question-dialog > .admin-dialog-component-heading { margin: 0; padding: 0; }
.admin-shell-body .signup-question-dialog > .admin-dialog-component-heading { padding-bottom: 0.35rem; border-bottom: 0; }
.admin-shell-body .signup-question-dialog > .admin-dialog-component-heading h2 { margin: 0; color: var(--admin-text); font-family: inherit; font-size: 1.0625rem; font-weight: 600; line-height: 1.25; }
.admin-shell-body .signup-question-dialog > .admin-dialog-component-heading p { margin: 0.2rem 0 0; color: #8a8a8e; font-size: 0.6875rem; font-weight: 400; line-height: 1.4; }
.admin-shell-body .signup-question-dialog .signup-question-row-heading h2 { color: var(--admin-text); font-size: 0.75rem; font-weight: 500; line-height: 1.25; }
.admin-shell-body .signup-question-dialog .signup-question-row-heading p { color: #8a8a8e; font-weight: 400; }
.admin-shell-body .signup-question-dialog .signup-question-list { gap: 0.6rem; }
.admin-shell-body .signup-question-dialog .signup-question-item { padding: 1rem; background: var(--admin-surface-soft); border: 0; border-radius: 0.75rem; }
.admin-shell-body .signup-question-page .admin-button-secondary,
.admin-shell-body .signup-question-page .action-danger-outline { font-weight: 500; letter-spacing: normal; text-transform: none; }
.admin-shell-body .signup-question-page .signup-question-add-actions .admin-button-primary { font-weight: 600; }
.admin-shell-body .signup-question-page .signup-question-toggle-label { color: var(--admin-text-soft); font-size: 0.75rem; font-weight: 400; line-height: 1.25; }
.admin-shell-body .signup-question-page .signup-question-confirmation-title,
.admin-shell-body .signup-question-page .signup-question-lock-title { color: inherit; font-weight: 400; }
.admin-shell-body .signup-question-page .admin-button-secondary { color: var(--admin-text-soft); background: var(--admin-surface-raised); border-color: var(--admin-border); }
.admin-shell-body .signup-question-page .admin-button-secondary:hover { color: var(--admin-text); background: var(--admin-surface-active); border-color: var(--admin-border-strong); }
.admin-shell-body .signup-question-page .signup-code-form .admin-setting-toggle { padding-top: 0; }

@media (max-width: 700px) {
  .admin-shell-body .signup-question-page { padding-top: 0.85rem; }
  .admin-shell-body .signup-question-page.signup-question-dialog { padding: 1.25rem; }
  .admin-shell-body .signup-question-page-heading,
  .admin-shell-body .signup-question-row-heading { flex-direction: column; gap: 0.35rem; }
  .admin-shell-body .signup-question-page-heading > .admin-button-secondary { align-self: start; }
  .admin-shell-body .signup-question-row-heading p { max-width: none; text-align: left; }
  .admin-shell-body .signup-question-page .signup-question-fields { grid-template-columns: 1fr; }
  .admin-shell-body .signup-question-page .signup-question-field.full-field { grid-column: auto; }
  .admin-shell-body .signup-question-item { grid-template-columns: 1.25rem minmax(0, 1fr) auto auto 1.5rem; gap: 0.25rem; }
  .admin-shell-body .signup-question-page .standard-signup-fields-group .signup-field-list { grid-template-columns: 1fr; }
  .admin-shell-body .signup-question-page .signup-code-heading p { max-width: none; }
  .admin-shell-body .signup-question-page .signup-question-add-actions { align-items: stretch; flex-direction: column; }
  .admin-shell-body .signup-question-page .signup-question-add-actions.without-info { align-items: flex-end; }
  .admin-shell-body .signup-question-page .signup-question-add-actions .admin-button-create { align-self: flex-start; }
  .admin-shell-body .signup-question-page .signup-question-add-actions.without-info .admin-button-create { align-self: flex-end; }
  .admin-shell-body .signup-question-page .signup-code-form { grid-template-columns: 1fr; }
  .admin-shell-body .signup-question-page .signup-code-control { grid-column: auto; }
.admin-shell-body .signup-question-page .signup-code-form > .admin-button-secondary { grid-column: auto; grid-row: auto; }
}

/* Participant edit reuses the shared route-dialog component surface. */
.admin-shell-body .participant-edit-dialog-page {
  box-sizing: border-box;
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 1.25rem;
  color: var(--admin-text);
  background: var(--admin-surface);
  border: 0;
  border-radius: 0.75rem;
  font-family: inherit;
}
.admin-shell-body .participant-edit-dialog-page > .event-create-heading { display: none; }
.admin-shell-body .participant-edit-dialog-page .participant-edit-dialog-heading { display: flex; }
.admin-shell-body .participant-edit-dialog-page .participant-edit-dialog-heading h2 { font-family: inherit; }
.admin-shell-body .participant-edit-dialog-page .participant-edit-dialog-heading h2 { font-size: 1.0625rem; font-weight: 600; line-height: 1.25; }
.admin-shell-body .participant-edit-dialog-page .participant-edit-dialog-heading p { margin: 0.35rem 0 0; color: var(--admin-muted); font-size: 0.6875rem; font-weight: 400; line-height: 1.4; }
.admin-shell-body .participant-edit-dialog-page .participant-admin-workspace { grid-template-columns: 1fr; gap: 1.25rem; }
.admin-shell-body .participant-edit-dialog-page .participant-edit-card { background: transparent; border: 0; border-radius: 0; box-shadow: none; }
.admin-shell-body .participant-edit-dialog-page .participant-edit-card { padding: 0; gap: 1.25rem; }
.admin-shell-body .participant-edit-dialog-page .participant-admin-sidebar { gap: 1.25rem; }
.admin-shell-body .participant-edit-dialog-page .participant-edit-component { padding: 1.25rem; background: var(--admin-surface-soft); border: 0; border-radius: 0.75rem; }
.admin-shell-body .participant-edit-dialog-page .participant-edit-card > header,
.admin-shell-body .participant-edit-dialog-page .participant-summary-card header { padding: 0; border-bottom: 0; }
.admin-shell-body .participant-edit-dialog-page .participant-custom-answers { gap: 1.25rem; padding-top: 0; border-top: 0; }
.admin-shell-body .participant-edit-dialog-page .participant-previous-answers { padding: 0; border: 0; }
.admin-shell-body .participant-edit-dialog-page .participant-edit-card > footer { padding-top: 0; border-top: 0; }
.admin-shell-body .participant-edit-dialog-page .participant-field-grid { gap: 0.75rem; }
.admin-shell-body .participant-edit-dialog-page .participant-field-grid > .admin-field { min-width: 0; }
.admin-shell-body .participant-edit-dialog-page .participant-edit-card p,
.admin-shell-body .participant-edit-dialog-page .participant-admin-sidebar p { color: var(--admin-muted); font-size: 0.6875rem; line-height: 1.4; }
.admin-shell-body .participant-admin-page .participant-account-controls { display: grid; grid-template-columns: minmax(0, 1fr) minmax(6rem, 0.45fr); gap: 0.75rem; align-items: start; }
.admin-shell-body .participant-admin-page .participant-account-controls.is-single { grid-template-columns: 1fr; }
.admin-shell-body .participant-edit-dialog-page .participant-account-controls > div { min-width: 0; }
.admin-shell-body .participant-edit-dialog-page .field-error { display: block; color: var(--admin-danger); font-size: 0.625rem; font-weight: 500; line-height: 1.35; }
.admin-shell-body .participant-edit-dialog-page .participant-read-only-note { margin: 0; }
.admin-shell-body .participant-edit-dialog-page .participant-detail-rows { display: grid; gap: 0.5rem; margin: 0; }
.admin-shell-body .participant-edit-dialog-page .participant-detail-rows > div { display: grid; grid-template-columns: minmax(7rem, 0.8fr) minmax(0, 1fr); gap: 0.75rem; padding: 0.75rem; background: var(--admin-surface-soft); border-radius: 0.5rem; }
.admin-shell-body .participant-edit-dialog-page .participant-detail-rows dt { color: var(--admin-text-soft); font-size: 0.6875rem; font-weight: 500; }
.admin-shell-body .participant-edit-dialog-page .participant-detail-rows dd { margin: 0; color: var(--admin-text); font-size: 0.75rem; overflow-wrap: anywhere; text-align: right; }
.admin-shell-body .participant-edit-dialog-page .participant-confirmation-box { padding: 0; border-top: 0; }
.admin-shell-body .participant-edit-dialog-page .admin-route-dialog-close svg { width: 0.875rem; height: 0.875rem; }

@media (max-width: 900px) {
  .admin-shell-body .participant-edit-dialog-page { width: auto; max-width: none; margin: 0; padding: 0; background: transparent; border-radius: 0; }
  .admin-shell-body .participant-edit-dialog-page > .event-create-heading { display: flex; }
  .admin-shell-body .participant-edit-dialog-page .participant-edit-dialog-heading { display: none; }
  .admin-shell-body .participant-admin-page .participant-account-controls { grid-template-columns: 1fr; }
}

.admin-shell-body .participant-admin-page .participant-edit-component {
  display: grid;
  gap: 0.75rem;
  padding: 1.25rem;
  background: var(--admin-surface-soft);
  border: 0;
  border-radius: 0.75rem;
  box-shadow: none;
}

/* Catalogue directory and route editor. The shared Admin buttons remain the
   action authority; these selectors only compose the Catalogue surface. */
.admin-shell-body .admin-catalogue-page {
  width: min(100%, 72rem);
  max-width: 72rem;
  margin: 0 auto;
  padding: 1.25rem 0 3rem;
  color: var(--admin-text);
}
.admin-shell-body .admin-catalogue-page .catalogue-page-heading,
.admin-shell-body .admin-catalogue-page .catalogue-editor-heading { display: flex; align-items: start; justify-content: space-between; gap: 1rem; margin-bottom: 1.25rem; }
.admin-shell-body .admin-catalogue-page .catalogue-page-heading h1,
.admin-shell-body .admin-catalogue-page .catalogue-standalone-heading h1 { margin: 0; color: var(--admin-text); font-size: 1.35rem; font-weight: 600; line-height: 1.2; }
.admin-shell-body .admin-catalogue-page .catalogue-page-heading p,
.admin-shell-body .admin-catalogue-page .catalogue-standalone-heading p { margin: 0.35rem 0 0; color: var(--admin-muted); font-size: 0.75rem; line-height: 1.45; }
.admin-shell-body .admin-catalogue-page .catalogue-page-heading .admin-button-primary { flex: 0 0 auto; }
.admin-shell-body .admin-catalogue-page .admin-events-directory-controls { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 0.75rem; align-items: end; padding: 0.75rem 1rem; background: var(--admin-surface); border: 0; border-radius: 0.75rem; }
.admin-shell-body .admin-catalogue-page .admin-events-toolbar { display: grid; grid-template-columns: minmax(14rem, 18rem) minmax(10rem, 14rem); gap: 0.75rem; align-items: end; min-width: 0; justify-content: space-between; }
.admin-shell-body .admin-catalogue-page .admin-events-search { min-width: 0; }
.admin-shell-body .admin-catalogue-page .admin-events-state-filter { display: grid; grid-template-columns: auto auto minmax(0, 1fr); gap: 0.45rem; align-items: center; min-width: 0; }
.admin-shell-body .admin-catalogue-page .admin-events-state-filter > svg { width: 1rem; height: 1rem; color: var(--admin-muted); }
.admin-shell-body .admin-catalogue-page .admin-events-state-filter label { margin: 0; white-space: nowrap; }
.admin-shell-body .admin-catalogue-page .admin-events-state-filter select { min-width: 0; }
.admin-shell-body .admin-catalogue-page .admin-events-state-select { position: relative; min-width: 0; }
.admin-shell-body .admin-catalogue-page .admin-events-state-select .admin-filter-select { width: 100%; padding-right: 2rem; background-image: none; }
.admin-shell-body .admin-catalogue-page .admin-events-state-chevron { position: absolute; top: 50%; right: 0.6rem; width: 0.875rem; height: 0.875rem; pointer-events: none; transform: translateY(-50%); }
.admin-shell-body .admin-catalogue-page .admin-search-field-input:focus,
.admin-shell-body .admin-catalogue-page .admin-search-field-input:focus-visible { color: var(--admin-text); background: var(--admin-search); border-color: var(--admin-focus-accent); box-shadow: 0 0 0 0.15rem color-mix(in srgb, var(--admin-focus-accent) 20%, transparent); outline: 0; }
.admin-shell-body .admin-catalogue-page > .information-callout { margin: 0.75rem 0 0.65rem; background: var(--admin-surface); }
.admin-shell-body .admin-catalogue-page .catalogue-empty-state { margin: 1.5rem 0; padding: 1.25rem; color: var(--admin-muted); text-align: center; border: 1px dashed var(--admin-border); border-radius: 0.75rem; }
.admin-shell-body .admin-catalogue-page .catalogue-card-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0.75rem; }
.admin-shell-body .admin-catalogue-page .catalogue-record-card { display: grid; grid-template-columns: 4rem minmax(0, 1fr) auto; gap: 0.75rem; align-items: center; min-width: 0; padding: 0.75rem; color: var(--admin-text); background: var(--admin-surface); border: 0; border-radius: 0.75rem; text-decoration: none; transition: background 150ms ease, transform 150ms ease; }
.admin-shell-body .admin-catalogue-page .catalogue-record-card:hover { background: var(--admin-surface-raised); transform: translateY(-1px); }
.admin-shell-body .admin-catalogue-page .catalogue-record-card:focus-visible { outline: 2px solid var(--admin-focus-accent-strong); outline-offset: 2px; }
.admin-shell-body .admin-catalogue-page .catalogue-record-card[hidden] { display: none; }
.admin-shell-body .admin-catalogue-page .catalogue-record-card.is-inactive { opacity: 0.68; }
.admin-shell-body .admin-catalogue-page .catalogue-record-card.is-inactive:hover { opacity: 1; }
.admin-shell-body .admin-catalogue-page .catalogue-card-image { display: grid; width: 4rem; height: 4rem; place-items: center; overflow: hidden; color: var(--admin-muted); background: var(--admin-surface-soft); border: 0; border-radius: 0.55rem; font-size: 0.56rem; font-weight: 600; text-transform: uppercase; }
.admin-shell-body .admin-catalogue-page .catalogue-card-image img { width: 82%; height: 82%; object-fit: contain; }
.admin-shell-body .admin-catalogue-page .catalogue-card-content { display: grid; min-width: 0; gap: 0.25rem; }
.admin-shell-body .admin-catalogue-page .catalogue-card-content > strong { display: block; color: var(--admin-text); font-size: 0.8125rem; font-weight: 600; line-height: 1.3; overflow-wrap: anywhere; }
.admin-shell-body .admin-catalogue-page .catalogue-card-content > .catalogue-card-meta { display: block; margin-top: 0.15rem; color: var(--admin-muted); font-family: inherit; font-size: 0.625rem; font-weight: 400; line-height: 1.5; overflow-wrap: anywhere; }
.admin-shell-body .admin-catalogue-page .catalogue-card-status { align-self: start; white-space: nowrap; }
.admin-shell-body .admin-catalogue-page .catalogue-warnings { display: flex; flex-wrap: wrap; gap: 0.25rem; }
.admin-shell-body .admin-catalogue-page .catalogue-warning { width: fit-content; padding: 0.15rem 0.35rem; color: var(--admin-warning); background: color-mix(in srgb, var(--admin-warning) 12%, transparent); border: 1px solid color-mix(in srgb, var(--admin-warning) 35%, var(--admin-border)); border-radius: 999px; font-size: 0.5625rem; font-weight: 600; }
.admin-shell-body .admin-catalogue-page .catalogue-editor-component { display: grid; gap: 1rem; }
.admin-shell-body .admin-catalogue-page .catalogue-editor-dialog-page { box-sizing: border-box; width: 100%; max-width: none; margin: 0; padding: 1.25rem; background: var(--admin-surface); border-radius: 0.75rem; }
.admin-shell-body .admin-catalogue-page .catalogue-editor-heading h2 { margin: 0; color: var(--admin-text); font-family: inherit; font-size: 1.0625rem; font-weight: 600; line-height: 1.25; }
.admin-shell-body .admin-catalogue-page .catalogue-editor-heading p:not(.admin-dialog-page-kicker):not(.eyebrow) { max-width: 34rem; }
.admin-shell-body .admin-catalogue-page .catalogue-editor-dialog-page:not(.catalogue-add-boss-dialog) { gap: 1.25rem; }
.admin-shell-body .admin-catalogue-page .catalogue-editor-dialog-page:not(.catalogue-add-boss-dialog) > .catalogue-editor-heading { margin-bottom: 0; }
.admin-shell-body .admin-catalogue-page .catalogue-editor-dialog-page:not(.catalogue-add-boss-dialog) .catalogue-editor-heading #catalogue-editor-description { margin: 0.35rem 0 0; color: var(--admin-muted); font-family: inherit; font-size: 0.6875rem; font-weight: 400; line-height: 1.4; }
.admin-shell-body .admin-catalogue-page .catalogue-add-boss-dialog.catalogue-editor-dialog-page { gap: 1.25rem; padding: 1.25rem; background: var(--admin-surface); border: 0; border-radius: 0.75rem; }
.admin-shell-body .admin-catalogue-page .catalogue-add-boss-dialog.catalogue-editor-dialog-page > .catalogue-editor-heading { margin-bottom: 0; }
.admin-shell-body .admin-catalogue-page .catalogue-add-boss-dialog.catalogue-editor-dialog-page .catalogue-editor-heading #catalogue-editor-description { margin: 0.35rem 0 0; color: var(--admin-muted); font-size: 0.6875rem; line-height: 1.4; }
.admin-shell-body .admin-catalogue-page .catalogue-standalone-heading { margin-bottom: 1rem; }
.admin-shell-body .admin-catalogue-page .catalogue-editor-body { display: grid; gap: 1.25rem; }
.admin-shell-body .admin-catalogue-page .catalogue-editor-form,
.admin-shell-body .admin-catalogue-page .catalogue-add-drop-form { display: grid; gap: 0.85rem; padding: 1rem; background: var(--admin-surface-soft); border-radius: 0.75rem; }
.admin-shell-body .admin-catalogue-page .catalogue-add-boss-dialog .catalogue-editor-form { padding: 1.25rem; background: var(--admin-surface-soft); border: 0; border-radius: 0.75rem; }
.admin-shell-body .admin-catalogue-page .catalogue-editor-body > .catalogue-editor-form { padding: 1.25rem; background: var(--admin-surface-soft); border: 0; border-radius: 0.75rem; }
.admin-shell-body .admin-catalogue-page .catalogue-add-boss-dialog .catalogue-reference-heading { display: block; }
.admin-shell-body .admin-catalogue-page .catalogue-add-boss-dialog .catalogue-reference-heading h3 { margin: 0; color: var(--admin-text); font-size: 0.8125rem; font-weight: 600; line-height: 1.3; }
.admin-shell-body .admin-catalogue-page .catalogue-add-boss-dialog .catalogue-reference-heading p { margin: 0.25rem 0 0; color: var(--admin-muted); font-size: 0.6875rem; font-weight: 400; line-height: 1.4; }
.admin-shell-body .admin-catalogue-page .catalogue-editor-fields,
.admin-shell-body .admin-catalogue-page .catalogue-add-drop-fields,
.admin-shell-body .admin-catalogue-page .catalogue-add-drop-details { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.75rem; }
.admin-shell-body .admin-catalogue-page .catalogue-editor-wide { grid-column: 1 / -1; }
.admin-shell-body .admin-catalogue-page .catalogue-editor-actions,
.admin-shell-body .admin-catalogue-page .catalogue-add-drop-actions { display: flex; justify-content: flex-end; gap: 0.5rem; }
.admin-shell-body .admin-catalogue-page .catalogue-drop-section { display: grid; gap: 0.75rem; }
.admin-shell-body .admin-catalogue-page .catalogue-section-heading { display: flex; align-items: end; justify-content: space-between; gap: 1rem; }
.admin-shell-body .admin-catalogue-page .catalogue-section-heading h3 { margin: 0; color: var(--admin-text); font-size: 0.875rem; font-weight: 600; }
.admin-shell-body .admin-catalogue-page .catalogue-section-heading p,
.admin-shell-body .admin-catalogue-page .catalogue-add-drop-heading span { margin: 0.25rem 0 0; color: var(--admin-muted); font-size: 0.625rem; line-height: 1.4; }
.admin-shell-body .admin-catalogue-page .catalogue-section-count { color: var(--admin-muted); font-size: 0.625rem; }
.admin-shell-body .admin-catalogue-page .catalogue-editor-body > .catalogue-add-drop-section,
.admin-shell-body .admin-catalogue-page .catalogue-editor-body > .catalogue-drop-section { display: grid; gap: 1.25rem; padding: 1.25rem; background: var(--admin-surface-soft); border: 0; border-radius: 0.75rem; }
.admin-shell-body .admin-catalogue-page .catalogue-editor-body > .catalogue-add-drop-section > .catalogue-section-heading h3,
.admin-shell-body .admin-catalogue-page .catalogue-editor-body > .catalogue-drop-section > .catalogue-section-heading h3 { margin: 0; color: var(--admin-text); font-family: inherit; font-size: 0.8125rem; font-weight: 600; line-height: 1.3; }
.admin-shell-body .admin-catalogue-page .catalogue-editor-body > .catalogue-add-drop-section > .catalogue-section-heading p,
.admin-shell-body .admin-catalogue-page .catalogue-editor-body > .catalogue-drop-section > .catalogue-section-heading p { margin: 0.25rem 0 0; color: var(--admin-muted); font-family: inherit; font-size: 0.6875rem; font-weight: 400; line-height: 1.4; }
.admin-shell-body .admin-catalogue-page .catalogue-editor-body > .catalogue-drop-section > .catalogue-section-heading .catalogue-section-count { color: var(--admin-muted); font-family: inherit; font-size: 0.625rem; font-weight: 400; line-height: 1.4; }
.admin-shell-body .admin-catalogue-page .catalogue-editor-body > .catalogue-add-drop-section > .catalogue-add-drop-form,
.admin-shell-body .admin-catalogue-page .catalogue-editor-body > .catalogue-drop-section > .catalogue-add-drop-form { padding: 0; background: transparent; border: 0; border-radius: 0; }
.admin-shell-body .admin-catalogue-page .catalogue-drop-list { display: grid; grid-template-columns: 1fr; gap: 0.75rem; }
.admin-shell-body .admin-catalogue-page .catalogue-drop-card { display: block; min-width: 0; min-height: 4rem; padding: 0.75rem 1rem; background: var(--admin-surface); border: 0; border-radius: 0.75rem; }
.admin-shell-body .admin-catalogue-page .catalogue-drop-card.is-inactive { opacity: 0.68; }
.admin-shell-body .admin-catalogue-page .catalogue-drop-summary { display: grid; grid-template-columns: 2.5rem minmax(0, 1fr) auto auto; gap: 0.75rem; align-items: center; min-height: 2.5rem; }
.admin-shell-body .admin-catalogue-page .catalogue-drop-image { display: grid; width: 2.5rem; height: 2.5rem; place-items: center; overflow: hidden; color: var(--admin-muted); background: var(--admin-surface-soft); border: 0; border-radius: 0.4rem; font-size: 0.5rem; text-transform: uppercase; }
.admin-shell-body .admin-catalogue-page .catalogue-drop-image img { width: 78%; height: 78%; object-fit: contain; }
.admin-shell-body .admin-catalogue-page .catalogue-drop-summary-copy { display: grid; min-width: 0; gap: 0.2rem; }
.admin-shell-body .admin-catalogue-page .catalogue-drop-summary-copy strong { overflow: hidden; color: var(--admin-text); font-family: inherit; font-size: 0.8125rem; font-weight: 600; line-height: 1.3; text-overflow: ellipsis; white-space: nowrap; }
.admin-shell-body .admin-catalogue-page .catalogue-drop-summary-copy small { display: block; overflow: hidden; color: var(--admin-muted); font-family: inherit; font-size: 0.625rem; font-weight: 400; line-height: 1.4; text-overflow: ellipsis; white-space: nowrap; }
.admin-shell-body .admin-catalogue-page .catalogue-drop-status-actions { display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: 0.5rem; }
.admin-shell-body .admin-catalogue-page .catalogue-drop-edit-toggle { display: inline-flex; width: 2rem; height: 2rem; align-items: center; justify-content: center; padding: 0; color: var(--admin-muted); background: transparent; border: 0; border-radius: 0.3rem; cursor: pointer; }
.admin-shell-body .admin-catalogue-page .catalogue-drop-edit-toggle:hover { color: var(--admin-text); background: var(--admin-surface-active); }
.admin-shell-body .admin-catalogue-page .catalogue-drop-edit-toggle:focus-visible { outline: 2px solid var(--admin-focus-accent-strong); outline-offset: 2px; }
.admin-shell-body .admin-catalogue-page .catalogue-drop-edit-toggle svg { width: 0.9rem; height: 0.9rem; }
.admin-shell-body .admin-catalogue-page .catalogue-drop-editor { margin-top: 0.75rem; padding-top: 1rem; }
.admin-shell-body .admin-catalogue-page .catalogue-drop-editor[hidden] { display: none; }
.admin-shell-body .admin-catalogue-page .catalogue-drop-editor .form-control,
.admin-shell-body .admin-catalogue-page .catalogue-drop-editor .form-select { min-height: 2.25rem; padding: 0.4rem 0.6rem; color: var(--admin-text); background: var(--admin-surface-raised); border: 1px solid var(--admin-border-strong); border-radius: 0.5rem; font-family: inherit; font-size: 0.75rem; font-weight: 400; line-height: 1.25; }
.admin-shell-body .admin-catalogue-page .catalogue-drop-editor .form-control:focus,
.admin-shell-body .admin-catalogue-page .catalogue-drop-editor .form-select:focus,
.admin-shell-body .admin-catalogue-page .catalogue-drop-editor .form-control:focus-visible,
.admin-shell-body .admin-catalogue-page .catalogue-drop-editor .form-select:focus-visible { color: var(--admin-text); background: var(--admin-surface-raised); border-color: var(--admin-focus-accent); box-shadow: 0 0 0 0.15rem color-mix(in srgb, var(--admin-focus-accent) 20%, transparent); outline: 0; }
.admin-shell-body .admin-catalogue-page .catalogue-drop-editor .admin-field > small { margin: 0; color: var(--admin-muted); font-family: inherit; font-size: 0.625rem; font-weight: 400; line-height: 1.4; }
.admin-shell-body .admin-catalogue-page .catalogue-drop-edit-form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.75rem; align-items: start; }
.admin-shell-body .admin-catalogue-page .catalogue-drop-name-editor,
.admin-shell-body .admin-catalogue-page .catalogue-drop-details,
.admin-shell-body .admin-catalogue-page .catalogue-inline-confirmation,
.admin-shell-body .admin-catalogue-page .catalogue-ehb-result { grid-column: 1 / -1; }
.admin-shell-body .admin-catalogue-page .catalogue-drop-details { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.75rem; }
.admin-shell-body .admin-catalogue-page .catalogue-ehb-result { display: grid; gap: 0.25rem; color: var(--admin-muted); font-size: 0.625rem; }
.admin-shell-body .admin-catalogue-page .catalogue-ehb-result output { display: flex; min-height: 2.25rem; align-items: center; padding: 0.4rem 0.6rem; color: var(--admin-text); background: var(--admin-surface-raised); border: 1px solid var(--admin-border-strong); border-radius: 0.5rem; font-family: inherit; font-size: 0.75rem; font-weight: 400; line-height: 1.25; }
.admin-shell-body .admin-catalogue-page .catalogue-drop-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 0.5rem; align-items: center; margin-top: 1rem; }
.admin-shell-body .admin-catalogue-page .catalogue-editor-footer { display: flex; justify-content: flex-end; gap: 0.5rem; padding-top: 0.75rem; }
.admin-shell-body .admin-catalogue-page .catalogue-editor-footer form { display: flex; gap: 0.45rem; align-items: center; }
.admin-shell-body .admin-catalogue-page .catalogue-confirmation-box { position: relative; display: inline-block; text-align: left; white-space: normal; }
.admin-shell-body .admin-catalogue-page .catalogue-confirmation-box > summary { list-style: none; cursor: pointer; }
.admin-shell-body .admin-catalogue-page .catalogue-confirmation-box > summary::-webkit-details-marker { display: none; }
.admin-shell-body .admin-catalogue-page .catalogue-confirmation-box[open] > .event-confirmation-box { position: fixed; z-index: 30; top: 50%; left: 50%; width: min(24rem, calc(100vw - 2rem)); margin: 0; padding: 1rem; background: var(--admin-surface); border: 1px solid var(--admin-border-strong); border-radius: 0.75rem; transform: translate(-50%, -50%); box-shadow: 0 1rem 3rem rgb(0 0 0 / 35%); }
.admin-shell-body .admin-catalogue-page .catalogue-confirmation-box .event-confirmation-box p { margin: 0; }
.admin-shell-body .admin-catalogue-page .catalogue-confirmation-box .event-confirmation-box p > strong { display: block; margin: 0; color: var(--admin-text); font-family: inherit; font-size: 0.8125rem; font-weight: 600; line-height: 1.3; }
.admin-shell-body .admin-catalogue-page .catalogue-confirmation-box .event-confirmation-box p > span { display: block; margin: 0.25rem 0 0; color: var(--admin-muted); font-family: inherit; font-size: 0.6875rem; font-weight: 400; line-height: 1.4; }
.admin-shell-body .admin-catalogue-page .catalogue-confirmation-box .event-confirmation-box form { display: grid; gap: 0.75rem; }
.admin-shell-body .admin-catalogue-page .catalogue-confirmation-actions { display: flex; justify-content: flex-end; gap: 0.5rem; }
.admin-shell-body .admin-catalogue-page .catalogue-inline-confirmation { display: grid; grid-column: 1 / -1; gap: 0.55rem; padding: 0.65rem; color: var(--admin-text-soft); background: var(--admin-surface-raised); border: 1px solid var(--admin-border); border-radius: 0.5rem; font-size: 0.625rem; }
.admin-shell-body .admin-catalogue-page .catalogue-inline-confirmation p { margin: 0; }
.admin-shell-body .admin-catalogue-page .catalogue-inline-confirmation > div { display: flex; justify-content: flex-end; gap: 0.45rem; }

@media (max-width: 1100px) {
  .admin-shell-body .admin-catalogue-page .catalogue-card-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 900px) {
  .admin-shell-body .admin-catalogue-page { width: 100%; }
  .admin-shell-body .admin-catalogue-page .catalogue-page-heading,
  .admin-shell-body .admin-catalogue-page .catalogue-editor-heading { align-items: stretch; flex-direction: column; }
  .admin-shell-body .admin-catalogue-page .catalogue-page-heading .admin-button-primary { align-self: flex-start; }
  .admin-shell-body .admin-catalogue-page .admin-events-directory-controls { grid-template-columns: 1fr; align-items: stretch; }
  .admin-shell-body .admin-catalogue-page .admin-events-toolbar { grid-template-columns: 1fr; gap: 0.75rem; }
  .admin-shell-body .admin-catalogue-page .admin-events-search { width: 100%; }
  .admin-shell-body .admin-catalogue-page .admin-events-state-filter { grid-template-columns: auto auto minmax(0, 1fr); width: 100%; }
  .admin-shell-body .admin-catalogue-page .admin-events-directory-controls > .admin-button-create { justify-self: end; }
  .admin-shell-body .admin-catalogue-page .catalogue-card-grid { grid-template-columns: 1fr; }
  .admin-shell-body .admin-catalogue-page .catalogue-editor-dialog-page { padding: 0; background: transparent; border-radius: 0; }
  .admin-shell-body .admin-catalogue-page .catalogue-editor-fields,
  .admin-shell-body .admin-catalogue-page .catalogue-add-drop-fields,
  .admin-shell-body .admin-catalogue-page .catalogue-add-drop-details,
  .admin-shell-body .admin-catalogue-page .catalogue-drop-details { grid-template-columns: 1fr; }
  .admin-shell-body .admin-catalogue-page .catalogue-editor-wide,
  .admin-shell-body .admin-catalogue-page .catalogue-drop-name-editor,
  .admin-shell-body .admin-catalogue-page .catalogue-drop-details { grid-column: auto; }
  .admin-shell-body .admin-catalogue-page .catalogue-drop-summary { grid-template-columns: 2.5rem minmax(0, 1fr) auto; }
  .admin-shell-body .admin-catalogue-page .catalogue-drop-summary > .catalogue-drop-status-actions { grid-column: 2; grid-row: 2; justify-self: start; }
  .admin-shell-body .admin-catalogue-page .catalogue-drop-summary > .catalogue-drop-edit-toggle { grid-column: 3; grid-row: 1 / span 2; }
  .admin-shell-body .admin-catalogue-page .catalogue-drop-edit-form { grid-template-columns: 1fr; }
  .admin-shell-body .admin-catalogue-page .catalogue-drop-details { grid-template-columns: 1fr; }
  .admin-shell-body .admin-catalogue-page .catalogue-drop-list { grid-template-columns: 1fr; }
}
.admin-shell-body .participant-admin-page .participant-admin-sidebar > .participant-edit-component,
.admin-shell-body .participant-edit-dialog-page .participant-admin-sidebar > .participant-edit-component {
  display: grid;
  gap: 0.75rem;
  padding: 1.25rem;
  background: var(--admin-surface-soft);
  border: 0;
  border-radius: 0.75rem;
  box-shadow: none;
}
.admin-shell-body .participant-admin-page .participant-edit-component > h2,
.admin-shell-body .participant-admin-page .participant-edit-component > h3,
.admin-shell-body .participant-admin-page .participant-edit-component > header h2,
.admin-shell-body .participant-admin-page .participant-edit-component > header h3 {
  margin: 0;
  color: var(--admin-text);
  font-family: inherit;
  font-size: 17px;
  font-weight: 600;
  line-height: 1.25;
}
.admin-shell-body .participant-admin-page .participant-read-only-details > header h2 { color: var(--admin-text); font-family: inherit; font-size: 0.75rem; font-weight: 600; line-height: 1.25; }
.admin-shell-body .participant-admin-page .participant-edit-component > p,
.admin-shell-body .participant-admin-page .participant-edit-component > header p {
  margin: 0.2rem 0 0;
  color: var(--admin-muted);
  font-size: 0.6875rem;
  font-weight: 400;
  line-height: 1.4;
}
.admin-shell-body .participant-admin-page .participant-account-field {
  display: grid;
  gap: 0.25rem;
  min-width: 0;
}
.admin-shell-body .participant-admin-page .participant-account-field > label {
  margin: 0;
  color: var(--admin-text-soft);
  font-size: 0.75rem;
  font-weight: 500;
  line-height: 1.25;
}
.admin-shell-body .participant-admin-page .participant-edit-link-card textarea.form-control {
  box-sizing: border-box;
  min-height: 5rem;
  color: var(--admin-text);
  background: var(--admin-surface-raised);
  border: 1px solid var(--admin-border);
  box-shadow: none;
  resize: vertical;
}
.admin-shell-body .participant-admin-page .participant-edit-link-card textarea.form-control:focus {
  border-color: var(--admin-focus-accent);
  box-shadow: 0 0 0 0.15rem color-mix(in srgb, var(--admin-focus-accent) 20%, transparent);
}
.admin-shell-body .participant-admin-page .participant-custom-answers {
  gap: 0.75rem;
  padding-top: 1.25rem;
  border: 0;
}
.admin-shell-body .participant-admin-page .participant-custom-answers > header {
  display: grid;
  gap: 0.2rem;
}
.admin-shell-body .participant-admin-page .participant-custom-answers > footer,
.admin-shell-body .participant-admin-page .participant-note-actions {
  display: flex;
  justify-content: flex-end;
  padding-top: 0.25rem;
  border: 0;
}
.admin-shell-body .participant-admin-page .participant-component-actions {
  display: flex;
  justify-content: flex-end;
  gap: 0.5rem;
}
.admin-shell-body .participant-admin-page .participant-component-actions > .participant-confirmation-box { width: 100%; }
.admin-shell-body .participant-admin-page .participant-edit-card > footer { padding-top: 0; border-top: 0; }
.admin-shell-body .participant-admin-page .participant-edit-card { padding: 0; background: transparent; border: 0; border-radius: 0; box-shadow: none; }
.admin-shell-body .participant-admin-page .participant-read-only-details { padding: 1.25rem; background: var(--admin-surface-soft); border-radius: 0.75rem; }
.admin-shell-body .participant-admin-page .participant-summary-card { grid-column: 1 / -1; }
.admin-shell-body .participant-admin-page .participant-summary-card header { padding: 0; border: 0; }
.admin-shell-body .participant-admin-page .participant-account-ehb {
  display: grid;
  gap: 0.25rem;
  min-width: 0;
  color: var(--admin-text-soft);
  font-size: 0.6875rem;
  font-weight: 500;
}
.admin-shell-body .participant-admin-page .participant-account-ehb .form-control,
.admin-shell-body .participant-admin-page .participant-field-grid .form-control,
.admin-shell-body .participant-admin-page .participant-field-grid .form-select {
  min-height: 36px;
  height: 36px;
}
.admin-shell-body .participant-admin-page .participant-field-grid textarea.form-control {
  height: auto;
  min-height: 36px;
}
.admin-shell-body .participant-admin-page .participant-owner-picker [data-owner-account-results] {
  display: flex;
  flex-wrap: wrap;
  gap: 0.35rem;
  max-height: 12rem;
  overflow-y: auto;
}
.admin-shell-body .participant-admin-page .participant-owner-picker [data-owner-account-results] .admin-button-secondary {
  justify-content: flex-start;
  width: max-content;
  max-width: 100%;
  white-space: nowrap;
}
.admin-shell-body .participant-admin-page .participant-payment-form {
  align-items: center;
  justify-content: flex-end;
}
.admin-shell-body .participant-admin-page .participant-payment-form .participant-payment-control {
  justify-self: end;
}
.admin-shell-body .participant-admin-page .participant-summary-card dl {
  display: grid;
  gap: 0;
}
.admin-shell-body .participant-admin-page .participant-previous-answers {
  padding: 1.25rem;
  border: 0;
}
.admin-shell-body .participant-admin-page .participant-previous-answers dl {
  display: grid;
  gap: 0.4rem;
  margin: 0.75rem 0 0;
}
.admin-shell-body .participant-admin-page .participant-previous-answers dl > div {
  padding: 0;
  background: transparent;
  border: 0;
}
.admin-shell-body .participant-admin-page .participant-confirmation-box {
  padding: 0;
  border: 0;
}
.admin-shell-body .participant-admin-page .participant-confirmation-box > summary {
  justify-self: end;
  width: fit-content;
}
.admin-shell-body .participant-admin-page .participant-lifecycle-footer {
  display: flex;
  justify-content: flex-end;
  gap: 0.5rem;
  margin-top: 1.25rem;
}
.admin-shell-body .participant-admin-page .participant-lifecycle-footer > .participant-confirmation-box {
  width: fit-content;
}
.admin-shell-body .participant-admin-page .participant-lifecycle-footer .participant-confirmation-box[open] > .event-confirmation-box,
.admin-shell-body .participant-edit-dialog-page .participant-confirmation-box[open] > .event-confirmation-box {
  position: fixed;
  z-index: 30;
  top: 50%;
  right: auto;
  left: 50%;
  width: min(24rem, calc(100vw - 2rem));
  margin: 0;
  padding: 1rem;
  background: var(--admin-surface);
  border: 1px solid var(--admin-border-strong);
  transform: translate(-50%, -50%);
  box-shadow: 0 1rem 3rem rgb(0 0 0 / 35%);
}
.admin-shell-body .participant-edit-dialog-page .participant-confirmation-box[open]::before { position: fixed; z-index: 29; inset: 0; background: rgb(0 0 0 / 45%); content: ""; }
.admin-shell-body .participant-restore-confirmation > summary { cursor: pointer; list-style: none; }
.admin-shell-body .participant-restore-confirmation > summary::-webkit-details-marker { display: none; }

@media (max-width: 600px) {
  .admin-shell-body .participant-admin-page .participant-edit-component { padding: 1rem; }
  .admin-shell-body .participant-admin-page .participant-summary-card .event-overview-date-copy { align-items: start; flex-direction: column; gap: 0.2rem; }
  .admin-shell-body .participant-admin-page .participant-summary-card .event-overview-date-copy dd { text-align: left; }
}

/* M9-2 Board editor: retain the existing workspace and dialog geometry while
   bringing its controls and surfaces onto the shared Admin primitives. */
.admin-shell-body .board-page {
  color: var(--admin-text);
  font-family: inherit;
}
.admin-shell-body .board-page .panel,
.admin-shell-body .board-page .tile-dialog {
  color: var(--admin-text);
  background: var(--admin-surface);
  border: 0;
  border-radius: 0.75rem;
  box-shadow: none;
}
.admin-shell-body .board-page .admin-board-create-panel {
  gap: 0.75rem;
  margin-top: 0;
  padding: 1.25rem;
  background: var(--admin-surface);
}
.admin-shell-body .board-page .admin-board-create-panel h2,
.admin-shell-body .board-page .tile-dialog h2 {
  color: var(--admin-text);
  font-family: inherit;
  font-size: 17px;
  font-weight: 600;
  line-height: 1.25;
}
.admin-shell-body .board-page .board-canvas-heading h2,
.admin-shell-body .board-page .board-panel-heading h2,
.admin-shell-body .board-page .tile-dialog-section > h3 {
  color: var(--admin-text);
  font-family: inherit;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.25;
}
.admin-shell-body .board-page .eyebrow {
  color: var(--admin-muted);
  font-size: 0.625rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  line-height: 1.2;
  text-transform: uppercase;
}
.admin-shell-body .board-page .admin-board-create-panel p,
.admin-shell-body .board-page .board-editing-status span,
.admin-shell-body .board-page .board-canvas-heading > span,
.admin-shell-body .board-page .board-toolbar-summary > span:last-child,
.admin-shell-body .board-page .board-panel-heading > span {
  color: var(--admin-muted);
  font-size: 0.6875rem;
  font-weight: 400;
  line-height: 1.4;
}
.admin-shell-body .board-page .board-editing-status,
.admin-shell-body .board-page .board-toolbar,
.admin-shell-body .board-page .board-canvas,
.admin-shell-body .board-page .board-sidebar > .panel {
  border: 0;
  background: var(--admin-surface);
}
.admin-shell-body .board-page .board-editing-status {
  gap: 0.75rem;
  align-items: center;
}
.admin-shell-body .board-page .board-toolbar {
  padding: 0.75rem 1rem;
}
.admin-shell-body .board-page .board-cell {
  color: var(--admin-text-soft);
  background: var(--admin-surface-raised);
  border-color: var(--admin-border);
}
.admin-shell-body .board-page .board-cell.empty {
  color: var(--admin-muted);
  border-color: var(--admin-border);
}
.admin-shell-body .board-page .board-cell.line-highlight,
.admin-shell-body .board-page .board-cell.drop-target {
  color: var(--admin-text);
  background: color-mix(in srgb, var(--admin-navigation-accent) 10%, var(--admin-surface-raised));
  border-color: var(--admin-navigation-accent);
  box-shadow: none;
}
.admin-shell-body .board-page .board-cell:focus-visible,
.admin-shell-body .board-page .line-stat:focus-visible,
.admin-shell-body .board-page .tile-details-button:focus-visible,
.admin-shell-body .board-page .create-tile-button:focus-visible,
.admin-shell-body .board-page .objective-remove:focus-visible,
.admin-shell-body .board-page :is(.form-control, .form-select):focus-visible,
.admin-shell-body .board-page input[type="checkbox"]:focus-visible,
.admin-shell-body .board-page summary:focus-visible {
  outline: 2px solid var(--admin-focus-accent-strong);
  outline-offset: 2px;
}
.admin-shell-body .board-page .tile-details-button,
.admin-shell-body .board-page .create-tile-button {
  color: var(--admin-text-soft);
  font-family: inherit;
}
.admin-shell-body .board-page .create-tile-button {
  font-size: 0.6875rem;
  font-weight: 600;
  line-height: 1.25;
}
.admin-shell-body .board-page .tile-details-button:hover,
.admin-shell-body .board-page .create-tile-button:hover {
  color: var(--admin-text);
}
.admin-shell-body .board-page .create-tile-button span {
  color: var(--admin-navigation-accent);
}
.admin-shell-body .board-page .drag-handle {
  color: var(--admin-muted);
}
.admin-shell-body .board-page .stats-panel dl > div,
.admin-shell-body .board-page .line-summary > div {
  color: var(--admin-text-soft);
}
.admin-shell-body .board-page .line-summary > div {
  margin-top: 0.35rem;
  background: var(--admin-surface-soft);
  border-radius: 0.5rem;
}
.admin-shell-body .board-page .team-workload-summary > div {
  border-bottom: 0;
}
.admin-shell-body .board-page .stats-panel dd,
.admin-shell-body .board-page .line-summary strong {
  color: var(--admin-text);
}
.admin-shell-body .board-page .balance-warning {
  color: var(--admin-warning);
  background: color-mix(in srgb, var(--admin-warning) 7%, var(--admin-surface-soft));
  border: 0;
  border-radius: 0.5rem;
}
.admin-shell-body .board-page :is(.admin-button-primary, .admin-button-secondary, .action-danger-outline) {
  font-family: inherit;
}
.admin-shell-body .board-page .toolbar-popover {
  padding: 1rem;
  color: var(--admin-text);
  background: var(--admin-surface);
  border: 0;
  border-radius: 0.75rem;
  box-shadow: 0 1rem 3rem rgb(0 0 0 / 35%);
}
.admin-shell-body .board-page .toolbar-popover .admin-field {
  margin-bottom: 0.45rem;
}
.admin-shell-body .board-page :is(.form-control, .form-select) {
  color: var(--admin-text);
  background: var(--admin-surface-raised);
  border-color: var(--admin-border-strong);
  border-radius: 0.5rem;
  font-family: inherit;
  font-size: 0.75rem;
}
.admin-shell-body .board-page :is(.form-control, .form-select):focus {
  color: var(--admin-text);
  background: var(--admin-surface-raised);
  border-color: var(--admin-focus-accent-strong);
  box-shadow: none;
}
.admin-shell-body .board-page .tile-dialog {
  position: relative;
  width: min(41rem, calc(100vw - 2rem));
  max-height: calc(100dvh - 2rem);
  padding: 1.25rem;
  overflow-y: auto;
  overscroll-behavior: contain;
}
.admin-shell-body .board-page .tile-dialog:focus { outline: none; }
.admin-shell-body .board-page .tile-dialog.board-confirmation-dialog {
  z-index: 30;
  width: min(24rem, calc(100vw - 2rem));
  padding: 1rem;
  border: 1px solid var(--admin-border-strong);
  box-shadow: 0 1rem 3rem rgb(0 0 0 / 35%);
}
.admin-shell-body .board-page .tile-dialog.board-confirmation-dialog h2 {
  margin: 0;
  font-size: 0.875rem;
  line-height: 1.3;
}
.admin-shell-body .board-page .board-confirmation-dialog::backdrop { background: transparent; }
body.admin-shell-body.board-dialog-open {
  overflow: hidden;
}
.admin-shell-body .board-page .tile-dialog .form-stack {
  gap: 1.25rem;
}
.admin-shell-body .board-page .tile-dialog #requirements {
  display: grid;
  gap: 1.25rem;
}
.admin-shell-body .board-page .tile-dialog > .admin-route-dialog-close {
  position: absolute;
  z-index: 2;
  top: 0.65rem;
  right: 0.65rem;
  float: none;
}
.admin-shell-body .board-page .tile-dialog > .admin-route-dialog-close:focus-visible,
.admin-shell-body .board-page .action-danger-outline:focus-visible {
  outline: 2px solid var(--admin-focus-accent-strong);
  outline-offset: 2px;
  box-shadow: none;
}
.admin-shell-body .board-page .objective-remove {
  display: grid;
  width: 2rem;
  height: 2rem;
  place-items: center;
  padding: 0;
  color: var(--admin-muted);
  background: transparent;
  border: 0;
  box-shadow: none;
}
.admin-shell-body .board-page .objective-remove svg {
  width: 1.25rem;
  height: 1.25rem;
}
.admin-shell-body .board-page .objective-remove:hover {
  color: var(--admin-text-soft);
  background: transparent;
  border: 0;
  box-shadow: none;
}
.admin-shell-body .board-page .tile-editor-section,
.admin-shell-body .board-page .requirement-editor,
.admin-shell-body .board-page .objective-counting-options > div {
  color: var(--admin-text-soft);
  background: var(--admin-surface-soft);
  border: 0;
  border-radius: 0.75rem;
}
.admin-shell-body .board-page .tile-editor-section,
.admin-shell-body .board-page .requirement-editor {
  gap: 0.75rem;
  padding: 1.25rem;
}
.admin-shell-body .board-page .requirement-editor {
  background: var(--admin-surface-soft);
}
.admin-shell-body .board-page .tile-details-grid,
.admin-shell-body .board-page .objective-core-grid {
  gap: 0.75rem;
}
.admin-shell-body .board-page .tile-field-label,
.admin-shell-body .board-page .objective-field-label,
.admin-shell-body .board-page .objective-source-field > strong,
.admin-shell-body .board-page .eligible-drop-heading > strong,
.admin-shell-body .board-page .requirement-editor legend {
  color: var(--admin-text-soft);
  font-family: inherit;
  font-size: 0.75rem;
  font-weight: 600;
  line-height: 1.25;
}
.admin-shell-body .board-page .tile-field-label small,
.admin-shell-body .board-page .tile-editor-section small,
.admin-shell-body .board-page .missing-drop-help,
.admin-shell-body .board-page .drop-picker-empty {
  color: var(--admin-muted);
}
.admin-shell-body .board-page .information-callout.tile-objective-guide {
  margin: 0;
}
.admin-shell-body .board-page .tile-dialog-section,
.admin-shell-body .board-page .tile-dialog-objective {
  background: var(--admin-surface-soft);
  border: 0;
  border-radius: 0.75rem;
}
.admin-shell-body .board-page .tile-dialog-section {
  padding: 0.75rem;
}
.admin-shell-body .board-page .tile-dialog-objective {
  padding: 0.75rem;
}
.admin-shell-body .board-page .tile-dialog-section > h3,
.admin-shell-body .board-page .tile-dialog-objective-head,
.admin-shell-body .board-page .tile-dialog-ehb strong {
  color: var(--admin-text);
  font-family: inherit;
}
.admin-shell-body .board-page .tile-dialog-summary,
.admin-shell-body .board-page .tile-dialog-facts dd,
.admin-shell-body .board-page .tile-dialog-quantity {
  color: var(--admin-muted);
}
.admin-shell-body .board-page .tile-dialog-details .tile-dialog-drop-groups {
  display: grid;
  gap: 0.75rem;
  padding: 0;
  background: transparent;
  border: 0;
}
.admin-shell-body .board-page .tile-dialog-details .tile-dialog-drop-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.75rem;
}
.admin-shell-body .board-page .tile-dialog-details .tile-dialog-drop-card {
  display: flex;
  justify-content: space-between;
  gap: 0.75rem;
  align-items: baseline;
  padding: 0.45rem 0.6rem;
  color: var(--admin-text-soft);
  background: transparent;
  border: 1px solid var(--admin-border-strong);
  border-radius: 0.75rem;
  font-family: inherit;
  font-size: 0.6875rem;
  font-weight: 400;
  line-height: 1.4;
}
.admin-shell-body .board-page .tile-dialog-details .tile-dialog-drop-card small {
  margin-left: 0.25rem;
  color: var(--admin-muted);
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit;
}
.admin-shell-body .board-page .tile-dialog-details .tile-dialog-drop-card .tile-dialog-quantity {
  flex: 0 0 auto;
  color: var(--admin-muted);
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit;
}
.admin-shell-body .board-page .eligible-drop-group {
  color: var(--admin-text-soft);
  background: var(--admin-surface-raised);
  border: 0;
  border-radius: 0.75rem;
  padding: 1.25rem;
  gap: 0.75rem;
}
.admin-shell-body .board-page .eligible-drops-section {
  display: grid;
  gap: 0.75rem;
  padding: 0;
  background: transparent;
  border: 0;
  border-radius: 0;
}
.admin-shell-body .board-page .eligible-drops-section .eligible-drop-heading {
  display: flex;
  justify-content: space-between;
  gap: 0.75rem;
  align-items: center;
  margin: 0;
}
.admin-shell-body .board-page .eligible-drops-section .eligible-drop-actions {
  display: flex;
  justify-content: flex-end;
  gap: 0.45rem;
}
.admin-shell-body .board-page .eligible-drops-section .eligible-drop-actions[hidden] {
  display: none;
}
.admin-shell-body .board-page .eligible-drop-option {
  display: flex;
  gap: 0.45rem;
  align-items: center;
  padding: 0.45rem 0.6rem;
  color: var(--admin-text-soft);
  background: transparent;
  border: 1px solid var(--admin-border-strong);
  border-radius: 0.75rem;
  box-shadow: none;
}
.admin-shell-body .board-page .eligible-drop-option > label:first-child {
  display: flex;
  min-width: 0;
  flex: 1 1 auto;
  gap: 0.45rem;
  align-items: center;
  cursor: pointer;
}
.admin-shell-body .board-page .eligible-drop-option > label:first-child > span {
  display: flex;
  min-width: 0;
  align-items: baseline;
  gap: 0.35rem;
}
.admin-shell-body .board-page .eligible-drop-option > label:first-child small {
  color: var(--admin-muted);
  font-size: 0.625rem;
  font-weight: 400;
  line-height: 1.35;
}
.admin-shell-body .board-page .eligible-drop-option > label:first-child > span > span {
  color: var(--admin-text);
  font-size: 0.75rem;
  font-weight: 500;
  line-height: 1.25;
}
.admin-shell-body .board-page .eligible-drop-option:has(input:checked) {
  background: transparent;
  border-color: var(--admin-border-strong);
  box-shadow: none;
}

.admin-shell-body .board-page .drop-only-fields {
  gap: 0.75rem;
}
.admin-shell-body .board-page .objective-counting-options {
  display: grid;
  gap: 0.45rem;
  padding: 0;
  background: transparent;
  border: 0;
  border-radius: 0;
}
.admin-shell-body .board-page .objective-counting-options > div {
  padding: 0;
  background: transparent;
  border: 0;
  border-radius: 0;
}
.admin-shell-body .board-page .counting-options-heading {
  color: var(--admin-text-soft);
  font-family: inherit;
  font-size: 0.75rem;
  font-weight: 500;
  line-height: 1.25;
}
.admin-shell-body .board-page .counting-options-fields {
  display: grid;
  gap: 0.35rem;
}
.admin-shell-body .board-page .counting-options-fields .check-row {
  display: flex;
  align-items: center;
  gap: 0.45rem;
  color: var(--admin-text-soft);
  font-family: inherit;
  font-size: 0.6875rem;
  font-weight: 400;
  line-height: 1.4;
}
.admin-shell-body .board-page .tile-dialog :is(.boss-picker, .eligible-drops-section, .objective-counting-options) input[type="checkbox"] {
  width: 1rem;
  height: 1rem;
  flex: 0 0 1rem;
  margin: 0;
  accent-color: var(--admin-navigation-accent);
}
.admin-shell-body .board-page .tile-dialog :is(.boss-picker, .eligible-drops-section, .objective-counting-options) input[type="checkbox"]:focus-visible {
  outline: 2px solid var(--admin-focus-accent-strong);
  outline-offset: 2px;
}
.admin-shell-body .board-page .manual-ehb-override {
  width: 100%;
  padding: 0;
  background: var(--admin-surface-soft);
  border: 0;
  border-radius: 0.75rem;
}
.admin-shell-body .board-page .manual-ehb-override > summary {
  display: flex;
  min-height: 2.25rem;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  padding: 0.75rem;
  color: var(--admin-text);
  font-family: inherit;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.25;
  cursor: pointer;
  list-style: none;
}
.admin-shell-body .board-page .manual-ehb-override > summary::-webkit-details-marker {
  display: none;
}
.admin-shell-body .board-page .manual-ehb-override > summary .board-dialog-chevron {
  width: 1rem;
  height: 1rem;
  flex: 0 0 auto;
  color: var(--admin-muted);
  transition: transform 160ms ease;
}
.admin-shell-body .board-page .manual-ehb-override[open] > summary .board-dialog-chevron {
  transform: rotate(180deg);
}
.admin-shell-body .board-page .manual-ehb-override-content {
  padding: 0 0.75rem 0.75rem;
}
.admin-shell-body .board-page .manual-ehb-override-content > .admin-field {
  margin: 0;
}
.admin-shell-body .board-page .checkbox-dropdown > summary {
  list-style: none;
  cursor: pointer;
}
.admin-shell-body .board-page .checkbox-dropdown > summary::-webkit-details-marker {
  display: none;
}
.admin-shell-body .board-page .board-select-wrap {
  position: relative;
  min-width: 0;
}
.admin-shell-body .board-page .board-select-wrap > .form-select {
  width: 100%;
  padding-right: 2rem;
  appearance: none;
  -webkit-appearance: none;
}
.admin-shell-body .board-page .board-dialog-chevron {
  width: 0.9rem;
  height: 0.9rem;
  flex: 0 0 auto;
  color: var(--admin-muted);
}
.admin-shell-body .board-page .board-select-wrap > .board-dialog-chevron {
  position: absolute;
  top: 50%;
  right: 0.6rem;
  pointer-events: none;
  transform: translateY(-50%);
}
.admin-shell-body .board-page .boss-picker > summary {
  width: 100%;
  justify-content: space-between;
  text-align: left;
}
.admin-shell-body .board-page .boss-picker > summary.boss-picker-control {
  min-height: 2.25rem;
  padding: 0.4rem 0.6rem;
  color: var(--admin-text);
  background: var(--admin-surface-raised);
  border: 1px solid var(--admin-border-strong);
  border-radius: 0.5rem;
  font-family: inherit;
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1.25;
}
.admin-shell-body .board-page .boss-picker > summary.boss-picker-control:hover {
  color: var(--admin-text);
  background: var(--admin-surface-raised);
  border-color: var(--admin-border-strong);
}
.admin-shell-body .board-page .tile-editor-actions {
  display: flex;
  width: 100%;
  justify-content: flex-end;
}
.admin-shell-body .board-page .checkbox-dropdown-menu {
  color: var(--admin-text-soft);
  background: var(--admin-surface);
  border-color: var(--admin-border-strong);
}
.admin-shell-body .board-page .dialog-actions {
  gap: 0.45rem;
  margin-top: 0;
}

.admin-shell-body .board-page .board-editing-status > div > strong,
.admin-shell-body .board-page .board-toolbar-summary > strong,
.admin-shell-body .board-page .board-sidebar .line-summary > summary strong,
.admin-shell-body .board-page .stats-panel dt {
  color: var(--admin-text-soft);
  font-family: inherit;
  font-size: 0.75rem;
  font-weight: 500;
  line-height: 1.25;
}
.admin-shell-body .board-page .board-editing-status span,
.admin-shell-body .board-page .board-canvas-heading > span,
.admin-shell-body .board-page .board-toolbar-summary > span:last-child,
.admin-shell-body .board-page .board-panel-heading > span,
.admin-shell-body .board-page .text-muted,
.admin-shell-body .board-page .tile-dialog-summary,
.admin-shell-body .board-page .tile-dialog-objective p,
.admin-shell-body .board-page .tile-dialog-facts dd,
.admin-shell-body .board-page .missing-drop-help,
.admin-shell-body .board-page .drop-picker-empty {
  color: var(--admin-muted);
  font-family: inherit;
  font-size: 0.6875rem;
  font-weight: 400;
  line-height: 1.4;
}
.admin-shell-body .board-page .stats-panel dl > div,
.admin-shell-body .board-page .line-summary > div {
  font-size: 0.75rem;
  line-height: 1.25;
}
.admin-shell-body .board-page .stats-panel dd,
.admin-shell-body .board-page .line-summary strong,
.admin-shell-body .board-page .tile-dialog-ehb strong {
  font-size: 0.75rem;
  font-weight: 600;
  line-height: 1.25;
}
.admin-shell-body .board-page .team-workload-stat small {
  color: var(--admin-muted);
  font-size: 0.6875rem;
  font-weight: 400;
  line-height: 1.4;
}
.admin-shell-body .board-page .tile-details-button strong {
  color: var(--admin-text-soft);
  font-size: 0.75rem;
  font-weight: 600;
  line-height: 1.25;
}
.admin-shell-body .board-page .tile-details-button span {
  color: var(--admin-muted);
  font-size: 0.625rem;
  font-weight: 400;
  line-height: 1.35;
}
.admin-shell-body .board-page .tile-field-label,
.admin-shell-body .board-page .objective-field-label,
.admin-shell-body .board-page .objective-source-field > .field-label,
.admin-shell-body .board-page .eligible-drop-heading > strong {
  color: var(--admin-text-soft);
  font-family: inherit;
  font-size: 0.75rem;
  font-weight: 500;
  line-height: 1.25;
}
.admin-shell-body .board-page .objective-source-field > .field-label {
  display: flex;
  align-items: baseline;
  gap: 0.25rem;
  white-space: nowrap;
}
.admin-shell-body .board-page .objective-source-field > .field-label small {
  color: var(--admin-muted);
  font-size: 0.625rem;
  font-weight: 400;
  line-height: 1.35;
}
.admin-shell-body .board-page .tile-field-label small,
.admin-shell-body .board-page .tile-editor-section small {
  color: var(--admin-muted);
  font-size: 0.6875rem;
  font-weight: 400;
  line-height: 1.4;
}
.admin-shell-body .board-page .tile-editor-section-heading h3 {
  color: var(--admin-text);
  font-family: inherit;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.25;
}
.admin-shell-body .board-page .eligible-drop-group h4,
.admin-shell-body .board-page .tile-dialog-facts dt {
  color: var(--admin-text-soft);
  font-family: inherit;
  font-size: 0.75rem;
  font-weight: 500;
  line-height: 1.25;
}
.admin-shell-body .board-page .requirement-editor legend {
  color: var(--admin-text);
  font-family: inherit;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.25;
}
.admin-shell-body .board-page .tile-dialog-objective-head strong {
  color: var(--admin-text-soft);
  font-size: 0.75rem;
  font-weight: 500;
  line-height: 1.25;
}
.admin-shell-body .board-page .tile-dialog-quantity {
  color: var(--admin-muted);
  font-size: 0.6875rem;
  font-weight: 400;
  line-height: 1.4;
}
.admin-shell-body .board-page .inline-stat-form {
  display: block;
  margin-top: 0.55rem;
}
.admin-shell-body .board-page .inline-stat-form > .admin-field {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 4.4rem;
  gap: 0.55rem;
  align-items: center;
}
.admin-shell-body .board-page .inline-stat-form > .admin-field > .form-control {
  min-width: 0;
}
.admin-shell-body .board-page .tile-details-grid > .admin-field,
.admin-shell-body .board-page .tile-finish-grid > .admin-field,
.admin-shell-body .board-page .objective-core-grid > .admin-field {
  min-width: 0;
}
.admin-shell-body .board-page :is(.admin-button-primary, .admin-button-secondary, .action-danger-outline, .action-ghost) {
  display: inline-flex;
  min-height: 2rem;
  align-items: center;
  justify-content: center;
  gap: 0.4rem;
  padding: 0.375rem 0.75rem;
  border-radius: 0.5rem;
  font-family: inherit;
  font-size: 0.6875rem;
  font-weight: 600;
  line-height: 1.25;
}
.admin-shell-body .board-page .action-ghost {
  color: var(--admin-text-soft) !important;
  background: transparent !important;
  border-color: transparent !important;
}
.admin-shell-body .board-page .action-ghost:hover {
  color: var(--admin-text) !important;
  background: var(--admin-surface-raised) !important;
  border-color: transparent !important;
}
.admin-shell-body .board-page :is(.checkbox-dropdown > summary, .objective-counting-options > summary) {
  display: inline-flex;
  min-height: 2rem;
  align-items: center;
  justify-content: center;
  gap: 0.4rem;
  padding: 0.375rem 0.75rem;
  border-radius: 0.5rem;
  font-size: 0.6875rem;
  font-weight: 600;
  line-height: 1.25;
}
.admin-shell-body .board-page .board-compact-label {
  display: block;
  margin: 0;
  color: var(--admin-text-soft);
  font-family: inherit;
  font-size: 0.75rem;
  font-weight: 500;
  letter-spacing: normal;
  line-height: 1.25;
  text-transform: none;
}
.admin-shell-body .board-page .board-toolbar {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 0.45rem 0.75rem;
  align-items: center;
}
.admin-shell-body .board-page .board-toolbar-summary {
  margin-right: 0;
  align-self: center;
}
.admin-shell-body .board-page .board-size-fields {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.75rem;
}
.admin-shell-body .board-page .board-size-fields > .admin-field {
  margin-bottom: 0;
}
.admin-shell-body .board-page .board-size-actions {
  display: flex;
  justify-content: flex-end;
  margin-top: 0.75rem;
}
.admin-shell-body .board-page .board-toolbar-actions {
  display: flex;
  flex-wrap: wrap;
  grid-column: 2;
  align-items: center;
  justify-content: flex-end;
  gap: 0.45rem;
}
.admin-shell-body .board-page .board-toolbar-actions > details {
  margin-left: 0;
}
.admin-shell-body .board-page .board-toolbar-support {
  grid-column: 2;
  max-width: 34rem;
  margin: 0;
  color: var(--admin-muted);
  font-family: inherit;
  font-size: 0.6875rem;
  font-weight: 400;
  line-height: 1.4;
  text-align: right;
}
.admin-shell-body .board-page .board-editing-status > div > strong {
  color: var(--admin-text);
  font-family: inherit;
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1.25;
}
.admin-shell-body .board-page .board-editing-status > div > span {
  color: var(--admin-muted);
  font-family: inherit;
  font-size: 0.6875rem;
  font-weight: 400;
  line-height: 1.4;
}
.admin-shell-body .board-page .stats-panel dl > div {
  border: 0;
}
.admin-shell-body .board-page .stats-panel dl > div + div {
  border-top: 1px solid var(--admin-border);
}
.admin-shell-body .board-page .board-sidebar .line-summary > div {
  border: 0;
}
@media (max-width: 760px) {
  .admin-shell-body .board-page .admin-board-create-panel {
    grid-template-columns: 1fr;
    align-items: stretch;
  }
  .admin-shell-body .board-page .board-toolbar,
  .admin-shell-body .board-page .board-canvas-heading {
    align-items: flex-start;
    flex-wrap: wrap;
  }
  .admin-shell-body .board-page .board-toolbar-summary {
    flex-basis: 100%;
  }
  .admin-shell-body .board-page .board-toolbar {
    grid-template-columns: 1fr;
  }
  .admin-shell-body .board-page .board-toolbar-actions,
  .admin-shell-body .board-page .board-toolbar-support {
    grid-column: auto;
  }
  .admin-shell-body .board-page .board-toolbar-actions {
    justify-content: flex-start;
  }
  .admin-shell-body .board-page .board-toolbar-support {
    max-width: none;
    text-align: left;
  }
  .admin-shell-body .board-page .board-size-fields {
    grid-template-columns: 1fr;
  }
  .admin-shell-body .board-page .board-canvas-heading > span {
    max-width: none;
    text-align: left;
  }
  .admin-shell-body .board-page .tile-dialog {
    width: calc(100vw - 2rem);
    max-height: calc(100dvh - 2rem);
  }
}

/* Draft owns the route-dialog enhancement; keep its fallback a normal page block. */
.admin-shell-body .draft-page .team-roster-dialog[open]:not(:modal) { display: block; position: relative; inset: auto; margin: 0; }
.admin-shell-body .draft-page .team-roster-dialog .admin-field { display: grid; gap: 0.25rem; }
.admin-shell-body .draft-page .team-roster-dialog .admin-field .field-label { color: var(--admin-text-soft); font-family: inherit; font-size: 0.75rem; font-weight: 500; line-height: 1.25; }
.admin-shell-body .draft-page .team-roster-dialog :is(.form-control, .form-select) { min-height: 2.25rem; padding: 0.4rem 0.6rem; color: var(--admin-text); background: var(--admin-surface-raised); border: 1px solid var(--admin-border-strong); border-radius: 0.5rem; font-size: 0.75rem; line-height: 1.25; }
.admin-shell-body .draft-page .team-roster-dialog :is(.form-control, .form-select):focus { border-color: var(--admin-focus-accent); box-shadow: 0 0 0 0.15rem color-mix(in srgb, var(--admin-focus-accent) 20%, transparent); outline: 0; }
.admin-shell-body .draft-page .team-roster-dialog .team-roster-dialog-header h2 { margin: 0; color: var(--admin-text); font-size: 0.95rem; font-weight: 600; line-height: 1.3; }
.admin-shell-body .draft-page .team-roster-dialog .team-roster-dialog-header .eyebrow { margin: 0 0 0.2rem; color: var(--admin-muted); font-size: 0.625rem; font-weight: 500; letter-spacing: 0.04em; text-transform: uppercase; }
.admin-shell-body .draft-page .team-roster-dialog :is(.team-roster-section > header h3, .team-roster-section summary span > span) { color: var(--admin-text); font-size: 0.78rem; font-weight: 600; }
.admin-shell-body .draft-page .team-roster-dialog .team-roster-section :is(p, small) { color: var(--admin-muted); font-size: 0.6875rem; font-weight: 400; line-height: 1.4; }
.admin-shell-body .draft-page .team-roster-dialog .team-role-form { display: grid; grid-template-columns: minmax(0, 1fr) minmax(8rem, 10rem) auto auto; gap: 0.45rem; align-items: center; }
.admin-shell-body .draft-page .team-roster-dialog .team-role-form .team-role-name { min-width: 0; }
.admin-shell-body .draft-page .team-roster-dialog .team-role-form .team-member-move-form { display: contents; }
.admin-shell-body .draft-page .team-roster-dialog .team-role-form .team-role-remove-form { display: block; }
.admin-shell-body .draft-page .draft-confirmation > .event-confirmation-box { width: min(22rem, calc(100vw - 2rem)); }
.admin-shell-body .draft-page .draft-confirmation .event-confirmation-box p { font-size: 0.75rem; line-height: 1.4; }
.admin-shell-body .draft-page .draft-confirmation .event-confirmation-box form { display: grid; gap: 0.65rem; }
.admin-shell-body .draft-page .draft-participant-controls { background: var(--admin-surface); }
.admin-shell-body .draft-page .draft-live-toolbar-copy > strong { color: var(--admin-text-soft); font-size: 0.75rem; font-weight: 500; line-height: 1.25; }
.admin-shell-body .draft-page .draft-live-toolbar-copy > span { color: var(--admin-muted); font-size: 0.6875rem; font-weight: 400; line-height: 1.4; }
.admin-shell-body .draft-page .draft-role-form-enhanced > .draft-role-save { display: none; }
.admin-shell-body .draft-page .draft-live-section-heading .eyebrow { color: var(--admin-muted); font-weight: 500; }
.admin-shell-body .draft-page .draft-live-section-heading h2 { font-size: 1rem; font-weight: 600; }
.admin-shell-body .draft-page .draft-live-player-list { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0.35rem; }
.admin-shell-body .draft-page .draft-live-player { display: grid; grid-template-columns: minmax(0, 1fr) auto; min-height: 3.05rem; gap: 0.35rem; padding: 0.4rem; }
.admin-shell-body .draft-page .draft-live-player strong { overflow: visible; font-size: 0.6875rem; line-height: 1.25; text-overflow: clip; white-space: normal; overflow-wrap: break-word; }
.admin-shell-body .draft-page .draft-live-player span { font-size: 0.6rem; }
.admin-shell-body .draft-page .draft-live-pick-button { width: 2rem; min-width: 2rem; padding: 0; color: var(--admin-muted); background: transparent; border-color: var(--admin-border-strong); }
.admin-shell-body .draft-page .draft-live-player .draft-live-pick-button:disabled { color: var(--admin-muted); background: transparent; border-color: var(--admin-border); }
.admin-shell-body .draft-page .draft-live-player .draft-live-pick-button:hover,
.admin-shell-body .draft-page .draft-live-player .draft-live-pick-button:focus-visible { color: var(--admin-text); background: var(--admin-surface-active); border-color: var(--admin-border-strong); }
.admin-shell-body .draft-page .draft-csv-callout { display: block; margin-top: 0.75rem; color: var(--admin-text-soft); }
.admin-shell-body .draft-page .draft-csv-callout ul { margin: 0.45rem 0 0; padding-left: 1rem; color: var(--admin-muted); font-size: 0.6875rem; line-height: 1.4; }
.admin-shell-body .draft-page .draft-csv-callout-error { color: var(--admin-danger); }

@media (max-width: 900px) {
  .admin-shell-body .draft-page .draft-live-player-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 650px) {
  .admin-shell-body .draft-page .team-roster-dialog .team-role-form { grid-template-columns: minmax(0, 1fr) auto; gap: 0.45rem; }
  .admin-shell-body .draft-page .team-roster-dialog .team-role-form .team-role-name { grid-column: 1 / -1; }
  .admin-shell-body .draft-page .team-roster-dialog .team-role-form .team-member-move-form { display: grid; grid-column: 1 / -1; grid-template-columns: minmax(0, 1fr) auto; }
  .admin-shell-body .draft-page .team-roster-dialog .team-role-form .team-role-remove-form { grid-column: 1 / -1; grid-row: auto; justify-self: end; }
  .admin-shell-body .draft-page .draft-live-player-list { grid-template-columns: 1fr; }
}
/* Retired Board presentation selectors; the Pass 4 public-ui composition is
   authoritative and supplies its own semantic tokens and geometry. */
/*
body.public-event-shell .mini-tile {
  background: #1d2025;
  border-color: #343c48;
}

body.public-event-shell .mini-tile.in-progress {
  background: color-mix(in srgb, var(--progress) 25%, #1d2025);
  border-color: color-mix(in srgb, var(--progress) 62%, #343c48);
}

body.public-event-shell .mini-tile.complete {
  background: color-mix(in srgb, var(--success) 30%, #1d2025);
  border-color: color-mix(in srgb, var(--success) 62%, #343c48);
}

body.public-event-shell .recent-drop-placeholder {
  background: radial-gradient(circle, rgba(84, 108, 146, 0.18), transparent 62%), #12161d;
}

body.public-event-shell .recent-drop-card.private-drop .recent-drop-placeholder {
  background: repeating-linear-gradient(135deg, #151922, #151922 0.65rem, #1a1f29 0.65rem, #1a1f29 1.3rem);
}

 .team-board-overlay-content.submission-drawer-open .public-team-sidebar { border-top-right-radius: 0; border-bottom-right-radius: 0; }
*/

/* Admin evidence review: queue/detail compositions built from Admin-owned
   surfaces, controls, status pills, and operational rows. */
.admin-shell-body .admin-review-page {
  display: grid;
  gap: 1.25rem;
  min-width: 0;
  padding: 1.25rem 0 3rem;
}
.admin-shell-body .admin-review-page h1,
.admin-shell-body .admin-review-page h2,
.admin-shell-body .admin-review-page h3,
.admin-shell-body .admin-review-page p { margin-block: 0; }
.admin-shell-body .admin-review-heading,
.admin-shell-body .admin-review-detail-heading {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 1.25rem;
}
.admin-shell-body .admin-review-heading h1,
.admin-shell-body .admin-review-detail-heading h1 { margin-top: 0.2rem; color: var(--admin-text); font-family: inherit; font-size: clamp(1.125rem, 2vw, 1.35rem); font-weight: 700; line-height: 1.2; }
.admin-shell-body .admin-review-heading p:not(.admin-module-eyebrow),
.admin-shell-body .admin-review-detail-heading-copy > p { margin-top: 0.35rem; color: var(--admin-muted); font-size: 0.75rem; line-height: 1.45; }
.admin-shell-body .admin-review-detail-heading { align-items: start; justify-content: start; }
.admin-shell-body .admin-review-back-link { flex: 0 0 auto; }
.admin-shell-body .admin-review-detail-heading-copy { display: grid; min-width: 0; gap: 0.15rem; }
.admin-shell-body .admin-review-detail-kicker { display: flex; flex-wrap: wrap; gap: 0.5rem; align-items: center; }
.admin-shell-body .admin-review-detail-kicker .admin-module-eyebrow { margin: 0; }
.admin-shell-body .admin-review-filters {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 1.25rem;
  align-items: end;
  padding: 1.25rem;
  background: var(--admin-surface);
  border-radius: 0.75rem;
}
.admin-shell-body .admin-review-filter-grid { display: grid; grid-template-columns: minmax(14rem, 18rem) repeat(3, minmax(10rem, 1fr)); gap: 1.25rem; min-width: 0; }
.admin-shell-body .admin-review-filter-field,
.admin-shell-body .admin-review-form-field { display: grid; gap: 0.35rem; min-width: 0; }
.admin-shell-body .admin-review-filter-field > span,
.admin-shell-body .admin-review-form-field > label { color: var(--admin-text-soft); font-size: 0.6875rem; font-weight: 600; line-height: 1.25; }
.admin-shell-body .admin-review-select,
.admin-shell-body .admin-review-form-field select,
.admin-shell-body .admin-review-form-field textarea,
.admin-shell-body .admin-review-action-form textarea {
  width: 100%;
  min-height: 2.25rem;
  padding: 0.5rem 0.65rem;
  color: var(--admin-text);
  background: var(--admin-surface-raised);
  border: 1px solid var(--admin-border);
  border-radius: 0.45rem;
  font: inherit;
  font-size: 0.6875rem;
}
.admin-shell-body .admin-review-select:focus,
.admin-shell-body .admin-review-form-field :is(select, textarea):focus,
.admin-shell-body .admin-review-action-form textarea:focus { border-color: var(--admin-focus-accent-strong); outline: 2px solid color-mix(in srgb, var(--admin-focus-accent-strong) 35%, transparent); outline-offset: 1px; }
.admin-shell-body .admin-review-filter-actions { display: flex; justify-content: flex-end; }
.admin-shell-body .admin-review-empty,
.admin-shell-body .admin-review-queue-surface,
.admin-shell-body .admin-review-surface { background: var(--admin-surface); border-radius: 0.75rem; }
.admin-shell-body .admin-review-empty { padding: 1.5rem; color: var(--admin-text-soft); text-align: center; }
.admin-shell-body .admin-review-empty h2,
.admin-shell-body .admin-review-empty h3 { color: var(--admin-text); font-size: 0.8125rem; font-weight: 600; line-height: 1.35; }
.admin-shell-body .admin-review-empty p,
.admin-shell-body .admin-review-empty-note { margin-top: 0.3rem; color: var(--admin-muted); font-size: 0.6875rem; line-height: 1.45; }
.admin-shell-body .admin-review-queue-surface { min-width: 0; overflow: hidden; }
.admin-shell-body .admin-review-surface-heading,
.admin-shell-body .admin-review-subsection-heading { display: flex; align-items: start; justify-content: space-between; gap: 1.25rem; }
.admin-shell-body .admin-review-surface-heading { padding: 1.25rem; }
.admin-shell-body .admin-review-surface-heading h2,
.admin-shell-body .admin-review-subsection-heading h2,
.admin-shell-body .admin-review-subsection-heading h3 { color: var(--admin-text); font-family: inherit; font-size: 0.875rem; font-weight: 600; line-height: 1.25; }
.admin-shell-body .admin-review-surface-heading p,
.admin-shell-body .admin-review-subsection-heading p { margin-top: 0.25rem; color: var(--admin-muted); font-size: 0.6875rem; line-height: 1.4; }
.admin-shell-body .admin-review-asset-state { color: var(--admin-status-green); font-size: 0.625rem; font-weight: 600; }
.admin-shell-body .admin-review-empty-in-surface { border-radius: 0; }
.admin-shell-body .admin-review-table-scroll { overflow-x: auto; overscroll-behavior-inline: contain; }
.admin-shell-body .admin-review-table { width: 100%; min-width: 70rem; border-collapse: collapse; table-layout: auto; text-align: left; }
.admin-shell-body .admin-review-table thead tr { background: var(--admin-surface-soft); }
.admin-shell-body .admin-review-table th { padding: 0.65rem 0.85rem; color: var(--admin-text); border: 0; font-size: 0.65625rem; font-weight: 600; line-height: 1.25; white-space: nowrap; }
.admin-shell-body .admin-review-table td { padding: 0.75rem 0.85rem; color: var(--admin-text-soft); border: 0; font-size: 0.6875rem; line-height: 1.4; vertical-align: middle; }
.admin-shell-body .admin-review-table tbody tr:hover { background: var(--admin-surface-soft); }
.admin-shell-body .admin-review-table td > small { display: block; margin-top: 0.15rem; color: var(--admin-muted); font-size: 0.625rem; line-height: 1.35; }
.admin-shell-body .admin-review-cell-value { display: block; min-width: 0; overflow-wrap: anywhere; }
.admin-shell-body .admin-review-submission-link { color: var(--admin-text); font-weight: 600; text-decoration: none; }
.admin-shell-body .admin-review-submission-link:hover { color: var(--admin-navigation-accent); }
.admin-shell-body .admin-review-warning-text { color: var(--admin-status-yellow) !important; }
.admin-shell-body .admin-review-table .admin-status-pill { white-space: nowrap; }
.admin-shell-body .admin-review-row-action { text-align: right; white-space: nowrap; }
.admin-shell-body .admin-review-row-action .event-overview-row-action { color: var(--admin-text-soft) !important; }
.admin-shell-body .admin-review-detail-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(18rem, 22rem); gap: 1.25rem; align-items: start; }
.admin-shell-body .admin-review-detail-main { display: grid; gap: 1.25rem; min-width: 0; }
.admin-shell-body .admin-review-action-rail { position: sticky; top: 1rem; display: grid; gap: 1.25rem; min-width: 0; }
.admin-shell-body .admin-review-surface { min-width: 0; padding: 1.25rem; }
.admin-shell-body .admin-review-evidence-surface { display: grid; gap: 1.25rem; }
.admin-shell-body .admin-review-evidence-trigger { position: relative; display: grid; min-width: 0; min-height: 12rem; place-items: center; padding: 0; color: var(--admin-text); background: var(--admin-surface-soft); border: 1px solid var(--admin-border); border-radius: 0.65rem; cursor: zoom-in; overflow: hidden; }
.admin-shell-body .admin-review-evidence-trigger img { display: block; width: 100%; max-height: min(58vh, 38rem); object-fit: contain; }
.admin-shell-body .admin-review-evidence-trigger > span { position: absolute; right: 0.65rem; bottom: 0.65rem; padding: 0.35rem 0.5rem; color: var(--admin-text); background: color-mix(in srgb, var(--admin-page) 80%, transparent); border: 1px solid var(--admin-border); border-radius: 0.35rem; font-size: 0.625rem; font-weight: 600; }
.admin-shell-body .admin-review-evidence-trigger:focus-visible { outline: 2px solid var(--admin-focus-accent-strong); outline-offset: 2px; }
.admin-shell-body .admin-review-asset-meta { display: flex; flex-wrap: wrap; gap: 0.35rem 0.75rem; align-items: center; color: var(--admin-muted); font-size: 0.625rem; }
.admin-shell-body .admin-review-asset-meta a { color: var(--admin-navigation-accent); font-weight: 600; }
.admin-shell-body .admin-review-lightbox { width: min(90vw, 78rem); max-width: min(90vw, 78rem); max-height: 90dvh; padding: 0.75rem; color: var(--admin-text); background: var(--admin-surface); border: 1px solid var(--admin-border-strong); border-radius: 0.75rem; }
.admin-shell-body .admin-review-lightbox::backdrop { background: color-mix(in srgb, var(--admin-page) 78%, transparent); }
.admin-shell-body .admin-review-lightbox-heading { display: flex; justify-content: space-between; gap: 1rem; align-items: center; margin-bottom: 0.65rem; }
.admin-shell-body .admin-review-lightbox-heading strong { font-size: 0.75rem; }
.admin-shell-body .admin-review-lightbox-close { display: inline-grid; width: 1.75rem; height: 1.75rem; place-items: center; padding: 0; color: var(--admin-text-soft); background: transparent; border: 1px solid var(--admin-border); border-radius: 0.35rem; font-size: 1rem; line-height: 1; }
.admin-shell-body .admin-review-lightbox-close:hover { color: var(--admin-text); background: var(--admin-surface-active); }
.admin-shell-body .admin-review-lightbox-close:focus-visible { outline: 2px solid var(--admin-focus-accent-strong); outline-offset: 2px; }
.admin-shell-body .admin-review-lightbox > img { display: block; width: 100%; max-height: calc(90dvh - 4rem); object-fit: contain; }
.admin-shell-body .admin-review-no-asset { padding: 1.5rem; color: var(--admin-muted); background: var(--admin-surface-soft); border-radius: 0.65rem; text-align: center; }
.admin-shell-body .admin-review-no-asset strong { color: var(--admin-text); font-size: 0.75rem; }
.admin-shell-body .admin-review-no-asset p { margin-top: 0.25rem; font-size: 0.6875rem; }
.admin-shell-body .admin-review-metadata-group { display: grid; gap: 1.25rem; }
.admin-shell-body .admin-review-metadata-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0; margin: 0; background: var(--admin-surface-soft); border-radius: 0.55rem; overflow: hidden; }
.admin-shell-body .admin-review-metadata-grid > div { display: grid; gap: 0.2rem; min-width: 0; padding: 0.7rem 0.75rem; border-bottom: 1px solid var(--admin-border); }
.admin-shell-body .admin-review-metadata-grid > div:nth-last-child(-n + 2) { border-bottom: 0; }
.admin-shell-body .admin-review-metadata-grid dt { color: var(--admin-muted); font-size: 0.625rem; font-weight: 600; }
.admin-shell-body .admin-review-metadata-grid dd { margin: 0; color: var(--admin-text-soft); font-size: 0.6875rem; line-height: 1.4; overflow-wrap: anywhere; }
.admin-shell-body .admin-review-callout { padding: 0.75rem 0.85rem; border-left: 3px solid var(--admin-status-yellow); border-radius: 0.45rem; color: var(--admin-text-soft); background: color-mix(in srgb, var(--admin-status-yellow) 8%, var(--admin-surface)); font-size: 0.6875rem; line-height: 1.45; }
.admin-shell-body .admin-review-callout strong { color: var(--admin-text); font-size: 0.75rem; }
.admin-shell-body .admin-review-callout p { margin-top: 0.25rem; }
.admin-shell-body .admin-review-callout ul { display: grid; gap: 0.2rem; margin: 0.5rem 0; padding-left: 1.1rem; }
.admin-shell-body .admin-review-callout a { color: var(--admin-navigation-accent); }
.admin-shell-body .admin-review-callout small { color: var(--admin-muted); }
.admin-shell-body .admin-review-warning { border-left-color: var(--admin-status-yellow); }
.admin-shell-body .admin-review-correction { padding: 0; overflow: hidden; }
.admin-shell-body .admin-review-correction > summary { display: flex; justify-content: space-between; gap: 1.25rem; align-items: center; padding: 1.25rem; color: var(--admin-text); cursor: pointer; list-style: none; }
.admin-shell-body .admin-review-correction > summary::-webkit-details-marker { display: none; }
.admin-shell-body .admin-review-correction > summary > span:first-child { display: grid; gap: 0.2rem; }
.admin-shell-body .admin-review-correction > summary strong { font-size: 0.8125rem; }
.admin-shell-body .admin-review-correction > summary small { color: var(--admin-muted); font-size: 0.6875rem; font-weight: 400; }
.admin-shell-body .admin-review-correction > summary > span:last-child { color: var(--admin-muted); }
.admin-shell-body .admin-review-correction > summary:focus-visible { outline: 2px solid var(--admin-focus-accent-strong); outline-offset: -2px; }
.admin-shell-body .admin-review-correction-form { display: grid; gap: 1.25rem; padding: 0 1.25rem 1.25rem; border-top: 1px solid var(--admin-border); }
.admin-shell-body .admin-review-form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.25rem; padding-top: 1.25rem; }
.admin-shell-body .admin-review-form-note,
.admin-shell-body .admin-review-form-hint { color: var(--admin-muted); font-size: 0.625rem; line-height: 1.4; }
.admin-shell-body .admin-review-action-form { display: grid; gap: 0.55rem; padding-top: 0.85rem; border-top: 1px solid var(--admin-border); }
.admin-shell-body .admin-review-action-form:first-of-type { padding-top: 0; border-top: 0; }
.admin-shell-body .admin-review-action-form p { color: var(--admin-muted); font-size: 0.6875rem; line-height: 1.45; }
.admin-shell-body .admin-review-action-form label { color: var(--admin-text-soft); font-size: 0.6875rem; font-weight: 600; }
.admin-shell-body .admin-review-action-form .admin-button-primary,
.admin-shell-body .admin-review-action-form .admin-button-secondary { justify-self: start; }
.admin-shell-body .admin-review-secondary-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.25rem; }
.admin-shell-body .admin-review-operational-section { display: grid; align-content: start; gap: 1.25rem; }
.admin-shell-body .admin-review-operational-list { display: grid; gap: 0; margin: 0; padding: 0; list-style: none; }
.admin-shell-body .admin-review-operational-list li { display: grid; gap: 0.2rem; padding: 0.65rem 0; border-top: 1px solid var(--admin-border); }
.admin-shell-body .admin-review-operational-list li:first-child { padding-top: 0; border-top: 0; }
.admin-shell-body .admin-review-operational-list a { color: var(--admin-text-soft); font-size: 0.6875rem; font-weight: 600; text-decoration: none; overflow-wrap: anywhere; }
.admin-shell-body .admin-review-operational-list a:hover { color: var(--admin-navigation-accent); }
.admin-shell-body .admin-review-operational-list span,
.admin-shell-body .admin-review-operational-list small { color: var(--admin-muted); font-size: 0.625rem; line-height: 1.35; overflow-wrap: anywhere; }
.admin-shell-body .admin-review-history-list strong { color: var(--admin-text); font-size: 0.6875rem; }

@media (max-width: 1100px) {
  .admin-shell-body .admin-review-filters { grid-template-columns: 1fr; }
  .admin-shell-body .admin-review-filter-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .admin-shell-body .admin-review-filter-actions { justify-content: flex-start; }
  .admin-shell-body .admin-review-table-scroll { overflow: visible; }
  .admin-shell-body .admin-review-table { min-width: 0; }
  .admin-shell-body .admin-review-table,
  .admin-shell-body .admin-review-table tbody,
  .admin-shell-body .admin-review-table tr,
  .admin-shell-body .admin-review-table td { display: block; width: 100%; }
  .admin-shell-body .admin-review-table thead { display: none; }
  .admin-shell-body .admin-review-table tbody { display: grid; gap: 0.75rem; }
  .admin-shell-body .admin-review-table tr { padding: 0.85rem; background: var(--admin-surface); border-radius: 0.65rem; }
  .admin-shell-body .admin-review-table td { display: grid; grid-template-columns: minmax(7rem, 8rem) minmax(0, 1fr); gap: 0.65rem; padding: 0.35rem 0; }
  .admin-shell-body .admin-review-table td::before { color: var(--admin-muted); content: attr(data-label); font-size: 0.625rem; font-weight: 600; line-height: 1.35; }
  .admin-shell-body .admin-review-table td > :is(.admin-review-cell-value, .admin-status-pill, .admin-review-submission-link, small) { grid-column: 2; min-width: 0; }
  .admin-shell-body .admin-review-table .admin-review-row-action { display: flex; justify-content: flex-end; padding-top: 0.6rem; border-top: 1px solid var(--admin-border); text-align: right; }
  .admin-shell-body .admin-review-table .admin-review-row-action::before { content: none; }
  .admin-shell-body .admin-review-detail-grid { grid-template-columns: 1fr; }
  .admin-shell-body .admin-review-action-rail { position: static; }
  .admin-shell-body .admin-review-secondary-grid { grid-template-columns: 1fr; }
}
@media (max-width: 650px) {
  .admin-shell-body .admin-review-heading,
  .admin-shell-body .admin-review-detail-heading { align-items: stretch; flex-direction: column; }
  .admin-shell-body .admin-review-heading > .admin-button-secondary,
  .admin-shell-body .admin-review-back-link { align-self: flex-start; }
  .admin-shell-body .admin-review-filter-grid,
  .admin-shell-body .admin-review-form-grid,
  .admin-shell-body .admin-review-metadata-grid { grid-template-columns: 1fr; }
  .admin-shell-body .admin-review-metadata-grid > div:nth-last-child(-n + 2) { border-bottom: 1px solid var(--admin-border); }
  .admin-shell-body .admin-review-metadata-grid > div:last-child { border-bottom: 0; }
  .admin-shell-body .admin-review-table td { grid-template-columns: minmax(6.5rem, 7rem) minmax(0, 1fr); }
  .admin-shell-body .admin-review-surface { padding: 0.85rem; }
  .admin-shell-body .admin-review-surface-heading { padding: 0 0 0.75rem; }
  .admin-shell-body .admin-review-correction > summary { padding: 0.85rem; }
  .admin-shell-body .admin-review-correction-form { padding: 0 0.85rem 0.85rem; }
}

@media (prefers-reduced-motion: reduce) {
  .admin-shell-body .admin-review-table tbody tr { transition: none; }
}

/* Finalize closeout: Admin detail/forms and the full-width results ledger. */
.admin-shell-body .finalize-page {
  display: grid;
  gap: 1rem;
  min-width: 0;
  padding: 1.25rem 0 3rem;
  color: var(--admin-text);
  font-family: inherit;
}
.admin-shell-body .finalize-page :is(a, button, input, summary):focus-visible { outline: 2px solid var(--admin-focus-accent-strong); outline-offset: 2px; }
.admin-shell-body .finalize-page-header { display: flex; justify-content: space-between; gap: 1rem; align-items: end; min-width: 0; }
.admin-shell-body .finalize-page-context { min-width: 0; }
.admin-shell-body .finalize-kicker { margin: 0 0 0.3rem; color: var(--admin-muted); font-size: 0.625rem; font-weight: 600; letter-spacing: 0.08em; line-height: 1.25; text-transform: uppercase; }
.admin-shell-body .finalize-title-row { display: flex; flex-wrap: wrap; gap: 0.65rem; align-items: center; }
.admin-shell-body .finalize-title-row h1 { margin: 0; color: var(--admin-text); font-family: inherit; font-size: 1.45rem; font-weight: 600; line-height: 1.2; overflow-wrap: anywhere; }
.admin-shell-body .finalize-page-meta { margin: 0.35rem 0 0; color: var(--admin-muted); font-size: 0.6875rem; line-height: 1.4; }
.admin-shell-body .finalize-back-link { flex: 0 0 auto; }
.admin-shell-body .finalize-surface { min-width: 0; padding: 1.25rem; background: var(--admin-surface); border: 1px solid var(--admin-border); border-radius: 0.75rem; box-shadow: none; }
.admin-shell-body .finalize-section-heading { display: flex; justify-content: space-between; gap: 1rem; align-items: end; margin-bottom: 1rem; padding-bottom: 0.75rem; border-bottom: 1px solid var(--admin-border); }
.admin-shell-body .finalize-section-heading > div { min-width: 0; }
.admin-shell-body .finalize-section-heading h2,
.admin-shell-body .finalize-form-copy h2 { margin: 0; color: var(--admin-text); font-family: inherit; font-size: 0.95rem; font-weight: 600; line-height: 1.3; }
.admin-shell-body .finalize-section-heading p:not(.finalize-kicker),
.admin-shell-body .finalize-form-copy p:not(.finalize-kicker) { max-width: 48rem; margin: 0.3rem 0 0; color: var(--admin-muted); font-size: 0.6875rem; line-height: 1.45; }
.admin-shell-body .finalize-section-note { flex: 0 0 auto; color: var(--admin-muted); font-size: 0.6875rem; font-variant-numeric: tabular-nums; white-space: nowrap; }
.admin-shell-body .finalize-readiness-count { display: grid; flex: 0 0 auto; justify-items: end; gap: 0.1rem; }
.admin-shell-body .finalize-readiness-count strong { color: var(--admin-text); font-size: 1.35rem; font-weight: 600; line-height: 1; }
.admin-shell-body .finalize-readiness-count span { color: var(--admin-muted); font-size: 0.625rem; }
.admin-shell-body .finalize-inline-status { margin: 0; padding: 0.75rem; color: var(--admin-text-soft); background: color-mix(in srgb, var(--admin-status-green) 10%, transparent); border: 1px solid color-mix(in srgb, var(--admin-status-green) 28%, var(--admin-border)); border-radius: 0.5rem; font-size: 0.75rem; }
.admin-shell-body .finalize-inline-status.is-success { color: var(--admin-status-green); }
.admin-shell-body .finalize-checklist { display: grid; gap: 0.75rem; }
.admin-shell-body .finalize-checklist-item { display: grid; grid-template-columns: minmax(0, 1fr) minmax(14rem, 22rem); gap: 1rem; align-items: start; min-width: 0; padding: 1rem; background: var(--admin-surface-soft); border: 1px solid transparent; border-radius: 0.75rem; }
.admin-shell-body .finalize-checklist-item.is-blocked { border-color: color-mix(in srgb, var(--admin-status-yellow) 30%, var(--admin-border)); }
.admin-shell-body .finalize-checklist-item.is-resolved { border-color: color-mix(in srgb, var(--admin-status-green) 25%, var(--admin-border)); }
.admin-shell-body .finalize-checklist-copy { min-width: 0; }
.admin-shell-body .finalize-checklist-title { display: flex; gap: 0.45rem; align-items: start; }
.admin-shell-body .finalize-checklist-title h3 { margin: 0; color: var(--admin-text); font-size: 0.8rem; font-weight: 600; line-height: 1.35; }
.admin-shell-body .finalize-checklist-mark { display: inline-grid; width: 1.25rem; height: 1.25rem; flex: 0 0 auto; place-items: center; color: var(--admin-status-green); font-size: 0.8rem; font-weight: 700; }
.admin-shell-body .finalize-checklist-item.is-blocked .finalize-checklist-mark { border: 1px solid var(--admin-status-yellow); border-radius: 50%; }
.admin-shell-body .finalize-checklist-copy > p { margin: 0.35rem 0 0; color: var(--admin-text-soft); font-size: 0.6875rem; line-height: 1.45; }
.admin-shell-body .finalize-checklist-copy > small { display: block; margin-top: 0.45rem; color: var(--admin-status-green); font-size: 0.625rem; line-height: 1.4; }
.admin-shell-body .finalize-inline-action { width: fit-content; margin-top: 0.6rem; }
.admin-shell-body .finalize-inline-form,
.admin-shell-body .finalize-override-form { display: grid; gap: 0.65rem; min-width: 0; }
.admin-shell-body .finalize-field { display: grid; min-width: 0; gap: 0.25rem; }
.admin-shell-body .finalize-field label { color: var(--admin-text-soft); font-size: 0.6875rem; font-weight: 500; line-height: 1.3; }
.admin-shell-body .finalize-field .form-control { box-sizing: border-box; min-height: 2.25rem; padding: 0.4rem 0.6rem; color: var(--admin-text); background: var(--admin-surface-raised); border: 1px solid var(--admin-border-strong); border-radius: 0.5rem; font: inherit; font-size: 0.75rem; line-height: 1.25; }
.admin-shell-body .finalize-field .form-control:hover { border-color: var(--admin-border-strong); }
.admin-shell-body .finalize-field .form-control:focus { color: var(--admin-text); background: var(--admin-surface-raised); border-color: var(--admin-focus-accent); box-shadow: 0 0 0 0.15rem color-mix(in srgb, var(--admin-focus-accent) 20%, transparent); outline: 0; }
.admin-shell-body .finalize-field .form-control:user-invalid { border-color: var(--admin-danger); }
.admin-shell-body .finalize-check-field { display: inline-flex; gap: 0.5rem; align-items: start; min-width: 0; color: var(--admin-text-soft); font-size: 0.6875rem; line-height: 1.4; }
.admin-shell-body .finalize-check-field input { flex: 0 0 auto; margin: 0.15rem 0 0; accent-color: var(--admin-focus-accent); }
.admin-shell-body .finalize-check-field input:user-invalid { outline: 2px solid var(--admin-danger); outline-offset: 2px; }
.admin-shell-body .finalize-placements { padding-bottom: 0; overflow: hidden; }
.admin-shell-body .finalize-table-wrap { margin: 0 -1.25rem; overflow-x: auto; }
.admin-shell-body .finalize-placements-table { width: 100%; min-width: 70rem; border-collapse: collapse; color: var(--admin-text-soft); font-size: 0.6875rem; line-height: 1.4; }
.admin-shell-body .finalize-placements-table thead tr { background: var(--admin-surface-soft); }
.admin-shell-body .finalize-placements-table th { padding: 0.7rem 1.25rem; color: var(--admin-text); background: transparent; border: 0; font: inherit; font-size: 0.625rem; font-weight: 600; line-height: 1.25; text-align: left; white-space: nowrap; }
.admin-shell-body .finalize-placements-table td { padding: 1rem 1.25rem; color: var(--admin-text-soft); border: 0; vertical-align: top; }
.admin-shell-body .finalize-placements-table tbody tr:hover { background: var(--admin-surface-soft); }
.admin-shell-body .finalize-placements-table td > strong { color: var(--admin-text); font-size: 0.75rem; font-weight: 600; }
.admin-shell-body .finalize-placements-table td > span { display: inline-block; }
.admin-shell-body .finalize-actions-heading,
.admin-shell-body .finalize-actions-cell { min-width: 19rem; }
.admin-shell-body .finalize-value-tone { font-weight: 600; }
.admin-shell-body .finalize-value-tone.is-success { color: var(--admin-status-green); }
.admin-shell-body .finalize-value-tone.is-warning { color: var(--admin-status-yellow); }
.admin-shell-body .finalize-completion-value { display: grid !important; gap: 0.15rem; }
.admin-shell-body .finalize-completion-value small { color: var(--admin-muted); font-size: 0.625rem; }
.admin-shell-body .finalize-completion-value strong { color: var(--admin-status-green); font-size: 0.6875rem; font-weight: 600; }
.admin-shell-body .finalize-muted-value { color: var(--admin-muted); }
.admin-shell-body .finalize-correction-form { display: grid; gap: 0.55rem; min-width: 17rem; }
.admin-shell-body .finalize-correction-form .admin-button-secondary { justify-self: start; }
.admin-shell-body .finalize-publish-form { display: flex; justify-content: space-between; gap: 1.5rem; align-items: end; }
.admin-shell-body .finalize-form-copy { min-width: 0; }
.admin-shell-body .finalize-form-actions { display: grid; flex: 0 0 min(25rem, 100%); gap: 0.75rem; justify-items: start; }
.admin-shell-body .finalize-form-actions .admin-button-primary { justify-self: start; }
.admin-shell-body .finalize-lifecycle-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; min-width: 0; }
.admin-shell-body .finalize-lifecycle-form { display: grid; gap: 0.85rem; align-content: start; }
.admin-shell-body .finalize-danger-action {
  display: inline-flex;
  min-height: 2rem;
  align-items: center;
  justify-content: center;
  padding: 0.4rem 0.7rem;
  color: var(--admin-danger);
  background: transparent;
  border: 1px solid color-mix(in srgb, var(--admin-danger) 70%, var(--admin-border));
  border-radius: 0.5rem;
  font: inherit;
  font-size: 0.6875rem;
  font-weight: 600;
  line-height: 1.25;
  text-decoration: none;
}
.admin-shell-body .finalize-danger-action:hover { color: var(--admin-text); background: color-mix(in srgb, var(--admin-danger) 12%, transparent); border-color: var(--admin-danger); }
.admin-shell-body .finalize-danger-action:focus-visible { outline: 2px solid var(--admin-focus-accent-strong); outline-offset: 2px; }
.admin-shell-body .finalize-danger-action:disabled,
.admin-shell-body .finalize-danger-action[aria-disabled="true"] { cursor: not-allowed; opacity: 0.55; }
.admin-shell-body .finalize-lifecycle-form .finalize-danger-action { justify-self: start; }
.admin-shell-body .finalize-archived-reopen { display: grid; grid-template-columns: minmax(0, 1fr) minmax(15rem, 24rem); gap: 1rem 1.5rem; align-items: end; }
.admin-shell-body .finalize-archived-reopen .finalize-form-copy { grid-row: span 2; }
.admin-shell-body .finalize-archived-reopen .finalize-danger-action { justify-self: start; }
.admin-shell-body .finalize-history-ledger { display: grid; }
.admin-shell-body .finalize-history-entry { border-bottom: 1px solid var(--admin-border); }
.admin-shell-body .finalize-history-entry:first-child { border-top: 1px solid var(--admin-border); }
.admin-shell-body .finalize-history-entry > summary { display: flex; justify-content: space-between; gap: 1rem; align-items: center; min-height: 2.75rem; padding: 0.55rem 0.25rem; color: var(--admin-text-soft); cursor: pointer; list-style: none; }
.admin-shell-body .finalize-history-entry > summary::-webkit-details-marker { display: none; }
.admin-shell-body .finalize-history-entry > summary::before { width: 0.8rem; color: var(--admin-muted); content: "›"; font-size: 1rem; line-height: 1; transform: rotate(0deg); }
.admin-shell-body .finalize-history-entry[open] > summary::before { transform: rotate(90deg); }
.admin-shell-body .finalize-history-entry > summary:hover { color: var(--admin-text); background: var(--admin-surface-soft); }
.admin-shell-body .finalize-history-summary-main { display: flex; flex: 1 1 auto; gap: 0.75rem; min-width: 0; align-items: baseline; }
.admin-shell-body .finalize-history-summary-main strong { color: var(--admin-text); font-size: 0.75rem; font-weight: 600; }
.admin-shell-body .finalize-history-summary-main span { color: var(--admin-muted); font-size: 0.6875rem; }
.admin-shell-body .finalize-history-body { padding: 0 0.25rem 0.9rem 1.8rem; }
.admin-shell-body .finalize-history-reopened { margin: 0 0 0.7rem; color: var(--admin-status-yellow); font-size: 0.6875rem; line-height: 1.4; }
.admin-shell-body .finalize-history-table-wrap { overflow-x: auto; }
.admin-shell-body .finalize-history-table { width: 100%; min-width: 42rem; border-collapse: collapse; color: var(--admin-text-soft); font-size: 0.625rem; }
.admin-shell-body .finalize-history-table th { padding: 0.5rem 0.65rem; color: var(--admin-muted); background: var(--admin-surface-soft); border: 0; font: inherit; font-weight: 600; text-align: left; white-space: nowrap; }
.admin-shell-body .finalize-history-table td { padding: 0.6rem 0.65rem; border: 0; border-bottom: 1px solid var(--admin-border); }
.admin-shell-body .finalize-history-table td strong { color: var(--admin-text); font-weight: 600; }

@media (max-width: 1100px) {
  .admin-shell-body .finalize-table-wrap { margin: 0; overflow: visible; }
  .admin-shell-body .finalize-placements-table,
  .admin-shell-body .finalize-placements-table tbody,
  .admin-shell-body .finalize-placements-table tr,
  .admin-shell-body .finalize-placements-table td { display: block; width: 100%; min-width: 0; }
  .admin-shell-body .finalize-placements-table thead { display: none; }
  .admin-shell-body .finalize-placements-table tbody { display: grid; gap: 0.75rem; }
  .admin-shell-body .finalize-placements-table tr { padding: 0.85rem; background: var(--admin-surface-soft); border-radius: 0.75rem; }
  .admin-shell-body .finalize-placements-table td { display: grid; grid-template-columns: minmax(7rem, 8rem) minmax(0, 1fr); gap: 0.65rem; padding: 0.35rem 0; }
  .admin-shell-body .finalize-placements-table td::before { color: var(--admin-muted); content: attr(data-label); font-size: 0.625rem; font-weight: 600; line-height: 1.35; }
  .admin-shell-body .finalize-placements-table td > :is(strong, span, form) { grid-column: 2; min-width: 0; }
  .admin-shell-body .finalize-placements-table .finalize-actions-cell { min-width: 0; margin-top: 0.35rem; padding-top: 0.7rem; border-top: 1px solid var(--admin-border); }
  .admin-shell-body .finalize-correction-form { min-width: 0; }
  .admin-shell-body .finalize-actions-cell > .finalize-muted-value { grid-column: 2; }
}
@media (max-width: 760px) {
  .admin-shell-body .finalize-page-header,
  .admin-shell-body .finalize-publish-form { align-items: stretch; flex-direction: column; }
  .admin-shell-body .finalize-back-link { align-self: flex-start; }
  .admin-shell-body .finalize-section-heading { align-items: start; flex-direction: column; }
  .admin-shell-body .finalize-section-note,
  .admin-shell-body .finalize-readiness-count { align-self: start; justify-items: start; }
  .admin-shell-body .finalize-checklist-item { grid-template-columns: 1fr; }
  .admin-shell-body .finalize-lifecycle-grid { grid-template-columns: 1fr; }
  .admin-shell-body .finalize-form-actions { flex-basis: auto; width: 100%; }
  .admin-shell-body .finalize-archived-reopen { display: grid; grid-template-columns: 1fr; }
  .admin-shell-body .finalize-archived-reopen .finalize-form-copy { grid-row: auto; }
}
@media (max-width: 650px) {
  .admin-shell-body .finalize-page { gap: 0.75rem; padding-top: 0.9rem; }
  .admin-shell-body .finalize-surface { padding: 0.9rem; }
  .admin-shell-body .finalize-table-wrap { margin: 0; }
  .admin-shell-body .finalize-placements { padding-bottom: 0.9rem; }
  .admin-shell-body .finalize-placements-table tr { padding: 0.75rem; }
  .admin-shell-body .finalize-placements-table td { grid-template-columns: minmax(6.5rem, 7rem) minmax(0, 1fr); }
  .admin-shell-body .finalize-history-body { padding-inline: 0; }
  .admin-shell-body .finalize-history-table { min-width: 0; }
  .admin-shell-body .finalize-history-table,
  .admin-shell-body .finalize-history-table tbody,
  .admin-shell-body .finalize-history-table tr,
  .admin-shell-body .finalize-history-table td { display: block; width: 100%; }
  .admin-shell-body .finalize-history-table thead { display: none; }
  .admin-shell-body .finalize-history-table tr { padding: 0.35rem 0; }
  .admin-shell-body .finalize-history-table td { display: grid; grid-template-columns: minmax(6.5rem, 7rem) minmax(0, 1fr); gap: 0.65rem; padding: 0.3rem 0; border-bottom: 0; }
  .admin-shell-body .finalize-history-table td::before { color: var(--admin-muted); content: attr(data-label); font-weight: 600; }
  .admin-shell-body .finalize-history-table td > strong { grid-column: 2; }
}
