/* DM Sans - latin-ext */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url(/fonts/dm-sans-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* DM Sans - latin */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url(/fonts/dm-sans-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* Space Grotesk - vietnamese */
@font-face {
  font-family: 'Space Grotesk';
  font-style: normal;
  font-weight: 600 700;
  font-display: swap;
  src: url(/fonts/space-grotesk-vietnamese.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* Space Grotesk - latin-ext */
@font-face {
  font-family: 'Space Grotesk';
  font-style: normal;
  font-weight: 600 700;
  font-display: swap;
  src: url(/fonts/space-grotesk-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* Space Grotesk - latin */
@font-face {
  font-family: 'Space Grotesk';
  font-style: normal;
  font-weight: 600 700;
  font-display: swap;
  src: url(/fonts/space-grotesk-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

:root {
    --cc-page-max: 1180px;
    --cc-compact-page-max: 1120px;
    --cc-page-gutters: 2rem;
}

*, *::before, *::after { box-sizing: border-box; }
html, body { margin: 0; min-height: 100%; background: var(--cc-page); color: var(--cc-ink); }
body { font-family: "DM Sans", sans-serif; }
h1, h2, h3 { font-family: "Space Grotesk", sans-serif; letter-spacing: 0; }
button, input, select { letter-spacing: 0; }

.app-header { border-bottom: 1px solid rgba(255,255,255,.12); }
.account-menu { min-width: 0; margin-inline-end: .5rem; }
.account-menu > .mud-menu-button-activator .mud-button-label { max-width: 180px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.account-menu > .mud-menu-button-activator .mud-button-icon-start { flex: 0 0 20px; margin-inline: 0 8px; }
.account-menu-form { width: 100%; margin: 0; }
.account-menu-action {
    width: 100%; min-width: 100%; min-height: 48px; padding: 8px 12px; border-radius: 0;
    justify-content: flex-start; color: var(--cc-ink); font-size: 1rem; font-weight: 400;
    line-height: 1.5; text-transform: none;
}
.account-menu-action .mud-button-label { width: 100%; color: var(--cc-ink); }
.account-menu-action .mud-button-icon-start { flex: 0 0 24px; margin-inline: 0 16px; }
.account-menu-action:hover { background: var(--cc-hover); }
.account-menu-action:focus-visible { outline: 2px solid var(--cc-green); outline-offset: -3px; }
.brand-lockup { display: inline-flex; align-items: center; gap: .65rem; color: var(--cc-on-brand) !important; }
.brand-mark { display: block; flex: 0 0 auto; width: 2.5rem; height: 2.5rem; object-fit: contain; }
.brand-name { font-family: "Space Grotesk"; font-size: 1.25rem; font-weight: 700; }
.app-drawer { border-right: 0 !important; }
.primary-nav { padding: 1.25rem .75rem; }
.primary-nav .mud-nav-link { border-radius: var(--cc-panel-radius); margin-bottom: .25rem; }
.app-drawer .primary-nav .mud-nav-link.active:not(.mud-nav-link-disabled) { background: rgba(255,255,255,.12); color: var(--cc-on-brand); }
.nav-promo { margin: auto 1rem 1rem; padding: 1rem; border-top: 1px solid rgba(255,255,255,.16); color: var(--mud-palette-drawer-text); display: flex; flex-direction: column; gap: .7rem; font-size: .85rem; }
.nav-promo strong { color: var(--cc-on-brand); font-size: .95rem; }
.app-content { min-height: calc(100vh - 120px); }
.site-footer { min-height: 56px; padding: 1rem clamp(1rem, 4vw, 4rem); border-top: 1px solid var(--cc-line); display: flex; justify-content: space-between; color: var(--cc-muted); font-size: .85rem; }

.home-hero { min-height: 530px; background: url('/cardboardcabana-hero.webp') center 42% / cover no-repeat; color: var(--cc-on-brand); display: flex; align-items: center; padding: clamp(2rem, 6vw, 6rem); position: relative; }
.home-hero::before { content: ""; position: absolute; inset: 0; background: rgba(7, 22, 17, .48); }
.hero-content { position: relative; max-width: 650px; text-shadow: 0 1px 10px rgba(0,0,0,.35); }
.hero-content h1 { margin: 0 0 1rem; max-width: 620px; font-size: clamp(2.7rem, 5vw, 4.9rem); line-height: 1.02; }
.hero-content p { max-width: 590px; margin: 0 0 2rem; font-size: 1.15rem; line-height: 1.65; }
.hero-actions { display: flex; flex-wrap: wrap; gap: .75rem; }
.hero-actions .mud-button-outlined { color: var(--cc-on-brand); border-color: var(--cc-on-brand); }

.content-band, .community-intro, .page-heading, .search-surface, .result-toolbar, .event-results, .pagination-row, .catalog-grid, .public-server-catalog, .server-detail-page, .server-grid, .server-list-state { width: min(var(--cc-page-max), calc(100% - var(--cc-page-gutters))); margin-inline: auto; }
.content-band { padding-block: 4.5rem; }
.section-heading { display: flex; justify-content: space-between; align-items: end; gap: 1rem; margin-bottom: 1.5rem; }
.section-heading h2, .community-copy h2 { margin: 0; font-size: clamp(1.8rem, 3vw, 2.7rem); }
.event-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; }
.event-card { min-width: 0; display: grid; grid-template-columns: 64px minmax(0,1fr); grid-template-rows: auto 1fr; border-radius: var(--cc-panel-radius); overflow: hidden; transition: transform .18s ease, box-shadow .18s ease; }
.event-card:hover { transform: translateY(-2px); box-shadow: 0 8px 24px rgba(16,37,31,.09); }
.event-card:not(:has(> .event-card-image)) { grid-template-rows: 1fr; }
.event-card-image { grid-column: 1 / -1; align-self: start; width: 100%; aspect-ratio: 16 / 6; object-fit: cover; background: var(--cc-surface-muted); }
.event-date { align-self: stretch; padding: 1rem .4rem; background: var(--cc-green-dark); color: var(--cc-on-brand); text-align: center; }
.event-date span { display: block; color: var(--cc-brand-gold); font-size: .72rem; font-weight: 700; text-transform: uppercase; }
.event-date strong { display: block; margin-top: .1rem; font-family: "Space Grotesk"; font-size: 1.7rem; }
.event-card-body { min-width: 0; padding: 1rem; }
.event-card h3 { margin: .65rem 0 .75rem; font-size: 1.05rem; line-height: 1.3; overflow-wrap: anywhere; }
.event-labels { display: flex; flex-wrap: wrap; align-items: flex-start; gap: .4rem; }
.game-tag, .tournament-tag, .format-tag { display: inline-block; padding: .2rem .45rem; border-radius: 3px; background: var(--cc-accent-soft); color: var(--cc-green); font-size: .68rem; font-weight: 700; }
.game-tag.alternate { background: var(--cc-danger-soft); color: var(--cc-danger); }
.tournament-tag { background: var(--cc-warning-soft); color: var(--cc-warning); }
.format-tag { background: var(--cc-info-soft); color: var(--cc-info); }
.event-organizer, .event-meta, .catalog-card p { display: flex; align-items: flex-start; gap: .4rem; margin: .35rem 0; color: var(--cc-muted); font-size: .82rem; }
.event-expand { width: 100%; margin-top: .75rem; padding: .6rem 0 0; border: 0; border-top: 1px solid var(--cc-line); background: transparent; color: var(--cc-green); display: flex; justify-content: space-between; align-items: center; font: inherit; font-size: .8rem; font-weight: 700; cursor: pointer; }
.event-detail-panel { margin-top: .6rem; padding: .7rem; background: var(--cc-surface-muted); display: flex; flex-direction: column; gap: .5rem; font-size: .78rem; }
.event-calendar-link { display: inline-flex; align-items: center; gap: .35rem; width: fit-content; color: var(--cc-green); font-weight: 700; text-decoration: none; }
.event-calendar-link:hover { text-decoration: underline; }
.event-description { margin: 0; color: var(--cc-ink); line-height: 1.55; white-space: pre-line; }

.community-intro { margin-bottom: 4rem; padding: clamp(2rem, 5vw, 4rem); background: var(--cc-accent-soft); display: grid; grid-template-columns: 1.1fr 1fr; gap: clamp(2rem, 6vw, 6rem); }
.community-copy p { color: var(--cc-muted); line-height: 1.7; }
.community-points { display: grid; gap: 1.25rem; }
.community-points > div { display: grid; grid-template-columns: 42px 1fr; gap: .8rem; }
.community-points .mud-icon-root { color: var(--cc-red); font-size: 2rem; }
.community-points span, .community-points strong { display: block; }
.community-points span { color: var(--cc-muted); font-size: .9rem; }
.community-points strong { margin-bottom: .2rem; color: var(--cc-ink); font-size: 1rem; }

.page-heading { padding-top: 3.5rem; padding-bottom: 1.5rem; }
.page-heading h1 { margin: 0; font-size: clamp(2rem, 4vw, 3.5rem); }
h1[tabindex="-1"]:focus { outline: none; }
.page-heading p { margin-bottom: 0; color: var(--cc-muted); }
.search-surface { padding: 1rem; display: grid; grid-template-columns: 1.4fr 1.1fr 1fr auto; gap: .75rem; align-items: center; }
.search-button { height: 56px; }
.result-toolbar { padding-block: 1.25rem; display: flex; justify-content: space-between; align-items: center; gap: 1rem; color: var(--cc-muted); }
.result-toolbar > div { display: flex; align-items: center; gap: 1rem; }
.sort-select { min-width: 160px; }
.pagination-row { padding: 1.5rem 0 3rem; display: flex; flex-wrap: wrap; gap: 1rem; justify-content: flex-start; align-items: center; }
.catalog-grid:has(+ .pagination-row) { padding-bottom: 0; }
.public-server-catalog:has(+ .pagination-row) { margin-bottom: 0; }
.pagination-row > .mud-select { width: 100px; max-width: 100%; flex: 0 0 auto; }
.pagination-row > .mud-select .mud-input-control { margin-block: 0; }
.pagination-row > .mud-select .mud-input-outlined { height: 44px; }
.pagination-row > .mud-select .mud-input-root { padding-block: 0; }
.pagination-row.pagination-contained { width: 100%; margin: 0; padding-bottom: 0; }
.pagination-row .mud-pagination { display: flex; flex-wrap: wrap; gap: .25rem; max-width: 100%; }
.pagination-row .mud-pagination .mud-button-root { min-width: 44px; min-height: 44px; }
.mud-table-pagination .mud-table-pagination-toolbar { flex-wrap: wrap; height: auto; min-height: 56px; gap: .5rem; }
.mud-table-pagination-spacer { flex: 1 1 auto; }
.mud-table-pagination .mud-select:not(.mud-input-control) { width: 120px; max-width: 120px; flex: 0 0 auto; }
.loading-state, .empty-state { min-height: 220px; display: flex; flex-direction: column; justify-content: center; align-items: center; gap: .6rem; color: var(--cc-muted); text-align: center; }
.empty-state.compact { min-height: 180px; background: var(--cc-surface); border: 1px solid var(--cc-line); }
.empty-state strong { color: var(--cc-ink); }

.catalog-search { grid-template-columns: minmax(190px, 1.3fr) minmax(190px, 1.1fr) minmax(210px, .8fr) minmax(298px, 1.5fr) auto; }
.discovery-search { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.discovery-search > .location-controls { grid-column: span 2; }
.location-controls { display: grid; grid-template-columns: minmax(170px, 1fr) minmax(120px, .65fr); gap: .5rem; align-items: center; }
.home-section-heading > div { min-width: 0; max-width: 48rem; }
.home-section-heading p { margin: .75rem 0 0; color: var(--cc-muted); line-height: 1.7; }
.home-section-heading > .mud-button-root { flex-shrink: 0; }
.featured-communities { padding-bottom: 1rem; }
.home-community-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .75rem; }
.home-community-card { min-width: 0; min-height: 110px; display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: .8rem; padding: .75rem; color: var(--cc-ink); text-decoration: none; }
.home-community-card:hover { border-color: var(--cc-green); }
.home-community-card img { width: 74px; height: 84px; object-fit: cover; }
.home-community-card span, .home-community-card small, .home-community-card strong, .home-community-card em { display: block; min-width: 0; }
.home-community-card small, .home-community-card em { color: var(--cc-muted); font-size: .74rem; font-style: normal; }
.home-community-card strong { margin: .2rem 0; overflow-wrap: anywhere; }
.catalog-grid { padding-block: 1.5rem 4rem; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
.catalog-card { display: grid; grid-template-columns: 190px minmax(0,1fr); min-height: 210px; }
.catalog-card > div:last-child { min-width: 0; padding: 1.25rem; }
.catalog-card h2 { margin: .6rem 0; font-size: 1.3rem; }
.catalog-card p { font-size: .88rem; line-height: 1.5; }
.catalog-image { display: grid; place-items: center; color: var(--cc-on-brand); }
.catalog-image .mud-icon-root { font-size: 4rem; }
.catalog-photo { width: 100%; height: 100%; min-height: 210px; object-fit: cover; }
.community-card-image { background: var(--cc-community-art); }
.organizer-card-image { background: var(--cc-organizer-art); }

.detail-hero { width: min(var(--cc-page-max), calc(100% - var(--cc-page-gutters))); margin: 0 auto; padding: 3rem 0 2rem; display: grid; grid-template-columns: 1fr auto; align-items: end; gap: 2rem; border-bottom: 1px solid var(--cc-line); }
.detail-hero h1 { margin: .25rem 0 .75rem; font-size: clamp(2.2rem, 4vw, 3.8rem); }
.detail-hero p { max-width: 700px; color: var(--cc-muted); font-size: 1.05rem; line-height: 1.65; }
.detail-hero .detail-location { display: flex; align-items: center; gap: .35rem; margin: .25rem 0; font-size: .92rem; }
.detail-stat { min-width: 150px; padding: 1.25rem; border-left: 4px solid var(--cc-red); background: var(--cc-surface); }
.detail-stat strong, .detail-stat span { display: block; }
.detail-stat strong { font-family: "Space Grotesk"; font-size: 2.2rem; }
.detail-stat span { color: var(--cc-muted); font-size: .8rem; }
.detail-hero-actions { margin-top: 1rem; }
.detail-section { width: min(var(--cc-page-max), calc(100% - var(--cc-page-gutters))); margin: 0 auto; padding-block: 2.5rem; }
.organizer-public-location { max-width: 620px; padding: 1rem; border: 1px solid var(--cc-line); background: var(--cc-surface); display: flex; align-items: flex-start; gap: .85rem; }
.organizer-public-location-icon { width: 42px; height: 42px; flex: 0 0 42px; display: grid; place-items: center; background: var(--cc-accent-soft); color: var(--cc-green); }
.organizer-public-location address { display: grid; gap: .15rem; color: var(--cc-ink); font-style: normal; line-height: 1.5; }
.organizer-strip { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .75rem; }
.organizer-strip button, .organizer-strip a { width: 100%; padding: .85rem; border: 1px solid var(--cc-line); background: var(--cc-surface); color: var(--cc-ink); display: grid; grid-template-columns: 44px 1fr auto; align-items: center; gap: .75rem; text-align: left; text-decoration: none; font: inherit; cursor: pointer; }
.organizer-strip strong, .organizer-strip small { display: block; }
.organizer-strip small { margin-top: .15rem; color: var(--cc-muted); }
.organizer-avatar { width: 44px; height: 44px; display: grid; place-items: center; background: var(--cc-accent-soft); color: var(--cc-green); }
.organizer-avatar.community { background: var(--cc-purple-soft); color: var(--cc-purple); }
.section-intro { max-width: 760px; margin: -.75rem 0 1.25rem; color: var(--cc-muted); }
.public-server-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .75rem; }
.public-server-card { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: 1rem; padding: 1rem; }
.public-server-card h3 { margin: 0 0 .35rem; font-size: 1rem; }
.public-server-card p { margin: .15rem 0; color: var(--cc-muted); font-size: .78rem; }
.public-server-card strong { color: var(--cc-ink); }
.public-server-actions { display: flex; align-items: center; gap: .4rem; }
.public-server-catalog { margin-bottom: 1.25rem; }
.public-server-search { grid-template-columns: minmax(15rem, 1.25fr) minmax(12rem, 1fr) minmax(18rem, 1fr) auto; }
.public-server-title { display: flex; align-items: center; gap: 1rem; margin-top: .75rem; }
.public-server-title > div, .public-server-identity { min-width: 0; }
.public-server-title h1 { margin-block: .15rem; overflow-wrap: anywhere; }
.server-icon.large { width: 72px; height: 72px; font-size: 1.5rem; }
.server-follow-summary { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-block: 1px solid var(--cc-line); }
.server-follow-summary > div { min-width: 0; padding: 1.25rem; }
.server-follow-summary > div + div { border-left: 1px solid var(--cc-line); }
.server-follow-summary h3 { display: flex; align-items: center; gap: .45rem; margin: 0 0 .75rem; font-size: 1rem; }
.server-follow-summary ul { margin: 0; padding-left: 1.15rem; color: var(--cc-muted); }
.server-follow-summary li + li { margin-top: .25rem; }
.server-follow-summary p { margin: 0; color: var(--cc-muted); }

.admin-heading, .admin-section, .admin-list-heading, .admin-toolbar, .admin-table, .admin-form-heading, .admin-form,
.operations-summary, .admin-page-state {
    width: min(var(--cc-page-max), calc(100% - var(--cc-page-gutters)));
    margin-inline: auto;
}
.admin-heading { padding-bottom: 2rem; border-bottom: 1px solid var(--cc-line); }
.admin-section { padding-block: 2.25rem; }
.admin-section + .admin-section { border-top: 1px solid var(--cc-line); }
.admin-section:last-of-type { padding-bottom: 4rem; }
.section-heading-row { display: flex; justify-content: space-between; align-items: end; margin-bottom: 1rem; }
.section-heading-row h2 { margin: 0; font-size: 1.8rem; }
.admin-link-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .75rem; }
.admin-link-card { min-width: 0; min-height: 106px; padding: 1rem; border-radius: var(--cc-panel-radius); color: var(--cc-ink); display: grid; grid-template-columns: 38px minmax(0, 1fr) 24px; align-items: center; gap: .8rem; text-decoration: none; }
.admin-link-card:hover { border-color: var(--cc-green); box-shadow: 0 5px 16px rgba(16,37,31,.07); }
.admin-link-card > .mud-icon-root:first-child { color: var(--cc-red); font-size: 1.8rem; }
.admin-link-card strong, .admin-link-card small { display: block; }
.admin-link-card small { margin-top: .25rem; color: var(--cc-muted); line-height: 1.4; }
.back-link { display: inline-flex; align-items: center; gap: .3rem; margin-bottom: .9rem; color: var(--cc-green) !important; }
.admin-list-heading { display: flex; justify-content: space-between; align-items: end; gap: 1rem; }
.admin-list-heading > div { min-width: 0; }
.admin-list-heading > .mud-button-root { flex-shrink: 0; white-space: nowrap; }
.heading-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: .5rem; }
.admin-toolbar { margin-block: .75rem 1rem; padding: .8rem; display: grid; grid-template-columns: minmax(240px, 1fr) auto auto; align-items: center; gap: 1rem; }
.organizer-review-toolbar { grid-template-columns: minmax(260px, 1fr) minmax(190px, .45fr) auto; }
.admin-table { }
.admin-section > .admin-table { width: 100%; margin-inline: 0; }
.admin-table .mud-table-cell { vertical-align: middle; }
.admin-table strong, .table-secondary { display: block; }
.table-secondary { margin-top: .15rem; color: var(--cc-muted); font-size: .75rem; }
.inline-status { display: block; margin-top: .2rem; color: var(--cc-danger); font-size: .72rem; font-weight: 700; }
.admin-row-actions { width: 104px; white-space: nowrap; text-align: right !important; }
.table-empty { width: 100%; padding: 2.5rem; color: var(--cc-muted); text-align: center; }
.admin-form-heading { padding-bottom: 1rem; }
.admin-form { padding-bottom: 4rem; display: grid; gap: 1rem; }
.form-section { padding: 1.25rem; }
.form-section-heading { margin-bottom: 1.25rem; }
.form-section-heading h2, .form-section-heading h3 { margin: 0; font-size: var(--ui-heading-size, 1.25rem); }
.form-section-heading p { margin: .3rem 0 0; color: var(--cc-muted); font-size: .88rem; }
.form-grid { display: grid; gap: 1rem; min-width: 0; }
.form-grid.two-column { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.form-grid .span-two { grid-column: 1 / -1; }
.profile-managed-field { min-width: 0; }
.profile-authority-groups { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; margin: -.35rem 0 1.15rem; padding: .75rem; border: 1px solid var(--cc-line); border-radius: var(--cc-panel-radius); background: var(--cc-surface-muted); }
.profile-authority-groups > div { min-width: 0; }
.profile-authority-groups strong { display: block; margin-bottom: .2rem; font-size: .78rem; }
.profile-authority-indicator { display: flex; align-items: center; flex-wrap: wrap; gap: .25rem; min-height: 30px; color: var(--cc-muted); font-size: .75rem; line-height: 1.3; }
.profile-authority-indicator .mud-icon-root { flex: 0 0 auto; color: var(--cc-green); }
.profile-authority-indicator .mud-button-root { min-width: 0; min-height: 28px; padding: 0 .35rem; font-size: .72rem; }
.state-zip-grid { grid-template-columns: minmax(100px, .5fr) minmax(140px, 1fr); }
.setting-rows { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 1rem 2rem; align-items: center; }
.setting-rows > div > strong, .setting-rows > div > span { display: block; }
.setting-rows > div > span { margin-top: .2rem; color: var(--cc-muted); font-size: .82rem; }
.source-control-guidance { display: grid; gap: .75rem; margin-block: 1rem; }
.source-control-help { margin: 0; padding: .25rem .5rem; color: var(--cc-muted); font-size: .875rem; line-height: 1.6; }
.source-control-guidance .source-control-notice { padding: 1rem; }
.source-control-notice .mud-alert-position { align-items: flex-start; gap: .75rem; }
.source-control-notice .mud-alert-icon { margin: 0; padding: .125rem 0 0; }
.source-control-notice .mud-alert-message { min-width: 0; padding: 0; line-height: 1.6; }
.source-control-notice-title { display: block; margin-bottom: .25rem; }
.compact-settings { margin-top: 1.25rem; padding-top: 1.25rem; border-top: 1px solid var(--cc-line); }
.form-actions { min-height: 52px; display: flex; align-items: center; gap: .5rem; }
.mapping-note { margin-top: 1rem; }
.source-mapping-list { display: grid; gap: .75rem; margin-top: 1rem; }
.source-mapping-block { padding: 1rem; border-left: 4px solid var(--cc-warning); background: var(--cc-warning-soft); }
.source-identity-list { display: grid; gap: .75rem; margin-bottom: .75rem; }
.source-identity-block { padding: .9rem; border: 1px solid var(--cc-line); background: var(--cc-surface); }
.source-identity-heading,
.source-identity-heading > div,
.source-identity-actions { display: flex; align-items: center; gap: .5rem; }
.source-identity-heading { justify-content: space-between; margin-bottom: .75rem; }
.source-mapping-heading { display: flex; justify-content: space-between; align-items: center; gap: 1rem; margin-bottom: 1rem; }
.source-mapping-heading h3 { margin: 0; font-size: 1.05rem; }
.organizer-tab-panel { display: grid; gap: 1rem; }
.organizer-tab-panel[hidden] { display: none; }
.organizer-game-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .85rem; }
.organizer-game-card { min-width: 0; min-height: 178px; padding: 1rem; border-radius: var(--cc-panel-radius); display: flex; flex-direction: column; gap: .8rem; }
.organizer-game-card.selected { border-color: var(--cc-accent-line); box-shadow: inset 0 3px 0 var(--cc-green); }
.organizer-game-card.inactive { background: var(--cc-surface-muted); }
.organizer-game-card-heading { display: grid; grid-template-columns: 52px minmax(0, 1fr) 42px; align-items: center; gap: .75rem; }
.organizer-game-visual { width: 52px; height: 52px; border-radius: 4px; background: var(--cc-accent-soft); color: var(--cc-green); display: grid; place-items: center; overflow: hidden; }
.organizer-game-visual img { width: 100%; height: 100%; object-fit: cover; }
.organizer-game-title { min-width: 0; }
.organizer-game-title strong, .organizer-game-title span { display: block; }
.organizer-game-title strong { overflow-wrap: anywhere; font-size: 1rem; }
.organizer-game-title span { margin-top: .2rem; color: var(--cc-muted); font-size: .76rem; }
.organizer-game-status { min-height: 24px; display: flex; flex-wrap: wrap; gap: .35rem; }
.status-tag { padding: .2rem .45rem; border-radius: 4px; background: var(--cc-surface-muted); color: var(--cc-ink); font-size: .7rem; font-weight: 700; }
.status-tag.detected { background: var(--cc-accent-soft); color: var(--cc-green); }
.status-tag.manual { background: var(--cc-info-soft); color: var(--cc-info); }
.status-tag.inactive, .status-tag.suppressed { background: var(--cc-warning-soft); color: var(--cc-warning); }
.organizer-game-counts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border-top: 1px solid var(--cc-line); }
.organizer-game-counts a { min-width: 0; padding-top: .65rem; color: var(--cc-ink) !important; display: flex; align-items: baseline; gap: .35rem; text-decoration: none; }
.organizer-game-counts a + a { padding-left: .75rem; border-left: 1px solid var(--cc-line); }
.organizer-game-counts strong { font-size: 1.05rem; }
.organizer-game-counts span { color: var(--cc-muted); font-size: .72rem; }
.organizer-game-warning, .organizer-game-hint { margin-top: auto; font-size: .75rem; }
.organizer-game-warning { color: var(--cc-warning); display: flex; align-items: center; gap: .3rem; }
.organizer-game-hint { color: var(--cc-muted); }
.organizer-form-actions { position: sticky; z-index: 5; bottom: 0; padding: .65rem; border: 1px solid var(--cc-line); background: var(--cc-surface); box-shadow: 0 -5px 14px rgba(16,37,31,.06); }
.organizer-review-page { gap: 1rem; }
.review-metadata { margin: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1rem; }
.review-metadata div { min-width: 0; }
.review-metadata dt { color: var(--cc-muted); font-size: .72rem; font-weight: 700; text-transform: uppercase; }
.review-metadata dd { margin: .25rem 0 0; overflow-wrap: anywhere; font-weight: 600; }
.review-comparison-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
.review-record { min-width: 0; padding: 1.25rem; }
.review-record.provider-record { border-top: 4px solid var(--cc-warning); }
.review-record.existing-record { border-top: 4px solid var(--cc-green); }
.review-record-heading { min-height: 68px; display: flex; justify-content: space-between; align-items: flex-start; gap: 1rem; }
.review-record-label, .section-metadata { display: block; margin-top: .35rem; color: var(--cc-muted); font-size: .78rem; font-weight: 600; }
.review-record-label { margin: 0 0 .25rem; }
.review-record-heading h2 { margin: 0; font-size: 1.25rem; overflow-wrap: anywhere; }
.review-record-image { width: 100%; max-height: 220px; margin: 1rem 0; object-fit: cover; border: 1px solid var(--cc-line); }
.review-fields { margin-top: 1rem; display: grid; gap: 0; border-top: 1px solid var(--cc-line); }
.review-fields > div { min-width: 0; padding: .85rem 0; border-bottom: 1px solid var(--cc-line); display: grid; grid-template-columns: 120px minmax(0, 1fr); gap: 1rem; }
.review-fields span { color: var(--cc-muted); font-size: .78rem; }
.review-fields strong, .review-fields a { overflow-wrap: anywhere; font-size: .88rem; }
.review-decision .form-actions { margin-top: .5rem; }
.review-merge-note { margin-bottom: 1rem; }
.organizer-access-page, .organizer-access-review { max-width: 920px; }
.access-state-panel { display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: start; gap: 1rem; border-top-width: 4px; }
.access-state-panel h2 { margin: 0; font-size: 1.25rem; }
.access-state-panel p { margin: .35rem 0 0; color: var(--cc-muted); }
.access-approved { border-top-color: var(--cc-green); }
.access-approved > .mud-icon-root { color: var(--cc-green); }
.access-pending { border-top-color: var(--cc-warning); }
.access-pending > .mud-icon-root { color: var(--cc-warning); }
.access-alert-detail { display: block; margin-top: .45rem; }
.access-application-metadata { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.access-application-metadata .span-two { grid-column: 1 / -1; }
.organizer-access-toolbar { grid-template-columns: minmax(260px, 1fr) minmax(210px, .55fr) auto; }
.access-review-heading { display: flex; justify-content: space-between; align-items: flex-start; gap: 1rem; margin-bottom: 1.25rem; }
.access-review-heading h2 { margin: .15rem 0 0; font-size: 1.5rem; }
.access-review-links { margin-top: 1rem; }
.access-review-actions { flex-wrap: wrap; }
.access-source-list { border-top: 1px solid var(--cc-line); }
.access-source-list > div { display: flex; justify-content: space-between; align-items: center; gap: 1rem; padding: .8rem 0; border-bottom: 1px solid var(--cc-line); }
.access-source-list strong, .access-source-list small { display: block; overflow-wrap: anywhere; }
.access-source-list small { margin-top: .15rem; color: var(--cc-muted); }
.access-source-status { display: flex; align-items: center; flex-wrap: wrap; justify-content: flex-end; gap: .35rem; }
.access-prior-table { width: 100%; margin-inline: 0; }
.access-history { border-top: 1px solid var(--cc-line); }
.access-history > div { display: grid; grid-template-columns: 32px minmax(0, 1fr); gap: .75rem; padding: .9rem 0; border-bottom: 1px solid var(--cc-line); }
.access-history .mud-icon-root { color: var(--cc-green); }
.access-history strong, .access-history small { display: block; }
.access-history small { margin-top: .15rem; color: var(--cc-muted); }
.access-history p { margin: .45rem 0 0; white-space: pre-wrap; }
.managed-organizers-section { padding-top: 1.25rem; padding-bottom: 1.25rem; }
.managed-organizer-card { min-width: 0; min-height: 230px; color: var(--cc-ink); text-decoration: none; display: grid; grid-template-columns: 132px minmax(0, 1fr); }
.managed-organizer-card:hover { border-color: var(--cc-accent-line); box-shadow: 0 5px 16px rgba(16,37,31,.08); }
.managed-organizer-image { width: 100%; height: 100%; min-height: 230px; object-fit: cover; }
.managed-organizer-content { min-width: 0; padding: 1rem; display: flex; flex-direction: column; gap: .75rem; }
.managed-organizer-heading { display: flex; justify-content: space-between; align-items: flex-start; gap: .75rem; }
.managed-organizer-heading > span { min-width: 0; }
.managed-organizer-heading strong, .managed-organizer-heading small { display: block; overflow-wrap: anywhere; }
.managed-organizer-heading strong { font-size: 1.05rem; }
.managed-organizer-heading small { margin-top: .25rem; color: var(--cc-muted); }
.managed-organizer-badges { min-height: 24px; display: flex; flex-wrap: wrap; gap: .35rem; }
.managed-organizer-metrics { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-block: 1px solid var(--cc-line); }
.managed-organizer-metrics > span { min-width: 0; padding: .65rem .45rem; }
.managed-organizer-metrics > span + span { border-left: 1px solid var(--cc-line); }
.managed-organizer-metrics strong, .managed-organizer-metrics small { display: block; }
.managed-organizer-metrics strong { font-size: 1.05rem; }
.managed-organizer-metrics small { margin-top: .1rem; color: var(--cc-muted); font-size: .68rem; line-height: 1.25; }
.managed-organizer-card .subscription-status { margin-top: auto; }
.catalog-card-image-fallback { min-height: 100%; display: grid; place-items: center; background: var(--cc-accent-soft); color: var(--cc-green); }
.manager-list, .invitation-list { margin-top: 1rem; border-top: 1px solid var(--cc-line); }
.manager-list > div, .invitation-list > div { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: .75rem; padding: .8rem 0; border-bottom: 1px solid var(--cc-line); }
.manager-list strong, .manager-list small, .invitation-list strong, .invitation-list small { display: block; }
.manager-list small, .invitation-list small { margin-top: .15rem; color: var(--cc-muted); }
.manager-empty-state { display: flex; align-items: center; gap: .75rem; min-height: 88px; padding: 1rem 0; border-block: 1px solid var(--cc-line); color: var(--cc-muted); }
.manager-empty-state > .mud-icon-root { flex: 0 0 auto; color: var(--cc-muted); font-size: 2rem; }
.manager-empty-state strong, .manager-empty-state small { display: block; }
.manager-empty-state strong { color: var(--cc-ink); }
.manager-empty-state small { margin-top: .2rem; }
.manager-avatar { width: 42px; height: 42px; display: grid; place-items: center; overflow: hidden; background: var(--cc-accent-soft); color: var(--cc-green); }
.manager-avatar img { width: 100%; height: 100%; object-fit: cover; }
.invite-link-row { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: .5rem; margin-top: .75rem; }
.source-change-review-list { padding-top: 1rem; }
.source-change-comparison { margin: 1rem 0; }
.source-change-notes { margin-top: 1rem; }
.organizer-identity-review-page { gap: 1rem; }
.identity-alert-detail { display: block; margin-top: .35rem; font-size: .82rem; }
.identity-source-record { display: flex; flex-direction: column; }
.identity-record-actions { min-height: 52px; margin-top: auto; padding-top: 1rem; display: flex; flex-wrap: wrap; align-items: center; gap: .25rem; }
.identity-resolution-actions { margin-top: 1rem; flex-wrap: wrap; }
.access-denied { width: min(720px, calc(100% - 2rem)); margin: 3rem auto; }

#blazor-error-ui { display: none; position: fixed; bottom: 0; width: 100%; z-index: 2000; padding: .8rem 1rem; background: var(--cc-error-banner); color: var(--cc-on-brand); }
#blazor-error-ui .reload, #blazor-error-ui .dismiss { color: var(--cc-on-brand); margin-left: 1rem; }
#blazor-error-ui .dismiss { cursor: pointer; }

/* Account for the responsive navigation drawer when sizing search controls. */
@media (max-width: 1400px) {
    .event-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .search-surface, .catalog-search, .discovery-search { grid-template-columns: 1fr 1fr; }
    .home-community-grid { grid-template-columns: 1fr; }
    .admin-link-grid { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 700px) {
    .account-menu { margin-inline-end: .25rem; }
    .account-menu > .mud-menu-button-activator { min-width: 40px; padding-inline: 8px; }
    .account-menu > .mud-menu-button-activator .mud-button-label {
        width: 24px; max-width: 24px; overflow: visible; font-size: 0;
    }
    .account-menu > .mud-menu-button-activator .mud-button-icon-start {
        flex: 0 0 24px; margin-inline: 0;
    }
    .brand-name { font-size: 1rem; }
    .sign-in-button .mud-button-label { font-size: 0; }
    .home-hero { min-height: 510px; padding: 2rem 1rem; align-items: end; }
    .hero-content h1 { font-size: clamp(2rem, 9vw, 2.7rem); }
    .hero-content p { font-size: 1rem; margin-bottom: 1.5rem; }
    .featured-communities, .event-teaser { padding-block: 2.5rem; }
    .featured-communities { padding-bottom: 0; }
    .home-section-heading { gap: .5rem; margin-bottom: 1rem; }
    .home-section-heading h2 { line-height: 1.2; }
    .home-section-heading p { margin-top: .5rem; line-height: 1.6; }
    .home-section-heading > .mud-button-root { min-height: 44px; padding-inline: 0; }
    .section-heading { align-items: flex-start; flex-direction: column; }
    .event-grid, .community-intro, .catalog-grid { grid-template-columns: 1fr; }
    .detail-hero, .organizer-strip, .public-server-grid, .server-follow-summary { grid-template-columns: 1fr; }
    .public-server-card { grid-template-columns: auto minmax(0, 1fr); }
    .public-server-actions { grid-column: 1 / -1; justify-content: flex-end; }
    .public-server-actions .mud-button-root { flex: 1; }
    .public-server-search { grid-template-columns: 1fr; }
    .public-server-search .mud-button-root { width: 100%; }
    .server-follow-summary > div + div { border-left: 0; border-top: 1px solid var(--cc-line); }
    .public-server-title { align-items: flex-start; }
    .public-server-title h1 { font-size: 1.75rem; line-height: 1.08; }
    .public-server-title .server-icon.large { width: 56px; height: 56px; font-size: 1.25rem; }
    .community-intro { width: calc(100% - 2rem); padding: 2rem 1.25rem; }
    .search-surface, .catalog-search, .discovery-search, .location-controls { grid-template-columns: 1fr; }
    .discovery-search > .location-controls { grid-column: auto; }
    .result-toolbar { align-items: flex-start; flex-direction: column; }
    .result-toolbar > div { width: 100%; align-items: stretch; flex-direction: column; }
    .result-toolbar .sort-select { width: 100%; }
    .catalog-card { grid-template-columns: 110px minmax(0,1fr); }
    .managed-organizer-card { grid-template-columns: 96px minmax(0, 1fr); min-height: 0; }
    .managed-organizer-image { min-height: 100%; }
    .site-footer { flex-direction: column; gap: .25rem; }
    .admin-link-grid, .form-grid.two-column, .review-comparison-grid, .review-metadata, .organizer-game-grid, .profile-authority-groups, .access-application-metadata { grid-template-columns: 1fr; }
    .form-grid .span-two { grid-column: auto; }
    .access-application-metadata .span-two { grid-column: auto; }
    .admin-list-heading { align-items: flex-start; flex-direction: column; }
    .heading-actions { width: 100%; justify-content: flex-start; }
    .admin-toolbar { grid-template-columns: 1fr; align-items: stretch; }
    .form-actions { align-items: stretch; flex-direction: column; }
    .form-actions .mud-spacer { display: none; }
    .organizer-editor-tab { min-width: max-content; flex: 0 0 auto; justify-content: center; padding-inline: .6rem; white-space: nowrap; }
    .organizer-form-actions { position: static; }
    .setting-rows { grid-template-columns: minmax(0, 1fr) auto; gap: .75rem; }
    .review-fields > div { grid-template-columns: 1fr; gap: .25rem; }
    .access-state-panel { grid-template-columns: 1fr; }
    .access-source-list > div { align-items: flex-start; flex-direction: column; }
    .access-source-status { justify-content: flex-start; }
}

@media (max-width: 500px) {
    .hero-actions { flex-direction: column; align-items: stretch; }
    .hero-actions > .mud-button-root { width: 100%; min-height: 44px; }
    .event-teaser .event-card { grid-template-columns: 52px minmax(0, 1fr); }
    .event-teaser .event-card-body { padding: .75rem; }
    .brand-name { display: none; }
    .managed-organizer-card { grid-template-columns: 1fr; }
    .managed-organizer-image { min-height: 0; aspect-ratio: 16 / 7; }
}

/* Server management */
.server-detail-page { padding-block: 2.75rem 4rem; }
.server-list-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 1rem; text-align: left; }
.server-list-heading > div { min-width: 0; }
.server-grid { display: grid; gap: 1rem; padding-bottom: 4rem; }
.server-card { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: 1rem; padding: 1rem; border-radius: 8px; }
.server-icon { width: 64px; height: 64px; border-radius: 8px; object-fit: cover; flex: 0 0 auto; }
.server-icon.large { width: 80px; height: 80px; }
.server-icon-fallback { display: grid; place-items: center; background: var(--cc-accent-soft); color: var(--cc-green); font-weight: 800; }
.server-card-copy { min-width: 0; }
.server-card-copy p, .server-card-copy span { color: var(--cc-muted); }
.server-title-row { display: flex; align-items: center; flex-wrap: wrap; gap: .65rem; }
.server-title-row h2 { margin: 0; font-size: 1.15rem; }
.subscription-status { display: inline-flex; width: fit-content; margin-top: .45rem; padding: .18rem .45rem; border-left: 3px solid var(--cc-muted); color: var(--cc-muted) !important; font-size: .72rem; font-weight: 700; }
.subscription-activepaid { border-color: var(--cc-success); color: var(--cc-success) !important; }
.subscription-activecomplimentary { border-color: var(--cc-info); color: var(--cc-info) !important; }
.subscription-scheduledcomplimentary { border-color: var(--cc-info); color: var(--cc-info) !important; }
.subscription-graceperiod { border-color: var(--cc-warning); color: var(--cc-warning) !important; }
.subscription-ownertransfergrace { border-color: var(--cc-warning); color: var(--cc-warning) !important; }
.subscription-expired { border-color: var(--cc-danger); color: var(--cc-danger) !important; }
.status-pill { display: inline-flex; align-items: center; min-height: 24px; padding: 2px 8px; border-radius: 999px; font-size: .75rem; font-weight: 700; }
.status-connected { background: var(--cc-success-soft); color: var(--cc-success); }
.status-notconnected { background: var(--cc-surface-muted); color: var(--cc-muted); }
.status-disabled { background: var(--cc-danger-soft); color: var(--cc-danger); }
.server-detail-header { margin-bottom: 1rem; }
.server-identity { display: flex; align-items: center; gap: 1rem; margin-top: .75rem; }
.server-identity h1 { margin: .15rem 0 .4rem; }
.permission-alert { margin-bottom: 1rem; }
.server-tabs { background: transparent; }
.server-tab-panel { padding: 1rem 0 !important; }
.connection-health-section { padding-top: .5rem; }
.connection-health-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .75rem; margin-top: 1rem; }
.connection-health-item { display: flex; align-items: flex-start; gap: .7rem; min-width: 0; padding: .85rem 0; border-top: 2px solid var(--cc-line); }
.connection-health-item > .mud-icon-root { margin-top: .1rem; color: var(--cc-muted); }
.connection-health-item > span { display: flex; min-width: 0; flex-direction: column; }
.connection-health-item small { color: var(--cc-muted); }
.connection-health-item.healthy { border-color: var(--cc-success); }
.connection-health-item.healthy > .mud-icon-root { color: var(--cc-success); }
.connection-health-item.warning { border-color: var(--cc-warning); }
.connection-health-item.warning > .mud-icon-root { color: var(--cc-warning); }
.settings-section { margin-bottom: 1rem; padding: 1.25rem 0; border-bottom: 1px solid var(--cc-line); }
.settings-section:last-child { border-bottom: 0; }
.server-stat-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .75rem; margin: 1rem 0; }
.server-stat-grid > div { display: flex; flex-direction: column; padding: 1rem; border: 1px solid var(--cc-line); border-radius: 8px; background: var(--cc-surface); }
.server-stat-grid strong { font: 700 1.5rem "Space Grotesk", sans-serif; }
.server-stat-grid span { color: var(--cc-muted); }
.settings-list { margin: 1rem 0; border-top: 1px solid var(--cc-line); }
.settings-list > div { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: 1rem 0; border-bottom: 1px solid var(--cc-line); }
.settings-list span { display: flex; flex-direction: column; }
.settings-list small { color: var(--cc-muted); max-width: 60ch; }
.settings-list > .settings-list-field { display: block; padding-top: .25rem; }
.settings-list-field .mud-input-control { width: 100%; }
.settings-actions { display: flex; align-items: center; flex-wrap: wrap; gap: .5rem; justify-content: flex-end; padding: .25rem 0 1.25rem; }
.dialog-intro { margin-top: 0; color: var(--cc-muted); line-height: 1.5; }
.dialog-intro strong { color: var(--cc-ink); }
.event-interest-actions { position: sticky; bottom: 0; z-index: 2; padding: .85rem 0; border-top: 1px solid var(--cc-line); background: var(--cc-surface-muted); }
.notification-default-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); margin-top: 1rem; }
.notification-route-editor { display: grid; grid-template-columns: minmax(200px, 1fr) minmax(200px, 1fr) minmax(200px, 1fr) auto; align-items: center; gap: .75rem; margin-top: 1rem; }
.notification-route-list { margin-top: 1rem; border-top: 1px solid var(--cc-line); }
.notification-route-list > div { display: grid; grid-template-columns: minmax(180px, 1fr) minmax(200px, .75fr) minmax(200px, .75fr) auto; align-items: center; gap: .75rem; padding: .75rem 0; border-bottom: 1px solid var(--cc-line); }
.notification-route-list strong, .notification-route-list small { display: block; }
.notification-route-list small { color: var(--cc-muted); }
.organizer-news-page { width: min(var(--cc-page-max), calc(100% - var(--cc-page-gutters))); margin-inline: auto; padding-bottom: 4rem; }
.organizer-news-empty { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: 1rem; min-height: 120px; padding: 1.25rem; }
.organizer-news-empty-icon { width: 48px; height: 48px; display: grid; place-items: center; background: var(--cc-accent-soft); color: var(--cc-green); }
.organizer-news-empty strong, .organizer-news-empty small { display: block; }
.organizer-news-empty strong { color: var(--cc-ink); font-size: 1rem; }
.organizer-news-empty small { margin-top: .25rem; color: var(--cc-muted); line-height: 1.45; }
.news-management-list { display: grid; gap: .75rem; }
.news-management-item { display: grid; grid-template-columns: minmax(0, 1fr) auto auto; align-items: center; gap: 1rem; padding: 1rem; border-radius: 8px; }
.news-management-item h2 { margin: .45rem 0 .25rem; font-size: 1.1rem; }
.news-management-item p { margin: 0; color: var(--cc-muted); }
.news-management-meta, .news-delivery-counts { display: flex; align-items: center; flex-wrap: wrap; gap: .65rem; color: var(--cc-muted); font-size: .82rem; }
.news-delivery-counts span { min-width: 58px; text-align: center; }
.news-delivery-counts strong { display: block; color: var(--cc-ink); font-size: 1rem; }
.news-editor > .form-grid { margin-bottom: .25rem; }
.news-editor-section { padding: 1.5rem 0; border-top: 1px solid var(--cc-line); }
.news-editor-section-heading { display: flex; align-items: center; justify-content: space-between; gap: 1.5rem; margin-bottom: 0; }
.news-editor-section-heading > div { min-width: 0; }
.news-editor-section-heading .mud-switch { flex: 0 0 auto; }
.news-game-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(180px, 1fr)); gap: .75rem; }
.news-schedule-controls { display: grid; grid-template-columns: minmax(190px, 260px) minmax(170px, 220px); align-items: start; justify-content: start; gap: .75rem; margin-top: 1.25rem; }
.news-editor-actions { padding-top: 1.25rem; border-top: 1px solid var(--cc-line); }
.notification-job-controls { grid-template-columns: repeat(4, minmax(190px, 1fr)) auto; }
@media (max-width: 1280px) {
    .notification-job-controls { grid-template-columns: repeat(2, minmax(220px, 1fr)); }
    .notification-job-controls .manual-run-button { grid-column: 1 / -1; justify-self: start; }
}
.public-news-list { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 1rem; }
.public-news-item { padding: 1rem; border-left: 3px solid var(--cc-green); background: var(--cc-surface-muted); }
.public-news-item h3 { margin: .65rem 0 .35rem; font-size: 1.12rem; }
.public-news-item p { white-space: pre-wrap; }
@media (max-width: 700px) {
    .notification-route-editor,
    .notification-route-list > div,
    .news-management-item,
    .news-schedule-controls,
    .organizer-news-empty {
        grid-template-columns: 1fr;
    }
    .news-editor-section-heading { align-items: flex-start; }
    .organizer-news-empty .mud-button-root { width: 100%; }
    .news-delivery-counts { justify-content: flex-start; }
    .news-delivery-counts span { text-align: left; }
}
.selection-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 1rem; }
.selection-count { flex: 0 0 auto; color: var(--cc-green); font-size: .82rem; font-weight: 700; }
.interest-prerequisite-alert { margin: 1rem 0; }
.choice-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(190px, 1fr)); gap: .75rem; margin: 1rem 0; }
.choice-card { display: flex; align-items: center; gap: .6rem; min-height: 58px; padding: .65rem; border-radius: 8px; cursor: pointer; }
.choice-card img { width: 40px; height: 40px; border-radius: 4px; object-fit: cover; }
.interest-search { display: grid; grid-template-columns: 1.5fr 1.5fr 1fr; gap: .75rem; margin-top: 1rem; }
.choice-list { display: grid; grid-template-columns: repeat(auto-fill, minmax(270px, 1fr)); gap: .65rem; margin: 1rem 0; }
.choice-row { display: flex; align-items: flex-start; gap: .35rem; min-height: 64px; padding: .65rem; border-radius: 8px; cursor: pointer; }
.choice-row > span { display: flex; min-width: 0; flex-direction: column; padding-top: .4rem; }
.choice-row small { color: var(--cc-muted); }
.choice-row em { margin-top: .2rem; color: var(--cc-green); font-size: .78rem; font-style: normal; }
.choice-row.selected { border-color: var(--cc-accent-line); background: var(--cc-accent-soft); }
.choice-row.inherited { border-color: var(--cc-accent-line); background: var(--cc-accent-soft); cursor: default; }
.organizer-choice-list { max-height: 520px; overflow-y: auto; padding-right: .25rem; }
.organizer-choice-group-heading { display: flex; align-items: baseline; justify-content: space-between; gap: 1rem; margin: .25rem 0 .65rem; padding-bottom: .45rem; border-bottom: 1px solid var(--cc-line); }
.organizer-choice-group-heading.available { margin-top: 1.5rem; }
.organizer-choice-group-heading h3 { margin: 0; font-size: 1rem; }
.organizer-choice-group-heading span { color: var(--cc-muted); font-size: .78rem; text-align: right; }
.selected-organizer-choices { max-height: 360px; }
.interest-list-empty { padding: 1rem; color: var(--cc-muted); text-align: center; }
.post-history-list { display: grid; gap: .75rem; margin-top: 1rem; }
.post-history-list article { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 1rem; align-items: center; padding: 1rem; border: 1px solid var(--cc-line); border-radius: 8px; background: var(--cc-surface); }
.post-history-list h3 { margin: .35rem 0 .15rem; font-size: 1rem; }
.post-history-list p { margin: 0; color: var(--cc-muted); }
.post-history-list dl { display: grid; grid-template-columns: auto auto; gap: .2rem .6rem; margin: 0; font-size: .82rem; }
.post-history-list dt { color: var(--cc-muted); }
.post-history-list dd { margin: 0; font-weight: 600; }
.subscription-preview-heading, .subscription-preview-alert, .subscription-benefits, .subscription-pricing,
.subscription-admin-summary, .complimentary-access-form, .complimentary-revoke-form {
    width: min(var(--cc-page-max), calc(100% - var(--cc-page-gutters)));
    margin-inline: auto;
}
.organizer-subscription-page { width: min(var(--cc-page-max), calc(100% - var(--cc-page-gutters))); margin-inline: auto; padding-bottom: 4rem; display: grid; gap: 1rem; }
.organizer-subscription-page > .subscription-preview-alert,
.organizer-subscription-page > .subscription-benefits,
.organizer-subscription-page > .subscription-pricing,
.organizer-subscription-page > .subscription-admin-summary { width: 100%; margin-inline: 0; }
.subscription-preview-alert { margin-bottom: 1rem; }
.subscription-benefits { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .75rem; margin-bottom: 1rem; }
.subscription-benefits > div { min-width: 0; padding: 1rem; border: 1px solid var(--cc-line); background: var(--cc-surface); display: flex; align-items: flex-start; gap: .75rem; }
.subscription-benefits .mud-icon-root { color: var(--cc-green); }
.subscription-benefits span, .subscription-benefits strong, .subscription-benefits small { display: block; }
.subscription-benefits small { margin-top: .2rem; color: var(--cc-muted); }
.subscription-pricing { margin-bottom: 4rem; padding-top: 1.25rem; border-top: 1px solid var(--cc-line); }
.subscription-price-options { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .75rem; margin: 1rem 0; }
.subscription-price-options article { position: relative; min-height: 230px; padding: 1.25rem; border: 1px solid var(--cc-line); border-top: 4px solid var(--cc-muted); background: var(--cc-surface); display: flex; align-items: flex-start; flex-direction: column; gap: .5rem; }
.subscription-price-options article.featured { border-top-color: var(--cc-green); }
.subscription-price-options article > span { color: var(--cc-muted); font-size: .8rem; font-weight: 700; text-transform: uppercase; }
.subscription-price-options article > strong { font: 700 2.5rem "Space Grotesk", sans-serif; }
.subscription-price-options article > small { color: var(--cc-muted); }
.subscription-price-options article > .mud-button-root { width: 100%; margin-top: auto; }
.subscription-admin-toolbar { grid-template-columns: minmax(260px, 1fr) minmax(190px, .45fr) auto; }
.subscription-admin-summary { margin-bottom: 1rem; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border: 1px solid var(--cc-line); background: var(--cc-surface); }
.subscription-admin-summary > div { min-width: 0; padding: 1rem; border-left: 1px solid var(--cc-line); }
.subscription-admin-summary > div:first-child { border-left: 0; }
.subscription-admin-summary span, .subscription-admin-summary strong { display: block; overflow-wrap: anywhere; }
.subscription-admin-summary span { color: var(--cc-muted); font-size: .75rem; }
.subscription-admin-summary strong { margin-top: .2rem; }
.complimentary-access-form, .complimentary-revoke-form { margin-bottom: 1rem; display: grid; gap: 1rem; }
.complimentary-duration { min-height: 64px; padding-block: .75rem; border-block: 1px solid var(--cc-line); display: flex; align-items: center; justify-content: space-between; gap: 1rem; }
.complimentary-duration strong, .complimentary-duration small { display: block; }
.complimentary-duration small { margin-top: .2rem; color: var(--cc-muted); }

