:root {
  color-scheme: light;
  --page: #fbfaf6;
  --surface: #ffffff;
  --surface-subtle: #f5f6fa;
  --surface-strong: #edf2ff;
  --input: #ffffff;
  --text: #172033;
  --muted: #667084;
  --primary: #2457e6;
  --primary-hover: #1746c5;
  --primary-text: #ffffff;
  --secondary: #465269;
  --border: #dfe2e8;
  --border-strong: #b9c1cf;
  --focus: #9eb4ff;
  --danger: #b42318;
  --success-bg: #eaf7f2;
  --success-border: #b9e3d3;
  --success-text: #176c54;
  --error-bg: #fff1ef;
  --sidebar: #172033;
  --sidebar-active: #294bb8;
  --sidebar-text: #f7f8fc;
  --sidebar-muted: #c4ccda;
  --accent: #ff7a59;
  --accent-soft: #ffd7ca;
  --shadow: 0 .5rem 2rem rgb(23 32 51 / 7%);
  background: var(--page);
  color: var(--text);
  font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

:root[data-theme="dark"] {
  color-scheme: dark;
  --page: #0e1422;
  --surface: #172033;
  --surface-subtle: #202a3d;
  --surface-strong: #263453;
  --input: #101827;
  --text: #f6f7fb;
  --muted: #aab4c6;
  --primary: #8eabff;
  --primary-hover: #aec0ff;
  --primary-text: #0e1422;
  --secondary: #465269;
  --border: #344158;
  --border-strong: #56647c;
  --focus: #8eabff;
  --danger: #ff9b91;
  --success-bg: #15352f;
  --success-border: #286250;
  --success-text: #77d3b3;
  --error-bg: #402321;
  --sidebar: #090e1a;
  --sidebar-active: #294bb8;
  --sidebar-text: #f7f8fc;
  --sidebar-muted: #aab4c6;
  --accent: #ff9b82;
  --accent-soft: #63382f;
  --shadow: 0 .75rem 2.5rem rgb(0 0 0 / 24%);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { background: var(--page); color: var(--text); margin: 0; min-height: 100vh; }
.skip-link { background: var(--text); color: var(--surface); left: 1rem; padding: .6rem .8rem; position: fixed; top: 0; transform: translateY(-120%); transition: transform .15s; z-index: 100; }
.skip-link:focus { transform: translateY(1rem); }

.topbar { background: var(--surface); border-bottom: 1px solid var(--border); position: sticky; top: 0; z-index: 20; }
.topbar__inner { align-items: center; display: flex; height: 4rem; justify-content: space-between; margin: 0 auto; max-width: 90rem; padding: 0 1rem; }
.brand { align-items: center; color: var(--text); display: inline-flex; font-size: .92rem; font-weight: 800; gap: .6rem; letter-spacing: .01em; text-decoration: none; }
.brand-mark { align-items: end; background: #2457e6; border-radius: .45rem; display: grid; gap: .18rem; grid-template-columns: repeat(3,.4rem); height: 2rem; justify-content: center; padding: .42rem; width: 2rem; }
.brand-mark i { background: #fff; border-radius: 1rem; display: block; }
.brand-mark i:nth-child(1) { height: 38%; }.brand-mark i:nth-child(2) { height: 72%; }.brand-mark i:nth-child(3) { height: 100%; }
.topbar__actions { align-items: center; display: flex; gap: .8rem; }
.account-name { color: var(--muted); font-size: .86rem; }
.theme-toggle { align-items: center; background: var(--surface-subtle); border: 1px solid var(--border); color: var(--text); display: inline-flex; gap: .4rem; margin: 0; padding: .48rem .65rem; width: auto; }
.theme-toggle:hover { background: var(--surface-strong); }
.theme-toggle__icon { font-size: 1rem; }

.shell { margin: 0 auto; padding: 2rem 0 3rem; width: min(100% - 2rem, 34rem); }
.shell--wide { width: min(100% - 2rem, 90rem); }
.shell--auth { width: min(100% - 2rem, 70rem); }
.shell--access { width: min(100% - 2rem, 62rem); }
.shell--admin { width: min(100% - 2rem, 64rem); }
.eyebrow, .section-kicker { color: var(--primary); font-size: .76rem; font-weight: 800; letter-spacing: .09em; text-transform: uppercase; }

.panel, .edition-header, .workspace-card { background: var(--surface); border: 1px solid var(--border); border-radius: .85rem; box-shadow: var(--shadow); }
.panel { padding: clamp(1.25rem, 5vw, 2.25rem); }
h1 { font-size: clamp(1.8rem, 5vw, 2.65rem); line-height: 1.08; margin: .25rem 0 .65rem; }
h2 { font-size: 1.3rem; margin: .15rem 0 0; }
h3 { font-size: 1rem; margin: 0; }
p { line-height: 1.55; }
a { color: var(--primary); }
label { display: block; font-weight: 700; margin: 1rem 0 .35rem; }

input, select, textarea { background: var(--input); border: 1px solid var(--border-strong); border-radius: .45rem; color: var(--text); font: inherit; padding: .72rem; width: 100%; }
textarea { line-height: 1.5; resize: vertical; }
input::placeholder { color: var(--muted); }
input:focus, select:focus, textarea:focus, summary:focus-visible, button:focus-visible, a:focus-visible { outline: .2rem solid var(--focus); outline-offset: .15rem; }
.visually-hidden { clip: rect(0, 0, 0, 0); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; }
fieldset { border: 0; margin: 1.25rem 0 0; padding: 0; }
legend { font-weight: 700; padding: 0; }

button, .button-link { background: var(--primary); border: 0; border-radius: .45rem; color: var(--primary-text); cursor: pointer; display: inline-block; font: inherit; font-weight: 750; padding: .7rem .95rem; text-decoration: none; }
button:hover, .button-link:hover { background: var(--primary-hover); }
button { margin-top: 1.15rem; width: 100%; }
button.secondary { background: var(--secondary); color: #fff; }
button.danger { background: var(--danger); color: #fff; }

.manager-shell { align-items: start; display: grid; gap: 1.25rem; grid-template-columns: 15rem minmax(0, 1fr); }
.side-rail { background: var(--sidebar); border: 1px solid color-mix(in srgb, var(--sidebar-text) 12%, transparent); border-radius: .85rem; box-shadow: var(--shadow); color: var(--sidebar-text); display: flex; flex-direction: column; min-height: calc(100vh - 7rem); min-width: 0; padding: 1rem; position: sticky; top: 5rem; }
.side-rail__context { border-bottom: 1px solid color-mix(in srgb, var(--sidebar-text) 14%, transparent); display: flex; flex-direction: column; gap: .22rem; padding: .25rem .4rem 1rem; }
.side-rail__context strong { font-size: 1.08rem; }
.side-rail__context span:last-child { color: var(--sidebar-muted); font-size: .78rem; }
.side-rail__event-name { color: var(--sidebar-text); line-height: 1.25; overflow-wrap: anywhere; }
.side-rail__edition-name { color: var(--sidebar-muted); font-size: .88rem; font-weight: 700; }
.side-rail__eyebrow { color: #8eabff; font-size: .7rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.side-nav { display: flex; flex-direction: column; gap: .3rem; padding: 1rem 0; }
.side-nav__item { align-items: center; border-radius: .5rem; color: var(--sidebar-muted); display: grid; font-size: .9rem; font-weight: 700; gap: .6rem; grid-template-columns: 1.1rem 1fr auto; padding: .65rem .7rem; text-decoration: none; }
.side-nav__item:hover, .side-nav__item--active { background: var(--sidebar-active); color: var(--sidebar-text); }
.side-nav__item b { background: color-mix(in srgb, var(--sidebar-text) 12%, transparent); border-radius: 999px; font-size: .68rem; padding: .08rem .38rem; }
.side-rail__footer { border-top: 1px solid color-mix(in srgb, var(--sidebar-text) 14%, transparent); display: flex; flex-direction: column; gap: .3rem; margin-top: auto; padding-top: .8rem; }
.side-rail__footer a, .side-signout { background: transparent; color: var(--sidebar-muted); font-size: .84rem; font-weight: 700; padding: .48rem .55rem; text-align: left; text-decoration: none; width: 100%; }
.side-rail__footer a:hover, .side-signout:hover { background: color-mix(in srgb, var(--sidebar-text) 8%, transparent); color: var(--sidebar-text); }
.side-rail__footer form, .side-signout { margin: 0; }
.manager-workspace { min-width: 0; }

.edition-header { display: grid; gap: 1.5rem; padding: clamp(1.4rem, 3vw, 2rem); scroll-margin-top: 5rem; }
.workspace-page-header { padding: .4rem .15rem .2rem; }
.workspace-page-header .eyebrow { margin: 0; }
.workspace-page-header h1 { margin-bottom: .35rem; }
.workspace-page-header p:last-child { color: var(--muted); margin: 0; }
.workspace-context { display: flex; flex-wrap: wrap; align-items: baseline; gap: .25rem .6rem; margin-bottom: .35rem; }
.workspace-context strong { font-size: 1.08rem; line-height: 1.25; }
.workspace-context span { color: var(--muted); font-size: .88rem; font-weight: 700; }
.workspace-context span::before { content: "Edition "; }
.admin-page-header { align-items: flex-end; display: flex; flex-wrap: wrap; gap: 1rem; justify-content: space-between; }
.admin-page-header > button { margin: 0; }
.edition-title .eyebrow { margin: 0; }
.edition-context { color: var(--muted); font-size: 1.08rem; font-weight: 750; margin: -.25rem 0 .65rem; }
.edition-subtitle { color: var(--muted); margin: 0; max-width: 45rem; }
.edition-facts { display: grid; gap: .7rem; grid-template-columns: repeat(2, minmax(0, 1fr)); margin: 0; }
.edition-facts div { background: var(--surface-subtle); border-radius: .55rem; min-width: 0; padding: .75rem; }
.edition-facts dt, .record-facts dt { color: var(--muted); font-size: .72rem; font-weight: 750; text-transform: uppercase; }
.edition-facts dd, .record-facts dd { font-weight: 650; margin: .2rem 0 0; overflow-wrap: anywhere; }
.status-pill { background: var(--success-bg); border-radius: 999px; color: var(--success-text); display: inline-block; font-size: .78rem; padding: .25rem .55rem; text-transform: capitalize; }
.status-pill--neutral { background: var(--surface-strong); color: var(--muted); }

.draft-banner { align-items: center; background: var(--success-bg); border: 1px solid var(--success-border); border-radius: .65rem; display: flex; flex-wrap: wrap; gap: .35rem .8rem; margin: 1rem 0; padding: .8rem 1rem; }
.draft-banner strong { color: var(--success-text); }
.draft-banner span { color: var(--muted); }
.workspace-alert { margin-top: 1rem; }
.workspace-grid { display: grid; gap: 1rem; }
.workspace-card { min-width: 0; padding: clamp(1.15rem, 2vw, 1.55rem); scroll-margin-top: 5rem; }
.overview-grid { display: grid; gap: .8rem; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.metric-card { background: var(--surface); border: 1px solid var(--border); border-radius: .75rem; box-shadow: var(--shadow); color: var(--text); display: flex; flex-direction: column; gap: .25rem; min-width: 0; padding: 1rem; text-decoration: none; }
.metric-card:hover { border-color: var(--border-strong); transform: translateY(-1px); }
.metric-card:focus-visible { outline: .2rem solid var(--focus); outline-offset: .15rem; }
.metric-card__label { color: var(--muted); font-size: .78rem; font-weight: 750; text-transform: uppercase; }
.metric-card strong { font-size: clamp(1.65rem, 4vw, 2.25rem); line-height: 1.1; }
.metric-card span:last-child { color: var(--primary); font-size: .82rem; font-weight: 750; margin-top: .3rem; }
.overview-detail-grid { display: grid; gap: 1rem; margin-top: 1rem; }
.overview-card { display: flex; flex-direction: column; gap: 1rem; }
.readiness-list { display: grid; gap: .6rem; margin: 0; }
.readiness-list div { align-items: center; background: var(--surface-subtle); border-radius: .55rem; display: flex; gap: 1rem; justify-content: space-between; padding: .75rem .85rem; }
.readiness-list dt { color: var(--muted); font-size: .86rem; margin: 0; }
.readiness-list dd { font-size: 1.05rem; font-weight: 800; margin: 0; }
.overview-note { color: var(--muted); font-size: .88rem; margin: 0; }
.section-heading { align-items: flex-start; display: flex; flex-wrap: wrap; gap: .75rem 1rem; justify-content: space-between; }
.section-kicker { margin: 0 0 .15rem; }
.section-intro { color: var(--muted); font-size: .92rem; margin: .65rem 0 1.15rem; }
.public-link-card { margin-bottom: 1rem; }
.public-link-value { background: var(--surface-subtle); border: 1px solid var(--border); border-radius: .55rem; overflow-wrap: anywhere; padding: .8rem .9rem; }
.public-link-value a { font-weight: 700; }
.public-link-value a[aria-disabled="true"] { color: var(--muted); pointer-events: none; text-decoration: none; }
.public-link-actions { align-items: center; display: flex; flex-wrap: wrap; gap: .55rem; margin-top: .8rem; }
.copy-link-status { color: var(--muted); font-size: .82rem; }

.form-grid { display: grid; gap: 0 .8rem; }
.field label { margin-top: 0; }
.field-help { color: var(--muted); display: block; font-size: .8rem; margin-top: .35rem; }
.public-information-editor { margin-top: 1rem; }
.public-information-fields { margin-top: 1.25rem; }
.public-information-editor .form-submit { width: auto; }
.information-mode-options { display: grid; gap: .55rem; margin-bottom: 1.35rem; }
.information-mode-options legend { margin-bottom: .7rem; }
.information-mode-options label { align-items: flex-start; background: var(--surface-subtle); border: 1px solid var(--border); border-radius: .6rem; display: flex; gap: .7rem; margin: 0; padding: .8rem; }
.information-mode-options input { flex: 0 0 auto; margin-top: .2rem; width: auto; }
.information-mode-options span { display: flex; flex-direction: column; gap: .15rem; }
.information-mode-options small { color: var(--muted); font-weight: 500; }

.modal { background: transparent; border: 0; color: var(--text); max-height: calc(100dvh - 2rem); max-width: calc(100vw - 2rem); padding: 0; width: min(42rem, calc(100vw - 2rem)); }
.modal--small { width: min(31rem, calc(100vw - 2rem)); }
.modal::backdrop { backdrop-filter: blur(3px); background: rgb(4 10 6 / 68%); }
.modal__surface { background: var(--surface); border: 1px solid var(--border); border-radius: .85rem; box-shadow: 0 1.5rem 5rem rgb(0 0 0 / 35%); display: flex; flex-direction: column; max-height: calc(100dvh - 2rem); overflow: hidden; }
.modal__header { align-items: flex-start; border-bottom: 1px solid var(--border); display: flex; gap: 1rem; justify-content: space-between; padding: 1.1rem 1.25rem; }
.modal__header .section-kicker { margin: 0 0 .2rem; }
.modal__header h2 { font-size: 1.25rem; }
.modal__close { align-items: center; background: transparent; border: 1px solid var(--border); border-radius: 50%; color: var(--muted); display: inline-flex; flex: 0 0 2rem; font-size: 1.25rem; height: 2rem; justify-content: center; margin: 0; padding: 0; width: 2rem; }
.modal__close:hover { background: var(--surface-strong); color: var(--text); }
.modal__body { overflow-y: auto; padding: 1.1rem 1.25rem 1.3rem; }
.modal__body > label:first-of-type { margin-top: 0; }
.modal__footer { align-items: center; background: var(--surface-subtle); border-top: 1px solid var(--border); display: flex; gap: .6rem; justify-content: flex-end; padding: .85rem 1.25rem; }
.modal__footer button { margin: 0; }
.compact-action { background: transparent; border: 1px solid var(--border-strong); color: var(--primary); font-size: .85rem; margin: 0; padding: .45rem .65rem; width: auto; }
.compact-action:hover { background: var(--surface-strong); }

.entry-grid { display: grid; gap: .75rem; grid-template-columns: repeat(auto-fit, minmax(min(100%, 18rem), 1fr)); }
.record-card { border: 1px solid var(--border); border-radius: .7rem; display: flex; flex-direction: column; min-width: 0; }
.record-card__body { flex: 1; padding: 1rem; }
.record-card__body h3 { font-size: 1.06rem; }
.record-title-row { align-items: flex-start; display: flex; gap: .75rem; justify-content: space-between; }
.record-title-row .status-pill { flex: 0 0 auto; }
.record-facts { display: grid; gap: .75rem; grid-template-columns: repeat(2, minmax(0, 1fr)); margin: 1rem 0 0; }
.record-fact--wide { grid-column: 1 / -1; }
.record-actions { align-items: center; border-top: 1px solid var(--border); display: flex; flex-wrap: wrap; gap: .4rem; justify-content: flex-end; padding: .65rem; }
.record-actions form { margin: 0; }
.record-list { list-style: none; margin: 0; padding: 0; }
.record-list > li { align-items: center; border-top: 1px solid var(--border); display: flex; gap: .7rem; justify-content: space-between; padding: .8rem 0; }
.record-list > li:first-child { border-top: 0; }
.record-list small { color: var(--muted); display: block; margin-top: .2rem; }
.record-list--ordered { list-style: none; }
.record-primary { align-items: center; display: flex; gap: .65rem; min-width: 0; }
.order-number { align-items: center; background: var(--surface-strong); border-radius: 50%; color: var(--muted); display: inline-flex; flex: 0 0 1.65rem; font-size: .75rem; font-weight: 800; height: 1.65rem; justify-content: center; }
.icon-button { background: transparent; border: 1px solid var(--border-strong); color: var(--primary); margin: 0; padding: .35rem .55rem; width: auto; }
.icon-button:hover { background: var(--surface-strong); }
.text-button { background: transparent; color: var(--primary); margin: 0; padding: .4rem .5rem; width: auto; }
.text-button:hover { background: var(--surface-strong); }
.text-button--danger { color: var(--danger); }
.compact-button { font-size: .82rem; margin: 0; padding: .45rem .65rem; width: auto; }
.empty-state { align-items: flex-start; background: var(--surface-subtle); border: 1px dashed var(--border-strong); border-radius: .65rem; color: var(--muted); display: flex; flex-direction: column; gap: .2rem; padding: 1rem; }
.empty-state strong { color: var(--text); }
.archive-drawer { border-top: 1px solid var(--border); margin-top: 1rem; padding-top: .8rem; }
.archive-drawer > summary { color: var(--muted); cursor: pointer; font-size: .9rem; font-weight: 750; }
.archive-drawer .record-list { margin-top: .6rem; }
.qr-workspace { margin-top: 1rem; }
.qr-campaign-grid { margin-top: 1rem; }
.qr-campaign-url { font-size: .86rem; overflow-wrap: anywhere; }
.analytics-detail { border-top: 1px solid var(--border); margin-top: 1rem; padding-top: .8rem; }
.analytics-detail > summary { color: var(--primary); cursor: pointer; font-size: .88rem; font-weight: 750; }
.analytics-days { margin-top: .7rem; }
.analytics-days div { padding: .55rem .7rem; }
.schedule-toolbar .actions { justify-content: flex-end; }
.schedule-builder { border: 1px solid var(--border); border-radius: .75rem; overflow: hidden; }
.schedule-day { background: var(--surface); border-top: 1px solid var(--border); }
.schedule-day:first-child { border-top: 0; }
.schedule-day--tbd { background: var(--surface-subtle); }
.schedule-day__header { align-items: center; background: var(--surface-subtle); display: flex; gap: 1rem; justify-content: space-between; padding: .85rem 1rem; }
.schedule-day__identity { min-width: 0; }
.schedule-day__identity h3 { font-size: 1.02rem; }
.schedule-day__name { align-items: center; display: flex; flex-wrap: wrap; font-size: .84rem; gap: .4rem; margin: .25rem 0 0; }
.schedule-day__name--empty { color: var(--muted); }
.public-marker { background: var(--surface-strong); border-radius: 999px; color: var(--primary); font-size: .65rem; font-weight: 800; letter-spacing: .04em; padding: .15rem .38rem; text-transform: uppercase; }
.schedule-day__actions { align-items: center; display: flex; flex: 0 0 auto; gap: .35rem; }
.activity-list { list-style: none; margin: 0; padding: 0 1rem; }
.activity-row { align-items: center; border-top: 1px solid var(--border); display: grid; gap: .5rem 1rem; grid-template-columns: 6.25rem minmax(0, 1fr) auto; min-width: 0; padding: .8rem 0; }
.activity-row:first-child { border-top: 0; }
.activity-row__time { color: var(--text); font-size: .86rem; font-weight: 800; white-space: nowrap; }
.activity-row__summary { min-width: 0; }
.activity-row__summary strong { display: block; overflow-wrap: anywhere; }
.activity-row__summary p { color: var(--muted); display: flex; flex-wrap: wrap; font-size: .8rem; gap: .25rem .8rem; margin: .18rem 0 0; }
.activity-row__summary p span + span::before { content: "·"; margin-right: .8rem; }
.activity-row__actions { align-items: center; display: flex; gap: .35rem; }
.activity-more { align-items: center; background: transparent; border: 1px solid transparent; color: var(--muted); display: inline-flex; font-size: 1.15rem; height: 2.15rem; justify-content: center; margin: 0; padding: 0; width: 2.15rem; }
.activity-more:hover { background: var(--surface-strong); border-color: var(--border); color: var(--text); }
.empty-state__actions { display: flex; flex-wrap: wrap; gap: .5rem; margin-top: .65rem; }
.public-change-notice { background: var(--surface-strong); border: 1px solid var(--focus); border-radius: .65rem; display: flex; flex-direction: column; font-size: .86rem; gap: .2rem; margin: 0 0 1rem; padding: .8rem; }
.public-change-notice span { color: var(--muted); }
.public-change-notice--compact { margin: 1rem 0 0; }
.day-name-date { font-size: 1.05rem; font-weight: 800; margin: 0 0 1rem; }
.day-label-list { display: grid; gap: .65rem; }
.day-label-form { margin: 0; }
.day-label-row { display: grid; grid-template-columns: minmax(9rem,.55fr) minmax(12rem,1fr); gap: .65rem; align-items: end; }
.day-label-list label { margin: 0; }.day-label-list input { width: 100%; }
.count-badge { background: var(--surface-strong); border-radius: 999px; display: inline-block; font-size: .75rem; margin-left: .3rem; padding: .1rem .42rem; }
.permission-note { background: var(--surface-subtle); border-radius: .55rem; color: var(--muted); font-size: .87rem; padding: .75rem; }
.admin-shell .manager-workspace { display: flex; flex-direction: column; gap: 1rem; }
.admin-shell .workspace-alert { margin: 0; }
.admin-overview-grid { margin: 0; }
.admin-section { overflow: hidden; }
.admin-event-grid { margin-top: .25rem; }
.compact-event-list { margin-top: .25rem; }
.compact-event-list > li { align-items: center; }
.compact-event-summary { min-width: 0; }
.compact-event-summary small { overflow-wrap: anywhere; }
.compact-event-title { align-items: center; display: flex; flex-wrap: wrap; gap: .45rem; }
.compact-event-actions { flex: 0 0 auto; justify-content: flex-end; }
.admin-section-note { margin: 1rem 0 0; }
.admin-featured-list > li:first-child { border-top: 0; }
.admin-privacy-banner { margin: 0; }
.modal-intro { color: var(--muted); margin: 0 0 1rem; }
.request-context { background: var(--surface-subtle); border-radius: .55rem; margin-top: 1rem; padding: .75rem; }
.request-context strong { font-size: .78rem; }
.request-context p { margin: .25rem 0 0; }
.event-shell .manager-workspace { display: flex; flex-direction: column; gap: 1rem; }
.event-shell .workspace-alert { margin: 0; }
.event-overview-grid { margin: 0; }
.event-setting-facts { margin-top: 1.25rem; }
.event-setting-note { margin-top: 1.25rem; }
.event-shell h2 { overflow-wrap: anywhere; }
.branding-panel { max-width: 48rem; }
.branding-preview { display: grid; place-items: center; min-height: 11rem; margin-top: 1.25rem; padding: 1.25rem; border: 1px solid var(--border); border-radius: .8rem; background: var(--surface-subtle); }
.branding-preview img { display: block; max-width: min(100%, 24rem); max-height: 9rem; object-fit: contain; }
.branding-preview--empty { border-style: dashed; color: var(--muted); font-weight: 700; }
.branding-actions { display: flex; flex-wrap: wrap; align-items: end; gap: 1rem; margin-top: 1.25rem; }
.branding-actions form { margin: 0; }
.branding-actions form:first-child { flex: 1 1 24rem; }
.branding-actions input[type="file"] { width: 100%; margin: .4rem 0 .75rem; padding: .65rem; border: 1px solid var(--border-strong); border-radius: .55rem; background: var(--surface); color: var(--text); }

.auth-layout { align-items: stretch; display: grid; gap: 1.25rem; grid-template-columns: minmax(0, 1fr) minmax(20rem, .8fr); }
.auth-intro { overflow: hidden; padding: clamp(2rem, 6vw, 4.5rem); position: relative; border-radius: 1rem; background: var(--sidebar); color: var(--sidebar-text); }
.auth-intro::after { background: var(--accent); border-radius: 50%; bottom: -5rem; content: ""; height: 11rem; position: absolute; right: -3rem; width: 11rem; }
.auth-intro .eyebrow { color: #8eabff; }.auth-intro h1 { font-size: clamp(2.7rem, 6vw, 4.7rem); max-width: 9ch; }.auth-intro p:last-child { color: var(--sidebar-muted); max-width: 30rem; }
.auth-panel { align-self: stretch; box-shadow: none; display: flex; flex-direction: column; justify-content: center; }
.auth-panel h2 { font-size: clamp(1.65rem, 4vw, 2.25rem); }
.auth-onboarding { border-top: 1px solid var(--border); margin-top: 1.5rem; padding-top: 1.25rem; }
.auth-onboarding p { margin: 0; }
.auth-onboarding p + p { margin-top: .35rem; }
.auth-onboarding__note { color: var(--muted); font-size: .85rem; }
.access-header { margin-bottom: 1.25rem; }.access-header h1 { max-width: 16ch; }.access-header p:last-child { color: var(--muted); }
.access-grid { display: grid; gap: 1rem; grid-template-columns: repeat(2, minmax(0,1fr)); }
.access-card { box-shadow: none; }.access-card h2 { margin-bottom: .75rem; }.access-card ul { list-style: none; margin: 0; padding: 0; }
.access-card li + li { border-top: 1px solid var(--border); }.access-card a { display: block; font-weight: 750; padding: .8rem 0; text-decoration: none; }
.access-card a:hover { text-decoration: underline; text-underline-offset: .2em; }
.shell--admin .panel > form { max-width: 40rem; }

.event-list { list-style: none; padding: 0; }
.event-list > li { border-top: 1px solid var(--border); padding: 1rem 0; }
.featured-admin-list { list-style: none; margin: 1rem 0; padding: 0; }
.featured-admin-list > li { align-items: center; border-top: 1px solid var(--border); display: flex; flex-wrap: wrap; gap: .8rem; justify-content: space-between; padding: .8rem 0; }
.featured-admin-list small { color: var(--muted); display: block; }
.warning { color: var(--danger); display: block; font-size: .82rem; font-weight: 750; }
.actions { align-items: center; display: flex; flex-wrap: wrap; gap: .4rem; }
.actions form { margin: 0; }
.actions button { font-size: .82rem; margin: 0; padding: .45rem .65rem; width: auto; }
button:disabled { cursor: not-allowed; opacity: .45; }
.status { color: var(--success-text); text-transform: capitalize; }
dt { font-weight: 700; margin-top: .75rem; }
dd { margin-left: 0; }
.notice, .error { border-left: .25rem solid var(--success-text); padding: .7rem 1rem; }
.notice { background: var(--success-bg); }
.error { background: var(--error-bg); border-color: var(--danger); }

@media (min-width: 36rem) {
  button { width: auto; }
  .form-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .field--wide { grid-column: 1 / -1; }
}

@media (min-width: 68rem) {
  .edition-header { align-items: center; grid-template-columns: minmax(0, 1.1fr) minmax(28rem, .9fr); }
  .overview-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .overview-detail-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .workspace-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .workspace-card--wide { grid-column: 1 / -1; }
  .admin-overview-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .event-overview-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 67.99rem) {
  .manager-shell { grid-template-columns: 1fr; }
  .side-rail { min-height: 0; padding: .75rem; position: static; }
  .side-rail__context { border: 0; padding: .2rem .35rem .65rem; }
  .side-nav { flex-direction: row; max-width: 100%; overflow-x: auto; padding: .2rem 0; scrollbar-width: none; }
  .side-nav::-webkit-scrollbar { display: none; }
  .side-nav__item { flex: 0 0 auto; grid-template-columns: 1rem auto auto; white-space: nowrap; }
  .side-rail__footer { align-items: center; border-top: 1px solid color-mix(in srgb, var(--sidebar-text) 14%, transparent); flex-direction: row; justify-content: space-between; margin-top: .65rem; padding-top: .5rem; }
  .side-rail__footer a, .side-signout { width: auto; }
}

@media (max-width: 52rem) {
  .auth-layout, .access-grid { grid-template-columns: 1fr; }
  .auth-intro { padding: 2rem; }.auth-intro h1 { font-size: clamp(2.45rem, 11vw, 3.8rem); }
}

@media (max-width: 40rem) {
  .topbar__inner { height: 3.6rem; }
  .account-name { display: none; }
  .theme-toggle [data-theme-label] { display: none; }
  .shell { padding: 1rem 0 2rem; }
  .record-facts { grid-template-columns: 1fr; }
  .record-list > li { align-items: flex-start; flex-direction: column; }
  .compact-event-actions { justify-content: flex-start; }
  .record-actions { justify-content: flex-start; }
  .section-heading > button { width: 100%; }
  .edition-facts { grid-template-columns: 1fr; }
  .overview-grid { grid-template-columns: 1fr; }
  .modal { max-width: calc(100vw - 1rem); width: calc(100vw - 1rem); }
  .modal__surface { max-height: calc(100dvh - 1rem); }
  .schedule-day__header { align-items: flex-start; }
  .activity-row { grid-template-columns: minmax(0, 1fr) auto; }
  .activity-row__time { grid-column: 1; grid-row: 1; }
  .activity-row__summary { grid-column: 1; grid-row: 2; }
  .activity-row__actions { grid-column: 2; grid-row: 1 / 3; }
  .day-label-row { grid-template-columns: 1fr; }
}

@media (max-width: 34rem) {
  .schedule-toolbar .actions { width: 100%; }
  .schedule-toolbar .actions > * { flex: 1 1 auto; text-align: center; }
  .schedule-day__header { align-items: stretch; flex-direction: column; }
  .schedule-day__actions { justify-content: space-between; }
  .schedule-day__actions > * { flex: 1 1 auto; }
  .activity-list { padding: 0 .8rem; }
}