@media (max-width: 760px) {
    .server-list-heading { align-items: flex-start; flex-direction: column; }
    .server-card { grid-template-columns: auto minmax(0, 1fr); }
    .server-card-actions { grid-column: 1 / -1; }
    .server-card-actions .mud-button-root { width: 100%; }
    .server-stat-grid, .interest-search, .connection-health-grid { grid-template-columns: 1fr; }
    .selection-heading { align-items: flex-start; flex-direction: column; gap: .35rem; }
    .settings-actions .mud-button-root { width: 100%; }
    .post-history-list article { grid-template-columns: auto minmax(0, 1fr); }
    .post-history-list dl { grid-column: 1 / -1; }
    .subscription-benefits, .subscription-price-options, .subscription-admin-summary { grid-template-columns: 1fr; }
    .subscription-admin-summary > div { border-top: 1px solid var(--cc-line); border-left: 0; }
    .subscription-admin-summary > div:first-child { border-top: 0; }
}

.organizer-picker-search { width: min(100%, 540px); margin-top: 1rem; }
.organizer-picker { max-height: 430px; overflow: auto; padding-right: .25rem; }

.account-profile-heading, .account-profile-page, .account-profile-state {
    width: min(var(--cc-page-max), calc(100% - var(--cc-page-gutters)));
    margin-inline: auto;
}

.auth-choice-page, .destinations-heading, .destinations-page, .destinations-state {
    width: min(var(--cc-compact-page-max), calc(100% - var(--cc-page-gutters)));
    margin-inline: auto;
}

.auth-page {
    width: min(720px, calc(100% - 2rem));
    margin-inline: auto;
    padding: 3.5rem 0 4rem;
}
.auth-page-heading {
    display: grid;
    grid-template-columns: 52px minmax(0, 1fr);
    align-items: center;
    gap: 1rem;
    margin-bottom: 1.5rem;
}
.auth-page-heading h1 {
    margin: 0;
    font-size: clamp(1.85rem, 4vw, 2.5rem);
    line-height: 1.15;
}
.auth-page-heading p {
    margin: .35rem 0 0;
    color: var(--cc-muted);
}
.auth-page-icon {
    width: 52px;
    height: 52px;
    display: grid;
    place-items: center;
    border: 1px solid var(--cc-accent-line);
    border-radius: var(--cc-panel-radius);
    background: var(--cc-accent-soft);
    color: var(--cc-green);
}
.auth-page-icon.error {
    border-color: var(--cc-danger);
    background: var(--cc-danger-soft);
    color: var(--cc-danger);
}
.auth-page-icon .mud-icon-root { font-size: 1.75rem; }
.auth-surface {
    padding: 1.5rem;
    border: 1px solid var(--cc-line);
    border-radius: var(--cc-panel-radius);
    background: var(--cc-surface);
    box-shadow: 0 8px 24px rgba(16, 37, 31, .06);
}
.auth-provider-option {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(220px, auto);
    align-items: center;
    gap: 1.25rem;
    padding: 1.1rem 0;
}
.auth-provider-option:first-child { padding-top: 0; }
.auth-provider-option + .auth-provider-option { border-top: 1px solid var(--cc-line); }
.auth-provider-copy > strong,
.auth-provider-copy > span { display: block; }
.auth-provider-copy > strong { margin-bottom: .25rem; font-size: 1rem; }
.auth-provider-copy > span { color: var(--cc-muted); font-size: .9rem; line-height: 1.5; }
.auth-provider-option > .mud-button-root { min-height: 46px; }
.auth-error-surface {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 2rem;
}
.auth-error-surface h2 { margin: 0 0 .4rem; font-size: 1.15rem; }
.auth-error-surface p { margin: 0; color: var(--cc-muted); line-height: 1.6; }
.auth-actions { display: flex; flex-direction: column; align-items: stretch; gap: .4rem; }
.auth-actions .mud-button-root { min-height: 44px; }

.auth-choice-page { padding-bottom: 4rem; }
.auth-choice-panel {
    display: grid;
    gap: 0.9rem;
    width: min(100%, 460px);
    padding-top: 1.5rem;
}
.auth-choice-panel .mud-button-root { min-height: 48px; }
.auth-choice-note {
    margin: .35rem 0 0;
    padding-top: 1rem;
    border-top: 1px solid var(--cc-line);
    color: var(--cc-muted);
    font-size: .88rem;
}

.account-merge-heading, .account-merge-page {
    width: min(920px, calc(100% - 2rem));
    margin-inline: auto;
}
.account-merge-page { padding-bottom: 4rem; }
.account-merge-surface {
    display: grid;
    gap: 1.5rem;
    padding: 1.5rem;
    border: 1px solid var(--cc-line);
    border-radius: var(--cc-panel-radius);
    background: var(--cc-surface);
    box-shadow: 0 8px 24px rgba(16, 37, 31, .06);
}
.account-merge-intro {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 1rem;
    align-items: start;
}
.account-merge-intro > .mud-icon-root { color: var(--cc-green); font-size: 2rem; }
.account-merge-intro h2 { margin: 0 0 .35rem; font-size: 1.3rem; }
.account-merge-intro p { margin: 0; color: var(--cc-muted); line-height: 1.6; }
.account-merge-comparison {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 40px minmax(0, 1fr);
    gap: 1rem;
    align-items: stretch;
}
.account-merge-account {
    min-width: 0;
    padding: 1rem;
    border: 1px solid var(--cc-line);
    border-radius: var(--cc-panel-radius);
    background: var(--cc-page);
}
.account-merge-account > strong,
.account-merge-account > small,
.account-merge-label { display: block; }
.account-merge-label {
    margin-bottom: .4rem;
    color: var(--cc-green);
    font-size: .75rem;
    font-weight: 700;
    text-transform: uppercase;
}
.account-merge-account > strong { font-size: 1.1rem; overflow-wrap: anywhere; }
.account-merge-account > small { margin-top: .2rem; color: var(--cc-muted); }
.account-merge-account dl {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .7rem;
    margin: 1rem 0 0;
}
.account-merge-account dl > div { padding-top: .65rem; border-top: 1px solid var(--cc-line); }
.account-merge-account dt { color: var(--cc-muted); font-size: .75rem; }
.account-merge-account dd { margin: .1rem 0 0; font-weight: 700; }
.account-merge-arrow { display: grid; place-items: center; color: var(--cc-green); }
.account-merge-preserved {
    display: flex;
    align-items: flex-start;
    gap: .65rem;
    padding: .9rem 1rem;
    border-left: 3px solid var(--cc-green);
    background: var(--cc-accent-soft);
    color: var(--cc-green-dark);
    line-height: 1.5;
}
.account-merge-actions { justify-content: flex-end; margin-top: 0; }
.account-resolution-surface { padding-bottom: 0; }
.account-resolution-alert { margin-bottom: 1rem; }
.account-resolution-option small {
    display: block;
    margin-top: .4rem;
    color: var(--cc-muted);
    font-size: .82rem;
    line-height: 1.45;
}
.account-resolution-footer {
    display: flex;
    justify-content: flex-start;
    margin-inline: -1.5rem;
    padding: .75rem 1.5rem;
    border-top: 1px solid var(--cc-line);
    border-radius: 0 0 5px 5px;
    background: var(--cc-page);
}

.destinations-page { display: grid; gap: 1.5rem; padding-bottom: 4rem; }
.destination-summary-band {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    border-block: 1px solid var(--cc-line);
}
.destination-summary-band > div { padding: 1rem 1.25rem; }
.destination-summary-band > div + div { border-left: 1px solid var(--cc-line); }
.destination-summary-band span, .destination-summary-band small,
.destination-row-copy small, .destination-coverage small,
.subscription-capacity-list small {
    display: block;
    color: var(--cc-muted);
}
.destination-summary-band strong { display: block; font-size: 1.55rem; }
.destination-list, .subscription-capacity-list, .destination-history-list { display: grid; }
.destination-row {
    display: grid;
    grid-template-columns: 42px minmax(180px, 1fr) auto minmax(150px, auto) auto;
    align-items: center;
    gap: 1rem;
    padding: 1rem 0;
    border-bottom: 1px solid var(--cc-line);
}
.destination-provider-icon {
    display: grid;
    place-items: center;
    width: 42px;
    height: 42px;
    border: 1px solid var(--cc-line);
    border-radius: var(--cc-panel-radius);
    color: var(--cc-green);
}
.destination-actions { display: flex; align-items: center; gap: 0.5rem; }
.subscription-capacity-list article, .destination-history-list article {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1rem;
    padding: 1rem 0;
    border-bottom: 1px solid var(--cc-line);
}
.destination-history-list small { display: block; color: var(--cc-muted); }
.organizer-destinations-heading, .organizer-destinations-page {
    width: min(var(--cc-page-max), calc(100% - var(--cc-page-gutters)));
    margin-inline: auto;
}
.organizer-destinations-page { display: grid; gap: 1rem; padding-bottom: 4rem; }
.organizer-destination-row {
    grid-template-columns: 42px minmax(180px, 1fr) auto auto;
}
.organizer-destination-connect { align-items: center; }
.destination-details-heading, .destination-details-page {
    width: min(var(--cc-compact-page-max), calc(100% - var(--cc-page-gutters)));
    margin-inline: auto;
}
.destination-details-page { display: grid; gap: 1rem; padding-bottom: 4rem; }
.destination-choice-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .65rem;
}
.destination-choice {
    min-width: 0;
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    align-items: center;
    gap: .65rem;
    min-height: 64px;
    padding: .65rem .8rem;
    border: 1px solid var(--cc-line);
    border-radius: var(--cc-panel-radius);
    cursor: pointer;
}
.destination-choice.selected { border-color: var(--cc-green); background: var(--cc-accent-soft); }
.destination-choice strong, .destination-choice small { display: block; }
.destination-choice small { color: var(--cc-muted); }
.destination-search-row {
    display: grid;
    grid-template-columns: minmax(260px, 1fr) auto;
    align-items: center;
    gap: .75rem;
    width: min(100%, 680px);
}
.destination-choice-heading { margin: 1.25rem 0 .5rem; font-size: 1rem; }
.destination-details-actions { justify-content: flex-end; }

@media (max-width: 800px) {
    .auth-page { padding-top: 2rem; }
    .auth-provider-option, .auth-error-surface { grid-template-columns: 1fr; gap: .8rem; }
    .auth-provider-option > .mud-button-root, .auth-actions .mud-button-root { width: 100%; }
    .auth-error-surface { align-items: stretch; }
    .destination-summary-band { grid-template-columns: 1fr; }
    .destination-summary-band > div + div {
        border-left: 0;
        border-top: 1px solid var(--cc-line);
    }
    .destination-row {
        grid-template-columns: 42px minmax(0, 1fr) auto;
    }
    .destination-coverage, .destination-actions { grid-column: 2 / -1; }
    .subscription-capacity-list article { grid-template-columns: 1fr; }
    .destination-choice-grid { grid-template-columns: 1fr; }
    .destination-search-row { grid-template-columns: 1fr; }
}

@media (max-width: 700px) {
    .account-merge-comparison { grid-template-columns: 1fr; }
    .account-merge-arrow { transform: rotate(90deg); }
    .account-merge-actions { align-items: stretch; flex-direction: column-reverse; }
    .account-merge-actions .mud-button-root { width: 100%; }
}

@media (max-width: 500px) {
    .auth-page { width: min(100% - 1.25rem, 720px); padding-top: 1.5rem; }
    .auth-page-heading { grid-template-columns: 44px minmax(0, 1fr); gap: .75rem; }
    .auth-page-icon { width: 44px; height: 44px; }
    .auth-page-heading h1 { font-size: 1.65rem; }
    .auth-surface { padding: 1.1rem; }
    .account-resolution-surface { padding-bottom: 0; }
    .account-resolution-footer {
        margin-inline: -1.1rem;
        padding-inline: 1.1rem;
    }
}
.account-profile-page { padding-bottom: 4rem; }
.account-profile-panels { padding-top: 1.25rem; }
.account-billing-tab-content { display: inline-flex; align-items: center; gap: .5rem; white-space: nowrap; }
.account-tab-panel { display: grid; gap: 1rem; }
.account-identity {
    min-height: 104px;
    padding: 1.25rem;
    border-bottom: 1px solid var(--cc-line);
    background: var(--cc-surface);
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 1rem;
}
.account-avatar {
    width: 64px;
    height: 64px;
    overflow: hidden;
    background: var(--cc-accent-soft);
    color: var(--cc-green);
    display: grid;
    place-items: center;
}
.account-avatar img, .account-game-image img { width: 100%; height: 100%; object-fit: cover; }
.account-identity > span:nth-child(2) > small,
.account-identity > span:nth-child(2) > strong,
.account-identity > span:nth-child(2) > span { display: block; }
.account-identity > span:nth-child(2) > small,
.account-identity > span:nth-child(2) > span { color: var(--cc-muted); }
.account-identity > span:nth-child(2) > strong { margin: .15rem 0; font: 700 1.25rem "Space Grotesk", sans-serif; }
.account-stat-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    border: 1px solid var(--cc-line);
    background: var(--cc-surface);
}
.account-stat-grid > div { min-width: 0; padding: 1rem; border-left: 1px solid var(--cc-line); }
.account-stat-grid > div:first-child { border-left: 0; }
.account-stat-grid span, .account-stat-grid strong, .account-stat-grid small { display: block; }
.account-stat-grid span, .account-stat-grid small { color: var(--cc-muted); }
.account-stat-grid span { font-size: .76rem; font-weight: 700; text-transform: uppercase; }
.account-stat-grid strong { margin: .2rem 0; font: 700 1.75rem "Space Grotesk", sans-serif; }
.account-workspace-links { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .75rem; }
.account-workspace-links > a {
    min-width: 0;
    min-height: 92px;
    padding: 1rem;
    border: 1px solid var(--cc-line);
    color: var(--cc-ink);
    background: var(--cc-surface);
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: .75rem;
    text-decoration: none;
}
.account-workspace-links > a:hover { border-color: var(--cc-green); color: var(--cc-green); }
.account-workspace-links strong, .account-workspace-links small { display: block; }
.account-workspace-links small { margin-top: .25rem; color: var(--cc-muted); }
.linked-identity-list { display: grid; gap: .75rem; }
.linked-identity-list article {
    display: grid;
    grid-template-columns: 48px minmax(0, 1fr) auto;
    align-items: center;
    gap: 1rem;
    min-height: 80px;
    padding: .9rem 1rem;
    border: 1px solid var(--cc-line);
    border-radius: var(--cc-panel-radius);
    background: var(--cc-surface-muted);
}
.linked-identity-icon,
.account-session-icon {
    width: 48px;
    height: 48px;
    border: 1px solid var(--cc-line);
    border-radius: 50%;
    color: var(--cc-green);
    background: var(--cc-accent-soft);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 48px;
}
.linked-identity-icon .mud-icon-root,
.account-session-icon .mud-icon-root { font-size: 1.5rem; }
.linked-identity-copy { min-width: 0; }
.linked-identity-copy strong,
.linked-identity-copy small { display: block; }
.linked-identity-copy strong { font-size: .95rem; }
.linked-identity-copy small {
    margin-top: .2rem;
    color: var(--cc-muted);
    line-height: 1.35;
    overflow-wrap: anywhere;
}
.linked-identity-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: .5rem;
}
.account-link-actions { display: flex; flex-wrap: wrap; gap: .75rem; padding-top: 1rem; }
.account-location-grid { grid-template-columns: minmax(180px, 1fr) 100px 150px minmax(180px, .7fr); }
.account-game-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .75rem; }
.account-game-choice {
    min-width: 0;
    min-height: 76px;
    padding: .75rem;
    border: 1px solid var(--cc-line);
    background: var(--cc-surface);
    display: grid;
    grid-template-columns: 48px minmax(0, 1fr) 42px;
    align-items: center;
    gap: .75rem;
    cursor: pointer;
}
.account-game-choice.selected { border-color: var(--cc-accent-line); box-shadow: inset 3px 0 0 var(--cc-green); }
.account-game-image { width: 48px; height: 48px; overflow: hidden; background: var(--cc-accent-soft); color: var(--cc-green); display: grid; place-items: center; }
.account-past-events-setting { min-height: 56px; }
.account-profile-actions { justify-content: flex-start; }
.account-empty-state {
    min-height: 110px;
    padding: 1.25rem;
    border: 1px dashed var(--cc-line);
    color: var(--cc-muted);
    display: flex;
    align-items: center;
    justify-content: center;
    gap: .75rem;
}
.account-empty-state strong, .account-empty-state small { display: block; }
.account-empty-state small { margin-top: .2rem; }
.account-access-list, .account-activity-list { display: grid; gap: .6rem; }
.account-access-list article {
    min-width: 0;
    min-height: 82px;
    padding: .85rem 1rem;
    border: 1px solid var(--cc-line);
    background: var(--cc-surface);
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto 42px;
    align-items: center;
    gap: .85rem;
}
.account-access-icon, .account-activity-icon {
    width: 42px;
    height: 42px;
    background: var(--cc-accent-soft);
    color: var(--cc-green);
    display: grid;
    place-items: center;
}
.account-access-copy small, .account-access-copy strong, .account-access-copy span,
.account-access-status small { display: block; }
.account-access-copy small { color: var(--cc-red); font-weight: 700; text-transform: uppercase; }
.account-access-copy span, .account-access-status small { margin-top: .15rem; color: var(--cc-muted); font-size: .78rem; }
.account-access-status { text-align: right; }
.account-activity-list article {
    min-width: 0;
    min-height: 72px;
    padding: .75rem 1rem;
    border-bottom: 1px solid var(--cc-line);
    background: var(--cc-surface);
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: .85rem;
}
.account-activity-list strong, .account-activity-list small { display: block; }
.account-activity-list small, .account-activity-list time { color: var(--cc-muted); font-size: .78rem; }
.account-activity-list small { margin-top: .2rem; }
.account-security-row {
    min-height: 80px;
    margin-top: 1rem;
    padding: .9rem 1rem;
    border: 1px solid var(--cc-line);
    border-radius: var(--cc-panel-radius);
    background: var(--cc-surface-muted);
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
}
.account-session-summary { min-width: 0; display: flex; align-items: center; gap: 1rem; }
.account-security-row strong, .account-security-row small { display: block; }
.account-security-row small { margin-top: .2rem; color: var(--cc-muted); }
.account-danger-section { border-left-color: var(--cc-red); }
.account-deletion-toolbar { grid-template-columns: minmax(260px, 1fr) auto; }
.account-deletion-list { display: grid; gap: .75rem; }
.account-deletion-list article { padding: 1rem; border: 1px solid var(--cc-line); background: var(--cc-surface); }
.account-deletion-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 1rem; }
.account-deletion-heading small, .account-deletion-heading strong, .account-deletion-heading span { display: block; }
.account-deletion-heading small { color: var(--cc-red); font-weight: 700; text-transform: uppercase; }
.account-deletion-heading > span > span { color: var(--cc-muted); }
.account-deletion-list dl { display: grid; gap: .5rem; margin: 1rem 0 0; }
.account-deletion-list dl > div { display: grid; grid-template-columns: 180px minmax(0, 1fr); gap: 1rem; }
.account-deletion-list dt { color: var(--cc-muted); }
.account-deletion-list dd { margin: 0; overflow-wrap: anywhere; }

@media (max-width: 820px) {
    .account-location-grid { grid-template-columns: minmax(0, 1fr) minmax(100px, .45fr); }
    .account-location-grid > *:nth-child(n+3) { grid-column: auto; }
}

@media (max-width: 620px) {
    .account-identity { grid-template-columns: auto minmax(0, 1fr); }
    .account-identity > .mud-chip { grid-column: 1 / -1; justify-self: start; }
    .account-stat-grid, .account-workspace-links, .account-game-grid, .account-location-grid { grid-template-columns: 1fr; }
    .account-stat-grid > div { border-top: 1px solid var(--cc-line); border-left: 0; }
    .account-stat-grid > div:first-child { border-top: 0; }
    .account-access-list article { grid-template-columns: auto minmax(0, 1fr) 42px; }
    .account-access-status { grid-column: 2 / -1; text-align: left; }
    .account-activity-list article { grid-template-columns: auto minmax(0, 1fr); }
    .account-activity-list time { grid-column: 2; }
    .linked-identity-list article { grid-template-columns: 48px minmax(0, 1fr); align-items: start; }
    .linked-identity-actions { grid-column: 2; justify-content: flex-start; flex-wrap: wrap; }
    .account-security-row { align-items: stretch; flex-direction: column; }
    .account-security-row form { padding-left: 64px; }
    .account-security-row .mud-button-root { width: 100%; }
    .account-deletion-toolbar { grid-template-columns: 1fr; }
    .account-deletion-list dl > div { grid-template-columns: 1fr; gap: .15rem; }
}
.page-heading-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: .65rem; }
.recommendation-generator { width: min(var(--cc-page-max), calc(100% - var(--cc-page-gutters))); margin: 0 auto 1rem; padding: 1.25rem; display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: end; gap: 1.5rem; }
.recommendation-generator h2 { margin: .2rem 0 .3rem; }
.recommendation-generator p { margin: 0; color: var(--cc-muted); }
.recommendation-generator-controls { display: grid; grid-template-columns: 150px 180px auto; align-items: center; gap: .75rem; }
.recommendation-toolbar { justify-content: space-between; }
.toolbar-result-count { color: var(--cc-muted); font-size: .85rem; font-weight: 600; }
.recommendation-source-summary { border-left: 4px solid var(--cc-green); }
.recommendation-metrics { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin-top: 1rem; border-block: 1px solid var(--cc-line); }
.recommendation-metrics > div { min-width: 0; padding: 1rem; border-left: 1px solid var(--cc-line); }
.recommendation-metrics > div:first-child { border-left: 0; }
.recommendation-metrics strong, .recommendation-metrics span { display: block; overflow-wrap: anywhere; }
.recommendation-metrics strong { font: 700 1.35rem "Space Grotesk", sans-serif; }
.recommendation-metrics span { margin-top: .2rem; color: var(--cc-muted); font-size: .75rem; }
.recommendation-organizer-list { border-top: 1px solid var(--cc-line); }
.recommendation-organizer-list > div { display: grid; grid-template-columns: auto minmax(220px, 1fr) minmax(180px, .7fr); align-items: center; gap: .75rem; min-height: 64px; padding: .75rem 0; border-bottom: 1px solid var(--cc-line); }
.recommendation-organizer-list > div > span { min-width: 0; }
.recommendation-organizer-list strong, .recommendation-organizer-list small { display: block; overflow-wrap: anywhere; }
.recommendation-organizer-list small { margin-top: .15rem; color: var(--cc-muted); }
.recommendation-games { color: var(--cc-muted); font-size: .82rem; text-align: right; overflow-wrap: anywhere; }
.recommendation-review-actions { flex-wrap: wrap; }
.recommendation-readonly { display: grid; gap: 1rem; }
.record-origin-note { display: inline-flex; align-items: center; gap: .45rem; margin-top: 1rem; color: var(--cc-muted); font-size: .85rem; }
.organizer-merge-page { width: min(var(--cc-page-max), calc(100% - var(--cc-page-gutters))); margin-inline: auto; padding-bottom: 4rem; }
.merge-builder-grid { display: grid; grid-template-columns: minmax(0, 1.7fr) minmax(300px, .7fr); gap: 1rem; align-items: start; }
.merge-search-pane, .merge-group-panel, .merge-review { min-width: 0; padding: 1.25rem; }
.merge-search-controls { display: grid; grid-template-columns: minmax(240px, 1fr) auto; gap: .75rem; align-items: center; margin-bottom: 1rem; }
.compact-loading { min-height: 180px; }
.merge-check-cell { width: 54px; }
.merge-organizer-name { display: flex; align-items: center; gap: .65rem; min-width: 0; }
.merge-organizer-name img { width: 38px; height: 38px; flex: 0 0 auto; border-radius: 4px; object-fit: cover; }
.merge-organizer-name span { min-width: 0; }
.merge-group-panel { position: sticky; top: 1rem; }
.merge-group-panel h2 { margin: .15rem 0 0; font-size: 1.25rem; }
.merge-selection-list { margin: 1rem 0; border-top: 1px solid var(--cc-line); }
.merge-selection-list > div { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: .5rem; padding: .7rem 0; border-bottom: 1px solid var(--cc-line); }
.merge-selection-list span, .merge-member-list span { min-width: 0; }
.merge-selection-list strong, .merge-selection-list small { display: block; overflow-wrap: anywhere; }
.merge-selection-list small, .merge-member-list small { margin-top: .15rem; color: var(--cc-muted); }
.merge-v1-note { margin: 1rem 0; }
.merge-review { display: grid; gap: 1.25rem; }
.merge-target-list .mud-radio-group-options { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .65rem; }
.merge-target-list .mud-radio { width: 100%; min-width: 0; margin: 0; padding: .8rem; border: 1px solid var(--cc-line); border-radius: var(--cc-panel-radius); align-items: flex-start; }
.merge-target-list .mud-radio-content { min-width: 0; }
.merge-target-list strong, .merge-target-list span { display: block; overflow-wrap: anywhere; }
.merge-target-list span { margin-top: .2rem; color: var(--cc-muted); font-size: .78rem; }
.merge-conflicts { display: grid; gap: .5rem; }
.merge-impact-grid { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); border-block: 1px solid var(--cc-line); }
.merge-impact-grid > div { min-width: 0; padding: 1rem; border-left: 1px solid var(--cc-line); }
.merge-impact-grid > div:first-child { border-left: 0; }
.merge-impact-grid strong, .merge-impact-grid span { display: block; }
.merge-impact-grid strong { font: 700 1.5rem "Space Grotesk", sans-serif; }
.merge-impact-grid span { margin-top: .2rem; color: var(--cc-muted); font-size: .75rem; }
.merge-result-record { border-top: 4px solid var(--cc-warning); }
.merge-members { padding-top: .5rem; }
.merge-member-list { border-top: 1px solid var(--cc-line); }
.merge-member-list > div { display: grid; grid-template-columns: minmax(0, 1fr) minmax(160px, .7fr); gap: 1rem; padding: .8rem 0; border-bottom: 1px solid var(--cc-line); }
.merge-member-list strong, .merge-member-list small { display: block; overflow-wrap: anywhere; }
.merge-final-actions { padding-top: .5rem; border-top: 1px solid var(--cc-line); }
.discrepancy-list { display: grid; gap: 1rem; margin-top: 1rem; }
.discrepancy-list > article { padding: 1rem; border: 1px solid var(--cc-line); border-radius: 8px; background: var(--cc-surface); }
.discrepancy-explainer { margin-top: 1rem; }
.discrepancy-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 1rem; margin-bottom: .75rem; }
.discrepancy-heading h3 { margin: .2rem 0 0; }
.discrepancy-context { display: flex; flex-wrap: wrap; gap: .75rem 1.5rem; padding: .75rem 0; border-block: 1px solid var(--cc-line); }
.discrepancy-context div { min-width: 130px; }
.discrepancy-context span, .discrepancy-context strong { display: block; overflow-wrap: anywhere; }
.discrepancy-context span { margin-bottom: .15rem; color: var(--cc-muted); font-size: .72rem; text-transform: uppercase; }
.discrepancy-summary { margin: 1rem 0; color: var(--cc-muted); }
.discrepancy-comparison { border: 1px solid var(--cc-line); border-radius: var(--cc-panel-radius); overflow: hidden; }
.discrepancy-comparison-header, .discrepancy-comparison-row { display: grid; grid-template-columns: minmax(120px, .6fr) minmax(180px, 1fr) minmax(180px, 1fr) 110px; }
.discrepancy-comparison-header { background: var(--cc-surface-muted); color: var(--cc-ink); font-size: .72rem; font-weight: 700; text-transform: uppercase; }
.discrepancy-comparison-header span, .discrepancy-comparison-row > * { min-width: 0; padding: .7rem .8rem; overflow-wrap: anywhere; }
.discrepancy-comparison-row { border-top: 1px solid var(--cc-line); background: var(--cc-surface); }
.discrepancy-comparison-row.changed { background: var(--cc-warning-soft); box-shadow: inset 3px 0 var(--cc-warning); }
.discrepancy-field { color: var(--cc-ink); }
.discrepancy-value { color: var(--cc-ink); }
.discrepancy-status { display: inline-flex; align-items: center; gap: .3rem; color: var(--cc-muted); font-size: .78rem; white-space: nowrap; }
.discrepancy-comparison-row.changed .discrepancy-status { color: var(--cc-warning); font-weight: 700; }
.discrepancy-source-link { display: inline-flex; align-items: center; gap: .3rem; margin-top: .8rem; }
@media (max-width: 700px) {
    .discrepancy-list > article { min-width: 0; }
    .discrepancy-heading { align-items: flex-start; flex-direction: column; }
    .discrepancy-context div { min-width: 0; flex: 1 1 140px; }
    .discrepancy-comparison-header { display: none; }
    .discrepancy-comparison-row { grid-template-columns: minmax(0, 1fr); padding: .8rem; }
    .discrepancy-comparison-row > * { min-width: 0; padding: .25rem 0; }
    .discrepancy-value::before { display: block; margin-bottom: .1rem; content: attr(data-label); color: var(--cc-muted); font-size: .68rem; font-weight: 700; text-transform: uppercase; }
    .discrepancy-status { padding-top: .45rem; }
}
.mapping-tester { margin-top: 1.25rem; padding-top: 1.25rem; border-top: 1px solid var(--cc-line); }
.tester-results { display: flex; flex-wrap: wrap; gap: .5rem; margin-top: .75rem; }
.source-test-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 1rem; }
.source-test-result { display: inline-flex; align-items: center; gap: .35rem; font-size: .85rem; font-weight: 600; }
.source-test-result.success { color: var(--cc-success); }
.source-test-result.failure { color: var(--cc-danger); }
.global-status-banner { display: flex; align-items: flex-start; justify-content: center; gap: .5rem; min-height: 44px; padding: .65rem max(1rem, calc((100vw - 1240px) / 2)); font-weight: 600; }
.global-status-banner > .mud-icon-root { flex: 0 0 auto; margin-top: .05rem; }
.global-status-copy { display: flex; flex-direction: column; gap: .1rem; min-width: 0; }
.global-status-note { font-size: .82rem; font-weight: 500; }
.global-status-banner.admin-status { background: var(--cc-warning-soft); color: var(--cc-warning); }
.global-status-banner.public-status { background: var(--cc-accent-soft); color: var(--cc-green); }
.status-carousel { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: .5rem .75rem; padding: .35rem 1rem; }
.status-carousel-messages { display: grid; min-width: 0; }
.status-carousel-message { grid-area: 1 / 1; align-self: center; visibility: hidden; overflow-wrap: anywhere; font-size: .875rem; line-height: 1.5; padding-block: .35rem; }
.status-carousel-message.is-current { visibility: visible; }
.status-carousel-controls { display: flex; align-items: center; gap: .125rem; }
.status-carousel-controls button { display: grid; place-items: center; min-width: 44px; min-height: 44px; border: 1px solid transparent; border-radius: 6px; color: inherit; background: transparent; cursor: pointer; }
.status-carousel-controls button:hover { background: var(--cc-surface); border-color: currentColor; }
.status-carousel-controls button:focus-visible { outline: 2px solid currentColor; outline-offset: -3px; }
.status-carousel-count { min-width: 2.6rem; text-align: center; font-size: .8rem; font-variant-numeric: tabular-nums; white-space: nowrap; }
@media (max-width: 600px) {
    .status-carousel { grid-template-columns: auto minmax(0, 1fr); gap: .15rem .5rem; padding: .5rem .75rem .25rem; }
    .status-carousel-controls { grid-column: 2; justify-self: end; }
}

@media (max-width: 1320px) {
    .merge-builder-grid { grid-template-columns: 1fr; }
    .merge-group-panel { position: static; }
    .recommendation-generator { grid-template-columns: 1fr; align-items: stretch; }
    .recommendation-generator-controls { grid-template-columns: minmax(130px, .7fr) minmax(160px, .8fr) auto; }
}

@media (max-width: 980px) {
    .merge-impact-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .merge-impact-grid > div:nth-child(4) { border-left: 0; }
}

@media (max-width: 700px) {
    .merge-search-controls, .merge-target-list .mud-radio-group-options, .merge-impact-grid, .merge-member-list > div { grid-template-columns: 1fr; }
    .merge-impact-grid > div { border-left: 0; border-top: 1px solid var(--cc-line); }
    .merge-impact-grid > div:first-child { border-top: 0; }
    .page-heading-actions, .page-heading-actions .mud-button-root { width: 100%; }
    .recommendation-generator-controls, .recommendation-metrics, .recommendation-organizer-list > div { grid-template-columns: 1fr; }
    .recommendation-metrics > div { border-left: 0; border-top: 1px solid var(--cc-line); }
    .recommendation-metrics > div:first-child { border-top: 0; }
    .recommendation-games { text-align: left; }
    .organizer-choice-group-heading { align-items: flex-start; flex-direction: column; gap: .2rem; }
    .organizer-choice-group-heading span { text-align: left; }
}
.operations-summary { display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: center; gap: 2rem; margin-bottom: 1.5rem; }
.run-chart { display: grid; place-items: center; width: 160px; height: 160px; border-radius: 50%; }
.run-chart > span { display: flex; flex-direction: column; align-items: center; justify-content: center; width: 112px; height: 112px; border-radius: 50%; background: var(--cc-surface); }
.run-chart strong { font: 700 1.6rem "Space Grotesk", sans-serif; }
.run-chart small { color: var(--cc-muted); }
.manual-run-list { display: grid; }
.manual-job { padding: 1.25rem 0; border-top: 1px solid var(--cc-line); }
.manual-job:first-child { padding-top: 0; border-top: 0; }
.manual-job:last-child { padding-bottom: 0; }
.manual-job-heading { margin-bottom: .85rem; }
.manual-job-heading h3 { margin: 0; font-size: 1rem; }
.manual-job-heading p { margin: .25rem 0 0; color: var(--cc-muted); font-size: .85rem; }
.manual-job-controls { display: grid; align-items: end; gap: 1rem; }
.organizer-job-controls { grid-template-columns: minmax(210px, 1.25fr) minmax(150px, .65fr) minmax(180px, .8fr) max-content; }
.event-job-controls { grid-template-columns: minmax(260px, 1fr) max-content; max-width: 720px; }
.manual-field { display: grid; align-content: end; min-width: 0; }
.manual-field > label, .manual-field-label { min-height: 30px; }
.manual-field > label, .manual-field-label label { display: inline-flex; align-items: center; color: var(--cc-ink); font-size: .82rem; font-weight: 700; }
.manual-field-label { position: relative; display: flex; align-items: center; gap: .1rem; }
.field-help-button { width: 30px; height: 30px; color: var(--cc-muted); }
.manual-field-help { position: absolute; top: calc(100% + .25rem); left: 0; z-index: 20; width: min(320px, calc(100vw - 3rem)); padding: .7rem .8rem; border: 1px solid var(--cc-line); border-radius: var(--cc-panel-radius); background: var(--cc-surface); box-shadow: 0 8px 24px rgba(14, 43, 35, .16); color: var(--cc-ink); font-size: .8rem; font-weight: 500; line-height: 1.4; }
.mode-field-label .manual-field-help { right: 0; left: auto; }
.manual-run-button { min-height: 56px; white-space: nowrap; }
.status-warning { background: var(--cc-warning-soft); color: var(--cc-warning); }
.status-running { background: var(--cc-info-soft); color: var(--cc-info); }
.job-run-detail-page { width: min(var(--cc-page-max), calc(100% - var(--cc-page-gutters))); margin-inline: auto; padding-bottom: 4rem; }
.job-run-detail-page > .page-heading, .job-run-detail-page > .admin-section { width: 100%; margin-inline: 0; }
.job-run-detail-heading { padding-bottom: 1.5rem; border-bottom: 1px solid var(--cc-line); }
.job-run-title-row { display: flex; align-items: center; justify-content: space-between; gap: 1rem; }
.job-run-title-row h1 { min-width: 0; }
.job-run-title-row .status-pill { flex: 0 0 auto; min-height: 28px; padding-inline: .7rem; }
.job-run-context { margin: 1.5rem 0 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1rem; }
.job-run-context div { min-width: 0; padding-left: .75rem; border-left: 3px solid var(--cc-line); }
.job-run-context dt { color: var(--cc-muted); font-size: .72rem; font-weight: 700; text-transform: uppercase; }
.job-run-context dd { margin: .2rem 0 0; overflow-wrap: anywhere; font-weight: 600; }
.run-detail-stats { display: grid; grid-template-columns: repeat(auto-fit, minmax(125px, 1fr)); gap: .65rem; padding-top: 1.5rem; }
.run-detail-stats > div { display: flex; flex-direction: column; padding: .85rem; border: 1px solid var(--cc-line); border-radius: 8px; background: var(--cc-surface); }
.run-detail-stats span { color: var(--cc-muted); font-size: .8rem; }
.run-detail-stats strong { font: 700 1.35rem "Space Grotesk", sans-serif; }
.run-detail-stats .run-stat-warning { border-top: 3px solid var(--cc-warning); }
.run-detail-stats .run-stat-error { border-top: 3px solid var(--cc-red); }
.job-run-messages { padding-block: 2.25rem 0; }
.job-message-toolbar { display: grid; grid-template-columns: minmax(170px, .35fr) minmax(260px, 1fr) 48px; align-items: center; gap: .75rem; margin: 1rem 0; }
.job-message-search-button { width: 48px; height: 48px; border: 1px solid var(--cc-line); border-radius: var(--cc-panel-radius); }
.job-message-scope-filter { display: flex; align-items: center; flex-wrap: wrap; gap: .45rem; margin-bottom: 1rem; padding: .65rem .8rem; border-left: 3px solid var(--cc-green); background: var(--cc-accent-soft); color: var(--cc-ink); }
.job-message-list { display: grid; gap: .65rem; }
.job-message { display: grid; grid-template-columns: 26px minmax(0, 1fr); gap: .75rem; padding: 1rem; border: 1px solid var(--cc-line); border-left-width: 4px; border-radius: var(--cc-panel-radius); background: var(--cc-surface); }
.job-message.warning { border-left-color: var(--cc-warning); }
.job-message.error { border-left-color: var(--cc-red); }
.job-message.info { border-left-color: var(--cc-green); }
.job-message.info > .mud-icon-root { color: var(--cc-green); }
.job-message.warning > .mud-icon-root { color: var(--cc-warning); }
.job-message.error > .mud-icon-root { color: var(--cc-red); }
.job-message-body { min-width: 0; }
.job-message-heading { display: flex; align-items: baseline; flex-wrap: wrap; gap: .35rem .75rem; }
.job-message-heading > span { color: var(--cc-ink); font-size: .82rem; font-weight: 600; }
.job-message-heading time { margin-left: auto; color: var(--cc-muted); font-size: .78rem; }
.job-message p { margin: .45rem 0; overflow-wrap: anywhere; color: var(--cc-ink); line-height: 1.5; }
.job-message-metadata { display: flex; align-items: center; flex-wrap: wrap; gap: .5rem; color: var(--cc-muted); font-size: .75rem; }
.job-message-metadata code { padding: .15rem .35rem; border-radius: 3px; background: var(--cc-surface-muted); color: var(--cc-ink); }
.job-run-partitions { padding-block: 2.25rem 0; }
.partition-message-count { min-width: 54px; font-variant-numeric: tabular-nums; }
.metric-server { display: flex; align-items: center; gap: .5rem; }
.metric-server img { width: 32px; height: 32px; border-radius: 4px; object-fit: cover; }
.legal-page { width: min(900px, calc(100% - 2rem)); margin-inline: auto; padding-bottom: 4rem; }
.legal-heading { width: 100%; margin-inline: 0; }
.legal-heading .eyebrow { color: var(--cc-green); font-size: .75rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.legal-draft-alert { margin-bottom: 1.25rem; }
.legal-surface { padding: clamp(1.25rem, 3vw, 2.5rem); border: 1px solid var(--cc-line); border-radius: 10px; background: var(--cc-surface); box-shadow: 0 8px 24px rgba(16, 37, 31, .05); }
.legal-surface h2 { margin: 2rem 0 .6rem; font-size: 1.15rem; }
.legal-surface h2:first-of-type { margin-top: 1.5rem; }
.legal-surface p, .legal-surface li { color: var(--cc-ink); line-height: 1.7; }
.legal-surface li + li { margin-top: .35rem; }
.site-footer nav { display: inline-flex; gap: .8rem; }
.site-footer nav a { color: inherit; }
.legal-acceptance-surface { display: grid; gap: 1rem; }
.legal-acceptance-actions { display: flex; align-items: center; gap: .75rem; margin-top: .5rem; }
.analytics-period-select { width: 190px; }
.organizer-analytics-page { display: grid; width: min(var(--cc-page-max), calc(100% - var(--cc-page-gutters))); margin-inline: auto; padding-bottom: 4rem; gap: 1.25rem; }
.analytics-metric-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: .85rem; }
.analytics-metric-card { position: relative; display: flex; min-width: 0; flex-direction: column; padding: 1.15rem; border-radius: 8px; }
.analytics-metric-card.primary { border-top: 3px solid var(--cc-green); }
.analytics-metric-card > strong { font: 700 1.8rem "Space Grotesk", sans-serif; }
.analytics-metric-card > span:not(.analytics-metric-icon) { font-weight: 700; }
.analytics-metric-card small { margin-top: .3rem; color: var(--cc-muted); line-height: 1.35; }
.analytics-metric-icon { position: absolute; top: 1rem; right: 1rem; color: var(--cc-green); opacity: .75; }
.analytics-content-grid { display: grid; grid-template-columns: minmax(0, 2fr) minmax(250px, 1fr); gap: 1rem; }
.analytics-panel { margin: 0; }
.analytics-bar-chart { display: flex; align-items: end; gap: min(1.1rem, 2vw); height: 230px; padding: 1.5rem .5rem 0; overflow-x: auto; border-bottom: 1px solid var(--cc-line); }
.analytics-bar-column { display: grid; grid-template-rows: auto minmax(0, 1fr) auto; align-items: end; flex: 1 0 34px; max-width: 70px; height: 100%; text-align: center; }
.analytics-bar { display: block; width: min(28px, 80%); min-height: 8px; margin-inline: auto; border-radius: 4px 4px 0 0; background: var(--cc-green); }
.analytics-bar-value { color: var(--cc-ink); font-size: .72rem; font-weight: 700; }
.analytics-bar-column time { padding-block: .4rem; color: var(--cc-muted); font-size: .68rem; white-space: nowrap; }
.analytics-empty-chart { display: flex; min-height: 180px; align-items: center; justify-content: center; gap: .75rem; padding: 2rem; color: var(--cc-muted); text-align: center; }
.analytics-empty-chart .mud-icon-root { color: var(--cc-green); font-size: 2rem; }
.delivery-health-panel { display: flex; flex-direction: column; }
.delivery-health-score { display: grid; place-items: center; flex: 1; min-height: 130px; }
.delivery-health-score strong { color: var(--cc-green); font: 700 2.4rem "Space Grotesk", sans-serif; }
.delivery-health-score span { color: var(--cc-muted); font-size: .8rem; }
.analytics-breakdown { display: grid; grid-template-columns: 1fr 1fr; margin: 0; border-top: 1px solid var(--cc-line); }
.analytics-breakdown div { padding: .8rem; }
.analytics-breakdown div + div { border-left: 1px solid var(--cc-line); }
.analytics-breakdown dt { color: var(--cc-muted); font-size: .72rem; }
.analytics-breakdown dd { margin: .15rem 0 0; font-weight: 700; }
.analytics-public-servers { margin: 0; }
.analytics-server-list { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: .65rem; }
.analytics-server-list a { display: grid; grid-template-columns: 38px minmax(0, 1fr) 24px; align-items: center; gap: .65rem; padding: .7rem; border: 1px solid var(--cc-line); border-radius: var(--cc-panel-radius); color: inherit; text-decoration: none; }
.analytics-server-list a:hover { border-color: var(--cc-green); background: var(--cc-accent-soft); }
.analytics-server-list img, .analytics-server-fallback { width: 38px; height: 38px; border-radius: 5px; object-fit: cover; }
.analytics-server-fallback { display: grid; place-items: center; background: var(--cc-accent-soft); color: var(--cc-green); }
.analytics-definition-note { margin-bottom: 2rem; }
@media (max-width: 760px) {
    .operations-summary { grid-template-columns: 1fr; justify-items: center; }
    .operations-summary .server-stat-grid { width: 100%; }
    .manual-job-controls { grid-template-columns: 1fr; max-width: none; }
    .job-run-title-row { align-items: flex-start; flex-direction: column; }
    .job-run-context { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .run-detail-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .job-message-toolbar { grid-template-columns: minmax(0, 1fr) 48px; }
    .job-message-toolbar > .mud-select { grid-column: 1 / -1; }
    .job-message-heading time { width: 100%; margin-left: 0; }
    .manual-run-button { width: 100%; }
    .analytics-period-select { width: 100%; }
    .analytics-metric-grid, .analytics-content-grid { grid-template-columns: 1fr; }
    .legal-acceptance-actions { align-items: stretch; flex-direction: column; }
}

@media (min-width: 761px) and (max-width: 1040px) {
    .run-detail-stats { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .organizer-job-controls { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .organizer-job-controls .manual-run-button { width: 100%; }
    .analytics-metric-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* Page widths are relative to the main content area, after the navigation drawer. */
@media (min-width: 1440px) {
    :root {
        --cc-page-max: 1400px;
        --cc-compact-page-max: 1400px;
        --cc-event-page-max: 1400px;
        --cc-page-gutters: 3rem;
        --cc-event-page-gutters: 3rem;
    }
}
@media (min-width: 1920px) {
    :root {
        --cc-page-max: 1680px;
        --cc-compact-page-max: 1680px;
        --cc-event-page-max: 1680px;
        --cc-page-gutters: 4rem;
        --cc-event-page-gutters: 4rem;
    }
    .event-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
/* Keep prose readable while editing surfaces follow the shared page width. */
@media (min-width: 1440px) {
    .section-intro, .form-section-heading p { max-width: 75ch; }
}

.server-detail-page nav.settings-actions { align-items: center; flex-wrap: wrap; gap: .75rem; }
.server-detail-page nav.settings-actions > span { white-space: nowrap; }
.server-detail-page nav.settings-actions .mud-button-root { width: auto; }

/* Crawlable discovery navigation: bounded page links with mobile-sized targets. */
.discovery-pagination { display: flex; align-items: center; flex-wrap: wrap; gap: .35rem; max-width: 100%; }
.discovery-pagination a { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; padding: .4rem .7rem; border: 1px solid var(--cc-line); border-radius: .5rem; color: var(--cc-green); text-decoration: none; }
.discovery-pagination a[aria-current="page"] { background: var(--cc-green); color: var(--cc-primary-contrast); font-weight: 700; }
.discovery-pagination a:hover { border-color: var(--cc-green); }
.discovery-pagination a:focus-visible { outline: 3px solid var(--cc-red); outline-offset: 2px; }
.pagination-gap { padding-inline: .25rem; color: var(--cc-muted); }
.event-card-image { height: auto; }
.event-overview h1, .catalog-card h2, .event-card h3 { overflow-wrap: anywhere; }

/* Retain a semantic heading without adding a duplicate visual results label. */
.visually-hidden { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }

/* Public game discovery and contextual links. */
.breadcrumb-trail { margin: 0 0 1rem; color: var(--cc-muted); font-size: .85rem; }
.breadcrumb-trail ol { display: flex; flex-wrap: wrap; align-items: center; gap: .4rem .65rem; list-style: none; padding: 0; margin: 0; }
.breadcrumb-trail li { display: inline-flex; align-items: center; gap: .65rem; min-width: 0; overflow-wrap: anywhere; }
.breadcrumb-trail li + li::before { content: "/"; color: var(--cc-muted); }
.breadcrumb-trail a { display: inline-block; padding-block: .5rem; }
.breadcrumb-trail a, .game-directory a, .game-visit-guide a, .event-host a, .event-organizer a { color: var(--cc-green); }
.event-card h3 a { color: inherit; text-decoration: none; }
.event-card h3 a:hover, .event-card h3 a:focus-visible { text-decoration: underline; }
a.game-tag { text-decoration: none; }
a.game-tag:hover, a.game-tag:focus-visible { text-decoration: underline; }
.game-directory { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 320px), 1fr)); gap: 1.5rem; margin-bottom: 2rem; }
.game-directory-card { display: flex; flex-direction: column; align-items: flex-start; padding: 2rem; border-radius: 18px; }
.game-card-icon { display: inline-flex; padding: .75rem; background: var(--cc-accent-soft); color: var(--cc-green); border-radius: 12px; margin-bottom: 1rem; }
.game-artwork { width: 100%; aspect-ratio: 2 / 1; box-sizing: border-box; padding: clamp(.75rem, 2vw, 1.25rem); background: var(--cc-artwork-background); border-radius: 12px; overflow: hidden; }
.game-artwork img { display: block; width: 100%; height: 100%; object-fit: contain; }
.organizer-game-visual:has(img), .account-game-image:has(img), .game-choice img { background: var(--cc-artwork-background); }
.organizer-game-visual img, .account-game-image img, .game-choice img { object-fit: contain; padding: 3px; box-sizing: border-box; }
.game-directory-card > .game-artwork { margin-bottom: 1.5rem; }
.game-detail-copy { min-width: 0; }
.game-detail-hero.has-artwork { display: grid; grid-template-columns: minmax(0, 1fr); gap: 1.5rem; }
.game-detail-hero > .game-artwork { max-width: 420px; justify-self: center; }
@media (min-width: 960px) {
    .game-detail-hero.has-artwork { grid-template-columns: minmax(0, 1fr) minmax(280px, 36%); align-items: center; gap: 2rem; }
    .game-detail-hero > .game-artwork { grid-column: 2; grid-row: 1; }
    .game-detail-hero.has-artwork > .game-detail-copy { grid-column: 1; grid-row: 1; }
}
.game-directory-card h2 { font-size: 1.45rem; margin: 0 0 .75rem; }
.game-directory-card h2 a { text-decoration: none; }
.game-directory-card p { color: var(--cc-muted); line-height: 1.7; margin-bottom: 1.5rem; }
.game-explore { margin-top: auto; padding-block: .5rem; font-weight: 700; }
.game-detail-hero { background: var(--cc-accent-soft); border: 1px solid var(--cc-line); border-radius: 20px; padding: clamp(1.5rem, 3vw, 2rem); }
.game-eyebrow { color: var(--cc-green); font-weight: 700; text-transform: uppercase; letter-spacing: .1em; font-size: .75rem; }
.game-detail-hero h1 { font-size: clamp(1.8rem, 4vw, 2.8rem); line-height: 1.15; margin: .75rem 0 1rem; max-width: 850px; overflow-wrap: anywhere; }
.game-detail-hero p { max-width: 750px; line-height: 1.7; margin-bottom: 1.5rem; }
.game-visit-guide { border-top: 1px solid var(--cc-line); padding-block: 2rem; max-width: 850px; line-height: 1.8; }
.game-visit-guide h2 { font-size: 1.5rem; margin-bottom: .75rem; }
.game-visit-guide h3 { font-size: 1.1rem; margin-top: 1.5rem; }
.event-status-notice { margin-block: 1.5rem; padding: 1rem; border-left: 4px solid var(--cc-red); background: var(--cc-warning-soft); }
.event-status-notice p { margin: .35rem 0 0; }
.game-visit-guide p { margin-block: 1rem; }

.game-detail-hero .mud-button-outlined { color: var(--cc-green); border-color: var(--cc-green); }

.game-directory, .game-directory + .discovery-pagination, .game-detail-hero, .app-content > .breadcrumb-trail { width: min(var(--cc-page-max), calc(100% - var(--cc-page-gutters))); margin-inline: auto; }
.game-directory + .discovery-pagination { margin-bottom: 2rem; }
.game-visit-guide { width: min(var(--cc-page-max), calc(100% - var(--cc-page-gutters))); max-width: var(--cc-page-max); margin-inline: auto; }
.game-visit-guide p { max-width: 75ch; }

/* Game details use compact sections rather than the home page's large content bands. */
.game-detail-hero ~ .content-band { padding-block: 2rem; }
.game-detail-hero ~ .content-band + .content-band { padding-top: 0; }
.game-detail-hero ~ .content-band .discovery-pagination { margin-top: 1.5rem; }
.game-detail-hero ~ .content-band .section-heading h2 { font-size: clamp(1.5rem, 3vw, 2rem); }
.game-detail-hero ~ .content-band .section-heading > div { min-width: 0; }
.game-detail-hero ~ .content-band .section-heading > a { color: var(--cc-green); }
#game-organizers { scroll-margin-top: 5rem; }
#game-organizers .organizer-strip a { grid-template-columns: 44px minmax(0, 1fr); }
#game-organizers .organizer-strip strong, #game-organizers .organizer-strip small { overflow-wrap: anywhere; }
/* The workspace navigation already provides a way back; keep admin headings compact. */
.app-content:has(.admin-workspace-navigation) .page-heading { padding-top: 1.25rem; }
.app-content:has(.admin-workspace-navigation) .page-heading .back-link[href='/admin'] { display: none; }
.admin-delivery-dialog { height: calc(100dvh - 3rem); max-height: calc(100dvh - 3rem); margin-right: 1rem; }
.admin-delivery-dialog .mud-dialog-content { overflow-y: auto; }
@media (max-width: 600px) {
    .admin-delivery-dialog { width: 100vw; height: 100dvh; max-width: 100vw; max-height: 100dvh; margin: 0; border-radius: 0; }
    .mud-dialog-container:has(> .admin-delivery-dialog) { padding: 0; }
}

/* Catalog behavior controls share spacing across source and connection editors. */
.source-controls, .source-control-groups { display: grid; gap: 1rem; }
.source-controls { margin-block: 1rem; }
.source-control-summary, .source-control-group { padding: 1rem; border: 1px solid var(--cc-line); border-radius: var(--cc-panel-radius); }
.source-control-summary dl { display: grid; gap: .65rem; margin: .75rem 0 0; }
.source-control-summary dl > div { display: grid; grid-template-columns: 7rem minmax(0, 1fr); gap: .75rem; }
.source-control-summary dt { font-weight: 600; }
.source-control-summary dd { margin: 0; overflow-wrap: anywhere; }
.source-control-summary p { margin-block: .75rem 0; line-height: 1.6; }
.source-control-group { display: grid; gap: 1rem; }
.source-control-group h4 { margin: 0; font-size: 1rem; }
.control-customization > summary, .control-context > summary, .profile-authority-details > summary { cursor: pointer; padding: .65rem 0; font-weight: 600; }
.control-customization > summary:focus-visible, .control-context > summary:focus-visible, .profile-authority-details > summary:focus-visible { outline: 2px solid var(--cc-green); outline-offset: 3px; }
.control-context ul { margin: .5rem 0; padding-left: 1.25rem; line-height: 1.6; }
.control-context li + li { margin-top: .5rem; }
.profile-authority-details { margin-top: .35rem; color: var(--cc-muted); font-size: .82rem; }
.source-order-actions { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem; margin-bottom: 1rem; }
.source-order-actions > span { margin-right: auto; }
@media (max-width: 600px) {
    .source-control-summary dl > div { grid-template-columns: 1fr; gap: .15rem; }
    .source-control-summary, .source-control-group { padding: .85rem; }
}

/* Event discovery: everyday search first, optional tools grouped beneath it. */
.event-search-panel { display: block; }
.event-search-primary { display: grid; grid-template-columns: 1.4fr 1.1fr 1fr auto; gap: .85rem; align-items: center; }
.event-search-primary > *, .event-search-filter-grid > * { min-width: 0; }
.event-search-primary .search-button { min-height: 48px; }
.event-search-shortcuts { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: .75rem; margin-top: 1rem; }
.event-quick-dates, .save-discovery-actions, .saved-page-actions { display: flex; flex-wrap: wrap; align-items: center; gap: .65rem; }
.advanced-search-actions { display: flex; flex-wrap: wrap; gap: .75rem; margin-top: 1rem; }
.active-filter-count, .saved-count { margin-left: .5rem; padding: .15rem .45rem; border-radius: var(--cc-panel-radius); background: var(--cc-surface-muted); font-size: .75rem; font-weight: 600; color: var(--cc-muted); }
.event-search-advanced { margin-top: 1rem; padding-top: 1rem; border-top: 1px solid var(--cc-line); }
.event-search-advanced[hidden] { display: none; }
.event-search-filter-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); align-items: start; gap: 1rem; }
.event-search-filter-grid .location-controls { grid-column: span 2; }
.search-help { margin: .7rem 0 0; color: var(--cc-muted); font-size: .8rem; line-height: 1.5; }
.selected-date-range { font-weight: 600; }
.search-preferences { display: flex; flex-wrap: wrap; align-items: center; gap: .35rem .65rem; margin-top: 1rem; color: var(--cc-muted); font-size: .8rem; }
.event-search-tools { width: min(var(--cc-page-max), calc(100% - var(--cc-page-gutters))); margin-inline: auto; }
.event-search-tools { display: flex; align-items: flex-start; justify-content: space-between; flex-wrap: wrap; gap: .75rem 1.5rem; padding: 1rem 0 .25rem; }
.event-search-tools .save-discovery { flex: 1; min-width: min(100%, 280px); }
.missing-event-link { padding-block: .45rem; font-size: .875rem; }
.save-discovery { min-width: 0; }
.save-discovery-actions > a { font-size: .875rem; }
.save-discovery-panel { display: grid; gap: .85rem; max-width: 640px; margin-top: .7rem; padding: 1rem; border: 1px solid var(--cc-line); border-radius: var(--cc-panel-radius); background: var(--cc-surface); }
.save-discovery-panel > p { margin: 0; font-size: .875rem; color: var(--cc-muted); }
.save-discovery-status { margin: .6rem 0 0; font-size: .875rem; }
.catalog-picker summary { cursor: pointer; }
.catalog-picker { min-width: 0; padding: .9rem; border: 1px solid var(--cc-line); border-radius: var(--cc-panel-radius); background: var(--cc-surface); font-size: .875rem; }
.catalog-picker[open] > summary { margin-bottom: .75rem; }
.catalog-picker > [role=group] { display: flex; flex-direction: column; align-items: stretch; max-height: 280px; overflow-y: auto; margin-top: .5rem; }
.catalog-picker .pagination-row { width: 100%; margin: .5rem 0 0; padding: 0; gap: .25rem; flex-wrap: wrap; font-size: .75rem; }
.catalog-picker summary:focus-visible { outline: 2px solid var(--cc-green); outline-offset: 4px; }
.saved-discovery-page { display: grid; width: 100%; gap: 1.25rem; }
.saved-page-actions > :last-child { margin-left: auto; }
.saved-section { padding: 1.25rem; border: 1px solid var(--cc-line); border-radius: var(--cc-panel-radius); background: var(--cc-surface); }
.saved-section h2 { display: flex; align-items: center; margin: 0; font-size: 1.1rem; }
.saved-item { display: flex; justify-content: space-between; align-items: center; gap: 1rem; padding: 1rem 0; border-bottom: 1px solid var(--cc-line); }
.saved-item:last-child { padding-bottom: 0; border-bottom: 0; }
.saved-item > div, .saved-item > strong { min-width: 0; overflow-wrap: anywhere; }
.saved-item > button { flex-shrink: 0; }
.saved-item p, .saved-empty { color: var(--cc-muted); font-size: .875rem; line-height: 1.5; margin: .4rem 0 0; }
.saved-empty { margin-top: 1rem; }
@media (max-width: 1000px) {
    .event-search-primary, .event-search-filter-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 600px) {
    .event-search-primary, .event-search-filter-grid { grid-template-columns: minmax(0, 1fr); }
    .event-search-filter-grid .location-controls { grid-column: auto; }
    .event-search-shortcuts { align-items: stretch; }
    .saved-item { flex-direction: column; align-items: flex-start; gap: .5rem; }
    .saved-section { padding: 1rem; }
}

/* Discovery tools follow the same content gutters and section rhythm as detail pages. */
.detail-discovery-tools { width: min(var(--cc-page-max), calc(100% - var(--cc-page-gutters))); margin: 0 auto 1.5rem; padding-top: .85rem; }
.catalog-picker .mud-button-label { overflow-wrap: anywhere; text-align: left; }
.discovery-admin-panel { margin-block: 1.75rem; }
.delivery-preview-section { margin-bottom: 1rem; }
.discovery-metric-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 180px), 1fr)); gap: 1rem; margin: 1rem 0; }
.discovery-metric-grid > div { min-width: 0; padding: 1rem; border: 1px solid var(--cc-line); border-radius: var(--cc-panel-radius); background: var(--cc-surface-muted); }
.discovery-metric-grid dt { color: var(--cc-muted); font-size: .8rem; line-height: 1.5; }
.discovery-metric-grid dd { margin: .35rem 0 0; font-size: 1.6rem; font-weight: 700; line-height: 1.3; overflow-wrap: anywhere; }
.discovery-metric-grid .metric-date { font-size: 1.1rem; }
.discovery-metric-grid small { font-size: .75rem; font-weight: 400; color: var(--cc-muted); }
.operational-alert-list { display: grid; gap: .75rem; }
.discovery-explanation { margin-top: 1rem; color: var(--cc-muted); font-size: .875rem; line-height: 1.6; }
.discovery-explanation > summary { cursor: pointer; padding-block: .5rem; color: var(--cc-ink); font-weight: 600; }
.discovery-explanation > summary:focus-visible, .delivery-preview-item > summary:focus-visible { outline: 2px solid var(--cc-green); outline-offset: 3px; }
.discovery-explanation p { margin-block: .5rem 1rem; }
.alert-threshold-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; margin-top: .75rem; }
.discovery-status { margin-top: .75rem; color: var(--cc-green); font-size: .875rem; }
.delivery-preview-results { display: grid; gap: .75rem; }
.delivery-preview-help { margin: 0; color: var(--cc-muted); font-size: .875rem; line-height: 1.6; }
.delivery-preview-item { min-width: 0; border: 1px solid var(--cc-line); border-radius: var(--cc-panel-radius); }
.delivery-preview-item > summary { cursor: pointer; padding: 1rem; font-weight: 600; overflow-wrap: anywhere; }
.delivery-preview-item > summary span { display: block; margin-top: .25rem; color: var(--cc-muted); font-size: .8rem; font-weight: 400; }
.delivery-preview-status { display: grid; gap: .65rem; padding-inline: 1rem; margin: 0 0 1rem; font-size: .875rem; }
.delivery-preview-status > div { display: grid; grid-template-columns: 9rem minmax(0, 1fr); gap: .75rem; }
.delivery-preview-status dt { color: var(--cc-muted); }
.delivery-preview-status dd { margin: 0; overflow-wrap: anywhere; }
.delivery-preview-sample { margin: 0; padding: 1rem; border-top: 1px solid var(--cc-line); background: var(--cc-surface-muted); color: var(--cc-ink); white-space: pre-wrap; overflow-wrap: anywhere; font-size: .8rem; line-height: 1.6; }
@media (max-width: 900px) {
    .alert-threshold-grid { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 600px) {
    .delivery-preview-status > div { grid-template-columns: minmax(0, 1fr); gap: .15rem; }
}

.calendar-help { color: var(--cc-muted); font-size: .8rem; line-height: 1.5; }
.calendar-help summary { cursor: pointer; }
.calendar-help summary:focus-visible { outline: 2px solid var(--cc-green); outline-offset: 4px; }
.calendar-help p { margin: .6rem 0 0; }
.created-calendar { padding-top: .8rem; border-top: 1px solid var(--cc-line); }

/* Mobile discovery controls use the same gutters and tap targets. */
@media (max-width: 600px) {
    .page-heading:has(+ .organizer-search-form), .page-heading:has(+ .event-search-panel) { padding-top: 1rem; }
    .organizer-search-form { gap: .75rem; }
    .organizer-search-form ~ .catalog-grid { padding-top: .5rem; }
    .organizer-search-form .mud-button-root { min-height: 44px; }
    .organizer-card > div > .mud-button-root { width: 100%; min-height: 44px; margin-top: .5rem; }
    .organizer-card h2, .organizer-card p { overflow-wrap: anywhere; }
    .organizer-card p > .mud-icon-root { flex-shrink: 0; }
    .event-search-panel .mud-button-root { min-height: 44px; }
    .event-search-shortcuts { flex-direction: column; align-items: stretch; }
    .event-quick-dates { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: stretch; gap: .5rem; }
    .event-quick-dates > :last-child:nth-child(odd) { grid-column: 1 / -1; }
    .advanced-search-toggle { width: 100%; }
    .advanced-search-toggle .mud-button-label { flex-wrap: wrap; gap: .25rem; }
    .event-search-panel .advanced-search-actions { flex-direction: column; gap: .5rem; }
    .event-search-panel .advanced-search-actions > .mud-button-root { width: 100%; }
    .event-search-panel .search-preferences > .mud-button-root { width: 100%; }
    .event-results .event-expand { min-height: 44px; }
}
@media (max-width: 500px) {
    .event-results .event-card { grid-template-columns: 52px minmax(0, 1fr); }
    .event-results .event-card-body { padding: .75rem; }
}

/* Organizer profiles and game discovery stay compact on phones. */
@media (max-width: 600px) {
    .detail-hero { padding: 1rem 0 1.5rem; gap: 1.25rem; }
    .detail-hero > div { min-width: 0; }
    .detail-hero h1 { font-size: clamp(1.75rem, 7vw, 2.2rem); line-height: 1.2; overflow-wrap: anywhere; }
    .detail-hero p { font-size: 1rem; overflow-wrap: anywhere; }
    .detail-hero > div > .mud-button-root { min-height: 44px; padding-inline: 0; }
    .detail-hero-actions { display: flex; flex-direction: column; gap: .5rem; }
    .detail-hero-actions > .mud-button-root { width: 100%; min-height: 44px; }
    .detail-stat { display: flex; align-items: center; gap: .75rem; padding: .75rem 1rem; }
    .detail-stat strong { font-size: 1.75rem; }
    .detail-discovery-tools { margin-bottom: .5rem; }
    .detail-section { padding-block: 1.5rem; }
    .detail-section + .detail-section { padding-top: 0; }
    .detail-section .section-heading { margin-bottom: 1rem; gap: .5rem; }
    .detail-section .section-heading h2 { font-size: 1.5rem; line-height: 1.3; }
    .organizer-public-location { gap: .75rem; }
    .organizer-public-location address { min-width: 0; overflow-wrap: anywhere; }
    .public-news-list { grid-template-columns: minmax(0, 1fr); }
    .public-news-item { min-width: 0; overflow-wrap: anywhere; }
    .page-heading:has(+ .game-directory) { padding-top: 1rem; }
    .game-directory { gap: 1rem; }
    .game-directory-card { padding: 1rem; min-width: 0; overflow-wrap: anywhere; }
    .game-directory-card > .game-artwork { margin-bottom: 1rem; }
    .game-directory-card p { line-height: 1.6; margin-bottom: 1rem; }
    .game-explore { display: flex; align-items: center; justify-content: space-between; gap: .5rem; width: 100%; min-height: 44px; }
    .game-detail-hero { padding: 1rem; }
    .game-detail-hero.has-artwork { gap: 1rem; }
    .game-detail-hero p { line-height: 1.6; margin-bottom: 1rem; }
    .game-detail-hero .hero-actions { flex-direction: column; align-items: stretch; }
    .game-detail-hero .hero-actions > .mud-button-root { min-height: 44px; width: 100%; }
    .game-detail-hero ~ .content-band { padding-block: 1.5rem; }
    .game-detail-hero ~ .content-band .section-heading { margin-bottom: 1rem; gap: .5rem; }
    .game-detail-hero ~ .content-band .section-heading h2 { line-height: 1.3; }
    .game-detail-hero ~ .content-band .section-heading > a { display: inline-flex; align-items: center; min-height: 44px; }
    #game-organizers .catalog-grid { width: 100%; margin-inline: 0; padding-block: 0; }
    .game-visit-guide { padding-block: 1.5rem; overflow-wrap: anywhere; }
    .detail-section .event-expand, .game-detail-hero ~ .content-band .event-expand { min-height: 44px; }
}
@media (max-width: 500px) {
    .detail-section .event-card, .game-detail-hero ~ .content-band .event-card { grid-template-columns: 52px minmax(0, 1fr); }
    .detail-section .event-card-body, .game-detail-hero ~ .content-band .event-card-body { padding: .75rem; }
}

/* Administration uses the same readable, stacked field layout on narrow screens. */
@media (max-width: 599.98px) {
    .app-content:has(.admin-workspace-navigation) .admin-section-tabs {
        gap: 0;
        margin-bottom: .5rem;
    }
    .app-content:has(.admin-workspace-navigation) .admin-section-tabs > a,
    .app-content:has(.admin-workspace-navigation) .admin-section-tabs > span {
        min-height: 48px;
        padding-block: .75rem;
        font-size: .8rem;
    }
    .app-content:has(.admin-workspace-navigation) .page-heading {
        padding-block: 1rem;
        overflow-wrap: anywhere;
    }
    .app-content:has(.admin-workspace-navigation) .page-heading h1 {
        font-size: clamp(1.75rem, 7vw, 2rem);
        line-height: 1.2;
    }
    .app-content:has(.admin-workspace-navigation) .heading-actions {
        width: 100%;
        flex-direction: column;
        align-items: stretch;
    }
    .app-content:has(.admin-workspace-navigation) :is(.admin-list-heading, .health-heading) > .mud-button-root:not(.mud-icon-button),
    .app-content:has(.admin-workspace-navigation) :is(.heading-actions, .form-actions, .admin-toolbar) .mud-button-root {
        width: 100%;
        min-height: 44px;
        white-space: normal;
    }
    .app-content:has(.admin-workspace-navigation) .admin-list-heading:has(> .mud-icon-button) {
        display: grid;
        grid-template-columns: minmax(0, 1fr) 44px;
        align-items: start;
        gap: .5rem;
    }
    .app-content:has(.admin-workspace-navigation) .admin-list-heading > .mud-icon-button { width: 44px; height: 44px; }
    .app-content:has(.admin-workspace-navigation) .section-heading-row { flex-wrap: wrap; gap: .5rem; align-items: center; }
    .app-content:has(.admin-workspace-navigation) .section-heading-row > div { min-width: 0; }
    .app-content:has(.admin-workspace-navigation) .section-heading-row h2 { font-size: 1.5rem; line-height: 1.3; overflow-wrap: anywhere; }
    .app-content:has(.admin-workspace-navigation) .admin-toolbar { gap: .75rem; }
    .app-content:has(.admin-workspace-navigation) .form-section { padding: 1rem; min-width: 0; }
    .app-content:has(.admin-workspace-navigation) .form-section-heading { margin-bottom: 1rem; }
    .app-content:has(.admin-workspace-navigation) .admin-table .mud-table-cell {
        display: flex;
        flex-direction: column;
        align-items: stretch;
        gap: .25rem;
        padding: .65rem 1rem;
        width: auto;
        min-width: 0;
        text-align: left !important;
        overflow-wrap: anywhere;
    }
    .app-content:has(.admin-workspace-navigation) .admin-table .mud-table-cell::before {
        width: auto;
        padding-right: 0;
        text-align: left;
        font-size: .75rem;
        color: var(--cc-muted);
    }
    .app-content:has(.admin-workspace-navigation) .admin-table .mud-table-cell > * { min-width: 0; max-width: 100%; }
    .app-content:has(.admin-workspace-navigation) .admin-table :is(.status-pill, .mud-chip) { align-self: flex-start; white-space: normal; }
    .app-content:has(.admin-workspace-navigation) .admin-table .mud-button-root { min-height: 44px; }
    .app-content:has(.admin-workspace-navigation) .admin-table .admin-row-actions {
        flex-direction: row;
        flex-wrap: wrap;
        align-items: center;
        white-space: normal;
    }
    .app-content:has(.admin-workspace-navigation) .admin-table .admin-row-actions::before { flex-basis: 100%; }
    .app-content:has(.admin-workspace-navigation) .admin-table .mud-icon-button { min-width: 44px; min-height: 44px; }
    .app-content:has(.admin-workspace-navigation) .job-run-title-row {
        display: grid;
        grid-template-columns: minmax(0, 1fr) 44px;
        gap: .5rem;
        align-items: center;
    }
    .app-content:has(.admin-workspace-navigation) .job-run-title-row h1 { grid-column: 1 / -1; }
    .app-content:has(.admin-workspace-navigation) .job-run-title-row .status-pill { justify-self: start; white-space: normal; }
    .app-content:has(.admin-workspace-navigation) .job-run-title-row .mud-icon-button { width: 44px; height: 44px; }
    .app-content:has(.admin-workspace-navigation) .job-message { padding: .75rem; gap: .5rem; }
    .app-content:has(.admin-workspace-navigation) .job-message-metadata code { overflow-wrap: anywhere; }
    .app-content:has(.admin-workspace-navigation) .job-run-work-items { padding-block: 1.5rem; }
    .app-content:has(.admin-workspace-navigation) .job-options-actions { flex-direction: column; align-items: stretch; gap: .5rem; }
    .app-content:has(.admin-workspace-navigation) .job-options-actions .mud-button-root { min-height: 44px; }
    .app-content:has(.admin-workspace-navigation) .settings-save-bar .mud-button-root { min-height: 44px; }
    .app-content:has(.admin-workspace-navigation) .admin-community-page > .mud-button-root { width: 100%; min-height: 44px; margin-block: .5rem; }
    .app-content:has(.admin-workspace-navigation) .admin-community-page .community-card .mud-button-root { width: 100%; min-height: 44px; }
}

/* Keep profile details and account actions readable on phones. */
@media (max-width: 600px) {
    .account-profile-heading { padding-block: 1rem; }
    .account-profile-heading h1 { font-size: clamp(1.75rem, 7vw, 2rem); line-height: 1.2; }
    .account-profile-panels { padding-top: 1rem; }
    .account-profile-tabs > .mud-tabs-tabbar .mud-tab { min-width: 0 !important; padding-inline: .75rem; min-height: 48px; text-transform: none; }
    .account-profile-tabs > .mud-tabs-tabbar .mud-tab-icon-text { display: none; }
    .account-profile-tabs > .mud-tabs-tabbar .mud-tabs-scroll-button,
    .account-profile-tabs > .mud-tabs-tabbar .mud-tabs-scroll-button .mud-icon-button { width: 44px; min-width: 44px; height: 44px; }
    .account-profile-page .form-section { padding: 1rem; min-width: 0; }
    .account-profile-page .form-section-heading { margin-bottom: 1rem; }
    .account-profile-page .account-tab-panel { min-width: 0; }
    .account-identity { grid-template-columns: 48px minmax(0, 1fr); padding: 1rem; gap: .75rem; align-items: start; }
    .account-avatar { width: 48px; height: 48px; }
    .account-identity .mud-chip { grid-column: 1 / -1; justify-self: start; margin-left: 0; }
    .account-identity > span:nth-child(2) { min-width: 0; overflow-wrap: anywhere; }
    .account-identity > span:nth-child(2) > strong { font-size: 1.1rem; }
    .account-stat-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .account-stat-grid > div { padding: .75rem; border-top: 0; }
    .account-stat-grid > div + div { border-left: 1px solid var(--cc-line); }
    .account-stat-grid > div:nth-child(n+3) { grid-column: 1 / -1; border-left: 0; border-top: 1px solid var(--cc-line); }
    .account-workspace-links > a { padding: .75rem; gap: .5rem; }
    .account-workspace-links > a > span { overflow-wrap: anywhere; }
    .account-game-choice { grid-template-columns: 40px minmax(0, 1fr) 44px; padding: .5rem; gap: .5rem; }
    .account-game-choice strong { overflow-wrap: anywhere; }
    .account-game-image { width: 40px; height: 40px; }
    .account-profile-page .linked-identity-list article { grid-template-columns: 32px minmax(0, 1fr); padding: .75rem; gap: .75rem; }
    .account-profile-page :is(.linked-identity-icon, .account-session-icon) { width: 32px; height: 32px; flex-basis: 32px; }
    .account-profile-page :is(.linked-identity-icon, .account-session-icon) .mud-icon-root { font-size: 1.25rem; }
    .account-profile-page .linked-identity-actions { grid-column: 1 / -1; justify-content: space-between; gap: .25rem; }
    .account-profile-page .linked-identity-actions .mud-chip { margin-left: 0; }
    .account-profile-page .linked-identity-actions .mud-button-root { min-height: 44px; }
    .account-security-row { padding: .75rem; gap: .75rem; }
    .account-session-summary { gap: .75rem; align-items: start; }
    .account-session-summary > span:last-child { min-width: 0; overflow-wrap: anywhere; }
    .account-security-row form { padding-left: 0; }
    .account-profile-page :is(.account-link-actions, .saved-page-actions) { flex-direction: column; align-items: stretch; gap: .5rem; }
    .account-profile-page .saved-page-actions > :last-child { margin-left: 0; }
    .account-profile-page :is(.form-actions, .account-link-actions, .account-security-row, .saved-page-actions, .saved-item) .mud-button-root { width: 100%; min-height: 44px; }
    .account-activity-list article { grid-template-columns: 32px minmax(0, 1fr); padding: .75rem 0; gap: .5rem .75rem; align-items: start; }
    .account-activity-icon { width: 32px; height: 32px; }
    .account-activity-list article > span:nth-child(2), .account-activity-list time { min-width: 0; overflow-wrap: anywhere; }
    .account-profile-page .saved-section h2 { flex-wrap: wrap; gap: .25rem; }
    .account-profile-page .saved-item { align-items: stretch; }
}

/* Consent controls must keep their icon and text together at narrow widths. */
.auth-page .mud-checkbox { align-items: flex-start; }
.auth-page .mud-checkbox > .mud-typography { min-width: 0; padding-top: .65rem; line-height: 1.5; }
.auth-page .mud-checkbox > .mud-checkbox-dense + .mud-typography { padding-top: .4rem; }
@media (max-width: 600px) {
    .auth-page { width: min(720px, calc(100% - var(--cc-page-gutters))); padding-top: 1rem; }
    .auth-page-heading { align-items: start; grid-template-columns: 40px minmax(0, 1fr); gap: .75rem; margin-bottom: 1rem; }
    .auth-page-heading h1 { font-size: clamp(1.5rem, 5vw, 1.8rem); overflow-wrap: anywhere; }
    .auth-page-icon { width: 40px; height: 40px; }
    .auth-page-icon .mud-icon-root { font-size: 1.5rem; }
    .auth-surface { padding: 1rem; }
    .auth-provider-copy { min-width: 0; }
    .auth-provider-option { gap: .75rem; padding-block: 1rem; }
    .auth-page .mud-checkbox > .mud-typography { font-size: .9rem; }
    .account-resolution-option .mud-input-control { margin-top: .5rem; }
    .account-resolution-surface { padding-bottom: 0; }
    .account-resolution-footer { margin-inline: -1rem; padding: .5rem 1rem; }
    .account-resolution-footer > .mud-button-root,
    .legal-acceptance-actions .mud-button-root { width: 100%; min-height: 44px; }
    .legal-acceptance-actions { gap: .5rem; }
}

/* Keep policy documents readable without oversized mobile heading gaps. */
@media (max-width: 600px) {
    .legal-page { width: min(900px, calc(100% - var(--cc-page-gutters))); padding-bottom: 2rem; }
    .legal-heading { padding-top: 1rem; padding-bottom: 1rem; }
    .legal-heading h1 { font-size: clamp(1.75rem, 6vw, 2.25rem); line-height: 1.2; }
    .legal-heading p { margin-top: .5rem; line-height: 1.5; }
    .legal-draft-alert { margin-bottom: 1rem; }
    .legal-surface { padding: 1rem; overflow-wrap: anywhere; }
    .legal-surface h2 { margin: 1.5rem 0 .5rem; line-height: 1.4; }
    .legal-surface p + p { margin-top: .75rem; }
    .legal-surface :is(ul, ol) { padding-inline-start: 1.25rem; }
    .legal-surface li + li { margin-top: .5rem; }
}

/* Final mobile pass: organizer tools and standalone forms share the page rhythm. */
@media (max-width: 600px) {
    .app-content:has(.organizer-editor-tabs, .organizer-workspace-tabs, .managed-organizers-page, .news-editor-page, > .form-section) > .page-heading {
        padding-top: 1rem;
        padding-bottom: 1rem;
    }
    .app-content:has(.organizer-editor-tabs, .organizer-workspace-tabs, .managed-organizers-page, .news-editor-page, > .form-section) > .page-heading h1 {
        font-size: clamp(1.75rem, 6vw, 2.25rem);
        line-height: 1.2;
        overflow-wrap: anywhere;
    }
    .organizer-editor-tab { min-width: 0; min-height: 44px; white-space: normal; overflow-wrap: anywhere; padding: .5rem; justify-content: flex-start; gap: .4rem; font-size: .8rem; }
    .organizer-editor-tab .mud-icon-root { flex-shrink: 0; }
    .organizer-editor-tab.disabled-feature-navigation { flex-wrap: wrap; }
    .app-content:has(.organizer-editor-tabs, .organizer-workspace-tabs) .form-section { min-width: 0; padding: 1rem; }
    .app-content:has(.organizer-editor-tabs, .organizer-workspace-tabs) .form-section-heading { margin-bottom: 1rem; }
    .app-content:has(.organizer-editor-tabs, .organizer-workspace-tabs) :is(.form-actions, .form-section) > .mud-button-root:not(.mud-icon-button) { min-height: 44px; width: 100%; }
    .manager-list > div { grid-template-columns: 32px minmax(0, 1fr) 44px; gap: .5rem; }
    .manager-list .manager-avatar { width: 32px; height: 32px; }
    .manager-list :is(strong, small), .invitation-list :is(strong, small) { overflow-wrap: anywhere; }
    .manager-list .mud-icon-button { width: 44px; height: 44px; }
    .invitation-list > div { grid-template-columns: minmax(0, 1fr) auto; gap: .5rem; }
    .invitation-list .mud-button-root { min-height: 44px; }
    .organizer-game-card { padding: .75rem; }
    .organizer-game-card-heading { grid-template-columns: 40px minmax(0, 1fr) 48px; gap: .5rem; }
    .organizer-game-visual { width: 40px; height: 40px; }
    .source-mapping-list, .source-controls, .source-control-groups, .source-control-group { grid-template-columns: minmax(0, 1fr); min-width: 0; }
    .source-mapping-block { min-width: 0; padding: .75rem; }
    .source-mapping-heading, .source-identity-heading { flex-wrap: wrap; gap: .5rem; }
    .source-mapping-heading > .mud-button-root { width: 100%; min-height: 44px; }
    .source-control-group > *, .source-identity-block { min-width: 0; }
    .source-mapping-block .source-control-group { padding: .75rem 0; border: 0; border-top: 1px solid var(--cc-line); border-radius: 0; }
    .source-mapping-block .setting-rows { column-gap: .25rem; align-items: start; }
    .app-content > .form-section { width: calc(100% - var(--cc-page-gutters)); margin-inline: auto; padding: 1rem; }
    .app-content > .form-section .form-actions .mud-button-root { min-height: 44px; }
    .news-editor { padding: 1rem; }
    .news-editor-page .form-actions .mud-button-root { min-height: 44px; }
    .mud-dialog .mud-dialog-actions { flex-wrap: wrap; gap: .5rem; }
    .mud-dialog .mud-dialog-actions .mud-button-root { min-height: 44px; margin: 0; }
    .mud-picker-popover { left: 8px !important; max-width: calc(100% - 16px) !important; }
    .mud-picker-popover-paper { max-width: 100%; }
    .mud-picker-popover .mud-picker-content { min-width: 0; max-width: 100%; }
    .mud-picker-popover :is(.mud-picker-calendar-content, .mud-picker-calendar-container) { min-width: 0; max-width: 100%; }
    .mud-picker-popover .mud-picker-calendar-content { grid-template-columns: minmax(0, 1fr); }
    .mud-picker-popover :is(.mud-picker-calendar, .mud-picker-calendar-header, .mud-picker-calendar-header-switch, .mud-picker-calendar-header-day, .mud-picker-calendar-transition) { width: 100%; }
}

/* The layout owns breadcrumb spacing, including breadcrumbs nested in detail pages.
   Do not stack a page's standalone heading padding onto the breadcrumb's bottom gap. */
.app-content:has(.breadcrumb-trail) { padding-top: 1rem; }
.app-content > .event-detail-page:has(> .breadcrumb-trail) { padding-top: 0; }
.app-content > .admin-workspace-navigation:has(.breadcrumb-trail) { margin-top: 0; }
.app-content:has(.breadcrumb-trail) :is(.page-heading, .detail-hero, .auth-page) { padding-top: 0; }
.app-content:has(.breadcrumb-trail) .detail-hero h1 { margin-top: 0; }
/* A banner is content between the breadcrumb and heading, so retain its own separation. */
.app-content .community-profile-page > .community-profile-banner + .page-heading { padding-top: 1rem; }

/* Specialized admin review queues share spacing and responsive actions. */
.review-queue-page { padding-bottom: 3rem; }
.review-queue-page .page-heading { padding-top: 1.5rem; gap: 1rem; }
.review-queue-page .page-heading h1 { font-size: clamp(1.75rem, 3vw, 2.5rem); }
.review-queue-page .page-heading p { max-width: 70ch; }
.review-queue-page .admin-toolbar { grid-template-columns: repeat(auto-fit, minmax(min(100%, 220px), 1fr)); }
.review-queue-page .form-section, .review-queue-page .queue-review-card { margin-block: 1rem; padding: 1.25rem; border: 1px solid var(--cc-line); border-radius: .5rem; background: var(--cc-surface); overflow-wrap: anywhere; }
.review-queue-page .form-section h2, .review-queue-page .queue-review-card h2 { margin: 0 0 .75rem; font-size: 1.25rem; }
.review-queue-page .form-actions { flex-wrap: wrap; gap: .65rem; margin-top: 1rem; }
.review-queue-page .review-metadata { grid-template-columns: repeat(auto-fit, minmax(min(100%, 180px), 1fr)); }
.review-queue-page .admin-table { overflow-wrap: anywhere; }
.queue-status-summary { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .75rem; margin-block: 1rem; }
.queue-status-summary > div { display: grid; gap: .25rem; padding: 1rem; border: 1px solid var(--cc-line); border-radius: .5rem; background: var(--cc-surface); }
.queue-status-summary strong { font-size: 1.5rem; }
.queue-status-summary span, .queue-address-comparison dt { color: var(--cc-muted); }
.queue-address-comparison { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; margin-block: 1rem; }
.queue-address-comparison > div { padding: 1rem; border: 1px solid var(--cc-line); border-radius: .35rem; }
.queue-address-comparison dt { font-size: .85rem; font-weight: 600; margin-bottom: .5rem; }
.queue-address-comparison dd { margin: 0; overflow-wrap: anywhere; }
@media (max-width: 600px) {
    .review-queue-page .page-heading, .review-queue-page .access-review-heading { flex-direction: column; align-items: stretch; }
    .review-queue-page .page-heading-actions { justify-content: flex-start; }
    .queue-address-comparison, .queue-status-summary { grid-template-columns: 1fr; }
    .review-queue-page .account-deletion-list dl > div { grid-template-columns: 1fr; gap: .25rem; }
}
/* Organizer participation reporting and the shared game season catalog. */
.organizer-workspace-page { width: min(var(--cc-page-max), calc(100% - var(--cc-page-gutters))); max-width: none; margin-inline: auto; min-width: 0; }
.app-content:has(> .organizer-workspace-page) > .page-heading { padding-bottom: 1rem; }
.organizer-workspace-page > .organizer-editor-tabs { margin: 0; }
.organizer-workspace-page :is(.admin-table, .admin-toolbar) { width: 100%; margin-inline: 0; }
.organizer-news-page.organizer-workspace-page { display: grid; gap: 1rem; }
.organizer-workspace-page .detail-section { width: 100%; margin: 0; min-width: 0; padding: 1.25rem; }
.organizer-workspace-page .section-heading { margin-bottom: 1rem; }
.organizer-workspace-page .analytics-definition-note { margin: 0; }
.analytics-reach-section { display: grid; gap: 1.25rem; min-width: 0; }
.analytics-section-heading { display: flex; justify-content: space-between; align-items: center; gap: 1rem; }
.analytics-section-heading h2 { margin: 0; }
.analytics-section-heading p { margin: .35rem 0 0; color: var(--cc-muted); }
.analytics-section-heading .analytics-period-select { flex: 0 0 220px; }
.participation-analytics { display: grid; gap: 1rem; margin: 0; border: 1px solid var(--cc-line); border-radius: var(--cc-panel-radius); background: var(--cc-surface); min-width: 0; }
.participation-analytics > :is(p, h3), .participation-analytics > .section-heading { margin: 0; }
.participation-analytics > p { max-width: 85ch; color: var(--cc-muted); line-height: 1.6; }
.participation-analytics > h3 { padding-top: .5rem; font-size: 1.1rem; }
.participation-analytics > .participation-filters, .participation-analytics > .participation-season-chart { margin: 0; }
.participation-notice .mud-alert-position { align-items: flex-start; gap: .75rem; }
.participation-notice .mud-alert-message { padding: 0; min-width: 0; line-height: 1.6; }
.participation-notice .mud-alert-icon { margin: 0; padding-top: .15rem; }
.participation-filters { display: flex; flex-wrap: wrap; align-items: center; gap: 1rem; margin: 1rem 0; }
.participation-filters > .mud-input-control { flex: 1 1 13rem; max-width: 24rem; }
.participation-season-chart { display: grid; gap: 1rem; margin: 1.5rem 0; }
.participation-season-bar { display: grid; grid-template-columns: minmax(8rem, 1fr) minmax(6rem, 3fr) 4rem; gap: 1rem; align-items: center; }
.participation-season-bar strong { text-align: right; font-variant-numeric: tabular-nums; }
.participation-track { height: .5rem; background: var(--mud-palette-action-default-hover); border-radius: .25rem; overflow: hidden; }
.participation-track > span { display: block; height: 100%; background: var(--mud-palette-primary); }
.season-review-form { display: grid; gap: 1rem; margin-top: 1.5rem; }
.catalog-editor-tabs, .catalog-editor-hint, .catalog-season-panel, .prerelease-review-page {
    width: min(var(--cc-page-max), calc(100% - var(--cc-page-gutters))); margin-inline: auto;
}
.catalog-editor-tabs { display: flex; flex-wrap: wrap; gap: .5rem; border-bottom: 1px solid var(--cc-line); margin-bottom: 1rem; }
.catalog-editor-tabs button { background: transparent; color: var(--cc-muted); border: 0; border-bottom: 3px solid transparent; padding: .85rem 1rem; font: inherit; }
.catalog-editor-tabs button[aria-selected="true"] { color: var(--cc-red); border-bottom-color: var(--cc-red); }
.catalog-editor-tabs button:disabled { opacity: .55; }
.catalog-season-panel { padding-bottom: 4rem; }
.season-calendar-heading { display: flex; align-items: start; justify-content: space-between; gap: 1rem; }
.season-calendar-heading h2 { margin-top: 0; }
.season-calendar-heading p { max-width: 75ch; }
.season-calendar-heading > .mud-button-root { flex-shrink: 0; }
.season-calendar-links { display: flex; justify-content: flex-end; margin-bottom: 1rem; }
.season-date-editor { display: grid; gap: 1rem; border-top: 1px solid var(--cc-line); padding-top: 1.5rem; margin-top: 1.5rem; }
.season-date-editor h2 { margin: 0; }
.prerelease-search-row { display: grid; grid-template-columns: minmax(12rem, 1fr) minmax(14rem, 2fr) auto; gap: 1rem; align-items: center; margin-bottom: 1.5rem; }
.prerelease-review-page { padding-bottom: 4rem; }
.admin-review-bell .mud-badge.mud-badge-top.right.mud-badge-overlap { inset: 4px 4px auto auto; pointer-events: none; }
.admin-review-popover { width: min(420px, calc(100vw - 2rem)); }
.admin-notification-heading { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: .5rem 1rem; }
.admin-notification-note { padding: .5rem 1rem; margin: 0; }
.admin-notification-list { max-height: min(420px, 50dvh); overflow-y: auto; }
.admin-notification-item > .mud-menu-item-text { white-space: normal; overflow-wrap: anywhere; display: grid; gap: .35rem; }
.admin-notification-item .status-pill { margin-right: .5rem; }
.admin-notification-item small { color: var(--cc-muted); }
.admin-notification-preference { display: grid; gap: .35rem; padding: .5rem 1rem; }
.admin-notification-preference > small { color: var(--cc-muted); }
@media (max-width: 700px) {
    .prerelease-search-row { grid-template-columns: 1fr; }
    .season-calendar-heading { flex-direction: column; }
    .analytics-section-heading { align-items: stretch; flex-direction: column; }
    .analytics-section-heading .analytics-period-select { flex-basis: auto; width: 100%; }
}
@media (max-width: 600px) {
    .organizer-workspace-page .detail-section { padding: 1rem; }
    .participation-filters > .mud-input-control { max-width: 100%; }
    .participation-season-bar { grid-template-columns: minmax(6rem, 1fr) minmax(4rem, 1fr) 3rem; gap: .5rem; }
}
