﻿:root {
  color-scheme: light;
  --ink: #09090b;
  --ink-2: #18181b;
  --paper: #ffffff;
  --surface: #ffffff;
  --surface-2: #f4f4f5;
  --line: #e4e4e7;
  --muted: #71717a;
  --accent: #18181b;
  --accent-dark: #09090b;
  --cyan: #0f8fa8;
  --success: #16835f;
  --warning: #a16207;
  --danger: #dc2626;
  --neutral: #71717a;
  --shadow: 0 1px 2px rgba(9, 9, 11, 0.05);
  --radius: 0.7rem;
  --sidebar: 0rem;
  --banner-height: 0px;
  font-family: "Segoe UI Variable", "Segoe UI", "Noto Sans SC", sans-serif;
}

html { background: #fff; }
body { background: #fff; color: var(--ink); line-height: 1.55; -webkit-font-smoothing: antialiased; }
body::before { display: none; }

.top-banner {
  position: sticky; inset-block-start: 0; z-index: 100; display: flex; align-items: center; justify-content: center;
  inline-size: 100%; min-block-size: 0; padding-inline: 3rem; overflow: hidden; isolation: isolate;
  color: #27272a; background: #fafafa; border-block-end: 1px solid rgba(24, 24, 27, 0.08);
  font-size: 0.76rem; font-weight: 600; line-height: 1; text-align: center;
  transition: height 300ms ease, opacity 300ms ease, border-color 300ms ease;
}
.top-banner.is-closing { opacity: 0; border-color: transparent; }
.top-banner__message { position: relative; z-index: 1; white-space: nowrap; }
.top-banner__close { position: absolute; inset-block-start: 50%; inset-inline-end: 0.5rem; z-index: 2; display: grid; place-items: center; inline-size: 1.65rem; block-size: 1.65rem; padding: 0; color: #71717a; background: transparent; border: 0; border-radius: 0.4rem; transform: translateY(-50%); cursor: pointer; }
.top-banner__close:hover { color: #09090b; background: rgba(24, 24, 27, 0.06); }
.top-banner__close .icon { inline-size: 0.95rem; block-size: 0.95rem; }
.top-banner--rainbow { background: #fff; }
.rainbow-banner-gradient-1, .rainbow-banner-gradient-2 { position: absolute; inset: 0; z-index: -1; pointer-events: none; }
.rainbow-banner-gradient-1 { background: rgba(205, 234, 245, .74); }
.rainbow-banner-gradient-2 { background: rgba(255, 255, 255, .32); backdrop-filter: blur(12px) saturate(1.05); }

.app-shell, .page-wrap { min-block-size: calc(100vh - var(--banner-height)); }
.topbar { position: sticky; inset-block-start: var(--banner-height); z-index: 70; background: rgba(255, 255, 255, .96); border-block-end: 1px solid var(--line); backdrop-filter: blur(14px); }
.topbar-inner { display: flex; align-items: center; gap: 1.7rem; inline-size: min(calc(100% - 2.5rem), 120rem); min-block-size: 4.75rem; margin-inline: auto; }
.brand { flex: 0 0 auto; display: flex; align-items: center; gap: .65rem; min-inline-size: 13.5rem; padding: .48rem .72rem; color: var(--ink); text-decoration: none; background: #fff; border: 1px solid var(--line); border-radius: .55rem; box-shadow: var(--shadow); }
.brand-image { inline-size: 2rem; block-size: 2rem; object-fit: cover; object-position: 50% 46%; border-radius: 50%; filter: grayscale(.35); }
.brand > span { display: grid; min-inline-size: 0; }
.brand b { overflow: hidden; font-size: .86rem; font-weight: 650; line-height: 1.1; text-overflow: ellipsis; white-space: nowrap; letter-spacing: 0; }
.brand small { margin-block-start: .18rem; color: var(--muted); font-size: .64rem; line-height: 1; }
.nav-stack { position: static; z-index: auto; display: flex; flex-direction: row; align-items: center; gap: 1.65rem; inline-size: auto; margin: 0; padding: 0; overflow: visible; background: transparent; border: 0; transform: none; box-shadow: none; }
.nav-link { display: inline-flex; align-items: center; gap: 0; min-block-size: auto; padding: .4rem 0; color: #71717a; text-decoration: none; background: transparent; border: 0; border-radius: 0; font-size: .88rem; font-weight: 500; letter-spacing: 0; }
.nav-link .icon { display: none; }
.nav-link:hover, .nav-link:focus-visible { color: #18181b; background: transparent; }
.nav-link.is-active { color: #09090b; background: transparent; border: 0; font-weight: 650; }
.nav-link.is-active::before { display: none; }
.topbar-actions { display: flex; align-items: center; gap: .65rem; margin-inline-start: auto; }
.global-search { position: relative; display: flex; align-items: center; inline-size: clamp(12rem, 20vw, 22rem); }
.global-search .icon { position: absolute; inset-inline-start: .85rem; inline-size: .95rem; color: #a1a1aa; pointer-events: none; }
.global-search input { inline-size: 100%; min-block-size: 2.7rem; padding: .55rem .9rem .55rem 2.45rem; color: #18181b; background: #fff; border: 1px solid var(--line); border-radius: .5rem; box-shadow: var(--shadow); }
.global-search input:focus { border-color: #a1a1aa; box-shadow: 0 0 0 3px rgba(24, 24, 27, .06); }
.evidence-link { display: inline-flex; align-items: center; gap: .4rem; min-block-size: 2.7rem; padding-inline: .75rem; color: #3f3f46; text-decoration: none; background: #fff; border: 1px solid var(--line); border-radius: .5rem; box-shadow: var(--shadow); font-size: .75rem; font-weight: 600; }
.evidence-link:hover { color: #09090b; background: #fafafa; }
.evidence-link .icon { inline-size: .95rem; }
.account-block { display: flex; align-items: center; gap: .55rem; padding: 0; border: 0; }
.avatar { display: grid; place-items: center; inline-size: 2.35rem; block-size: 2.35rem; flex: 0 0 auto; color: #fff; background: #18181b; border: 0; border-radius: 50%; box-shadow: none; font-size: .75rem; font-weight: 700; }
.account-copy { display: none; }
.icon-button { color: #71717a; border-radius: .45rem; }
.icon-button:hover { color: #09090b; background: #f4f4f5; }
.menu-button { display: none; }

.page-wrap { min-block-size: calc(100vh - var(--banner-height) - 4.75rem); margin-inline-start: 0; }
.page-main { inline-size: min(calc(100% - 4rem), 120rem); margin-inline: auto; padding-block: 2.7rem 5rem; }
.page-heading { display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin-block-end: 1.25rem; }
.page-heading h1 { margin: 0; color: #09090b; font: 700 clamp(2rem, 3vw, 2.65rem)/1.08 "Segoe UI Variable", "Segoe UI", sans-serif; letter-spacing: -.045em; }
.page-heading .eyebrow { display: none; }
.heading-actions { display: flex; align-items: center; gap: .65rem; }
.period-control { display: inline-flex; align-items: center; gap: .6rem; min-block-size: 2.8rem; padding-inline: .9rem; color: #27272a; background: #fff; border: 1px solid var(--line); border-radius: .55rem; box-shadow: var(--shadow); font-size: .78rem; font-weight: 550; }
.period-control .icon { inline-size: 1rem; }
.eyebrow { color: #71717a; font-size: .66rem; font-weight: 650; letter-spacing: .12em; }

.page-tabs { display: inline-flex; align-items: center; gap: .18rem; margin-block-end: 1.45rem; padding: .24rem; background: #f4f4f5; border-radius: .55rem; }
.page-tabs a { padding: .42rem .82rem; color: #a1a1aa; text-decoration: none; border-radius: .42rem; font-size: .78rem; font-weight: 550; }
.page-tabs a:hover { color: #52525b; }
.page-tabs a.is-active { color: #18181b; background: #fff; box-shadow: 0 1px 3px rgba(9, 9, 11, .1); }

.button { min-block-size: 2.8rem; padding-inline: 1rem; border-radius: .52rem; font-size: .76rem; font-weight: 600; box-shadow: none; }
.button:hover, .button:focus-visible { transform: none; box-shadow: none; }
.button--primary, .button--dark { color: #fff; background: #18181b; border-color: #18181b; }
.button--primary:hover, .button--dark:hover { color: #fff; background: #27272a; border-color: #27272a; }
.button--ghost { color: #27272a; background: #fff; border-color: var(--line); box-shadow: var(--shadow); }
.button--ghost:hover { background: #fafafa; }
.button--plain { color: #71717a; background: transparent; border-color: transparent; }

.panel { background: #fff; border: 1px solid var(--line); border-radius: .75rem; box-shadow: none; overflow: hidden; }
.panel-heading { padding: 1.35rem 1.5rem; border-block-end: 0; }
.panel-heading h2, .section-title h2, .settings-card h2, .rule-heading h2 { margin: 0; color: #18181b; font-size: 1rem; font-weight: 650; }
.panel-heading p { margin: .22rem 0 0; color: #71717a; font-size: .78rem; }

.metric-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: .95rem; margin-block-end: 1rem; }
.metric-card { min-block-size: 9.2rem; padding: 1.25rem 1.4rem; background: #fff; border: 1px solid var(--line); border-radius: .75rem; box-shadow: none; }
.metric-card::after { display: none; }
.metric-card:hover { transform: none; border-color: #d4d4d8; box-shadow: none; }
.metric-card header > span { color: #71717a; font-size: .72rem; font-weight: 600; }
.metric-card p { color: #27272a; font-size: .82rem; font-weight: 600; }
.metric-card strong { margin-block: .65rem .15rem; color: #09090b; font: 700 2rem/1 "Segoe UI Variable", "Segoe UI", sans-serif; letter-spacing: -.035em; }
.metric-card footer { display: block; }
.metric-card footer i { display: none; }
.metric-card small { color: #71717a; font-size: .75rem; }

.dashboard-grid--launch { grid-template-columns: minmax(0, 1.35fr) minmax(20rem, 1fr); gap: .95rem; }
.overview-chart, .recent-panel { min-block-size: 27rem; }
.chart-area { display: grid; grid-template-columns: 3rem 1fr; min-block-size: 21rem; padding: .3rem 1.5rem 1.45rem; }
.chart-scale { display: flex; flex-direction: column; justify-content: space-between; padding-block: .5rem 1.6rem; color: #a1a1aa; font-size: .7rem; }
.chart-bars { display: flex; align-items: stretch; gap: clamp(.7rem, 2vw, 2rem); padding: .5rem .5rem 0; background: repeating-linear-gradient(to bottom, transparent 0, transparent calc(33.333% - 1px), #f4f4f5 calc(33.333% - 1px), #f4f4f5 33.333%); }
.chart-bar { display: grid; grid-template-rows: 1fr auto; flex: 1; min-inline-size: 2.4rem; color: #71717a; text-align: center; text-decoration: none; font-size: .7rem; }
.chart-bar > span { position: relative; min-block-size: 17rem; }
.chart-bar i { position: absolute; inset-inline: 12%; inset-block-end: 0; block-size: var(--chart-height); background: #18181b; border-radius: .38rem .38rem .12rem .12rem; transition: background-color 160ms ease, transform 160ms ease; transform-origin: bottom; }
.chart-bar:hover i { background: #3f3f46; transform: scaleX(1.04); }
.chart-bar b { padding-block-start: .6rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-weight: 500; }
.recent-list { display: grid; padding: .1rem 1.5rem 1rem; }
.recent-item { display: grid; grid-template-columns: auto 1fr auto auto; align-items: center; gap: .8rem; padding-block: .9rem; color: #18181b; text-decoration: none; border-block-end: 1px solid #f4f4f5; }
.recent-item:last-child { border-block-end: 0; }
.recent-item .avatar { inline-size: 2.2rem; block-size: 2.2rem; color: #18181b; background: #f4f4f5; }
.recent-item > span:nth-child(2) { display: grid; min-inline-size: 0; }
.recent-item b { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: .8rem; }
.recent-item small { color: #71717a; font-size: .7rem; }
.recent-item strong { color: #18181b; font-size: .8rem; white-space: nowrap; }

.cycle-band { background: #fafafa; border: 1px solid var(--line); border-radius: .75rem; box-shadow: none; }
.live-dot { background: #18181b; box-shadow: none; }
.live-dot::after { border-color: rgba(24, 24, 27, .18); }
.cycle-state h2 { color: #18181b; }
.cycle-track, .bar-track, .score-meter > span { background: #f4f4f5; border-radius: 999px; }
.cycle-track i, .bar-fill { background: #18181b; box-shadow: none; }
.cycle-meta { border-color: var(--line); }
.cycle-meta dt, .cycle-progress span, .cycle-progress small { color: #71717a; }
.cycle-meta dd { color: #18181b; }
.cycle-link, .text-link { color: #18181b; font-weight: 600; }
.text-link:hover { color: #52525b; }

.record-insights { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: .95rem; margin-block-end: 1rem; }
.record-insights article { display: grid; grid-template-columns: 1fr auto; grid-template-areas: "label value" "caption value"; align-items: center; min-block-size: 7rem; padding: 1.15rem 1.3rem; background: #fff; border: 1px solid var(--line); border-radius: .75rem; }
.record-insights article::after { display: none; }
.record-insights span { grid-area: label; color: #27272a; font-size: .78rem; font-weight: 600; }
.record-insights b { grid-area: value; color: #09090b; font: 700 1.9rem/1 "Segoe UI Variable", "Segoe UI", sans-serif; }
.record-insights small { grid-area: caption; color: #a1a1aa; font-size: .58rem; letter-spacing: .12em; }

.filter-bar { gap: .55rem; padding: .55rem; margin-block-end: 1rem; background: #fafafa; border: 1px solid var(--line); border-radius: .7rem; }
input, select, textarea { color: #18181b; background: #fff; border-color: #d4d4d8; border-radius: .5rem; box-shadow: none; }
input:hover, select:hover, textarea:hover { border-color: #a1a1aa; }
input:focus, select:focus, textarea:focus { border-color: #71717a; box-shadow: 0 0 0 3px rgba(24, 24, 27, .06); }
input::placeholder { color: #a1a1aa; }
.field > label { color: #27272a; font-weight: 600; }
.field-hint { color: #71717a; }
.field-hint--warning { color: #a64b16; font-weight: 650; }
.search-field .icon { color: #a1a1aa; }

table { color: #27272a; }
th { padding: .82rem 1rem; color: #71717a; background: #fafafa; border-block-end: 1px solid var(--line); font-size: .68rem; font-weight: 600; letter-spacing: 0; text-transform: none; }
td { padding: .92rem 1rem; border-color: #f0f0f1; }
tbody tr:hover { background: #fafafa; }
td small { color: #71717a; }
.table-primary { color: #18181b; text-decoration-color: #a1a1aa; }
.score-meter b { color: #18181b; }
.score-meter small { color: #71717a; }
.score-meter > span i { background: #18181b; }
.score-meter.is-below > span i { background: #dc2626; }

.status { min-block-size: 1.7rem; padding: .2rem .55rem; border: 1px solid transparent; border-radius: 999px; font-size: .65rem; font-weight: 600; }
.status i { inline-size: .32rem; block-size: .32rem; }
.status--success { color: #166534; background: #f0fdf4; border-color: #dcfce7; }
.status--warning { color: #92400e; background: #fffbeb; border-color: #fef3c7; }
.status--danger { color: #991b1b; background: #fef2f2; border-color: #fee2e2; }
.status--neutral { color: #52525b; background: #f4f4f5; border-color: #e4e4e7; }

.player-hero { color: #18181b; background: #fff; border: 1px solid var(--line); border-radius: .75rem; box-shadow: none; }
.player-hero::after { display: none; }
.player-hero h2, .player-hero--passed h2 { color: #18181b; }
.player-hero p, .level-stamp small { color: #71717a; }
.level-stamp { border-color: var(--line); }
.level-stamp strong { color: #18181b; }
.level-stamp span { color: #71717a; }
.score-strip article { background: #fff; border: 1px solid var(--line); border-radius: .75rem; }
.score-strip span, .score-strip small { color: #71717a; }
.score-strip b { color: #18181b; }

.detail-hero { color: #18181b; background: #fff; border: 1px solid var(--line); border-radius: .75rem; box-shadow: none; }
.detail-person p, .detail-result p { color: #71717a; }
.detail-person .avatar { background: #18181b; }
.big-score b { color: #09090b; }
.big-score span { color: #71717a; }
.game-grid > div { border-color: var(--line); }
.game-grid dt { color: #71717a; }
.game-grid dd { color: #18181b; }
.score-note { color: #52525b; background: #fafafa; border-color: var(--line); }
.note-panel > div { border-color: var(--line); }

.form-route { background: #f4f4f5; border: 1px solid var(--line); border-radius: .7rem; box-shadow: none; backdrop-filter: none; }
.form-route a { color: #a1a1aa; border-color: transparent; }
.form-route a[aria-current="step"] { color: #18181b; background: #fff; border-color: #e4e4e7; box-shadow: var(--shadow); }
.form-route a[aria-current="step"]::after { display: none; }
.form-route span, .form-route a[aria-current="step"] span { color: #71717a; }
.form-section { border-radius: .75rem; }
.section-number { color: #e4e4e7; }
.section-title p { color: #71717a; }
.games-editor fieldset { border-color: var(--line); border-radius: .65rem; }
.games-editor legend { color: #18181b; }
.service-item { background: #fafafa; border-color: var(--line); border-radius: .6rem; }
.service-item > span { color: #71717a; }
.score-dock { inset-inline: 0; color: #18181b; background: rgba(255, 255, 255, .96); border-color: var(--line); backdrop-filter: blur(14px); }
.score-dock > div, .score-dock > div:first-child { border-color: var(--line); }
.score-dock span, .score-dock small { color: #71717a; }
.score-dock b { color: #18181b; }

.settings-card--info { color: #18181b; background: #fafafa; border-color: var(--line); }
.settings-icon, .settings-card--info .settings-icon { color: #18181b; background: #f4f4f5; border-radius: .55rem; }
.settings-card p:not(.eyebrow), .check-list li { color: #71717a; }
.toggle-group { border-color: var(--line); border-radius: .65rem; }
.toggle > span { background: #d4d4d8; border: 0; border-radius: 999px; }
.toggle > span::after { border-radius: 50%; }
.toggle input:checked + span { background: #18181b; }

.announcement { color: #18181b; background: #fff; border: 1px solid var(--line); border-radius: .75rem; box-shadow: none; }
.announcement > div:last-child > p { color: #71717a; }
.announcement-date { color: #fff; background: #18181b; }
.rules-card, .rule-notes article { background: #fff; border-color: var(--line); border-radius: .75rem; }
.formula-grid, .formula-grid > div, .threshold-list span { border-color: var(--line); }
.formula-grid b { color: #18181b; }
.rule-callout { color: #52525b; background: #fafafa; border-color: #18181b; }
.total-row { background: #fafafa; }
.rule-notes li { color: #71717a; }

.flash, .form-error { border: 1px solid; border-radius: .55rem; }
.flash--success { color: #166534; background: #f0fdf4; border-color: #dcfce7; }
.flash--error, .form-error { color: #991b1b; background: #fef2f2; border-color: #fee2e2; }
.flash--info { color: #0c4a6e; background: #f0f9ff; border-color: #e0f2fe; }
.form-error[data-form-error]:focus { outline: 2px solid rgba(153, 27, 27, .28); outline-offset: 3px; }
.empty-state { color: #71717a; }
.archive-form { border-color: var(--line); }
.text-danger { color: #dc2626; }

.login-body { background: #fafafa; }
.login-body::before { display: none; }
.login-shell { display: grid; grid-template-columns: 1fr; min-block-size: 100vh; background: #fafafa; }
.login-brand-panel { display: none; }
.login-form-panel { display: grid; place-items: center; min-block-size: 100vh; padding: 2rem; background: transparent; }
.login-form-wrap { inline-size: min(100%, 25rem); padding: 2rem; background: #fff; border: 1px solid var(--line); border-radius: .85rem; box-shadow: 0 8px 30px rgba(9, 9, 11, .06); }
.login-mark { display: flex; align-items: center; gap: .7rem; margin-block-end: 1.6rem; }
.login-mark img { inline-size: 2.8rem; block-size: 2.8rem; object-fit: cover; object-position: 50% 46%; border-radius: .65rem; filter: grayscale(.28); }
.login-mark span { display: grid; }
.login-mark b { color: #18181b; font-size: .82rem; font-weight: 650; }
.login-mark small { margin-block-start: .15rem; color: #a1a1aa; font-size: .56rem; letter-spacing: .12em; }
.login-form-wrap h1 { margin: .35rem 0 1.8rem; color: #09090b; font: 700 2rem/1.1 "Segoe UI Variable", "Segoe UI", sans-serif; letter-spacing: -.035em; }
.stack-form input { min-block-size: 2.9rem; background: #fff; }
.stack-form .button { min-block-size: 2.9rem; }
input:-webkit-autofill, input:-webkit-autofill:hover, input:-webkit-autofill:focus { -webkit-text-fill-color: #18181b; box-shadow: 0 0 0 1000px #fff inset; transition: background-color 9999s ease-out; }

.error-page { color: #18181b; }
.error-page > span { color: #e4e4e7; }
.error-page-actions { display: flex; flex-wrap: wrap; justify-content: center; gap: .65rem; margin-block-start: 1rem; }
.password-form { background: #fff; }
.nav-scrim { background: rgba(9, 9, 11, .35); backdrop-filter: blur(2px); }

@media (max-width: 78rem) {
  .topbar-inner { gap: 1rem; }
  .nav-stack { gap: 1rem; }
  .global-search { inline-size: 12rem; }
  .evidence-link span { display: none; }
}

@media (max-width: 82rem) {
  .topbar-inner { gap: .75rem; }
  .global-search { display: none; }
}

@media (max-width: 62rem) {
  .topbar-inner { min-block-size: 4.2rem; }
  .brand { min-inline-size: 0; border: 0; padding-inline-start: 0; box-shadow: none; }
  .brand small { display: none; }
  .menu-button { display: grid; order: -1; }
  .sidebar { position: fixed; inset-block: calc(var(--banner-height) + 4.2rem) auto; inset-inline: 1rem; z-index: 80; display: grid; gap: .25rem; inline-size: auto; padding: .55rem; overflow: visible; background: rgba(244, 250, 253, .82); border: 1px solid rgba(255, 255, 255, .78); border-radius: .75rem; box-shadow: 0 18px 50px rgba(7, 37, 65, .2), inset 0 1px 0 rgba(255, 255, 255, .76); transform: translateY(-.75rem) scale(.98); transform-origin: top; opacity: 0; pointer-events: none; transition: transform 160ms ease, opacity 160ms ease; -webkit-backdrop-filter: blur(22px) saturate(1.14); backdrop-filter: blur(22px) saturate(1.14); }
  .sidebar.is-open { transform: none; opacity: 1; pointer-events: auto; }
  .nav-link { min-block-size: 2.7rem; padding-inline: .85rem; border-radius: .5rem; }
  .nav-link:hover, .nav-link.is-active { background: #f4f4f5; }
  .nav-link .icon { display: block; margin-inline-end: .65rem; }
  .global-search { display: none; }
  .page-main { inline-size: min(calc(100% - 2rem), 120rem); }
  .metric-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .dashboard-grid--launch { grid-template-columns: 1fr; }
  .overview-chart, .recent-panel { min-block-size: 0; }
}

@media (max-width: 48rem) {
  .top-banner { padding-inline: 2.7rem; font-size: .68rem; }
  .top-banner__message { max-inline-size: 100%; overflow: hidden; text-overflow: ellipsis; }
  .topbar-inner { inline-size: min(calc(100% - 1.25rem), 120rem); }
  .brand b { max-inline-size: 7.5rem; }
  .evidence-link { display: none; }
  .page-main { inline-size: min(calc(100% - 1.25rem), 120rem); padding-block: 1.6rem 4.5rem; }
  .page-heading { align-items: flex-start; flex-direction: column; }
  .page-heading h1 { font-size: 2rem; }
  .heading-actions { inline-size: 100%; flex-wrap: wrap; }
  .heading-actions .button, .heading-actions .period-control { flex: 1; justify-content: center; }
  .page-tabs { display: flex; overflow-x: auto; }
  .page-tabs a { flex: 0 0 auto; }
  .metric-grid, .record-insights { gap: .65rem; }
  .metric-card { min-block-size: 7.8rem; padding: 1rem; }
  .metric-card strong { font-size: 1.65rem; }
  .record-insights article { min-block-size: 5.8rem; padding: .9rem; }
  .record-insights b { font-size: 1.55rem; }
  .filter-bar { padding: .65rem; }
  .chart-area { grid-template-columns: 2.3rem 1fr; padding-inline: .85rem; }
  .chart-bars { gap: .45rem; padding-inline: .2rem; }
  .chart-bar { min-inline-size: 1.8rem; }
  .chart-bar > span { min-block-size: 13rem; }
  .recent-item { grid-template-columns: auto 1fr auto; }
  .recent-item .status { display: none; }
  .login-form-panel { padding: 1rem; }
  .login-form-wrap { padding: 1.35rem; }
  body, .login-body, .login-shell, .feedback-body, .shared-body, .tracking-body { background-attachment: scroll; }
}

@media (max-width: 30rem) {
  .account-block > .avatar { display: none; }
  .metric-grid, .record-insights { grid-template-columns: 1fr 1fr; }
  .period-control { inline-size: 100%; }
}

/* 2026-08 自检中心信息架构 */
.brand { min-inline-size: 13rem; padding-inline: .55rem .85rem; }
.brand b { font-size: .9rem; letter-spacing: -.015em; }
.nav-stack { gap: .18rem; padding: .24rem; background: #f4f4f5; border-radius: .58rem; }
.nav-link { min-block-size: 2.3rem; padding: .42rem .78rem; border-radius: .43rem; color: #71717a; font-size: .78rem; font-weight: 560; }
.nav-link:hover, .nav-link:focus-visible { color: #27272a; background: rgba(255,255,255,.55); }
.nav-link.is-active { color: #18181b; background: #fff; border-radius: .43rem; box-shadow: 0 1px 3px rgba(9,9,11,.12); }
.settings-button[aria-current="page"] { color: #09090b; background: #f4f4f5; }
.page-heading { margin-block-end: 1.45rem; }
.page-heading h1 { font-size: clamp(1.8rem, 2.4vw, 2.35rem); }
.section-heading { display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin-block-end: .85rem; }
.section-heading h2 { margin: 0; color: #18181b; font-size: .95rem; font-weight: 680; }
.section-heading p { margin: .18rem 0 0; color: #71717a; font-size: .72rem; }
.month-control { display: flex; align-items: center; min-block-size: 2.8rem; padding-inline: .72rem .25rem; background: #fff; border: 1px solid var(--line); border-radius: .52rem; box-shadow: var(--shadow); }
.month-control .icon { inline-size: .95rem; color: #71717a; }
.month-control input { inline-size: 8.6rem; min-block-size: 2.35rem; padding: .35rem .45rem; border: 0; box-shadow: none; font-size: .73rem; }
.month-control button { min-block-size: 2rem; padding-inline: .65rem; color: #27272a; background: #f4f4f5; border: 0; border-radius: .38rem; font-size: .7rem; font-weight: 650; cursor: pointer; }
.overview-context { display: flex; align-items: center; gap: 1rem; margin-block-end: 1.4rem; padding: .8rem 1rem; background: #fafafa; border: 1px solid var(--line); border-radius: .65rem; }
.overview-context > div { display: flex; align-items: baseline; gap: .55rem; }
.overview-context span, .overview-context p { color: #71717a; font-size: .72rem; }
.overview-context b { color: #18181b; font-size: .8rem; }
.overview-context p { margin: 0 0 0 auto; }
.result-board { margin-block-end: 1.25rem; }
.result-board-summary { color: #687983; font-size: .75rem; font-weight: 650; }
.result-verdict-board { overflow: hidden; background: #fff; border: 1px solid #d8e0e4; border-radius: .32rem; }
.result-verdict-groups { display: grid; grid-template-columns: minmax(12rem, 1.3fr) minmax(0, 4fr); min-block-size: 2.1rem; color: #6c7d86; background: #f4f7f8; border-block-end: 1px solid #d8e0e4; font-size: .68rem; font-weight: 700; letter-spacing: .06em; }
.result-verdict-groups > span { display: flex; align-items: center; padding-inline: 1rem; }
.result-verdict-groups > span + span { justify-content: space-between; border-inline-start: 1px solid #d8e0e4; }
.result-verdict-groups b { color: #243f4f; font-size: .72rem; }
.result-verdict-strip { display: grid; grid-template-columns: minmax(12rem, 1.3fr) repeat(4, minmax(0, 1fr)); }
.result-verdict { --verdict-color: #667985; position: relative; min-inline-size: 0; background: #fff; box-shadow: inset 0 3px var(--verdict-color); }
.result-verdict:not(:last-child) { border-inline-end: 1px solid #d8e0e4; }
.result-verdict--passed { --verdict-color: #16835f; background: #f7faf8; }
.result-verdict--retest { --verdict-color: #bd343b; }
.result-verdict--downgrade { --verdict-color: #a07819; }
.result-verdict--training { --verdict-color: #167285; }
.result-verdict--removed { --verdict-color: #642d37; }
.result-verdict-link { display: grid; grid-template-columns: minmax(0, 1fr) auto; grid-template-areas: "order rate" "label rate" "value rate"; align-content: center; gap: .24rem .7rem; min-block-size: 7.4rem; padding: 1rem; color: #142d3c; text-decoration: none; }
.result-verdict-link:hover { background: rgba(19, 56, 78, .035); }
.result-verdict-link:focus-visible, .result-verdict-toggle:focus-visible, .result-people-panel a:focus-visible { position: relative; z-index: 2; outline: 3px solid rgba(22, 114, 133, .28); outline-offset: -3px; }
.result-verdict-order { grid-area: order; color: #8999a1; font: 720 .65rem/1 "Bahnschrift", "Segoe UI", sans-serif; }
.result-verdict-label { grid-area: label; overflow: hidden; color: #213a49; font-size: .88rem; font-weight: 720; text-overflow: ellipsis; white-space: nowrap; }
.result-verdict-link > strong { grid-area: value; display: flex; align-items: baseline; gap: .25rem; margin-block-start: .18rem; color: #142f40; font: 760 2rem/1 "Segoe UI Variable", "Segoe UI", sans-serif; letter-spacing: -.035em; }
.result-verdict--passed .result-verdict-link > strong { color: #126b4e; }
.result-verdict-link > strong small { color: #72818a; font-size: .7rem; font-weight: 650; letter-spacing: 0; }
.result-verdict-rate { grid-area: rate; align-self: center; color: #6b7b84; font: 700 .75rem/1 "Bahnschrift", "Segoe UI", sans-serif; }
.result-verdict-toggle { display: flex; align-items: center; justify-content: space-between; gap: .5rem; inline-size: 100%; min-block-size: 3rem; padding-inline: 1rem; color: #526874; background: transparent; border: 0; border-block-start: 1px solid #e1e7ea; cursor: pointer; font-size: .75rem; font-weight: 680; }
.result-verdict-toggle:hover, .result-verdict.is-active .result-verdict-toggle { color: #17394c; background: #f4f7f8; }
.result-verdict-mark { display: grid; place-items: center; inline-size: 1.1rem; block-size: 1.1rem; color: var(--verdict-color); font-style: normal; }
.result-verdict-mark .icon { grid-area: 1 / 1; inline-size: .9rem; block-size: .9rem; }
.result-verdict-minus { display: none; }
.result-verdict-toggle[aria-expanded="true"] .result-verdict-plus { display: none; }
.result-verdict-toggle[aria-expanded="true"] .result-verdict-minus { display: block; }
.result-panel-stack { border-block-start: 1px solid #d8e0e4; }
.result-people-panel { padding: 1rem; background: #f5f7f8; }
.result-people-panel > header { display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin-block-end: .75rem; }
.result-people-panel > header > div { display: flex; align-items: baseline; gap: .55rem; }
.result-people-panel > header b { color: #203b4b; font-size: .85rem; }
.result-people-panel > header span { color: #72828b; font-size: .7rem; }
.result-people-panel > header a { color: #173f55; font-size: .72rem; font-weight: 700; text-underline-offset: .22rem; }
.result-person-list { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); background: #fff; border: 1px solid #dce3e7; }
.result-person { display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: center; gap: .62rem; min-block-size: 4.2rem; padding: .65rem .75rem; color: #263f4d; text-decoration: none; border-inline-end: 1px solid #e3e8eb; border-block-end: 1px solid #e3e8eb; }
.result-person:nth-child(4n) { border-inline-end: 0; }
.result-person:nth-last-child(-n + 4) { border-block-end: 0; }
.result-person:hover { background: #f7f9fa; }
.result-person .avatar { inline-size: 2rem; block-size: 2rem; }
.result-person > span { display: grid; min-inline-size: 0; }
.result-person b { overflow: hidden; font-size: .75rem; text-overflow: ellipsis; white-space: nowrap; }
.result-person small { overflow: hidden; color: #75858e; font-size: .65rem; text-overflow: ellipsis; white-space: nowrap; }
.result-person-list > p { grid-column: 1 / -1; margin: 0; padding: 1.35rem; color: #788891; text-align: center; font-size: .75rem; }
.level-benchmark { overflow: visible; }
.level-benchmark .panel-heading { display: flex; align-items: center; justify-content: space-between; border-block-end: 1px solid var(--line); }
.benchmark-legend { display: flex; align-items: center; gap: .85rem; color: #71717a; font-size: .62rem; }
.benchmark-legend span { display: flex; align-items: center; gap: .35rem; }
.benchmark-legend i { inline-size: .65rem; block-size: .3rem; background: #18181b; border-radius: 999px; }
.benchmark-legend span:last-child i { inline-size: 2px; block-size: .75rem; background: #ef4444; }
.benchmark { display: grid; grid-template-columns: minmax(7rem, 1fr) 2.5rem 4rem; align-items: center; gap: .65rem; min-inline-size: 15rem; }
.benchmark > span { position: relative; display: block; block-size: .38rem; background: #f4f4f5; border-radius: 999px; }
.benchmark > span i { position: absolute; inset: 0 auto 0 0; inline-size: var(--actual); background: #18181b; border-radius: inherit; }
.benchmark > span em { position: absolute; inset-block: -.28rem; inset-inline-start: var(--target); inline-size: 2px; background: #ef4444; border-radius: 999px; }
.benchmark b { font-size: .78rem; text-align: end; }
.benchmark small { color: #71717a; font-size: .62rem; white-space: nowrap; }

.month-overview { margin-block-end: 1.15rem; }
.month-cards { display: grid; grid-template-columns: repeat(6, minmax(8.5rem, 1fr)); gap: .65rem; overflow-x: auto; padding-block-end: .15rem; }
.month-card { display: grid; min-block-size: 6.4rem; padding: .85rem; color: #27272a; text-decoration: none; background: #fff; border: 1px solid var(--line); border-radius: .65rem; }
.month-card:hover { border-color: #a1a1aa; }
.month-card.is-active { color: #fff; background: #18181b; border-color: #18181b; }
.month-card span { font-size: .65rem; font-weight: 650; }
.month-card strong { margin-block: .35rem; font-size: 1.45rem; line-height: 1; }
.month-card small { margin-block-start: auto; color: #71717a; font-size: .58rem; white-space: nowrap; }
.month-card.is-active small { color: #d4d4d8; }
.record-filter-panel { display: grid; gap: .65rem; margin-block-end: 1rem; padding: .85rem; background: #fafafa; border: 1px solid var(--line); border-radius: .7rem; }
.filter-row { display: grid; grid-template-columns: 3rem 1fr; align-items: center; gap: .65rem; }
.filter-row > span { color: #71717a; font-size: .68rem; font-weight: 650; }
.filter-pills { display: flex; align-items: center; gap: .3rem; overflow-x: auto; }
.filter-pills a { flex: 0 0 auto; padding: .4rem .66rem; color: #71717a; text-decoration: none; border: 1px solid transparent; border-radius: .4rem; font-size: .66rem; font-weight: 560; }
.filter-pills a:hover { color: #27272a; background: #fff; }
.filter-pills a.is-active { color: #18181b; background: #fff; border-color: var(--line); box-shadow: var(--shadow); font-weight: 650; }
.record-search { position: relative; display: grid; grid-template-columns: minmax(12rem, 23rem) auto; justify-content: end; gap: .45rem; padding-block-start: .7rem; border-block-start: 1px solid var(--line); }
.record-search > .icon { position: absolute; inset-inline-start: calc(100% - 25.3rem); inset-block-start: 1.58rem; inline-size: .9rem; color: #a1a1aa; pointer-events: none; }
.record-search input[type="search"] { min-block-size: 2.55rem; padding-inline-start: 2.25rem; }
.record-search .button { min-block-size: 2.55rem; }
.record-search input[type="hidden"] { display: none; }
.record-table-panel .panel-heading { border-block-end: 1px solid var(--line); }

.inspection-workbench { gap: .85rem; padding-block-end: 6rem; }
.entry-meta { display: grid; grid-template-columns: 12rem 1fr; gap: 1.15rem; padding: 1rem; }
.entry-meta-title { display: flex; align-items: flex-start; gap: .7rem; }
.entry-meta-title > span, .entry-index { color: #d4d4d8; font: 720 1.3rem/1 "Segoe UI Variable", sans-serif; }
.entry-meta-title h2 { margin: 0; color: #18181b; font-size: .9rem; }
.entry-meta-title p { margin: .2rem 0 0; color: #71717a; font-size: .65rem; }
.entry-meta-grid { display: grid; grid-template-columns: minmax(10rem, 1.4fr) repeat(3, minmax(7.5rem, 1fr)); gap: .65rem; }
.entry-meta-grid .field { gap: .28rem; }
.entry-meta-grid .field > label { font-size: .65rem; }
.entry-meta-grid input, .entry-meta-grid select { min-block-size: 2.45rem; padding: .48rem .65rem; font-size: .7rem; }
.entry-workspace { display: grid; grid-template-columns: minmax(0, 1fr) minmax(24rem, .9fr); gap: .85rem; align-items: start; }
.entry-score-panel { min-inline-size: 0; }
.entry-score-panel .panel-heading { display: flex; justify-content: space-between; align-items: flex-start; border-block-end: 1px solid var(--line); }
.entry-score-panel .panel-heading > div:first-child { display: grid; grid-template-columns: auto 1fr; grid-template-areas: "index title" "index copy"; gap: 0 .65rem; }
.entry-score-panel .entry-index { grid-area: index; }
.entry-score-panel h2 { grid-area: title; }
.entry-score-panel .panel-heading p { grid-area: copy; }
.live-score { display: grid; grid-template-columns: auto auto; grid-template-areas: "label label" "value note"; align-items: baseline; gap: .1rem .45rem; text-align: end; }
.live-score small { grid-area: label; color: #71717a; font-size: .58rem; }
.live-score b { grid-area: value; color: #09090b; font-size: 1.65rem; line-height: 1; }
.live-score span { grid-area: note; color: #71717a; font-size: .6rem; }
.games-editor--compact { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .75rem; padding: 1rem; }
.games-editor--compact fieldset { padding: .9rem; background: #fafafa; }
.games-editor--compact legend { font-size: .72rem; }
.games-editor--compact legend span { margin-inline-end: .35rem; color: #a1a1aa; font-size: .58rem; letter-spacing: .08em; }
.game-fields { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .55rem; }
.game-fields .field { gap: .3rem; }
.game-fields .field label { font-size: .62rem; }
.game-fields input { min-block-size: 2.55rem; padding: .45rem .55rem; }
.game-fields .field-hint { display: none; }
.score-formula { display: flex; flex-wrap: wrap; gap: .45rem; padding: 0 1rem 1rem; }
.score-formula span { padding: .35rem .5rem; color: #71717a; background: #f4f4f5; border-radius: .35rem; font-size: .58rem; }
.service-editor--compact { grid-template-columns: 1fr; gap: 0; padding: .35rem 1rem .8rem; }
.service-editor--compact .service-item { display: grid; grid-template-columns: 1.7rem 1fr 4.8rem; min-block-size: 2.65rem; padding: .32rem 0; background: transparent; border: 0; border-block-end: 1px solid #f4f4f5; border-radius: 0; }
.service-editor--compact .service-item:last-child { border-block-end: 0; }
.service-editor--compact .service-item label { font-size: .66rem; }
.service-editor--compact .service-item select { min-block-size: 2rem; padding: .3rem .45rem; font-size: .65rem; }
.service-editor--compact .service-item small { display: none; }
.entry-notes { display: grid; grid-template-columns: 12rem 1fr; gap: 1.15rem; padding: 1rem; }
.entry-notes textarea { min-block-size: 2.7rem; resize: vertical; }
.score-dock--workbench { max-inline-size: min(calc(100% - 4rem), 120rem); margin-inline: auto; border: 1px solid var(--line); border-block-end: 0; border-radius: .72rem .72rem 0 0; box-shadow: 0 -8px 30px rgba(9,9,11,.07); }
.score-dock--workbench .dock-name { font-size: .8rem; }

.account-tabs { display: inline-flex; gap: .25rem; margin-block-end: 1rem; padding: .25rem; background: #f4f4f5; border-radius: .55rem; }
.account-tabs a { display: flex; align-items: center; gap: .65rem; padding: .48rem .72rem; color: #71717a; text-decoration: none; border-radius: .4rem; font-size: .72rem; font-weight: 620; }
.account-tabs a small { display: grid; place-items: center; min-inline-size: 1.35rem; block-size: 1.35rem; color: #71717a; background: #e4e4e7; border-radius: 999px; font-size: .58rem; }
.account-tabs a.is-active { color: #18181b; background: #fff; box-shadow: var(--shadow); }
.account-tabs a.is-active small { color: #fff; background: #18181b; }
.account-note { display: flex; align-items: center; gap: .8rem; margin-block-end: 1rem; padding: .8rem 1rem; background: #fafafa; border: 1px solid var(--line); border-radius: .65rem; }
.account-note .settings-icon { flex: 0 0 auto; margin: 0; }
.account-note b { font-size: .75rem; }
.account-note p { margin: .12rem 0 0; color: #71717a; font-size: .65rem; }
.access-label { display: inline-flex; padding: .25rem .5rem; color: #52525b; background: #f4f4f5; border-radius: 999px; font-size: .62rem; font-weight: 650; }
.table-actions { display: flex; align-items: center; gap: .8rem; }

.share-panel { display: flex; align-items: center; gap: 1rem; margin-block-start: 1rem; padding: 1rem; background: #fafafa; border: 1px solid var(--line); border-radius: .72rem; }
.share-panel > div:first-child { display: flex; align-items: center; gap: .75rem; min-inline-size: 20rem; }
.share-panel .settings-icon { flex: 0 0 auto; margin: 0; }
.share-panel h2 { margin: 0; font-size: .82rem; }
.share-panel p { margin: .15rem 0 0; color: #71717a; font-size: .62rem; }
.share-panel > form, .share-panel > .button { margin-inline-start: auto; }
.share-control { display: flex; flex: 1; gap: .45rem; margin-inline-start: auto; }
.share-control input { min-inline-size: 12rem; min-block-size: 2.5rem; font-size: .65rem; }
.share-panel > small { color: #71717a; font-size: .6rem; white-space: nowrap; }

.update-center { position: relative; }
.update-trigger { position: relative; display: inline-flex; align-items: center; gap: .5rem; min-block-size: 2.65rem; padding-inline: .75rem; color: #27272a; background: #fff; border: 1px solid var(--line); border-radius: .5rem; box-shadow: var(--shadow); cursor: pointer; font-size: .7rem; font-weight: 620; }
.update-trigger .icon { inline-size: .9rem; }
.update-trigger b { display: grid; place-items: center; min-inline-size: 1.35rem; block-size: 1.35rem; color: #fff; background: #18181b; border-radius: 999px; font-size: .58rem; }
.update-center.has-unread .update-trigger::after { content: ""; position: absolute; inset-block-start: -.2rem; inset-inline-end: -.2rem; inline-size: .52rem; block-size: .52rem; background: #ef4444; border: 2px solid #fff; border-radius: 50%; }
.update-popover { position: absolute; inset-block-start: calc(100% + .5rem); inset-inline-end: 0; z-index: 40; inline-size: min(24rem, calc(100vw - 2rem)); background: #fff; border: 1px solid var(--line); border-radius: .72rem; box-shadow: 0 20px 55px rgba(9,9,11,.15); overflow: hidden; }
.update-popover[hidden] { display: none; }
.update-popover header { display: flex; align-items: center; justify-content: space-between; padding: .9rem 1rem; background: #fafafa; border-block-end: 1px solid var(--line); }
.update-popover header div { display: grid; }
.update-popover header b { font-size: .75rem; }
.update-popover header small { color: #71717a; font-size: .58rem; }
.update-popover header > span { color: #71717a; font-size: .62rem; }
.update-popover ol { display: grid; gap: 0; margin: 0; padding: .35rem 1rem .65rem; list-style: none; }
.update-popover li { display: grid; grid-template-columns: 1.5rem 1fr; gap: .55rem; padding: .7rem 0; border-block-end: 1px solid #f4f4f5; }
.update-popover li:last-child { border-block-end: 0; }
.update-popover li > span { color: #a1a1aa; font-size: .58rem; }
.update-popover li b { font-size: .7rem; }
.update-popover li p { margin: .12rem 0 0; color: #71717a; font-size: .62rem; }
.rules-grid--clean { margin-block-start: 0; }
.rule-notes--clean { margin-block-start: 1rem; }
.is-new-rule { position: relative; background-color: #fffbea !important; box-shadow: inset 3px 0 #f59e0b; }
.is-new-rule::after { content: "本次更新"; position: absolute; inset-block-start: .55rem; inset-inline-end: .65rem; padding: .18rem .4rem; color: #92400e; background: #fef3c7; border-radius: 999px; font-size: .52rem; font-weight: 700; }

.shared-body { min-block-size: 100vh; background: #f4f4f5; }
.shared-shell { inline-size: min(calc(100% - 2rem), 62rem); margin-inline: auto; padding-block: 1.2rem 3rem; }
.share-safety-dialog { inline-size: min(31rem, calc(100vw - 2rem)); max-inline-size: none; margin: auto; padding: 0; overflow: hidden; color: #eaf5f8; background: #092b46; border: 1px solid rgba(202,231,240,.24); border-radius: .9rem; box-shadow: 0 2rem 5rem rgba(4,21,34,.42), inset 0 1px rgba(255,255,255,.08); }
.share-safety-dialog::backdrop { background: rgba(3,19,31,.76); -webkit-backdrop-filter: blur(7px) saturate(.8); backdrop-filter: blur(7px) saturate(.8); }
.share-safety-dialog > article { position: relative; overflow: hidden; }
.share-safety-dialog > article::before { position: absolute; inset: 0 0 auto; block-size: .25rem; content: ''; background: linear-gradient(90deg, #a83742, #df7378 52%, #a83742); }
.share-safety-dialog header { display: grid; grid-template-columns: auto minmax(0,1fr) auto; align-items: center; gap: .72rem; padding: 1.15rem 1.2rem .9rem; border-block-end: 1px solid rgba(205,233,242,.12); }
.share-safety-dialog header > span { display: grid; place-items: center; inline-size: 2.55rem; block-size: 2.55rem; color: #ffd9dc; background: rgba(192,58,68,.18); border: 1px solid rgba(229,113,120,.28); border-radius: .58rem; }
.share-safety-dialog header > span .icon { inline-size: 1.08rem; }
.share-safety-dialog header > div { min-inline-size: 0; }
.share-safety-dialog header small { display: block; color: #8fb6c5; font-size: .68rem; font-weight: 720; letter-spacing: .1em; }
.share-safety-dialog h2 { margin: .1rem 0 0; color: #fff; font-size: 1.24rem; letter-spacing: -.01em; }
.share-safety-dialog header em { padding: .3rem .48rem; color: #ffd9dc; background: rgba(192,58,68,.2); border: 1px solid rgba(229,113,120,.25); border-radius: 999px; font-size: .68rem; font-style: normal; font-weight: 740; white-space: nowrap; }
.share-safety-dialog__body { display: grid; grid-template-columns: auto minmax(0,1fr); align-items: start; gap: .68rem; margin: 1rem 1.2rem; padding: .82rem; color: #ffe8e9; background: rgba(159,48,58,.17); border: 1px solid rgba(229,113,120,.25); border-inline-start: .24rem solid #d55e66; border-radius: .6rem; }
.share-safety-dialog__body > .icon { inline-size: 1rem; margin-block-start: .08rem; }
.share-safety-dialog__body > div { display: grid; gap: .2rem; }
.share-safety-dialog__body p { margin: 0; font-size: .86rem; font-weight: 760; line-height: 1.55; }
.share-safety-dialog__body small { color: #bdd2da; font-size: .72rem; line-height: 1.55; }
.share-safety-dialog__status { margin: -.28rem 1.2rem .85rem; padding: .52rem .62rem; color: #ffe2e4; background: rgba(181,54,65,.2); border: 1px solid rgba(229,113,120,.25); border-radius: .48rem; font-size: .72rem; font-weight: 690; line-height: 1.5; }
.share-safety-dialog__status[hidden] { display: none; }
.share-safety-dialog footer { display: flex; align-items: center; justify-content: space-between; gap: .7rem; padding: .9rem 1.2rem 1.15rem; background: rgba(3,23,38,.28); border-block-start: 1px solid rgba(205,233,242,.1); }
.share-safety-dialog footer > span { display: inline-flex; align-items: center; gap: .3rem; color: #96bac7; font-size: .7rem; }
.share-safety-dialog footer > span .icon { inline-size: .78rem; }
.share-safety-dialog button { display: inline-flex; align-items: center; justify-content: center; gap: .4rem; min-block-size: 2.8rem; padding: .68rem .88rem; color: #082a45; background: #e7f5f8; border: 1px solid rgba(255,255,255,.5); border-radius: .5rem; box-shadow: 0 .45rem 1rem rgba(1,13,22,.22); cursor: pointer; font: inherit; font-size: .74rem; font-weight: 780; }
.share-safety-dialog button:hover { background: #fff; transform: translateY(-1px); }
.share-safety-dialog button[aria-busy="true"], .share-safety-dialog button:disabled { color: #5f7881; background: #bdd1d6; cursor: wait; transform: none; }
.share-safety-dialog button:focus-visible { outline: 3px solid rgba(217,102,110,.48); outline-offset: 3px; }
.share-safety-dialog button .icon { inline-size: .78rem; }
body.has-share-safety-dialog { overflow: hidden; }
html[data-share-safety-state="pending"], html[data-share-safety-state="pending"] body { overflow: hidden; }
html[data-share-safety-state="pending"] .shared-shell { opacity: 0; pointer-events: none; user-select: none; }
.share-safety-noscript { position: fixed; z-index: 2147483647; inset: 50% auto auto 50%; display: grid; grid-template-columns: auto minmax(0,1fr); align-items: start; gap: .72rem; inline-size: min(28rem, calc(100vw - 2rem)); padding: 1rem; color: #eaf5f8; background: #092b46; border: 1px solid rgba(202,231,240,.24); border-radius: .8rem; box-shadow: 0 2rem 5rem rgba(4,21,34,.42); transform: translate(-50%,-50%); }
.share-safety-noscript > span .icon, .share-safety-noscript > .icon { inline-size: 1rem; color: #ffd9dc; }
.share-safety-noscript h1 { margin: 0 0 .24rem; font-size: 1rem; }
.share-safety-noscript p { margin: 0; color: #bdd2da; font-size: .76rem; line-height: 1.55; }
.shared-brand { display: flex; align-items: center; gap: .65rem; padding: .7rem .85rem; background: #fff; border: 1px solid var(--line); border-radius: .72rem; }
.shared-brand img { inline-size: 2.15rem; block-size: 2.15rem; object-fit: cover; border-radius: .5rem; }
.shared-brand > span { display: grid; }
.shared-brand b { font-size: .78rem; }
.shared-brand small { color: #71717a; font-size: .56rem; }
.shared-brand em { display: flex; align-items: center; gap: .35rem; margin-inline-start: auto; color: #166534; font-size: .62rem; font-style: normal; font-weight: 650; }
.shared-brand em .icon { inline-size: .85rem; }
.shared-hero { display: flex; align-items: flex-end; justify-content: space-between; gap: 1rem; margin-block: .85rem; padding: 1.5rem; color: #fff; background: #18181b; border-radius: .78rem; }
.shared-hero p { margin: 0 0 .45rem; color: #a1a1aa; font-size: .62rem; letter-spacing: .08em; }
.shared-hero h1 { margin: 0; font-size: 2rem; letter-spacing: -.04em; }
.shared-hero > div:first-child > span { display: inline-flex; margin-block-start: .7rem; padding: .25rem .55rem; color: #d4d4d8; background: #27272a; border-radius: 999px; font-size: .62rem; }
.shared-latest { display: grid; grid-template-columns: repeat(2, auto); gap: .55rem 1.2rem; text-align: end; }
.shared-latest .status { grid-column: 1 / -1; justify-self: end; }
.shared-latest > b { display: grid; font-size: 1.35rem; }
.shared-latest small { color: #a1a1aa; font-size: .55rem; font-weight: 500; }
.shared-history { padding: 1.15rem; background: #fff; border: 1px solid var(--line); border-radius: .78rem; }
.expiry-label { display: inline-flex; align-items: center; gap: .4rem; color: #71717a; font-size: .6rem; }
.expiry-label .icon { inline-size: .85rem; }
.shared-record { border-block-start: 1px solid #f4f4f5; }
.shared-record summary { display: grid; grid-template-columns: 1fr auto auto auto; align-items: center; gap: 1rem; padding: .85rem .25rem; list-style: none; cursor: pointer; }
.shared-record summary::-webkit-details-marker { display: none; }
.shared-record summary > span { display: grid; }
.shared-record summary b { font-size: .7rem; }
.shared-record summary small { color: #71717a; font-size: .58rem; }
.shared-record summary > .icon { inline-size: .85rem; color: #a1a1aa; transform: rotate(90deg); }
.shared-record[open] summary > .icon { transform: rotate(-90deg); }
.shared-record-body { display: grid; grid-template-columns: repeat(3, 1fr); gap: .65rem; padding: 0 0 .85rem; }
.shared-record-body > div { display: grid; gap: .18rem; padding: .65rem; background: #fafafa; border-radius: .5rem; }
.shared-record-body span { color: #71717a; font-size: .58rem; }
.shared-record-body b { font-size: .65rem; }
.shared-shell > footer { padding: 1rem; color: #a1a1aa; text-align: center; font-size: .58rem; }
.login-intro { margin: -1.2rem 0 1.5rem; color: #71717a; font-size: .7rem; }
.login-feedback { display: flex; align-items: center; justify-content: center; gap: .45rem; margin-block-start: 1rem; padding-block-start: 1rem; color: #71717a; border-block-start: 1px solid var(--line); text-decoration: none; font-size: .68rem; font-weight: 600; }
.login-feedback:hover { color: #18181b; }
.login-feedback .icon { inline-size: .9rem; }
.feedback-inbox-button { position: relative; display: grid; place-items: center; inline-size: 2.7rem; block-size: 2.7rem; text-decoration: none; }
.feedback-inbox-button[aria-current="page"] { color: #09090b; background: #f4f4f5; }
.feedback-inbox-button > span { position: absolute; inset-block-start: -.25rem; inset-inline-end: -.25rem; display: grid; place-items: center; min-inline-size: 1.15rem; block-size: 1.15rem; padding-inline: .2rem; color: #fff; background: #ef4444; border: 2px solid #fff; border-radius: 999px; font-size: .52rem; font-weight: 750; }

/* Uiverse 深色渐变投诉窗口 */
.feedback-body { min-block-size: 100vh; color: #fff; background: #0d2543 url("/assets/brand/glass-ocean-bg.jpg") center / cover fixed no-repeat; }
.feedback-body::before { display: none; }
.feedback-shell { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 1rem; min-block-size: 100vh; padding: 2rem 1rem; }
.feedback-brand { display: flex; align-items: center; gap: .6rem; inline-size: min(100%, 400px); color: #fff; text-decoration: none; }
.feedback-brand img { inline-size: 2.2rem; block-size: 2.2rem; object-fit: cover; border-radius: .48rem; }
.feedback-brand span { display: grid; }
.feedback-brand b { font-size: .75rem; }
.feedback-brand small { color: #717171; font-size: .52rem; letter-spacing: .1em; }
.form-container { box-sizing: border-box; display: flex; flex-direction: column; gap: 20px; inline-size: min(100%, 400px); padding: 32px 24px; color: white; background: rgba(9, 37, 65, .78); border: 1px solid rgba(255, 255, 255, .56); border-radius: 16px; font-family: inherit; font-size: 14px; }
.form-container button:active { scale: .95; }
.form-container .form { display: flex; flex-direction: column; gap: 20px; }
.form-container .form-group { display: flex; flex-direction: column; gap: 2px; }
.form-container .form-group label { display: block; margin-block-end: 5px; color: #8a8a8a; font-size: 12px; font-weight: 600; }
.form-container .form-group label span { color: #5f5f5f; font-weight: 500; }
.form-container .form-group input, .form-container .form-group textarea { box-sizing: border-box; inline-size: 100%; padding: 12px 16px; color: #fff; background-color: transparent; border: 1px solid #414141; border-radius: 8px; box-shadow: none; font-family: inherit; }
.form-container .form-group textarea { block-size: 112px; resize: none; }
.form-container .form-group input::placeholder, .form-container .form-group textarea::placeholder { color: #717171; opacity: .5; }
.form-container .form-group input:focus, .form-container .form-group textarea:focus { border-color: #7cc7e8; outline: none; box-shadow: 0 0 0 3px rgba(86, 173, 216, .2); }
.form-container .form-submit-btn { display: flex; align-items: center; justify-content: center; align-self: flex-start; gap: 8px; inline-size: 46%; margin-block-start: 8px; padding: 12px 16px; color: #8a8a8a; background: #313131; border: 1px solid #414141; border-radius: 6px; cursor: pointer; font-family: inherit; font-size: inherit; font-weight: 600; transition: color 150ms ease, background-color 150ms ease, border-color 150ms ease, scale 100ms ease; }
.form-container .form-submit-btn:hover { color: #18181b; background-color: #fff; border-color: #fff; }
.form-container .form-submit-btn .icon { inline-size: .95rem; }
.feedback-form-container > header { display: flex; align-items: center; gap: .8rem; }
.feedback-mark { display: grid; place-items: center; inline-size: 2.75rem; block-size: 2.75rem; color: #fff; background: #0a2949; border: 1px solid rgba(255, 255, 255, .34); border-radius: .7rem; }
.feedback-mark .icon { inline-size: 1.25rem; }
.feedback-form-container header p { margin: 0 0 .15rem; color: #717171; font-size: .52rem; letter-spacing: .15em; }
.feedback-form-container header h1 { margin: 0; color: #fff; font-size: 1.45rem; letter-spacing: -.025em; }
.feedback-form-container header small { color: #717171; font-size: .62rem; }
.feedback-types { display: grid; grid-template-columns: repeat(3, 1fr); gap: .45rem; }
.feedback-types label { cursor: pointer; }
.feedback-types input { position: absolute; inline-size: 1px; block-size: 1px; opacity: 0; pointer-events: none; }
.feedback-types span { display: grid; gap: .12rem; min-block-size: 4.2rem; padding: .65rem; background: #292929; border: 1px solid #3b3b3b; border-radius: .5rem; }
.feedback-types b { color: #c6c6c6; font-size: .68rem; }
.feedback-types small { color: #666; font-size: .52rem; line-height: 1.35; }
.feedback-types input:checked + span { background: rgba(19, 58, 93, .82); border-color: #7cc7e8; }
.feedback-types input:checked + span b { color: #fff; }
.feedback-types input:focus-visible + span { outline: 2px solid #40c9ff; outline-offset: 2px; }
.feedback-form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: .65rem; }
.feedback-honeypot { position: absolute; inset-inline-start: -10000px; inline-size: 1px; block-size: 1px; overflow: hidden; }
.feedback-error { display: flex; align-items: center; gap: .5rem; padding: .65rem .75rem; color: #fecaca; background: rgba(127,29,29,.25); border: 1px solid rgba(248,113,113,.35); border-radius: .5rem; font-size: .65rem; }
.feedback-error .icon { inline-size: .9rem; }
.feedback-privacy { margin: 0; color: #555; font-size: .56rem; }
.feedback-success { box-sizing: border-box; display: grid; justify-items: center; inline-size: min(100%, 400px); padding: 2.4rem 1.5rem; color: #fff; text-align: center; background: rgba(9, 37, 65, .78); border: 1px solid rgba(255, 255, 255, .56); border-radius: 16px; }
.feedback-success > span { display: grid; place-items: center; inline-size: 3.4rem; block-size: 3.4rem; color: #111; background: #fff; border-radius: 50%; }
.feedback-success > span .icon { inline-size: 1.4rem; }
.feedback-success > p:first-of-type { margin: 1rem 0 .25rem; color: #8a8a8a; font-size: .65rem; letter-spacing: .12em; }
.feedback-success h1 { margin: 0; font-size: 1.8rem; letter-spacing: .04em; }
.feedback-success > p:last-of-type { max-inline-size: 18rem; margin: .8rem 0 1.2rem; color: #8a8a8a; font-size: .7rem; }
.feedback-success > div { display: flex; gap: .5rem; }
.feedback-success a { padding: .55rem .8rem; color: #bdbdbd; text-decoration: none; background: #313131; border: 1px solid #414141; border-radius: .4rem; font-size: .65rem; }
.feedback-success a:hover { color: #18181b; background: #fff; border-color: #fff; }

/* 管理员工单台 */
.ticket-counts { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: .75rem; margin-block-end: 1rem; }
.ticket-counts article { display: grid; grid-template-columns: 1fr auto; grid-template-areas: "label value" "copy value"; align-items: center; min-block-size: 6.5rem; padding: 1rem; background: #fff; border: 1px solid var(--line); border-radius: .7rem; }
.ticket-counts span { grid-area: label; color: #27272a; font-size: .72rem; font-weight: 650; }
.ticket-counts b { grid-area: value; color: #09090b; font-size: 1.8rem; line-height: 1; }
.ticket-counts small { grid-area: copy; color: #a1a1aa; font-size: .58rem; }
.ticket-filter-panel { margin-block-end: 1rem; }
.ticket-table .panel-heading { border-block-end: 1px solid var(--line); }
.ticket-type { display: inline-flex; align-items: center; min-block-size: 1.7rem; padding: .2rem .52rem; border: 1px solid; border-radius: 999px; font-size: .62rem; font-weight: 680; }
.ticket-type--complaint { color: #9f1239; background: #fff1f2; border-color: #ffe4e6; }
.ticket-type--exception { color: #92400e; background: #fffbeb; border-color: #fef3c7; }
.ticket-type--feedback { color: #075985; background: #f0f9ff; border-color: #e0f2fe; }
.ticket-hero { display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin-block-end: 1rem; padding: 1.2rem 1.35rem; background: #fff; border: 1px solid var(--line); border-radius: .72rem; }
.ticket-hero h2 { margin: .6rem 0 .2rem; font-size: 1.15rem; }
.ticket-hero p { margin: 0; color: #71717a; font-size: .68rem; }
.ticket-detail-grid { display: grid; grid-template-columns: minmax(0, 1.45fr) minmax(20rem, .75fr); gap: .85rem; align-items: start; }
.ticket-content .panel-heading, .ticket-handler .panel-heading { border-block-end: 1px solid var(--line); }
.ticket-message { min-block-size: 12rem; padding: 1.25rem 1.5rem; color: #27272a; font-size: .78rem; line-height: 1.8; }
.ticket-content dl { display: grid; grid-template-columns: repeat(3, 1fr); margin: 0; border-block-start: 1px solid var(--line); }
.ticket-content dl > div { padding: .85rem 1rem; border-inline-end: 1px solid var(--line); }
.ticket-content dl > div:last-child { border-inline-end: 0; }
.ticket-content dt { color: #a1a1aa; font-size: .58rem; }
.ticket-content dd { margin: .2rem 0 0; color: #27272a; font-size: .68rem; }
.ticket-handler-body { display: grid; gap: .85rem; padding: 1rem; }
.ticket-handler-body .button { justify-self: start; }
.ticket-handler-body > small { color: #71717a; font-size: .58rem; }
.shared-shell > footer a { color: #71717a; text-decoration: underline; text-underline-offset: 2px; }

.inspection-code { font-family: "Bahnschrift", "Segoe UI Variable", sans-serif; letter-spacing: .035em; white-space: nowrap; }
.record-action-stack { display: grid; justify-items: start; gap: .35rem; }
.record-feedback-flags { display: flex; flex-wrap: wrap; gap: .2rem; }
.record-feedback-flag { padding: .15rem .38rem; color: #52525b; background: #f4f4f5; border: 1px solid #e4e4e7; border-radius: .25rem; font-size: .52rem; font-style: normal; font-weight: 700; line-height: 1.2; }
.record-feedback-flag--complaint { color: #9f1239; background: #fff1f2; border-color: #ffe4e6; }
.record-feedback-flag--exception { color: #92400e; background: #fffbeb; border-color: #fef3c7; }
.record-feedback-flag--feedback { color: #075985; background: #f0f9ff; border-color: #e0f2fe; }
.inspection-code-badge { display: inline-flex; padding: .28rem .52rem; color: #334155; background: #f1f5f9; border: 1px solid #e2e8f0; border-radius: .35rem; font: 700 .62rem/1 "Bahnschrift", sans-serif; letter-spacing: .06em; }
.inspection-detail-layout { display: grid; grid-template-columns: minmax(0, 1fr) 19.5rem; gap: .9rem; align-items: start; }
.inspection-detail-main { min-inline-size: 0; }
.inspection-result-revisions { --revision-color: #557481; margin-block: .9rem; overflow: hidden; background: #f7fafb; border-color: #bdcfd7; box-shadow: 0 14px 34px rgba(15, 52, 69, .07); }
.inspection-result-revisions > header { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: .85rem 1rem; background: linear-gradient(105deg, #f7fbfc, #eaf3f6); border-block-end: 1px solid #cbdbe2; }
.inspection-result-revisions > header > div { display: grid; gap: .08rem; min-inline-size: 0; }
.inspection-result-revisions > header small { color: #527787; font: 760 .68rem/1.2 "Bahnschrift", "Segoe UI", sans-serif; letter-spacing: .12em; }
.inspection-result-revisions > header h2 { margin: 0; color: #153b4f; font-size: .98rem; }
.inspection-result-revisions > header p { margin: 0; color: #617985; font-size: .72rem; line-height: 1.5; }
.inspection-result-revisions > header > b { flex: 0 0 auto; padding: .38rem .62rem; color: #eaf8ff; background: #173f54; border-radius: 999px; font-size: .72rem; }
.result-revision-incomplete { display: flex; align-items: center; gap: .55rem; margin: .7rem .8rem 0; padding: .65rem .75rem; color: #704d14; background: #fff8e8; border: 1px solid #ead5a4; border-radius: .5rem; }
.result-revision-incomplete > .icon { flex: 0 0 auto; inline-size: 1rem; color: #a66c0c; }
.result-revision-incomplete > span { display: grid; gap: .06rem; }
.result-revision-incomplete b, .result-revision-incomplete small { font-size: .72rem; line-height: 1.45; }
.result-revision-incomplete small { color: #826b40; }
.inspection-result-revisions > ol { display: flex; gap: .65rem; margin: 0; padding: .85rem; overflow-x: auto; overscroll-behavior-inline: contain; list-style: none; }
.result-revision-node { --revision-color: #557481; display: grid; flex: 1 1 14.5rem; grid-template-rows: 1.65rem minmax(0, 1fr); min-inline-size: 13.5rem; max-inline-size: 20rem; }
.result-revision-node[data-result="passed"] { --revision-color: #087a55; }
.result-revision-node[data-result="downgrade"] { --revision-color: #bb3038; }
.result-revision-node[data-result="retest"] { --revision-color: #a94d17; }
.result-revision-node[data-result="training"] { --revision-color: #9a650c; }
.result-revision-node[data-result="removed"] { --revision-color: #6d2432; }
.result-revision-anchor { position: relative; display: flex; align-items: center; gap: .38rem; min-inline-size: 0; }
.result-revision-anchor::after { position: absolute; z-index: 0; inset: calc(50% - 1px) -.65rem auto 2.85rem; block-size: 2px; content: ""; background: #bfd0d7; }
.result-revision-node:last-child .result-revision-anchor::after { display: none; }
.result-revision-anchor span, .result-revision-anchor i { position: relative; z-index: 1; }
.result-revision-anchor span { display: inline-grid; place-items: center; min-inline-size: 2rem; block-size: 1.2rem; padding-inline: .3rem; color: #426676; background: #eef4f6; border: 1px solid #c8d8df; border-radius: 999px; font: 780 .68rem/1 "Bahnschrift", "Segoe UI", sans-serif; letter-spacing: .06em; }
.result-revision-anchor i { inline-size: .58rem; block-size: .58rem; background: var(--revision-color); border: 3px solid #fff; border-radius: 50%; box-shadow: 0 0 0 1px var(--revision-color); }
.result-revision-node > article { position: relative; display: grid; grid-template-rows: auto auto 1fr auto; min-block-size: 12.4rem; overflow: hidden; background: #fff; border: 1px solid #d5e1e6; border-block-start: 4px solid var(--revision-color); border-radius: .58rem; box-shadow: 0 8px 20px rgba(17, 54, 70, .06); }
.result-revision-node.is-current > article { border-color: color-mix(in srgb, var(--revision-color) 58%, #d5e1e6); box-shadow: 0 10px 24px color-mix(in srgb, var(--revision-color) 13%, transparent); }
.result-revision-node > article > header { display: flex; align-items: center; flex-wrap: wrap; gap: .35rem; min-block-size: 2.65rem; padding: .55rem .62rem; background: #f7fafb; border-block-end: 1px solid #e0e9ec; }
.result-revision-node > article > header > span { color: #365768; font-size: .72rem; font-weight: 800; }
.inspection-result-revisions .result-revision-node .status { font-size: .72rem; }
.result-revision-node > article > header > em { margin-inline-start: auto; padding: .18rem .38rem; color: var(--revision-color); background: color-mix(in srgb, var(--revision-color) 9%, #fff); border: 1px solid color-mix(in srgb, var(--revision-color) 27%, #fff); border-radius: 999px; font-size: .72rem; font-style: normal; font-weight: 780; }
.result-revision-initial, .result-revision-transition { margin: 0; }
.result-revision-initial { display: grid; align-content: center; gap: .12rem; min-block-size: 4rem; padding: .7rem; background: color-mix(in srgb, var(--revision-color) 5%, #fff); }
.result-revision-initial small { color: #718791; font-size: .72rem; }
.result-revision-initial strong { color: var(--revision-color); font-size: .9rem; }
.result-revision-transition { display: grid; grid-template-columns: minmax(0, 1fr) 1.25rem minmax(0, 1fr); align-items: center; gap: .28rem; min-block-size: 4rem; padding: .7rem; }
.result-revision-transition del, .result-revision-transition ins { padding: .42rem .48rem; overflow-wrap: anywhere; border-radius: .34rem; font-size: .74rem; font-weight: 760; text-align: center; text-decoration: none; }
.result-revision-transition del { color: #5c6e77; background: #edf2f4; }
.result-revision-transition ins { color: var(--revision-color); background: color-mix(in srgb, var(--revision-color) 9%, #fff); }
.result-revision-transition .icon { inline-size: .8rem; color: #75909b; }
.result-revision-node > article > footer { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: .65rem; margin-block-start: auto; padding: .65rem .7rem; background: #fbfcfd; border-block-start: 1px solid #e3eaed; }
.result-revision-signer { display: flex; align-items: center; gap: .4rem; min-inline-size: 0; }
.result-revision-signer > .icon { flex: 0 0 auto; inline-size: .92rem; color: var(--revision-color); }
.result-revision-signer > span, .result-revision-node time { display: grid; gap: .04rem; min-inline-size: 0; }
.result-revision-signer b, .result-revision-signer small, .result-revision-node time small, .result-revision-node time b { overflow-wrap: anywhere; font-size: .72rem; line-height: 1.35; }
.result-revision-signer b, .result-revision-node time b { color: #294b5b; }
.result-revision-signer small, .result-revision-node time small { color: #7b8f98; }
.result-revision-signer em { color: #66808c; font-size: .72rem; font-style: normal; font-weight: 650; }
.result-revision-node time { font-style: normal; text-align: end; }
.result-revision-node[data-revision-actor-known="false"] .result-revision-signer { color: #8d5c12; }
.result-revision-node[data-revision-actor-known="false"] .result-revision-signer > .icon { color: #a66c0c; }
.result-revision-gap { display: flex; align-items: center; gap: .35rem; padding: .48rem .65rem; color: #79520f; background: #fff8e8; border-block-start: 1px solid #ead5a4; }
.result-revision-gap .icon { flex: 0 0 auto; inline-size: .8rem; }
.result-revision-gap span { font-size: .72rem; line-height: 1.4; }
.inspection-result-revisions > footer { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: .55rem; padding: .7rem .85rem; color: #315567; background: #edf4f6; border-block-start: 1px solid #cfdee4; }
.inspection-result-revisions > footer > .icon { inline-size: 1rem; color: #1c718f; }
.inspection-result-revisions > footer > span { display: grid; gap: .04rem; }
.inspection-result-revisions > footer b, .inspection-result-revisions > footer small { font-size: .72rem; line-height: 1.4; }
.inspection-result-revisions > footer small { color: #6d838e; }
.inspection-result-revisions > footer .status { font-size: .72rem; }
@media (max-width: 600px) {
  .inspection-result-revisions > header { align-items: flex-start; flex-direction: column; padding: .78rem; }
  .inspection-result-revisions > header > b { align-self: flex-start; }
  .result-revision-incomplete { align-items: flex-start; margin: .65rem .65rem 0; }
  .inspection-result-revisions > ol { display: grid; gap: 0; padding: .72rem .65rem; overflow: visible; }
  .result-revision-node { display: grid; grid-template-columns: 2.35rem minmax(0, 1fr); grid-template-rows: auto; gap: .42rem; min-inline-size: 0; max-inline-size: none; padding-block-end: .7rem; }
  .result-revision-node:last-child { padding-block-end: 0; }
  .result-revision-anchor { align-items: center; flex-direction: column; min-block-size: 100%; padding-block-start: .18rem; }
  .result-revision-anchor::after { inset: 2rem auto -.7rem 50%; inline-size: 2px; block-size: auto; transform: translateX(-50%); }
  .result-revision-node > article { min-block-size: 0; }
  .result-revision-node > article > header { align-items: flex-start; }
  .result-revision-node > article > header > em { margin-inline-start: 0; }
  .result-revision-node > article > footer { grid-template-columns: 1fr; }
  .result-revision-node time { text-align: start; }
  .inspection-result-revisions > footer { grid-template-columns: auto minmax(0, 1fr); align-items: start; }
  .inspection-result-revisions > footer .status { grid-column: 2; justify-self: start; }
}
.record-side-rail { position: sticky; inset-block-start: 5.65rem; display: grid; gap: .75rem; }
.record-lock-card { display: flex; gap: .75rem; padding: 1rem; color: #e8f0f6; background: #12324d; border: 1px solid #12324d; border-radius: .72rem; }
.record-lock-card > span { display: grid; place-items: center; flex: 0 0 auto; inline-size: 2.2rem; block-size: 2.2rem; color: #9dc6df; background: rgba(255,255,255,.08); border-radius: .5rem; }
.record-lock-card .icon { inline-size: 1rem; }
.record-lock-card div { display: grid; min-inline-size: 0; }
.record-lock-card small { color: #91a9ba; font-size: .56rem; letter-spacing: .1em; }
.record-lock-card b { margin-block: .12rem; color: #fff; font-size: .78rem; }
.record-lock-card p { margin: 0; color: #b9c8d2; font-size: .61rem; line-height: 1.5; }
.record-feedback-panel { overflow: hidden; background: #fff; border: 1px solid var(--line); border-radius: .72rem; }
.record-feedback-panel > header { display: flex; align-items: center; justify-content: space-between; padding: .9rem 1rem; border-block-end: 1px solid var(--line); }
.record-feedback-panel > header div { display: grid; }
.record-feedback-panel > header small { color: #94a3b8; font-size: .52rem; letter-spacing: .14em; }
.record-feedback-panel > header h2 { margin: .1rem 0 0; font-size: .82rem; }
.record-feedback-panel > header > b { display: grid; place-items: center; inline-size: 1.65rem; block-size: 1.65rem; color: #fff; background: #12324d; border-radius: 50%; font-size: .64rem; }
.feedback-request-button { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: .65rem; margin: .75rem; padding: .72rem; color: #fff; text-decoration: none; background: #12324d; border-radius: .55rem; }
.feedback-request-button > .icon { inline-size: 1rem; color: #afd5e9; }
.feedback-request-button > span { display: grid; }
.feedback-request-button b { font-size: .7rem; }
.feedback-request-button small { color: #a9bdca; font-size: .54rem; }
.feedback-request-button:hover { background: #183e5e; }
.record-ticket-list { display: grid; }
.record-ticket { border-block-start: 1px solid #f4f4f5; }
.record-ticket summary { position: relative; display: grid; gap: .38rem; padding: .75rem 2rem .75rem .8rem; list-style: none; cursor: pointer; }
.record-ticket summary::-webkit-details-marker { display: none; }
.record-ticket summary > span { display: flex; gap: .25rem; }
.record-ticket summary > b { overflow: hidden; color: #27272a; font-size: .66rem; text-overflow: ellipsis; white-space: nowrap; }
.record-ticket summary > .icon { position: absolute; inset-inline-end: .75rem; inset-block-start: 50%; inline-size: .75rem; color: #a1a1aa; transform: translateY(-50%) rotate(90deg); }
.record-ticket[open] summary > .icon { transform: translateY(-50%) rotate(-90deg); }
.record-ticket > div { padding: 0 .8rem .8rem; }
.record-ticket p { margin: 0; max-block-size: 8rem; overflow: auto; color: #52525b; font-size: .62rem; line-height: 1.65; }
.record-ticket small { display: block; margin-block: .45rem; color: #a1a1aa; font-size: .52rem; }
.record-feedback-empty { display: grid; gap: .12rem; padding: 1rem; text-align: center; }
.record-feedback-empty span { color: #71717a; font-size: .64rem; }
.record-feedback-empty small { color: #a1a1aa; font-size: .54rem; }
.share-panel--side { align-items: stretch; flex-direction: column; margin-block-start: 0; padding: .9rem; }
.share-panel--side > div:first-child { align-items: flex-start; min-inline-size: 0; }
.share-panel--side > form { inline-size: 100%; margin-inline-start: 0; }
.share-panel--side .share-control { flex-direction: column; inline-size: 100%; margin-inline-start: 0; }
.share-panel--side .share-control input { min-inline-size: 0; inline-size: 100%; }
.share-panel--side > small { white-space: normal; }

/* 48h 双人同室：两个独立入口，一条可追溯的沟通时间轴。 */
.ip-alert-entry { position: relative; display: inline-flex; align-items: center; gap: .38rem; min-block-size: 2.65rem; padding: .45rem .62rem; color: #385568; text-decoration: none; background: rgba(248,252,254,.76); border: 1px solid rgba(85,126,156,.2); border-radius: .5rem; font-size: .65rem; font-weight: 750; box-shadow: inset 0 1px rgba(255,255,255,.85); }
.ip-alert-entry .icon { inline-size: .86rem; }
.ip-alert-entry > b { display: grid; place-items: center; min-inline-size: 1.3rem; block-size: 1.3rem; padding-inline: .24rem; color: #607784; background: rgba(215,230,237,.78); border-radius: 999px; font: 780 .56rem/1 "Bahnschrift", sans-serif; }
.ip-alert-entry.has-alert { color: #8b252b; background: rgba(255,237,239,.92); border-color: rgba(166,55,60,.36); box-shadow: 0 .35rem 1rem rgba(130,39,45,.1), inset 0 1px #fff; animation: ip-alert-pulse 2.8s ease-in-out infinite; }
.ip-alert-entry.has-alert > b { color: #fff; background: #aa343b; }
.ip-alert-entry[aria-current="page"] { outline: 2px solid rgba(38,110,145,.16); }
@keyframes ip-alert-pulse { 0%, 70%, 100% { box-shadow: 0 .35rem 1rem rgba(130,39,45,.08), inset 0 1px #fff; } 82% { box-shadow: 0 0 0 .25rem rgba(171,53,60,.1), 0 .35rem 1rem rgba(130,39,45,.15), inset 0 1px #fff; } }

.share-room-panel { background: linear-gradient(145deg, rgba(242,250,253,.92), rgba(230,243,249,.72)); border-color: rgba(80,137,165,.25); }
.share-seat-stack { display: grid; gap: .55rem; }
.share-seat-control { display: grid; gap: .42rem; padding: .62rem; background: rgba(255,255,255,.7); border: 1px solid rgba(105,151,174,.22); border-radius: .55rem; box-shadow: inset 0 1px rgba(255,255,255,.92); }
.share-seat-control > header { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: .42rem; }
.share-seat-control > header > span { padding: .18rem .34rem; color: #2b647e; background: rgba(208,235,246,.78); border-radius: 999px; font-size: .49rem; font-weight: 780; }
.share-seat-control > header b { overflow: hidden; color: #153c51; font-size: .7rem; text-overflow: ellipsis; white-space: nowrap; }
.share-seat-control > header small, .share-seat-control > small { color: #778b95; font-size: .52rem; }
.share-seat-control .share-control { flex-direction: row; }
.share-seat-control .share-control input { min-inline-size: 0; }
.share-room-note { display: grid; grid-template-columns: auto 1fr; gap: .55rem; padding: .62rem; color: #31586c; background: rgba(214,238,247,.6); border-radius: .5rem; }
.share-room-note > .icon { inline-size: .9rem; margin-block-start: .1rem; }
.share-room-note > span { display: grid; gap: .1rem; }
.share-room-note b { font-size: .64rem; }
.share-room-note small { color: #68818e; font-size: .53rem; line-height: 1.55; }
.chat-archive-link { justify-content: space-between; }

.public-share-grid { display: grid; grid-template-columns: minmax(18rem, .8fr) minmax(0, 1.2fr); gap: .85rem; margin-block-end: .85rem; }
.public-rules-card { overflow: hidden; background: rgba(248,252,254,.82); border: 1px solid rgba(85,126,156,.18); border-radius: .78rem; box-shadow: 0 .7rem 1.8rem rgba(10,53,78,.06), inset 0 1px rgba(255,255,255,.9); backdrop-filter: blur(18px) saturate(125%); }
.public-rules-card > header { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: .65rem; padding: .82rem; color: #fff; background: linear-gradient(135deg, #0b304b, #195f78); }
.public-rules-card > header > span { display: grid; place-items: center; inline-size: 2.1rem; block-size: 2.1rem; color: #bde6f5; background: rgba(255,255,255,.09); border: 1px solid rgba(255,255,255,.12); border-radius: .5rem; }
.public-rules-card > header .icon { inline-size: 1rem; }
.public-rules-card > header small { color: #accbda; font-size: .5rem; letter-spacing: .1em; }
.public-rules-card > header h2 { margin: .06rem 0 0; font-size: .82rem; }
.public-rules-card > header em { color: #d9f4fd; font-size: .52rem; font-style: normal; font-weight: 730; }
.public-level-rules { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin: 0; padding: .62rem; list-style: none; }
.public-level-rules li { display: grid; gap: .08rem; padding: .42rem; border-inline-end: 1px solid rgba(99,139,159,.14); border-block-end: 1px solid rgba(99,139,159,.14); }
.public-level-rules li:nth-child(3n) { border-inline-end: 0; }
.public-level-rules span { color: #6a818d; font-size: .49rem; }
.public-level-rules b { color: #183f54; font-size: .64rem; }
.public-score-rules { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: .42rem; margin: 0; padding: 0 .62rem .62rem; }
.public-score-rules > div { padding: .48rem; background: rgba(226,241,247,.52); border-radius: .42rem; }
.public-score-rules dt { color: #1f536d; font-size: .54rem; font-weight: 780; }
.public-score-rules dd { margin: .13rem 0 0; color: #657c87; font-size: .5rem; line-height: 1.5; }
.public-rules-card > footer { display: grid; grid-template-columns: auto 1fr; gap: .42rem; padding: .62rem .75rem; color: #5d7683; background: rgba(230,241,246,.6); font-size: .51rem; line-height: 1.55; }
.public-rules-card > footer .icon { inline-size: .8rem; color: #287c85; }

.public-service-verdict { display: inline-flex; align-items: center; gap: .38rem; min-inline-size: 0; padding: .34rem .48rem; color: #86621c; background: rgba(255,244,211,.15); border: 1px solid rgba(255,220,144,.24); border-radius: .42rem; text-align: start; }
.public-service-verdict > i { flex: 0 0 auto; inline-size: .45rem; block-size: .45rem; background: currentColor; border-radius: 50%; box-shadow: 0 0 0 .18rem rgba(255,255,255,.08); }
.public-service-verdict > span { display: grid; min-inline-size: 0; }
.public-service-verdict b { color: inherit !important; font-size: .64rem !important; }
.public-service-verdict small { color: inherit !important; font-size: .48rem !important; opacity: .78; }
.public-service-verdict.is-passed { color: #57c9a1; background: rgba(39,139,107,.13); border-color: rgba(87,201,161,.25); }
.public-service-verdict.is-failed { color: #ff969a; background: rgba(172,50,57,.14); border-color: rgba(255,150,154,.25); }
.shared-record .public-service-verdict { margin-block-start: .2rem; color: #33735f; background: rgba(224,244,237,.72); border-color: rgba(51,115,95,.16); }
.shared-record .public-service-verdict.is-failed { color: #a0373d; background: rgba(255,235,237,.8); }

.public-chat-room, .admin-chat-panel { overflow: hidden; margin-block: .85rem; background: rgba(248,252,254,.8); border: 1px solid rgba(78,126,153,.2); border-radius: .82rem; box-shadow: 0 1rem 2.5rem rgba(10,51,76,.08), inset 0 1px rgba(255,255,255,.9); backdrop-filter: blur(20px) saturate(125%); }
.public-chat-heading, .admin-chat-hero { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: 1rem; color: #fff; background: linear-gradient(135deg, #082b49, #155f78); border-radius: .82rem; box-shadow: 0 .75rem 1.7rem rgba(10,49,72,.12); }
.public-chat-heading > div, .admin-chat-hero > div { display: flex; align-items: center; gap: .68rem; min-inline-size: 0; }
.public-chat-heading > div > span, .admin-chat-hero > div > span { display: grid; place-items: center; flex: 0 0 auto; inline-size: 2.4rem; block-size: 2.4rem; color: #c6effb; background: rgba(255,255,255,.1); border: 1px solid rgba(255,255,255,.14); border-radius: .58rem; }
.public-chat-heading .icon, .admin-chat-hero .icon { inline-size: 1.1rem; }
.public-chat-heading small, .admin-chat-hero small { color: #a9cbd9; font-size: .52rem; }
.public-chat-heading h2, .admin-chat-hero h2 { margin: .05rem 0; font-size: .94rem; }
.public-chat-heading p, .admin-chat-hero p { margin: 0; color: #c5dce5; font-size: .56rem; }
.public-chat-heading time, .admin-chat-hero time { flex: 0 0 auto; padding: .42rem .55rem; color: #d7f5ff; background: rgba(255,255,255,.09); border: 1px solid rgba(255,255,255,.14); border-radius: .44rem; font: 700 .57rem/1.2 "Bahnschrift", sans-serif; }
.public-chat-heading time.is-urgent, .admin-chat-hero time.is-urgent { color: #ffe6ad; border-color: rgba(255,211,113,.35); }
.chat-seat-rail { display: flex; align-items: center; gap: .8rem; padding: .62rem .85rem; color: #57717e; background: rgba(224,240,247,.66); border-block-end: 1px solid rgba(88,135,158,.15); }
.chat-seat-rail > span { display: inline-flex; align-items: center; gap: .28rem; font-size: .54rem; }
.chat-seat-rail i { inline-size: .46rem; block-size: .46rem; background: #2b8e76; border-radius: 50%; box-shadow: 0 0 0 .17rem rgba(43,142,118,.12); }
.chat-seat-rail .is-partner i { background: #5d88bd; box-shadow: 0 0 0 .17rem rgba(93,136,189,.12); }
.chat-seat-rail .is-inspector i { background: #d09b41; box-shadow: 0 0 0 .17rem rgba(208,155,65,.14); }
.chat-seat-rail em { margin-inline-start: auto; color: #315a6e; font-size: .5rem; font-style: normal; font-weight: 730; }
.chat-timeline { display: grid; gap: .68rem; max-block-size: 34rem; margin: 0; padding: 1rem; overflow-y: auto; overscroll-behavior: contain; list-style: none; scroll-behavior: smooth; }
.chat-message { display: grid; grid-template-columns: 4.2rem minmax(0,1fr); align-items: start; gap: .55rem; }
.chat-message-seat { padding-block-start: .45rem; color: #67808c; font-size: .5rem; font-weight: 730; text-align: end; }
.chat-message article { justify-self: start; max-inline-size: min(38rem, 88%); padding: .62rem .72rem; background: rgba(255,255,255,.88); border: 1px solid rgba(85,126,156,.17); border-inline-start: 3px solid #2b8e76; border-radius: .12rem .62rem .62rem .62rem; box-shadow: 0 .28rem .8rem rgba(20,66,91,.045); }
.chat-message.is-partner article { border-inline-start-color: #5d88bd; }
.chat-message.is-inspector article { border-inline-start-color: #d09b41; background: rgba(255,249,232,.82); }
.chat-message article header { display: flex; align-items: baseline; justify-content: space-between; gap: 1rem; }
.chat-message article header b { color: #173f54; font-size: .62rem; }
.chat-message article time { color: #82939b; font-size: .47rem; }
.chat-message article p { margin: .3rem 0 0; color: #3f5d6c; font-size: .62rem; line-height: 1.65; overflow-wrap: anywhere; }
.chat-empty { display: grid; place-items: center; gap: .2rem; min-block-size: 10rem; color: #718791; text-align: center; }
.chat-empty[hidden] { display: none; }
.chat-empty .icon { inline-size: 1.25rem; color: #6e9caf; }
.chat-empty b { font-size: .68rem; }
.chat-empty small { font-size: .52rem; }
.chat-composer { display: grid; gap: .42rem; padding: .85rem; background: rgba(226,241,247,.62); border-block-start: 1px solid rgba(85,126,156,.16); }
.chat-composer label { color: #234d62; font-size: .59rem; font-weight: 760; }
.chat-composer textarea { inline-size: 100%; min-block-size: 5.5rem; resize: vertical; color: #193b4d; background: rgba(255,255,255,.84); border-color: rgba(94,139,161,.3); }
.chat-composer > div { display: flex; align-items: center; justify-content: space-between; gap: .8rem; }
.chat-composer > div small { color: #71858f; font-size: .5rem; }
.chat-submit-status { min-inline-size: 4.5rem; color: #607985; font-size: .68rem; font-weight: 700; text-align: end; }
.chat-submit-status.is-success { color: #17785a; }
.chat-submit-status.is-error { color: #a6373c; }
.chat-composer[aria-busy="true"] textarea { opacity: .76; }
.chat-expired-state { display: grid; grid-template-columns: auto 1fr; align-items: center; gap: .6rem; padding: .85rem 1rem; color: #526c79; background: rgba(230,239,243,.72); border-block-start: 1px solid rgba(85,126,156,.14); }
.chat-expired-state .icon { inline-size: 1rem; }
.chat-expired-state span { display: grid; gap: .12rem; }
.chat-expired-state b { font-size: .65rem; }
.chat-expired-state small { font-size: .51rem; }

.admin-chat-hero { margin-block-end: .85rem; }
.admin-chat-hero h2 { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

.chat-room-command { display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin-block-end: .7rem; padding: 1rem; color: #fff; background: linear-gradient(135deg,#082b49,#155f78); border-radius: .78rem; box-shadow: 0 .8rem 1.8rem rgba(10,49,72,.12); }
.chat-room-command > div { display: flex; align-items: center; gap: .68rem; }
.chat-room-command > div > span { display: grid; place-items: center; inline-size: 2.5rem; block-size: 2.5rem; background: rgba(255,255,255,.1); border-radius: .55rem; }
.chat-room-command .icon { inline-size: 1.05rem; }
.chat-room-command small { color: #accbd9; font-size: .5rem; }
.chat-room-command h2 { margin: .04rem 0; font-size: .9rem; }
.chat-room-command p { margin: 0; color: #c1dbe5; font-size: .54rem; }
.chat-room-command nav { display: flex; gap: .38rem; }
.chat-room-command nav a { display: inline-flex; align-items: center; gap: .28rem; padding: .46rem .62rem; color: #c8e2eb; text-decoration: none; background: rgba(255,255,255,.07); border: 1px solid rgba(255,255,255,.12); border-radius: .42rem; font-size: .55rem; font-weight: 700; }
.chat-room-command nav a.is-active { color: #092b47; background: #e4f5fb; border-color: #e4f5fb; }
.chat-room-command nav .icon { inline-size: .72rem; }
.chat-ip-policy { display: grid; grid-template-columns: auto 1fr; gap: .55rem; margin-block-end: .7rem; padding: .7rem .82rem; color: #785c29; background: rgba(255,247,222,.8); border: 1px solid rgba(167,126,48,.2); border-radius: .55rem; }
.chat-ip-policy > .icon { inline-size: .92rem; }
.chat-ip-policy p { display: grid; gap: .12rem; margin: 0; }
.chat-ip-policy b { font-size: .58rem; }
.chat-ip-policy span { color: #8b764e; font-size: .51rem; line-height: 1.5; }
.chat-room-list { display: grid; gap: .52rem; }
.chat-room-row { overflow: hidden; background: rgba(248,252,254,.78); border: 1px solid rgba(85,126,156,.18); border-radius: .62rem; box-shadow: 0 .35rem 1rem rgba(17,61,84,.04), inset 0 1px #fff; }
.chat-room-row > a { display: grid; grid-template-columns: auto minmax(12rem,1fr) auto minmax(8rem,auto) auto; align-items: center; gap: .7rem; padding: .75rem; color: inherit; text-decoration: none; }
.chat-room-state { display: grid; place-items: center; inline-size: 2rem; block-size: 2rem; color: #3c758d; background: rgba(218,239,247,.75); border-radius: .45rem; }
.chat-room-state .icon { inline-size: .86rem; }
.chat-room-people { display: grid; min-inline-size: 0; }
.chat-room-people small, .chat-room-meta small, .chat-room-expiry small { color: #7d9099; font-size: .48rem; }
.chat-room-people b { overflow: hidden; color: #183f53; font-size: .67rem; text-overflow: ellipsis; white-space: nowrap; }
.chat-room-people i { color: #7c95a1; font-style: normal; }
.chat-room-people span { color: #617b87; font-size: .51rem; }
.chat-room-meta, .chat-room-expiry { display: grid; }
.chat-room-meta b { color: #1b536c; font: 780 .88rem/1 "Bahnschrift",sans-serif; }
.chat-room-expiry b { color: #426372; font-size: .58rem; }
.chat-room-action { display: inline-flex; align-items: center; gap: .3rem; color: #2b6782; font-size: .55rem; font-weight: 720; }
.chat-room-action .icon { inline-size: .72rem; }
.chat-room-row > footer { display: flex; align-items: center; justify-content: space-between; gap: .65rem; padding: .5rem .75rem; color: #8b2b31; background: rgba(255,235,237,.78); border-block-start: 1px solid rgba(168,50,57,.14); }
.chat-room-row > footer > span { display: flex; align-items: center; gap: .32rem; }
.chat-room-row > footer .icon { inline-size: .76rem; }
.chat-room-row > footer b { font-size: .55rem; }
.chat-room-row > footer small { color: #946c70; font-size: .48rem; }
.chat-room-row > footer button { padding: .32rem .46rem; color: #8b2b31; background: rgba(255,255,255,.65); border: 1px solid rgba(168,50,57,.2); border-radius: .36rem; cursor: pointer; font: inherit; font-size: .5rem; font-weight: 720; }
.chat-room-row > footer em { color: #8d7274; font-size: .49rem; font-style: normal; }

@media (max-width: 48rem) {
  .share-safety-dialog { inline-size: calc(100vw - 1rem); border-radius: .72rem; }
  .share-safety-dialog header { grid-template-columns: auto minmax(0,1fr); padding: 1rem .88rem .8rem; }
  .share-safety-dialog header em { grid-column: 2; justify-self: start; }
  .share-safety-dialog__body { margin: .8rem .88rem; padding: .72rem; }
  .share-safety-dialog__status { margin-inline: .88rem; }
  .share-safety-dialog footer { align-items: stretch; flex-direction: column; padding: .8rem .88rem 1rem; }
  .share-safety-dialog button { inline-size: 100%; min-block-size: 3rem; }
  .ip-alert-entry > span { display: none; }
  .public-share-grid { grid-template-columns: 1fr; }
  .public-chat-heading, .admin-chat-hero, .chat-room-command { align-items: stretch; flex-direction: column; }
  .public-chat-heading time, .admin-chat-hero time { align-self: flex-start; }
  .chat-message { grid-template-columns: 3.4rem minmax(0,1fr); gap: .38rem; }
  .chat-message article { max-inline-size: 100%; }
  .chat-composer > div { align-items: stretch; flex-direction: column; }
  .chat-composer .button { inline-size: 100%; }
  .chat-room-command nav { inline-size: 100%; }
  .chat-room-command nav a { flex: 1; justify-content: center; }
  .chat-room-row > a { grid-template-columns: auto minmax(0,1fr) auto; }
  .chat-room-meta { grid-column: 2; grid-row: 2; display: flex; gap: .25rem; }
  .chat-room-expiry { grid-column: 2 / -1; grid-row: 3; }
  .chat-room-action { grid-column: 3; grid-row: 1 / 3; }
  .chat-room-row > footer { align-items: flex-start; flex-direction: column; }
  .share-seat-control .share-control { flex-direction: column; }
  .public-level-rules { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .public-level-rules li:nth-child(3n) { border-inline-end: 1px solid rgba(99,139,159,.14); }
  .public-level-rules li:nth-child(2n) { border-inline-end: 0; }
  .public-score-rules { grid-template-columns: 1fr; }
}
.inspection-danger-zone {
  position: relative;
  overflow: hidden;
  display: grid;
  gap: .8rem;
  padding: .9rem;
  background: linear-gradient(145deg, rgba(255, 255, 255, .82), rgba(255, 241, 242, .7));
  border: 1px solid rgba(166, 55, 60, .2);
  border-radius: .72rem;
  box-shadow: 0 .55rem 1.4rem rgba(69, 27, 31, .06), inset 0 1px rgba(255, 255, 255, .88);
  backdrop-filter: blur(18px) saturate(125%);
}
.inspection-danger-zone::before {
  content: '';
  position: absolute;
  inset: 0 auto 0 0;
  inline-size: 3px;
  background: linear-gradient(180deg, rgba(166, 55, 60, .2), #a6373c 48%, rgba(166, 55, 60, .18));
}
.inspection-danger-zone__copy { display: grid; grid-template-columns: auto 1fr; align-items: center; gap: .68rem; min-inline-size: 0; }
.inspection-danger-zone__copy > span { display: grid; place-items: center; inline-size: 2.15rem; block-size: 2.15rem; color: #9f3439; background: rgba(255, 255, 255, .64); border: 1px solid rgba(166, 55, 60, .14); border-radius: .52rem; box-shadow: inset 0 1px rgba(255, 255, 255, .9); }
.inspection-danger-zone__copy .icon { inline-size: .92rem; }
.inspection-danger-zone__copy > div { display: grid; gap: .1rem; min-inline-size: 0; }
.inspection-danger-zone__copy small { color: #9f3439; font-size: .52rem; font-weight: 720; letter-spacing: .12em; }
.inspection-danger-zone__copy h2 { margin: 0; color: #54272a; font-size: .82rem; }
.inspection-danger-zone__copy p { margin: 0; color: #7d6062; font-size: .57rem; line-height: 1.55; }
.inspection-danger-zone form { display: grid; gap: .42rem; margin: 0; }
.inspection-delete-button { display: inline-flex; align-items: center; justify-content: center; gap: .38rem; inline-size: 100%; min-block-size: 2.4rem; padding: .55rem .72rem; color: #9f3439; background: rgba(255, 255, 255, .64); border: 1px solid rgba(166, 55, 60, .26); border-radius: .5rem; cursor: pointer; font: inherit; font-size: .62rem; font-weight: 760; letter-spacing: .02em; box-shadow: inset 0 1px rgba(255, 255, 255, .92); transition: color .18s ease, background-color .18s ease, border-color .18s ease, box-shadow .18s ease, transform .18s ease; }
.inspection-delete-button .icon { inline-size: .78rem; }
.inspection-delete-button:hover { color: #7f252b; background: rgba(255, 232, 234, .9); border-color: rgba(166, 55, 60, .42); box-shadow: 0 .38rem .9rem rgba(124, 37, 43, .08), inset 0 1px rgba(255, 255, 255, .9); transform: translateY(-1px); }
.inspection-delete-button:active { transform: translateY(0); }
.inspection-delete-button:focus-visible { outline: 3px solid rgba(166, 55, 60, .2); outline-offset: 2px; }
.archive-form--side { margin: 0; padding: .6rem; text-align: center; border: 1px solid #fee2e2; border-radius: .6rem; }
.shared-inspection-code { margin-block: 0 .8rem !important; color: #fff !important; background: #2d4e67 !important; border: 1px solid rgba(255,255,255,.12); border-radius: .3rem !important; font: 750 .72rem/1 "Bahnschrift", sans-serif !important; letter-spacing: .08em; }
.shared-hero > div:first-child > small { display: inline-flex; color: #aebbc4; font-size: .62rem; }
.shared-record.is-linked-record { margin-inline: -.45rem; padding-inline: .45rem; background: #f5f9fc; border-inline-start: 3px solid #12324d; }
.shared-feedback-card { position: relative; display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin-block-end: .85rem; overflow: hidden; padding: 1rem 1.05rem 1rem 1.2rem; background: linear-gradient(135deg, rgba(255,250,250,.96), rgba(237,247,251,.94)); border: 1px solid rgba(153,55,64,.28); border-radius: .75rem; box-shadow: 0 .55rem 1.35rem rgba(74,37,49,.08), inset 0 1px rgba(255,255,255,.96); }
.shared-feedback-card::before { position: absolute; inset: 0 auto 0 0; inline-size: .28rem; content: ''; background: linear-gradient(#9e3c46, #c56a70); }
.shared-feedback-card > div { display: flex; align-items: center; gap: .78rem; min-inline-size: 0; }
.shared-feedback-card > div > span { display: grid; place-items: center; flex: 0 0 auto; inline-size: 2.65rem; block-size: 2.65rem; color: #8f313b; background: rgba(255,255,255,.86); border: 1px solid rgba(158,60,70,.2); border-radius: .58rem; box-shadow: inset 0 1px #fff; }
.shared-feedback-card .icon { inline-size: 1.08rem; }
.shared-feedback-card > div > div { min-inline-size: 0; }
.shared-feedback-card h2 { margin: .08rem 0 .14rem; color: #352f39; font-size: 1rem; letter-spacing: .02em; }
.shared-feedback-card p { margin: 0; color: #5f6973; font-size: .72rem; line-height: 1.6; }
.shared-feedback-card em { display: block; margin-block-start: .16rem; color: #85767b; font-size: .68rem; font-style: normal; }
.shared-feedback-card > a { display: inline-flex; align-items: center; justify-content: center; gap: .42rem; flex: 0 0 auto; min-block-size: 2.75rem; padding: .68rem .86rem; color: #fff; text-decoration: none; background: linear-gradient(135deg, #7f2933, #a6444d); border: 1px solid rgba(99,27,36,.26); border-radius: .52rem; box-shadow: 0 .42rem 1rem rgba(111,33,43,.18), inset 0 1px rgba(255,255,255,.15); font-size: .74rem; font-weight: 760; }
.shared-feedback-card > a:hover { background: linear-gradient(135deg, #72232c, #943640); transform: translateY(-1px); }
.shared-feedback-card > a:focus-visible { outline: 3px solid rgba(158,60,70,.22); outline-offset: 3px; }
.shared-feedback-card > a .icon { inline-size: .82rem; }
.feedback-inspection-context { display: grid; grid-template-columns: 1fr auto; grid-template-areas: "label code" "copy code"; align-items: center; gap: .1rem .75rem; padding: .72rem .8rem; background: #292929; border: 1px solid #414141; border-radius: .55rem; }
.feedback-inspection-context span { grid-area: label; color: #8a8a8a; font-size: .58rem; }
.feedback-inspection-context b { grid-area: code; color: #fff; font: 750 .82rem/1 "Bahnschrift", sans-serif; letter-spacing: .06em; }
.feedback-inspection-context small { grid-area: copy; color: #666; font-size: .55rem; }
.evidence-link-guide { display: flex; align-items: flex-start; gap: .6rem; padding: .7rem; color: #94a3b8; background: #1c2730; border: 1px solid #304451; border-radius: .55rem; }
.evidence-link-guide > span { display: grid; place-items: center; flex: 0 0 auto; inline-size: 1.75rem; block-size: 1.75rem; color: #7dd3fc; background: rgba(125,211,252,.08); border-radius: .4rem; }
.evidence-link-guide .icon { inline-size: .82rem; }
.evidence-link-guide b { color: #d9e7ee; font-size: .62rem; }
.evidence-link-guide p { margin: .2rem 0 0; color: #8fa3af; font-size: .56rem; line-height: 1.6; }
.inspection-reference { display: grid; color: #18181b; text-decoration: none; }
.inspection-reference b { font-family: "Bahnschrift", sans-serif; letter-spacing: .04em; }
.inspection-reference small { color: #71717a; font-size: .58rem; }
.inspection-reference.is-unlinked { color: #71717a; }
.inspection-reference.is-unlinked b { font-family: inherit; letter-spacing: 0; }
.ticket-hero-tags { display: flex; gap: .35rem; }
.ticket-inspection-link { display: grid; min-inline-size: 12rem; padding: .75rem .9rem; color: #fff; text-decoration: none; background: #12324d; border-radius: .55rem; }
.ticket-inspection-link small { color: #9fb4c1; font-size: .53rem; letter-spacing: .08em; }
.ticket-inspection-link b { margin-block: .12rem; font: 750 .86rem/1 "Bahnschrift", sans-serif; letter-spacing: .06em; }
.ticket-inspection-link span { display: flex; align-items: center; gap: .3rem; color: #c7d3da; font-size: .57rem; }
.ticket-inspection-link .icon { inline-size: .7rem; }
.ticket-inspection-link.is-unlinked { background: #52525b; }
.ticket-handler { position: sticky; inset-block-start: 5.65rem; }
.standard-index { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin-block-end: .85rem; background: #fff; border: 1px solid #dbe2e7; border-radius: .72rem; overflow: hidden; }
.standard-index a { display: grid; grid-template-columns: auto 1fr; grid-template-areas: "index title" "index copy"; align-items: center; gap: .12rem .65rem; min-block-size: 4.5rem; padding: .8rem 1rem; color: #1f2933; text-decoration: none; border-inline-end: 1px solid #e7ecef; }
.standard-index a:last-child { border-inline-end: 0; }
.standard-index a:hover { background: #f6f9fa; }
.standard-index span { grid-area: index; color: #9aacb8; font: 750 1.05rem/1 "Bahnschrift", sans-serif; }
.standard-index b { grid-area: title; font-size: .72rem; }
.standard-index small { grid-area: copy; color: #80909b; font-size: .56rem; }
.standard-sheet { margin-block-end: .9rem; background: #fff; border: 1px solid #d9e1e6; border-radius: .8rem; overflow: hidden; scroll-margin-top: 6rem; }
.standard-sheet-heading { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 1rem; min-block-size: 6.4rem; padding: 1.1rem 1.35rem; color: #fff; background: #12324d; }
.standard-sheet-heading > span { color: #7ea5bb; font: 750 2.2rem/1 "Bahnschrift", sans-serif; }
.standard-sheet-heading div { display: grid; }
.standard-sheet-heading small { color: #8faabd; font-size: .53rem; letter-spacing: .14em; }
.standard-sheet-heading h2 { margin: .12rem 0; color: #fff; font-size: 1.25rem; }
.standard-sheet-heading p { margin: 0; color: #b7c8d2; font-size: .63rem; }
.standard-sheet-heading em { padding: .35rem .55rem; color: #dce7ed; background: rgba(255,255,255,.08); border: 1px solid rgba(255,255,255,.1); border-radius: .35rem; font-size: .58rem; font-style: normal; font-weight: 700; }
.standard-sheet--service .standard-sheet-heading { background: #1a3c56; }
.technical-rule-layout { display: grid; grid-template-columns: minmax(18rem, .75fr) minmax(30rem, 1.25fr); }
.technical-formulas { display: grid; align-content: start; padding: 1rem; background: #f5f8fa; border-inline-end: 1px solid #dfe7eb; }
.technical-formulas article { display: grid; grid-template-columns: 5.5rem 1fr; grid-template-areas: "label value" "label copy"; align-items: center; min-block-size: 5.1rem; padding: .8rem; border-block-end: 1px solid #dfe7eb; }
.technical-formulas article:last-child { border-block-end: 0; }
.technical-formulas span { grid-area: label; color: #7f97a6; font: 700 .55rem/1 "Bahnschrift", sans-serif; letter-spacing: .1em; }
.technical-formulas b { grid-area: value; color: #142d40; font-size: 1.05rem; }
.technical-formulas p { grid-area: copy; margin: .18rem 0 0; color: #71838f; font-size: .6rem; }
.standard-level-table > div:first-child { display: flex; justify-content: space-between; align-items: center; padding: .8rem 1rem; border-block-end: 1px solid #e8edef; }
.standard-level-table > div:first-child b { font-size: .72rem; }
.standard-level-table > div:first-child small { color: #82919b; font-size: .56rem; }
.standard-level-table th { background: #f8fafb; }
.standard-level-table td { padding-block: .72rem; }
.standard-level-table td:first-child { display: flex; align-items: center; gap: .55rem; }
.standard-level-table td:first-child span { color: #9baab4; font: 700 .55rem/1 "Bahnschrift", sans-serif; }
.standard-level-table td strong { color: #12324d; font-size: .95rem; }
.standard-decisions { display: grid; grid-template-columns: 1.25fr 1fr 1fr; border-block-start: 1px solid #dfe7eb; }
.standard-decisions > span { position: relative; display: grid; gap: .16rem; padding: .85rem 1rem; background: #f8fafb; border-inline-end: 1px solid #dfe7eb; }
.standard-decisions > span:last-child { border-inline-end: 0; }
.standard-decisions small { color: #81909a; font-size: .54rem; }
.standard-decisions b { color: #273946; font-size: .64rem; }
.service-rule-layout { display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(16rem, .62fr); }
.service-standard-table { min-inline-size: 0; }
.service-standard-table td:first-child { inline-size: 4rem; color: #9aa9b3; font: 700 .58rem/1 "Bahnschrift", sans-serif; }
.service-standard-table td:last-child { inline-size: 6rem; text-align: end; }
.service-standard-table tr:nth-child(even):not(.service-total) { background: #fafcfd; }
.service-standard-table .service-total { color: #fff; background: #12324d; }
.service-standard-table .service-total td { border-color: rgba(255,255,255,.1); }
.service-verdicts { position: relative; display: grid; align-content: start; gap: .6rem; padding: 1rem; background: #f5f8fa; border-inline-start: 1px solid #dfe7eb; }
.service-verdict { display: grid; grid-template-columns: 1fr auto; grid-template-areas: "label value" "status value"; align-items: center; padding: .7rem .8rem; background: #fff; border: 1px solid #dfe7eb; border-radius: .55rem; }
.service-verdict small { grid-area: label; color: #94a3ad; font-size: .5rem; letter-spacing: .1em; }
.service-verdict b { grid-area: value; color: #173348; font: 750 1.25rem/1 "Bahnschrift", sans-serif; }
.service-verdict span { grid-area: status; color: #536774; font-size: .62rem; }
.service-verdict--pass { border-inline-start: 3px solid #16835f; }
.service-verdict--training { border-inline-start: 3px solid #d97706; }
.service-verdict--remove { border-inline-start: 3px solid #dc2626; }
.service-verdicts > p { margin: .2rem 0 0; padding: .7rem .75rem; color: #60737f; background: #e9f0f4; border-radius: .45rem; font-size: .58rem; line-height: 1.55; }
.standard-notes-grid { display: grid; grid-template-columns: minmax(18rem, .7fr) minmax(0, 1.3fr); gap: .9rem; }
.standard-notes-grid > article { position: relative; min-inline-size: 0; background: #fff; border: 1px solid #d9e1e6; border-radius: .8rem; overflow: hidden; scroll-margin-top: 6rem; }
.standard-notes-grid header { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: .8rem; padding: 1rem 1.1rem; color: #fff; background: #12324d; }
.standard-notes-grid header > span { color: #84a8bd; font: 750 1.55rem/1 "Bahnschrift", sans-serif; }
.standard-notes-grid header small { color: #8faabd; font-size: .5rem; letter-spacing: .12em; }
.standard-notes-grid header h2 { margin: .1rem 0 0; color: #fff; font-size: .95rem; }
.standard-notes-grid header > b { color: #d8e4ea; font-size: .58rem; }
.void-standard > div { display: grid; padding: .8rem 1rem 1rem; }
.void-standard p { display: grid; grid-template-columns: 2rem 1fr; align-items: center; min-block-size: 3.2rem; margin: 0; border-block-end: 1px solid #e7ecef; }
.void-standard p:last-child { border-block-end: 0; }
.void-standard p span { color: #9aabb5; font: 700 .55rem/1 "Bahnschrift", sans-serif; }
.void-standard p b { color: #2d3f4b; font-size: .66rem; }
.supplement-standard ol { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); margin: 0; padding: .7rem 1rem 1rem; list-style: none; }
.supplement-standard li { display: grid; grid-template-columns: 2rem 1fr; gap: .35rem; align-items: start; padding: .72rem .45rem; border-block-end: 1px solid #e7ecef; }
.supplement-standard li:nth-last-child(-n+2) { border-block-end: 0; }
.supplement-standard li span { color: #9aabb5; font: 700 .55rem/1 "Bahnschrift", sans-serif; }
.supplement-standard li p { margin: 0; color: #566975; font-size: .63rem; line-height: 1.6; }
.standard-decisions .is-new-rule, .service-verdicts.is-new-rule, .standard-notes-grid .is-new-rule { background-color: #fff9e9 !important; box-shadow: inset 3px 0 #f59e0b; }
.standard-decisions .is-new-rule::after, .service-verdicts.is-new-rule::after, .standard-notes-grid .is-new-rule::after { inset-block-start: .4rem; inset-inline-end: .45rem; font-size: .48rem; }

@media (max-width: 78rem) {
  .nav-stack { gap: .1rem; }
  .nav-link { padding-inline: .55rem; }
  .result-person-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .result-person:nth-child(4n) { border-inline-end: 1px solid #e3e8eb; }
  .result-person:nth-child(2n) { border-inline-end: 0; }
  .result-person:nth-last-child(-n + 4) { border-block-end: 1px solid #e3e8eb; }
  .result-person:nth-last-child(-n + 2) { border-block-end: 0; }
  .entry-meta-grid { grid-template-columns: repeat(3, minmax(7rem, 1fr)); }
  .field--player { grid-column: span 2; }
  .entry-workspace { grid-template-columns: 1fr; }
  .service-editor--compact { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 1rem; }
  .ticket-detail-grid { grid-template-columns: 1fr; }
  .inspection-detail-layout { grid-template-columns: 1fr; }
  .record-side-rail, .ticket-handler { position: static; }
}

@media (max-width: 62rem) {
  .sidebar { gap: .25rem; padding: .55rem; background: #fff; }
  .nav-link { min-block-size: 2.7rem; padding-inline: .85rem; }
  .result-verdict-groups { display: none; }
  .result-verdict-strip { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .result-verdict { border-block-end: 1px solid #d8e0e4; }
  .result-verdict--passed { grid-column: 1 / -1; border-inline-end: 0; }
  .result-verdict:nth-child(2n) { border-inline-end: 1px solid #d8e0e4; }
  .result-verdict:nth-child(3), .result-verdict:nth-child(5) { border-inline-end: 0; }
  .result-verdict:nth-last-child(-n + 2) { border-block-end: 0; }
  .month-cards { grid-template-columns: repeat(6, 9.5rem); }
  .entry-meta, .entry-notes { grid-template-columns: 1fr; }
  .score-dock--workbench { max-inline-size: calc(100% - 2rem); }
  .technical-rule-layout, .service-rule-layout, .standard-notes-grid { grid-template-columns: 1fr; }
  .technical-formulas { border-inline-end: 0; border-block-end: 1px solid #dfe7eb; }
  .service-verdicts { border-inline-start: 0; border-block-start: 1px solid #dfe7eb; }
}

@media (max-width: 48rem) {
  .result-verdict-link { min-block-size: 6.6rem; padding: .8rem; }
  .result-verdict-label { font-size: .875rem; }
  .result-verdict-link > strong { font-size: 1.75rem; }
  .result-verdict-toggle { padding-inline: .8rem; }
  .result-people-panel { padding: .75rem; }
  .result-person-list { grid-template-columns: 1fr; }
  .result-person, .result-person:nth-child(2n), .result-person:nth-child(4n) { border-inline-end: 0; }
  .result-person:nth-last-child(-n + 2) { border-block-end: 1px solid #e3e8eb; }
  .result-person:last-child { border-block-end: 0; }
  .overview-context { align-items: flex-start; flex-direction: column; gap: .25rem; }
  .overview-context p { margin-inline-start: 0; }
  .benchmark { min-inline-size: 13rem; }
  .filter-row { grid-template-columns: 1fr; gap: .3rem; }
  .record-search { grid-template-columns: 1fr auto; justify-content: stretch; }
  .record-search > .icon { inset-inline-start: .75rem; }
  .entry-meta-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .field--player { grid-column: 1 / -1; }
  .games-editor--compact { grid-template-columns: 1fr; }
  .service-editor--compact { grid-template-columns: 1fr; }
  .score-dock--workbench { max-inline-size: calc(100% - 1.25rem); gap: .45rem; padding-inline: .55rem; }
  .score-dock--workbench > div:first-child { display: none; }
  .share-panel { align-items: stretch; flex-direction: column; }
  .share-panel > div:first-child { min-inline-size: 0; }
  .share-control { inline-size: 100%; margin-inline-start: 0; }
  .share-panel > small { white-space: normal; }
  .shared-hero { align-items: flex-start; flex-direction: column; }
  .shared-latest { inline-size: 100%; text-align: start; }
  .shared-latest .status { justify-self: start; }
  .shared-record summary { grid-template-columns: 1fr auto auto; gap: .6rem; }
  .shared-record summary > span:nth-child(2) { grid-column: 1 / -1; grid-row: 2; display: flex; gap: .7rem; }
  .shared-record summary > .status { grid-column: 2; grid-row: 1; }
  .shared-record summary > .icon { grid-column: 3; grid-row: 1; }
  .shared-record-body { grid-template-columns: 1fr; }
  .shared-feedback-card, .ticket-hero { align-items: stretch; flex-direction: column; }
  .shared-feedback-card { padding: .88rem .82rem .82rem 1rem; }
  .shared-feedback-card > div { align-items: flex-start; }
  .shared-feedback-card > div > span { inline-size: 2.35rem; block-size: 2.35rem; }
  .shared-feedback-card > a { justify-content: center; inline-size: 100%; min-block-size: 3rem; }
  .ticket-inspection-link { min-inline-size: 0; }
  .feedback-shell { justify-content: flex-start; padding-block: 1.25rem; }
  .form-container { padding: 24px 18px; }
  .feedback-form-grid { grid-template-columns: 1fr; }
  .feedback-types { grid-template-columns: 1fr; }
  .feedback-types span { min-block-size: 0; }
  .form-container .form-submit-btn { inline-size: 100%; }
  .ticket-counts { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .55rem; }
  .ticket-counts article { min-block-size: 5.5rem; padding: .8rem; }
  .ticket-content dl { grid-template-columns: 1fr; }
  .ticket-content dl > div { border-inline-end: 0; border-block-end: 1px solid var(--line); }
  .ticket-content dl > div:last-child { border-block-end: 0; }
  .standard-index { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .standard-index a:nth-child(2) { border-inline-end: 0; }
  .standard-index a:nth-child(-n+2) { border-block-end: 1px solid #e7ecef; }
  .standard-sheet-heading { grid-template-columns: auto 1fr; min-block-size: 5.5rem; padding: .9rem 1rem; }
  .standard-sheet-heading em { display: none; }
  .technical-formulas article { grid-template-columns: 4.5rem 1fr; }
  .standard-decisions { grid-template-columns: 1fr; }
  .standard-decisions > span { border-inline-end: 0; border-block-end: 1px solid #dfe7eb; }
  .standard-decisions > span:last-child { border-block-end: 0; }
  .supplement-standard ol { grid-template-columns: 1fr; }
  .supplement-standard li:nth-last-child(2) { border-block-end: 1px solid #e7ecef; }
}

@media (prefers-reduced-motion: reduce) {
  .top-banner, .sidebar, .chart-bar i { transition: none; }
}

/* 2026-08 裁决工作台 */
.nav-link > span { position: relative; display: inline-flex; align-items: center; gap: .35rem; white-space: nowrap; }
.nav-unread-dot { display: inline-block; inline-size: .42rem; block-size: .42rem; background: #cf2f36; border: 2px solid #fff; border-radius: 50%; box-shadow: 0 0 0 1px rgba(207,47,54,.12); }
.result-status.status--danger { color: #5b4d2d; background: #f5f0e3; }
.result-status.status--danger i { background: #a68026; }

/* 总览：六张等级裁决卡 */
.level-benchmark-cards { margin-block-start: 1.25rem; }
.level-benchmark-cards .benchmark-legend i { inline-size: .75rem; block-size: .35rem; background: #1595a5; border-radius: 999px; }
.level-benchmark-cards .benchmark-legend span:last-child i { inline-size: 2px; block-size: .85rem; background: #c69a2d; }
.level-stat-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .72rem; }
.level-stat-card { min-inline-size: 0; padding: .9rem; background: #fff; border: 1px solid #dbe3e8; border-radius: .72rem; box-shadow: 0 5px 18px rgba(12,35,50,.035); }
.level-stat-card > header { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: .65rem; margin-block-end: .8rem; }
.level-stat-card > header > span { color: #9aaab5; font: 760 .62rem/1 "Bahnschrift", sans-serif; }
.level-stat-card > header > div { display: grid; }
.level-stat-card h3 { margin: 0; color: #132d40; font-size: .84rem; }
.level-stat-card header small { color: #82919b; font-size: .55rem; }
.level-stat-card header strong { display: grid; color: #12324d; font: 760 1.25rem/1 "Bahnschrift", sans-serif; text-align: end; }
.level-stat-card header strong small { margin-block-start: .18rem; font-family: "Segoe UI Variable", "Segoe UI", sans-serif; font-weight: 600; }
.level-stat-score { display: grid; gap: .38rem; margin-block: .62rem; }
.level-stat-score > div:first-child { display: grid; grid-template-columns: 1fr auto auto; align-items: baseline; gap: .42rem; }
.level-stat-score span { color: #6e808b; font-size: .58rem; }
.level-stat-score b { color: #168f9f; font: 760 .88rem/1 "Bahnschrift", sans-serif; }
.level-stat-score small { color: #a07819; font-size: .55rem; }
.level-stat-scale { position: relative; block-size: .45rem; background: #edf2f4; border-radius: 999px; }
.level-stat-scale i { position: absolute; inset: 0 auto 0 0; inline-size: var(--technical-actual); background: linear-gradient(90deg, #197f90, #24a9b8); border-radius: inherit; }
.level-stat-scale em { position: absolute; inset-block: -.3rem; inset-inline-start: var(--technical-standard); inline-size: 2px; background: #c69a2d; border-radius: 99px; box-shadow: 0 0 0 2px #fff; }
.level-stat-scale--service i { inline-size: var(--service-actual); }
.level-stat-scale--service em { inset-inline-start: var(--service-standard); }
.level-stat-card > footer { display: flex; align-items: center; justify-content: space-between; gap: .55rem; margin-block-start: .72rem; padding-block-start: .62rem; color: #74848e; border-block-start: 1px solid #edf1f3; font-size: .54rem; }
.level-stat-card > footer b { color: #304a5c; font-size: .59rem; }

/* 自检列表与处罚执行状态 */
.processing-state { display: inline-flex; align-items: center; gap: .42rem; min-inline-size: max-content; color: #5c6d77; font-size: .61rem; }
.processing-state > .icon { inline-size: .82rem; }
.processing-state > span { display: grid; }
.processing-state b { font-size: .63rem; }
.processing-state small { margin-block-start: .12rem; color: #8997a0; font-size: .52rem; }
.processing-state--pending { color: #c42f37; }
.processing-state--pending small { color: #9e5a5e; }
.processing-state--done { color: #167285; }
.processing-state--none { color: #8b979e; }
.processing-summary { display: flex; gap: .45rem; }
.processing-summary span { display: inline-flex; align-items: baseline; gap: .32rem; padding: .5rem .68rem; color: #50636f; background: #fff; border: 1px solid #dce3e7; border-radius: .45rem; font-size: .62rem; }
.processing-summary b { color: #18364b; font-size: .86rem; }
.processing-summary .is-pending { color: #a92d34; border-color: #edc6c9; background: #fff8f8; }
.processing-summary .is-pending b { color: #c42f37; }
.processing-filters { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .75rem 1.25rem; }
.processing-filters .filter-row { grid-template-columns: 2.8rem 1fr; }
.processing-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .78rem; }
.processing-card { min-inline-size: 0; overflow: hidden; background: #fff; border: 1px solid #dbe3e8; border-radius: .72rem; }
.processing-card.is-pending { border-color: #e9bfc2; box-shadow: inset 3px 0 #ca3139; }
.processing-card-head { display: flex; align-items: flex-start; justify-content: space-between; gap: .75rem; padding: .85rem 1rem; background: #f7fafb; border-block-end: 1px solid #e7edf0; }
.processing-card-head > a { display: grid; min-inline-size: 0; color: #152f42; text-decoration: none; }
.processing-card-head > a span { color: #718590; font: 720 .56rem/1 "Bahnschrift", sans-serif; letter-spacing: .07em; }
.processing-card-head > a b { margin-block: .22rem .1rem; overflow: hidden; font-size: .83rem; text-overflow: ellipsis; white-space: nowrap; }
.processing-card-head > a small { color: #82919b; font-size: .56rem; }
.processing-card-head > div { display: flex; align-items: center; gap: .38rem; }
.processing-card-head strong { padding: .25rem .42rem; color: #b2252d; background: #fff; border: 1px solid #e9bfc2; border-radius: .32rem; font-size: .54rem; }
.processing-score { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin: 0; padding: .78rem 1rem; border-block-end: 1px solid #edf1f3; }
.processing-score > div { display: grid; gap: .15rem; padding-inline: .7rem; border-inline-end: 1px solid #edf1f3; }
.processing-score > div:first-child { padding-inline-start: 0; }
.processing-score > div:last-child { padding-inline-end: 0; border-inline-end: 0; }
.processing-score dt { color: #7b8b94; font-size: .54rem; }
.processing-score dd { margin: 0; color: #19364a; font-size: .72rem; font-weight: 700; }
.processing-score dd small { margin-inline-start: .18rem; color: #8b979e; font-size: .5rem; font-weight: 500; }
.processing-form { display: grid; grid-template-columns: 1fr auto; grid-template-areas: "label label" "textarea button"; align-items: end; gap: .42rem .65rem; padding: .8rem 1rem 1rem; }
.processing-form label { grid-area: label; color: #657781; font-size: .58rem; font-weight: 700; }
.processing-form textarea { grid-area: textarea; min-block-size: 4.2rem; resize: vertical; font-size: .65rem; }
.processing-form button { grid-area: button; white-space: nowrap; }
.processing-complete, .processing-not-required { padding: .85rem 1rem 1rem; }
.processing-complete > header { display: flex; align-items: center; justify-content: space-between; gap: .6rem; }
.processing-complete time { color: #86959e; font-size: .53rem; }
.processing-complete > p, .processing-not-required > p { margin: .65rem 0 0; padding: .65rem .72rem; color: #4f626e; background: #f4f7f8; border-radius: .42rem; font-size: .62rem; line-height: 1.55; }
.processing-empty { grid-column: 1 / -1; min-block-size: 14rem; background: #fff; border: 1px solid #dbe3e8; border-radius: .72rem; }

/* 详情：编号复制、证据与处理卡 */
.detail-page-heading > div:first-child > p:last-child { margin: .3rem 0 0; color: #758690; font-size: .65rem; }
.detail-page-heading h1 { display: flex; align-items: center; flex-wrap: wrap; gap: .55rem; }
.copy-code-control { display: inline-flex; align-items: center; gap: .38rem; min-block-size: 2rem; padding: .34rem .48rem; color: #dfeaf0; background: #12324d; border: 1px solid #254b67; border-radius: .4rem; cursor: pointer; font: 720 .62rem/1 "Bahnschrift", sans-serif; letter-spacing: .055em; }
.copy-code-control .icon { inline-size: .72rem; }
.copy-code-control small { color: #9db3c1; font: 600 .5rem/1 "Segoe UI Variable", "Segoe UI", sans-serif; letter-spacing: 0; }
.copy-code-control:hover, .copy-code-control:focus-visible, .copy-code-control.is-copied { background: #19415f; }
.evidence-document-button { max-inline-size: 18rem; text-align: start; }
.record-processing-card { overflow: hidden; background: #fff; border: 1px solid #dbe3e8; border-radius: .72rem; }
.record-processing-card.is-pending { border-color: #e9bfc2; box-shadow: inset 3px 0 #ca3139; }
.record-processing-card > header { display: flex; align-items: center; justify-content: space-between; gap: .6rem; padding: .78rem .85rem; background: #f7fafb; border-block-end: 1px solid #e7edf0; }
.record-processing-card > header > div { display: grid; }
.record-processing-card header small { color: #8ca0ac; font-size: .49rem; letter-spacing: .1em; }
.record-processing-card header h2 { margin: .08rem 0 0; font-size: .76rem; }
.record-processing-card > form { display: grid; gap: .45rem; padding: .75rem .85rem .85rem; }
.record-processing-card > form label { color: #657781; font-size: .57rem; font-weight: 700; }
.record-processing-card textarea { min-block-size: 5rem; resize: vertical; font-size: .62rem; }
.record-processing-card > p { margin: 0; padding: .75rem .85rem; color: #5e707b; font-size: .6rem; line-height: 1.55; }
.record-processing-card > dl { display: grid; grid-template-columns: 1fr 1fr; margin: 0; padding: .7rem .85rem 0; }
.record-processing-card dl > div { display: grid; gap: .1rem; }
.record-processing-card dt { color: #84939c; font-size: .5rem; }
.record-processing-card dd { margin: 0; color: #324b5b; font-size: .6rem; font-weight: 650; }
.record-processing-card.is-processed > p { margin: .65rem .85rem .85rem; padding: .65rem; background: #f3f7f8; border-radius: .4rem; }

/* 人员账号与选手完整历史 */
.account-tabs { flex-wrap: wrap; }
.account-table .status--neutral { color: #556873; background: #edf1f3; }
.player-history-stack { display: grid; gap: 1rem; margin-block-start: 1rem; }
.player-history-panel .panel-heading { display: flex; align-items: center; justify-content: space-between; border-block-end: 1px solid #e7edf0; }
.player-history-panel .panel-heading > b { display: grid; place-items: center; min-inline-size: 1.7rem; block-size: 1.7rem; color: #fff; background: #12324d; border-radius: 50%; font-size: .62rem; }
.player-history-panel td { vertical-align: top; }
.player-history-panel td > b, .player-history-panel td > small { display: block; }
.is-archived-history { background: #f7f8f9; }
.history-archive-label { color: #6f7d85; font-weight: 700; }
.history-process-note { max-inline-size: 26rem; margin: .45rem 0 0; padding: .52rem .6rem; color: #4f626e; background: #f1f5f6; border-radius: .38rem; font-size: .58rem; line-height: 1.55; }
.feedback-history-content { min-inline-size: 15rem; max-inline-size: 28rem; margin: 0; color: #4f626e; font-size: .6rem; line-height: 1.55; }

/* 通知标准：一屏四区裁决矩阵 */
.rules-command { display: grid; grid-template-rows: auto minmax(0, 1fr); gap: .62rem; block-size: calc(100vh - var(--banner-height, 0px) - 8.4rem); min-block-size: 36rem; }
.rules-command-head { display: grid; grid-template-columns: 1fr auto auto; align-items: center; gap: 1rem; min-block-size: 3.25rem; padding: .55rem .7rem .55rem .9rem; color: #fff; background: #0f2c42; border: 1px solid #173f5c; border-radius: .65rem; }
.rules-command-head > div:first-child { display: flex; align-items: baseline; gap: .75rem; }
.rules-command-head > div:first-child > span { color: #7594a8; font: 700 .51rem/1 "Bahnschrift", sans-serif; letter-spacing: .1em; }
.rules-command-head h1 { margin: 0; color: #fff; font-size: 1.05rem; letter-spacing: -.02em; }
.rules-command-head > nav { display: flex; align-items: center; gap: .18rem; }
.rules-command-head > nav a { padding: .35rem .52rem; color: #aac0ce; text-decoration: none; border-radius: .32rem; font-size: .56rem; font-weight: 650; }
.rules-command-head > nav a:hover, .rules-command-head > nav a:focus-visible { color: #fff; background: rgba(255,255,255,.08); }
.rules-update-center { justify-self: end; }
.rules-update-button { position: relative; display: inline-flex; align-items: center; gap: .32rem; min-block-size: 2rem; padding: .35rem .48rem; color: #c5d5de; background: rgba(255,255,255,.07); border: 1px solid rgba(255,255,255,.12); border-radius: .38rem; cursor: pointer; }
.rules-update-button .icon { inline-size: .8rem; }
.rules-update-button span { display: grid; place-items: center; min-inline-size: 1.05rem; block-size: 1.05rem; color: #173248; background: #d4e0e6; border-radius: 50%; font-size: .48rem; font-weight: 800; }
.rules-update-center.has-unread .rules-update-button::after { content: ""; position: absolute; inset-block-start: -.18rem; inset-inline-end: -.18rem; inline-size: .5rem; block-size: .5rem; background: #d12f37; border: 2px solid #0f2c42; border-radius: 50%; }
.rules-update-center.has-unread .rules-update-button span { color: #fff; background: #c62f36; }
.rules-update-popover { color: #243946; }
.rules-update-popover header > button { display: grid; place-items: center; inline-size: 1.8rem; block-size: 1.8rem; color: #657781; background: transparent; border: 0; border-radius: .35rem; cursor: pointer; }
.rules-update-popover header > button:hover { background: #e9eef1; }
.rules-update-popover header > button .icon { inline-size: .8rem; }
.rules-update-popover > form { padding: 0 1rem 1rem; }
.rules-update-read { margin: 0; padding: .75rem 1rem; color: #477083; background: #f1f6f8; border-block-start: 1px solid #e1e9ed; text-align: center; font-size: .6rem; font-weight: 650; }
.rules-matrix { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(24rem, .85fr); grid-template-rows: minmax(0, 1.13fr) minmax(0, .87fr); gap: .62rem; min-block-size: 0; }
.rule-matrix-card { position: relative; display: grid; align-content: start; min-inline-size: 0; min-block-size: 0; overflow: hidden; background: #fff; border: 1px solid #d7e1e6; border-radius: .65rem; }
.rule-matrix-card > header { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: .65rem; min-block-size: 3.1rem; padding: .55rem .75rem; color: #fff; background: #12324d; }
.rule-matrix-card > header > span { color: #7da1b7; font: 760 1.15rem/1 "Bahnschrift", sans-serif; }
.rule-matrix-card > header > div { display: grid; }
.rule-matrix-card header small { color: #8eabbd; font-size: .45rem; letter-spacing: .12em; }
.rule-matrix-card header h2 { margin: .08rem 0 0; color: #fff; font-size: .8rem; }
.rule-matrix-card header em { color: #c9d8e0; font-size: .5rem; font-style: normal; font-weight: 700; }
.rule-matrix-card--service > header { background: #173a53; }
.rule-formula-row { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); background: #f4f8fa; border-block-end: 1px solid #dfe8ec; }
.rule-formula-row > div { display: grid; grid-template-columns: 1fr auto; grid-template-areas: "label value" "copy value"; align-items: center; gap: .12rem .5rem; min-inline-size: 0; padding: .48rem .62rem; border-inline-end: 1px solid #dfe8ec; }
.rule-formula-row > div:last-child { border-inline-end: 0; }
.rule-formula-row small { grid-area: label; color: #667c89; font-size: .48rem; }
.rule-formula-row b { grid-area: value; color: #12324d; font: 760 .94rem/1 "Bahnschrift", sans-serif; }
.rule-formula-row span { grid-area: copy; overflow: hidden; color: #8897a0; font-size: .47rem; text-overflow: ellipsis; white-space: nowrap; }
.level-threshold-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); padding: .42rem .58rem; }
.level-threshold-grid > div { display: grid; grid-template-columns: 1fr auto; grid-template-areas: "name score" "mode score"; align-items: center; min-inline-size: 0; padding: .37rem .45rem; border-block-end: 1px solid #edf1f3; }
.level-threshold-grid > div:nth-last-child(-n+3) { border-block-end: 0; }
.level-threshold-grid span { grid-area: name; overflow: hidden; color: #405967; font-size: .54rem; font-weight: 700; text-overflow: ellipsis; white-space: nowrap; }
.level-threshold-grid b { grid-area: score; color: #17394f; font: 760 .82rem/1 "Bahnschrift", sans-serif; }
.level-threshold-grid small { grid-area: mode; color: #9aa6ad; font-size: .43rem; }
.rule-decision-grid { display: grid; grid-template-columns: 1.15fr 1fr 1fr; margin-block-start: auto; border-block-start: 1px solid #dfe8ec; }
.rule-decision-grid > div { position: relative; display: grid; gap: .1rem; min-inline-size: 0; padding: .46rem .6rem; background: #f7fafb; border-inline-end: 1px solid #dfe8ec; }
.rule-decision-grid > div:last-child { border-inline-end: 0; }
.rule-decision-grid small { color: #7f9099; font-size: .45rem; }
.rule-decision-grid b { overflow: hidden; color: #304a59; font-size: .51rem; text-overflow: ellipsis; white-space: nowrap; }
.service-matrix-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); grid-auto-rows: minmax(0, 1fr); min-block-size: 0; margin: 0; padding: .35rem .55rem; list-style: none; }
.service-matrix-list li { display: grid; grid-template-columns: 1.35rem 1fr auto; align-items: center; gap: .35rem; min-inline-size: 0; padding: .24rem .32rem; border-block-end: 1px solid #edf1f3; }
.service-matrix-list li:nth-child(odd) { border-inline-end: 1px solid #edf1f3; }
.service-matrix-list li:nth-last-child(-n+2) { border-block-end: 0; }
.service-matrix-list span { color: #9aa8b0; font: 700 .43rem/1 "Bahnschrift", sans-serif; }
.service-matrix-list b { overflow: hidden; color: #425a67; font-size: .5rem; text-overflow: ellipsis; white-space: nowrap; }
.service-matrix-list em { color: #17394f; font: 760 .62rem/1 "Bahnschrift", sans-serif; font-style: normal; }
.service-matrix-verdicts { position: relative; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin-block-start: auto; background: #eef4f6; border-block-start: 1px solid #dbe6ea; }
.service-matrix-verdicts > span { display: flex; align-items: center; justify-content: center; gap: .35rem; padding: .48rem .35rem; border-inline-end: 1px solid #dbe6ea; }
.service-matrix-verdicts > span:last-child { border-inline-end: 0; }
.service-matrix-verdicts b { color: #15374d; font: 760 .75rem/1 "Bahnschrift", sans-serif; }
.service-matrix-verdicts small { color: #647985; font-size: .46rem; }
.void-matrix-list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); min-block-size: 0; block-size: 100%; padding: .62rem .72rem; }
.void-matrix-list p { display: grid; align-content: center; gap: .32rem; min-inline-size: 0; margin: 0; padding: .6rem .7rem; border-inline-end: 1px solid #e3eaed; }
.void-matrix-list p:last-child { border-inline-end: 0; }
.void-matrix-list span { color: #94a6b0; font: 700 .48rem/1 "Bahnschrift", sans-serif; }
.void-matrix-list b { color: #314c5c; font-size: .61rem; line-height: 1.4; }
.notes-matrix-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); grid-auto-rows: minmax(0, 1fr); min-block-size: 0; margin: 0; padding: .42rem .62rem; list-style: none; }
.notes-matrix-list li { display: grid; grid-template-columns: 1.45rem 1fr; align-items: center; gap: .28rem; min-inline-size: 0; padding: .34rem .4rem; border-block-end: 1px solid #e8eef1; }
.notes-matrix-list li:nth-child(odd) { border-inline-end: 1px solid #e8eef1; }
.notes-matrix-list li:nth-last-child(-n+2) { border-block-end: 0; }
.notes-matrix-list span { color: #94a6b0; font: 700 .43rem/1 "Bahnschrift", sans-serif; }
.notes-matrix-list p { margin: 0; color: #4a606d; font-size: .51rem; line-height: 1.4; }
.is-unread-update { background-color: #fff7f7 !important; box-shadow: inset 3px 0 #ca3139 !important; }
.is-unread-update::after { content: "更新"; position: absolute; inset-block-start: .28rem; inset-inline-end: .32rem; padding: .12rem .28rem; color: #fff; background: #ca3139; border-radius: 999px; font-size: .4rem; font-weight: 750; }
.rule-matrix-card--void.is-unread-update > header { background: #4b2630; }

@media (max-width: 78rem) {
  .level-stat-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .processing-grid { grid-template-columns: 1fr; }
  .rules-command { block-size: auto; min-block-size: 0; }
  .rules-matrix { grid-template-columns: 1fr; grid-template-rows: auto; }
  .rule-matrix-card { min-block-size: 16rem; }
}

@media (max-width: 62rem) {
  .rules-command-head { grid-template-columns: 1fr auto; }
  .rules-command-head > nav { display: none; }
  .rules-update-center { grid-column: 2; grid-row: 1; }
  .processing-filters { grid-template-columns: 1fr; }
  .evidence-document-button { max-inline-size: none; }
}

@media (max-width: 48rem) {
  .level-stat-grid { grid-template-columns: 1fr; }
  .level-stat-card > footer { align-items: flex-start; flex-direction: column; }
  .processing-summary { inline-size: 100%; }
  .processing-summary span { flex: 1; justify-content: center; }
  .processing-score { grid-template-columns: 1fr 1fr; gap: .55rem; }
  .processing-score > div { padding-inline: 0; border-inline-end: 0; }
  .processing-score > div:last-child { grid-column: 1 / -1; }
  .processing-form { grid-template-columns: 1fr; grid-template-areas: "label" "textarea" "button"; }
  .detail-page-heading h1 { align-items: flex-start; flex-direction: column; }
  .copy-code-control { inline-size: 100%; justify-content: center; }
  .rules-command-head > div:first-child { display: grid; gap: .2rem; }
  .rule-formula-row, .void-matrix-list { grid-template-columns: 1fr; }
  .rule-formula-row > div, .void-matrix-list p { border-inline-end: 0; border-block-end: 1px solid #e3eaed; }
  .rule-formula-row > div:last-child, .void-matrix-list p:last-child { border-block-end: 0; }
  .level-threshold-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .level-threshold-grid > div:nth-last-child(-n+3) { border-block-end: 1px solid #edf1f3; }
  .level-threshold-grid > div:nth-last-child(-n+2) { border-block-end: 0; }
  .rule-decision-grid { grid-template-columns: 1fr; }
  .rule-decision-grid > div { border-inline-end: 0; border-block-end: 1px solid #dfe8ec; }
  .rule-decision-grid > div:last-child { border-block-end: 0; }
  .service-matrix-list, .notes-matrix-list { grid-template-columns: 1fr; }
  .service-matrix-list li:nth-child(odd), .notes-matrix-list li:nth-child(odd) { border-inline-end: 0; }
  .service-matrix-list li:nth-last-child(2), .notes-matrix-list li:nth-last-child(2) { border-block-end: 1px solid #edf1f3; }
  .player-history-panel .table-wrap { overflow-x: auto; }
}

@media (prefers-reduced-motion: reduce) {
  .copy-code-control, .rules-update-button { transition: none; }
}

/* 2026-08 申诉回执轨道 */
.ticket-phase { display: inline-flex; align-items: center; gap: .42rem; min-inline-size: max-content; padding: .34rem .52rem; color: #536875; background: #f0f4f6; border: 1px solid #dbe4e8; border-radius: .42rem; }
.ticket-phase > i { flex: 0 0 auto; inline-size: .42rem; block-size: .42rem; background: currentColor; border-radius: 50%; }
.ticket-phase > span { display: grid; gap: .08rem; }
.ticket-phase b { font-size: .58rem; }
.ticket-phase small { color: inherit; font-size: .48rem; opacity: .78; }
.ticket-phase--replied { color: #17445f; background: #edf5f8; border-color: #cfe1e9; }
.ticket-phase--overdue, .ticket-phase-countdown.is-urgent, [data-countdown-until].is-urgent { color: #b52d35; }
.ticket-phase--overdue { background: #fff4f4; border-color: #edc4c7; }
.ticket-phase--closed { color: #277455; background: #eff8f3; border-color: #cfe8da; }
.ticket-phase-countdown.is-expired, [data-countdown-until].is-expired { color: #b52d35; }

/* 提交成功后的回执与追踪链接 */
.feedback-success--receipt { inline-size: min(100%, 32rem); padding: 1.7rem; color: #173248; background: #fff; border: 1px solid #dbe5ea; border-radius: .85rem; box-shadow: 0 20px 60px rgba(0,0,0,.18); }
.feedback-success--receipt > span { inline-size: 2.8rem; block-size: 2.8rem; color: #fff; background: #173b55; }
.feedback-success--receipt > p:first-of-type { margin: .75rem 0 .22rem; color: #70838f; }
.feedback-success--receipt h1 { color: #102f45; font: 760 1.65rem/1 "Bahnschrift", sans-serif; letter-spacing: .055em; }
.feedback-response-promise { display: grid; inline-size: 100%; gap: .18rem; margin-block: 1rem .75rem; padding: .8rem .9rem; color: #344d5d; background: #f3f7f8; border-inline-start: 3px solid #1f5776; border-radius: .4rem; text-align: start; }
.feedback-response-promise b { font-size: .76rem; }
.feedback-response-promise p { margin: 0; color: #70818b; font-size: .6rem; }
.feedback-response-promise small { margin-block-start: .22rem; color: #1e627a; font: 720 .62rem/1 "Bahnschrift", sans-serif; }
.feedback-tracking-control { display: grid; inline-size: 100%; gap: .38rem; text-align: start; }
.feedback-tracking-control > label { color: #526a78; font-size: .58rem; font-weight: 700; }
.feedback-tracking-control > div { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: .4rem; }
.feedback-tracking-control input { min-inline-size: 0; min-block-size: 2.55rem; padding: .5rem .62rem; color: #526773; background: #f8fafb; border: 1px solid #dbe3e7; border-radius: .42rem; font-size: .58rem; }
.feedback-tracking-control button { display: inline-flex; align-items: center; gap: .32rem; min-block-size: 2.55rem; padding-inline: .68rem; color: #fff; background: #173b55; border: 0; border-radius: .42rem; cursor: pointer; font-size: .58rem; font-weight: 700; }
.feedback-tracking-control button .icon { inline-size: .76rem; }
.feedback-tracking-control button.is-copied { background: #277455; }
.feedback-tracking-control > small { color: #83919a; font-size: .53rem; line-height: 1.45; }
.feedback-success-actions { display: flex; flex-wrap: wrap; justify-content: center; inline-size: 100%; gap: .45rem; margin-block-start: 1rem; }
.feedback-success--receipt .feedback-success-actions a { display: inline-flex; align-items: center; gap: .3rem; color: #536875; background: #f2f5f6; border-color: #dce4e7; }
.feedback-success--receipt .feedback-success-actions a.is-primary { color: #fff; background: #173b55; border-color: #173b55; }
.feedback-success-actions .icon { inline-size: .74rem; }

/* 公开申诉追踪页 */
.tracking-body { min-block-size: 100vh; color: #213a4a; background: #f2f5f6; }
.tracking-shell { inline-size: min(calc(100% - 2rem), 62rem); margin-inline: auto; padding-block: 1.2rem 3rem; }
.tracking-brand { display: flex; align-items: center; gap: .62rem; padding: .68rem .8rem; background: #fff; border: 1px solid #dce4e8; border-radius: .68rem; }
.tracking-brand img { inline-size: 2.1rem; block-size: 2.1rem; object-fit: cover; border-radius: .46rem; }
.tracking-brand > span { display: grid; }
.tracking-brand b { color: #173248; font-size: .75rem; }
.tracking-brand small { color: #82919a; font-size: .52rem; }
.tracking-brand em { display: inline-flex; align-items: center; gap: .3rem; margin-inline-start: auto; color: #4f6978; font-size: .55rem; font-style: normal; font-weight: 650; }
.tracking-brand em .icon { inline-size: .78rem; }
.tracking-hero { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: end; gap: 1rem; margin-block: .75rem; padding: 1.25rem 1.35rem; color: #fff; background: #12324d; border-radius: .75rem; }
.tracking-hero > div:first-child { min-inline-size: 0; }
.tracking-hero p { margin: 0 0 .32rem; color: #92adbe; font-size: .54rem; letter-spacing: .1em; }
.tracking-hero h1 { margin: 0; overflow-wrap: anywhere; color: #fff; font: 760 clamp(1.45rem, 4vw, 2.1rem)/1 "Bahnschrift", sans-serif; letter-spacing: .04em; }
.tracking-hero > div:first-child small { display: block; margin-block-start: .45rem; color: #b5c7d2; font-size: .58rem; }
.tracking-hero-status { display: grid; justify-items: end; gap: .55rem; }
.tracking-hero .ticket-phase { color: #d4e3eb; background: rgba(255,255,255,.08); border-color: rgba(255,255,255,.14); }
.tracking-hero--overdue { background: #5a2830; }
.tracking-hero--closed { background: #215943; }
.tracking-countdown { display: grid; justify-items: end; gap: .15rem; }
.tracking-countdown small { color: #9fb6c4; font-size: .5rem; }
.tracking-countdown strong { color: #fff; font: 760 .86rem/1 "Bahnschrift", sans-serif; letter-spacing: .04em; }
.tracking-countdown.is-urgent strong { color: #ffd4d6; }
.tracking-subject { display: grid; grid-template-columns: auto 1fr; align-items: start; gap: .8rem; margin-block-end: .75rem; padding: .85rem 1rem; background: #fff; border: 1px solid #dce4e8; border-radius: .68rem; }
.tracking-subject h2 { margin: 0; color: #213b4b; font-size: .86rem; }
.tracking-subject p { margin: .3rem 0; color: #536976; font-size: .66rem; line-height: 1.65; overflow-wrap: anywhere; }
.tracking-subject small { color: #8a989f; font-size: .52rem; }
.tracking-rail { padding: 1rem 1.15rem; background: #fff; border: 1px solid #dce4e8; border-radius: .72rem; }
.tracking-rail::before { content: "申诉回执轨道"; display: block; margin-block-end: .45rem; color: #83929b; font-size: .5rem; font-weight: 750; letter-spacing: .12em; }
.tracking-step { position: relative; display: grid; grid-template-columns: 2.15rem 1fr; gap: .8rem; min-inline-size: 0; padding-block: .65rem 1.1rem; }
.tracking-step:not(:last-child)::after { content: ""; position: absolute; inset-block: 2.5rem -.15rem; inset-inline-start: 1.02rem; inline-size: 1px; background: #dce5e9; }
.tracking-step > span { position: relative; z-index: 1; display: grid; place-items: center; inline-size: 2.05rem; block-size: 2.05rem; color: #7b8f9b; background: #f0f4f6; border: 1px solid #d8e2e7; border-radius: 50%; font: 740 .55rem/1 "Bahnschrift", sans-serif; }
.tracking-step.is-active > span { color: #fff; background: #173b55; border-color: #173b55; }
.tracking-step.is-complete > span { color: #1e627a; background: #e9f4f7; border-color: #c9e1e8; }
.tracking-step.is-overdue > span { color: #fff; background: #bd3038; border-color: #bd3038; }
.tracking-step.is-closed > span { color: #fff; background: #277455; border-color: #277455; }
.tracking-step > div { min-inline-size: 0; }
.tracking-step > div > header { display: flex; align-items: baseline; justify-content: space-between; gap: .7rem; margin-block-end: .45rem; }
.tracking-step header small { color: #8fa0aa; font-size: .45rem; letter-spacing: .11em; }
.tracking-step header h2 { margin: .08rem 0 0; color: #284453; font-size: .76rem; }
.tracking-step > div > p { margin: 0; color: #667b87; font-size: .6rem; }
.tracking-step time { color: #87969e; font-size: .51rem; }
.tracking-waiting, .tracking-confirm-state, .tracking-closed-state { display: flex; align-items: flex-start; gap: .62rem; padding: .72rem .78rem; background: #f4f7f8; border-radius: .48rem; }
.tracking-waiting > .icon, .tracking-confirm-state > .icon, .tracking-closed-state > .icon { flex: 0 0 auto; inline-size: .9rem; color: #517383; }
.tracking-waiting b, .tracking-confirm-state b, .tracking-closed-state b { color: #294655; font-size: .66rem; }
.tracking-waiting p, .tracking-confirm-state p, .tracking-closed-state p { margin: .18rem 0 0; color: #657985; font-size: .58rem; line-height: 1.55; }
.tracking-waiting small, .tracking-confirm-state small, .tracking-closed-state small { display: block; margin-block-start: .3rem; color: #84949c; font-size: .51rem; }
.tracking-waiting.is-overdue { color: #a92b33; background: #fff3f3; border: 1px solid #efc8ca; }
.tracking-waiting.is-overdue .icon, .tracking-waiting.is-overdue b { color: #b52d35; }
.tracking-closed-state { background: #eff8f3; border: 1px solid #cee8d9; }
.tracking-closed-state > .icon, .tracking-closed-state b { color: #277455; }
.tracking-future-state { padding: .65rem .75rem; color: #71838d; background: #f7f9fa; border: 1px dashed #d9e2e6; border-radius: .45rem; }
.tracking-future-state b { font-size: .62rem; }
.tracking-future-state p { margin: .18rem 0 0; font-size: .56rem; }
.official-receipt { position: relative; display: grid; grid-template-columns: auto 1fr; gap: .8rem; min-inline-size: 0; padding: .85rem; color: #fff; background: #153a54; border: 1px solid #234f6d; border-radius: .55rem; box-shadow: inset 0 0 0 1px rgba(255,255,255,.03); }
.official-receipt-seal { display: grid; place-items: center; align-self: start; inline-size: 3.25rem; block-size: 3.25rem; color: #dbe9f0; border: 1px solid rgba(219,233,240,.45); border-radius: 50%; font: 780 .67rem/1 "Bahnschrift", sans-serif; letter-spacing: .07em; transform: rotate(-5deg); }
.official-receipt-seal small { margin-block-start: .15rem; color: #a8c0ce; font: 650 .4rem/1 "Segoe UI Variable", "Segoe UI", sans-serif; letter-spacing: .08em; }
.official-receipt > div { min-inline-size: 0; }
.official-receipt > div > small { color: #95aeba; font-size: .48rem; }
.official-receipt p { margin: .32rem 0; color: #eef5f8; font-size: .64rem; line-height: 1.65; overflow-wrap: anywhere; }
.official-receipt a { display: inline-flex; align-items: center; gap: .3rem; color: #b9d8e6; font-size: .54rem; font-weight: 700; }
.official-receipt a .icon { inline-size: .7rem; }
.tracking-shell > footer { padding: .9rem; color: #8a989f; text-align: center; font-size: .52rem; }
.tracking-shell--expired { display: grid; align-content: start; min-block-size: 100vh; }
.tracking-expired-receipt { display: grid; justify-items: center; inline-size: min(100%, 36rem); margin: clamp(2rem, 8vh, 5rem) auto 0; padding: 2rem; text-align: center; background: #fff; border: 1px solid #d6e4dc; border-radius: .78rem; box-shadow: 0 18px 45px rgba(21,58,84,.08); }
.tracking-expired-receipt > span { display: grid; place-items: center; inline-size: 3rem; block-size: 3rem; color: #fff; background: #277455; border-radius: 50%; }
.tracking-expired-receipt > span .icon { inline-size: 1.2rem; }
.tracking-expired-receipt > p:first-of-type { margin: .8rem 0 .2rem; color: #7b8d97; font-size: .54rem; letter-spacing: .1em; }
.tracking-expired-receipt h1 { margin: 0; color: #18384b; font: 760 1.55rem/1 "Bahnschrift", sans-serif; letter-spacing: .05em; overflow-wrap: anywhere; }
.tracking-expired-receipt dl { display: grid; grid-template-columns: 1fr 1fr; inline-size: 100%; margin: 1rem 0; background: #f4f7f6; border-radius: .5rem; }
.tracking-expired-receipt dl > div { display: grid; gap: .15rem; padding: .7rem; }
.tracking-expired-receipt dl > div:first-child { border-inline-end: 1px solid #dce6e0; }
.tracking-expired-receipt dt { color: #80928a; font-size: .5rem; }
.tracking-expired-receipt dd { margin: 0; color: #315d4a; font-size: .64rem; font-weight: 700; }
.tracking-expired-receipt h2 { margin: .25rem 0; color: #276e51; font-size: .86rem; }
.tracking-expired-receipt > p:last-child { margin: .2rem 0 0; color: #73847c; font-size: .58rem; line-height: 1.55; }

/* 管理员工单详情：公开回执与内部记录分轨 */
.ticket-tracking-link { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: .65rem; margin-block-end: .8rem; padding: .62rem .72rem; background: #eef4f6; border: 1px solid #d7e3e8; border-radius: .55rem; }
.ticket-tracking-link > span { display: grid; min-inline-size: 0; }
.ticket-tracking-link small { color: #72858f; font-size: .5rem; }
.ticket-tracking-link b { overflow: hidden; color: #24475b; font-size: .58rem; text-overflow: ellipsis; white-space: nowrap; }
.ticket-tracking-link button { display: inline-flex; align-items: center; gap: .28rem; min-block-size: 2rem; padding-inline: .55rem; color: #fff; background: #173b55; border: 0; border-radius: .38rem; cursor: pointer; font-size: .55rem; font-weight: 700; }
.ticket-tracking-link button .icon { inline-size: .72rem; }
.ticket-tracking-link button.is-copied { background: #277455; }
.ticket-receipt-layout { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(20rem, .65fr); gap: .8rem; align-items: start; }
.ticket-receipt-main { display: grid; gap: .8rem; min-inline-size: 0; }
.ticket-admin-stack { position: sticky; inset-block-start: 5.6rem; display: grid; gap: .8rem; min-inline-size: 0; }
.ticket-admin-stack .ticket-handler { position: static; }
.appeal-receipt-track { overflow: hidden; }
.appeal-receipt-track > .panel-heading { display: flex; align-items: center; justify-content: space-between; border-block-end: 1px solid #e4ebee; }
.receipt-phase { padding: .25rem .45rem; color: #4e6674; background: #edf2f4; border-radius: .32rem; font-size: .52rem; font-weight: 700; }
.receipt-phase--overdue { color: #b12d35; background: #fff0f1; }
.receipt-phase--closed { color: #267253; background: #edf8f2; }
.receipt-phase--replied { color: #17445f; background: #eaf3f7; }
.appeal-receipt-track ol { margin: 0; padding: .45rem 1rem .2rem; list-style: none; }
.appeal-receipt-track li { position: relative; display: grid; grid-template-columns: 2rem 1fr; gap: .75rem; padding-block: .65rem 1rem; }
.appeal-receipt-track li:not(:last-child)::after { content: ""; position: absolute; inset-block: 2.5rem -.1rem; inset-inline-start: .97rem; inline-size: 1px; background: #dfe7eb; }
.appeal-receipt-track li > span { position: relative; z-index: 1; display: grid; place-items: center; inline-size: 1.95rem; block-size: 1.95rem; color: #728792; background: #eef3f5; border: 1px solid #d7e2e7; border-radius: 50%; font: 740 .52rem/1 "Bahnschrift", sans-serif; }
.appeal-receipt-track li.is-active > span { color: #fff; background: #173b55; border-color: #173b55; }
.appeal-receipt-track li.is-complete > span { color: #17677b; background: #e6f2f5; border-color: #c7dfe6; }
.appeal-receipt-track li.is-overdue > span { color: #fff; background: #bd3038; border-color: #bd3038; }
.appeal-receipt-track li.is-closed > span { color: #fff; background: #277455; border-color: #277455; }
.appeal-receipt-track li > div { min-inline-size: 0; }
.appeal-receipt-track li > div > header { display: flex; align-items: baseline; justify-content: space-between; gap: .6rem; margin-block-end: .42rem; }
.appeal-receipt-track li header b { color: #2d4857; font-size: .68rem; }
.appeal-receipt-track li header time { color: #89979e; font-size: .5rem; }
.appeal-receipt-track li > div > p { margin: 0; color: #657985; font-size: .58rem; }
.appeal-receipt-track > footer { display: grid; grid-template-columns: repeat(3, 1fr); gap: .5rem; padding: .7rem 1rem; color: #687d88; background: #f4f7f8; border-block-start: 1px solid #e2e9ec; font-size: .52rem; }
.admin-official-receipt { display: grid; grid-template-columns: auto 1fr; gap: .75rem; min-inline-size: 0; padding: .8rem; color: #fff; background: #153a54; border-radius: .5rem; }
.admin-official-receipt > div { min-inline-size: 0; }
.admin-official-receipt header { display: flex; align-items: baseline; justify-content: space-between; gap: .5rem; }
.admin-official-receipt header b { color: #fff !important; }
.admin-official-receipt time { color: #9eb6c3 !important; }
.admin-official-receipt p { margin: .35rem 0; color: #eff6f9; font-size: .62rem; line-height: 1.6; overflow-wrap: anywhere; }
.admin-official-receipt a { display: inline-flex; align-items: center; gap: .3rem; color: #c2deea; font-size: .53rem; font-weight: 700; }
.admin-official-receipt a .icon { inline-size: .7rem; }
.admin-official-receipt > div > small { color: #9eb6c3; font-size: .5rem; }
.admin-reply-pending, .admin-close-receipt { display: flex; align-items: flex-start; gap: .55rem; padding: .65rem .7rem; background: #f3f6f7; border-radius: .45rem; }
.admin-reply-pending > .icon, .admin-close-receipt > .icon { flex: 0 0 auto; inline-size: .82rem; color: #527181; }
.admin-reply-pending b, .admin-close-receipt b { color: #334f5f; font-size: .62rem; }
.admin-reply-pending p, .admin-close-receipt p { margin: .18rem 0 0; color: #687c87; font-size: .55rem; line-height: 1.5; }
.admin-reply-pending.is-overdue, .admin-close-receipt.is-urgent { background: #fff2f3; border: 1px solid #efc6c9; }
.admin-reply-pending.is-overdue .icon, .admin-reply-pending.is-overdue b, .admin-close-receipt.is-urgent .icon, .admin-close-receipt.is-urgent b { color: #b52d35; }
.admin-close-receipt.is-closed { background: #eef8f2; border: 1px solid #cee7d9; }
.admin-close-receipt.is-closed .icon, .admin-close-receipt.is-closed b { color: #277455; }
.admin-close-receipt small, .admin-close-receipt time { display: block; margin-block-start: .28rem; color: #7b8d86; font-size: .5rem; }
.ticket-public-reply .panel-heading, .ticket-handler--internal .panel-heading { border-block-end: 1px solid #e4ebee; }
.ticket-public-reply { overflow: hidden; border-color: #cfdde4; }
.ticket-public-reply .panel-heading { background: #f2f6f8; }
.reply-form-seal { padding: .25rem .42rem; color: #fff; background: #173b55; border-radius: .28rem; font: 740 .47rem/1 "Bahnschrift", sans-serif; letter-spacing: .08em; }
.reply-reset-notice { padding: .58rem .62rem; color: #526b79; background: #edf3f5; border-inline-start: 3px solid #245f7e; border-radius: .35rem; font-size: .54rem; line-height: 1.5; }
.reply-evidence-hint { display: block; margin-block-start: .42rem; color: #547080; font-size: .52rem; line-height: 1.55; }
.ticket-public-reply .button { justify-self: stretch; justify-content: center; }
.ticket-public-reply.is-closed .panel-heading { border-block-end: 0; }
.ticket-public-reply.is-closed .panel-heading > .icon { color: #277455; }
.ticket-handler--internal { border-style: dashed; box-shadow: none; }
.ticket-handler--internal .panel-heading { background: #fafbfb; }
.ticket-handler--internal .button { justify-self: stretch; justify-content: center; }

@media (max-width: 78rem) {
  .ticket-receipt-layout { grid-template-columns: 1fr; }
  .ticket-admin-stack { position: static; grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 48rem) {
  .feedback-tracking-control > div { grid-template-columns: 1fr; }
  .feedback-tracking-control button { justify-content: center; }
  .feedback-success-actions { flex-direction: column; }
  .feedback-success--receipt .feedback-success-actions a { justify-content: center; inline-size: 100%; }
  .tracking-hero { grid-template-columns: 1fr; align-items: start; }
  .tracking-hero-status { justify-items: start; }
  .tracking-countdown { justify-items: start; }
  .tracking-subject { grid-template-columns: 1fr; }
  .tracking-step { grid-template-columns: 1.85rem minmax(0, 1fr); gap: .58rem; }
  .tracking-step > span { inline-size: 1.75rem; block-size: 1.75rem; }
  .tracking-step:not(:last-child)::after { inset-block-start: 2.2rem; inset-inline-start: .86rem; }
  .official-receipt, .admin-official-receipt { grid-template-columns: 1fr; }
  .official-receipt-seal { inline-size: 2.8rem; block-size: 2.8rem; }
  .tracking-expired-receipt { padding: 1.25rem; }
  .tracking-expired-receipt dl { grid-template-columns: 1fr; }
  .tracking-expired-receipt dl > div:first-child { border-inline-end: 0; border-block-end: 1px solid #dce6e0; }
  .ticket-tracking-link { grid-template-columns: 1fr; }
  .ticket-tracking-link button { justify-content: center; }
  .ticket-admin-stack { grid-template-columns: 1fr; }
  .appeal-receipt-track li { grid-template-columns: 1.8rem minmax(0, 1fr); gap: .55rem; }
  .appeal-receipt-track li > span { inline-size: 1.7rem; block-size: 1.7rem; }
  .appeal-receipt-track li:not(:last-child)::after { inset-block-start: 2.2rem; inset-inline-start: .84rem; }
  .appeal-receipt-track li > div > header { align-items: flex-start; flex-direction: column; gap: .15rem; }
  .appeal-receipt-track > footer { grid-template-columns: 1fr; }
}

@media (prefers-reduced-motion: reduce) {
  [data-copy-value], [data-countdown-until] { transition: none; }
}

@media (min-width: 78.01rem) {
  .rules-body .page-main { padding-block-end: .45rem; }
  .rules-body .page-wrap { min-block-size: calc(100vh - var(--banner-height) - 4.75rem - 2px); }
}

/* 2026-08 质检运营控制台 */
html, body { max-inline-size: 100%; overflow-x: hidden; }
[hidden] { display: none !important; }
.brand { min-inline-size: auto; padding: .42rem .58rem; border-color: transparent; box-shadow: none; }
.brand > span { display: block; }
.brand small { display: none !important; }
.brand b { font-size: .9rem; font-weight: 720; }
.global-search { inline-size: clamp(12rem, 18vw, 19rem); }
.global-search .icon { inset-inline-start: .72rem; inline-size: .86rem; }
.global-search input { min-block-size: 2.45rem; padding: .48rem .72rem .48rem 2.05rem; font-size: .69rem; font-weight: 620; }
.global-search input::placeholder, .record-search input::placeholder { color: #8b8b94; opacity: 1; }
.section-heading p { display: none; }

/* 总览：结果快照与等级聚焦 */
.level-stat-card { display: grid; padding: 0; transition: border-color 160ms ease, box-shadow 160ms ease; }
.level-stat-card { grid-template-rows: auto auto auto; }
.level-stat-card.is-open { grid-template-rows: auto auto auto auto; }
.level-card-trigger { display: grid; grid-template-columns: auto minmax(0, 1fr) auto auto; align-items: center; gap: .65rem; inline-size: 100%; padding: .82rem .9rem; color: inherit; text-align: start; background: transparent; border: 0; cursor: pointer; }
.level-card-trigger > span { color: #9aaab5; font: 760 .62rem/1 "Bahnschrift", sans-serif; }
.level-card-trigger > div { display: grid; }
.level-card-trigger h3 { margin: 0; color: #132d40; font-size: .84rem; }
.level-card-trigger small { color: #82919b; font-size: .55rem; }
.level-card-trigger strong { display: grid; color: #12324d; font: 760 1.25rem/1 "Bahnschrift", sans-serif; text-align: end; }
.level-card-trigger strong small { margin-block-start: .18rem; font-family: inherit; font-weight: 600; }
.level-card-trigger > .icon { inline-size: .8rem; color: #8798a2; transform: rotate(90deg); transition: transform 160ms ease; }
.level-stat-card.is-open .level-card-trigger > .icon { transform: rotate(-90deg); }
.level-score-pair { display: grid; grid-template-columns: 1fr 1fr; gap: .75rem; padding: 0 .9rem .78rem; }
.level-stat-card.is-open .level-score-pair { align-items: start; min-block-size: 4.4rem; padding-block: .62rem .78rem; }
.level-score-pair .level-stat-score { margin: 0; }
.level-stat-card > footer { margin: 0; padding: .58rem .9rem; }
.level-stat-card > footer > button { display: inline-flex; align-items: center; gap: .3rem; padding: 0; color: #17394f; background: transparent; border: 0; cursor: pointer; font-size: .56rem; font-weight: 720; }
.level-stat-card > footer > button .icon { inline-size: .7rem; }
.level-stat-card > footer > span { margin-inline-start: auto; }
.level-stat-grid.has-focus { grid-template-columns: 1fr; }
.level-stat-grid.has-focus > .level-stat-card:not(.is-open) { display: none; }
.level-stat-card.is-open { border-color: #b9cbd5; box-shadow: 0 10px 30px rgba(15, 44, 66, .08); }
.level-stat-card.is-open .level-score-pair { grid-template-columns: repeat(2, minmax(0, 18rem)); }
.level-rank-workspace { padding: .9rem; background: #f7f9fa; border-block-start: 1px solid #e2e8ec; }
.level-rank-workspace > header { display: flex; align-items: center; justify-content: space-between; gap: .75rem; margin-block-end: .7rem; }
.rank-segment, .rank-tabs { display: inline-flex; gap: .18rem; padding: .2rem; background: #e9eef1; border-radius: .42rem; }
.rank-segment button, .rank-tabs button { min-block-size: 1.9rem; padding-inline: .65rem; color: #647781; background: transparent; border: 0; border-radius: .3rem; cursor: pointer; font-size: .55rem; font-weight: 680; }
.rank-segment button.is-active, .rank-tabs button.is-active { color: #132d40; background: #fff; box-shadow: 0 1px 3px rgba(15,44,66,.12); }
.rank-list { overflow: hidden; background: #fff; border: 1px solid #dfe6ea; border-radius: .5rem; }
.rank-row { display: grid; grid-template-columns: 2rem minmax(7rem, 1fr) minmax(6rem, .8fr) 4rem; align-items: center; gap: .65rem; min-block-size: 2.55rem; padding-inline: .75rem; color: #283f4c; text-decoration: none; border-block-end: 1px solid #edf1f3; }
.rank-row:last-child { border-block-end: 0; }
.rank-row:hover { background: #f7f9fa; }
.rank-row > span { color: #93a1a9; font: 720 .52rem/1 "Bahnschrift", sans-serif; }
.rank-row b { overflow: hidden; font-size: .67rem; text-overflow: ellipsis; white-space: nowrap; }
.rank-row small { overflow: hidden; color: #7b8b94; font-size: .55rem; text-overflow: ellipsis; white-space: nowrap; }
.rank-row strong { color: #15384e; font: 760 .72rem/1 "Bahnschrift", sans-serif; text-align: end; }
.rank-empty { margin: 0; padding: 1.2rem; color: #82919a; text-align: center; font-size: .62rem; }

/* 记录：紧凑月份导航与可读搜索 */
.month-overview { display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: center; gap: .75rem; }
.month-overview .section-heading { margin: 0; }
.month-cards { grid-template-columns: repeat(6, minmax(7.4rem, 1fr)); gap: .45rem; }
.month-card { position: relative; grid-template-columns: 1fr auto; grid-template-areas: "month total" "rate total"; min-block-size: 4.25rem; padding: .65rem .72rem; }
.month-card > span { grid-area: month; font-size: .58rem; }
.month-card > strong { grid-area: total; align-self: center; font-size: 1.25rem; }
.month-card > b { grid-area: rate; color: #6d7d86; font-size: .55rem; }
.month-card > i { position: absolute; inset-block-start: -.35rem; inset-inline-end: -.25rem; padding: .16rem .34rem; color: #fff; background: #c72f37; border-radius: 999px; font-size: .45rem; font-style: normal; font-weight: 720; }
.record-search { grid-template-columns: minmax(0, 1fr) auto; inline-size: min(100%, 30rem); margin-inline-start: auto; }
.record-search > .icon { inset-inline-start: .78rem; inset-block-start: 1.5rem; inline-size: .82rem; }
.record-search input[type="search"] { min-block-size: 2.45rem; padding-inline-start: 2.05rem; font-size: .68rem; font-weight: 650; letter-spacing: -.005em; }
.record-search .button { min-block-size: 2.45rem; }
.processing-cell { display: inline-flex; align-items: center; gap: .35rem; }
.responsibility-person { display: grid; min-inline-size: 0; gap: .12rem; }
.responsibility-person b { overflow: hidden; color: #294655; font-size: .62rem; font-weight: 740; text-overflow: ellipsis; white-space: nowrap; }
.responsibility-person small { color: #87969e; font-size: .48rem; white-space: nowrap; }
.responsibility-person--waiting b { color: #9a6308; }
.responsibility-person--waiting small { color: #a98546; }
.responsibility-person--muted b, .responsibility-person--muted small { color: #98a4aa; }
.attention-count { display: inline-grid; place-items: center; min-inline-size: 1.05rem; block-size: 1.05rem; padding-inline: .2rem; color: #fff; background: #c72f37; border-radius: 999px; font-size: .48rem; font-style: normal; font-weight: 760; box-shadow: 0 0 0 2px #fff; }
.processing-state--review { color: #865b08; background: #fff8e5; border-color: #f5dfaa; }

/* 处罚记录：20 行列表 + 展开工作台 */
.processing-list { overflow: hidden; background: #fff; border: 1px solid #dce4e8; border-radius: .68rem; }
.processing-list > header, .processing-row > summary { display: grid; grid-template-columns: 7.2rem minmax(9rem, 1.25fr) minmax(5.4rem, .7fr) minmax(5.8rem, .72fr) minmax(5.8rem, .72fr) minmax(6.6rem, .82fr) 6.4rem 1.2rem; align-items: center; gap: .65rem; }
.processing-list > header { min-block-size: 2.5rem; padding-inline: .85rem; color: #73858f; background: #f5f7f8; border-block-end: 1px solid #e3e9ec; font-size: .55rem; font-weight: 680; }
.processing-row { border-block-end: 1px solid #edf1f3; }
.processing-row:last-of-type { border-block-end: 0; }
.processing-row.is-pending { box-shadow: inset 3px 0 #c72f37; }
.processing-row > summary { min-block-size: 3.7rem; padding-inline: .85rem; list-style: none; cursor: pointer; }
.processing-row > summary::-webkit-details-marker { display: none; }
.processing-row > summary:hover { background: #fafbfb; }
.processing-row > summary > span, .processing-row > summary > time { min-inline-size: 0; color: #4d616d; font-size: .62rem; }
.processing-row > summary > .icon { inline-size: .78rem; color: #8998a0; transform: rotate(90deg); transition: transform 160ms ease; }
.processing-row[open] > summary > .icon { transform: rotate(-90deg); }
.processing-code { color: #17394f !important; font: 740 .58rem/1 "Bahnschrift", sans-serif !important; }
.processing-person { display: grid; }
.processing-person b { overflow: hidden; color: #263f4e; font-size: .68rem; text-overflow: ellipsis; white-space: nowrap; }
.processing-person small { overflow: hidden; color: #89979f; font-size: .5rem; text-overflow: ellipsis; white-space: nowrap; }
.processing-status-cell { display: flex; align-items: center; gap: .32rem; }
.processing-drawer { display: grid; grid-template-columns: minmax(14rem, .65fr) minmax(18rem, 1fr) minmax(19rem, 1fr); gap: .8rem; padding: .85rem; background: #f6f8f9; border-block-start: 1px solid #e2e8eb; }
.processing-drawer-facts { padding: .75rem; background: #fff; border: 1px solid #e0e7ea; border-radius: .5rem; }
.processing-drawer-facts dl { display: grid; grid-template-columns: repeat(2, 1fr); gap: .65rem .5rem; margin: 0 0 .7rem; }
.processing-drawer-facts dl > div { display: grid; gap: .14rem; }
.processing-drawer-facts dt { color: #83929a; font-size: .5rem; }
.processing-drawer-facts dd { margin: 0; color: #243f50; font-size: .7rem; font-weight: 720; }
.processing-drawer-facts dd small { color: #84939b; font-size: .48rem; }
.processing-log, .processing-form--inline { padding: .75rem; background: #fff; border: 1px solid #e0e7ea; border-radius: .5rem; }
.processing-log h3 { margin: 0 0 .55rem; color: #304b5a; font-size: .65rem; }
.processing-log ol, .detail-process-log { display: grid; gap: .55rem; margin: 0; padding: 0; list-style: none; }
.processing-log li, .detail-process-log li { display: grid; grid-template-columns: .45rem 1fr; gap: .5rem; }
.processing-log li.is-empty, .detail-process-log li.is-empty { grid-template-columns: 1fr; }
.processing-log li > span, .detail-process-log li > span { inline-size: .38rem; block-size: .38rem; margin-block-start: .25rem; background: #1b526f; border-radius: 50%; }
.processing-log li header, .detail-process-log li header { display: flex; justify-content: space-between; gap: .5rem; }
.processing-log li b, .detail-process-log li b { display: flex; align-items: center; gap: .35rem; color: #334e5e; font-size: .57rem; }
.processing-log li b em, .detail-process-log li b em { padding: .13rem .28rem; color: #647984; background: #edf2f4; border-radius: .2rem; font-size: .43rem; font-style: normal; font-weight: 680; }
.processing-log li time, .detail-process-log li time { color: #91a0a7; font-size: .48rem; }
.processing-log li p, .detail-process-log li p { margin: .18rem 0; color: #5d707b; font-size: .55rem; line-height: 1.5; }
.processing-log li small, .detail-process-log li small { color: #7d8e97; font-size: .48rem; }
.processing-form--inline { display: grid; gap: .55rem; }
.processing-form--inline textarea { min-block-size: 4.4rem; font-size: .6rem; resize: vertical; }
.processing-submit-row { display: flex; align-items: end; justify-content: space-between; gap: .55rem; }
.processing-submit-row label { display: grid; gap: .22rem; color: #657a86; font-size: .52rem; font-weight: 680; }
.processing-submit-row select { min-block-size: 2.25rem; font-size: .6rem; }
.processing-pagination { display: flex; align-items: center; justify-content: space-between; gap: .7rem; min-block-size: 3rem; padding-inline: .85rem; color: #7b8b93; background: #f7f9fa; border-block-start: 1px solid #e1e8eb; font-size: .55rem; }
.processing-pagination > div { display: flex; align-items: center; gap: .45rem; }
.processing-pagination a, .processing-pagination > div > span { padding: .35rem .55rem; color: #405967; text-decoration: none; background: #fff; border: 1px solid #dce4e8; border-radius: .34rem; }
.processing-pagination > div > span { color: #a2adb3; }
.processing-pagination b { color: #344e5c; }

/* 录入工作台：直接录入 ID，不维护选手档案 */
.inspection-workbench .entry-meta {
  grid-template-columns: auto minmax(0, 1fr);
  gap: .65rem 1rem;
  padding: 1rem 0 0;
}
.inspection-workbench .entry-meta-title { padding-inline-start: 1rem; }
.mode-switch { display: inline-flex; gap: .2rem; margin: 0 1rem 0 0; padding: .22rem; background: #e9eef1; border: 0; border-radius: .45rem; }
.mode-switch label { cursor: pointer; }
.mode-switch input {
  position: absolute;
  inline-size: 1px;
  block-size: 1px;
  margin: 0;
  overflow: hidden;
  opacity: 0;
  clip-path: inset(50%);
}
.mode-switch span { display: grid; place-items: center; min-inline-size: 5rem; min-block-size: 2rem; color: #637781; border-radius: .32rem; font-size: .62rem; font-weight: 700; }
.mode-switch input:checked + span { color: #14344a; background: #fff; box-shadow: 0 1px 3px rgba(13,43,64,.14); }
.mode-switch input:focus-visible + span { outline: 2px solid #245f7e; outline-offset: 2px; }
.player-entry-grid {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .65rem;
  padding: .75rem 1rem;
}
.player-entry-grid:has([data-partner-fields][hidden]) { grid-template-columns: 1fr; }
.player-entry-card { overflow: hidden; border: 1px solid #dfe6e9; border-radius: .52rem; }
.player-entry-card > header { display: flex; align-items: center; gap: .5rem; padding: .5rem .7rem; color: #405866; background: #f5f7f8; border-block-end: 1px solid #e2e8eb; font-size: .62rem; }
.player-entry-card > header span { color: #91a0a8; font: 720 .5rem/1 "Bahnschrift", sans-serif; }
.player-entry-card .form-grid { padding: .7rem; }
.entry-meta-grid--secondary { grid-column: 1 / -1; grid-template-columns: repeat(4, minmax(0, 1fr)); padding: 0 1rem 1rem; }
.threshold-preview-card { display: grid; align-content: center; grid-template-columns: 1fr auto; grid-template-areas: "label score" "note score"; gap: .15rem .65rem; min-block-size: 2.45rem; padding: .45rem .65rem; color: #fff; background: #153a54; border-radius: .48rem; }
.threshold-preview-card span { grid-area: label; color: #b7cbd6; font-size: .5rem; }
.threshold-preview-card b { grid-area: score; align-self: center; font: 760 1.15rem/1 "Bahnschrift", sans-serif; }
.threshold-preview-card small { grid-area: note; color: #8fabb9; font-size: .45rem; }
.inspection-workbench .entry-score-panel .panel-heading > div > p { display: none; }

/* 详情：处理日志与数据修改申请 */
.responsibility-chain { display: grid; grid-template-columns: 9.5rem minmax(0, 1fr); min-block-size: 5.3rem; margin-block-end: .75rem; overflow: hidden; background: #fff; border: 1px solid #d8e2e6; border-radius: .62rem; }
.responsibility-chain > header { display: grid; align-content: center; gap: .22rem; padding: .8rem 1rem; color: #fff; background: #12364c; }
.responsibility-chain > header span { color: #9ab9c8; font-size: .5rem; font-weight: 740; letter-spacing: .12em; }
.responsibility-chain > header b { font-size: .72rem; }
.responsibility-chain ol { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin: 0; padding: 0; list-style: none; }
.responsibility-chain li { position: relative; display: grid; grid-template-columns: 1.8rem minmax(0, 1fr); align-items: center; gap: .55rem; min-inline-size: 0; padding: .72rem .9rem; border-inline-end: 1px solid #e2e8eb; }
.responsibility-chain li:last-child { border-inline-end: 0; }
.responsibility-chain li > i { display: grid; place-items: center; inline-size: 1.65rem; block-size: 1.65rem; color: #fff; background: #1d5b78; border-radius: 50%; font: 760 .48rem/1 "Bahnschrift", sans-serif; }
.responsibility-chain li.is-waiting > i, .responsibility-chain li.is-active > i { color: #8c5c0e; background: #fff1cf; box-shadow: inset 0 0 0 1px #ecd79e; }
.responsibility-chain li.is-skipped > i { color: #71838c; background: #e9eef0; }
.responsibility-chain li > div { display: grid; min-inline-size: 0; gap: .12rem; }
.responsibility-chain li > div > span { color: #7f9098; font-size: .48rem; }
.responsibility-chain li > div > b { overflow: hidden; color: #203e4f; font-size: .68rem; text-overflow: ellipsis; white-space: nowrap; }
.responsibility-chain li > div > small { overflow: hidden; color: #84949c; font-size: .48rem; text-overflow: ellipsis; white-space: nowrap; }
.responsibility-chain .processing-state { justify-self: start; }
.record-processing-card > header { padding: .72rem .8rem; }
.record-processing-card > header h2 { margin: 0; font-size: .74rem; }
.detail-process-log { padding: .75rem .8rem; }
.record-processing-card > form select { min-block-size: 2.35rem; font-size: .62rem; }
.record-feedback-panel > header { align-items: center; }
.record-feedback-panel > header > h2 { margin: 0; font-size: .74rem; }
.change-request-disclosure { margin: .7rem; overflow: hidden; border: 1px solid #dce4e8; border-radius: .48rem; }
.change-request-disclosure > summary { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: .5rem; min-block-size: 2.7rem; padding-inline: .65rem; list-style: none; cursor: pointer; background: #f5f7f8; }
.change-request-disclosure > summary::-webkit-details-marker { display: none; }
.change-request-disclosure > summary > .icon { inline-size: .82rem; color: #617985; }
.change-request-disclosure > summary > .icon:last-child { transform: rotate(90deg); }
.change-request-disclosure > form { display: grid; gap: .42rem; padding: .7rem; border-block-start: 1px solid #e1e7ea; }
.change-request-disclosure label { color: #5f737e; font-size: .55rem; font-weight: 700; }
.change-request-disclosure input, .change-request-disclosure textarea { font-size: .6rem; }
.record-ticket > div > small { display: block; margin-block: .35rem; }
.record-ticket--summary > div { background: #f7f9fa; }
.record-ticket--summary > div > small { color: #5d727e; line-height: 1.55; }

/* 通知标准：内容自适应，取消固定高度造成的空白 */
.rules-body .page-main { padding-block: .7rem 1rem; }
.rules-command { grid-template-rows: auto auto; block-size: auto; min-block-size: 0; }
.rules-command-head { min-block-size: 3rem; }
.rules-matrix { grid-template-rows: auto auto; align-items: start; }
.rule-matrix-card { min-block-size: 0 !important; align-self: start; }
.service-matrix-list, .notes-matrix-list { grid-auto-rows: auto; }
.void-matrix-list { block-size: auto; }
.rule-matrix-card header h2 { margin: 0; }
.rules-update-button { position: relative; }
.rules-update-center.has-unread .rules-update-button::after { content: ""; position: absolute; inset-block-start: .2rem; inset-inline-end: .2rem; inline-size: .38rem; block-size: .38rem; background: #ff6b6b; border: 2px solid #12324d; border-radius: 50%; }

/* 投诉追踪：五阶段可见流程 */
.tracking-rail--five::before { content: "处理进度"; }
.tracking-step.is-active > span { color: #fff; background: #173b55; border-color: #173b55; box-shadow: 0 0 0 4px #e6eef2; }
.ticket-phase--viewed, .ticket-phase--processing { color: #17445f; background: #eaf3f7; border-color: #d6e6ed; }
.tracking-final-lock { margin-block-start: .55rem !important; padding: .55rem .65rem; color: #7e252b !important; background: #fff0f1; border-inline-start: 3px solid #c72f37; border-radius: .35rem; font-weight: 680; }

.change-request-inbox { margin-block-start: .9rem; }
.change-request-inbox > header { display: flex; align-items: center; justify-content: space-between; margin-block-end: .55rem; }
.change-request-inbox > header h2 { margin: 0; color: #243f50; font-size: .8rem; }
.change-request-inbox > header span { display: grid; place-items: center; min-inline-size: 1.25rem; block-size: 1.25rem; color: #fff; background: #173b55; border-radius: 999px; font-size: .5rem; font-weight: 740; }
.change-request-inbox > div { display: grid; gap: .45rem; }
.change-request-card { overflow: hidden; background: #fff; border: 1px solid #dce4e8; border-radius: .55rem; }
.change-request-card.is-pending { box-shadow: inset 3px 0 #c72f37; }
.change-request-card > summary { display: grid; grid-template-columns: 7.5rem minmax(0, 1fr) auto auto; align-items: center; gap: .65rem; min-block-size: 3rem; padding-inline: .8rem; list-style: none; cursor: pointer; }
.change-request-card > summary::-webkit-details-marker { display: none; }
.change-request-card > summary span { color: #17394f; font: 720 .55rem/1 "Bahnschrift", sans-serif; }
.change-request-card > summary b { font-size: .66rem; }
.change-request-card > summary em { padding: .22rem .4rem; color: #6f4c08; background: #fff7df; border-radius: .3rem; font-size: .5rem; font-style: normal; font-weight: 700; }
.change-request-card > summary .icon { inline-size: .72rem; transform: rotate(90deg); }
.change-request-card[open] > summary .icon { transform: rotate(-90deg); }
.change-request-card > div { display: grid; grid-template-columns: minmax(0, .8fr) minmax(18rem, 1.2fr); gap: .75rem; padding: .75rem .8rem; background: #f6f8f9; border-block-start: 1px solid #e2e8eb; }
.change-request-card dl { display: grid; gap: .4rem; margin: 0; }
.change-request-card dl > div { display: grid; grid-template-columns: 5rem 1fr; gap: .5rem; }
.change-request-card dt { color: #83929a; font-size: .52rem; }
.change-request-card dd, .change-request-card > div > p { margin: 0; color: #465f6d; font-size: .59rem; }
.change-request-card > div > p { padding: .55rem; background: #fff; border: 1px solid #e0e7ea; border-radius: .4rem; }
.change-request-card form { grid-column: 1 / -1; display: grid; grid-template-columns: minmax(9rem, .4fr) minmax(14rem, 1fr) auto; align-items: end; gap: .55rem; }
.change-request-card form label { display: grid; gap: .22rem; color: #617681; font-size: .52rem; font-weight: 680; }
.change-request-card form select, .change-request-card form textarea { min-block-size: 2.35rem; font-size: .58rem; }
.change-request-card form textarea { resize: vertical; }

@media (max-width: 78rem) {
  .processing-drawer { grid-template-columns: 1fr 1fr; }
  .processing-form--inline { grid-column: 1 / -1; }
  .responsibility-chain { grid-template-columns: 7.6rem minmax(0, 1fr); }
  .responsibility-chain > header { padding-inline: .75rem; }
  .responsibility-chain li { padding-inline: .65rem; }
  .rules-matrix { grid-template-columns: 1fr; }
}

@media (max-width: 62rem) {
  .level-stat-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .level-rank-workspace > header { align-items: stretch; flex-direction: column; }
  .rank-segment, .rank-tabs { inline-size: 100%; }
  .rank-segment button, .rank-tabs button { flex: 1; }
  .processing-list > header { display: none; }
  .processing-row > summary { grid-template-columns: minmax(6rem, .8fr) minmax(8rem, 1fr) minmax(5.5rem, .7fr) auto auto; }
  .processing-row > summary > .responsibility-person--inspector, .processing-row > summary > span:nth-child(5), .processing-row > summary > time { display: none; }
  .processing-row > summary > .icon { justify-self: end; }
  .responsibility-chain { grid-template-columns: 1fr; }
  .responsibility-chain > header { display: flex; align-items: baseline; justify-content: space-between; min-block-size: 2.8rem; }
  .entry-meta-grid--secondary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 48rem) {
  .month-overview { grid-template-columns: 1fr; }
  .month-cards { display: flex; }
  .month-card { flex: 0 0 8rem; }
  .record-search { inline-size: 100%; margin-inline-start: 0; }
  .level-stat-card.is-open .level-score-pair { grid-template-columns: 1fr 1fr; }
  .rank-row { grid-template-columns: 1.6rem minmax(0, 1fr) 3.2rem; }
  .rank-row small { display: none; }
  .processing-row > summary { grid-template-columns: minmax(5.5rem, .75fr) minmax(7rem, 1fr) minmax(5rem, .65fr); gap: .45rem; }
  .processing-row > summary > .processing-status-cell, .processing-row > summary > .icon { display: none; }
  .processing-drawer { grid-template-columns: 1fr; padding: .65rem; }
  .processing-form--inline { grid-column: auto; }
  .processing-pagination { align-items: flex-start; flex-direction: column; padding-block: .65rem; }
  .player-entry-card .form-grid, .entry-meta-grid--secondary { grid-template-columns: 1fr; }
  .threshold-preview-card { min-block-size: 3.4rem; }
  .mode-switch { display: flex; }
  .mode-switch label, .mode-switch span { flex: 1; }
  .tracking-rail { padding-inline: .75rem; }
  .change-request-card > summary { grid-template-columns: 6.5rem minmax(0, 1fr) auto; }
  .change-request-card > summary em { display: none; }
  .change-request-card > div, .change-request-card form { grid-template-columns: 1fr; }
  .change-request-card form { grid-column: auto; }
  .responsibility-chain ol { grid-template-columns: 1fr; }
  .responsibility-chain li { min-block-size: 3.75rem; border-inline-end: 0; border-block-end: 1px solid #e2e8eb; }
  .responsibility-chain li:last-child { border-block-end: 0; }
}

@media (max-width: 24rem) {
  .page-main { inline-size: calc(100% - 1rem); }
  .level-stat-grid { grid-template-columns: 1fr; }
  .level-score-pair, .level-stat-card.is-open .level-score-pair { grid-template-columns: 1fr; }
  .rank-tabs { display: grid; grid-template-columns: 1fr; }
  .processing-row > summary { grid-template-columns: minmax(5rem, .75fr) minmax(0, 1fr); }
  .processing-row > summary > .responsibility-person--processor { display: none; }
  .record-search { grid-template-columns: minmax(0, 1fr); }
  .record-search .button { inline-size: 100%; }
}

/* 2026-08-12 第二轮界面重排：赛事裁判控制台 */
.back-link { display: inline-flex; align-items: center; gap: .45rem; }
.back-link > .icon { inline-size: .9rem; transform: rotate(180deg); }

.avatar { overflow: hidden; padding: 0; background: #101b2d; border: 1px solid rgba(66, 177, 239, .26); }
.avatar > img { display: block; inline-size: 100%; block-size: 100%; object-fit: cover; object-position: 50% 42%; }
.avatar--large > img { object-position: 50% 40%; }

/* 结果徽标只属于结果筛选，不侵入状态栏与记录行 */
.result-filter-pills { padding-block: .28rem; }
.result-filter-pills a { position: relative; display: inline-flex; align-items: center; gap: .42rem; min-block-size: 2.25rem; padding-inline: .75rem; overflow: visible; }
.filter-count { display: inline-grid; place-items: center; min-inline-size: 1.35rem; block-size: 1.35rem; padding-inline: .28rem; color: #fff; background: #c92d39; border: 2px solid #fff; border-radius: 999px; box-shadow: 0 3px 9px rgba(154, 24, 35, .22); font-size: .58rem; font-style: normal; font-weight: 800; line-height: 1; }
.filter-pills a.is-active .filter-count { border-color: #f8fafb; }
.processing-cell .attention-count, .processing-row > summary .attention-count { display: none !important; }
.active-account-filter { display: flex; align-items: center; gap: .55rem; margin-block-end: .75rem; padding: .7rem .85rem; color: #49606d; background: #eef5f8; border: 1px solid #d7e6ec; border-radius: .55rem; font-size: .68rem; }
.active-account-filter .icon { inline-size: 1rem; color: #1d536f; }
.active-account-filter b { color: #183a4f; }
.active-account-filter a { margin-inline-start: auto; color: #1b5a78; font-weight: 700; }

/* 月份卡的待处理数收进卡片内，避免滚动容器裁切 */
.month-cards { padding-block: .2rem; }
.month-card { overflow: hidden; }
.month-card > i { inset-block-start: .48rem; inset-inline-end: .52rem; z-index: 1; padding: .22rem .42rem; font-size: .52rem; box-shadow: 0 3px 8px rgba(151, 24, 35, .18); }
.month-card > strong { align-self: end; padding-block-start: 1.05rem; }

/* 等级展开：通过/未通过居中，三个 Top20 同屏 */
.level-rank-workspace { padding: 1rem; }
.level-rank-workspace > header { justify-content: center; margin-block-end: 1rem; }
.level-rank-workspace > header:has(> div:first-child + .rank-segment) { justify-content: space-between; }
.rank-segment { justify-content: center; margin-inline: auto; padding: .28rem; background: #dfe8ed; border: 1px solid #d3dfe5; border-radius: .62rem; }
.rank-segment button { min-block-size: 2.55rem; padding-inline: 1.35rem; font-size: .76rem; }
.rank-segment button b { margin-inline-start: .28rem; font: 800 .78rem/1 "Bahnschrift", sans-serif; }
.rank-scope-panel { min-inline-size: 0; }
.rank-columns { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .75rem; align-items: start; }
.rank-column { min-inline-size: 0; overflow: hidden; background: #fff; border: 1px solid #d9e4e9; border-radius: .62rem; box-shadow: 0 7px 18px rgba(18, 50, 77, .04); }
.rank-column > header { display: flex; align-items: center; justify-content: space-between; gap: .5rem; min-block-size: 3.1rem; padding-inline: .85rem; color: #fff; background: #12324d; border-block-start: 3px solid #35aee8; }
.rank-column:nth-child(2) > header { background: #173d58; border-block-start-color: #72d2ee; }
.rank-column:nth-child(3) > header { background: #1b4660; border-block-start-color: #b4e9f6; }
.rank-column > header span { font-size: .8rem; font-weight: 760; }
.rank-column > header small { color: #b9ced9; font-size: .72rem; }
.rank-list { min-inline-size: 0; }
.rank-row { grid-template-columns: 1.75rem minmax(5rem, 1fr) minmax(3.5rem, .72fr) 2.6rem; gap: .45rem; min-block-size: 3rem; padding-inline: .65rem; }
.rank-row > span { font-size: .58rem; }
.rank-row b { font-size: .82rem; }
.rank-row small { font-size: .72rem; }
.rank-row strong { font-size: .78rem; }
.rank-contract-alias { display: none; }
.level-rank-workspace > header > div:first-child { display: grid; gap: .18rem; min-inline-size: 0; }
.level-rank-workspace > header > div:first-child > b { color: #123b55; font-size: .82rem; }
.level-rank-workspace > header > div:first-child > small { color: #718793; font-size: .72rem; line-height: 1.45; }
.rank-legacy-note { display: flex; align-items: center; gap: .45rem; margin: 0 0 .7rem; padding: .55rem .7rem; color: #82621c; background: #fff8e8; border: 1px solid #eddcae; border-radius: .48rem; font-size: .72rem; }
.rank-legacy-note::before { display: grid; place-items: center; inline-size: 1.25rem; block-size: 1.25rem; flex: 0 0 auto; color: #fff; content: "!"; background: #b8861c; border-radius: 50%; font-weight: 850; }
.rank-row--player > b { display: grid; gap: .1rem; min-inline-size: 0; }
.rank-row--player > b i { overflow: hidden; color: #173d55; font-style: normal; text-overflow: ellipsis; white-space: nowrap; }
.rank-row--player > b em { color: #73909f; font-size: .72rem; font-style: normal; font-weight: 650; }
.rank-column--kills > header { background: linear-gradient(110deg, #0f3049, #13506f); border-block-start-color: #43c4ed; }
.rank-column--service > header { background: linear-gradient(110deg, #153a52, #1a6478); border-block-start-color: #76d9e8; }
.rank-column--overall > header { background: linear-gradient(110deg, #193f58, #287687); border-block-start-color: #b5edf1; }

/* 录入页仅保留一个选手身份字段 */
.player-entry-card .form-grid--2 { grid-template-columns: minmax(0, 1.35fr) minmax(11rem, .65fr); }
.player-entry-card .field input[data-player-identity],
.player-entry-card .field input[data-partner-identity] { font-size: .76rem; font-weight: 680; }
.games-editor--personal-kills fieldset { display: grid; gap: .7rem; align-content: start; }
.personal-kill-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .48rem; }
.personal-kill-fields:has(> :only-child) { grid-template-columns: 1fr; }
.personal-kill-field { min-inline-size: 0; padding: .58rem; background: linear-gradient(140deg, #eef8fc, #e8f4f8); border: 1px solid #c8e0e9; border-radius: .5rem; }
.personal-kill-field > span { display: block; margin-block-end: .42rem; overflow: hidden; color: #15435a; font-size: .82rem; font-weight: 800; text-overflow: ellipsis; white-space: nowrap; }
.personal-kill-field .field { grid-template-columns: minmax(0, 1fr) 4.6rem; align-items: center; }
.personal-kill-field .field label { color: #63808e; }
.personal-kill-field input { min-inline-size: 0; text-align: center; font: 800 .85rem/1 "Bahnschrift", "Segoe UI", sans-serif; }
.game-shared-fields { display: grid; gap: .38rem; padding-block-start: .62rem; border-block-start: 1px dashed #d0dce1; }
.game-shared-fields > small { color: #798d97; font-size: .72rem; font-weight: 760; letter-spacing: .04em; }
.game-shared-fields .game-fields { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.personal-kill-legacy-note { margin: 0 1rem .8rem; padding: .62rem .72rem; color: #7c5e1f; background: #fff8e8; border: 1px solid #ebd9a6; border-radius: .5rem; font-size: .72rem; line-height: 1.5; }
.technical-score-components em i { color: #2f718c; font-style: normal; }
.game-grid dd small { display: block; margin-block-start: .1rem; color: #9a7626; font-size: .52rem; font-weight: 650; }
.shared-record-body [data-personal-kills-unknown] { color: #8a6a22; font-size: .68rem; font-style: normal; font-weight: 720; }

/* 通知标准：真正的四区大字裁决矩阵 */
.rules-command--large { grid-template-rows: auto minmax(0, 1fr); gap: .8rem; block-size: calc(100dvh - var(--banner-height, 0px) - 7rem); min-block-size: 0; }
.rules-command--large .rules-command-head { grid-template-columns: minmax(10rem, 1fr) auto auto; gap: 1.2rem; min-block-size: 4.6rem; padding: .68rem .85rem .68rem 1.15rem; background: linear-gradient(105deg, #0c2538, #123b58); border-color: #24526d; border-radius: .78rem; box-shadow: 0 12px 30px rgba(12, 37, 56, .12); }
.rules-command--large .rules-command-head h1 { font-size: 1.55rem; font-weight: 780; letter-spacing: -.035em; }
.rules-command--large .rules-command-head > nav { gap: .42rem; }
.rules-command--large .rules-command-head > nav a { display: inline-flex; align-items: center; gap: .45rem; min-block-size: 3rem; padding: .55rem .72rem; color: #d5e7f0; background: rgba(255,255,255,.055); border: 1px solid rgba(255,255,255,.08); border-radius: .5rem; font-size: .88rem; }
.rules-command--large .rules-command-head > nav a:hover,
.rules-command--large .rules-command-head > nav a:focus-visible { color: #fff; background: rgba(76, 183, 235, .16); border-color: rgba(96, 197, 239, .32); }
.rules-command--large .rules-command-head > nav .icon { inline-size: 1.05rem; color: #75cdf3; }
.rules-command--large .rules-update-button { min-inline-size: 3.05rem; min-block-size: 3.05rem; justify-content: center; gap: .38rem; padding: .48rem; border-radius: .55rem; }
.rules-command--large .rules-update-button .icon { inline-size: 1.2rem; }
.rules-command--large .rules-update-button span { min-inline-size: 1.35rem; block-size: 1.35rem; font-size: .62rem; }
.rules-command--large .rules-matrix { grid-template-columns: minmax(0, 1.14fr) minmax(28rem, .86fr); grid-template-rows: minmax(0, 1.16fr) minmax(0, .84fr); gap: .8rem; min-block-size: 0; align-items: stretch; }
.rules-command--large .rule-matrix-card { display: flex; flex-direction: column; min-block-size: 0 !important; block-size: 100%; align-self: stretch; border-color: #cad9e0; border-radius: .78rem; box-shadow: 0 8px 24px rgba(18, 50, 77, .055); }
.rules-command--large .rule-matrix-card > header { grid-template-columns: auto 1fr auto; gap: .85rem; min-block-size: 3.4rem; padding: .5rem .9rem; background: linear-gradient(105deg, #11314a, #174a68); }
.rules-command--large .rule-matrix-card > header > span { font-size: 1.65rem; }
.rules-command--large .rule-matrix-card header h2 { font-size: 1.18rem; font-weight: 760; }
.rules-command--large .rule-matrix-card header em { font-size: .72rem; }
.rules-command--large .rule-formula-row > div { min-block-size: 3.5rem; padding: .42rem .72rem; }
.rules-command--large .rule-formula-row small { font-size: .72rem; }
.rules-command--large .rule-formula-row b { font-size: 1.28rem; }
.rules-command--large .rule-formula-row span { font-size: .68rem; }
.rules-command--large .level-threshold-grid { flex: 1; padding: .3rem .62rem; }
.rules-command--large .level-threshold-grid > div { padding: .3rem .48rem; }
.rules-command--large .level-threshold-grid span { font-size: .88rem; }
.rules-command--large .level-threshold-grid b { font-size: 1.08rem; }
.rules-command--large .level-threshold-grid small { font-size: .68rem; }
.rules-command--large .rule-decision-grid > div { min-block-size: 3.4rem; justify-content: center; padding: .4rem .65rem; }
.rules-command--large .rule-decision-grid small { font-size: .68rem; }
.rules-command--large .rule-decision-grid b { overflow: visible; font-size: .74rem; line-height: 1.35; text-overflow: clip; white-space: normal; }
.rules-command--large .service-matrix-list { flex: 1; padding: .3rem .6rem; }
.rules-command--large .service-matrix-list li { padding: .25rem .42rem; }
.rules-command--large .service-matrix-list span { font-size: .68rem; }
.rules-command--large .service-matrix-list b { font-size: .84rem; }
.rules-command--large .service-matrix-list em { font-size: .88rem; }
.rules-command--large .service-matrix-verdicts > span { min-block-size: 3.4rem; gap: .48rem; padding: .45rem; }
.rules-command--large .service-matrix-verdicts b { font-size: 1.04rem; }
.rules-command--large .service-matrix-verdicts small { font-size: .72rem; }
.rules-command--large .void-matrix-list { flex: 1; padding: .8rem .9rem; }
.rules-command--large .void-matrix-list p { padding: .8rem 1rem; }
.rules-command--large .void-matrix-list span { font-size: .68rem; }
.rules-command--large .void-matrix-list b { font-size: .93rem; line-height: 1.5; }
.rules-command--large .notes-matrix-list { flex: 1; padding: .35rem .7rem; }
.rules-command--large .notes-matrix-list li { gap: .48rem; padding: .3rem .48rem; }
.rules-command--large .notes-matrix-list span { font-size: .68rem; }
.rules-command--large .notes-matrix-list p { font-size: .86rem; line-height: 1.45; }
.rules-command--large .is-unread-update::after { inset-block-start: .42rem; inset-inline-end: .45rem; padding: .18rem .38rem; font-size: .52rem; }

/* 工作人员账号全量质量画像 */
.account-analytics { margin-block-end: 1rem; overflow: hidden; background: #fff; border: 1px solid #d4e1e7; border-radius: .8rem; box-shadow: 0 12px 32px rgba(15, 44, 66, .06); }
.account-analytics-heading { display: flex; align-items: center; justify-content: space-between; gap: 1rem; min-block-size: 5rem; padding: .9rem 1.1rem; color: #fff; background: linear-gradient(110deg, #0d2a40, #15506f); border-block-start: 4px solid #42b5ea; }
.account-analytics-heading > div { display: grid; gap: .16rem; }
.account-analytics-heading span { color: #9bc7dc; font-size: .65rem; font-weight: 750; letter-spacing: .08em; }
.account-analytics-heading h2 { margin: 0; color: #fff; font-size: 1.35rem; }
.account-analytics-heading em { padding: .42rem .62rem; color: #d8edf6; background: rgba(255,255,255,.09); border: 1px solid rgba(255,255,255,.12); border-radius: .4rem; font-size: .68rem; font-style: normal; font-weight: 700; }
.account-analytics-metrics { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .75rem; padding: 1rem; background: #f4f8fa; border-block-end: 1px solid #dfe8ec; }
.account-analytics-metric { display: grid; gap: .7rem; min-inline-size: 0; padding: .9rem; background: #fff; border: 1px solid #d8e4e9; border-radius: .62rem; }
.account-analytics-metric > header { display: flex; align-items: end; justify-content: space-between; gap: .5rem; }
.account-analytics-metric > header span { color: #47606e; font-size: .78rem; font-weight: 720; }
.account-analytics-metric > header b { color: #123a53; font: 800 1.75rem/1 "Bahnschrift", sans-serif; }
.account-analytics-metric > header small { margin-inline-start: .12rem; color: #78909d; font-size: .7rem; }
.analytics-progress { block-size: .48rem; overflow: hidden; background: #e7eef1; border-radius: 999px; }
.analytics-progress i { display: block; inline-size: var(--analytics-rate); block-size: 100%; background: linear-gradient(90deg, #1979a8, #43b9ea); border-radius: inherit; }
[data-analytics-metric="complaint-rate"] .analytics-progress i { background: linear-gradient(90deg, #d98b2b, #eeb452); }
[data-analytics-metric="processing-rate"] .analytics-progress i { background: linear-gradient(90deg, #238465, #42b68e); }
.account-analytics-metric > footer { display: flex; justify-content: space-between; gap: .5rem; color: #78909c; font-size: .61rem; }
.account-analytics-metric > footer b { color: #435e6d; }
.account-analytics-overview { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); border-block-end: 1px solid #e1e9ed; }
.account-analytics-overview article { display: grid; gap: .18rem; min-inline-size: 0; padding: .9rem 1rem; border-inline-end: 1px solid #e5ecef; }
.account-analytics-overview article:last-child { border-inline-end: 0; }
.account-analytics-overview span { color: #758994; font-size: .62rem; }
.account-analytics-overview b { color: #173c53; font: 780 1.35rem/1 "Bahnschrift", sans-serif; }
.account-analytics-overview small { overflow: hidden; color: #8b9aa2; font-size: .55rem; text-overflow: ellipsis; white-space: nowrap; }
.analytics-trend { padding: 1rem; border-block-end: 1px solid #e1e9ed; }
.analytics-trend > header { display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin-block-end: .8rem; }
.analytics-trend h3, .analytics-distribution h3, .analytics-recent h3, .analytics-logs h3 { margin: 0; color: #274758; font-size: .82rem; }
.analytics-trend header small { color: #82939c; font-size: .57rem; }
.analytics-trend header span { color: #55707e; font-size: .62rem; font-weight: 700; }
.analytics-trend-chart { display: grid; grid-template-columns: repeat(12, minmax(2rem, 1fr)); gap: .38rem; min-block-size: 9rem; overflow-x: auto; }
.analytics-trend-chart article { display: grid; grid-template-rows: minmax(5.5rem, 1fr) auto auto; gap: .22rem; min-inline-size: 2.1rem; text-align: center; }
.analytics-trend-chart article > div { position: relative; display: flex; align-items: end; justify-content: center; gap: 2px; min-block-size: 5.5rem; padding: .25rem; background: #f1f5f7; border-radius: .35rem; }
.analytics-trend-chart i, .analytics-trend-chart em { inline-size: 38%; block-size: var(--trend-height); min-block-size: 2px; background: #2c91bd; border-radius: .2rem .2rem 0 0; }
.analytics-trend-chart em { background: #7dcce9; }
.analytics-trend-chart b { color: #385765; font-size: .58rem; }
.analytics-trend-chart span { color: #82939c; font-size: .52rem; }
.analytics-distribution-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .75rem; padding: 1rem; border-block-end: 1px solid #e1e9ed; }
.analytics-distribution { min-inline-size: 0; padding: .8rem; background: #f8fafb; border: 1px solid #e0e8ec; border-radius: .55rem; }
.analytics-distribution > header { display: flex; align-items: center; justify-content: space-between; margin-block-end: .65rem; }
.analytics-distribution > header > b { display: grid; place-items: center; min-inline-size: 1.55rem; block-size: 1.55rem; color: #fff; background: #173f57; border-radius: 50%; font-size: .58rem; }
.analytics-distribution > div { display: grid; gap: .48rem; }
.analytics-distribution p { display: grid; grid-template-columns: minmax(4.2rem, .7fr) minmax(4rem, 1fr) 1.6rem; align-items: center; gap: .4rem; margin: 0; }
.analytics-distribution p > span { overflow: hidden; color: #526b78; font-size: .59rem; text-overflow: ellipsis; white-space: nowrap; }
.analytics-distribution p > i { block-size: .35rem; overflow: hidden; background: #e4ebee; border-radius: 999px; }
.analytics-distribution p > i > em { display: block; inline-size: var(--distribution-width); block-size: 100%; background: #3b9dc5; border-radius: inherit; }
.analytics-distribution p > b { color: #345363; font-size: .62rem; text-align: end; }
.analytics-history-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .8rem; padding: 1rem; }
.analytics-recent, .analytics-logs { min-inline-size: 0; overflow: hidden; border: 1px solid #dde6ea; border-radius: .58rem; }
.analytics-recent > header, .analytics-logs > header { display: flex; align-items: center; justify-content: space-between; min-block-size: 3rem; padding-inline: .8rem; background: #f4f7f8; border-block-end: 1px solid #e1e8eb; }
.analytics-recent > header a, .analytics-logs > header a { display: inline-flex; align-items: center; gap: .3rem; color: #1e607e; font-size: .58rem; font-weight: 700; text-decoration: none; }
.analytics-recent > header .icon, .analytics-logs > header .icon { inline-size: .7rem; }
.analytics-recent > div { display: grid; }
.analytics-recent > div > a { display: grid; grid-template-columns: minmax(0, 1fr) auto 3.2rem auto; align-items: center; gap: .55rem; min-block-size: 3.5rem; padding-inline: .75rem; color: inherit; text-decoration: none; border-block-end: 1px solid #edf1f3; }
.analytics-recent > div > a:last-child { border-block-end: 0; }
.analytics-recent a > span { display: grid; min-inline-size: 0; }
.analytics-recent a > span b, .analytics-recent a > span small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.analytics-recent a > span b { color: #304e5e; font-size: .65rem; }
.analytics-recent a > span small { color: #88979f; font-size: .52rem; }
.analytics-recent a > strong { display: grid; color: #173e56; font: 750 .72rem/1 "Bahnschrift", sans-serif; text-align: end; }
.analytics-recent a > strong small { color: #8b999f; font: 500 .48rem/1.4 inherit; }
.analytics-recent a > .icon { inline-size: .72rem; color: #87969e; }
.analytics-logs ol { display: grid; gap: .55rem; margin: 0; padding: .75rem; list-style: none; }
.analytics-logs li { display: grid; grid-template-columns: .45rem minmax(0, 1fr); gap: .5rem; }
.analytics-logs li > span { inline-size: .42rem; block-size: .42rem; margin-block-start: .25rem; background: #2d98c2; border-radius: 50%; }
.analytics-logs li header { display: flex; justify-content: space-between; gap: .5rem; }
.analytics-logs li b { color: #365565; font-size: .62rem; }
.analytics-logs li time, .analytics-logs li small { color: #89989f; font-size: .5rem; }
.analytics-logs li p { margin: .15rem 0; color: #5f737e; font-size: .57rem; line-height: 1.45; }
.account-analytics--empty { padding: 1.25rem; }

/* 工单队列保留原流程，但让阶段、时限、质检编号与操作一眼可见 */
.ticket-table th { font-size: .61rem; }
.ticket-table td { font-size: .67rem; }
.ticket-table td > b { font-size: .7rem; }
.ticket-table .ticket-phase { min-inline-size: 9.5rem; }
.ticket-table .text-link { display: inline-flex; align-items: center; min-block-size: 2.2rem; padding-inline: .65rem; color: #fff; background: #173e57; border-radius: .4rem; }

@media (min-width: 64.01rem) {
  .rules-command--large .rules-matrix { grid-template-columns: minmax(0, 1.14fr) minmax(26rem, .86fr); grid-template-rows: minmax(0, 1.16fr) minmax(0, .84fr); }
}

@media (max-width: 78rem) {
  .account-analytics-overview { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .account-analytics-overview article:nth-child(3) { border-inline-end: 0; }
  .account-analytics-overview article:nth-child(-n+3) { border-block-end: 1px solid #e5ecef; }
}

@media (max-width: 64rem) {
  .rules-command--large { block-size: auto; min-block-size: 0; }
  .rules-command--large .rules-command-head { grid-template-columns: 1fr auto; }
  .rules-command--large .rules-command-head > nav { grid-column: 1 / -1; grid-row: 2; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); inline-size: 100%; }
  .rules-command--large .rules-command-head > nav a { justify-content: center; }
  .rules-command--large .rules-matrix { grid-template-columns: 1fr; grid-template-rows: auto; }
  .rules-command--large .rule-matrix-card { block-size: auto; min-block-size: 18rem !important; }
  .rank-columns { grid-template-columns: repeat(3, minmax(17rem, 1fr)); overflow-x: auto; padding-block-end: .35rem; }
  .account-analytics-metrics, .analytics-distribution-grid { grid-template-columns: 1fr; }
  .analytics-history-grid { grid-template-columns: 1fr; }
}

@media (max-width: 48rem) {
  .result-filter-pills a { min-block-size: 2.45rem; }
  .rules-command--large .rules-command-head > nav { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .rules-command--large .rule-formula-row, .rules-command--large .void-matrix-list { grid-template-columns: 1fr; }
  .rules-command--large .rule-matrix-card { min-block-size: 0 !important; }
  .rank-columns { grid-template-columns: 1fr; overflow: visible; }
  .player-entry-card .form-grid--2 { grid-template-columns: 1fr; }
  .level-rank-workspace > header { align-items: stretch; flex-direction: column; }
  .rank-segment { inline-size: 100%; }
  .rank-segment button { flex: 1; }
  .account-analytics-overview { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .account-analytics-overview article:nth-child(odd) { border-inline-end: 1px solid #e5ecef; }
  .account-analytics-overview article:nth-child(even) { border-inline-end: 0; }
  .account-analytics-overview article:nth-child(-n+4) { border-block-end: 1px solid #e5ecef; }
  .account-analytics-heading { align-items: flex-start; flex-direction: column; }
  .analytics-trend-chart { grid-template-columns: repeat(12, 2.4rem); }
  .analytics-recent > div > a { grid-template-columns: minmax(0, 1fr) auto auto; }
  .analytics-recent a > strong { display: none; }
}

/* 升级通道：青蓝晋升轨道，延续赛事裁判控制台的信息密度 */
.upgrade-command { position: relative; display: grid; grid-template-columns: minmax(10rem, .38fr) minmax(0, 1fr); align-items: stretch; min-block-size: 6.4rem; margin-block-end: 1rem; overflow: hidden; color: #fff; background: linear-gradient(112deg, #09283d 0%, #0d3e58 58%, #0a5371 100%); border: 1px solid #0c4f6b; border-radius: .78rem; box-shadow: 0 14px 34px rgba(8, 44, 66, .14); }
.upgrade-command::after { position: absolute; inset-block-start: -4rem; inset-inline-end: 20%; inline-size: 7rem; block-size: 14rem; content: ''; background: rgba(71, 195, 232, .09); transform: rotate(28deg); pointer-events: none; }
.upgrade-command-mark { position: relative; z-index: 1; display: flex; align-items: center; gap: .75rem; padding: 1rem 1.15rem; border-inline-end: 1px solid rgba(177, 223, 239, .18); }
.upgrade-command-mark .icon { inline-size: 2rem; color: #56c8ee; }
.upgrade-command-mark span { font-size: 1.05rem; font-weight: 780; letter-spacing: .04em; }
.upgrade-stat-strip { position: relative; z-index: 1; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); }
.upgrade-stat-strip article { display: grid; align-content: center; gap: .3rem; min-inline-size: 0; padding: .9rem 1rem; border-inline-end: 1px solid rgba(177, 223, 239, .14); }
.upgrade-stat-strip article:last-child { border-inline-end: 0; }
.upgrade-stat-strip span { color: #a9cad8; font-size: .69rem; font-weight: 650; }
.upgrade-stat-strip b { color: #fff; font: 800 1.7rem/1 "Bahnschrift", sans-serif; }
.upgrade-stat-strip .is-pending b { color: #f5cc72; }
.upgrade-stat-strip .is-success b { color: #7ee4c2; }
.upgrade-stat-strip .is-failed b { color: #ff9da4; }
.upgrade-month-card.is-active { color: #fff; background: linear-gradient(135deg, #0b4e6d, #167da3); border-color: #167da3; box-shadow: 0 8px 18px rgba(16, 105, 143, .18); }
.upgrade-month-card.is-active span, .upgrade-month-card.is-active b { color: #dff7ff; }
.upgrade-month-card.is-active strong { color: #fff; }
.upgrade-month-card.is-active i { color: #ffe1a0; }
.upgrade-month-empty { grid-column: 1 / -1; min-block-size: 5.2rem; }
.upgrade-filters { border-block-start: 3px solid #36add5; }
.upgrade-filters .filter-pills a { position: relative; }
.upgrade-filters .filter-pills a small { display: inline-grid; place-items: center; min-inline-size: 1.25rem; block-size: 1.25rem; margin-inline-start: .3rem; padding-inline: .25rem; color: #4a6471; background: #e8eef1; border-radius: 999px; font-size: .52rem; }
.upgrade-filters .filter-pills a.is-active small { color: #fff; background: rgba(255,255,255,.22); }
.upgrade-table-panel { overflow: hidden; border-block-start: 3px solid #35afd8; }
.upgrade-table-panel table { min-inline-size: 72rem; }
.upgrade-table-panel th { font-size: .62rem; }
.upgrade-table-panel td { vertical-align: middle; font-size: .67rem; }
.upgrade-record-row.is-duo { background: linear-gradient(90deg, rgba(47, 175, 216, .055), transparent 42%); }
.upgrade-record-row:hover { background-color: #f7fbfc; }
.upgrade-record-row td:first-child { box-shadow: inset 3px 0 #36afd8; }
.upgrade-number { display: inline-flex; color: #0e4967; font: 790 .73rem/1 "Bahnschrift", sans-serif; letter-spacing: .035em; text-decoration: none; }
.upgrade-number:hover { color: #1187b3; text-decoration: underline; text-underline-offset: .22rem; }
.upgrade-record-row td:first-child > small, .upgrade-record-row td:nth-child(6) small { display: block; margin-block-start: .27rem; color: #87979f; font-size: .54rem; }
.upgrade-record-row td:first-child > em { display: inline-flex; margin-block-start: .38rem; padding: .2rem .36rem; color: #176b88; background: #e9f6fa; border: 1px solid #cae8f2; border-radius: .28rem; font-size: .5rem; font-style: normal; font-weight: 720; }
.upgrade-contestants { display: grid; gap: .45rem; }
.upgrade-person-inline { display: grid; grid-template-columns: 1.72rem minmax(0, 1fr); align-items: center; gap: .48rem; min-inline-size: 9rem; }
.upgrade-person-inline > span:last-child { display: grid; min-inline-size: 0; }
.upgrade-person-inline small { color: #2698bf; font-size: .48rem; font-weight: 800; }
.upgrade-person-inline b, .upgrade-person-inline em { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.upgrade-person-inline b { color: #284654; font-size: .67rem; }
.upgrade-person-inline em { color: #85949b; font-size: .5rem; font-style: normal; }
.avatar--tiny { inline-size: 1.72rem; block-size: 1.72rem; border: 1px solid #cfe5ed; }
.upgrade-level-route { display: inline-flex; align-items: center; gap: .42rem; white-space: nowrap; }
.upgrade-level-route b { color: #657984; font-size: .61rem; }
.upgrade-level-route .icon { inline-size: .72rem; color: #31a7ce; }
.upgrade-level-route strong { color: #0c5775; font-size: .67rem; }
.upgrade-mode-chip { display: inline-flex; padding: .28rem .45rem; color: #48616d; background: #f1f5f6; border: 1px solid #dce5e9; border-radius: .34rem; font-size: .56rem; font-weight: 720; }
.upgrade-outcome { display: inline-flex; align-items: center; gap: .38rem; inline-size: max-content; min-block-size: 1.8rem; padding: .3rem .5rem; border: 1px solid; border-radius: 999px; font-size: .58rem; font-weight: 760; }
.upgrade-outcome i { inline-size: .42rem; block-size: .42rem; background: currentColor; border-radius: 50%; }
.upgrade-outcome--pending { color: #8b610c; background: #fff8e5; border-color: #efdaa4; }
.upgrade-outcome--success { color: #087253; background: #eaf8f3; border-color: #bde6d8; }
.upgrade-outcome--failed { color: #b62c36; background: #fff1f2; border-color: #f1c7ca; }
.upgrade-empty { min-block-size: 15rem; }
.upgrade-empty .icon { color: #37add4; }

.upgrade-form { position: relative; display: grid; gap: .85rem; inline-size: min(100%, 72rem); margin-inline: auto; }
.upgrade-form-rail { display: grid; grid-template-columns: auto 1fr auto 1fr auto; align-items: center; gap: .55rem; padding: .65rem 1rem; color: #5d7581; background: #f7fafb; border: 1px solid #dce7eb; border-radius: .65rem; }
.upgrade-form-rail span { display: grid; place-items: center; inline-size: 1.8rem; block-size: 1.8rem; color: #fff; background: #0f6385; border-radius: 50%; font: 770 .6rem/1 "Bahnschrift", sans-serif; }
.upgrade-form-rail i { block-size: 2px; background: linear-gradient(90deg, #1b89b0, #74d2ec); }
.upgrade-form-section { overflow: hidden; border-color: #d7e4e9; border-radius: .72rem; }
.upgrade-form-section > header { display: flex; align-items: center; gap: .75rem; min-block-size: 4.2rem; padding: .8rem 1rem; background: linear-gradient(90deg, #f2f8fa, #fff); border-block-end: 1px solid #dfe9ed; }
.upgrade-form-section > header > span { display: grid; place-items: center; inline-size: 2rem; block-size: 2rem; color: #fff; background: #0f607f; border-radius: .42rem; font: 790 .61rem/1 "Bahnschrift", sans-serif; }
.upgrade-form-section > header h2 { margin: 0; color: #183f54; font-size: .9rem; }
.upgrade-form-section > header p { margin: .16rem 0 0; color: #748993; font-size: .61rem; }
.upgrade-mode-switch { inline-size: calc(100% - 2rem); margin: 1rem; }
.upgrade-mode-switch label { flex: 1; }
.upgrade-mode-switch span { justify-content: center; min-block-size: 2.7rem; font-size: .7rem; }
.upgrade-player-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .8rem; padding: 1rem; }
.upgrade-player-card { min-inline-size: 0; margin: 0; padding: .9rem; background: #fbfcfc; border: 1px solid #dae5e9; border-radius: .58rem; }
.upgrade-player-card--partner { background: #f4fafc; border-color: #cce6ef; }
.upgrade-player-card[hidden] { display: none; }
.upgrade-player-card legend { display: inline-flex; align-items: center; gap: .42rem; padding-inline: .2rem; color: #3b5867; font-size: .68rem; font-weight: 760; }
.upgrade-player-card legend span { display: grid; place-items: center; inline-size: 1.4rem; block-size: 1.4rem; color: #fff; background: #1883a8; border-radius: .3rem; font: 780 .56rem/1 "Bahnschrift", sans-serif; }
.upgrade-player-card .field { margin-block-start: .7rem; }
.upgrade-form-section > .form-grid { padding: 1rem; }
.upgrade-form-actions { position: sticky; inset-block-end: .6rem; z-index: 4; display: flex; align-items: center; justify-content: flex-end; gap: .65rem; padding: .7rem; background: rgba(247, 250, 251, .94); border: 1px solid #d8e4e9; border-radius: .65rem; box-shadow: 0 10px 28px rgba(14, 45, 63, .11); backdrop-filter: blur(10px); }

.upgrade-detail-hero { position: relative; display: flex; align-items: center; justify-content: space-between; gap: 1rem; min-block-size: 8.5rem; margin-block-end: .9rem; padding: 1.2rem 1.35rem; overflow: hidden; color: #fff; background: linear-gradient(115deg, #08283d, #0e4c68 65%, #127697); border-radius: .8rem; }
.upgrade-detail-hero::after { position: absolute; inset-block-start: -4rem; inset-inline-end: 28%; inline-size: 7rem; block-size: 16rem; content: ''; background: rgba(92, 210, 241, .1); transform: rotate(30deg); }
.upgrade-detail-hero > div { position: relative; z-index: 1; }
.upgrade-detail-hero > div:first-child > span { color: #9fcede; font-size: .63rem; font-weight: 700; }
.upgrade-detail-hero h1 { margin: .3rem 0 .24rem; color: #fff; font: 820 1.8rem/1 "Bahnschrift", sans-serif; letter-spacing: .04em; }
.upgrade-detail-hero p { margin: 0; color: #c7e2ec; font-size: .68rem; }
.upgrade-route-visual { display: flex; align-items: center; gap: .8rem; min-inline-size: 18rem; padding: .85rem 1rem; background: rgba(4, 30, 44, .28); border: 1px solid rgba(192, 234, 247, .2); border-radius: .6rem; }
.upgrade-route-visual span { color: #b7d2dc; font-size: .72rem; }
.upgrade-route-visual .icon { flex: 1; min-inline-size: 3rem; color: #4ad0f1; }
.upgrade-route-visual strong { color: #fff; font-size: .92rem; }
.upgrade-detail-grid { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(20rem, .65fr); align-items: start; gap: .9rem; }
.upgrade-detail-main, .upgrade-detail-grid > aside { display: grid; gap: .9rem; min-inline-size: 0; }
.upgrade-person-board { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .75rem; }
.upgrade-detail-person { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: .75rem; min-inline-size: 0; padding: .9rem; background: #fff; border: 1px solid #d7e4e9; border-block-start: 3px solid #39afd6; border-radius: .65rem; }
.upgrade-detail-person > span { min-inline-size: 0; }
.upgrade-detail-person small { color: #3395b6; font-size: .51rem; font-weight: 780; }
.upgrade-detail-person h2 { margin: .12rem 0; overflow: hidden; color: #244655; font-size: .86rem; text-overflow: ellipsis; white-space: nowrap; }
.upgrade-detail-person p { margin: 0; overflow: hidden; color: #83949c; font-size: .55rem; text-overflow: ellipsis; white-space: nowrap; }
.upgrade-detail-person > em { padding: .35rem .46rem; color: #0c6282; background: #eaf7fb; border-radius: .34rem; font-size: .58rem; font-style: normal; font-weight: 740; }
.upgrade-nomination { overflow: hidden; }
.upgrade-nomination > header, .upgrade-decision-log > header { display: flex; align-items: center; justify-content: space-between; min-block-size: 3.2rem; padding-inline: .9rem; background: #f4f8f9; border-block-end: 1px solid #e0e8ec; }
.upgrade-nomination h2, .upgrade-decision-log h2 { margin: 0; color: #2b4b5a; font-size: .78rem; }
.upgrade-nomination header span { color: #81939b; font-size: .55rem; }
.upgrade-nomination > p { min-block-size: 5rem; margin: 0; padding: .9rem; color: #526a76; font-size: .66rem; line-height: 1.7; }
.upgrade-nomination > footer { display: flex; justify-content: space-between; gap: .75rem; padding: .7rem .9rem; color: #84949b; background: #fafbfb; border-block-start: 1px solid #edf1f3; font-size: .54rem; }
.upgrade-decision-receipt, .upgrade-decision-form { overflow: hidden; border-block-start: 4px solid #35afd7; }
.upgrade-decision-receipt--success { border-block-start-color: #2aae83; }
.upgrade-decision-receipt--failed { border-block-start-color: #d94b54; }
.upgrade-decision-receipt > header { display: flex; align-items: center; justify-content: space-between; padding: .85rem; background: #f6f9fa; border-block-end: 1px solid #e1e9ed; }
.upgrade-decision-receipt > header time { color: #87979f; font-size: .52rem; }
.upgrade-decision-receipt > div { display: grid; grid-template-columns: repeat(2, 1fr); border-block-end: 1px solid #e7edef; }
.upgrade-decision-receipt > div span { display: grid; gap: .18rem; padding: .85rem; color: #7d8e97; font-size: .55rem; }
.upgrade-decision-receipt > div span:first-child { border-inline-end: 1px solid #e7edef; }
.upgrade-decision-receipt strong { color: #173f55; font: 790 1.35rem/1 "Bahnschrift", sans-serif; }
.upgrade-decision-receipt blockquote { margin: .85rem; padding: .75rem; color: #4d6571; background: #f5f8f9; border-inline-start: 3px solid #47b5d7; border-radius: .35rem; font-size: .62rem; line-height: 1.6; }
.upgrade-decision-receipt > footer { padding: 0 .85rem .85rem; color: #86969e; font-size: .53rem; }
.upgrade-decision-form > header { display: flex; align-items: center; gap: .65rem; padding: .85rem; color: #fff; background: linear-gradient(105deg, #0d405b, #116789); }
.upgrade-decision-form > header > span { display: grid; place-items: center; inline-size: 2.2rem; block-size: 2.2rem; background: rgba(255,255,255,.1); border-radius: .42rem; }
.upgrade-decision-form header .icon { inline-size: 1.2rem; color: #5bd2f2; }
.upgrade-decision-form h2 { margin: 0; color: #fff; font-size: .86rem; }
.upgrade-decision-form header p { margin: .15rem 0 0; color: #b6d7e4; font-size: .55rem; }
.upgrade-score-inputs { display: grid; grid-template-columns: repeat(2, 1fr); gap: .65rem; padding: .85rem .85rem 0; }
.upgrade-decision-form > .field, .upgrade-decision-form > button { margin: 0 .85rem .85rem; }
.upgrade-decision-switch { display: grid; grid-template-columns: repeat(2, 1fr); gap: .55rem; margin: .8rem .85rem; padding: 0; border: 0; }
.upgrade-decision-switch legend { margin-block-end: .45rem; color: #536d79; font-size: .61rem; font-weight: 720; }
.upgrade-decision-switch input { position: absolute; inline-size: 1px; block-size: 1px; opacity: 0; pointer-events: none; }
.upgrade-decision-switch span { display: flex; align-items: center; justify-content: center; gap: .4rem; min-block-size: 2.7rem; color: #5e7079; background: #f6f8f9; border: 1px solid #dce4e8; border-radius: .45rem; cursor: pointer; }
.upgrade-decision-switch span .icon { inline-size: .85rem; }
.upgrade-decision-switch input[value="success"]:checked + span { color: #087254; background: #eaf8f3; border-color: #81cdb3; box-shadow: inset 0 0 0 1px #81cdb3; }
.upgrade-decision-switch input[value="failed"]:checked + span { color: #b82c36; background: #fff1f2; border-color: #e7aab0; box-shadow: inset 0 0 0 1px #e7aab0; }
.upgrade-decision-switch input:focus-visible + span { outline: 3px solid rgba(43, 157, 198, .22); outline-offset: 2px; }
.upgrade-decision-log { overflow: hidden; }
.upgrade-decision-log > header b { display: grid; place-items: center; min-inline-size: 1.5rem; block-size: 1.5rem; color: #fff; background: #115a78; border-radius: 50%; font-size: .54rem; }
.upgrade-decision-log ol { display: grid; gap: .65rem; margin: 0; padding: .85rem; list-style: none; }
.upgrade-decision-log li { display: grid; grid-template-columns: .5rem minmax(0, 1fr); gap: .55rem; }
.upgrade-decision-log li > span { inline-size: .42rem; block-size: .42rem; margin-block-start: .28rem; background: #33a9d0; border-radius: 50%; }
.upgrade-decision-log li header { display: flex; justify-content: space-between; gap: .6rem; }
.upgrade-decision-log li b { color: #365361; font-size: .61rem; }
.upgrade-decision-log li time, .upgrade-decision-log li small { color: #87979f; font-size: .5rem; }
.upgrade-decision-log li p { margin: .16rem 0; color: #5b707a; font-size: .58rem; line-height: 1.55; }

@media (max-width: 72rem) {
  .upgrade-command { grid-template-columns: 1fr; }
  .upgrade-command-mark { min-block-size: 3.8rem; border-inline-end: 0; border-block-end: 1px solid rgba(177, 223, 239, .18); }
  .upgrade-detail-grid { grid-template-columns: 1fr; }
  .upgrade-detail-grid > aside { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .upgrade-detail-grid > aside > :only-child { grid-column: 1 / -1; }
}

@media (max-width: 48rem) {
  .upgrade-stat-strip { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .upgrade-stat-strip article:nth-child(-n+2) { border-block-end: 1px solid rgba(177, 223, 239, .14); }
  .upgrade-player-grid, .upgrade-person-board, .upgrade-detail-grid > aside { grid-template-columns: 1fr; }
  .upgrade-detail-grid > aside > :only-child { grid-column: auto; }
  .upgrade-detail-hero { align-items: stretch; flex-direction: column; }
  .upgrade-route-visual { min-inline-size: 0; }
  .upgrade-form-actions { align-items: stretch; flex-direction: column-reverse; }
  .upgrade-form-actions .button { inline-size: 100%; }
  .upgrade-table-panel .table-wrap { margin-inline: -.05rem; }
  .account-tabs { display: grid; grid-template-columns: 1fr; inline-size: 100%; }
  .account-tabs a { justify-content: space-between; }
}

/* 通知标准公告：以运营公文替代顶部快捷标签与更新气泡 */
.rules-command--large { grid-template-rows: auto minmax(0, 1fr) auto; }
.rules-command--large .rules-command-head { grid-template-columns: minmax(10rem, .28fr) minmax(32rem, .72fr); gap: 1rem; background: #0d2d42; border-color: #21465c; box-shadow: none; }
.rules-command--large .rules-command-head > div:first-child { display: grid; align-content: center; }
.rules-announcement-bar { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: .75rem; min-inline-size: 0; min-block-size: 3.25rem; padding: .42rem .5rem .42rem .56rem; color: #17384c; background: #fff; border: 1px solid #bacbd4; border-radius: .35rem; }
.rules-announcement-mark { display: grid; place-items: center; inline-size: 2.25rem; block-size: 2.25rem; color: #fff; background: #153d55; border-radius: .22rem; }
.rules-announcement-mark .icon { inline-size: 1rem; }
.rules-announcement-bar > div { display: grid; min-inline-size: 0; gap: .08rem; }
.rules-announcement-bar small { color: #718693; font-size: .64rem; font-weight: 720; letter-spacing: .08em; }
.rules-announcement-bar b { overflow: hidden; font-size: .88rem; text-overflow: ellipsis; white-space: nowrap; }
.rules-announcement-bar > button { display: inline-flex; align-items: center; justify-content: center; gap: .35rem; min-block-size: 2.3rem; padding-inline: .68rem; color: #173e56; background: #f7f9fa; border: 1px solid #cbd8de; border-radius: .25rem; font: 720 .64rem/1 inherit; cursor: pointer; }
.rules-announcement-bar > button:hover { color: #fff; background: #153d55; border-color: #153d55; }
.rules-announcement-bar > button:focus-visible { outline: 3px solid rgba(78, 184, 230, .28); outline-offset: 2px; }
.rules-announcement-bar > button:disabled { color: #8d9ba2; background: #f5f6f6; border-color: #dce2e5; cursor: default; }
.rules-announcement-bar > button .icon { inline-size: .75rem; }
.rules-announcement-bar.is-empty .rules-announcement-mark { color: #71838c; background: #edf1f3; }

.rules-version-ack { display: flex; align-items: center; justify-content: space-between; gap: 1rem; min-block-size: 3.35rem; padding: .5rem .65rem; color: #573b12; background: #fffbeb; border: 1px solid #ead7a5; border-radius: .4rem; }
.rules-version-ack > div { display: flex; align-items: center; gap: .55rem; }
.rules-version-ack .icon { inline-size: 1rem; color: #a56a12; }
.rules-version-ack span { display: grid; }
.rules-version-ack b { font-size: .68rem; }
.rules-version-ack small { color: #806b49; font-size: .56rem; }
.rules-version-ack .button { min-block-size: 2.2rem; }

body.has-modal-open { overflow: hidden; }
.rules-announcement-dialog { inline-size: min(52rem, calc(100vw - 2rem)); max-inline-size: none; max-block-size: min(44rem, calc(100dvh - 2rem)); margin: auto; padding: 0; overflow: hidden; color: #1c3544; background: #fff; border: 1px solid #8199a6; border-radius: .45rem; box-shadow: 0 22px 60px rgba(8, 30, 44, .22); }
.rules-announcement-dialog::backdrop { background: rgba(6, 24, 36, .58); backdrop-filter: blur(2px); }
.rules-announcement-document { display: grid; grid-template-rows: auto minmax(0, 1fr) auto; max-block-size: min(44rem, calc(100dvh - 2rem)); }
.rules-announcement-document-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 1rem; padding: 1.15rem 1.25rem 1rem; border-block-start: 4px solid #153d55; border-block-end: 1px solid #d8e1e5; }
.rules-announcement-document-head > div { display: grid; gap: .15rem; }
.rules-announcement-document-head span { color: #6f8490; font: 750 .56rem/1.4 "Bahnschrift", sans-serif; letter-spacing: .16em; }
.rules-announcement-document-head h2 { margin: 0; color: #14384e; font-size: 1.4rem; letter-spacing: -.02em; }
.rules-announcement-document-head p { margin: .1rem 0 0; color: #72858f; font-size: .72rem; }
.rules-announcement-document-head > button { display: grid; place-items: center; inline-size: 2.35rem; block-size: 2.35rem; color: #536c79; background: #f5f7f8; border: 1px solid #d7e0e4; border-radius: .25rem; cursor: pointer; }
.rules-announcement-document-head > button:hover { color: #fff; background: #153d55; border-color: #153d55; }
.rules-announcement-document-head > button:focus-visible { outline: 3px solid rgba(40, 146, 191, .25); outline-offset: 2px; }
.rules-announcement-document-head .icon { inline-size: .95rem; }
.rules-announcement-list { overflow-y: auto; padding: .25rem 1.25rem .5rem; overscroll-behavior: contain; }
.rules-announcement-item { display: grid; grid-template-columns: 3.2rem minmax(0, 1fr); min-inline-size: 0; }
.rules-announcement-index { position: relative; display: grid; grid-template-rows: auto 1fr; justify-items: start; padding-block-start: 1.05rem; color: #758a95; font: 760 .63rem/1 "Bahnschrift", sans-serif; }
.rules-announcement-index::after { position: absolute; inset-block-start: 1.25rem; inset-inline-start: 1.55rem; inline-size: .45rem; block-size: .45rem; content: ''; background: #91a6b0; border: 2px solid #fff; border-radius: 50%; box-shadow: 0 0 0 1px #91a6b0; }
.rules-announcement-index i { inline-size: 1px; block-size: 100%; margin-block-start: .55rem; margin-inline-start: 1.76rem; background: #d8e1e5; }
.rules-announcement-item:last-child .rules-announcement-index i { background: transparent; }
.rules-announcement-item.is-latest .rules-announcement-index { color: #9b2e34; }
.rules-announcement-item.is-latest .rules-announcement-index::after { background: #9b2e34; box-shadow: 0 0 0 1px #9b2e34; }
.rules-announcement-copy { min-inline-size: 0; padding: 1rem 0 1.05rem; border-block-end: 1px solid #e3e9ec; }
.rules-announcement-item:last-child .rules-announcement-copy { border-block-end: 0; }
.rules-announcement-copy > header { display: flex; align-items: baseline; justify-content: space-between; gap: .75rem; }
.rules-announcement-copy header b { color: #18394c; font-size: .96rem; }
.rules-announcement-copy time { flex: none; color: #80929b; font-size: .64rem; }
.rules-announcement-copy p { margin: .65rem 0; color: #405b69; font-size: .82rem; line-height: 1.85; }
.rules-announcement-copy > small { color: #7e9098; font-size: .62rem; }
.rules-announcement-document > footer { display: flex; align-items: center; justify-content: space-between; gap: 1rem; min-block-size: 4.15rem; padding: .65rem 1.25rem; background: #f4f7f8; border-block-start: 1px solid #d8e1e5; }
.rules-announcement-document > footer > span { color: #758791; font-size: .56rem; letter-spacing: .05em; }
.rules-announcement-empty { display: grid; place-items: center; min-block-size: 12rem; color: #6d818c; text-align: center; }
.rules-announcement-empty p { margin: .35rem 0 0; font-size: .65rem; }

/* 系统设置：公告发布与档案维护 */
.announcement-admin { margin-block-start: 1rem; overflow: hidden; border-color: #cddae0; border-radius: .55rem; }
.announcement-admin-heading { display: flex; align-items: center; justify-content: space-between; gap: 1rem; min-block-size: 5rem; padding: .85rem 1rem; color: #fff; background: #12364c; border-block-end: 1px solid #294d62; }
.announcement-admin-heading > div { display: grid; gap: .1rem; }
.announcement-admin-heading span { color: #8eb0c0; font: 750 .52rem/1.4 "Bahnschrift", sans-serif; letter-spacing: .15em; }
.announcement-admin-heading h2 { margin: 0; color: #fff; font-size: 1rem; }
.announcement-admin-heading p { margin: .12rem 0 0; color: #b9ced8; font-size: .6rem; }
.announcement-admin-heading strong { display: flex; align-items: baseline; gap: .35rem; font: 790 1.5rem/1 "Bahnschrift", sans-serif; }
.announcement-admin-heading strong small { color: #aac3cf; font: 600 .55rem/1 inherit; }
.announcement-admin-layout { display: grid; grid-template-columns: minmax(19rem, .72fr) minmax(26rem, 1.28fr); min-inline-size: 0; }
.announcement-admin-create { display: grid; align-content: start; gap: .8rem; min-inline-size: 0; padding: 1rem; background: #f7f9fa; border-inline-end: 1px solid #d9e2e6; }
.announcement-compose-number { display: flex; align-items: baseline; justify-content: space-between; padding-block-end: .6rem; border-block-end: 1px solid #d7e0e4; }
.announcement-compose-number span { color: #657b86; font-size: .62rem; font-weight: 720; }
.announcement-compose-number b { color: #163f56; font: 700 1.3rem/1 "Bahnschrift", sans-serif; }
.announcement-admin-create textarea, .announcement-admin-edit textarea { resize: vertical; }
.announcement-admin-create > .button { justify-self: start; min-inline-size: 8.5rem; }
.announcement-admin-register { min-inline-size: 0; background: #fff; }
.announcement-admin-register > header { display: flex; align-items: center; justify-content: space-between; min-block-size: 3.2rem; padding-inline: 1rem; background: #f8fafb; border-block-end: 1px solid #dde5e8; }
.announcement-admin-register > header b { color: #294b5d; font-size: .72rem; }
.announcement-admin-register > header small { color: #80919a; font-size: .55rem; }
.announcement-admin-list { display: grid; }
.announcement-admin-item { display: grid; grid-template-columns: 8.2rem minmax(0, 1fr); min-inline-size: 0; border-block-end: 1px solid #e1e7ea; }
.announcement-admin-item:last-child { border-block-end: 0; }
.announcement-admin-item > header { display: grid; align-content: start; gap: .65rem; padding: .9rem .8rem; background: #f3f6f7; border-inline-end: 1px solid #dfe6e9; }
.announcement-admin-item > header > span { color: #153e55; font: 780 1.35rem/1 "Bahnschrift", sans-serif; }
.announcement-admin-item > header > div { display: grid; gap: .16rem; }
.announcement-admin-item > header b { color: #217459; font-size: .59rem; }
.announcement-admin-item.is-hidden > header b { color: #8b6668; }
.announcement-admin-item > header time { color: #84939a; font-size: .5rem; line-height: 1.5; }
.announcement-admin-item > header form { margin-block-start: auto; }
.announcement-visibility-button { min-block-size: 2.15rem; inline-size: 100%; color: #526d79; background: #fff; border: 1px solid #ccd8dd; border-radius: .25rem; font: 700 .56rem/1 inherit; cursor: pointer; }
.announcement-visibility-button:hover { color: #fff; background: #153e55; border-color: #153e55; }
.announcement-visibility-button:focus-visible { outline: 3px solid rgba(40, 146, 191, .22); outline-offset: 2px; }
.announcement-admin-edit { display: grid; grid-template-columns: minmax(10rem, .65fr) minmax(14rem, 1.35fr); gap: .75rem; min-inline-size: 0; padding: .85rem; }
.announcement-admin-edit > footer { grid-column: 1 / -1; display: flex; align-items: center; justify-content: space-between; gap: .75rem; }
.announcement-admin-edit > footer small { color: #81929a; font-size: .53rem; }
.announcement-admin-edit > footer .button { min-block-size: 2.2rem; }
.announcement-admin-empty { display: grid; place-items: center; align-content: center; min-block-size: 18rem; padding: 1rem; color: #71848e; text-align: center; }
.announcement-admin-empty .icon { inline-size: 1.4rem; margin-block-end: .5rem; }
.announcement-admin-empty b { color: #365463; font-size: .76rem; }
.announcement-admin-empty p { max-inline-size: 20rem; margin: .35rem 0 0; font-size: .58rem; line-height: 1.6; }

@media (max-width: 64rem) {
  .rules-command--large .rules-command-head { grid-template-columns: 1fr; }
  .rules-announcement-bar { grid-column: auto; inline-size: 100%; }
  .announcement-admin-layout { grid-template-columns: 1fr; }
  .announcement-admin-create { border-inline-end: 0; border-block-end: 1px solid #d9e2e6; }
}

@media (max-width: 48rem) {
  .rules-command--large .rules-command-head { gap: .65rem; padding: .72rem; }
  .rules-command--large .rules-command-head h1 { font-size: 1.22rem; }
  .rules-announcement-bar { grid-template-columns: auto minmax(0, 1fr); gap: .58rem; padding: .4rem; }
  .rules-announcement-bar > button { grid-column: 1 / -1; inline-size: 100%; }
  .rules-version-ack { align-items: stretch; flex-direction: column; }
  .rules-version-ack form, .rules-version-ack .button { inline-size: 100%; }
  .rules-announcement-dialog { inline-size: calc(100vw - 1rem); max-block-size: calc(100dvh - 1rem); }
  .rules-announcement-document { max-block-size: calc(100dvh - 1rem); }
  .rules-announcement-document-head { padding: .9rem; }
  .rules-announcement-document-head h2 { font-size: 1.08rem; }
  .rules-announcement-document-head p { max-inline-size: 15rem; }
  .rules-announcement-list { padding-inline: .85rem; }
  .rules-announcement-item { grid-template-columns: 2.5rem minmax(0, 1fr); }
  .rules-announcement-index::after { inset-inline-start: 1.15rem; }
  .rules-announcement-index i { margin-inline-start: 1.36rem; }
  .rules-announcement-copy > header { align-items: flex-start; flex-direction: column; gap: .28rem; }
  .rules-announcement-copy p { font-size: .78rem; }
  .rules-announcement-document > footer { align-items: stretch; flex-direction: column; padding: .7rem .9rem; }
  .rules-announcement-document > footer .button { inline-size: 100%; }
  .announcement-admin-heading { align-items: flex-start; }
  .announcement-admin-heading p { max-inline-size: 14rem; }
  .announcement-admin-item { grid-template-columns: 1fr; }
  .announcement-admin-item > header { grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: .6rem; border-inline-end: 0; border-block-end: 1px solid #dfe6e9; }
  .announcement-admin-item > header form { margin-block-start: 0; }
  .announcement-visibility-button { inline-size: auto; padding-inline: .6rem; }
  .announcement-admin-edit { grid-template-columns: 1fr; }
  .announcement-admin-edit > footer { grid-column: auto; }
}

@media (prefers-reduced-motion: no-preference) {
  .rules-announcement-dialog[open] { animation: rules-notice-in .16s ease-out; }
  @keyframes rules-notice-in { from { opacity: 0; transform: translateY(.5rem); } to { opacity: 1; transform: translateY(0); } }
  .share-safety-dialog[open] { animation: share-safety-in .18s ease-out; }
  @keyframes share-safety-in { from { opacity: 0; transform: translateY(.6rem) scale(.985); } to { opacity: 1; transform: translateY(0) scale(1); } }
}

/* 录入页：与服务端评分规则同步的实时裁决带 */
.inspection-workbench { padding-block-end: 8.8rem; }
[data-performance-mode="optimized"] { contain: style; }
.games-editor--compact legend { display: flex; align-items: center; inline-size: 100%; }
.games-editor--compact legend output { margin-inline-start: auto; color: #173e55; font: 760 .68rem/1 "Bahnschrift", "Segoe UI", sans-serif; }
.adjudication-dock {
  --adjudication-success: #087a55;
  --adjudication-warning: #a76508;
  --adjudication-danger: #c2252f;
  --adjudication-color: #607985;
  display: grid;
  grid-template-columns: minmax(7rem, .6fr) minmax(7rem, .6fr) minmax(10rem, .9fr) minmax(28rem, 2.4fr);
  align-items: stretch;
  gap: 0;
  min-block-size: 7.2rem;
  padding: .55rem;
  overflow: visible;
  background: rgba(248, 250, 251, .98);
  border-color: #cdd9de;
  border-radius: .65rem .65rem 0 0;
  box-shadow: 0 -10px 30px rgba(14, 42, 58, .1);
  backdrop-filter: blur(16px);
}
.inspection-workbench .adjudication-dock {
  grid-template-columns: minmax(7rem, .6fr) minmax(7rem, .6fr) minmax(10rem, .9fr) minmax(28rem, 2.4fr);
}
.adjudication-dock[data-result="passed"] { --adjudication-color: #087a55; --adjudication-soft: #e3f7ef; }
.adjudication-dock[data-result="training"], .adjudication-dock[data-result="retest"] { --adjudication-color: #a76508; --adjudication-soft: #fff2d9; }
.adjudication-dock[data-result="downgrade"], .adjudication-dock[data-result="removed"] { --adjudication-color: #c2252f; --adjudication-soft: #ffe7e9; }
.score-dock--workbench.adjudication-dock > div {
  min-inline-size: 0;
  padding: .55rem .75rem;
  border-inline: 0;
  border-inline-end: 1px solid #dce4e7;
}
.score-dock--workbench.adjudication-dock > div:first-child { border-inline-start: 0; }
.adjudication-dock span { color: #687c86; font-size: .75rem; font-weight: 700; }
.adjudication-dock small { color: #758892; font-size: .7rem; line-height: 1.4; }
.adjudication-dock em, .adjudication-dock i { color: inherit; font-style: normal; }
.dock-reservation { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-content: center; gap: .28rem .45rem; }
.dock-reservation > span, .dock-reservation > small { grid-column: 1 / -1; }
.dock-reservation > small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.reserved-code-button { display: inline-flex; align-items: center; gap: .35rem; min-inline-size: 0; padding: 0; color: #173b50; background: transparent; border: 0; cursor: pointer; }
.reserved-code-button b, .reserved-code-pending { overflow: visible; color: #173b50; font: 790 1.15rem/1.05 "Bahnschrift", "Segoe UI", sans-serif; letter-spacing: .025em; text-overflow: clip; white-space: normal; overflow-wrap: anywhere; }
.inspection-workbench .reserved-code-button b { overflow: visible; text-overflow: clip; white-space: normal; overflow-wrap: anywhere; }
.reserved-code-button .icon { flex: 0 0 auto; inline-size: .78rem; color: #537484; }
.reserved-code-button small { flex: 0 0 auto; color: #607d8b; }
.reserved-code-button:hover b, .reserved-code-button.is-copied b { color: #0c6c75; }
.reserved-code-button:focus-visible { outline: 3px solid rgba(27, 112, 142, .25); outline-offset: 4px; border-radius: .2rem; }
.dock-metric { display: grid; grid-template-columns: 1fr auto; grid-template-areas: "label value" "note value"; align-content: center; gap: .2rem .5rem; }
.dock-metric > span { grid-area: label; }
.dock-metric > b { grid-area: value; align-self: center; color: var(--adjudication-color); font: 820 1.78rem/1 "Bahnschrift", "Segoe UI", sans-serif; transition: color .16s ease; }
.dock-metric > small { grid-area: note; }
.dock-metric em { color: var(--adjudication-color); font-weight: 800; }
.adjudication-dock[data-technical-status="passed"] [data-score-state="technical"], .adjudication-dock[data-service-status="passed"] [data-score-state="service"] { --adjudication-color: var(--adjudication-success); background: #eef9f5; }
.adjudication-dock[data-technical-status="downgrade"] [data-score-state="technical"], .adjudication-dock[data-technical-status="retest"] [data-score-state="technical"], .adjudication-dock[data-service-status="removed"] [data-score-state="service"] { --adjudication-color: var(--adjudication-danger); background: #fff0f1; }
.adjudication-dock[data-service-status="training"] [data-score-state="service"] { --adjudication-color: var(--adjudication-warning); background: #fff8e9; }
.dock-verdict { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-content: center; gap: .18rem .55rem; padding-inline-start: 1rem !important; background: linear-gradient(100deg, var(--adjudication-soft, #edf2f4), transparent 75%); box-shadow: inset 5px 0 var(--adjudication-color); transition: box-shadow .15s ease, background .15s ease; }
.dock-verdict > span, .dock-verdict > b, .dock-verdict > small { grid-column: 1; }
.dock-verdict > b { color: var(--adjudication-color); font: 840 1.18rem/1.1 "Segoe UI Variable", "Segoe UI", sans-serif; }
.dock-verdict > em { grid-column: 2; grid-row: 1 / 3; align-self: center; padding: .3rem .5rem; color: var(--adjudication-color); background: #fff; border: 1px solid color-mix(in srgb, var(--adjudication-color) 30%, #fff); border-radius: 999px; font-size: .66rem; font-weight: 800; white-space: nowrap; }
.dock-verdict > small { display: -webkit-box; overflow: hidden; color: #526b77; font-size: .7rem; line-height: 1.45; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.score-dock--workbench.adjudication-dock > .dock-actions { display: grid; grid-template-columns: minmax(0, .82fr) minmax(0, 1.18fr); align-items: stretch; gap: .45rem; padding-inline-end: 0; border-inline-end: 0; }
.adjudication-dock .dock-actions .button { min-inline-size: 0; min-block-size: 100%; margin: 0; padding-inline: .65rem; border-radius: .42rem; font-size: .8125rem; white-space: nowrap; }
.adjudication-dock .dock-actions .button .icon { inline-size: .78rem; }
.adjudication-dock .dock-actions .evidence-document-button { color: #264f64; background: #fff; border-color: #cbd8dd; }
.adjudication-dock .dock-actions .evidence-document-button:hover { color: #12384d; border-color: #8ba6b2; }
.adjudication-dock .dock-actions .evidence-document-button.is-disabled { color: #91a0a7; background: #edf1f3; border-color: #dce3e6; cursor: not-allowed; }

@media (max-width: 64rem) {
  .adjudication-dock { grid-template-columns: minmax(6.5rem, .6fr) minmax(6.5rem, .6fr) minmax(9rem, .85fr) minmax(24rem, 2.2fr); max-inline-size: calc(100% - 1.25rem); }
  .score-dock--workbench.adjudication-dock > .dock-reservation { display: grid; }
  .score-dock--workbench.adjudication-dock > div { padding-inline: .55rem; }
  .adjudication-dock .dock-actions .button { padding-inline: .45rem; }
}

@media (max-width: 48rem) {
  .inspection-workbench { padding-block-end: 15.5rem; }
  .adjudication-dock,
  .inspection-workbench .adjudication-dock {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-template-areas: "technical service" "verdict verdict" "actions actions";
    gap: 0;
    min-block-size: 14.25rem;
    padding: .4rem;
  }
  .adjudication-dock .dock-reservation { grid-area: reservation; }
  .adjudication-dock .dock-code-evidence .dock-reservation { grid-area: auto; }
  .adjudication-dock .dock-metric--technical { grid-area: technical; }
  .adjudication-dock .dock-metric--service { grid-area: service; }
  .adjudication-dock .dock-verdict { grid-area: verdict; border-inline-end: 0; }
  .score-dock--workbench.adjudication-dock > .dock-actions { grid-area: actions; min-block-size: 3.35rem; padding: .4rem 0 0; border-block-start: 1px solid #dce4e7; }
  .adjudication-dock .dock-actions .button { min-block-size: 2.75rem; }
  .score-dock--workbench.adjudication-dock > div:first-child { display: grid; }
  .score-dock--workbench.adjudication-dock small { display: block; }
  .score-dock--workbench.adjudication-dock .reserved-code-button small { display: inline; }
  .dock-metric { border-block-start: 1px solid #dce4e7; }
  .dock-metric--service { border-inline-end: 0 !important; }
  .dock-verdict > small { font-size: .7rem; }
}

@media (max-width: 25rem) {
  .topbar-inner { gap: .4rem; }
  .brand { min-inline-size: 0; padding-inline: 0; }
  .brand b { max-inline-size: 6.25rem; font-size: .78rem; }
  .topbar-actions { gap: .35rem; }
  .settings-button { display: none; }
  .inspection-workbench { padding-block-end: 16.5rem; }
  .adjudication-dock { min-block-size: 15.25rem; }
  .reserved-code-button b, .reserved-code-pending { font-size: 1.15rem; }
  .dock-metric > b { font-size: 1.35rem; }
  .dock-verdict > b { font-size: 1rem; }
  .adjudication-dock .dock-actions .button { font-size: .8125rem; }
}

@media (prefers-reduced-motion: reduce) {
  .dock-verdict { transition: none; }
}

/* 管理员操作日志：一张连续的运营审计账本 */
.audit-command {
  display: flex;
  align-items: center;
  gap: .85rem;
  min-block-size: 4.35rem;
  margin-block-end: .75rem;
  padding: .8rem 1rem;
  color: #eef7fa;
  background: #123b50;
  border: 1px solid #0f3345;
  border-radius: .65rem;
  box-shadow: 0 5px 15px rgba(18, 59, 80, .1);
}
.audit-command > span { display: grid; flex: 0 0 auto; place-items: center; inline-size: 2.25rem; block-size: 2.25rem; color: #7fc8e5; background: rgba(255, 255, 255, .07); border: 1px solid rgba(255, 255, 255, .1); border-radius: .45rem; }
.audit-command > span .icon { inline-size: 1.1rem; }
.audit-command > div { display: grid; gap: .2rem; min-inline-size: 0; }
.audit-command b { font-size: .95rem; letter-spacing: .01em; }
.audit-command small { color: #b9d0da; font-size: .72rem; line-height: 1.4; }
.audit-command em { margin-inline-start: auto; color: #fff; font: 780 1.05rem/1 "Bahnschrift", "Segoe UI", sans-serif; font-style: normal; white-space: nowrap; }

.audit-filter-panel {
  display: grid;
  grid-template-columns: minmax(7.5rem, .85fr) minmax(8rem, 1fr) minmax(8rem, 1fr) minmax(10rem, 1.2fr) minmax(8rem, .85fr) minmax(8rem, .85fr) auto;
  align-items: end;
  gap: .65rem;
  margin-block-end: .75rem;
  padding: .8rem;
  background: #fff;
  border: 1px solid #d9e2e6;
  border-radius: .65rem;
}
.audit-filter-panel label { display: grid; gap: .32rem; min-inline-size: 0; }
.audit-filter-panel label > span { color: #617580; font-size: .68rem; font-weight: 700; }
.audit-filter-panel input, .audit-filter-panel select { inline-size: 100%; min-block-size: 2.6rem; padding-inline: .65rem; color: #233f4f; background: #fbfcfc; border: 1px solid #d5dfe3; border-radius: .38rem; font-size: .76rem; }
.audit-filter-panel input:focus, .audit-filter-panel select:focus { outline: 3px solid rgba(31, 105, 139, .12); border-color: #6b9eb6; }
.audit-filter-order input { font-family: "Bahnschrift", "Segoe UI", sans-serif; letter-spacing: .02em; }
.audit-filter-actions { display: flex; align-items: center; justify-content: flex-end; gap: .55rem; min-block-size: 2.6rem; white-space: nowrap; }
.audit-filter-actions .button { min-block-size: 2.6rem; padding-inline: .9rem; font-size: .72rem; }
.audit-filter-clear { color: #617783; font-size: .68rem; text-decoration: none; }
.audit-filter-clear:hover, .audit-filter-clear:focus-visible { color: #a42f35; text-decoration: underline; text-underline-offset: .2rem; }

.audit-ledger {
  overflow: hidden;
  background: #fff;
  border: 1px solid #d7e0e4;
  border-radius: .65rem;
  box-shadow: 0 6px 20px rgba(18, 51, 69, .04);
}
.audit-ledger > header,
.audit-ledger-row > summary {
  display: grid;
  grid-template-columns: 8.6rem minmax(9.5rem, 1.05fr) minmax(6.5rem, .72fr) minmax(7.7rem, .78fr) minmax(8.5rem, 1fr) minmax(12rem, 1.45fr) 1rem;
  align-items: center;
  gap: .7rem;
}
.audit-ledger > header { min-block-size: 2.75rem; padding-inline: .9rem; color: #6d7e87; background: #f3f6f7; border-block-end: 1px solid #dce4e7; font-size: .66rem; font-weight: 720; }
.audit-ledger-row { position: relative; border-block-end: 1px solid #e8edef; }
.audit-ledger-row:last-of-type { border-block-end: 0; }
.audit-ledger-row > summary { min-block-size: 4.5rem; padding: .68rem .9rem; list-style: none; cursor: pointer; }
.audit-ledger-row > summary::-webkit-details-marker { display: none; }
.audit-ledger-row > summary:hover { background: #f9fbfb; }
.audit-ledger-row[open] > summary { background: #f7fafb; box-shadow: inset 3px 0 #1b6689; }
.audit-ledger-row > summary > time { display: grid; gap: .18rem; color: #253f4d; }
.audit-ledger-row > summary > time b { font: 730 .76rem/1 "Bahnschrift", "Segoe UI", sans-serif; }
.audit-ledger-row > summary > time small { color: #738691; font: 650 .68rem/1 "Bahnschrift", "Segoe UI", sans-serif; letter-spacing: .025em; }
.audit-actor { display: grid; gap: .16rem; min-inline-size: 0; }
.audit-actor b { overflow: hidden; color: #243e4d; font-size: .78rem; text-overflow: ellipsis; white-space: nowrap; }
.audit-actor small { overflow: hidden; color: #758791; font-size: .68rem; text-overflow: ellipsis; white-space: nowrap; }
.audit-module { display: inline-flex; align-items: center; gap: .4rem; min-inline-size: 0; color: #4e6571; font-size: .72rem; font-weight: 680; }
.audit-module-mark { flex: 0 0 auto; inline-size: .46rem; block-size: .46rem; background: #648392; border-radius: 50%; box-shadow: 0 0 0 3px #edf2f4; }
.audit-module-mark--inspection { background: #26769a; }
.audit-module-mark--feedback_ticket, .audit-module-mark--feedback, .audit-module-mark--inspection_change_request, .audit-module-mark--inspection_change, .audit-module-mark--penalty { background: #bc3d43; }
.audit-module-mark--upgrade_case, .audit-module-mark--upgrade { background: #298467; }
.audit-module-mark--user, .audit-module-mark--account { background: #815eab; }
.audit-module-mark--setting, .audit-module-mark--settings, .audit-module-mark--rule_announcement, .audit-module-mark--announcement, .audit-module-mark--rule_version, .audit-module-mark--rules { background: #9b701f; }
.audit-module-mark--auth { background: #5e7380; }
.audit-module-mark--share { background: #287f86; }
.audit-module-mark--export { background: #496ea7; }
.audit-order-ref { overflow: hidden; color: #1d506a; font: 740 .72rem/1 "Bahnschrift", "Segoe UI", sans-serif; letter-spacing: .025em; text-overflow: ellipsis; white-space: nowrap; }
.audit-order-ref small { color: #9aa6ac; font: 500 .66rem/1 "Segoe UI", sans-serif; letter-spacing: 0; }
.audit-action { overflow: hidden; color: #263f4c; font-size: .75rem; text-overflow: ellipsis; white-space: nowrap; }
.audit-summary { display: -webkit-box; margin: 0; overflow: hidden; color: #62747d; font-size: .72rem; line-height: 1.45; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.audit-ledger-row > summary > .icon { inline-size: .76rem; color: #82939b; transform: rotate(90deg); transition: transform .16s ease; }
.audit-ledger-row[open] > summary > .icon { transform: rotate(-90deg); }

.audit-ledger-drawer { padding: .95rem 1rem 1rem; background: #f5f8f9; border-block-start: 1px solid #dfe7ea; }
.audit-ledger-drawer > header { display: flex; align-items: flex-start; justify-content: space-between; gap: 1rem; margin-block-end: .75rem; }
.audit-ledger-drawer > header > div { display: grid; gap: .16rem; }
.audit-ledger-drawer > header small { color: #7f9098; font-size: .65rem; font-weight: 700; letter-spacing: .08em; }
.audit-ledger-drawer > header h2 { margin: 0; color: #253f4e; font-size: .84rem; line-height: 1.45; }
.audit-ledger-drawer > header > span { padding: .3rem .48rem; color: #406071; background: #fff; border: 1px solid #d7e1e5; border-radius: .3rem; font-size: .65rem; white-space: nowrap; }
.audit-ledger-drawer > dl { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); margin: 0 0 .75rem; overflow: hidden; background: #fff; border: 1px solid #dce4e7; border-radius: .45rem; }
.audit-ledger-drawer > dl > div { display: grid; gap: .18rem; padding: .65rem .75rem; border-inline-end: 1px solid #e4eaed; }
.audit-ledger-drawer > dl > div:last-child { border-inline-end: 0; }
.audit-ledger-drawer dt { color: #7d8d95; font-size: .65rem; }
.audit-ledger-drawer dd { margin: 0; overflow-wrap: anywhere; color: #294555; font-size: .72rem; font-weight: 680; }
.audit-change-table { overflow-x: auto; background: #fff; border: 1px solid #d8e1e5; border-radius: .45rem; }
.audit-change-table table { inline-size: 100%; border-collapse: collapse; table-layout: fixed; }
.audit-change-table th, .audit-change-table td { padding: .62rem .75rem; text-align: start; vertical-align: top; border-block-end: 1px solid #e8edef; overflow-wrap: anywhere; }
.audit-change-table thead th { color: #667a84; background: #f0f4f5; font-size: .65rem; }
.audit-change-table thead th:first-child, .audit-change-table tbody th { inline-size: 18%; }
.audit-change-table tbody th { color: #304e5e; font-size: .7rem; }
.audit-change-table td { color: #566c77; font: 520 .7rem/1.5 "Bahnschrift", "Segoe UI", sans-serif; }
.audit-change-table tbody tr:last-child th, .audit-change-table tbody tr:last-child td { border-block-end: 0; }
.audit-no-changes { margin: 0; padding: .75rem; color: #788991; background: #fff; border: 1px dashed #d4dfe3; border-radius: .42rem; font-size: .7rem; }
.audit-ledger-drawer blockquote { margin: .7rem 0 0; padding: .65rem .75rem; color: #536a75; background: #fff; border-inline-start: 3px solid #83a7b8; font-size: .7rem; line-height: 1.55; }
.audit-ledger-drawer > footer { display: flex; justify-content: flex-end; gap: .85rem; margin-block-start: .75rem; }
.audit-ledger-drawer > footer a { display: inline-flex; align-items: center; gap: .35rem; color: #1c5e7c; font-size: .68rem; font-weight: 700; text-decoration: none; }
.audit-ledger-drawer > footer a:hover, .audit-ledger-drawer > footer a:focus-visible { color: #0f3e55; text-decoration: underline; text-underline-offset: .2rem; }
.audit-ledger-drawer > footer .icon { inline-size: .72rem; }

/* 按订单筛选时，账本左侧形成一条连续的业务时间轴。 */
.audit-ledger.is-order-timeline .audit-ledger-row::before { position: absolute; z-index: 1; inset-block: 0; inset-inline-start: 1.1rem; inline-size: 1px; content: ""; background: #bdd0d9; }
.audit-ledger.is-order-timeline .audit-ledger-row::after { position: absolute; z-index: 2; inset-block-start: 1.75rem; inset-inline-start: .88rem; inline-size: .46rem; block-size: .46rem; content: ""; background: #1d6687; border: 3px solid #fff; border-radius: 50%; box-shadow: 0 0 0 1px #9fb9c5; }
.audit-ledger.is-order-timeline .audit-ledger-row > summary { padding-inline-start: 1.8rem; }
.audit-ledger.is-order-timeline .audit-ledger-row[open] > summary { box-shadow: none; }
.audit-ledger-empty { min-block-size: 15rem; }
.audit-pagination { display: flex; align-items: center; justify-content: space-between; gap: .8rem; min-block-size: 3.15rem; padding-inline: .9rem; color: #73858e; background: #f4f7f8; border-block-start: 1px solid #dce4e7; font-size: .68rem; }
.audit-pagination > div { display: flex; align-items: center; gap: .48rem; }
.audit-pagination a, .audit-pagination > div > span { padding: .36rem .58rem; color: #385564; text-decoration: none; background: #fff; border: 1px solid #d6e0e4; border-radius: .32rem; }
.audit-pagination > div > span { color: #a0aaaf; }
.audit-pagination b { color: #304b5a; }

@media (max-width: 78rem) {
  .audit-filter-panel { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .audit-filter-actions { grid-column: span 2; }
  .audit-ledger > header, .audit-ledger-row > summary { grid-template-columns: 8.2rem minmax(8.5rem, 1fr) minmax(6.2rem, .7fr) minmax(7rem, .75fr) minmax(8rem, .9fr) minmax(10rem, 1.2fr) 1rem; gap: .5rem; }
}

@media (max-width: 64rem) {
  .audit-ledger > header { display: none; }
  .audit-ledger-row > summary { grid-template-columns: 7.8rem minmax(8.5rem, 1fr) minmax(6.5rem, .75fr) minmax(8rem, 1fr) 1rem; }
  .audit-module, .audit-summary { display: none; }
  .audit-ledger-drawer > dl { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .audit-ledger-drawer > dl > div:nth-child(even) { border-inline-end: 0; }
  .audit-ledger-drawer > dl > div:nth-child(-n+4) { border-block-end: 1px solid #e4eaed; }
  .audit-ledger-drawer > dl > div:last-child { grid-column: 1 / -1; border-inline-end: 0; }
}

@media (max-width: 48rem) {
  .audit-command { align-items: flex-start; }
  .audit-command em { padding-block-start: .2rem; }
  .audit-filter-panel { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .audit-filter-actions { grid-column: 1 / -1; }
  .audit-ledger-row > summary { grid-template-columns: minmax(0, 1fr) auto 1rem; gap: .35rem .65rem; min-block-size: 5.5rem; }
  .audit-ledger-row > summary > time { grid-column: 1; grid-row: 1; }
  .audit-actor { grid-column: 1; grid-row: 2; }
  .audit-order-ref { grid-column: 2; grid-row: 1; text-align: end; }
  .audit-action { grid-column: 2; grid-row: 2; max-inline-size: 9rem; text-align: end; }
  .audit-ledger-row > summary > .icon { grid-column: 3; grid-row: 1 / 3; }
  .audit-ledger.is-order-timeline .audit-ledger-row::after { inset-block-start: 2.2rem; }
  .audit-ledger-drawer { padding: .75rem; }
  .audit-ledger-drawer > header { align-items: flex-start; flex-direction: column; }
  .audit-change-table { margin-inline: 0; }
  .audit-change-table table { min-inline-size: 34rem; }
  .audit-pagination { align-items: flex-start; flex-direction: column; padding-block: .65rem; }
}

@media (max-width: 30rem) {
  .audit-command > span { display: none; }
  .audit-command small { display: block; }
  .audit-filter-panel { grid-template-columns: 1fr; }
  .audit-filter-actions { grid-column: auto; justify-content: space-between; }
  .audit-ledger-drawer > dl { grid-template-columns: 1fr; }
  .audit-ledger-drawer > dl > div, .audit-ledger-drawer > dl > div:last-child { grid-column: auto; border-inline-end: 0; border-block-end: 1px solid #e4eaed; }
  .audit-ledger-drawer > dl > div:last-child { border-block-end: 0; }
  .audit-ledger-drawer > footer { align-items: flex-start; flex-direction: column; }
}

@media (prefers-reduced-motion: reduce) {
  .audit-ledger-row > summary > .icon { transition: none; }
}

/* 责任与质量轨道：最终裁决、账号责任和登录入口共用同一套克制语言。 */
.auth-switch { display: grid; grid-template-columns: 1fr 1fr; gap: .25rem; margin-block: 0 1.45rem; padding: .25rem; background: #f1f3f4; border: 1px solid #e1e5e7; border-radius: .55rem; }
.auth-switch a { display: grid; place-items: center; min-block-size: 2.45rem; color: #66747b; text-decoration: none; border-radius: .38rem; font-size: .72rem; font-weight: 720; transition: color 140ms ease, background-color 140ms ease, box-shadow 140ms ease; }
.auth-switch a:hover { color: #102f42; }
.auth-switch a.is-active { color: #fff; background: #102f42; box-shadow: 0 4px 12px rgba(16, 47, 66, .16); }
.login-form-wrap--password { inline-size: min(100%, 29rem); }
.auth-back-link { display: inline-flex; align-items: center; gap: .4rem; margin-block-start: 1rem; color: #536973; text-decoration: none; font-size: .68rem; font-weight: 680; }
.auth-back-link .icon { inline-size: .78rem; transform: rotate(180deg); }
.auth-back-link:hover { color: #102f42; }

.final-decision-stamp { display: inline-flex; align-items: center; gap: .28rem; inline-size: max-content; max-inline-size: 100%; margin-inline-start: .35rem; padding: .22rem .42rem; color: #18394b; background: #eef3f5; border: 1px solid #bdccd3; border-radius: .25rem; font-size: .5rem; font-weight: 780; line-height: 1; letter-spacing: .04em; white-space: nowrap; }
.final-decision-stamp .icon { inline-size: .68rem !important; transform: none !important; }
.processing-cell .final-decision-stamp, .processing-status-cell .final-decision-stamp { margin: .25rem 0 0; }
.is-final-decision { box-shadow: inset 3px 0 #18394b !important; }
.is-final-decision > summary, tr.is-final-decision { background-color: #f8fafb; }
.final-decision-rail { display: grid; grid-template-columns: auto minmax(16rem, 1fr) auto; align-items: center; gap: 1rem; margin-block: .85rem; padding: .72rem .85rem; color: #18394b; background: #f7f9fa; border: 1px solid #becbd1; border-inline-start: 4px solid #18394b; border-radius: .45rem; }
.final-decision-seal { display: flex; align-items: center; gap: .55rem; padding-inline-end: .9rem; border-inline-end: 1px solid #d3dde1; }
.final-decision-seal > .icon { inline-size: 1.25rem; }
.final-decision-seal > span { display: grid; }
.final-decision-seal b { font-size: .72rem; letter-spacing: .06em; }
.final-decision-seal small { color: #788a93; font: 700 .46rem/1.3 "Bahnschrift", sans-serif; letter-spacing: .16em; }
.final-decision-rail ol { position: relative; display: grid; grid-template-columns: repeat(3, minmax(5rem, 1fr)); gap: 0; margin: 0; padding: 0; list-style: none; }
.final-decision-rail ol::before { position: absolute; inset-block-start: .31rem; inset-inline: 8%; block-size: 1px; content: ""; background: #aabac1; }
.final-decision-rail li { position: relative; z-index: 1; display: grid; justify-items: center; gap: .26rem; color: #677b85; font-size: .52rem; font-weight: 680; text-align: center; }
.final-decision-rail li i { inline-size: .66rem; block-size: .66rem; background: #18394b; border: 2px solid #f7f9fa; border-radius: 50%; box-shadow: 0 0 0 1px #758b96; }
.final-decision-rail li.is-locked { color: #18394b; font-weight: 780; }
.final-decision-meta { display: grid; justify-items: end; min-inline-size: 8.5rem; }
.final-decision-meta b { font-size: .66rem; }
.final-decision-meta small, .final-decision-meta time { color: #7b8c94; font-size: .5rem; }
.change-request-card .final-decision-rail, .record-ticket .final-decision-rail { grid-column: 1 / -1; inline-size: 100%; }

.authority-mark { display: inline-flex; align-items: center; gap: .5rem; color: #17384a; }
.authority-mark > .icon { inline-size: 1.05rem; }
.authority-mark > span { display: grid; gap: .08rem; }
.authority-mark b { font-size: .67rem; }
.authority-mark small { color: #8a999f; font-size: .5rem; font-weight: 560; }
.account-table tr.is-final-authority td:first-child { box-shadow: inset 3px 0 #17384a; }
.account-owner-badge { display: inline-flex; align-items: center; margin-block-start: .28rem; padding: .2rem .38rem; color: #1d536e; background: rgba(217, 237, 246, .72); border: 1px solid rgba(61, 117, 147, .18); border-radius: 999px; font-size: .48rem; font-style: normal; font-weight: 720; letter-spacing: .02em; }
.account-row-actions { display: flex; align-items: center; justify-content: flex-end; gap: .68rem; min-inline-size: 10rem; }
.account-row-actions form { margin: 0; }
.account-delete-button { display: inline-flex; align-items: center; gap: .3rem; min-block-size: 2rem; padding: .36rem .5rem; color: #9f3439; background: rgba(255, 241, 242, .72); border: 1px solid rgba(166, 55, 60, .18); border-radius: .38rem; cursor: pointer; font: inherit; font-size: .55rem; font-weight: 720; white-space: nowrap; transition: color .18s ease, background-color .18s ease, border-color .18s ease, transform .18s ease; }
.account-delete-button .icon { inline-size: .72rem; }
.account-delete-button:hover { color: #842a2f; background: rgba(255, 226, 229, .9); border-color: rgba(166, 55, 60, .32); transform: translateY(-1px); }
.account-delete-button:active { transform: translateY(0); }
@media (max-width: 48rem) {
  .account-row-actions { justify-content: flex-start; min-inline-size: 0; }
}
.admin-authority-notice { display: grid; grid-template-columns: auto 1fr; align-items: center; gap: .9rem; margin-block-end: 1rem; padding: .9rem 1rem; color: #fff; background: #102f42; border-radius: .65rem; }
.admin-authority-notice > .icon { inline-size: 1.55rem; }
.admin-authority-notice > div { display: grid; gap: .12rem; }
.admin-authority-notice span { color: #8fb1c1; font: 720 .5rem/1 "Bahnschrift", sans-serif; letter-spacing: .16em; }
.admin-authority-notice h2 { margin: 0; color: #fff; font-size: 1rem; }
.admin-authority-notice p { margin: 0; color: #c7d7df; font-size: .62rem; line-height: 1.55; }
.final-action-note { grid-column: 1 / -1; margin: 0; padding: .58rem .68rem; color: #244657; background: #eef3f5; border: 1px solid #c8d5da; border-inline-start: 3px solid #244657; border-radius: .35rem; font-size: .58rem; font-weight: 650; line-height: 1.55; }

.account-analytics-heading { background: #102f42; border-block-start-color: #8eb4c5; }
.account-quality-rail { display: grid; grid-template-columns: repeat(4, 1fr); block-size: .3rem; background: #dfe7ea; }
.account-quality-rail i { background: #214d64; border-inline-end: 2px solid #fff; }
.account-quality-rail i:nth-child(2) { background: #3c7087; }
.account-quality-rail i:nth-child(3) { background: #7199aa; }
.account-quality-rail i:nth-child(4) { background: #b2c8d1; border-inline-end: 0; }
.account-analytics-metric.is-empty { color: #87969d; background: #fafbfb; }
.account-analytics-metric.is-empty .analytics-progress i { inline-size: 0; }
.analytics-progress i { background: #276c8c; }
[data-analytics-metric="complaint-rate"] .analytics-progress i, [data-analytics-metric="repeated-followup-rate"] .analytics-progress i, [data-analytics-metric="overturn-rate"] .analytics-progress i { background: #b16a28; }
[data-analytics-metric="processing-rate"] .analytics-progress i, [data-analytics-metric="decision-rate"] .analytics-progress i { background: #2f765f; }
.analytics-signal-note { margin: 0; padding: .55rem 1rem; color: #697d86; background: #f7f9fa; border-block-end: 1px solid #e0e7ea; font-size: .56rem; line-height: 1.5; }
.account-analytics-overview { grid-template-columns: repeat(5, minmax(0, 1fr)); }
.account-analytics-overview article { min-block-size: 5.2rem; align-content: center; }
.analytics-recent > div > a { grid-template-columns: minmax(0, 1fr) auto auto; }
.analytics-recent a > strong { font: 680 .58rem/1.25 "Segoe UI Variable", "Segoe UI", sans-serif; }

:where(a, button, input, select, textarea, summary):focus-visible { outline: 2px solid #2b789c; outline-offset: 3px; }

@media (max-width: 64rem) {
  .final-decision-rail { grid-template-columns: auto 1fr; }
  .final-decision-meta { grid-column: 1 / -1; grid-template-columns: auto auto 1fr; justify-items: start; gap: .4rem; padding-block-start: .5rem; border-block-start: 1px solid #d8e1e5; }
  .account-analytics-overview { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 40rem) {
  .login-form-panel { align-items: start; padding-block-start: max(1rem, env(safe-area-inset-top)); }
  .login-form-wrap, .login-form-wrap--password { inline-size: 100%; border-radius: .65rem; }
  .final-decision-rail { grid-template-columns: 1fr; gap: .7rem; }
  .final-decision-seal { padding: 0 0 .6rem; border-inline-end: 0; border-block-end: 1px solid #d3dde1; }
  .final-decision-rail ol { grid-template-columns: 1fr; gap: .48rem; }
  .final-decision-rail ol::before { inset-block: .3rem; inset-inline-start: .31rem; inline-size: 1px; block-size: auto; }
  .final-decision-rail li { grid-template-columns: .66rem 1fr; justify-items: start; text-align: start; }
  .final-decision-meta { grid-column: auto; grid-template-columns: 1fr; }
  .account-analytics-overview { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (prefers-reduced-motion: reduce) {
  .auth-switch a { transition: none; }
}

/* 业务处理台：所有待办先进入同一责任轨道，再进入唯一详情完成操作。 */
.nav-count { display: inline-grid; place-items: center; min-inline-size: 1.3rem; block-size: 1.3rem; margin-inline-start: auto; padding-inline: .28rem; color: #fff; background: #b84f43; border: 2px solid #fff; border-radius: 999px; font: 760 .6875rem/1 "Bahnschrift", sans-serif; }
.nav-link.is-active .nav-count { color: #17384a; background: #fff; border-color: #d8e4e9; }

.workbench-generated { align-self: center; color: #758992; font-size: .75rem; font-weight: 650; }
.workbench-command-strip { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin-block-end: .9rem; overflow: hidden; color: #fff; background: #102f42; border: 1px solid #102f42; border-radius: .72rem; box-shadow: 0 10px 28px rgba(15, 47, 66, .11); }
.workbench-command-strip article { position: relative; display: grid; grid-template-columns: 1fr auto; align-items: center; min-block-size: 5.4rem; padding: 1rem 1.15rem; border-inline-end: 1px solid rgba(255, 255, 255, .14); }
.workbench-command-strip article:last-child { border-inline-end: 0; }
.workbench-command-strip article::after { position: absolute; inset-inline: 1.15rem; inset-block-end: 0; block-size: 3px; content: ""; background: #6f9bae; }
.workbench-command-strip article.is-danger::after { background: #d47468; }
.workbench-command-strip article.is-finalize::after { background: #d5a94d; }
.workbench-command-strip article.is-waiting::after { background: #8bb7c3; }
.workbench-command-strip span { color: #b8cbd4; font-size: .8125rem; font-weight: 680; }
.workbench-command-strip b { font: 760 1.85rem/1 "Bahnschrift", "Segoe UI", sans-serif; }

.workbench-archive-bar { display: flex; align-items: center; gap: .42rem; margin: -.15rem 0 .8rem; padding: .58rem .7rem; color: #637983; background: #f7f9fa; border: 1px solid #dbe4e8; border-radius: .52rem; }
.workbench-archive-bar > span { display: inline-flex; align-items: center; gap: .42rem; min-inline-size: 0; margin-inline-end: auto; }
.workbench-archive-bar > span .icon { inline-size: .95rem; color: #315b6f; }
.workbench-archive-bar > span b { color: #294b5c; font-size: .8125rem; }
.workbench-archive-bar > span small { color: #7a8c94; font-size: .75rem; }
.workbench-archive-bar > a { min-block-size: 2.1rem; padding: .48rem .65rem; color: #31566a; background: #fff; border: 1px solid #d1dde2; border-radius: .34rem; font-size: .75rem; font-weight: 700; text-decoration: none; }
.workbench-archive-bar > a:hover { color: #12394d; border-color: #aebfc7; }
.workbench-archive-bar > a:focus-visible { outline: 3px solid rgba(37, 104, 134, .22); outline-offset: 2px; }

.workbench-filter-panel { margin-block-end: .8rem; overflow: hidden; background: #fff; border: 1px solid #dbe4e8; border-radius: .68rem; }
.workbench-module-tabs { display: grid; grid-template-columns: repeat(5, minmax(7rem, 1fr)); border-block-end: 1px solid #e0e7ea; }
.workbench-module-tab { position: relative; display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: .55rem; min-block-size: 3.5rem; padding: .7rem .9rem; color: #536973; border-inline-end: 1px solid #e5ebed; text-decoration: none; }
.workbench-module-tab:last-child { border-inline-end: 0; }
.workbench-module-tab::after { position: absolute; inset-inline: .65rem; inset-block-end: 0; block-size: 3px; content: ""; background: transparent; }
.workbench-module-tab .icon { inline-size: 1rem; }
.workbench-module-tab span { font-size: .8125rem; font-weight: 720; }
.workbench-module-tab b { display: inline-grid; place-items: center; min-inline-size: 1.55rem; block-size: 1.55rem; padding-inline: .34rem; color: #6d8089; background: #eff4f6; border-radius: 999px; font: 720 .75rem/1 "Bahnschrift", sans-serif; }
.workbench-module-tab:hover { color: #173b4e; background: #f7fafb; }
.workbench-module-tab.is-active { color: #102f42; background: #f4f8f9; }
.workbench-module-tab.is-active::after { background: #1f5e7a; }
.workbench-module-tab.is-active b { color: #fff; background: #1f5e7a; }
.workbench-stage-bar { display: grid; grid-template-columns: minmax(0, 1fr) minmax(17rem, 25rem); align-items: center; gap: 1rem; padding: .65rem .78rem; }
.workbench-stage-bar > nav { display: flex; flex-wrap: wrap; gap: .38rem; }
.workbench-stage-bar > nav a { display: inline-flex; align-items: center; gap: .42rem; min-block-size: 2.2rem; padding: .48rem .7rem; color: #667a84; background: #f5f7f8; border: 1px solid transparent; border-radius: .35rem; font-size: .75rem; font-weight: 680; text-decoration: none; }
.workbench-stage-bar > nav a b { font: 720 .6875rem/1 "Bahnschrift", sans-serif; }
.workbench-stage-bar > nav a.is-active { color: #173b4e; background: #e8f0f3; border-color: #b9ced7; }
.workbench-stage-bar form { display: grid; grid-template-columns: auto 1fr auto; align-items: center; overflow: hidden; background: #f7f9fa; border: 1px solid #d8e2e6; border-radius: .42rem; }
.workbench-stage-bar form .icon { inline-size: .9rem; margin-inline-start: .7rem; color: #788b94; }
.workbench-stage-bar form input { min-inline-size: 0; block-size: 2.65rem; padding-inline: .65rem; background: transparent; border: 0; outline: 0; font-size: .8125rem; }
.workbench-stage-bar form button { align-self: stretch; padding-inline: .9rem; color: #fff; background: #173b4e; border: 0; font-size: .75rem; font-weight: 720; cursor: pointer; }

.workbench-list { overflow: hidden; background: #fff; border: 1px solid #d9e3e7; border-radius: .68rem; box-shadow: 0 12px 30px rgba(30, 62, 77, .06); }
.workbench-list > header, .workbench-item > summary { display: grid; grid-template-columns: 5.3rem minmax(13rem, 1.7fr) 7.5rem minmax(7.5rem, .85fr) minmax(9rem, 1fr) 7rem auto; align-items: center; column-gap: .75rem; }
.workbench-list > header { min-block-size: 2.6rem; padding-inline: .85rem; color: #71858e; background: #f4f7f8; border-block-end: 1px solid #dfe7ea; font-size: .75rem; font-weight: 720; letter-spacing: .02em; }
.workbench-item { border-block-end: 1px solid #e1e8eb; }
.workbench-item:last-of-type { border-block-end: 0; }
.workbench-item > summary { position: relative; min-block-size: 5rem; padding: .68rem .85rem; cursor: pointer; list-style: none; }
.workbench-item > summary::-webkit-details-marker { display: none; }
.workbench-item > summary:hover { background: #f8fafb; }
.workbench-item[open] > summary { background: #f2f7f8; border-block-end: 1px solid #d7e2e6; }
.workbench-item > summary > .icon:last-child { inline-size: .8rem; color: #82949d; transition: transform .18s ease; }
.workbench-item[open] > summary > .icon:last-child { transform: rotate(90deg); }
.workbench-item.is-urgent > summary::before { position: absolute; inset-block: 0; inset-inline-start: 0; inline-size: 3px; content: ""; background: #c45c50; }
.workbench-item-module { display: inline-flex; align-items: center; gap: .38rem; color: #23495c; }
.workbench-item-module .icon { inline-size: .92rem; }
.workbench-item-module b { font-size: .8125rem; }
.workbench-item-main { display: grid; min-inline-size: 0; gap: .14rem; }
.workbench-item-main small { color: #607983; font: 720 .75rem/1.2 "Bahnschrift", sans-serif; letter-spacing: .015em; }
.workbench-item-main b { overflow: hidden; color: #132f3e; font-size: .9375rem; text-overflow: ellipsis; white-space: nowrap; }
.workbench-item-main span { overflow: hidden; color: #71858e; font-size: .75rem; text-overflow: ellipsis; white-space: nowrap; }
.workbench-item-stage { display: inline-flex; align-items: center; gap: .38rem; inline-size: max-content; padding: .38rem .52rem; color: #30566a; background: #eaf1f4; border: 1px solid #c9d9e0; border-radius: .3rem; font-size: .75rem; font-weight: 720; }
.workbench-item-stage i { inline-size: .38rem; block-size: .38rem; background: #4a7c92; border-radius: 50%; }
.workbench-item-stage--overdue { color: #913c34; background: #f8e9e7; border-color: #e8bbb5; }
.workbench-item-stage--overdue i { background: #bd4d42; }
.workbench-item-stage--finalize { color: #775416; background: #f8f0dc; border-color: #e4cb8d; }
.workbench-item-stage--finalize i { background: #b88727; }
.workbench-item-stage--waiting { color: #546d79; background: #f2f5f6; border-color: #d5dfe3; }
.workbench-item-stage--blocked { color: #8b443a; background: #f8ece9; border-color: #e5c2bc; }
.workbench-item-stage--blocked i { background: #b95b4f; }
.workbench-item-owner, .workbench-item-next { display: grid; min-inline-size: 0; gap: .15rem; }
.workbench-item-owner small, .workbench-item-next small { color: #7a8d95; font-size: .6875rem; }
.workbench-item-owner b, .workbench-item-next b { overflow: hidden; color: #2d4a58; font-size: .8125rem; line-height: 1.35; text-overflow: ellipsis; white-space: nowrap; }
.workbench-item-next b { color: #17435a; white-space: normal; }
.workbench-item-time { display: grid; justify-items: start; gap: .14rem; color: #7e8d94; }
.workbench-item-time b { color: #a74239; font-size: .6875rem; }
.workbench-item-time time { font-size: .6875rem; line-height: 1.35; }
.workbench-item-time.is-urgent time { color: #91423b; }
.workbench-item > summary .final-decision-stamp { grid-column: 6; margin: .22rem 0 0; }
.workbench-item-drawer { padding: 1rem; background: #fbfcfc; }
.workbench-responsibility-track { position: relative; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); max-inline-size: 58rem; margin: 0 auto 1rem; padding: 0; list-style: none; }
.workbench-responsibility-track::before { position: absolute; inset-inline: 12%; inset-block-start: .42rem; block-size: 2px; content: ""; background: #cbd8dd; }
.workbench-responsibility-track li { position: relative; z-index: 1; display: grid; justify-items: center; gap: .35rem; color: #71858e; text-align: center; }
.workbench-responsibility-track li > i { inline-size: .86rem; block-size: .86rem; background: #d4dfe3; border: 3px solid #fbfcfc; border-radius: 50%; box-shadow: 0 0 0 1px #b6c6cd; }
.workbench-responsibility-track li.is-complete > i { background: #2d647d; }
.workbench-responsibility-track li.is-active > i { background: #c18a2f; }
.workbench-responsibility-track li span { display: grid; gap: .12rem; }
.workbench-responsibility-track li small { color: #7c8e96; font-size: .75rem; }
.workbench-responsibility-track li b { color: #284b5c; font-size: .8125rem; }
.workbench-item-facts { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); margin: 0; border: 1px solid #dce5e8; border-radius: .45rem; }
.workbench-item-facts > div { display: grid; gap: .18rem; min-block-size: 3.4rem; padding: .65rem .72rem; border-inline-end: 1px solid #e1e8eb; }
.workbench-item-facts > div:last-child { border-inline-end: 0; }
.workbench-item-facts dt { color: #7d8f97; font-size: .75rem; }
.workbench-item-facts dd { margin: 0; color: #294b5b; font-size: .8125rem; font-weight: 680; }
.workbench-item-actions { display: flex; justify-content: flex-end; gap: .55rem; margin-block-start: .8rem; }
.workbench-item-actions .button { min-block-size: 2.3rem; }
.workbench-blocked-notice { display: grid; grid-template-columns: auto 1fr; align-items: center; gap: .6rem; margin-block-start: .8rem; padding: .72rem .8rem; color: #7f4038; background: #faf0ee; border: 1px solid #e7c7c2; border-inline-start: 4px solid #b95b4f; border-radius: .4rem; }
.workbench-blocked-notice > .icon { inline-size: 1.05rem; }
.workbench-blocked-notice span { display: grid; gap: .12rem; }
.workbench-blocked-notice b { font-size: .8125rem; }
.workbench-blocked-notice small { color: #8c6762; font-size: .75rem; }
.workbench-empty { min-block-size: 19rem; border: 0; border-radius: 0; }
.workbench-empty > .icon { inline-size: 1.7rem; color: #5f8393; }
.workbench-empty p { margin: .2rem 0 .6rem; color: #71858e; font-size: .8125rem; }
.workbench-pagination { display: flex; align-items: center; justify-content: space-between; min-block-size: 3.3rem; padding: .7rem .9rem; color: #667c86; background: #f7f9fa; border-block-start: 1px solid #dfe7ea; font-size: .75rem; }
.workbench-pagination > div { display: flex; align-items: center; gap: .8rem; }
.workbench-pagination a { color: #1f5670; font-weight: 720; text-decoration: none; }
.workbench-pagination b { color: #3f5966; }

.change-request-card.is-workbench-focus { border-color: #2a6f8d; box-shadow: 0 0 0 3px rgba(42, 111, 141, .13); }
.record-ticket--change-request.is-workbench-focus { border-color: #2a6f8d; box-shadow: 0 0 0 3px rgba(42, 111, 141, .13); }
.change-request-review-form { display: grid; gap: .7rem; margin-block-start: .85rem; padding: .8rem; background: #f6f9fa; border: 1px solid #ccd9de; border-radius: .45rem; }
.change-request-review-form .field { display: grid; gap: .35rem; }
.change-request-review-form label { color: #31505f; font-size: .8125rem; font-weight: 700; }
.change-request-review-form select, .change-request-review-form textarea { inline-size: 100%; padding: .65rem .7rem; background: #fff; border: 1px solid #c8d5da; border-radius: .35rem; font-size: .8125rem; }

/* 业务流程收敛与快速评分控件 */
.workbench-command-strip--simple { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.workbench-stage-bar > div { display: flex; align-items: center; }
.workbench-simple-state { display: inline-flex; align-items: center; gap: .55rem; color: #173b4e; }
.workbench-simple-state > i { inline-size: .55rem; block-size: .55rem; background: #d5a94d; border-radius: 50%; box-shadow: 0 0 0 4px rgba(213, 169, 77, .14); }
.workbench-simple-state b { font-size: .82rem; }
.workbench-simple-state small { color: #6a808b; font-size: .72rem; }

.level-choice-field { padding: .65rem; background: rgba(232, 243, 248, .68); border: 1px solid rgba(117, 159, 183, .35); border-radius: .55rem; }
.level-choice-field > label { display: flex; align-items: center; justify-content: space-between; gap: .5rem; }
.level-choice-field > label > span { color: #153a54; font-size: .82rem; font-weight: 760; }
.level-choice-field > label > small { color: #668392; font-size: .66rem; font-weight: 620; }
.level-choice-field select { color: #102f42; background: rgba(255, 255, 255, .78); border-color: rgba(117, 159, 183, .48); font-weight: 760; }
.team-threshold-card { position: relative; overflow: hidden; min-block-size: 4.35rem; padding: .72rem .85rem; background: linear-gradient(135deg, rgba(9, 48, 76, .98), rgba(21, 85, 111, .94)); border: 1px solid rgba(144, 209, 232, .35); box-shadow: 0 10px 24px rgba(13, 57, 82, .14), inset 0 1px rgba(255,255,255,.16); }
.team-threshold-card::after { position: absolute; inset: auto -1.4rem -1.8rem auto; inline-size: 5rem; block-size: 5rem; content: ""; border: 1px solid rgba(170, 229, 247, .18); border-radius: 50%; }
.team-threshold-card span { display: flex; align-items: center; gap: .35rem; color: #d6edf6; font-size: .72rem; font-weight: 720; }
.team-threshold-card span .icon { inline-size: .85rem; }
.team-threshold-card b { display: inline-flex; align-items: flex-end; gap: .18rem; color: #fff; font-size: 1.7rem; }
.team-threshold-card b small { color: #a9cad8; font-size: .68rem; }
.team-threshold-card p { margin: .2rem 0 0; color: #9dbbc8; font-size: .64rem; }

.service-editor--compact .service-item { grid-template-columns: 1.7rem minmax(8rem, 1fr) auto; gap: .65rem; min-block-size: 3.15rem; }
.service-editor--compact .service-item label { font-size: .75rem; line-height: 1.35; }

/* 录入与修改：高密度业务工作台，实时判定是唯一视觉主轴。 */
.inspection-workbench--edit { inline-size: 100%; max-inline-size: none; }
.edit-context-banner { display: flex; align-items: center; gap: .85rem; margin-block-end: 1rem; padding: 1rem 1.15rem; color: #eaf8ff; background: linear-gradient(115deg, #0a2b3e, #145474); border: 1px solid rgba(121, 209, 244, .3); border-radius: .75rem; box-shadow: 0 14px 32px rgba(8, 42, 61, .14); }
.edit-context-banner .icon { flex: 0 0 1.35rem; inline-size: 1.35rem; }
.edit-context-banner div { display: grid; gap: .18rem; }
.edit-context-banner b { font-size: .94rem; }
.edit-context-banner p { margin: 0; color: #b9dbe9; font-size: .74rem; line-height: 1.5; }
.admin-result-editor {
  --result-color: #55717f;
  margin: 1rem 0;
  overflow: hidden;
  color: #173d51;
  background: #f8fbfc;
  border: 1px solid #bfcfd6;
  border-radius: .8rem;
  box-shadow: 0 12px 30px rgba(13, 49, 67, .08);
}
.admin-result-editor > header { display: flex; align-items: center; gap: .78rem; padding: .9rem 1rem; color: #ecf9ff; background: linear-gradient(110deg, #0b3045, #174f67); border-block-end: 1px solid rgba(139, 205, 231, .26); }
.admin-result-editor > header > .icon { flex: 0 0 auto; inline-size: 1.35rem; color: #8fd1e9; }
.admin-result-editor > header > div { display: grid; flex: 1; gap: .08rem; min-inline-size: 0; }
.admin-result-editor > header small { color: #8fc7db; font: 760 .55rem/1.2 "Bahnschrift", "Segoe UI", sans-serif; letter-spacing: .14em; }
.admin-result-editor > header h2 { margin: 0; color: #fff; font-size: 1rem; }
.admin-result-editor > header p { margin: 0; color: #bad7e2; font-size: .69rem; line-height: 1.5; }
.admin-result-editor > header em { flex: 0 0 auto; padding: .28rem .55rem; color: #dff5fd; background: rgba(135, 209, 237, .12); border: 1px solid rgba(153, 218, 242, .3); border-radius: 999px; font-size: .62rem; font-style: normal; font-weight: 760; }
.admin-result-editor__body { display: grid; grid-template-columns: minmax(13.5rem, .62fr) minmax(0, 2.38fr); gap: .8rem; padding: .8rem; }
.admin-result-auto { --auto-result-color: #5b7480; display: grid; align-content: center; gap: .24rem; min-inline-size: 0; padding: .82rem; background: #eef4f6; border: 1px solid #d2dfe4; border-inline-start: 4px solid var(--auto-result-color); border-radius: .55rem; }
.admin-result-editor[data-auto-result="passed"] .admin-result-auto { --auto-result-color: #087a55; background: #eff9f5; }
.admin-result-editor[data-auto-result="downgrade"] .admin-result-auto, .admin-result-editor[data-auto-result="retest"] .admin-result-auto { --auto-result-color: #b2383f; background: #fff4f4; }
.admin-result-editor[data-auto-result="training"] .admin-result-auto { --auto-result-color: #a76508; background: #fff8e9; }
.admin-result-editor[data-auto-result="removed"] .admin-result-auto { --auto-result-color: #702532; background: #fff0f2; }
.admin-result-auto > span { color: #617985; font-size: .63rem; font-weight: 760; }
.admin-result-auto > b { color: var(--auto-result-color); font-size: 1.12rem; }
.admin-result-auto > small { color: #526c78; font-size: .64rem; line-height: 1.5; }
.admin-result-auto > p { display: flex; align-items: center; gap: .32rem; margin: .38rem 0 0; padding-block-start: .48rem; color: #718690; border-block-start: 1px solid rgba(93, 123, 137, .18); font-size: .58rem; line-height: 1.45; }
.admin-result-auto > p .icon { flex: 0 0 auto; inline-size: .72rem; }
.admin-result-decision { min-inline-size: 0; margin: 0; padding: .7rem; background: #fff; border: 1px solid #d5e1e6; border-radius: .55rem; }
.admin-result-decision legend { display: flex; align-items: baseline; justify-content: space-between; gap: .8rem; inline-size: 100%; padding: 0 .1rem .55rem; }
.admin-result-decision legend span { color: #153b4f; font-size: .74rem; font-weight: 800; }
.admin-result-decision legend small { color: #758a94; font-size: .6rem; }
.admin-result-select-field { display: grid; grid-template-columns: minmax(7.5rem, auto) minmax(12rem, 1fr); align-items: center; gap: .55rem; cursor: pointer; }
.admin-result-select-field > span { color: #536d79; font-size: .65rem; font-weight: 760; }
.admin-result-select-field > div { position: relative; min-inline-size: 0; }
.admin-result-select-field select { inline-size: 100%; min-block-size: 3rem; padding: .58rem 2.4rem .58rem .75rem; appearance: none; color: #173c50; background: #f8fbfc; border: 1px solid #aebfc7; border-radius: .45rem; font: 800 .82rem/1.2 "Segoe UI Variable", "Segoe UI", sans-serif; cursor: pointer; }
.admin-result-select-field select:hover { border-color: #6f909f; }
.admin-result-select-field select:focus-visible { outline: 3px solid rgba(29, 126, 164, .22); outline-offset: 2px; border-color: #177ba2; }
.admin-result-select-field .icon { position: absolute; inset: 50% .8rem auto auto; inline-size: .82rem; color: #426a7c; pointer-events: none; transform: translateY(-50%) rotate(90deg); }
.admin-result-state-key { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: .35rem; margin-block-start: .55rem; }
.admin-result-state-key > span { --key-color: #5f7580; display: grid; grid-template-columns: auto minmax(0, 1fr); gap: .1rem .35rem; min-inline-size: 0; padding: .42rem; background: #f6f9fa; border: 1px solid #dce5e8; border-radius: .38rem; }
.admin-result-state-key > span[data-result="passed"] { --key-color: #087a55; }
.admin-result-state-key > span[data-result="downgrade"] { --key-color: #bb3038; }
.admin-result-state-key > span[data-result="retest"] { --key-color: #a94d17; }
.admin-result-state-key > span[data-result="training"] { --key-color: #9a650c; }
.admin-result-state-key > span[data-result="removed"] { --key-color: #6d2432; }
.admin-result-state-key i { grid-row: 1 / 3; inline-size: .35rem; block-size: 100%; min-block-size: 1.7rem; background: var(--key-color); border-radius: 999px; }
.admin-result-state-key b { overflow: hidden; color: var(--key-color); font-size: .6rem; text-overflow: ellipsis; white-space: nowrap; }
.admin-result-state-key small { overflow: hidden; color: #788b94; font-size: .5rem; line-height: 1.3; text-overflow: ellipsis; white-space: nowrap; }
.admin-result-decision output { display: block; margin-block-start: .55rem; padding: .42rem .55rem; color: #58717d; background: #f2f6f7; border-radius: .36rem; font-size: .62rem; font-weight: 720; }
.admin-result-editor[data-result-override="true"] .admin-result-decision output { color: #933039; background: #fff0f1; }
.admin-result-editor > footer { display: flex; align-items: center; gap: .5rem; padding: .62rem .85rem; color: #664c20; background: #fff8e8; border-block-start: 1px solid #ecddba; }
.admin-result-editor > footer > .icon { flex: 0 0 auto; inline-size: .9rem; color: #a46b0c; }
.admin-result-editor > footer > span { display: flex; align-items: baseline; flex-wrap: wrap; gap: .18rem .48rem; }
.admin-result-editor > footer b { font-size: .65rem; }
.admin-result-editor > footer small { color: #816c43; font-size: .6rem; }
.adjudication-dock[data-result-mode="manual"] .dock-verdict { box-shadow: inset 4px 0 var(--adjudication-color); }
.result-edit-form { inline-size: min(66rem, 100%); margin-inline: auto; }
.result-edit-console { overflow: hidden; background: #f8fbfc; border: 1px solid #b9ccd4; border-radius: .85rem; box-shadow: 0 18px 46px rgba(10, 43, 61, .1); }
.result-edit-console > header { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: .8rem; padding: 1rem 1.1rem; color: #eaf8ff; background: linear-gradient(115deg, #0a2d42, #15536b); }
.result-edit-console > header > span { display: grid; place-items: center; inline-size: 2.6rem; block-size: 2.6rem; color: #0d5269; background: #dff5fd; border-radius: .55rem; }
.result-edit-console > header > span .icon { inline-size: 1.25rem; }
.result-edit-console > header > div { display: grid; gap: .08rem; min-inline-size: 0; }
.result-edit-console > header small { color: #91c9dc; font: 760 .68rem/1.2 "Bahnschrift", "Segoe UI", sans-serif; letter-spacing: .1em; }
.result-edit-console > header h2 { margin: 0; overflow-wrap: anywhere; color: #fff; font-size: 1.05rem; }
.result-edit-console > header p { margin: 0; color: #bad8e3; font-size: .72rem; line-height: 1.45; }
.result-edit-console > header em { padding: .3rem .56rem; color: #dff5fd; background: rgba(137, 210, 237, .12); border: 1px solid rgba(153, 218, 242, .28); border-radius: 999px; font-size: .72rem; font-style: normal; font-weight: 760; }
.result-edit-context { display: grid; grid-template-columns: 1fr 1fr; gap: .7rem; padding: .8rem .8rem 0; }
.result-edit-context article { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: .42rem .7rem; min-inline-size: 0; padding: .75rem .8rem; background: #fff; border: 1px solid #d5e1e6; border-radius: .55rem; }
.result-edit-context article > small { color: #6b818c; font-size: .72rem; font-weight: 760; }
.result-edit-context article > .status { justify-self: end; }
.result-edit-context article > p { grid-column: 1 / -1; margin: 0; color: #738790; font-size: .72rem; line-height: 1.5; }
.result-edit-context [data-automatic-result-card] { background: linear-gradient(135deg, #f5fafc, #edf5f8); border-color: #c9dbe3; }
.result-edit-decision { margin: .8rem; padding: .8rem; background: #fff; border: 1px solid #cfdee4; border-radius: .6rem; }
.result-edit-decision legend { display: flex; align-items: baseline; justify-content: space-between; gap: 1rem; inline-size: 100%; padding: 0 .1rem .6rem; }
.result-edit-decision legend span { color: #153b4f; font-size: .76rem; font-weight: 800; }
.result-edit-decision legend small { color: #778b94; font-size: .72rem; }
.result-edit-decision > label { display: grid; grid-template-columns: minmax(6rem, auto) minmax(12rem, 1fr); align-items: center; gap: .6rem; cursor: pointer; }
.result-edit-decision > label > span { color: #526c78; font-size: .72rem; font-weight: 760; }
.result-edit-decision > label > div { position: relative; min-inline-size: 0; }
.result-edit-decision select { inline-size: 100%; min-block-size: 3.15rem; padding: .62rem 2.5rem .62rem .78rem; appearance: none; color: #143b50; background: #f8fbfc; border: 1px solid #9fb4bd; border-radius: .48rem; font-size: .86rem; font-weight: 800; cursor: pointer; }
.result-edit-decision select:hover { border-color: #688c9d; }
.result-edit-decision select:focus-visible { outline: 3px solid rgba(25, 126, 166, .23); outline-offset: 2px; border-color: #177ca4; }
.result-edit-decision > label .icon { position: absolute; inset: 50% .85rem auto auto; inline-size: .82rem; color: #426a7c; pointer-events: none; transform: translateY(-50%) rotate(90deg); }
.result-edit-decision output { display: block; margin-block-start: .6rem; padding: .48rem .58rem; color: #28715e; background: #eaf8f2; border-radius: .38rem; font-size: .72rem; font-weight: 730; }
.result-edit-form[data-result-override="true"] .result-edit-decision output { color: #9a2933; background: #fff0f1; }
.result-edit-console > footer { display: flex; align-items: stretch; justify-content: space-between; gap: .8rem; padding: .75rem .8rem; background: #eef4f6; border-block-start: 1px solid #d4e0e5; }
.result-edit-console > footer > aside { display: flex; align-items: center; gap: .55rem; min-inline-size: 0; color: #654c21; }
.result-edit-console > footer > aside > .icon { flex: 0 0 auto; inline-size: .95rem; color: #a46b0c; }
.result-edit-console > footer > aside > span { display: grid; gap: .08rem; }
.result-edit-console > footer b { font-size: .72rem; }
.result-edit-console > footer small { color: #7d6b48; font-size: .72rem; line-height: 1.45; }
.result-edit-console > footer > .button { flex: 0 0 auto; min-inline-size: 11rem; }
.result-edit-preview-state { display: flex; align-items: center; gap: .55rem; padding: .72rem .8rem; color: #21604f; background: #eaf8f2; border: 1px solid #b8dfd0; border-radius: .5rem; }
.result-edit-preview-state[data-result-override-preview="manual"] { color: #862b33; background: #fff0f1; border-color: #e5b6bb; }
.result-edit-preview-state > .icon { flex: 0 0 auto; inline-size: 1rem; }
.result-edit-preview-state > span { display: grid; gap: .1rem; }
.result-edit-preview-state b { font-size: .72rem; }
.result-edit-preview-state small { color: inherit; opacity: .78; font-size: .72rem; line-height: 1.45; }
.result-edit-form .admin-result-state-key b,
.result-edit-form .admin-result-state-key small { overflow: visible; font-size: .72rem; line-height: 1.35; text-overflow: clip; white-space: normal; }
.edit-confirmation.result-edit-confirmation header small { font-size: .68rem; }
.edit-confirmation.result-edit-confirmation header p,
.edit-confirmation.result-edit-confirmation .edit-diff-list article > b,
.edit-confirmation.result-edit-confirmation .edit-diff-list del,
.edit-confirmation.result-edit-confirmation .edit-diff-list ins { font-size: .72rem; }
.match-flow-editor { grid-column: 1 / -1; margin: .15rem 1rem 1rem; overflow: hidden; border: 1px solid #c9d9e1; border-radius: .75rem; background: #f8fbfc; }
.match-flow-heading { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: .85rem 1rem; color: #eaf6fb; background: linear-gradient(110deg, #0c3349, #155a73); }
.match-flow-heading > div:first-child { display: grid; gap: .12rem; }
.match-flow-heading span { color: #95c9dc; font-size: .62rem; font-weight: 800; letter-spacing: .08em; }
.match-flow-heading h3 { margin: 0; font-size: .92rem; }
.match-flow-heading p { margin: 0; color: #b9d5df; font-size: .68rem; }
.match-count-stepper { display: grid; grid-template-columns: 2.4rem minmax(4.5rem, auto) 2.4rem; overflow: hidden; flex: 0 0 auto; min-block-size: 2.55rem; background: rgba(255,255,255,.1); border: 1px solid rgba(255,255,255,.24); border-radius: .55rem; }
.match-count-stepper button { display: grid; place-items: center; padding: 0; color: #fff; background: transparent; border: 0; cursor: pointer; }
.match-count-stepper button:hover { background: rgba(255,255,255,.12); }
.match-count-stepper button:focus-visible { outline: 3px solid #82d0ea; outline-offset: -3px; }
.match-count-stepper button .icon { inline-size: .9rem; }
.match-count-stepper label { display: grid; place-items: center; padding: .25rem .45rem; border-inline: 1px solid rgba(255,255,255,.18); cursor: text; }
.match-count-stepper label span { font-size: .54rem; }
.match-count-stepper input { inline-size: 3rem; padding: 0; color: #fff; background: transparent; border: 0; font: 800 1rem/1 "Bahnschrift", sans-serif; text-align: center; }
.match-game-list { display: grid; grid-template-columns: repeat(auto-fit, minmax(11.5rem, 1fr)); gap: .65rem; padding: .8rem; }
.match-game-card { display: grid; gap: .6rem; min-inline-size: 0; padding: .75rem; background: #fff; border: 1px solid #d8e4e9; border-block-start: 3px solid #168366; border-radius: .58rem; }
.match-game-card.is-void { border-block-start-color: #c64b42; background: #fff9f8; }
.match-game-card.has-policy-error { border-color: #d62e38; box-shadow: 0 0 0 2px rgba(214,46,56,.12); }
.match-flow-editor.has-void-limit-error .match-flow-summary { color: #9d222a; background: #fff0f1; }
.match-game-card > header { display: flex; align-items: center; gap: .5rem; }
.match-game-card > header > span { display: grid; place-items: center; inline-size: 1.8rem; block-size: 1.8rem; color: #fff; background: #168366; border-radius: .4rem; font: 800 .65rem/1 "Bahnschrift", sans-serif; }
.match-game-card.is-void > header > span { background: #c64b42; }
.match-game-card > header div { display: grid; gap: .06rem; }
.match-game-card > header b { color: #16394b; font-size: .75rem; }
.match-game-card > header small { color: #68808b; font-size: .62rem; }
.match-state-switch { display: grid; grid-template-columns: 1fr 1fr; padding: .2rem; border: 1px solid #d5e0e5; border-radius: .45rem; background: #edf3f5; }
.match-state-switch label { cursor: pointer; }
.match-state-switch input { position: absolute; inline-size: 1px; block-size: 1px; opacity: 0; }
.match-state-switch span { display: flex; align-items: center; justify-content: center; gap: .25rem; min-block-size: 2.25rem; color: #5f7580; border-radius: .32rem; font-size: .68rem; font-weight: 750; }
.match-state-switch .icon { inline-size: .72rem; }
.match-state-switch input:checked + span { color: #12644f; background: #fff; box-shadow: 0 1px 4px rgba(18,55,72,.12); }
.match-state-switch label[data-void-option] input:checked + span { color: #a62d34; }
.match-state-switch input:focus-visible + span { outline: 2px solid #177ba2; outline-offset: 1px; }
.match-void-reason { display: grid; gap: .3rem; }
.match-void-reason > span { color: #7c5250; font-size: .63rem; font-weight: 750; }
.match-void-reason select { inline-size: 100%; min-block-size: 2.45rem; padding: .45rem .55rem; color: #6f2b2d; background: #fff; border: 1px solid #e1bbb7; border-radius: .38rem; font-size: .68rem; }
.match-evacuation { display: flex; align-items: center; min-block-size: 2rem; cursor: pointer; }
.match-evacuation input { inline-size: 1rem; block-size: 1rem; accent-color: #14745c; }
.match-evacuation span { display: inline-flex; align-items: center; gap: .3rem; color: #4f6874; font-size: .66rem; }
.match-evacuation .icon { inline-size: .75rem; }
.match-flow-summary { display: flex; align-items: center; flex-wrap: wrap; gap: .55rem 1rem; padding: .68rem 1rem; color: #526b77; background: #eef4f6; border-block-start: 1px solid #d8e4e8; font-size: .68rem; }
.match-flow-summary span { display: inline-flex; align-items: center; gap: .3rem; }
.match-flow-summary span i { inline-size: .42rem; block-size: .42rem; background: #168366; border-radius: 50%; }
.match-flow-summary span:nth-child(2) i { background: #c64b42; }
.match-flow-summary strong { color: #123f55; }
.match-flow-summary small { display: inline-flex; align-items: center; gap: .28rem; margin-inline-start: auto; color: #66808c; }
.match-flow-summary small .icon { inline-size: .78rem; }
.field--supplies { align-content: start; }
.supply-rounding-output { display: block; min-block-size: 1.2rem; margin-block-start: .32rem; color: #13729b; font-size: .65rem; font-weight: 700; line-height: 1.4; }
.technical-score-components { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .55rem; padding: 0 1rem .8rem; }
.technical-score-components > span { display: grid; gap: .16rem; padding: .72rem .8rem; background: linear-gradient(135deg, #f7fbfd, #eef6f9); border: 1px solid #d6e5eb; border-radius: .55rem; }
.technical-score-components small { color: #647f8e; font-size: .64rem; }
.technical-score-components b { color: #103f58; font: 800 1.12rem/1.1 "Bahnschrift", "Segoe UI", sans-serif; }
.technical-score-components em { color: #67818e; font-size: .61rem; font-style: normal; line-height: 1.45; }
.technical-score-components--detail { padding: .85rem 0 0; }
.technical-remark { display: grid; gap: .45rem; margin: 0 1rem 1rem; padding: .75rem; background: #f4f8fa; border: 1px solid #d4e1e6; border-radius: .55rem; }
.technical-remark label { display: flex; align-items: baseline; justify-content: space-between; gap: .7rem; }
.technical-remark label span { color: #173d52; font-size: .74rem; font-weight: 780; }
.technical-remark label small { color: #758b96; font-size: .62rem; }
.technical-remark textarea { inline-size: 100%; min-block-size: 4.4rem; padding: .65rem .72rem; resize: vertical; color: #183a4c; background: #fff; border: 1px solid #cbd9df; border-radius: .42rem; font: inherit; font-size: .72rem; line-height: 1.55; }
.technical-remark textarea:focus-visible { outline: 3px solid rgba(23,123,162,.18); border-color: #177ba2; }
.match-series-readout { display: grid; gap: .65rem; margin-block-start: .8rem; padding: .85rem; color: #365361; background: linear-gradient(145deg, #f5fafc, #edf5f8); border: 1px solid #cfdee5; border-radius: .62rem; }
.match-series-readout > header { display: flex; align-items: end; justify-content: space-between; gap: .75rem; }
.match-series-readout > header > div { display: grid; gap: .12rem; }
.match-series-readout > header span { color: #1780aa; font-size: .58rem; font-weight: 800; letter-spacing: .12em; }
.match-series-readout > header b { color: #123f55; font-size: .78rem; }
.match-series-readout > header > small { max-inline-size: 18rem; color: #6d838e; font-size: .59rem; line-height: 1.5; text-align: end; }
.match-history-list { display: grid; gap: .42rem; }
.match-history-game { display: grid; grid-template-columns: 3.05rem minmax(0, 1fr) auto; align-items: center; gap: .75rem; min-inline-size: 0; min-block-size: 3.65rem; padding: .55rem .65rem; background: rgba(255,255,255,.94); border: 1px solid #d7e4e9; border-inline-start: 3px solid #2b9b78; border-radius: .48rem; box-shadow: 0 .18rem .6rem rgba(18,63,85,.035); }
.match-history-game.is-void { border-inline-start-color: #bf6b35; background: #fffaf6; }
.match-history-index { display: grid; place-items: center; gap: .12rem; align-self: stretch; padding: .35rem; color: #fff; background: #153f55; border-radius: .38rem; }
.match-history-index small { color: #bcd5e1; font-size: .42rem; letter-spacing: .08em; }
.match-history-index b { font: 800 .92rem/1 "Bahnschrift", "Segoe UI", sans-serif; }
.match-history-state { display: grid; grid-template-columns: auto 1fr; align-items: center; gap: .14rem .48rem; min-inline-size: 0; }
.match-history-state strong { color: #173c4e; font-size: .71rem; }
.match-history-status { justify-self: start; padding: .18rem .42rem; color: #16674f; background: #e7f6f0; border-radius: 999px; font-size: .56rem; font-weight: 780; }
.match-history-game.is-void .match-history-status { color: #934b21; background: #fff0e4; }
.match-history-state small { grid-column: 1 / -1; overflow-wrap: anywhere; color: #718690; font-size: .58rem; line-height: 1.45; }
.match-history-evacuation { display: inline-flex; align-items: center; gap: .3rem; justify-self: end; min-inline-size: 5.15rem; padding: .4rem .52rem; color: #28745e; background: #eef8f4; border: 1px solid #d5ebe3; border-radius: .38rem; font-size: .6rem; }
.match-history-evacuation .icon { inline-size: .72rem; }
.match-history-evacuation.is-not-evacuated { color: #8b4a4e; background: #fff3f3; border-color: #f0d8da; }
.match-history-evacuation.is-unknown { color: #65727a; background: #f3f5f6; border-color: #dfe4e7; }
.inspection-remark-readout { display: grid; gap: .6rem; margin-block-start: .72rem; padding: .78rem .85rem; background: #f8fbfc; border: 1px solid #d6e4ea; border-radius: .55rem; }
.inspection-remark-readout > header { display: flex; align-items: center; gap: .48rem; }
.inspection-remark-readout > header > .icon { inline-size: .85rem; color: #177da6; }
.inspection-remark-readout > header > div { display: grid; gap: .08rem; }
.inspection-remark-readout > header span { color: #153d52; font-size: .7rem; font-weight: 800; }
.inspection-remark-readout > header small { color: #7a909b; font-size: .55rem; }
.inspection-remark-readout > p { margin: 0; padding: .66rem .72rem; overflow-wrap: anywhere; white-space: normal; color: #294654; background: #fff; border-inline-start: 3px solid #2792bd; border-radius: .32rem; font-size: .68rem; line-height: 1.72; }
.inspection-remark-readout.is-empty > p { color: #84949b; border-inline-start-color: #becbd0; font-style: italic; }
.shared-record-body > .match-series-readout, .shared-record-body > .inspection-remark-readout { grid-column: 1 / -1; }
[data-score-summary="technical"], [data-score-summary="service"] { position: relative; isolation: isolate; }
.entry-score-panel [data-score-summary] { min-inline-size: 8.5rem; padding: .65rem .8rem; background: #0e3449; border: 1px solid rgba(139, 210, 239, .28); border-radius: .55rem; }
.entry-score-panel [data-score-summary] small, .entry-score-panel [data-score-summary] span { color: #bdd7e3; }
.entry-score-panel [data-score-summary] b { color: #fff; font-size: 1.65rem; }
.inspection-people-line { display: inline-grid; grid-template-columns: auto auto; align-items: center; gap: .12rem .45rem; }
.inspection-people-line.is-duo { grid-template-columns: auto auto 1rem auto auto; }
.inspection-people-line i { color: #1680ad; font-style: normal; font-weight: 800; text-align: center; }
.inspection-people-line small { color: #758d99; font-size: .64rem; }
.confidential-record-row { background: #fbfcfd; }
.confidential-record-row > td { color: #6d818c; }
.confidential-record-row .avatar { display: inline-flex; margin-inline-end: .4rem; vertical-align: middle; }
.confidential-record-person { display: inline-grid; grid-template-columns: auto 1fr; align-items: center; gap: .08rem .38rem; margin: 0; padding: 0; list-style: none; }
.confidential-record-person .avatar { grid-row: 1 / 3; }
.confidential-record-person time { color: #7f939d; font-size: .61rem; }
.confidential-table-value { color: #95a6ae; font-size: .68rem; letter-spacing: .08em; }
.edit-confirmation { inline-size: min(45rem, calc(100vw - 2rem)); max-block-size: min(48rem, calc(100vh - 2rem)); padding: 0; overflow: hidden; color: #173e54; background: #f8fbfc; border: 0; border-radius: .9rem; box-shadow: 0 28px 80px rgba(6, 28, 40, .36); }
.edit-confirmation::backdrop { background: rgba(4, 20, 29, .62); backdrop-filter: blur(5px); }
.edit-confirmation > .edit-confirmation__surface { display: grid; max-block-size: inherit; grid-template-rows: auto minmax(0, 1fr) auto; }
.edit-confirmation header { display: flex; align-items: center; gap: .8rem; padding: 1.05rem 1.2rem; color: #eaf8ff; background: #0d3044; }
.edit-confirmation header > .icon { inline-size: 1.4rem; }
.edit-confirmation header div { flex: 1; }
.edit-confirmation header small { color: #8ec7dd; font-size: .57rem; letter-spacing: .16em; }
.edit-confirmation header h2 { margin: .12rem 0; font-size: 1.05rem; }
.edit-confirmation header p { margin: 0; color: #b9d6e1; font-size: .68rem; }
.edit-confirmation header button { display: grid; place-items: center; flex: 0 0 auto; inline-size: 2.75rem; block-size: 2.75rem; min-inline-size: 44px; min-block-size: 44px; padding: 0; color: #cce3ec; background: transparent; border: 1px solid rgba(255,255,255,.2); border-radius: 50%; }
.edit-diff-list { display: grid; gap: .48rem; padding: 1rem 1.2rem; overflow: auto; }
.edit-diff-list article { display: grid; grid-template-columns: minmax(7rem, .65fr) 1.35fr; align-items: center; gap: .8rem; padding: .7rem .8rem; background: #fff; border: 1px solid #dce7ec; border-radius: .5rem; }
.edit-diff-list article > b { font-size: .72rem; }
.edit-diff-list article > span { display: grid; grid-template-columns: minmax(0, 1fr) 1.5rem minmax(0, 1fr); align-items: center; gap: .35rem; min-inline-size: 0; }
.edit-diff-list del, .edit-diff-list ins { padding: .38rem .48rem; overflow-wrap: anywhere; border-radius: .32rem; font-size: .68rem; text-decoration: none; }
.edit-diff-list del { color: #81505a; background: #fff0f2; }
.edit-diff-list ins { color: #17614e; background: #eaf9f4; }
.edit-diff-list i { color: #76909d; font-style: normal; text-align: center; }
.edit-diff-list [data-result-change] { border-color: #9fb6c1; box-shadow: inset 4px 0 #6d8793; }
.edit-diff-list [data-result-change] > b::after { display: block; margin-block-start: .2rem; color: #778d97; content: "管理员裁决"; font-size: .52rem; font-weight: 650; letter-spacing: .04em; }
.edit-diff-list [data-result-change] del { color: #465f6b; background: #edf3f5; }
.edit-diff-list [data-after-result="passed"] { border-color: #8ac7b2; box-shadow: inset 4px 0 #087a55; }
.edit-diff-list [data-after-result="passed"] ins { color: #086347; background: #e8f8f1; }
.edit-diff-list [data-after-result="downgrade"], .edit-diff-list [data-after-result="removed"] { border-color: #e0a9af; box-shadow: inset 4px 0 #b72e38; }
.edit-diff-list [data-after-result="downgrade"] ins, .edit-diff-list [data-after-result="removed"] ins { color: #97262f; background: #fff0f1; }
.edit-diff-list [data-after-result="retest"] { border-color: #e6b895; box-shadow: inset 4px 0 #a94d17; }
.edit-diff-list [data-after-result="retest"] ins { color: #8b3f13; background: #fff3eb; }
.edit-diff-list [data-after-result="training"] { border-color: #ddc58d; box-shadow: inset 4px 0 #9a650c; }
.edit-diff-list [data-after-result="training"] ins { color: #805408; background: #fff7e5; }
.edit-confirmation footer { display: flex; justify-content: flex-end; gap: .65rem; padding: .85rem 1.2rem; background: #fff; border-block-start: 1px solid #dce7ec; }
.edit-no-change { padding: 1.5rem; color: #71858f; text-align: center; }

@media (max-width: 880px) {
  .technical-score-components { grid-template-columns: 1fr 1fr 1fr; }
  .admin-result-editor__body { grid-template-columns: 1fr; }
  .admin-result-state-key { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 600px) {
  .admin-result-editor > header { align-items: flex-start; }
  .admin-result-editor > header em { display: none; }
  .admin-result-editor__body { padding: .65rem; }
  .admin-result-decision legend { align-items: flex-start; flex-direction: column; gap: .12rem; }
  .admin-result-select-field { grid-template-columns: 1fr; gap: .28rem; }
  .admin-result-select-field select { min-block-size: 3.15rem; font-size: .88rem; }
  .admin-result-state-key { grid-template-columns: 1fr 1fr; }
  .admin-result-state-key > span:last-child { grid-column: 1 / -1; }
  .admin-result-editor > footer { align-items: flex-start; }
  .admin-result-editor > footer > span { display: grid; gap: .08rem; }
  .result-edit-console > header { grid-template-columns: auto minmax(0, 1fr); align-items: start; padding: .82rem; }
  .result-edit-console > header em { grid-column: 2; justify-self: start; }
  .result-edit-context { grid-template-columns: 1fr; padding: .65rem .65rem 0; }
  .result-edit-decision { margin: .65rem; padding: .68rem; }
  .result-edit-decision legend { align-items: flex-start; flex-direction: column; gap: .12rem; }
  .result-edit-decision > label { grid-template-columns: 1fr; gap: .25rem; }
  .result-edit-decision select { min-block-size: 3.25rem; }
  .result-edit-console > footer { align-items: stretch; flex-direction: column; }
  .result-edit-console > footer > .button { inline-size: 100%; min-block-size: 3rem; }
  .match-flow-editor { margin-inline: .7rem; }
  .match-flow-heading { align-items: stretch; flex-direction: column; }
  .match-count-stepper { align-self: stretch; grid-template-columns: 3rem 1fr 3rem; }
  .match-game-list, .technical-score-components { grid-template-columns: 1fr; }
  .personal-kill-fields { grid-template-columns: 1fr; }
  .personal-kill-field .field { grid-template-columns: 1fr; }
  .match-flow-summary small { inline-size: 100%; margin-inline-start: 0; }
  .technical-remark label { align-items: flex-start; flex-direction: column; gap: .15rem; }
  .match-series-readout > header { align-items: flex-start; flex-direction: column; }
  .match-series-readout > header > small { max-inline-size: none; text-align: start; }
  .match-history-game { grid-template-columns: 2.7rem minmax(0, 1fr); gap: .55rem; }
  .match-history-evacuation { grid-column: 2; justify-self: start; min-inline-size: 0; }
  .inspection-people-line.is-duo { grid-template-columns: auto auto; }
  .inspection-people-line.is-duo i { display: none; }
  .edit-diff-list article { grid-template-columns: 1fr; }
  .edit-confirmation footer { flex-direction: column-reverse; }
  .edit-confirmation footer .button { inline-size: 100%; }
}
.service-stepper { display: grid; grid-template-columns: 2.15rem minmax(3.6rem, auto) 2.15rem; align-items: stretch; overflow: hidden; min-block-size: 2.35rem; background: rgba(239, 247, 250, .9); border: 1px solid rgba(134, 167, 182, .45); border-radius: .48rem; }
.service-stepper { grid-template-columns: 2.75rem minmax(3rem, auto) 2.75rem; min-block-size: 2.75rem; }
.service-stepper button { display: grid; place-items: center; inline-size: 2.75rem; color: #173f56; background: rgba(255, 255, 255, .74); border: 0; cursor: pointer; }
.service-stepper button:hover { color: #fff; background: #174f68; }
.service-stepper button:focus-visible { z-index: 1; outline: 3px solid rgba(31, 126, 157, .28); outline-offset: -3px; }
.service-stepper button .icon { inline-size: .9rem; }
.service-stepper input { position: absolute; inline-size: 1px; block-size: 1px; clip: rect(0 0 0 0); clip-path: inset(50%); overflow: hidden; white-space: nowrap; }
.service-stepper output { display: grid; place-items: center; min-inline-size: 3rem; color: #0e3449; font: 780 .85rem/1 "Bahnschrift", "Segoe UI", sans-serif; border-inline: 1px solid rgba(134, 167, 182, .35); }

.score-dock--workbench.adjudication-dock > .dock-actions { grid-template-columns: minmax(0, 1.45fr) minmax(9rem, .55fr); }
.dock-code-evidence { display: grid; grid-template-columns: minmax(10rem, 1fr) auto; align-items: stretch; gap: .48rem; min-inline-size: 0; }
.dock-code-evidence .dock-reservation { display: grid; grid-template-columns: 1fr; align-content: center; min-inline-size: 0; padding: .42rem .7rem; background: rgba(229, 242, 248, .78); border: 1px solid rgba(112, 157, 181, .36); border-radius: .5rem; }
.dock-code-evidence .dock-reservation > span { color: #5d7786; font-size: .75rem; font-weight: 700; }
.dock-code-evidence .reserved-code-button { justify-content: flex-start; min-block-size: 2.2rem; }
.dock-code-evidence .reserved-code-button b { color: #0a3552; font-size: 1.18rem; letter-spacing: .06em; }
.dock-code-evidence .reserved-code-button small { font-size: .7rem; }
.dock-code-evidence .evidence-document-button { min-inline-size: 7.6rem; justify-content: center; }

/* 新建质检必须从“检查”进入“正式保存”，聊天室草稿同步不等于订单提交。 */
.inspection-save-commit { display: grid; align-content: stretch; gap: .38rem; min-inline-size: 0; }
.inspection-save-state { display: flex; align-items: center; gap: .42rem; min-inline-size: 0; padding: .38rem .48rem; color: #466673; background: #eef6f8; border: 1px solid #cfdee3; border-radius: .42rem; }
.inspection-save-state > i { flex: 0 0 auto; inline-size: .5rem; block-size: .5rem; color: #6b8792; background: currentColor; border-radius: 50%; box-shadow: 0 0 0 4px rgba(107,135,146,.1); }
.inspection-save-state > span { display: grid; min-inline-size: 0; gap: .02rem; }
.inspection-save-state b { overflow: hidden; color: #254a5a; font-size: .7rem; text-overflow: ellipsis; white-space: nowrap; }
.inspection-save-state small { overflow-wrap: anywhere; color: #68828d; font-size: .61rem; line-height: 1.3; }
.inspection-save-state small[data-tone="warning"] { color: #9a5b13; }
.inspection-save-state small[data-tone="ready"] { color: #21705d; }
.inspection-save-state small[data-tone="working"] { color: #286d88; }
.adjudication-dock .dock-actions .inspection-save-commit > .button { inline-size: 100%; min-block-size: 2.75rem; block-size: auto; }

.inspection-finalize-dialog { inline-size: min(42rem, calc(100vw - 2rem)); max-block-size: min(46rem, calc(100vh - 2rem)); padding: 0; overflow: hidden; color: #173e54; background: #f7fafb; border: 0; border-radius: .9rem; box-shadow: 0 30px 84px rgba(6,28,40,.38); }
.inspection-finalize-dialog::backdrop { background: rgba(4,20,29,.64); backdrop-filter: blur(5px); }
.inspection-finalize-dialog__surface { display: grid; max-block-size: inherit; overflow-y: auto; }
.inspection-finalize-dialog__header { display: grid; grid-template-columns: auto minmax(0,1fr) auto; align-items: center; gap: .82rem; padding: 1.05rem 1.15rem; color: #eaf8ff; background: #0d3044; }
.inspection-finalize-dialog__header > span { display: grid; place-items: center; inline-size: 2.75rem; block-size: 2.75rem; color: #bce4f3; background: rgba(255,255,255,.09); border: 1px solid rgba(255,255,255,.14); border-radius: .62rem; }
.inspection-finalize-dialog__header > span .icon { inline-size: 1.25rem; }
.inspection-finalize-dialog__header > div { min-inline-size: 0; }
.inspection-finalize-dialog__header small { color: #8ec7dd; font: 720 .58rem/1.2 "Bahnschrift","Segoe UI",sans-serif; letter-spacing: .16em; }
.inspection-finalize-dialog__header h2 { margin: .12rem 0; color: #fff; font-size: 1.08rem; }
.inspection-finalize-dialog__header p { margin: 0; color: #b9d6e1; font-size: .69rem; line-height: 1.45; }
.inspection-finalize-dialog__header > button { display: grid; place-items: center; inline-size: 2.75rem; block-size: 2.75rem; min-inline-size: 44px; min-block-size: 44px; padding: 0; color: #cce3ec; background: transparent; border: 1px solid rgba(255,255,255,.2); border-radius: 50%; cursor: pointer; }
.inspection-finalize-state-rail { display: grid; grid-template-columns: minmax(0,1fr) auto minmax(0,1fr); align-items: center; gap: .65rem; margin: .9rem 1.1rem 0; padding: .6rem .7rem; color: #68818d; background: #edf4f6; border: 1px solid #d3e0e5; border-radius: .55rem; }
.inspection-finalize-state-rail > span,.inspection-finalize-state-rail > strong { display: inline-flex; align-items: center; gap: .38rem; min-inline-size: 0; font-size: .7rem; }
.inspection-finalize-state-rail > span { color: #6d7f87; }
.inspection-finalize-state-rail > strong { justify-self: end; color: #17634f; }
.inspection-finalize-state-rail i { flex: 0 0 auto; inline-size: .46rem; block-size: .46rem; background: currentColor; border-radius: 50%; }
.inspection-finalize-state-rail > .icon { inline-size: .9rem; color: #78909a; }
.inspection-finalize-people { display: grid; gap: .12rem; margin: .7rem 1.1rem 0; padding: .78rem .85rem; background: #fff; border: 1px solid #d8e4e9; border-radius: .55rem; }
.inspection-finalize-people small { color: #718994; font-size: .62rem; font-weight: 700; letter-spacing: .07em; }
.inspection-finalize-people b { color: #123d55; font-size: 1rem; overflow-wrap: anywhere; }
.inspection-finalize-people span { color: #557481; font-size: .75rem; font-weight: 700; overflow-wrap: anywhere; }
.inspection-finalize-scoreboard { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .65rem; margin: .65rem 1.1rem 0; }
.inspection-finalize-scoreboard > div { display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: center; gap: .55rem; min-inline-size: 0; padding: .75rem .82rem; background: #fff; border: 1px solid #d8e4e9; border-radius: .55rem; }
.inspection-finalize-scoreboard dt { color: #66808b; font-size: .7rem; font-weight: 720; }
.inspection-finalize-scoreboard dd { display: grid; justify-items: end; gap: .06rem; margin: 0; }
.inspection-finalize-scoreboard dd b { color: #123d55; font: 820 1.45rem/1 "Bahnschrift","Segoe UI",sans-serif; }
.inspection-finalize-scoreboard dd small { color: #758b95; font-size: .61rem; }.inspection-finalize-scoreboard dd i { font-style: normal; }
.inspection-finalize-verdict { display: grid; gap: .18rem; margin: .65rem 1.1rem 0; padding: .82rem .9rem; color: #365d6c; background: #edf4f6; border: 1px solid #cfdee4; border-inline-start: 5px solid #6c8792; border-radius: .55rem; }
.inspection-finalize-verdict small { color: #6f8791; font-size: .62rem; font-weight: 720; letter-spacing: .06em; }
.inspection-finalize-verdict b { color: #294f5e; font-size: 1.08rem; }
.inspection-finalize-verdict p { margin: 0; color: #607984; font-size: .7rem; line-height: 1.5; }
.inspection-finalize-verdict[data-result="passed"] { background: #eaf8f2; border-color: #b9ddcf; border-inline-start-color: #148064; }.inspection-finalize-verdict[data-result="passed"] b { color: #116b54; }
.inspection-finalize-verdict[data-result="training"],.inspection-finalize-verdict[data-result="retest"] { background: #fff7e6; border-color: #e4d09c; border-inline-start-color: #ac7214; }.inspection-finalize-verdict[data-result="training"] b,.inspection-finalize-verdict[data-result="retest"] b { color: #8b5b0d; }
.inspection-finalize-verdict[data-result="downgrade"],.inspection-finalize-verdict[data-result="removed"] { background: #fff0f1; border-color: #e3b9bd; border-inline-start-color: #bd3540; }.inspection-finalize-verdict[data-result="downgrade"] b,.inspection-finalize-verdict[data-result="removed"] b { color: #a62d37; }
.inspection-finalize-warning { display: grid; grid-template-columns: auto minmax(0,1fr); align-items: start; gap: .62rem; margin: .65rem 1.1rem .9rem; padding: .7rem .78rem; color: #7f5516; background: #fff9e9; border: 1px solid #ead9aa; border-radius: .5rem; }
.inspection-finalize-warning > .icon { inline-size: 1rem; margin-block-start: .08rem; }
.inspection-finalize-warning > span { display: grid; gap: .08rem; }.inspection-finalize-warning b { font-size: .73rem; }.inspection-finalize-warning small { color: #8b6c39; font-size: .67rem; line-height: 1.45; }
.inspection-finalize-dialog footer { display: grid; grid-template-columns: auto minmax(13rem,1fr); justify-content: end; gap: .65rem; padding: .85rem 1.1rem; background: #fff; border-block-start: 1px solid #dce7ec; }
.inspection-finalize-dialog footer .button { min-block-size: 2.9rem; margin: 0; }
.inspection-finalize-dialog footer .button--primary { justify-self: end; min-inline-size: 15rem; }
.inspection-finalize-dialog footer .button:disabled { opacity: .52; cursor: not-allowed; }

@media (max-width: 600px) {
  .inspection-save-state b { white-space: normal; }
  .inspection-finalize-dialog { inline-size: calc(100vw - 1rem); max-block-size: calc(100vh - 1rem); border-radius: .72rem; }
  .inspection-finalize-dialog__header { align-items: start; gap: .6rem; padding: .82rem; }
  .inspection-finalize-dialog__header > span { inline-size: 2.4rem; block-size: 2.4rem; }
  .inspection-finalize-dialog__header p { font-size: .65rem; }
  .inspection-finalize-state-rail,.inspection-finalize-people,.inspection-finalize-scoreboard,.inspection-finalize-verdict,.inspection-finalize-warning { margin-inline: .72rem; }
  .inspection-finalize-state-rail { gap: .35rem; }
  .inspection-finalize-state-rail > span,.inspection-finalize-state-rail > strong { font-size: .64rem; }
  .inspection-finalize-scoreboard { gap: .45rem; }
  .inspection-finalize-scoreboard > div { grid-template-columns: 1fr; gap: .22rem; padding: .62rem; }
  .inspection-finalize-scoreboard dd { justify-items: start; }
  .inspection-finalize-dialog footer { grid-template-columns: 1fr; }
  .inspection-finalize-dialog footer .button,.inspection-finalize-dialog footer .button--primary { inline-size: 100%; min-inline-size: 0; }
}

.change-request-editor > form { display: grid; gap: .9rem; }
.change-editor-head { display: flex; align-items: center; gap: .65rem; padding: .72rem; color: #123d55; background: rgba(220, 239, 247, .7); border: 1px solid rgba(110, 159, 184, .34); border-radius: .5rem; }
.change-editor-head > .icon { inline-size: 1.2rem; }
.change-editor-head div { display: grid; gap: .15rem; }
.change-editor-head b { font-size: .88rem; }
.change-editor-head small { color: #607b8b; font-size: .72rem; line-height: 1.45; }
.change-game-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .7rem; }
.change-game-grid fieldset, .change-service-fieldset { min-inline-size: 0; padding: .75rem; border: 1px solid rgba(127, 161, 178, .35); border-radius: .55rem; }
.change-game-grid legend, .change-service-fieldset legend { padding-inline: .3rem; color: #294e60; font-size: .75rem; font-weight: 760; }
.game-fields--change-personal { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.game-fields--change-personal > .personal-kill-fields { grid-column: 1 / -1; }
.game-fields--change-personal .personal-kill-field .field { grid-template-columns: minmax(0, 1fr) 4.6rem; }
.game-fields--change-personal .personal-kill-field label { font-size: .72rem; }
.change-live-summary { display: grid; grid-template-columns: repeat(2, 1fr); gap: .55rem; }
.change-live-summary span { padding: .65rem .7rem; color: #567383; background: rgba(232, 243, 248, .65); border-radius: .45rem; font-size: .72rem; }
.change-live-summary b { color: #103c55; font-size: 1rem; }
.change-diff-table { overflow-x: auto; margin-block: .7rem; border: 1px solid rgba(127, 161, 178, .35); border-radius: .5rem; }
.change-diff-table table { inline-size: 100%; border-collapse: collapse; font-size: .75rem; }
.change-diff-table th, .change-diff-table td { padding: .55rem .65rem; text-align: start; border-block-end: 1px solid rgba(127, 161, 178, .22); }
.change-diff-table td:nth-child(3) { inline-size: 2rem; color: #7994a1; text-align: center; }
.change-diff-table td:nth-child(4) b { color: #0c5b68; }
.change-review-actions { display: grid; grid-template-columns: 1fr 1fr; gap: .55rem; }

.tracking-rail--two { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .9rem; }
.tracking-rail--two::before { grid-column: 1 / -1; content: "投诉处理"; }
.official-receipt--prominent { gap: 1.1rem; padding: 1.25rem; background: linear-gradient(135deg, #092c4b, #145b77); border-color: rgba(159, 219, 238, .42); box-shadow: 0 16px 34px rgba(7, 40, 67, .2), inset 0 1px rgba(255,255,255,.16); }
.official-receipt--prominent .official-receipt-seal { inline-size: 5rem; block-size: 5rem; font-size: 1rem; border-width: 2px; }
.official-receipt--prominent .official-receipt-seal small { font-size: .68rem; }
.official-receipt--prominent header { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: .5rem; }
.official-receipt--prominent header b { color: #fff; font-size: 1.15rem; }
.official-receipt--prominent header time { color: #a9cbd8; font-size: .76rem; }
.official-receipt--prominent p { margin-block: .65rem; font-size: .94rem; line-height: 1.75; }
.official-receipt--prominent a { min-block-size: 2.5rem; padding: .55rem .7rem; color: #e5f8ff; background: rgba(255,255,255,.1); border: 1px solid rgba(255,255,255,.2); border-radius: .4rem; font-size: .76rem; }

.upgrade-detail-grid--inspection { grid-template-columns: minmax(15rem, .38fr) minmax(0, 1.62fr); }
.upgrade-entry-workspace { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.upgrade-inspection-form { display: grid; gap: .85rem; }
.upgrade-inspection-heading { display: flex; align-items: center; gap: .8rem; padding: 1rem; }
.upgrade-inspection-heading > span { display: grid; place-items: center; inline-size: 2.8rem; block-size: 2.8rem; color: #d9f3ff; background: #123d5b; border-radius: .55rem; }
.upgrade-inspection-heading > span .icon { inline-size: 1.2rem; }
.upgrade-inspection-heading > div { flex: 1; }
.upgrade-inspection-heading > div small { color: #68818e; font-size: .7rem; }
.upgrade-inspection-heading h2 { margin: .15rem 0; color: #123c55; font-size: 1.15rem; }
.upgrade-inspection-heading p { margin: 0; color: #607986; font-size: .75rem; }
.upgrade-inspection-heading > b { padding: .45rem .65rem; color: #8b6518; background: #fff3d6; border-radius: 999px; font-size: .72rem; }
.upgrade-authority-note {
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  margin-block-start: .65rem;
  padding: .55rem .7rem;
  color: #f4e5b6;
  background: linear-gradient(110deg, #163d55, #205f79);
  border: 1px solid rgba(231, 207, 142, .38);
  border-radius: .5rem;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .12);
  font-style: normal;
}
.upgrade-authority-note > .icon { inline-size: 1rem; }
.upgrade-authority-note > span { display: grid; gap: .08rem; }
.upgrade-authority-note b { color: #fff6d8; font-size: .76rem; }
.upgrade-authority-note small { color: #c5dce5; font-size: .68rem; }
.upgrade-inspection-decision { display: grid; gap: .85rem; padding: 1rem; }
.upgrade-live-verdict { display: grid; grid-template-columns: auto auto 1fr; align-items: center; gap: .55rem; padding: .8rem; color: #fff; background: #103b56; border-radius: .55rem; }
.upgrade-live-verdict > span { color: #bdd6e1; font-size: .72rem; }
.upgrade-live-verdict > b { font-size: 1rem; }
.upgrade-live-verdict > em { justify-self: start; padding: .25rem .45rem; color: #d9ecf3; background: rgba(255,255,255,.1); border-radius: 999px; font-size: .66rem; font-style: normal; font-weight: 760; }
.upgrade-live-verdict > small { color: #a7c2cf; font-size: .7rem; text-align: end; }
.upgrade-live-verdict[data-result="passed"] { background: #11684f; }
.upgrade-live-verdict[data-result="training"], .upgrade-live-verdict[data-result="retest"] { background: #8a570d; }
.upgrade-live-verdict[data-result="downgrade"], .upgrade-live-verdict[data-result="removed"] { background: #a82730; }
.upgrade-inspection-actions { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: .55rem; }

@media (max-width: 62rem) {
  .upgrade-detail-grid--inspection, .upgrade-entry-workspace { grid-template-columns: 1fr; }
  .tracking-rail--two { grid-template-columns: 1fr; }
}

@media (max-width: 42rem) {
  .inspection-workbench { padding-block-end: 22rem; }
  .score-dock--workbench.adjudication-dock,
  .inspection-workbench .score-dock--workbench.adjudication-dock {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .workbench-command-strip--simple, .change-game-grid, .change-live-summary { grid-template-columns: 1fr; }
  .workbench-command-strip--simple article { border-inline-end: 0; }
  .service-editor--compact .service-item { grid-template-columns: 1.45rem minmax(0, 1fr); }
  .service-editor--compact .service-item .service-stepper { grid-column: 2; inline-size: min(100%, 9.5rem); }
  .dock-code-evidence, .upgrade-inspection-actions { grid-template-columns: 1fr; }
  .score-dock--workbench.adjudication-dock > .dock-actions {
    grid-template-columns: 1fr;
    min-inline-size: 0;
    inline-size: 100%;
  }
  .score-dock--workbench.adjudication-dock .dock-code-evidence,
  .score-dock--workbench.adjudication-dock .dock-reservation,
  .score-dock--workbench.adjudication-dock .dock-actions > .button {
    inline-size: 100%;
  }
  .score-dock--workbench.adjudication-dock .evidence-document-button { min-inline-size: 100%; }
  .score-dock--workbench.adjudication-dock .reserved-code-button b { overflow-wrap: normal; word-break: keep-all; }
  .official-receipt--prominent { grid-template-columns: 1fr; }
  .official-receipt--prominent .official-receipt-seal { inline-size: 4.5rem; block-size: 4.5rem; }
  .change-review-actions { grid-template-columns: 1fr; }
}

/* 既往通过资格：超管总览中的独立、只读名册 */
.historical-pass-panel { margin-top: 28px; overflow: hidden; border: 1px solid var(--border, #dce4ea); border-radius: 14px; background: var(--surface, #fff); }
.historical-pass-panel > .section-heading { margin: 0; padding: 22px 24px 18px; border-bottom: 1px solid var(--border, #dce4ea); }
.historical-pass-panel > .section-heading p { margin: 6px 0 0; color: var(--muted, #6f7c85); font-size: 13px; }
.historical-pass-summary { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-bottom: 1px solid var(--border, #dce4ea); }
.historical-pass-summary span { display: flex; align-items: baseline; gap: 8px; padding: 18px 24px; color: var(--muted, #6f7c85); font-size: 13px; }
.historical-pass-summary span + span { border-left: 1px solid var(--border, #dce4ea); }
.historical-pass-summary b { color: var(--text, #0d2e43); font-size: 24px; }
.historical-pass-disclosure > summary { display: flex; align-items: center; justify-content: space-between; padding: 16px 24px; cursor: pointer; color: var(--text, #0d2e43); font-weight: 700; list-style: none; }
.historical-pass-disclosure > summary::-webkit-details-marker { display: none; }
.historical-pass-disclosure > summary .icon { transition: transform 180ms ease; }
.historical-pass-disclosure[open] > summary .icon { transform: rotate(90deg); }
.historical-pass-disclosure .table-wrap { max-height: 520px; border-top: 1px solid var(--border, #dce4ea); }
.historical-pass-type { display: inline-flex; align-items: center; min-height: 26px; padding: 0 9px; border-radius: 999px; background: #eaf4ef; color: #24704d; font-size: 12px; font-weight: 700; }
.historical-pass-type--upgrade { background: #e9f1f7; color: #1d5c82; }
.muted-text { color: var(--muted, #7b8790); }

@media (max-width: 720px) {
  .historical-pass-summary { grid-template-columns: 1fr; }
  .historical-pass-summary span + span { border-left: 0; border-top: 1px solid var(--border, #dce4ea); }
}
.processing-ownership-lock { display: grid; grid-template-columns: auto 1fr; gap: .65rem; margin-block-start: .8rem; padding: .78rem; color: #385461; background: #f4f7f8; border: 1px solid #d4dfe3; border-inline-start: 4px solid #6c8590; border-radius: .4rem; }
.processing-ownership-lock > .icon { inline-size: 1.1rem; margin-block-start: .08rem; }
.processing-ownership-lock b { font-size: .875rem; }
.processing-ownership-lock p { margin: .2rem 0 0; color: #6f828a; font-size: .75rem; line-height: 1.55; }
.processing-row.is-readonly-owner { box-shadow: inset 3px 0 #80949d; }
.upgrade-awaiting-finalization { display: grid; grid-template-columns: auto 1fr; align-items: center; gap: .55rem; margin: .75rem -.85rem -.85rem; padding: .72rem .85rem; color: #6b4e19; background: #faf3e2; border-block-start: 1px solid #e6cf99; }
.upgrade-awaiting-finalization > .icon { inline-size: 1.05rem; }
.upgrade-awaiting-finalization span { display: grid; gap: .1rem; }
.upgrade-awaiting-finalization b { font-size: .8125rem; }
.upgrade-awaiting-finalization small { color: #887044; font-size: .75rem; }
.ticket-internal-summary { display: grid; grid-template-columns: 1fr 1fr; margin: 0; border: 1px solid #dce5e8; border-radius: .4rem; }
.ticket-internal-summary > div { display: grid; gap: .2rem; padding: .68rem; }
.ticket-internal-summary > div + div { border-inline-start: 1px solid #dce5e8; }
.ticket-internal-summary dt { color: #778a93; font-size: .75rem; }
.ticket-internal-summary dd { margin: 0; color: #294c5d; font-size: .8125rem; font-weight: 700; }
.ticket-internal-note { margin: .65rem 0 0; padding: .65rem; color: #526a75; background: #f6f8f9; border-radius: .35rem; font-size: .8125rem; line-height: 1.6; }
.ticket-history-timeline > .panel-heading > b { display: inline-grid; place-items: center; min-inline-size: 1.7rem; block-size: 1.7rem; color: #fff; background: #214f66; border-radius: 999px; font-size: .75rem; }
.ticket-history-timeline > ol { position: relative; display: grid; gap: 0; margin: 0; padding: .2rem 1rem 1rem; list-style: none; }
.ticket-history-timeline > ol::before { position: absolute; inset-block: .65rem 1.5rem; inset-inline-start: 1.35rem; inline-size: 1px; content: ""; background: #c9d7dd; }
.ticket-history-timeline li { position: relative; display: grid; grid-template-columns: .72rem 1fr; gap: .65rem; padding: .68rem 0; }
.ticket-history-timeline li > i { position: relative; z-index: 1; inline-size: .72rem; block-size: .72rem; margin-block-start: .14rem; background: #2e6680; border: 3px solid #fff; border-radius: 50%; box-shadow: 0 0 0 1px #91abb7; }
.ticket-history-timeline li > div { display: grid; gap: .22rem; }
.ticket-history-timeline header { display: flex; justify-content: space-between; gap: .7rem; }
.ticket-history-timeline header b { color: #264a5b; font-size: .8125rem; }
.ticket-history-timeline header time, .ticket-history-timeline li small { color: #778a93; font-size: .75rem; }
.ticket-history-timeline li p { margin: .12rem 0 0; color: #4f6873; font-size: .8125rem; line-height: 1.6; }
.finalization-form { display: grid; gap: .55rem; margin-block-start: .8rem; padding: .8rem; background: #f7f9fa; border: 1px solid #bdccd3; border-inline-start: 4px solid #18394b; border-radius: .45rem; }
.finalization-form__mark { display: inline-flex; align-items: center; gap: .4rem; color: #17384a; font-size: .8125rem; }
.finalization-form__mark .icon { inline-size: 1rem; }
.record-processing-card.is-awaiting-finalization > header { border-block-end-color: #d6be83; }

@media (max-width: 78rem) {
  .workbench-list > header, .workbench-item > summary { grid-template-columns: 4.8rem minmax(12rem, 1.6fr) 7rem minmax(7rem, .8fr) minmax(8rem, 1fr) auto; }
  .workbench-list > header > :nth-child(6), .workbench-item-time { display: none; }
  .workbench-item > summary .final-decision-stamp { grid-column: auto; }
}

@media (max-width: 64rem) {
  .workbench-command-strip { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .workbench-command-strip article:nth-child(2) { border-inline-end: 0; }
  .workbench-command-strip article:nth-child(-n+2) { border-block-end: 1px solid rgba(255, 255, 255, .14); }
  .workbench-module-tabs { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .workbench-module-tab:nth-child(3) { border-inline-end: 0; }
  .workbench-stage-bar { grid-template-columns: 1fr; }
  .workbench-list > header { display: none; }
  .workbench-item > summary { grid-template-columns: 4.5rem minmax(11rem, 1fr) 7rem minmax(7rem, .8fr) auto; }
  .workbench-item-next { display: none; }
  .workbench-item-facts { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .workbench-item-facts > div:nth-child(3) { border-inline-end: 0; }
  .workbench-item-facts > div:nth-child(n+4) { border-block-start: 1px solid #e1e8eb; }
}

@media (max-width: 42rem) {
  .workbench-generated { display: none; }
  .workbench-archive-bar { align-items: stretch; flex-wrap: wrap; }
  .workbench-archive-bar > span { flex-basis: 100%; }
  .workbench-archive-bar > span small { display: none; }
  .workbench-archive-bar > a { flex: 1 1 30%; text-align: center; }
  .workbench-command-strip article { min-block-size: 4.3rem; padding: .78rem; }
  .workbench-command-strip b { font-size: 1.45rem; }
  .workbench-module-tabs { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .workbench-module-tab:nth-child(3) { border-inline-end: 1px solid #e5ebed; }
  .workbench-module-tab:nth-child(even) { border-inline-end: 0; }
  .workbench-stage-bar { padding: .6rem; }
  .workbench-stage-bar form { grid-template-columns: auto minmax(0, 1fr) auto; }
  .workbench-item > summary { grid-template-columns: 3.7rem minmax(0, 1fr) auto; gap: .45rem; min-block-size: 5.6rem; }
  .workbench-item-stage { grid-row: 2; grid-column: 2; }
  .workbench-item-owner, .workbench-item-next, .workbench-item-time { display: none; }
  .workbench-item > summary > .icon:last-child { grid-column: 3; grid-row: 1 / span 2; }
  .workbench-responsibility-track { grid-template-columns: 1fr; gap: .7rem; }
  .workbench-responsibility-track::before { inset-block: .42rem; inset-inline-start: .42rem; inline-size: 2px; block-size: auto; }
  .workbench-responsibility-track li { grid-template-columns: .86rem 1fr; justify-items: start; text-align: start; }
  .workbench-item-facts { grid-template-columns: 1fr 1fr; }
  .workbench-item-facts > div, .workbench-item-facts > div:nth-child(3) { border-inline-end: 0; border-block-start: 1px solid #e1e8eb; }
  .workbench-item-facts > div:nth-child(odd) { border-inline-end: 1px solid #e1e8eb; }
  .workbench-item-facts > div:first-child, .workbench-item-facts > div:nth-child(2) { border-block-start: 0; }
  .workbench-item-actions { display: grid; grid-template-columns: 1fr; }
  .workbench-pagination { align-items: flex-start; gap: .45rem; flex-direction: column; }
}

@media (prefers-reduced-motion: reduce) {
  .workbench-item > summary > .icon:last-child { transition: none; }
  .change-request-card.is-workbench-focus { scroll-behavior: auto; }
}

/* 冰晶毛玻璃主题 · 方案 01
   只覆盖颜色、材质、边框、阴影与交互反馈，不改变现有布局和业务结构。 */
:root {
  --ink: #082743;
  --ink-2: #143b58;
  --paper: rgba(248, 252, 254, .76);
  --surface: rgba(248, 252, 254, .72);
  --surface-2: rgba(232, 244, 250, .68);
  --line: rgba(73, 119, 151, .2);
  --muted: #5f7689;
  --accent: #0a2949;
  --accent-dark: #061f39;
  --cyan: #2c8fbe;
  --success: #17785a;
  --warning: #94610f;
  --danger: #a6373c;
  --neutral: #526b7b;
  --shadow: 0 4px 16px rgba(7, 37, 65, .1), inset 0 1px 0 rgba(255, 255, 255, .68);
}

html { background: #eaf4f8; }
body {
  color: var(--ink);
  background-color: #eaf4f8;
  background-image: url("/assets/brand/glass-ocean-bg.jpg");
  background-position: center;
  background-size: cover;
  background-attachment: fixed;
  background-repeat: no-repeat;
}
.app-shell, .page-wrap { background: rgba(234, 244, 248, .84); }

.top-banner {
  color: #21445e;
  background: rgba(241, 249, 252, .72);
  border-block-end-color: rgba(255, 255, 255, .7);
  box-shadow: inset 0 -1px 0 rgba(73, 119, 151, .12);
  -webkit-backdrop-filter: blur(14px) saturate(1.12);
  backdrop-filter: blur(14px) saturate(1.12);
}
.top-banner__close { color: #547084; }
.top-banner__close:hover { color: #082743; background: rgba(255, 255, 255, .48); }
.topbar {
  background: rgba(244, 250, 253, .64);
  border-block-end-color: rgba(255, 255, 255, .72);
  box-shadow: 0 7px 26px rgba(7, 37, 65, .08), inset 0 -1px 0 rgba(75, 121, 151, .12);
  -webkit-backdrop-filter: blur(20px) saturate(1.16);
  backdrop-filter: blur(20px) saturate(1.16);
}
.brand {
  color: #082743;
  background: rgba(255, 255, 255, .56);
  border-color: rgba(255, 255, 255, .72);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .74), 0 3px 12px rgba(7, 37, 65, .07);
  -webkit-backdrop-filter: blur(12px) saturate(1.12);
  backdrop-filter: blur(12px) saturate(1.12);
}
.brand-image, .avatar, .login-mark img, .shared-brand img, .tracking-brand img, .feedback-brand img {
  filter: none;
  border-color: rgba(255, 255, 255, .7);
  box-shadow: 0 3px 10px rgba(7, 37, 65, .14), inset 0 1px 0 rgba(255, 255, 255, .52);
}
.brand small { color: #6f8494; }
.nav-stack {
  background: rgba(221, 237, 245, .5);
  border-color: rgba(255, 255, 255, .52);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .54);
  -webkit-backdrop-filter: blur(12px) saturate(1.12);
  backdrop-filter: blur(12px) saturate(1.12);
}
.nav-link { color: #587083; }
.nav-link:hover, .nav-link:focus-visible { color: #0a2949; background: rgba(255, 255, 255, .5); }
.nav-link.is-active {
  color: #082743;
  background: rgba(255, 255, 255, .78);
  box-shadow: 0 3px 12px rgba(7, 37, 65, .09), inset 0 1px 0 rgba(255, 255, 255, .8);
}
.global-search input, .evidence-link, .period-control, .month-control {
  color: #153b57;
  background: rgba(255, 255, 255, .62);
  border-color: rgba(255, 255, 255, .72);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .72), 0 3px 12px rgba(7, 37, 65, .07);
  -webkit-backdrop-filter: blur(12px) saturate(1.1);
  backdrop-filter: blur(12px) saturate(1.1);
}
.global-search .icon, .search-field .icon, .month-control .icon { color: #668296; }
.global-search input:focus { border-color: #2c8fbe; box-shadow: 0 0 0 3px rgba(44, 143, 190, .18); }
.evidence-link { color: #31566f; }
.evidence-link:hover { color: #082743; background: rgba(255, 255, 255, .82); }
.avatar { color: #fff; background: #0a2949; }
.icon-button { color: #5d7587; }
.icon-button:hover, .settings-button[aria-current="page"], .feedback-inbox-button[aria-current="page"] { color: #082743; background: rgba(255, 255, 255, .58); }
.nav-scrim { background: rgba(6, 31, 57, .42); -webkit-backdrop-filter: blur(5px); backdrop-filter: blur(5px); }

.page-heading h1, .section-heading h2, .panel-heading h2, .section-title h2, .settings-card h2, .rule-heading h2 { color: #082743; }
.eyebrow, .page-heading p, .section-heading p, .panel-heading p, .section-title p, .field-hint, .empty-state { color: #657e90; }
.page-tabs, .account-tabs, .rank-segment, .rank-tabs, .auth-switch {
  background: rgba(215, 233, 242, .54);
  border-color: rgba(255, 255, 255, .66);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .6);
  -webkit-backdrop-filter: blur(12px) saturate(1.1);
  backdrop-filter: blur(12px) saturate(1.1);
}
.page-tabs a, .account-tabs a, .rank-segment button, .rank-tabs button, .auth-switch a { color: #60788b; }
.page-tabs a:hover, .account-tabs a:hover, .rank-segment button:hover, .rank-tabs button:hover, .auth-switch a:hover { color: #153c59; }
.page-tabs a.is-active, .account-tabs a.is-active, .rank-segment button.is-active, .rank-tabs button.is-active, .auth-switch a.is-active {
  color: #082743;
  background: rgba(255, 255, 255, .82);
  box-shadow: 0 3px 12px rgba(7, 37, 65, .09), inset 0 1px 0 rgba(255, 255, 255, .84);
}

.button--primary, .button--dark, .auth-switch a.is-active, .stack-form .button, .form-container .form-submit-btn,
.workbench-stage-bar form button, .copy-code-control, .evidence-document-button, .feedback-request-button {
  color: #fff;
  background: #0a2949;
  border-color: rgba(255, 255, 255, .18);
  box-shadow: 0 8px 20px rgba(7, 37, 65, .18), inset 0 1px 0 rgba(255, 255, 255, .15);
}
.button--primary:hover, .button--dark:hover, .stack-form .button:hover, .form-container .form-submit-btn:hover,
.workbench-stage-bar form button:hover, .copy-code-control:hover, .evidence-document-button:hover, .feedback-request-button:hover {
  color: #fff;
  background: #123a5d;
  border-color: rgba(255, 255, 255, .28);
  box-shadow: 0 10px 24px rgba(7, 37, 65, .2), inset 0 1px 0 rgba(255, 255, 255, .2);
}
.button--ghost {
  color: #294e68;
  background: rgba(255, 255, 255, .58);
  border-color: rgba(255, 255, 255, .72);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .74), 0 3px 12px rgba(7, 37, 65, .07);
}
.button--ghost:hover { color: #082743; background: rgba(255, 255, 255, .8); }
.button--plain { color: #547085; }

.panel, .metric-card, .cycle-band, .record-insights article, .month-card, .level-stat-card, .processing-card,
.processing-list, .record-processing-card, .ticket-counts article, .ticket-hero, .shared-brand, .shared-history,
.shared-feedback-card, .tracking-brand, .tracking-subject, .tracking-rail, .tracking-expired-receipt,
.settings-card, .rules-card, .rule-notes article, .standard-index, .standard-sheet, .upgrade-detail-person,
.upgrade-form-section, .upgrade-player-card, .upgrade-decision-receipt, .upgrade-decision-form,
.audit-filter-panel, .audit-ledger, .workbench-list, .workbench-filter-panel, .workbench-archive-bar,
.rules-announcement-bar, .rules-announcement-dialog, .announcement-admin, .update-popover {
  background: rgba(248, 252, 254, .7);
  border-color: rgba(255, 255, 255, .72);
  box-shadow: 0 4px 16px rgba(7, 37, 65, .08), inset 0 1px 0 rgba(255, 255, 255, .7);
  -webkit-backdrop-filter: blur(18px) saturate(1.12);
  backdrop-filter: blur(18px) saturate(1.12);
}
.metric-card:hover, .month-card:hover, .level-stat-card:hover { border-color: rgba(86, 143, 178, .4); box-shadow: 0 8px 24px rgba(7, 37, 65, .11), inset 0 1px 0 rgba(255, 255, 255, .76); }
.metric-card header > span, .metric-card small, .record-insights small, .cycle-meta dt { color: #647d90; }
.metric-card strong, .record-insights b, .cycle-meta dd { color: #082743; }
.cycle-band, .overview-context, .account-note, .filter-bar, .record-filter-panel {
  background: rgba(239, 248, 252, .62);
  border-color: rgba(255, 255, 255, .7);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .62);
  -webkit-backdrop-filter: blur(14px) saturate(1.1);
  backdrop-filter: blur(14px) saturate(1.1);
}
.live-dot, .cycle-track i, .bar-fill, .score-meter > span i, .benchmark > span i, .chart-bar i { background: #0a2949; }
.cycle-track, .bar-track, .score-meter > span, .benchmark > span { background: rgba(85, 126, 156, .14); }
.chart-bars { background-color: rgba(255, 255, 255, .18); }
.chart-bar:hover i { background: #236b94; }
.recent-item, td, .shared-record, .record-ticket, .processing-row, .workbench-item, .audit-ledger-row { border-color: rgba(85, 126, 156, .14); }
.recent-item .avatar { color: #0a2949; background: rgba(216, 235, 244, .76); }

input, select, textarea, .stack-form input, .form-container .form-group input, .form-container .form-group textarea {
  color: #0e314d;
  background: rgba(255, 255, 255, .66);
  border-color: rgba(85, 126, 156, .26);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .7);
  -webkit-backdrop-filter: blur(10px) saturate(1.08);
  backdrop-filter: blur(10px) saturate(1.08);
}
input:hover, select:hover, textarea:hover, .form-container .form-group input:hover, .form-container .form-group textarea:hover { border-color: rgba(57, 123, 164, .5); }
input:focus, select:focus, textarea:focus, .form-container .form-group input:focus, .form-container .form-group textarea:focus {
  border-color: #2c8fbe;
  box-shadow: 0 0 0 3px rgba(44, 143, 190, .2), inset 0 1px 0 rgba(255, 255, 255, .74);
}
input::placeholder, textarea::placeholder, .form-container .form-group input::placeholder, .form-container .form-group textarea::placeholder { color: #8195a4; opacity: 1; }
.field > label, .form-container .form-group label { color: #294d67; }
input:-webkit-autofill, input:-webkit-autofill:hover, input:-webkit-autofill:focus { -webkit-text-fill-color: #0e314d; box-shadow: 0 0 0 1000px rgba(248, 252, 254, .94) inset; }

th, .processing-list > header, .workbench-list > header, .audit-ledger > header {
  color: #5d7587;
  background: rgba(222, 238, 246, .54);
  border-color: rgba(85, 126, 156, .16);
}
td, table { color: #29485f; }
tbody tr:hover, .processing-row > summary:hover, .workbench-item > summary:hover, .audit-ledger-row > summary:hover { background: rgba(255, 255, 255, .45); }
.table-primary, .inspection-reference, .processing-code, .workbench-item-main b, .audit-action { color: #123b57 !important; }
.processing-drawer, .workbench-item-drawer, .audit-ledger-drawer, .level-rank-workspace {
  background: rgba(226, 240, 247, .5);
  border-color: rgba(85, 126, 156, .15);
  -webkit-backdrop-filter: blur(14px) saturate(1.08);
  backdrop-filter: blur(14px) saturate(1.08);
}
.processing-drawer-facts, .processing-log, .processing-form--inline, .workbench-item-facts, .audit-ledger-drawer > dl, .audit-change-table {
  background: rgba(255, 255, 255, .6);
  border-color: rgba(255, 255, 255, .7);
}

.status--success, .upgrade-outcome--success, .ticket-phase--closed { color: #17785a; background: rgba(223, 247, 238, .8); border-color: rgba(23, 120, 90, .18); }
.status--warning, .upgrade-outcome--pending, .ticket-phase--waiting, .processing-state--review { color: #94610f; background: rgba(255, 244, 211, .82); border-color: rgba(148, 97, 15, .2); }
.status--danger, .upgrade-outcome--failed, .ticket-phase--overdue { color: #a6373c; background: rgba(255, 229, 231, .84); border-color: rgba(166, 55, 60, .18); }
.status--neutral, .ticket-phase { color: #526b7b; background: rgba(232, 240, 244, .78); border-color: rgba(82, 107, 123, .16); }
.ticket-type--feedback, .record-feedback-flag--feedback { color: #226b92; background: rgba(221, 242, 252, .82); border-color: rgba(34, 107, 146, .16); }
.ticket-type--exception, .record-feedback-flag--exception { color: #94610f; background: rgba(255, 244, 211, .82); border-color: rgba(148, 97, 15, .18); }
.ticket-type--complaint, .record-feedback-flag--complaint { color: #a6373c; background: rgba(255, 229, 231, .84); border-color: rgba(166, 55, 60, .18); }
.flash--success { color: #176d53; background: rgba(223, 247, 238, .86); border-color: rgba(23, 120, 90, .2); }
.flash--error, .form-error { color: #963238; background: rgba(255, 229, 231, .88); border-color: rgba(166, 55, 60, .2); }
.flash--info { color: #226b92; background: rgba(221, 242, 252, .88); border-color: rgba(34, 107, 146, .18); }

.login-body, .login-shell {
  background-color: #0d2543;
  background-image: url("/assets/brand/glass-ocean-bg.jpg");
  background-position: center;
  background-size: cover;
  background-attachment: fixed;
  background-repeat: no-repeat;
}
.login-form-panel { background: rgba(5, 30, 56, .04); }
.login-form-wrap {
  color: #082743;
  background: rgba(245, 250, 253, .66);
  border-color: rgba(255, 255, 255, .76);
  box-shadow: 0 24px 64px rgba(7, 37, 65, .2), 0 4px 16px rgba(7, 37, 65, .12), inset 0 1px 0 rgba(255, 255, 255, .78);
  -webkit-backdrop-filter: blur(26px) saturate(1.16);
  backdrop-filter: blur(26px) saturate(1.16);
}
.login-mark img { border: 1px solid rgba(255, 255, 255, .7); }
.login-mark b, .login-form-wrap h1 { color: #06213c; text-shadow: 0 1px 0 rgba(255, 255, 255, .42); }
.login-mark small, .login-intro, .auth-back-link { color: #597185; }
.login-feedback { color: #526d82; border-color: rgba(71, 116, 147, .18); }
.login-feedback:hover, .auth-back-link:hover { color: #082743; }

.feedback-body { color: #082743; }
.feedback-brand { color: #fff; text-shadow: 0 2px 12px rgba(6, 31, 57, .4); }
.feedback-brand small, .feedback-privacy { color: rgba(242, 249, 252, .78); }
.form-container, .feedback-success {
  color: #082743;
  background: rgba(245, 250, 253, .7);
  border-color: rgba(255, 255, 255, .74);
  box-shadow: 0 24px 64px rgba(7, 37, 65, .2), inset 0 1px 0 rgba(255, 255, 255, .75);
  -webkit-backdrop-filter: blur(24px) saturate(1.15);
  backdrop-filter: blur(24px) saturate(1.15);
}
.feedback-form-container header h1, .feedback-success h1, .feedback-types b { color: #082743; }
.feedback-form-container header p, .feedback-form-container header small, .form-container .form-group label span,
.feedback-types small, .feedback-success > p:first-of-type, .feedback-success > p:last-of-type { color: #657d8e; }
.feedback-types span, .feedback-inspection-context, .evidence-link-guide {
  background: rgba(255, 255, 255, .45);
  border-color: rgba(73, 119, 151, .2);
}
.feedback-types input:checked + span { background: rgba(219, 239, 248, .76); border-color: #2c8fbe; }
.feedback-inspection-context span, .feedback-inspection-context small { color: #657d8e; }
.feedback-inspection-context b { color: #082743; }
.evidence-link-guide { color: #547083; }
.evidence-link-guide b { color: #173d59; }
.evidence-link-guide p { color: #647e90; }
.form-container .form-submit-btn { color: #fff; }
.feedback-success > span { color: #fff; background: #0a2949; }

.shared-body, .tracking-body { background: #eaf4f8 url("/assets/brand/glass-ocean-bg.jpg") center / cover fixed no-repeat; }
.shared-hero, .tracking-hero, .standard-sheet-heading, .record-lock-card, .ticket-inspection-link,
.rules-command-head, .rule-matrix-card > header, .workbench-command-strip, .admin-authority-notice,
.announcement-admin-heading, .account-analytics-heading, .upgrade-command, .upgrade-detail-hero,
.upgrade-decision-form > header, .official-receipt, .admin-official-receipt {
  background: rgba(7, 37, 65, .92);
  border-color: rgba(255, 255, 255, .18);
  box-shadow: 0 12px 30px rgba(7, 37, 65, .16), inset 0 1px 0 rgba(255, 255, 255, .12);
  -webkit-backdrop-filter: blur(18px) saturate(1.12);
  backdrop-filter: blur(18px) saturate(1.12);
}
.shared-hero p, .shared-latest small, .tracking-hero p, .tracking-countdown small { color: #b6d0df; }
.shared-hero > div:first-child > span, .tracking-hero .ticket-phase { background: rgba(255, 255, 255, .1); border-color: rgba(255, 255, 255, .16); }
.tracking-step > span { color: #376d8e; background: rgba(221, 242, 252, .72); }

.workbench-command-strip article { border-color: rgba(255, 255, 255, .14); }
.workbench-command-strip span { color: #c0d7e3; }
.workbench-archive-bar { color: #587183; }
.workbench-module-tabs { border-color: rgba(85, 126, 156, .16); }
.workbench-module-tab { color: #567184; border-color: rgba(85, 126, 156, .14); }
.workbench-module-tab:hover { color: #123d59; background: rgba(255, 255, 255, .38); }
.workbench-module-tab.is-active { color: #082743; background: rgba(220, 239, 248, .66); }
.workbench-module-tab.is-active::after, .workbench-module-tab.is-active b { background: #236b94; }
.workbench-stage-bar > nav a { color: #5c7688; background: rgba(226, 239, 246, .58); }
.workbench-stage-bar > nav a.is-active { color: #103a56; background: rgba(205, 231, 243, .78); border-color: rgba(64, 126, 163, .3); }
.workbench-stage-bar form { background: rgba(255, 255, 255, .48); border-color: rgba(255, 255, 255, .7); box-shadow: inset 0 1px 0 rgba(255, 255, 255, .68); }
.workbench-item[open] > summary { background: rgba(215, 235, 245, .54); border-color: rgba(85, 126, 156, .16); }
.workbench-item-stage { color: #315c74; background: rgba(221, 239, 247, .78); border-color: rgba(49, 92, 116, .18); }
.workbench-item-stage--overdue, .workbench-item-stage--blocked, .workbench-blocked-notice { color: #963a3f; background: rgba(255, 229, 231, .82); border-color: rgba(166, 55, 60, .18); }
.workbench-item-stage--finalize { color: #8a5b0d; background: rgba(255, 244, 211, .82); border-color: rgba(148, 97, 15, .18); }
.workbench-item-stage--waiting { color: #526b7b; background: rgba(232, 240, 244, .78); border-color: rgba(82, 107, 123, .16); }
.workbench-pagination, .audit-pagination { color: #60798b; background: rgba(225, 239, 246, .5); border-color: rgba(85, 126, 156, .15); }

.rules-announcement-bar, .rules-announcement-dialog { color: #163b57; }
.rules-announcement-mark { color: #fff; background: #0a2949; }
.rules-announcement-dialog::backdrop { background: rgba(6, 31, 57, .5); -webkit-backdrop-filter: blur(5px); backdrop-filter: blur(5px); }
.rules-announcement-document-head, .rules-announcement-copy, .rules-announcement-item, .announcement-admin-item { border-color: rgba(85, 126, 156, .16); }
.rule-matrix-card, .rule-formula-row, .service-matrix-verdicts, .rule-decision-grid { background: rgba(247, 252, 254, .66); border-color: rgba(85, 126, 156, .15); }
.rules-update-button { color: #d6e6ee; background: rgba(255, 255, 255, .1); border-color: rgba(255, 255, 255, .16); }
.update-popover header { background: rgba(225, 239, 246, .58); border-color: rgba(85, 126, 156, .15); }

:where(a, button, input, select, textarea, summary):focus-visible {
  outline: 3px solid rgba(41, 139, 191, .3);
  outline-offset: 3px;
}

@supports not ((-webkit-backdrop-filter: blur(1px)) or (backdrop-filter: blur(1px))) {
  .top-banner, .topbar, .brand, .nav-stack, .global-search input, .evidence-link, .period-control, .month-control,
  .page-tabs, .account-tabs, .rank-segment, .rank-tabs, .auth-switch, .panel, .metric-card, .cycle-band,
  .record-insights article, .month-card, .level-stat-card, .processing-card, .processing-list,
  .record-processing-card, .ticket-counts article, .ticket-hero, .shared-brand, .shared-history,
  .shared-feedback-card, .tracking-brand, .tracking-subject, .tracking-rail, .tracking-expired-receipt,
  .settings-card, .rules-card, .rule-notes article, .standard-index, .standard-sheet, .upgrade-detail-person,
  .upgrade-form-section, .upgrade-player-card, .upgrade-decision-receipt, .upgrade-decision-form,
  .audit-filter-panel, .audit-ledger, .workbench-list, .workbench-filter-panel, .workbench-archive-bar,
  .rules-announcement-bar, .rules-announcement-dialog, .announcement-admin, .update-popover,
  .login-form-wrap, .form-container, .feedback-success, .sidebar { background-color: #f4fafc; }
  .shared-hero, .tracking-hero, .standard-sheet-heading, .record-lock-card, .ticket-inspection-link,
  .rules-command-head, .rule-matrix-card > header, .workbench-command-strip, .admin-authority-notice,
  .announcement-admin-heading, .account-analytics-heading, .upgrade-command, .upgrade-detail-hero,
  .upgrade-decision-form > header, .official-receipt, .admin-official-receipt { background-color: #0a2949; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    scroll-behavior: auto !important;
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
  }
}

@media (max-width: 48rem) {
  body, .login-body, .login-shell, .feedback-body, .shared-body, .tracking-body { background-attachment: scroll; }
}

/* 流程收口后的最终视觉覆盖：待办分类、终局回执与快速录分 */

/* AnimatedForm 参考实现：公开登录与修改密码入口 */
.auth-reference-body,
.auth-reference-shell {
  min-block-size: 100vh;
  color: #171717;
  background: #fff;
  background-image: none;
}
.auth-reference-panel {
  min-block-size: 100vh;
  padding: 1.5rem;
  background: transparent;
}
.auth-reference {
  position: relative;
  inline-size: 100%;
  max-inline-size: 340px;
  padding-block-end: 50px;
}
.auth-club-switch {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 4px;
  margin-block-end: 8px;
  padding: 4px;
  color: #466072;
  background: #f3f7f9;
  border: 1px solid #dde7ec;
  border-radius: 10px;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .9);
}
.auth-club-switch > * {
  display: grid;
  gap: 2px;
  min-inline-size: 0;
  min-block-size: 44px;
  padding: 7px 9px;
  color: inherit;
  border: 1px solid transparent;
  border-radius: 7px;
  font: 680 12px/1.1 "Segoe UI Variable", "Segoe UI", sans-serif;
  text-decoration: none;
  box-sizing: border-box;
}
.auth-club-switch small {
  color: #738793;
  font-size: 9px;
  font-weight: 580;
  letter-spacing: .08em;
}
.auth-club-switch .is-current {
  color: #fff;
  background: #173b56;
  border-color: #173b56;
  box-shadow: 0 4px 12px rgba(23, 59, 86, .18);
}
.auth-club-switch .is-current small { color: rgba(255, 255, 255, .72); }
.auth-club-switch a:hover { color: #173b56; background: #fff; border-color: #bfd0d9; }
.auth-club-switch a:focus-visible { outline: 2px solid #173b56; outline-offset: 2px; }
.auth-club-switch .is-unavailable { cursor: not-allowed; opacity: .56; }
html[data-club="xingqiu"] .auth-club-switch .is-current {
  background: #b84f2d;
  border-color: #b84f2d;
  box-shadow: 0 4px 12px rgba(184, 79, 45, .2);
}
html[data-club="xingqiu"] .auth-club-switch a:hover { color: #8f3a20; border-color: #dfaa97; }
html[data-club="xingqiu"] .auth-club-switch a:focus-visible { outline-color: #b84f2d; }
[data-animated-auth-card] {
  inline-size: min(100%, 340px);
  max-inline-size: 340px;
  border-radius: 12px;
}
[data-animated-auth-card] :focus-visible {
  outline: 2px solid #171717;
  outline-offset: 3px;
}
.auth-reference-frame {
  inline-size: 100%;
  padding: 6px;
  background: #fff;
  border: 1px solid rgba(229, 229, 229, .8);
  border-radius: 12px;
  box-sizing: border-box;
}
.auth-reference-inner {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 4px;
  overflow: hidden;
  background: #fff;
  border: 1px solid #e5e5e5;
  border-radius: 8px;
}
[data-auth-inner] { border: 1px solid #e5e5e5; }
.auth-reference-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-block-size: 43px;
  padding: 12px 12px 8px;
  color: transparent;
  background: linear-gradient(90deg, #404040, #d4d4d4);
  -webkit-background-clip: text;
  background-clip: text;
  border-block-end: 1px solid #e5e5e5;
}
.auth-reference-heading h1 {
  margin: 0;
  color: inherit;
  font: 500 14px/16px "Segoe UI Variable", "Segoe UI", sans-serif;
  letter-spacing: .035em;
}
[data-auth-title] { border-block-end: 1px solid transparent; }
.auth-reference-heading a {
  color: #737373;
  font-size: 11px;
  font-weight: 550;
  line-height: 1;
  text-decoration: none;
  background: #fff;
}
.auth-reference-heading a:hover { color: #171717; }
.auth-reference-form { display: grid; gap: 8px; padding: 8px; }
.auth-input-list { display: grid; gap: 8px; }
.auth-input-row,
.auth-submit-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-block-size: 37.6px;
  padding: 8px;
  background: linear-gradient(90deg, #fafafa, #f5f5f5);
  border: 1px solid #e5e5e5;
  border-radius: 6px;
  box-sizing: border-box;
}
.auth-input-row:focus-within {
  background: linear-gradient(90deg, #fff, #fafafa);
  border-color: #b5b5b5;
  box-shadow: 0 0 0 3px rgba(23, 23, 23, .07);
}
.auth-input-row input {
  inline-size: calc(100% - 25px);
  min-inline-size: 0;
  min-block-size: 20px;
  padding: 0;
  color: #262626;
  font: 350 12px/20px "Segoe UI Variable", "Segoe UI", sans-serif;
  letter-spacing: .01em;
  background: transparent;
  border: 0;
  outline: 0;
}
[data-auth-input-row]:focus-within { box-shadow: 0 0 0 3px rgba(23, 23, 23, .07); }
.auth-input-row input::placeholder { color: #737373; opacity: 1; }
.auth-input-row input:-webkit-autofill,
.auth-input-row input:-webkit-autofill:hover,
.auth-input-row input:-webkit-autofill:focus {
  -webkit-text-fill-color: #262626;
  box-shadow: 0 0 0 1000px #f7f7f7 inset;
}
.auth-checkmark {
  display: grid;
  flex: 0 0 20px;
  place-items: center;
  inline-size: 20px;
  block-size: 20px;
  opacity: 0;
  transform: scale(.72);
  transition: opacity .18s ease, transform .18s ease;
}
[data-auth-check] { color: #22c55e; }
.auth-checkmark svg { inline-size: 20px; block-size: 20px; overflow: visible; }
.auth-checkmark circle { fill: #22c55e; stroke: #22c55e; stroke-width: 2; stroke-dasharray: 44; stroke-dashoffset: 44; transition: stroke-dashoffset .42s ease; }
.auth-checkmark path { fill: none; stroke: #fff; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; stroke-dasharray: 12; stroke-dashoffset: 12; transition: stroke-dashoffset .17s ease .31s; }
.auth-input-row.is-valid .auth-checkmark { opacity: 1; transform: scale(1); }
.auth-input-row.is-valid .auth-checkmark circle { stroke-dashoffset: 0; }
.auth-input-row.is-valid .auth-checkmark path { stroke-dashoffset: 0; }
.auth-reference--pulse .auth-input-row.is-valid [data-auth-check] {
  animation: auth-check-replay .52s ease both;
}
@keyframes auth-check-replay {
  0% { opacity: 0; transform: scale(.72); }
  55% { opacity: 1; transform: scale(1.05); }
  100% { opacity: 1; transform: scale(1); }
}
.auth-submit-row {
  inline-size: 100%;
  color: #404040;
  cursor: pointer;
  opacity: .4;
  text-align: start;
  transition: opacity .18s ease, border-color .18s ease, background .18s ease;
}
.auth-submit-row:hover,
.auth-submit-row:focus-visible {
  color: #171717;
  opacity: .9;
  background: linear-gradient(90deg, #fff, #f5f5f5);
  border-color: #a3a3a3;
}
.auth-submit-row span { font: 500 12px/20px "Segoe UI Variable", "Segoe UI", sans-serif; }
.auth-submit-arrow { color: #737373; font-size: 16px !important; }
.auth-reference-error,
.auth-reference-message {
  display: flex;
  align-items: flex-start;
  gap: 6px;
  margin: 0;
  padding: 7px 8px;
  border: 1px solid #fecaca;
  border-radius: 6px;
  color: #991b1b;
  background: #fff7f7;
  font-size: 11px;
  line-height: 1.4;
}
.auth-reference-message { color: #166534; background: #f0fdf4; border-color: #bbf7d0; }
.auth-reference-error .icon,
.auth-reference-message .icon { flex: 0 0 14px; inline-size: 14px; block-size: 14px; margin-block-start: 1px; }
.auth-reference-mask {
  position: absolute;
  z-index: 1;
  inset-inline: 0;
  inset-block-end: 0;
  block-size: 40px;
  pointer-events: none;
  background: linear-gradient(to top, #fff 60%, transparent 100%);
}
[data-auth-bottom-mask] { pointer-events: none; }
.auth-reference-mask::before,
.auth-reference-mask::after {
  position: absolute;
  inset-block-end: 0;
  inline-size: 12px;
  block-size: 100px;
  content: "";
  background: linear-gradient(to top, #fff 60%, transparent 100%);
}
.auth-reference-mask::before { inset-inline-start: 0; }
.auth-reference-mask::after { inset-inline-end: 0; }
.auth-source-row {
  position: absolute;
  z-index: 2;
  inset-inline: 0;
  inset-block-end: 0;
  display: flex;
  align-items: center;
  justify-content: space-around;
  block-size: 50px;
  padding-inline: 24px;
  pointer-events: none;
}
.auth-source-icon {
  display: grid;
  place-items: center;
  inline-size: 40px;
  block-size: 40px;
  padding: 8px;
  background: linear-gradient(to bottom, #d4d4d4, #f5f5f5);
  border-radius: 999px;
  box-sizing: border-box;
}
.auth-source-icon svg,
.auth-source-icon img { display: block; inline-size: 24px; block-size: 24px; object-fit: contain; }
.auth-source-icon--logo img { border-radius: 50%; }
.auth-brand-signature {
  justify-content: center;
  gap: 10px;
  padding-inline: 16px;
}
.auth-brand-signature .auth-source-icon {
  flex: 0 0 36px;
  inline-size: 36px;
  block-size: 36px;
  padding: 3px;
  overflow: hidden;
  background: rgba(239, 247, 252, .88);
  border: 1px solid rgba(106, 160, 191, .22);
  box-shadow: 0 5px 16px rgba(19, 76, 111, .12), inset 0 1px 0 rgba(255, 255, 255, .9);
}
.auth-brand-signature .auth-source-icon img {
  inline-size: 100%;
  block-size: 100%;
  border-radius: 50%;
}
.auth-brand-signature b {
  color: #173b56;
  font: 650 13px/1 "Segoe UI Variable", "Segoe UI", sans-serif;
  letter-spacing: .045em;
  text-shadow: 0 1px 0 rgba(255, 255, 255, .8);
}

/* 无图片品牌的兜底环境章；正常部署的 PERO 与猩球均使用各自正式 Logo。 */
.brand-monogram {
  display: inline-grid;
  place-items: center;
  inline-size: 2.1rem;
  block-size: 2.1rem;
  overflow: hidden;
  color: #fff;
  background: linear-gradient(145deg, #d9774f, #8f351d);
  border: 1px solid rgba(255, 255, 255, .42);
  border-radius: .5rem;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .3);
  font: 800 .88rem/1 "Microsoft YaHei UI", "PingFang SC", sans-serif;
  letter-spacing: 0;
  box-sizing: border-box;
}
.brand-image.brand-monogram,
.avatar.brand-monogram { inline-size: 2rem; block-size: 2rem; border-radius: 50%; }
.auth-source-icon > .brand-monogram { inline-size: 100%; block-size: 100%; border-radius: 50%; }
.shared-brand > .brand-monogram,
.tracking-brand > .brand-monogram,
.feedback-brand > .brand-monogram,
.pass-certificate-brand > .brand-monogram,
.retest-review-brand > .brand-monogram { flex: 0 0 auto; inline-size: 2.15rem; block-size: 2.15rem; }
.appeal-status-brand a > .brand-monogram { flex: 0 0 auto; inline-size: 2rem; block-size: 2rem; border-radius: .34rem; }
html[data-club="xingqiu"] .brand b,
html[data-club="xingqiu"] .auth-brand-signature b { color: #8f351d; }
html[data-club="xingqiu"] .brand-image,
html[data-club="xingqiu"] .avatar > img,
html[data-club="xingqiu"] .shared-brand > img,
html[data-club="xingqiu"] .tracking-brand > img,
html[data-club="xingqiu"] .feedback-brand > img,
html[data-club="xingqiu"] .pass-certificate-brand > img,
html[data-club="xingqiu"] .retest-review-brand > img,
html[data-club="xingqiu"] .appeal-status-brand img {
  object-fit: contain;
  object-position: center;
  background: #fff;
  border-radius: .4rem;
}
html[data-club="xingqiu"] .avatar { background: #fff; border-radius: .45rem; }
html[data-club="xingqiu"] .auth-brand-signature .auth-source-icon {
  background: #fff;
  border-radius: .45rem;
}
html[data-club="xingqiu"] .auth-brand-signature .auth-source-icon img {
  object-fit: contain;
  border-radius: .28rem;
}
.auth-input-row--account input {
  flex: 1 1 auto;
  inline-size: auto;
}
.auth-account-state {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  gap: 4px;
  min-inline-size: 0;
  color: #5c7180;
  font: 600 10px/1 "Segoe UI Variable", "Segoe UI", sans-serif;
  white-space: nowrap;
  transition: color .18s ease, opacity .18s ease;
}
.auth-account-state[data-state="idle"] {
  visibility: hidden;
  opacity: 0;
}
.auth-account-state-icon {
  position: relative;
  display: grid;
  flex: 0 0 20px;
  place-items: center;
  inline-size: 20px;
  block-size: 20px;
}
.auth-account-state .auth-checkmark { position: absolute; inset: 0; }
.auth-account-state[data-state="exists"] { color: #15803d; }
.auth-account-state[data-state="missing"] { color: #b44a54; }
.auth-account-state[data-state="retry"] { color: #9a6a15; }
.auth-account-state[data-state="checking"] .auth-account-state-icon::before {
  inline-size: 11px;
  block-size: 11px;
  content: "";
  border: 1.5px solid rgba(42, 116, 157, .25);
  border-block-start-color: #2a749d;
  border-radius: 50%;
  animation: auth-account-spin .72s linear infinite;
}
.auth-account-state[data-state="missing"] .auth-account-state-icon::before {
  display: grid;
  place-items: center;
  inline-size: 16px;
  block-size: 16px;
  color: #fff;
  content: "×";
  background: #c75a63;
  border-radius: 50%;
  font: 700 12px/15px "Segoe UI", sans-serif;
}
.auth-account-state[data-state="retry"] .auth-account-state-icon::before {
  content: "·";
  color: #9a6a15;
  font-size: 22px;
  line-height: 1;
}
@keyframes auth-account-spin { to { transform: rotate(360deg); } }

/* 账号输入采用短距离冰蓝光圈，避免浏览器焦点形成整条黑色矩形。 */
[data-animated-auth-card] .auth-input-row input:focus,
[data-animated-auth-card] .auth-input-row input:focus-visible {
  outline: 0;
  box-shadow: none;
}
[data-animated-auth-card] .auth-input-row:focus-within,
[data-auth-input-row]:focus-within {
  background: linear-gradient(90deg, rgba(255, 255, 255, .98), rgba(242, 249, 253, .96));
  border-color: rgba(76, 159, 204, .66);
  box-shadow: 0 0 0 3px rgba(93, 181, 226, .14), 0 5px 14px rgba(31, 100, 138, .06);
}
.auth-input-row.is-missing { border-color: rgba(199, 90, 99, .34); }
.auth-input-row.is-valid { border-color: rgba(34, 197, 94, .26); }
.sr-only { position: absolute; inline-size: 1px; block-size: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
@media (max-width: 30rem) {
  .auth-reference-panel { padding-inline: 1rem; }
  .auth-source-row { padding-inline: 18px; }
  .auth-brand-signature { gap: 8px; padding-inline: 12px; }
  .auth-account-state { font-size: 9px; }
  [data-animated-auth-card] { inline-size: 100%; max-inline-size: 100%; }
}
@media (prefers-reduced-motion: reduce) {
  [data-auth-check], [data-animated-auth-card] { transition-duration: .01ms !important; animation-duration: .01ms !important; }
  [data-auth-check] circle, [data-auth-check] path { transition-duration: .01ms !important; }
}
.workbench-command-strip--simple { grid-template-columns: repeat(5, minmax(0, 1fr)); }
.workbench-command-strip--simple .workbench-command-total { background: rgba(119, 44, 53, .22); }
.workbench-command-strip--simple .workbench-command-total b { color: #ffe8e8; }
.appeal-receipt-track--simple > ol { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .8rem; padding: .8rem 1rem; }
.appeal-receipt-track--simple > ol > li { padding: .8rem; background: rgba(239, 247, 250, .66); border: 1px solid rgba(108, 149, 171, .25); border-radius: .55rem; }
.appeal-receipt-track--simple > ol > li::after { display: none; }
.appeal-receipt-track--simple > footer { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.admin-official-receipt[data-final-receipt] { gap: 1rem; padding: 1rem; }
.admin-official-receipt[data-final-receipt] .official-receipt-seal { inline-size: 5rem; block-size: 5rem; font-size: 1rem; }
.admin-official-receipt[data-final-receipt] header b { font-size: 1.1rem; }
.admin-official-receipt[data-final-receipt] p { font-size: .94rem; line-height: 1.75; }

@media (max-width: 64rem) {
  .workbench-command-strip--simple { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 42rem) {
  .workbench-command-strip--simple, .appeal-receipt-track--simple > ol, .appeal-receipt-track--simple > footer { grid-template-columns: 1fr; }
  .dock-code-evidence { grid-template-columns: 1fr; max-inline-size: 100%; }
  .dock-code-evidence .reserved-code-button b { overflow-wrap: anywhere; }
}

/* 保密名册：像封存档案一样清楚但不可操作，仅公开姓名和本月质检时间。 */
.confidential-roster-panel {
  position: relative;
  margin-block: 1rem 1.15rem;
  overflow: hidden;
  border: 1px solid rgba(92, 151, 182, .26);
  border-radius: 1rem;
  background:
    radial-gradient(circle at 88% -20%, rgba(89, 176, 221, .16), transparent 34%),
    linear-gradient(145deg, rgba(255, 255, 255, .94), rgba(241, 248, 251, .86));
  box-shadow: 0 15px 42px rgba(19, 69, 96, .08), inset 0 1px 0 rgba(255, 255, 255, .92);
  isolation: isolate;
}
.confidential-roster-panel::after {
  position: absolute;
  z-index: -1;
  inset-inline-end: 1.2rem;
  inset-block-start: 3.2rem;
  color: rgba(35, 91, 124, .035);
  content: "CONFIDENTIAL";
  font: 800 clamp(2.4rem, 7vw, 6.5rem)/1 "Segoe UI Variable", sans-serif;
  letter-spacing: .12em;
  pointer-events: none;
  transform: rotate(-5deg);
}
.confidential-roster-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 1.15rem 1.25rem .9rem;
}
.confidential-roster-title { display: flex; min-inline-size: 0; align-items: center; gap: .85rem; }
.confidential-roster-title h2 { margin: 0; color: #123b54; font-size: 1.05rem; letter-spacing: -.02em; }
.confidential-roster-title p { margin: .25rem 0 0; color: #657b88; font-size: .7rem; line-height: 1.5; }
.confidential-roster-lock {
  display: grid;
  flex: 0 0 3.45rem;
  place-items: center;
  inline-size: 3.45rem;
  block-size: 3.45rem;
  color: #eaf7ff;
  background: linear-gradient(145deg, #103c57, #286f98);
  border: 1px solid rgba(255, 255, 255, .25);
  border-radius: .85rem;
  box-shadow: 0 .55rem 1.3rem rgba(22, 79, 112, .18), inset 0 1px 0 rgba(255, 255, 255, .2);
}
.confidential-roster-lock .icon { inline-size: 1.25rem; block-size: 1.25rem; }
.confidential-roster-lock b { font-size: .55rem; letter-spacing: .12em; }
.confidential-roster-tools { display: flex; flex: 0 1 22rem; align-items: center; justify-content: flex-end; gap: .65rem; }
.confidential-roster-tools output {
  flex: 0 0 auto;
  color: #315d76;
  font-size: .68rem;
  font-weight: 750;
  white-space: nowrap;
}
.confidential-roster-search { position: relative; flex: 1 1 14rem; max-inline-size: 18rem; }
.confidential-roster-search .icon {
  position: absolute;
  inset-inline-start: .8rem;
  inset-block-start: 50%;
  inline-size: .85rem;
  transform: translateY(-50%);
  color: #6d8797;
  pointer-events: none;
}
.confidential-roster-search input {
  inline-size: 100%;
  min-block-size: 2.5rem;
  padding: .55rem .8rem .55rem 2.15rem;
  color: #153d56;
  background: rgba(255, 255, 255, .72);
  border: 1px solid rgba(102, 153, 181, .3);
  border-radius: .7rem;
  font: 650 .7rem/1 "Segoe UI Variable", sans-serif;
}
.confidential-roster-search input:focus-visible {
  outline: 3px solid rgba(79, 164, 211, .18);
  border-color: rgba(49, 130, 175, .65);
}
.confidential-roster-notice {
  display: flex;
  align-items: center;
  gap: .45rem;
  padding: .55rem 1.25rem;
  color: #4d6c7e;
  background: rgba(220, 238, 246, .42);
  border-block: 1px solid rgba(110, 160, 185, .16);
  font-size: .68rem;
}
.confidential-roster-notice .icon { inline-size: .8rem; }
.confidential-roster-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0;
  max-block-size: 28rem;
  padding: 0;
  margin: 0;
  overflow: auto;
  list-style: none;
}
.confidential-roster-item {
  display: flex;
  min-inline-size: 0;
  align-items: center;
  gap: .65rem;
  padding: .85rem 1rem;
  border-inline-end: 1px solid rgba(113, 160, 184, .14);
  border-block-end: 1px solid rgba(113, 160, 184, .14);
}
.confidential-roster-item[hidden] { display: none; }
.confidential-roster-avatar, .confidential-roster-avatar .avatar { flex: 0 0 1.8rem; inline-size: 1.8rem; block-size: 1.8rem; }
.confidential-roster-person { display: grid; min-inline-size: 0; gap: .15rem; }
.confidential-roster-person b { overflow: hidden; color: #143c55; font-size: .76rem; text-overflow: ellipsis; white-space: nowrap; }
.confidential-roster-person time { color: #718691; font-size: .68rem; line-height: 1.4; }
.confidential-roster-grid[hidden] { display: none; }
.confidential-roster-empty { display: grid; min-block-size: 9rem; place-content: center; place-items: center; gap: .5rem; color: #6b8390; }
.confidential-roster-empty[hidden] { display: none; }
.confidential-roster-empty .icon { inline-size: 1.15rem; }
.confidential-duplicate-status {
  display: flex;
  align-items: center;
  margin-block-start: .42rem;
  padding: .48rem .62rem;
  color: #9b3f49;
  background: rgba(255, 235, 237, .82);
  border: 1px solid rgba(190, 76, 88, .24);
  border-radius: .55rem;
  font-size: .63rem;
  font-weight: 700;
  line-height: 1.45;
}
.confidential-duplicate-status[hidden] { display: none; }
.field input[aria-invalid="true"] { border-color: rgba(190, 76, 88, .55); box-shadow: 0 0 0 3px rgba(190, 76, 88, .09); }

@media (max-width: 70rem) {
  .confidential-roster-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 52rem) {
  .confidential-roster-heading { align-items: flex-start; flex-direction: column; }
  .confidential-roster-tools { inline-size: 100%; max-inline-size: 100%; }
  .confidential-roster-search { max-inline-size: none; }
  .confidential-roster-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 34rem) {
  .confidential-roster-heading { padding: 1rem; }
  .confidential-roster-title { align-items: flex-start; }
  .confidential-roster-title p { max-inline-size: 22rem; }
  .confidential-roster-lock { flex-basis: 2.9rem; inline-size: 2.9rem; block-size: 2.9rem; }
  .confidential-roster-tools { align-items: stretch; flex-direction: column; }
  .confidential-roster-tools output { align-self: flex-end; }
  .confidential-roster-search { flex-basis: auto; inline-size: 100%; }
  .confidential-roster-grid { grid-template-columns: 1fr; max-block-size: 25rem; }
  .confidential-roster-item { border-inline-end: 0; }
  .confidential-roster-notice { align-items: flex-start; padding-inline: 1rem; line-height: 1.45; }
}

/* 性能层：重复卡片、表单和抽屉不再各自建立高成本模糊层。
   顶部导航、登录卡、固定裁决条和对话框继续作为玻璃视觉锚点。 */
body:not(.login-body) { background-attachment: scroll; }
.panel, .metric-card, .cycle-band, .record-insights article, .month-card, .level-stat-card, .processing-card,
.processing-list, .record-processing-card, .ticket-counts article, .ticket-hero, .shared-brand, .shared-history,
.shared-feedback-card, .tracking-brand, .tracking-subject, .tracking-rail, .tracking-expired-receipt,
.settings-card, .rules-card, .rule-notes article, .standard-index, .standard-sheet, .upgrade-detail-person,
.upgrade-form-section, .upgrade-player-card, .upgrade-decision-receipt, .upgrade-decision-form,
.audit-filter-panel, .audit-ledger, .workbench-list, .workbench-filter-panel, .workbench-archive-bar,
.rules-announcement-bar, .announcement-admin, .update-popover,
.cycle-band, .overview-context, .account-note, .filter-bar, .record-filter-panel,
.processing-drawer, .workbench-item-drawer, .audit-ledger-drawer, .level-rank-workspace,
input, select, textarea, .stack-form input, .form-container .form-group input, .form-container .form-group textarea {
  -webkit-backdrop-filter: none;
  backdrop-filter: none;
}
.panel, .metric-card, .cycle-band, .record-insights article, .month-card, .level-stat-card, .processing-card,
.processing-list, .record-processing-card, .ticket-counts article, .ticket-hero, .shared-brand, .shared-history,
.shared-feedback-card, .tracking-brand, .tracking-subject, .tracking-rail, .tracking-expired-receipt,
.settings-card, .rules-card, .rule-notes article, .standard-index, .standard-sheet, .upgrade-detail-person,
.upgrade-form-section, .upgrade-player-card, .upgrade-decision-receipt, .upgrade-decision-form,
.audit-filter-panel, .audit-ledger, .workbench-list, .workbench-filter-panel, .workbench-archive-bar,
.rules-announcement-bar, .announcement-admin, .update-popover { background-color: rgba(248, 252, 254, .94); }
.cycle-band, .overview-context, .account-note, .filter-bar, .record-filter-panel,
.processing-drawer, .workbench-item-drawer, .audit-ledger-drawer, .level-rank-workspace { background-color: rgba(235, 246, 251, .94); }
input, select, textarea, .stack-form input, .form-container .form-group input, .form-container .form-group textarea { background-color: rgba(255, 255, 255, .92); }

/* 长列表只在接近可视区时完成子树绘制，减轻首屏和滚动主线程压力。 */
.workbench-item, .processing-row, .audit-ledger-row, .shared-record, .confidential-roster-item {
  content-visibility: auto;
  contain-intrinsic-block-size: auto 5rem;
}

@media (max-width: 64rem) {
  .sidebar, .score-dock, .top-banner, .nav-scrim, .upgrade-form-actions {
    -webkit-backdrop-filter: none;
    backdrop-filter: none;
  }
  .sidebar { background-color: rgba(244, 250, 253, .97); }
  .score-dock, .upgrade-form-actions { background-color: rgba(248, 252, 254, .98); }
}

/* 48 小时聊天通行证：两席分立、同室沟通，所有打开动作保留后台上下文。 */
.share-room-panel { gap: .78rem; }
.share-seat-stack { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.share-seat-stack > :only-child { grid-column: 1 / -1; }
.share-seat-control { gap: .62rem; padding: .78rem; background: linear-gradient(145deg, rgba(255,255,255,.9), rgba(238,248,252,.72)); border-color: rgba(73,133,160,.26); box-shadow: 0 .55rem 1.4rem rgba(15,74,103,.07), inset 0 1px rgba(255,255,255,.96); }
.share-seat-control > header { grid-template-columns: auto minmax(0, 1fr) auto; gap: .55rem; }
.share-seat-control > header > span { padding: .24rem .46rem; font-size: .56rem; }
.share-seat-control > header > div { display: grid; min-inline-size: 0; }
.share-seat-control > header b { font-size: .76rem; }
.share-seat-control > header small { margin: .05rem 0 0; font-size: .55rem; }
.share-seat-control > header em { display: inline-flex; align-items: center; gap: .25rem; color: #547986; font-size: .51rem; font-style: normal; font-weight: 700; white-space: nowrap; }
.share-seat-control > header em .icon { inline-size: .7rem; }
.share-seat-expiry { display: flex; align-items: center; justify-content: space-between; gap: .45rem; padding: .45rem .52rem; color: #1f6079; background: rgba(213,238,247,.62); border-radius: .42rem; }
.share-seat-expiry > span { font: 760 .59rem/1.3 "Bahnschrift", sans-serif; }
.share-seat-expiry > small { margin: 0; color: #6d8791; font-size: .49rem; text-align: end; }
.share-seat-expiry.is-urgent { color: #9a581f; background: rgba(255,241,210,.78); }
.share-seat-expiry.is-expired { color: #9a3439; background: rgba(255,229,232,.76); }
.share-seat-actions { display: grid !important; grid-template-columns: minmax(0, 1fr) auto auto; gap: .38rem; }
.share-seat-actions input { block-size: 2.35rem; min-block-size: 2.35rem; padding-inline: .62rem; color: #4f6c78; background: rgba(255,255,255,.78); }
.share-seat-actions .button { display: inline-flex; align-items: center; justify-content: center; gap: .28rem; min-block-size: 2.35rem; padding-inline: .62rem; white-space: nowrap; }
.share-seat-actions .icon { inline-size: .75rem; }
.share-open-link { text-decoration: none; }
.share-room-pending { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: .62rem; padding: .72rem; color: #496b79; background: rgba(255,255,255,.62); border: 1px dashed rgba(85,126,156,.28); border-radius: .55rem; }
.share-room-pending > .icon { inline-size: .9rem; }
.share-room-pending > span { display: grid; }
.share-room-pending b { font-size: .64rem; }
.share-room-pending small { color: #768d96; font-size: .52rem; }
.share-room-pending form { margin: 0; }
.chat-archive-link .icon:last-child, .chat-room-action .icon { transform: none; }

.feedback-reporter-line { display: inline-flex !important; align-items: center; gap: .28rem; width: fit-content; margin: 0 !important; padding: .2rem .4rem; color: #315d72 !important; background: rgba(222,241,248,.72); border-radius: 999px; font-size: .53rem !important; font-weight: 700; }
.feedback-reporter-line .icon { inline-size: .68rem; }
.feedback-reporter-line--partner, .feedback-reporter-badge--partner { color: #73552b !important; background: rgba(255,242,213,.78) !important; }
.feedback-reporter-badge { display: inline-flex; align-items: center; gap: .42rem; width: fit-content; padding: .38rem .52rem; color: #1d5269; background: rgba(219,239,247,.72); border: 1px solid rgba(71,130,157,.18); border-radius: .48rem; }
.feedback-reporter-badge > .icon { inline-size: .82rem; }
.feedback-reporter-badge > span { display: grid; }
.feedback-reporter-badge small { margin: 0; color: #6e8792; font-size: .48rem; }
.feedback-reporter-badge b { font-size: .61rem; }
.feedback-reporter-badge.is-compact { gap: .3rem; padding: .24rem .38rem; border-radius: .38rem; }
.feedback-reporter-badge.is-compact > .icon { inline-size: .68rem; }
.feedback-reporter-badge.is-compact > span { display: flex; align-items: center; gap: .28rem; }
.feedback-reporter-badge.is-compact small, .feedback-reporter-badge.is-compact b { font-size: .51rem; }
.tracking-reporter-source { display: inline-flex; align-items: center; gap: .3rem; width: fit-content; margin-block-start: .52rem; padding: .28rem .48rem; color: #d7eff8; background: rgba(255,255,255,.09); border: 1px solid rgba(255,255,255,.13); border-radius: 999px; font-size: .54rem; font-weight: 700; }
.tracking-reporter-source .icon { inline-size: .72rem; }
.shared-feedback-card > div > div > small { display: block; color: #9b4650; font-size: .64rem; font-weight: 760; letter-spacing: .08em; }

/* 详情侧栏只有 19.5rem：两席纵向排列，避免链接与按钮互相覆盖。 */
.record-side-rail .share-seat-stack { grid-template-columns: minmax(0, 1fr); }
.record-side-rail .share-seat-stack > :only-child { grid-column: auto; }
.record-side-rail .share-seat-actions { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.record-side-rail .share-seat-actions input { grid-column: 1 / -1; }
.record-side-rail .share-seat-actions .button { inline-size: 100%; }
.record-side-rail .share-seat-control > header > span { font-size: .64rem; }
.record-side-rail .share-seat-control > header b { font-size: .82rem; }
.record-side-rail .share-seat-control > header small,
.record-side-rail .share-seat-control > header em { font-size: .6rem; }
.record-side-rail .share-seat-expiry > span { font-size: .66rem; }
.record-side-rail .share-seat-expiry > small { font-size: .57rem; }

@media (max-width: 62rem) {
  .share-seat-stack { grid-template-columns: 1fr; }
  .share-seat-stack > :only-child { grid-column: auto; }
}

@media (max-width: 36rem) {
  .share-seat-control > header { grid-template-columns: auto minmax(0, 1fr); }
  .share-seat-control > header em { grid-column: 2; }
  .share-seat-expiry { align-items: flex-start; flex-direction: column; }
  .share-seat-expiry > small { text-align: start; }
  .share-seat-actions { grid-template-columns: 1fr 1fr; }
  .share-seat-actions input { grid-column: 1 / -1; }
  .share-room-pending { grid-template-columns: auto minmax(0, 1fr); }
  .share-room-pending form { grid-column: 1 / -1; }
  .share-room-pending .button { inline-size: 100%; }
}

/* 订单内嵌聊天室永久档案：一条紧凑审计轨道，不需跳到分散页面。 */
.embedded-chat-archive { inline-size: 100%; margin-block-start: 1rem; overflow: hidden; background: linear-gradient(155deg, rgba(248,252,254,.97), rgba(231,244,249,.91)); border: 1px solid rgba(67,119,146,.24); border-radius: .9rem; box-shadow: 0 .85rem 2rem rgba(12,57,82,.08), inset 0 1px rgba(255,255,255,.96); }
.embedded-chat-archive[data-deleted-inspection-tombstone] { border-color: rgba(153,69,73,.28); background: linear-gradient(155deg, rgba(252,248,248,.97), rgba(244,235,237,.92)); }
.embedded-chat-archive__heading { display: grid; grid-template-columns: auto minmax(0,1fr) auto; align-items: center; gap: .62rem; padding: .78rem .85rem; color: #fff; background: linear-gradient(135deg, #082c49, #17627b); }
.embedded-chat-archive[data-deleted-inspection-tombstone] .embedded-chat-archive__heading { background: linear-gradient(135deg, #49252b, #754049); }
.embedded-chat-archive__heading > span { display: grid; place-items: center; inline-size: 2.1rem; block-size: 2.1rem; color: #bce7f6; background: rgba(255,255,255,.09); border: 1px solid rgba(255,255,255,.13); border-radius: .5rem; }
.embedded-chat-archive__heading > span .icon { inline-size: .94rem; }
.embedded-chat-archive__heading > div { min-inline-size: 0; }
.embedded-chat-archive__heading small { display: block; color: #a7d0df; font-size: .72rem; letter-spacing: .1em; }
.embedded-chat-archive__heading h2 { margin: .12rem 0; font-size: 1.05rem; }
.embedded-chat-archive__heading p { overflow: hidden; margin: 0; color: #c6dee7; font-size: .76rem; text-overflow: ellipsis; white-space: nowrap; }
.embedded-chat-archive__heading > b { padding: .4rem .56rem; color: #d8f4fc; background: rgba(255,255,255,.09); border: 1px solid rgba(255,255,255,.12); border-radius: .44rem; font: 740 .74rem/1 "Bahnschrift",sans-serif; white-space: nowrap; }
.embedded-chat-status-row { display: grid; grid-template-columns: 1fr 1fr; gap: .48rem; padding: .65rem; }
.embedded-chat-status-row > span { display: grid; grid-template-columns: auto minmax(0,1fr); align-items: center; gap: .48rem; padding: .56rem; border: 1px solid rgba(70,124,150,.17); border-radius: .5rem; }
.embedded-chat-status-row > :only-child { grid-column: 1 / -1; }
.embedded-chat-status-row > span > .icon { inline-size: .84rem; }
.embedded-chat-status-row > span > span { display: grid; }
.embedded-chat-status-row b { font-size: .78rem; }
.embedded-chat-status-row small { color: #748a95; font-size: .72rem; }
.embedded-operation-state { color: #315d72; background: rgba(225,240,247,.72); }
.embedded-operation-state.is-deleted { color: #77464c; background: rgba(247,232,234,.74); }
.embedded-chat-participants { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .48rem; padding: 0 .65rem .65rem; }
.embedded-chat-participants > :only-child { grid-column: 1 / -1; }
.embedded-chat-participant { overflow: hidden; background: rgba(255,255,255,.72); border: 1px solid rgba(76,126,150,.16); border-radius: .5rem; }
.embedded-chat-participant > header { display: flex; align-items: center; gap: .38rem; padding: .48rem .55rem; border-block-end: 1px solid rgba(76,126,150,.13); }
.embedded-chat-participant > header span { padding: .2rem .38rem; color: #245d72; background: rgba(214,237,246,.78); border-radius: 999px; font-size: .72rem; font-weight: 760; }
.embedded-chat-participant--partner > header span { color: #765620; background: rgba(255,239,201,.8); }
.embedded-chat-participant > header b { overflow: hidden; color: #1d4659; font-size: .82rem; text-overflow: ellipsis; white-space: nowrap; }
.embedded-chat-participant dl { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); margin: 0; }
.embedded-chat-participant dl > div { display: grid; gap: .1rem; min-inline-size: 0; padding: .48rem .55rem; border-inline-end: 1px solid rgba(76,126,150,.11); }
.embedded-chat-participant dl > div:last-child { border-inline-end: 0; }
.embedded-chat-participant dt { color: #7b9099; font-size: .72rem; }
.embedded-chat-participant dd { overflow: hidden; margin: 0; color: #345b6b; font-size: .76rem; font-weight: 690; text-overflow: ellipsis; white-space: nowrap; }
.embedded-chat-participant code { font: 650 .72rem/1.3 "Bahnschrift",sans-serif; }
.embedded-chat-operations { margin-inline: .65rem; overflow: hidden; background: rgba(255,255,255,.58); border: 1px solid rgba(70,122,147,.16); border-radius: .52rem; }
.embedded-chat-operations summary { display: grid; grid-template-columns: 1fr auto auto; align-items: center; gap: .48rem; padding: .58rem .62rem; list-style: none; cursor: pointer; }
.embedded-chat-operations summary::-webkit-details-marker { display: none; }
.embedded-chat-operations summary > span { display: grid; }
.embedded-chat-operations summary small { color: #8398a1; font-size: .72rem; letter-spacing: .1em; }
.embedded-chat-operations summary b { color: #2a5365; font-size: .8rem; }
.embedded-chat-operations summary em { color: #6c838e; font-size: .72rem; font-style: normal; }
.embedded-chat-operations summary > .icon { inline-size: .68rem; color: #82949c; transform: rotate(90deg); }
.embedded-chat-operations[open] summary > .icon { transform: rotate(-90deg); }
.embedded-chat-operations ol { display: grid; margin: 0; padding: 0; border-block-start: 1px solid rgba(70,122,147,.13); list-style: none; }
.embedded-chat-thread { margin: .65rem; overflow: hidden; background: rgba(247,251,253,.78); border: 1px solid rgba(70,122,147,.18); border-radius: .58rem; }
.embedded-chat-thread > header { display: flex; align-items: center; justify-content: space-between; gap: .6rem; padding: .58rem .65rem; background: rgba(220,239,247,.58); border-block-end: 1px solid rgba(70,122,147,.14); }
.embedded-chat-thread > header > span { display: grid; }
.embedded-chat-thread > header small { color: #7b929c; font-size: .72rem; letter-spacing: .1em; }
.embedded-chat-thread > header b { color: #245064; font-size: .82rem; }
.embedded-chat-thread > header a { display: inline-flex; align-items: center; gap: .25rem; color: #27657e; font-size: .72rem; font-weight: 720; text-decoration: none; }
.embedded-chat-thread > header a .icon { inline-size: .65rem; }
.embedded-chat-thread .chat-timeline { max-block-size: 25rem; padding: .68rem; }
.embedded-chat-thread .chat-message { grid-template-columns: 5rem minmax(0,1fr); gap: .55rem; }
.embedded-chat-thread .chat-message-seat { font-size: .72rem; }
.embedded-chat-thread .chat-message article { max-inline-size: min(50rem, 92%); padding: .62rem .72rem; }
.embedded-chat-thread .chat-message article header b { font-size: .78rem; }
.embedded-chat-thread .chat-message article time { font-size: .72rem; }
.embedded-chat-thread .chat-message article p { font-size: .82rem; line-height: 1.65; }
.embedded-chat-thread .chat-empty b { font-size: .78rem; }
.embedded-chat-thread .chat-empty small { font-size: .72rem; }
.embedded-chat-thread .chat-composer { padding: .65rem; }
.embedded-chat-readonly { display: grid; grid-template-columns: auto minmax(0,1fr); align-items: center; gap: .5rem; padding: .62rem .68rem; color: #5b737e; background: rgba(225,236,241,.72); border-block-start: 1px solid rgba(70,122,147,.13); }
.embedded-chat-readonly > .icon { inline-size: .82rem; }
.embedded-chat-readonly > span { display: grid; }
.embedded-chat-readonly b { font-size: .78rem; }
.embedded-chat-readonly small { color: #82949c; font-size: .72rem; }
.embedded-chat-operations { margin-block-end: .65rem; }
.embedded-chat-operations li { position: relative; display: grid; grid-template-columns: auto minmax(0,1fr); gap: .48rem; padding: .5rem .62rem; }
.embedded-chat-operations li > i { inline-size: .48rem; block-size: .48rem; margin-block-start: .22rem; background: #4e8ca5; border: 2px solid #d9ebf2; border-radius: 50%; }
.embedded-chat-operations li > div { min-inline-size: 0; }
.embedded-chat-operations li header { display: flex; justify-content: space-between; gap: .5rem; }
.embedded-chat-operations li b { color: #315a6c; font-size: .78rem; }
.embedded-chat-operations li time, .embedded-chat-operations li small { color: #8699a1; font-size: .72rem; }
.embedded-chat-operations li p { margin: .18rem 0 0; color: #607985; font-size: .74rem; line-height: 1.55; }

@media (max-width: 48rem) {
  .embedded-chat-status-row, .embedded-chat-participants { grid-template-columns: 1fr; }
  .embedded-chat-participants > :only-child { grid-column: auto; }
  .embedded-chat-participant dl { grid-template-columns: 1fr 1fr; }
  .embedded-chat-participant dl > div:nth-child(2) { border-inline-end: 0; }
  .embedded-chat-participant dl > div:nth-child(3) { grid-column: 1 / -1; border-block-start: 1px solid rgba(76,126,150,.11); }
}

@media (max-width: 24.5rem) {
  .embedded-chat-archive__heading { grid-template-columns: auto minmax(0,1fr); }
  .embedded-chat-archive__heading > b { grid-column: 2; justify-self: start; }
  .embedded-chat-thread > header { align-items: flex-start; flex-direction: column; }
  .embedded-chat-thread .chat-message { grid-template-columns: 1fr; }
  .embedded-chat-thread .chat-message-seat { padding-block-start: 0; text-align: start; }
}

/* 席位身份封签：先确认、后聊天，双人链接各自只能提交本席。 */
.participant-identity-card { margin-block-end: .9rem; overflow: hidden; background: linear-gradient(148deg, rgba(248,252,254,.98), rgba(228,243,249,.93)); border: 1px solid rgba(58,121,151,.28); border-radius: .9rem; box-shadow: 0 .9rem 2.3rem rgba(11,57,82,.09), inset 0 1px rgba(255,255,255,.98); outline: none; }
.participant-identity-card > header { position: relative; display: grid; grid-template-columns: auto minmax(0,1fr) auto; align-items: center; gap: .72rem; padding: .85rem .9rem; color: #fff; background: linear-gradient(135deg, #092d49, #176780); }
.participant-identity-card > header::after { position: absolute; inset: auto 0 0; block-size: 1px; content: ''; background: linear-gradient(90deg, transparent, rgba(190,239,250,.72), transparent); }
.participant-identity-card > header > span { display: grid; place-items: center; inline-size: 2.35rem; block-size: 2.35rem; color: #bcebf8; background: rgba(255,255,255,.09); border: 1px solid rgba(255,255,255,.14); border-radius: .56rem; }
.participant-identity-card > header > span .icon { inline-size: 1rem; }
.participant-identity-card > header > div { min-inline-size: 0; }
.participant-identity-card > header small { color: #a9d2df; font-size: .72rem; letter-spacing: .1em; }
.participant-identity-card > header h2 { margin: .08rem 0; font-size: 1rem; }
.participant-identity-card > header p { margin: 0; color: #c3e0e9; font-size: .74rem; line-height: 1.5; }
.participant-identity-card > header > b { padding: .34rem .5rem; color: #d8f5fc; background: rgba(255,255,255,.09); border: 1px solid rgba(255,255,255,.13); border-radius: 999px; font-size: .72rem; white-space: nowrap; }
.participant-identity-card.is-saved { border-color: rgba(49,132,102,.3); }
.participant-identity-card.is-saved > header { background: linear-gradient(135deg, #123d3b, #21735f); }
.participant-identity-card.is-reopened { border-color: rgba(172,122,39,.36); }
.participant-identity-card.is-reopened > header { background: linear-gradient(135deg, #493817, #836323); }
.participant-identity-rule { display: grid; grid-template-columns: auto minmax(0,1fr) auto; align-items: center; gap: .62rem; padding: .72rem .82rem; color: #315c70; background: rgba(218,239,247,.62); border-block-end: 1px solid rgba(62,122,149,.14); }
.participant-identity-rule > .icon { inline-size: .92rem; }
.participant-identity-rule > span { display: grid; gap: .1rem; }
.participant-identity-rule > span b { font-size: .78rem; }
.participant-identity-rule > span small { color: #6a838e; font-size: .72rem; line-height: 1.5; }
.participant-identity-rule > em { display: grid; justify-items: end; padding-inline-start: .7rem; border-inline-start: 1px solid rgba(60,116,143,.18); font-style: normal; white-space: nowrap; }
.participant-identity-rule > em small { color: #78909a; font-size: .72rem; }
.participant-identity-rule > em b { color: #15556d; font: 780 .95rem/1.3 "Bahnschrift",sans-serif; }
.participant-identity-form { display: grid; gap: .7rem; padding: .82rem; }
.participant-identity-form[hidden], .participant-identity-summary[hidden], [data-identity-dependent-chat][hidden] { display: none !important; }
.participant-identity-form > aside { display: grid; grid-template-columns: auto minmax(0,1fr); gap: .5rem; padding: .62rem; color: #73551f; background: rgba(255,244,211,.76); border: 1px solid rgba(170,123,39,.2); border-radius: .5rem; }
.participant-identity-form > aside .icon { inline-size: .9rem; }
.participant-identity-form > aside span { display: grid; gap: .08rem; }
.participant-identity-form > aside b { font-size: .78rem; }
.participant-identity-form > aside small { color: #876f42; font-size: .72rem; }
.participant-identity-fields { display: grid; grid-template-columns: minmax(0,1.3fr) minmax(13rem,.7fr); gap: .62rem; }
.participant-identity-fields label { display: grid; gap: .3rem; min-inline-size: 0; color: #315769; font-size: .75rem; font-weight: 730; }
.participant-identity-fields input, .participant-identity-fields select { inline-size: 100%; min-block-size: 2.75rem; padding: .62rem .7rem; color: #183d50; background: rgba(255,255,255,.9); border: 1px solid rgba(68,125,151,.28); border-radius: .5rem; font: inherit; font-size: .82rem; font-weight: 680; line-height: 1.2; }
.participant-identity-fields input:focus-visible, .participant-identity-fields select:focus-visible { outline: 3px solid rgba(41,132,169,.18); outline-offset: 1px; border-color: #2b7898; }
.participant-identity-form > footer { display: grid; grid-template-columns: minmax(0,1fr) auto auto; align-items: center; gap: .62rem; }
.participant-identity-form > footer > span { display: flex; align-items: center; gap: .34rem; color: #6d848e; }
.participant-identity-form > footer > span .icon { flex: 0 0 auto; inline-size: .82rem; }
.participant-identity-form > footer small { font-size: .72rem; }
.participant-identity-form output { min-inline-size: 5rem; color: #667f8a; font-size: .74rem; font-weight: 720; text-align: end; }
.participant-identity-form output.is-success { color: #18755a; }
.participant-identity-form output.is-error { color: #a2363c; }
.participant-identity-form[aria-busy="true"] .participant-identity-fields { opacity: .7; }
.participant-identity-summary { padding: .82rem; }
.participant-identity-summary dl { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); margin: 0; overflow: hidden; background: rgba(255,255,255,.68); border: 1px solid rgba(66,123,148,.16); border-radius: .55rem; }
.participant-identity-summary dl > div { display: grid; gap: .12rem; min-inline-size: 0; padding: .68rem; border-inline-end: 1px solid rgba(66,123,148,.13); }
.participant-identity-summary dl > div:last-child { border-inline-end: 0; }
.participant-identity-summary dt { color: #748b95; font-size: .72rem; }
.participant-identity-summary dd { overflow: hidden; margin: 0; color: #215165; font-size: .84rem; font-weight: 760; text-overflow: ellipsis; white-space: nowrap; }
.participant-identity-summary > p { display: flex; align-items: center; gap: .4rem; margin: .58rem 0 0; color: #3d7160; font-size: .72rem; }
.participant-identity-summary > p .icon { inline-size: .8rem; }
.chat-identity-gate { display: grid; grid-template-columns: auto minmax(0,1fr); align-items: center; gap: .55rem; padding: .78rem .9rem; color: #745820; background: rgba(255,247,221,.78); border-block-start: 1px solid rgba(166,125,42,.18); }
.chat-identity-gate > .icon { inline-size: .92rem; }
.chat-identity-gate > span { display: grid; gap: .08rem; }
.chat-identity-gate b { font-size: .78rem; }
.chat-identity-gate small { color: #86744d; font-size: .72rem; }

.embedded-participant-identity { margin: .48rem; overflow: hidden; background: rgba(234,245,249,.72); border: 1px solid rgba(66,123,148,.15); border-radius: .48rem; }
.embedded-participant-identity > header { display: flex; align-items: center; justify-content: space-between; gap: .45rem; padding: .48rem .52rem; border-block-end: 1px solid rgba(66,123,148,.12); }
.embedded-participant-identity > header > span { display: grid; }
.embedded-participant-identity > header small { color: #7c929c; font-size: .72rem; letter-spacing: .08em; }
.embedded-participant-identity > header b { color: #2c596b; font-size: .78rem; }
.embedded-participant-identity > header em { padding: .22rem .38rem; color: #73591f; background: rgba(255,239,196,.8); border-radius: 999px; font-size: .72rem; font-style: normal; font-weight: 730; }
.embedded-participant-identity.is-saved > header em { color: #266650; background: rgba(218,241,232,.85); }
.embedded-participant-identity.is-revision_requested > header em { color: #8a353a; background: rgba(255,230,232,.84); }
.embedded-chat-participant .embedded-participant-identity > dl { grid-template-columns: repeat(3,minmax(0,1fr)); }
.embedded-chat-participant .embedded-participant-identity > dl > div { padding: .48rem .52rem; }
.embedded-participant-identity > p { display: grid; grid-template-columns: auto minmax(0,1fr); gap: .42rem; margin: 0; padding: .52rem; color: #7c5b20; background: rgba(255,244,211,.65); border-block-start: 1px solid rgba(170,123,39,.15); }
.embedded-participant-identity > p .icon { inline-size: .8rem; }
.embedded-participant-identity > p span { display: grid; gap: .08rem; }
.embedded-participant-identity > p b { font-size: .76rem; }
.embedded-participant-identity > p small { color: #8b7447; font-size: .72rem; line-height: 1.45; }
.participant-identity-reopen-form { display: grid; grid-template-columns: minmax(0,1fr) auto auto; align-items: center; gap: .45rem; padding: .5rem .52rem; background: rgba(255,255,255,.58); border-block-start: 1px solid rgba(66,123,148,.12); }
.participant-identity-reopen-form > span { color: #667f8a; font-size: .72rem; }
.participant-identity-reopen-form output { color: #607c88; font-size: .72rem; }
.participant-identity-reopen-form output.is-success { color: #1b7358; }
.participant-identity-reopen-form output.is-error { color: #a1383e; }
.participant-identity-reopen-form .button { min-block-size: 2.35rem; padding: .45rem .58rem; font-size: .72rem; }

@media (max-width: 48rem) {
  .participant-identity-rule { grid-template-columns: auto minmax(0,1fr); }
  .participant-identity-rule > em { grid-column: 2; justify-items: start; padding: .45rem 0 0; border-inline-start: 0; border-block-start: 1px solid rgba(60,116,143,.15); white-space: normal; }
  .participant-identity-fields { grid-template-columns: 1fr; }
  .participant-identity-form > footer { grid-template-columns: 1fr; align-items: stretch; }
  .participant-identity-form output { text-align: start; }
  .participant-identity-form > footer .button { inline-size: 100%; min-block-size: 2.75rem; }
  .participant-identity-reopen-form { grid-template-columns: 1fr; align-items: stretch; }
  .participant-identity-reopen-form .button { inline-size: 100%; }
}

@media (max-width: 24.5rem) {
  .participant-identity-card > header { grid-template-columns: auto minmax(0,1fr); }
  .participant-identity-card > header > b { grid-column: 2; justify-self: start; }
  .participant-identity-summary dl { grid-template-columns: 1fr; }
  .participant-identity-summary dl > div { border-inline-end: 0; border-block-end: 1px solid rgba(66,123,148,.13); }
  .participant-identity-summary dl > div:last-child { border-block-end: 0; }
  .embedded-chat-participant .embedded-participant-identity > dl { grid-template-columns: 1fr; }
  .embedded-chat-participant .embedded-participant-identity > dl > div { border-inline-end: 0; border-block-end: 1px solid rgba(76,126,150,.11); }
}

/* 客服质检通过证明：独立只读核验卡，绿色核验章是唯一视觉强调。 */
.pass-certificate-panel { overflow: hidden; background: linear-gradient(148deg, rgba(248,253,253,.98), rgba(228,244,241,.91)); border: 1px solid rgba(47,127,101,.25); border-radius: .76rem; box-shadow: 0 .75rem 1.8rem rgba(15,75,66,.07), inset 0 1px rgba(255,255,255,.96); }
.pass-certificate-panel > header { display: grid; grid-template-columns: auto minmax(0,1fr) auto; align-items: center; gap: .62rem; padding: .75rem; color: #fff; background: linear-gradient(135deg, #123f3c, #237760); }
.pass-certificate-panel__seal { display: grid; place-items: center; inline-size: 2.45rem; block-size: 2.45rem; color: #e4fff5; background: rgba(255,255,255,.1); border: 1px solid rgba(255,255,255,.22); border-radius: 50%; font: 800 .65rem/1 "Bahnschrift", sans-serif; letter-spacing: .04em; box-shadow: inset 0 0 0 3px rgba(255,255,255,.06); }
.pass-certificate-panel__seal small { font-size: .38rem; letter-spacing: .1em; }
.pass-certificate-panel > header > div { min-inline-size: 0; }
.pass-certificate-panel > header > div > small { color: #aee4d2; font-size: .55rem; letter-spacing: .09em; }
.pass-certificate-panel > header h2 { margin: .08rem 0; font-size: .85rem; }
.pass-certificate-panel > header p { margin: 0; color: #c9e9de; font-size: .57rem; line-height: 1.45; }
.pass-certificate-panel > header > em { display: inline-flex; align-items: center; gap: .22rem; padding: .28rem .42rem; color: #dffaf1; background: rgba(255,255,255,.09); border: 1px solid rgba(255,255,255,.14); border-radius: 999px; font-size: .55rem; font-style: normal; font-weight: 760; white-space: nowrap; }
.pass-certificate-panel > header > em .icon { inline-size: .66rem; }
.pass-certificate-panel__meta { display: grid; grid-template-columns: 1fr 1fr; border-block-end: 1px solid rgba(49,123,101,.13); }
.pass-certificate-panel__meta > span { display: grid; gap: .1rem; min-inline-size: 0; padding: .62rem .7rem; border-inline-end: 1px solid rgba(49,123,101,.12); }
.pass-certificate-panel__meta > span:last-child { border-inline-end: 0; }
.pass-certificate-panel__meta small { color: #718b83; font-size: .5rem; }
.pass-certificate-panel__meta b { overflow: hidden; color: #285e50; font: 750 .66rem/1.35 "Bahnschrift", sans-serif; text-overflow: ellipsis; white-space: nowrap; }
.pass-certificate-actions { display: grid; grid-template-columns: 1fr 1fr; gap: .42rem; margin: 0; padding: .68rem; }
.pass-certificate-actions input { grid-column: 1 / -1; min-inline-size: 0; inline-size: 100%; color: #315c51; background: rgba(255,255,255,.78); border-color: rgba(55,126,105,.2); font: 620 .58rem/1.3 "Bahnschrift", sans-serif; }
.pass-certificate-actions .button { display: inline-flex; align-items: center; justify-content: center; gap: .28rem; min-block-size: 2.35rem; padding: .5rem; font-size: .58rem; text-decoration: none; white-space: nowrap; }
.pass-certificate-actions .icon { inline-size: .72rem; }
.pass-certificate-panel > footer { display: grid; grid-template-columns: auto minmax(0,1fr); align-items: center; gap: .45rem; padding: .58rem .68rem; color: #3c685c; background: rgba(214,239,231,.6); border-block-start: 1px solid rgba(49,123,101,.11); }
.pass-certificate-panel > footer > .icon { inline-size: .8rem; }
.pass-certificate-panel > footer > span { display: grid; gap: .06rem; }
.pass-certificate-panel > footer b { font-size: .58rem; }
.pass-certificate-panel > footer small { color: #718980; font-size: .5rem; line-height: 1.45; }
.pass-certificate-panel--status { border-color: rgba(91,124,139,.26); background: linear-gradient(148deg, rgba(249,252,253,.98), rgba(234,243,247,.92)); }
.pass-certificate-panel--status > header { background: linear-gradient(135deg, #17384b, #32677b); }
.pass-certificate-panel--status.is-expired { border-color: rgba(161,116,45,.3); background: linear-gradient(148deg, rgba(255,252,247,.98), rgba(248,239,220,.92)); }
.pass-certificate-panel--status.is-expired > header { background: linear-gradient(135deg, #57431f, #9a702e); }
.pass-certificate-panel--status.is-invalid { border-color: rgba(164,69,75,.3); background: linear-gradient(148deg, rgba(255,249,249,.98), rgba(247,231,233,.92)); }
.pass-certificate-panel--status.is-invalid > header { background: linear-gradient(135deg, #512b32, #923f49); }
.pass-certificate-status { display: grid; grid-template-columns: auto minmax(0,1fr); align-items: center; gap: .62rem; padding: .76rem; }
.pass-certificate-status__icon { display: grid; place-items: center; inline-size: 2.25rem; block-size: 2.25rem; color: #2f687c; background: rgba(211,231,239,.72); border: 1px solid rgba(59,112,133,.17); border-radius: .62rem; }
.is-expired .pass-certificate-status__icon { color: #8b6429; background: rgba(245,226,189,.72); border-color: rgba(151,105,37,.18); }
.is-invalid .pass-certificate-status__icon { color: #91434b; background: rgba(244,216,220,.72); border-color: rgba(151,59,68,.18); }
.pass-certificate-status__icon .icon { inline-size: .95rem; }
.pass-certificate-status > div { display: grid; gap: .08rem; min-inline-size: 0; }
.pass-certificate-status small { color: #778e98; font-size: .5rem; }
.pass-certificate-status h3 { margin: 0; color: #244f60; font-size: .72rem; }
.pass-certificate-status p { margin: .08rem 0 0; color: #617984; font-size: .56rem; line-height: 1.55; }
.pass-certificate-status time { margin-block-start: .18rem; color: #81949b; font-size: .5rem; }
.pass-certificate-status form { grid-column: 1 / -1; display: grid; margin-block-start: .08rem; }
.pass-certificate-status form .button { display: inline-flex; align-items: center; justify-content: center; gap: .32rem; min-block-size: 2.35rem; font-size: .59rem; }
.pass-certificate-status form .icon { inline-size: .72rem; }

.pass-certificate-body { min-block-size: 100vh; margin: 0; color: #153e43; background: radial-gradient(circle at 16% 8%, rgba(166,221,228,.36), transparent 30rem), radial-gradient(circle at 88% 88%, rgba(165,218,200,.28), transparent 28rem), linear-gradient(145deg, #f3fafb, #e8f3f5 52%, #edf7f3); font-family: "Microsoft YaHei UI", "PingFang SC", sans-serif; }
.pass-certificate-shell { inline-size: min(calc(100% - 2rem), 49rem); margin-inline: auto; padding-block: 1.15rem 2.6rem; }
.pass-certificate-brand { display: flex; align-items: center; gap: .62rem; margin-block-end: .8rem; padding: .66rem .76rem; background: rgba(255,255,255,.7); border: 1px solid rgba(59,116,130,.16); border-radius: .76rem; box-shadow: 0 .7rem 2rem rgba(19,74,83,.05); backdrop-filter: blur(18px) saturate(120%); }
.pass-certificate-brand img { inline-size: 2.1rem; block-size: 2.1rem; object-fit: cover; border-radius: .5rem; }
.pass-certificate-brand > span { display: grid; }
.pass-certificate-brand b { color: #173f49; font-size: .78rem; }
.pass-certificate-brand small { color: #71868c; font-size: .72rem; }
.pass-certificate-brand em { display: inline-flex; align-items: center; gap: .3rem; margin-inline-start: auto; color: #276a58; font-size: .72rem; font-style: normal; font-weight: 740; }
.pass-certificate-brand em .icon { inline-size: .78rem; }
.pass-certificate-card { position: relative; isolation: isolate; overflow: hidden; background: linear-gradient(148deg, rgba(255,255,255,.93), rgba(238,248,247,.86)); border: 1px solid rgba(47,112,117,.2); border-radius: 1.05rem; box-shadow: 0 1.4rem 4rem rgba(15,68,76,.12), inset 0 1px rgba(255,255,255,.98); backdrop-filter: blur(22px) saturate(118%); }
.pass-certificate-card::before { position: absolute; inset: .48rem; z-index: -1; border: 1px solid rgba(64,130,124,.1); border-radius: .76rem; pointer-events: none; content: ''; }
.pass-certificate-card__light { position: absolute; inset: -8rem auto auto -5rem; z-index: -2; inline-size: 24rem; block-size: 24rem; background: radial-gradient(circle, rgba(184,233,238,.42), transparent 67%); pointer-events: none; }
.pass-certificate-card > header { display: flex; align-items: flex-start; justify-content: space-between; gap: 1rem; padding: 1.5rem 1.55rem .6rem; }
.pass-certificate-card > header > div { display: grid; }
.pass-certificate-card > header > div small { color: #6f8e92; font: 690 .54rem/1.3 "Bahnschrift", sans-serif; letter-spacing: .18em; }
.pass-certificate-card > header p { margin: .18rem 0 0; color: #31545a; font-size: .72rem; font-weight: 680; }
.pass-certificate-seal { display: grid; place-items: center; grid-template-columns: 1fr auto; inline-size: 5.35rem; block-size: 5.35rem; color: #27705b; background: rgba(222,243,235,.58); border: 2px solid rgba(43,124,96,.5); border-radius: 50%; font: 850 .9rem/1 "Bahnschrift", sans-serif; letter-spacing: .07em; box-shadow: inset 0 0 0 4px rgba(255,255,255,.8), inset 0 0 0 5px rgba(43,124,96,.18), 0 .65rem 1.5rem rgba(31,105,81,.09); transform: rotate(4deg); }
.pass-certificate-seal > i { display: grid; place-items: center; inline-size: 1.25rem; block-size: 1.25rem; color: #fff; background: #2d8065; border-radius: 50%; }
.pass-certificate-seal .icon { inline-size: .73rem; }
.pass-certificate-seal small { grid-column: 1 / -1; margin-block-start: -.75rem; font-size: .42rem; letter-spacing: .17em; }
.pass-certificate-result { display: grid; grid-template-columns: auto minmax(0,1fr); align-items: center; gap: .9rem; margin: 0 1.55rem; padding: 1.1rem; color: #fff; background: linear-gradient(135deg, #123f3d, #23785f); border: 1px solid rgba(255,255,255,.1); border-radius: .8rem; box-shadow: 0 .8rem 2rem rgba(25,94,73,.15); }
.pass-certificate-result > span { display: grid; place-items: center; inline-size: 2.9rem; block-size: 2.9rem; color: #246b56; background: #e3f7ef; border-radius: 50%; box-shadow: 0 0 0 .3rem rgba(255,255,255,.08); }
.pass-certificate-result > span .icon { inline-size: 1.28rem; stroke-width: 2.4; }
.pass-certificate-result > div { min-inline-size: 0; }
.pass-certificate-result small { color: #afe0d0; font-size: .72rem; letter-spacing: .09em; }
.pass-certificate-result h1 { margin: .05rem 0; font-size: clamp(1.65rem, 5vw, 2.55rem); letter-spacing: -.04em; }
.pass-certificate-result p { margin: 0; color: #d0eae1; font-size: .72rem; line-height: 1.55; }
.pass-certificate-code { display: grid; grid-template-columns: 1fr auto; align-items: end; gap: .16rem 1rem; margin: 1rem 1.55rem 0; padding: .78rem .9rem; background: rgba(224,240,242,.55); border: 1px solid rgba(58,116,126,.14); border-radius: .65rem; }
.pass-certificate-code small { color: #748d91; font-size: .72rem; }
.pass-certificate-code strong { grid-column: 1; color: #174a53; font: 800 1rem/1.2 "Bahnschrift", sans-serif; letter-spacing: .04em; overflow-wrap: anywhere; }
.pass-certificate-code span { display: inline-flex; grid-column: 2; grid-row: 1 / 3; align-items: center; align-self: center; gap: .28rem; color: #2b6c5a; font-size: .72rem; font-weight: 740; }
.pass-certificate-code .icon { inline-size: .75rem; }
.pass-certificate-participants { margin: .75rem 1.55rem 0; overflow: hidden; background: rgba(255,255,255,.58); border: 1px solid rgba(54,112,120,.14); border-radius: .65rem; }
.pass-certificate-participants > header { display: flex; align-items: center; justify-content: space-between; gap: .8rem; padding: .68rem .78rem; background: rgba(220,239,240,.48); border-block-end: 1px solid rgba(54,112,120,.12); }
.pass-certificate-participants > header > div { display: grid; }
.pass-certificate-participants > header small { color: #789195; font: 680 .48rem/1.2 "Bahnschrift", sans-serif; letter-spacing: .15em; }
.pass-certificate-participants > header h2 { margin: .08rem 0 0; color: #28525a; font-size: .78rem; }
.pass-certificate-participants > header em { padding: .24rem .42rem; color: #2c6c5b; background: rgba(213,239,230,.7); border-radius: 999px; font-size: .72rem; font-style: normal; font-weight: 760; }
.pass-certificate-person { display: grid; grid-template-columns: 5rem minmax(0,.9fr) minmax(0,1.15fr) minmax(4rem,.5fr) auto; align-items: center; gap: .68rem; padding: .78rem; border-block-end: 1px solid rgba(54,112,120,.1); }
.pass-certificate-person:last-child { border-block-end: 0; }
.pass-certificate-person > span { display: inline-flex; align-items: center; gap: .38rem; color: #39717a; font-size: .72rem; font-weight: 760; }
.pass-certificate-person > span i { inline-size: .4rem; block-size: .4rem; background: #2c8367; border-radius: 50%; box-shadow: 0 0 0 .18rem rgba(44,131,103,.1); }
.pass-certificate-person--partner > span i { background: #5787b1; box-shadow: 0 0 0 .18rem rgba(87,135,177,.1); }
.pass-certificate-person__seat > span { display: grid; gap: .14rem; }
.pass-certificate-person .pass-certificate-person__source { inline-size: max-content; padding: .16rem .32rem; color: #2e705d; background: rgba(215,239,231,.72); border: 1px solid rgba(49,124,100,.13); border-radius: 999px; font-size: .72rem; font-weight: 720; line-height: 1.2; }
.pass-certificate-person[data-certificate-identity-source="order_snapshot"] .pass-certificate-person__source { color: #617a86; background: rgba(226,237,242,.82); border-color: rgba(72,119,139,.14); }
.pass-certificate-person > div { display: grid; gap: .1rem; min-inline-size: 0; }
.pass-certificate-person small { color: #7a9195; font-size: .72rem; }
.pass-certificate-person b, .pass-certificate-person strong { overflow: hidden; color: #234d54; font-size: .72rem; text-overflow: ellipsis; white-space: nowrap; }
.pass-certificate-person > .icon { inline-size: .88rem; color: #2d7b63; stroke-width: 2.25; }
.pass-certificate-performance { margin: .75rem 1.55rem 0; overflow: hidden; background: linear-gradient(148deg, rgba(248,253,253,.94), rgba(229,243,243,.86)); border: 1px solid rgba(37,103,119,.22); border-radius: .78rem; box-shadow: 0 .8rem 2rem rgba(19,74,86,.07), inset 0 1px rgba(255,255,255,.96); }
.pass-certificate-performance > header { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: .82rem .88rem; background: linear-gradient(142deg, rgba(218,239,244,.93), rgba(220,242,234,.78)); border-block-end: 1px solid rgba(44,105,119,.14); }
.pass-certificate-performance > header > div { display: grid; min-inline-size: 0; }
.pass-certificate-performance > header small { color: #67858e; font: 700 .68rem/1.2 "Bahnschrift", sans-serif; letter-spacing: .15em; }
.pass-certificate-performance > header h2 { margin: .08rem 0; color: #174754; font-size: 1rem; }
.pass-certificate-performance > header p { margin: 0; color: #5c777e; font-size: .72rem; line-height: 1.5; }
.pass-certificate-performance > header > span { display: inline-flex; flex: none; align-items: center; gap: .28rem; padding: .34rem .5rem; color: #286c5a; background: rgba(207,237,227,.82); border: 1px solid rgba(43,121,95,.16); border-radius: 999px; font-size: .72rem; font-weight: 770; white-space: nowrap; }
.pass-certificate-performance > header > span .icon { inline-size: .72rem; }
.pass-certificate-rounds { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .55rem; padding: .58rem; }
.pass-certificate-round { position: relative; min-inline-size: 0; overflow: hidden; background: rgba(255,255,255,.77); border: 1px solid rgba(42,102,116,.16); border-radius: .62rem; box-shadow: inset .18rem 0 #4a91a2; }
.pass-certificate-round:nth-child(2) { box-shadow: inset .18rem 0 #39856b; }
.pass-certificate-round::after { position: absolute; inset: .28rem .28rem auto auto; inline-size: 1.3rem; block-size: .45rem; opacity: .24; border-block: 1px dashed #3b7c89; content: ''; pointer-events: none; }
.pass-certificate-round > header { display: grid; grid-template-columns: auto minmax(0,1fr) auto; align-items: center; gap: .55rem; padding: .64rem .7rem; background: linear-gradient(128deg, rgba(227,241,244,.82), rgba(237,248,245,.62)); border-block-end: 1px dashed rgba(50,106,117,.22); }
.pass-certificate-round > header > span { display: grid; grid-template-columns: 1fr; place-items: center; inline-size: 2.35rem; block-size: 2.35rem; padding: .18rem; color: #1e6170; background: rgba(255,255,255,.72); border: 1px solid rgba(45,111,124,.2); outline: 1px dashed rgba(45,111,124,.2); outline-offset: -.22rem; border-radius: .48rem; }
.pass-certificate-round > header > span i { font: 850 .9rem/1 "Bahnschrift", sans-serif; font-style: normal; }
.pass-certificate-round > header > span small { font: 720 .48rem/1 "Bahnschrift", sans-serif; letter-spacing: .08em; }
.pass-certificate-round > header > div { min-inline-size: 0; }
.pass-certificate-round > header h3 { margin: 0; color: #23515b; font-size: .82rem; }
.pass-certificate-round > header p { margin: .12rem 0 0; color: #688087; font-size: .72rem; line-height: 1.4; }
.pass-certificate-round > header em { align-self: start; padding: .22rem .34rem; color: #4e737b; background: rgba(255,255,255,.58); border: 1px solid rgba(58,112,123,.12); border-radius: 999px; font-size: .72rem; font-style: normal; font-weight: 720; white-space: nowrap; }
.pass-certificate-round-shared { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); background: linear-gradient(130deg, #113c52, #176173 55%, #216d68); }
.pass-certificate-round-shared > div { display: grid; gap: .12rem; min-inline-size: 0; padding: .65rem .58rem; border-inline-end: 1px solid rgba(255,255,255,.12); }
.pass-certificate-round-shared > div:last-child { border-inline-end: 0; }
.pass-certificate-round-shared > div > small { color: #c2dce1; font-size: .72rem; }
.pass-certificate-round-shared > div > span { display: flex; align-items: baseline; gap: .25rem; min-inline-size: 0; }
.pass-certificate-round-shared b { color: #f7ffff; font: 840 1.22rem/1 "Bahnschrift", sans-serif; font-variant-numeric: tabular-nums; }
.pass-certificate-round-shared span small { color: #b6d1d5; font-size: .72rem; }
.pass-certificate-round-shared span[data-state="unknown"] { display: grid; gap: .12rem; }
.pass-certificate-round-shared span[data-state="unknown"] b { color: #aec2c6; }
.pass-certificate-round-kills { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .38rem; padding: .48rem; background: rgba(231,243,244,.56); border-block-end: 1px solid rgba(48,105,116,.1); }
.pass-certificate-round-kills[data-round-kill-columns="1"] { grid-template-columns: 1fr; }
.pass-certificate-round-kill { display: grid; gap: .15rem; min-inline-size: 0; padding: .5rem .55rem; background: rgba(255,255,255,.72); border: 1px solid rgba(45,112,99,.12); border-radius: .46rem; }
.pass-certificate-round-kill.is-partner { border-color: rgba(69,112,158,.14); }
.pass-certificate-round-kill > small { overflow-wrap: anywhere; color: #4d7770; font-size: .72rem; font-weight: 730; }
.pass-certificate-round-kill.is-partner > small { color: #506f8d; }
.pass-certificate-round-kill > span { display: flex; align-items: baseline; gap: .24rem; min-inline-size: 0; }
.pass-certificate-round-kill b { color: #205f4e; font: 840 1.12rem/1 "Bahnschrift", sans-serif; font-variant-numeric: tabular-nums; }
.pass-certificate-round-kill.is-partner b { color: #365f87; }
.pass-certificate-round-kill span small { color: #71878a; font-size: .72rem; }
.pass-certificate-round-kill span[data-state="unknown"] { display: grid; gap: .1rem; }
.pass-certificate-round-kill span[data-state="unknown"] b { color: #809296; }
.pass-certificate-round-score { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); }
.pass-certificate-round-score > div { display: grid; gap: .1rem; min-inline-size: 0; padding: .5rem .48rem; border-inline-end: 1px solid rgba(48,105,116,.1); }
.pass-certificate-round-score > div:last-child { border-inline-end: 0; }
.pass-certificate-round-score > div > small { color: #71868a; font-size: .72rem; }
.pass-certificate-round-score > div > span { display: flex; align-items: baseline; gap: .2rem; min-inline-size: 0; }
.pass-certificate-round-score b { color: #315f67; font: 820 .9rem/1 "Bahnschrift", sans-serif; font-variant-numeric: tabular-nums; }
.pass-certificate-round-score span small { color: #7a8e91; font-size: .72rem; }
.pass-certificate-round-score .is-total { background: rgba(214,239,230,.55); }
.pass-certificate-round-score .is-total b { color: #1d7057; }
.pass-certificate-round-score span[data-score-state="unknown"] { display: grid; gap: .08rem; }
.pass-certificate-technical-reconcile { margin: 0 .58rem .58rem; overflow: hidden; background: rgba(247,251,251,.82); border: 1px solid rgba(48,108,118,.15); border-radius: .58rem; }
.pass-certificate-technical-reconcile > header { display: flex; align-items: center; justify-content: space-between; gap: .75rem; padding: .56rem .65rem; background: rgba(220,239,240,.56); border-block-end: 1px solid rgba(48,108,118,.11); }
.pass-certificate-technical-reconcile > header > div { display: grid; }
.pass-certificate-technical-reconcile > header small { color: #66848b; font: 700 .61rem/1.2 "Bahnschrift", sans-serif; letter-spacing: .13em; }
.pass-certificate-technical-reconcile > header h3 { margin: .06rem 0 0; color: #28545c; font-size: .82rem; }
.pass-certificate-technical-reconcile > header em { display: inline-flex; align-items: center; gap: .25rem; padding: .27rem .4rem; color: #276d58; background: rgba(206,237,226,.84); border-radius: 999px; font-size: .72rem; font-style: normal; font-weight: 770; white-space: nowrap; }
.pass-certificate-technical-reconcile > header em .icon { inline-size: .7rem; }
.pass-certificate-technical-reconcile.is-unreconciled > header em { color: #825d27; background: rgba(246,231,195,.88); }
.pass-certificate-technical-reconcile > div { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); }
.pass-certificate-technical-reconcile > div > div { display: grid; gap: .12rem; min-inline-size: 0; padding: .58rem .6rem; border-inline-end: 1px solid rgba(48,108,118,.1); }
.pass-certificate-technical-reconcile > div > div:last-child { border-inline-end: 0; }
.pass-certificate-technical-reconcile > div > div > small { color: #6e858a; font-size: .72rem; }
.pass-certificate-technical-reconcile > div > div > span { display: flex; align-items: baseline; gap: .2rem; min-inline-size: 0; }
.pass-certificate-technical-reconcile > div b { color: #2c5961; font: 830 .96rem/1 "Bahnschrift", sans-serif; font-variant-numeric: tabular-nums; }
.pass-certificate-technical-reconcile > div span small { color: #7a8e91; font-size: .72rem; }
.pass-certificate-technical-reconcile > div .is-official { background: rgba(208,237,227,.58); }
.pass-certificate-technical-reconcile > div .is-official b { color: #1d7057; }
.pass-certificate-technical-reconcile > p { margin: 0; padding: .48rem .65rem; color: #607a7f; background: rgba(229,241,242,.44); border-block-start: 1px dashed rgba(48,108,118,.16); font-size: .72rem; line-height: 1.45; }
.pass-certificate-technical-reconcile.is-unreconciled > p { color: #795f35; background: rgba(248,240,220,.62); }
.pass-certificate-scoreboard { margin: .75rem 1.55rem 0; overflow: hidden; background: rgba(255,255,255,.62); border: 1px solid rgba(40,99,119,.2); border-radius: .72rem; box-shadow: 0 .7rem 1.8rem rgba(20,72,89,.07), inset 0 1px rgba(255,255,255,.9); }
.pass-certificate-scoreboard > header { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: .76rem .82rem; background: linear-gradient(145deg, rgba(231,244,247,.92), rgba(222,241,237,.74)); border-block-end: 1px solid rgba(47,106,123,.12); }
.pass-certificate-scoreboard > header > div { display: grid; min-inline-size: 0; }
.pass-certificate-scoreboard > header small { color: #688892; font: 700 .68rem/1.2 "Bahnschrift", sans-serif; letter-spacing: .14em; }
.pass-certificate-scoreboard > header h2 { margin: .08rem 0; color: #194856; font-size: .96rem; }
.pass-certificate-scoreboard > header p { margin: 0; color: #627e85; font-size: .72rem; line-height: 1.5; }
.pass-certificate-scoreboard > header > span { display: inline-flex; flex: none; align-items: center; gap: .25rem; padding: .32rem .48rem; color: #276d5a; background: rgba(213,239,231,.78); border: 1px solid rgba(47,124,99,.14); border-radius: 999px; font-size: .72rem; font-weight: 760; white-space: nowrap; }
.pass-certificate-scoreboard > header > span .icon { inline-size: .67rem; }
.pass-certificate-order-scores { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); color: #fff; background: linear-gradient(128deg, #0d334b, #155d70 56%, #1c6d64); }
.pass-certificate-order-score { position: relative; display: grid; align-content: center; gap: .08rem; min-inline-size: 0; min-block-size: 5.1rem; padding: .7rem .76rem; border-inline-end: 1px solid rgba(255,255,255,.12); font-variant-numeric: tabular-nums; }
.pass-certificate-order-score:last-child { border-inline-end: 0; }
.pass-certificate-order-score span { color: #c3e2e7; font-size: .72rem; }
.pass-certificate-order-score b { color: #f6ffff; font: 850 clamp(1.18rem,3.2vw,1.68rem)/1 "Bahnschrift", sans-serif; letter-spacing: -.03em; }
.pass-certificate-order-score small { color: #b9d6db; font-size: .72rem; line-height: 1.35; overflow-wrap: anywhere; }
.pass-certificate-order-score--total { background: linear-gradient(145deg, rgba(63,170,135,.27), rgba(28,107,100,.16)); }
.pass-certificate-order-score--total b { color: #dbfff2; }
.pass-certificate-order-score[data-score-state="unknown"] b { color: #b6c8cb; }
.pass-certificate-service-seal { display: grid; grid-template-columns: auto minmax(0,1fr); align-items: center; gap: .48rem; padding: .62rem .76rem; color: #375e65; background: linear-gradient(135deg, rgba(226,239,242,.92), rgba(218,236,232,.78)); border-block-start: 1px solid rgba(47,106,123,.13); }
.pass-certificate-service-seal > .icon { inline-size: .9rem; color: #316e60; }
.pass-certificate-service-seal > span { display: grid; gap: .06rem; }
.pass-certificate-service-seal b { font-size: .76rem; }
.pass-certificate-service-seal small { color: #687f84; font-size: .72rem; line-height: 1.4; }
.pass-certificate-ranking { margin: .75rem 1.55rem 0; overflow: hidden; background: linear-gradient(148deg, rgba(255,255,255,.86), rgba(238,247,247,.82)); border: 1px solid rgba(47,105,120,.18); border-radius: .72rem; box-shadow: 0 .72rem 1.8rem rgba(17,70,83,.06), inset 0 1px rgba(255,255,255,.92); }
.pass-certificate-ranking > header { display: flex; align-items: center; justify-content: space-between; gap: .85rem; padding: .78rem .84rem; background: linear-gradient(140deg, rgba(224,241,244,.86), rgba(219,240,232,.7)); border-block-end: 1px solid rgba(48,108,119,.12); }
.pass-certificate-ranking > header > div { display: grid; min-inline-size: 0; }
.pass-certificate-ranking > header small { color: #68868e; font: 700 .68rem/1.2 "Bahnschrift", sans-serif; letter-spacing: .14em; }
.pass-certificate-ranking > header h2 { margin: .08rem 0; color: #194b58; font-size: .96rem; }
.pass-certificate-ranking > header p { margin: 0; color: #627d83; font-size: .72rem; line-height: 1.45; }
.pass-certificate-ranking > header > span { display: inline-flex; flex: none; align-items: center; gap: .26rem; padding: .32rem .47rem; color: #2d6c5c; background: rgba(215,239,231,.76); border: 1px solid rgba(45,118,96,.13); border-radius: 999px; font-size: .72rem; font-weight: 750; white-space: nowrap; }
.pass-certificate-ranking > header > span .icon { inline-size: .65rem; }
.pass-certificate-ranking > ol { display: grid; gap: .28rem; margin: 0; padding: .48rem; list-style: none; counter-reset: certificate-rank; }
.pass-certificate-rank-row { position: relative; display: grid; grid-template-columns: 2.25rem minmax(0,1fr) auto; align-items: center; gap: .58rem; min-inline-size: 0; min-block-size: 2.65rem; padding: .38rem .55rem .38rem .38rem; background: rgba(255,255,255,.66); border: 1px solid rgba(55,111,123,.1); border-radius: .48rem; }
.pass-certificate-rank-row > span { display: grid; place-items: center; inline-size: 2rem; block-size: 2rem; color: #57757d; background: rgba(225,238,241,.8); border: 1px solid rgba(61,111,123,.1); border-radius: .42rem; font: 810 .78rem/1 "Bahnschrift", sans-serif; font-variant-numeric: tabular-nums; }
.pass-certificate-rank-row > b { min-inline-size: 0; overflow: hidden; color: #244f58; font-size: .82rem; text-overflow: ellipsis; white-space: nowrap; }
.pass-certificate-rank-row > small { padding: .22rem .38rem; color: #546f77; background: rgba(229,239,241,.76); border-radius: 999px; font-size: .72rem; white-space: nowrap; }
.pass-certificate-rank-row:nth-child(1) > span { color: #77561e; background: linear-gradient(145deg, #fff4ce, #ecd18b); border-color: rgba(148,107,35,.17); }
.pass-certificate-rank-row:nth-child(2) > span { color: #536870; background: linear-gradient(145deg, #f3f7f8, #d6e1e4); }
.pass-certificate-rank-row:nth-child(3) > span { color: #7a4d2e; background: linear-gradient(145deg, #f8e5d4, #e1ba97); }
.pass-certificate-rank-row.is-current { padding-inline-end: 3.25rem; background: linear-gradient(130deg, rgba(225,246,237,.96), rgba(241,250,247,.88)); border-color: rgba(40,128,97,.28); box-shadow: inset .18rem 0 #2f8a68; }
.pass-certificate-rank-row.is-current::after { position: absolute; inset-inline-end: .52rem; inset-block-start: 50%; padding: .2rem .34rem; color: #2b735d; background: rgba(203,235,224,.86); border-radius: 999px; font-size: .68rem; font-weight: 780; transform: translateY(-50%); content: '本单'; }
.pass-certificate-ranking-empty { display: grid; grid-template-columns: auto minmax(0,1fr); align-items: center; gap: .55rem; padding: .8rem; color: #5e7b82; background: rgba(240,247,247,.74); border-radius: .48rem; }
.pass-certificate-ranking-empty > span { display: grid; place-items: center; inline-size: 2rem; block-size: 2rem; color: #61808a; background: rgba(220,236,239,.8); border-radius: .45rem; }
.pass-certificate-ranking-empty .icon { inline-size: .78rem; }
.pass-certificate-ranking-empty > div { display: grid; gap: .08rem; }
.pass-certificate-ranking-empty b { font-size: .8rem; }
.pass-certificate-ranking-empty small { color: #6e898f; font-size: .72rem; }
.pass-certificate-current-ranks { display: grid; gap: .35rem; margin: 0 .48rem .48rem; padding-block-start: .42rem; border-block-start: 1px dashed rgba(50,111,120,.18); }
.pass-certificate-current-ranks > div { display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: center; gap: .08rem .65rem; padding: .55rem .62rem; background: rgba(217,241,233,.66); border: 1px solid rgba(42,124,96,.17); border-radius: .5rem; }
.pass-certificate-current-ranks span { overflow: hidden; color: #416d64; font-size: .72rem; text-overflow: ellipsis; white-space: nowrap; }
.pass-certificate-current-ranks b { color: #1e6f56; font: 820 .88rem/1 "Bahnschrift", sans-serif; }
.pass-certificate-current-ranks small { grid-column: 1 / -1; color: #66827b; font-size: .72rem; line-height: 1.4; }
.pass-certificate-ranking-notes { display: grid; gap: .34rem; margin: 0 .48rem .48rem; }
.pass-certificate-ranking-notes > div { display: grid; grid-template-columns: auto minmax(0,1fr); align-items: center; gap: .46rem; padding: .55rem .62rem; color: #755a2d; background: rgba(248,240,220,.72); border: 1px solid rgba(157,116,46,.16); border-radius: .5rem; }
.pass-certificate-ranking-notes > div > span { display: grid; place-items: center; inline-size: 1.65rem; block-size: 1.65rem; background: rgba(239,220,181,.68); border-radius: .4rem; }
.pass-certificate-ranking-notes .icon { inline-size: .7rem; }
.pass-certificate-ranking-notes p { display: grid; gap: .06rem; margin: 0; }
.pass-certificate-ranking-notes b { font-size: .76rem; }
.pass-certificate-ranking-notes small { color: #806e4f; font-size: .72rem; line-height: 1.4; }
.pass-certificate-ranking > footer { display: flex; align-items: center; justify-content: space-between; gap: .75rem; padding: .6rem .72rem; color: #3e6861; background: rgba(219,239,234,.55); border-block-start: 1px solid rgba(48,107,116,.1); }
.pass-certificate-ranking > footer > span { font-size: .74rem; }
.pass-certificate-ranking > footer > span b { color: #1f6b55; font: 850 .92rem/1 "Bahnschrift", sans-serif; }
.pass-certificate-ranking > footer > small { color: #66827e; font-size: .72rem; line-height: 1.4; text-align: end; }
.pass-certificate-team-ranking { margin: .75rem 1.55rem 0; overflow: hidden; background: linear-gradient(148deg, rgba(255,255,255,.9), rgba(237,247,247,.84)); border: 1px solid rgba(47,105,120,.2); border-radius: .72rem; box-shadow: 0 .72rem 1.8rem rgba(17,70,83,.07), inset 0 1px rgba(255,255,255,.94); }
.pass-certificate-team-ranking > header { display: flex; align-items: center; justify-content: space-between; gap: .85rem; padding: .8rem .86rem; background: linear-gradient(140deg, rgba(224,241,244,.9), rgba(216,240,231,.74)); border-block-end: 1px solid rgba(48,108,119,.12); }
.pass-certificate-team-ranking > header > div { display: grid; min-inline-size: 0; }
.pass-certificate-team-ranking > header small { color: #68868e; font: 700 .68rem/1.2 "Bahnschrift", sans-serif; letter-spacing: .14em; }
.pass-certificate-team-ranking > header h2 { margin: .08rem 0; color: #194b58; font-size: .98rem; }
.pass-certificate-team-ranking > header p { margin: 0; color: #627d83; font-size: .72rem; line-height: 1.45; }
.pass-certificate-team-ranking > header > span { display: inline-flex; flex: none; align-items: center; gap: .28rem; padding: .33rem .49rem; color: #286b59; background: rgba(211,239,229,.82); border: 1px solid rgba(45,118,96,.15); border-radius: 999px; font-size: .72rem; font-weight: 760; white-space: nowrap; }
.pass-certificate-team-ranking > header > span .icon { inline-size: .7rem; }
.pass-certificate-team-ranking > ol { display: grid; gap: .32rem; margin: 0; padding: .5rem; list-style: none; }
.pass-certificate-team-rank-row { position: relative; display: grid; grid-template-columns: 2.35rem minmax(0,1fr); align-items: center; gap: .6rem; min-inline-size: 0; min-block-size: 3.2rem; padding: .44rem .62rem .44rem .4rem; background: rgba(255,255,255,.72); border: 1px solid rgba(55,111,123,.11); border-radius: .5rem; }
.pass-certificate-team-rank-row__rank { display: grid; place-items: center; inline-size: 2.05rem; block-size: 2.05rem; color: #56747c; background: rgba(225,238,241,.84); border: 1px solid rgba(61,111,123,.11); border-radius: .43rem; font: 820 .8rem/1 "Bahnschrift", sans-serif; font-variant-numeric: tabular-nums; }
.pass-certificate-team-rank-row__pair { display: grid; grid-template-columns: minmax(0,1fr) auto minmax(0,1fr); align-items: center; gap: .48rem; min-inline-size: 0; }
.pass-certificate-team-rank-row__pair > span { display: grid; grid-template-columns: auto minmax(0,1fr) auto; align-items: center; gap: .35rem; min-inline-size: 0; }
.pass-certificate-team-rank-row__pair > span > i { inline-size: .42rem; block-size: .42rem; background: #2f8769; border-radius: 50%; box-shadow: 0 0 0 .18rem rgba(47,135,105,.1); }
.pass-certificate-team-rank-row__pair > span:last-child > i { background: #5787b1; box-shadow: 0 0 0 .18rem rgba(87,135,177,.1); }
.pass-certificate-team-rank-row__pair b { min-inline-size: 0; color: #244f58; font-size: .8rem; line-height: 1.35; overflow-wrap: anywhere; }
.pass-certificate-team-rank-row__pair small { padding: .22rem .37rem; color: #526f77; background: rgba(228,239,241,.82); border-radius: 999px; font-size: .72rem; white-space: nowrap; }
.pass-certificate-team-rank-row__pair > em { color: #789096; font: 760 .76rem/1 "Bahnschrift", sans-serif; font-style: normal; }
.pass-certificate-team-rank-row:nth-child(1) .pass-certificate-team-rank-row__rank { color: #77561e; background: linear-gradient(145deg, #fff4ce, #ecd18b); border-color: rgba(148,107,35,.17); }
.pass-certificate-team-rank-row:nth-child(2) .pass-certificate-team-rank-row__rank { color: #536870; background: linear-gradient(145deg, #f3f7f8, #d6e1e4); }
.pass-certificate-team-rank-row:nth-child(3) .pass-certificate-team-rank-row__rank { color: #7a4d2e; background: linear-gradient(145deg, #f8e5d4, #e1ba97); }
.pass-certificate-team-rank-row.is-current { padding-inline-end: 3.45rem; background: linear-gradient(130deg, rgba(225,246,237,.97), rgba(241,250,247,.9)); border-color: rgba(40,128,97,.3); box-shadow: inset .18rem 0 #2f8a68; }
.pass-certificate-team-rank-row.is-current::after { position: absolute; inset-inline-end: .55rem; inset-block-start: 50%; padding: .2rem .34rem; color: #2b735d; background: rgba(203,235,224,.9); border-radius: 999px; font-size: .72rem; font-weight: 780; transform: translateY(-50%); content: '本组'; }
.pass-certificate-team-ranking-empty { display: grid; grid-template-columns: auto minmax(0,1fr); align-items: center; gap: .58rem; padding: .85rem; color: #5e7b82; background: rgba(240,247,247,.76); border-radius: .5rem; }
.pass-certificate-team-ranking-empty > span { display: grid; place-items: center; inline-size: 2.1rem; block-size: 2.1rem; color: #61808a; background: rgba(220,236,239,.82); border-radius: .45rem; }
.pass-certificate-team-ranking-empty .icon { inline-size: .8rem; }
.pass-certificate-team-ranking-empty > div { display: grid; gap: .08rem; }
.pass-certificate-team-ranking-empty b { font-size: .8rem; }
.pass-certificate-team-ranking-empty small { color: #6e898f; font-size: .72rem; line-height: 1.4; }
.pass-certificate-current-team-rank { display: grid; grid-template-columns: auto minmax(0,1fr); align-items: center; gap: .55rem .8rem; margin: 0 .5rem .5rem; padding: .68rem .72rem; background: linear-gradient(135deg, rgba(216,242,233,.9), rgba(235,248,244,.88)); border: 1px solid rgba(42,124,96,.2); border-radius: .52rem; }
.pass-certificate-current-team-rank > span { display: grid; gap: .08rem; padding-inline-end: .72rem; border-inline-end: 1px solid rgba(42,124,96,.14); }
.pass-certificate-current-team-rank > span small { color: #67847b; font-size: .72rem; }
.pass-certificate-current-team-rank > span b { color: #1e6f56; font: 840 .94rem/1.1 "Bahnschrift", sans-serif; white-space: nowrap; }
.pass-certificate-current-team-rank > div { display: grid; grid-template-columns: minmax(0,1fr) auto minmax(0,1fr); align-items: center; gap: .42rem; min-inline-size: 0; }
.pass-certificate-current-team-rank > div > span { display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: center; gap: .3rem; min-inline-size: 0; }
.pass-certificate-current-team-rank > div b { color: #285b51; font-size: .77rem; overflow-wrap: anywhere; }
.pass-certificate-current-team-rank > div small { padding: .18rem .3rem; color: #4e7168; background: rgba(255,255,255,.52); border-radius: 999px; font-size: .72rem; white-space: nowrap; }
.pass-certificate-current-team-rank > div em { color: #68857d; font-style: normal; }
.pass-certificate-current-team-rank > p { grid-column: 1 / -1; margin: 0; color: #668079; font-size: .72rem; line-height: 1.4; }
.pass-certificate-team-ranking-note { display: grid; grid-template-columns: auto minmax(0,1fr); align-items: center; gap: .48rem; margin: 0 .5rem .5rem; padding: .62rem .68rem; color: #6e653e; background: rgba(247,242,225,.8); border: 1px solid rgba(151,124,55,.16); border-radius: .5rem; }
.pass-certificate-team-ranking-note > .icon { inline-size: .85rem; }
.pass-certificate-team-ranking-note > span { display: grid; gap: .06rem; }
.pass-certificate-team-ranking-note b { font-size: .76rem; }
.pass-certificate-team-ranking-note small { color: #82795a; font-size: .72rem; line-height: 1.4; }
.pass-certificate-team-ranking > footer { display: flex; align-items: center; justify-content: space-between; gap: .8rem; padding: .62rem .74rem; color: #3e6861; background: rgba(219,239,234,.58); border-block-start: 1px solid rgba(48,107,116,.1); }
.pass-certificate-team-ranking > footer > span { font-size: .74rem; }
.pass-certificate-team-ranking > footer > span b { color: #1f6b55; font: 850 .92rem/1 "Bahnschrift", sans-serif; }
.pass-certificate-team-ranking > footer > small { color: #66827e; font-size: .72rem; line-height: 1.4; text-align: end; }
.pass-certificate-times { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); margin: .75rem 1.55rem 0; overflow: hidden; background: rgba(232,244,244,.55); border: 1px solid rgba(54,112,120,.12); border-radius: .65rem; }
.pass-certificate-times > div { display: grid; gap: .12rem; min-inline-size: 0; padding: .7rem .75rem; border-inline-end: 1px solid rgba(54,112,120,.1); }
.pass-certificate-times > div:last-child { border-inline-end: 0; }
.pass-certificate-times dt { color: #789094; font-size: .72rem; }
.pass-certificate-times dd { overflow: hidden; margin: 0; color: #31585e; font-size: .72rem; font-weight: 710; text-overflow: ellipsis; white-space: nowrap; }
.pass-certificate-card > footer { display: grid; grid-template-columns: auto minmax(0,1fr); align-items: center; gap: .48rem; margin-block-start: 1rem; padding: .76rem 1.55rem 1.15rem; color: #39675e; border-block-start: 1px solid rgba(54,112,120,.1); }
.pass-certificate-card > footer > .icon { inline-size: .82rem; }
.pass-certificate-card > footer > span { display: grid; gap: .06rem; }
.pass-certificate-card > footer b { font-size: .72rem; }
.pass-certificate-card > footer small { color: #778c89; font-size: .72rem; }
.pass-certificate-footnote { margin: .7rem 0 0; color: #809396; font: 620 .72rem/1.4 "Bahnschrift", sans-serif; text-align: center; }

@media (max-width: 30rem) {
  .pass-certificate-shell { inline-size: min(calc(100% - 1rem), 49rem); padding-block-start: .5rem; }
  .pass-certificate-brand { margin-block-end: .5rem; }
  .pass-certificate-card > header { padding: 1rem 1rem .5rem; }
  .pass-certificate-seal { inline-size: 4.4rem; block-size: 4.4rem; font-size: .76rem; }
  .pass-certificate-result { margin-inline: .75rem; padding: .85rem; }
  .pass-certificate-result > span { inline-size: 2.4rem; block-size: 2.4rem; }
  .pass-certificate-result p { font-size: .72rem; }
  .pass-certificate-code, .pass-certificate-participants, .pass-certificate-performance, .pass-certificate-scoreboard, .pass-certificate-ranking, .pass-certificate-team-ranking, .pass-certificate-times { margin-inline: .75rem; }
  .pass-certificate-person { grid-template-columns: 1fr auto; gap: .48rem; }
  .pass-certificate-person > span { grid-column: 1; grid-row: 1; }
  .pass-certificate-person > .icon { grid-column: 2; grid-row: 1; align-self: center; }
  .pass-certificate-person__name { grid-column: 1 / -1; grid-row: 2; }
  .pass-certificate-person__id { grid-column: 1 / -1; grid-row: 3; }
  .pass-certificate-person__level { grid-column: 1 / -1; grid-row: 4; }
  .pass-certificate-rounds { grid-template-columns: 1fr; }
  .pass-certificate-technical-reconcile > div { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .pass-certificate-technical-reconcile > div > div { border-block-end: 1px solid rgba(48,108,118,.1); }
  .pass-certificate-technical-reconcile > div > div:nth-child(2n) { border-inline-end: 0; }
  .pass-certificate-technical-reconcile > div > div.is-official { grid-column: 1 / -1; border-block-end: 0; }
  .pass-certificate-scoreboard > header, .pass-certificate-ranking > header, .pass-certificate-team-ranking > header { align-items: flex-start; }
  .pass-certificate-order-scores { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .pass-certificate-order-score:nth-child(2) { border-inline-end: 0; }
  .pass-certificate-order-score:nth-child(-n+2) { border-block-end: 1px solid rgba(255,255,255,.12); }
  .pass-certificate-rank-row { grid-template-columns: 2.1rem minmax(0,1fr) auto; gap: .44rem; }
  .pass-certificate-team-rank-row { grid-template-columns: 2.1rem minmax(0,1fr); align-items: start; gap: .48rem; }
  .pass-certificate-team-rank-row__rank { inline-size: 1.85rem; block-size: 1.85rem; }
  .pass-certificate-team-rank-row__pair { grid-template-columns: minmax(0,1fr); gap: .28rem; }
  .pass-certificate-team-rank-row__pair > em { justify-self: center; block-size: .7rem; line-height: .7rem; }
  .pass-certificate-team-rank-row.is-current { padding-inline-end: 3.25rem; }
  .pass-certificate-team-rank-row.is-current::after { inset-block-start: .55rem; transform: none; }
  .pass-certificate-current-team-rank { grid-template-columns: 1fr; }
  .pass-certificate-current-team-rank > span { padding: 0 0 .5rem; border-inline-end: 0; border-block-end: 1px solid rgba(42,124,96,.14); }
  .pass-certificate-current-team-rank > div { grid-template-columns: 1fr; }
  .pass-certificate-current-team-rank > div em { justify-self: center; }
  .pass-certificate-ranking > footer, .pass-certificate-team-ranking > footer { align-items: flex-start; flex-direction: column; gap: .2rem; }
  .pass-certificate-ranking > footer > small, .pass-certificate-team-ranking > footer > small { text-align: start; }
  .pass-certificate-times { grid-template-columns: 1fr; }
  .pass-certificate-times > div { border-inline-end: 0; border-block-end: 1px solid rgba(54,112,120,.1); }
  .pass-certificate-times > div:last-child { border-block-end: 0; }
  .pass-certificate-card > footer { padding-inline: .9rem; }
}

@media (max-width: 24.5rem) {
  .pass-certificate-panel > header { grid-template-columns: auto minmax(0,1fr); }
  .pass-certificate-panel > header > em { grid-column: 2; justify-self: start; }
  .pass-certificate-panel__meta { grid-template-columns: 1fr; }
  .pass-certificate-panel__meta > span { border-inline-end: 0; border-block-end: 1px solid rgba(49,123,101,.12); }
  .pass-certificate-panel__meta > span:last-child { border-block-end: 0; }
  .pass-certificate-actions { grid-template-columns: 1fr; }
  .pass-certificate-actions input { grid-column: auto; }
  .pass-certificate-status { grid-template-columns: 1fr; }
  .pass-certificate-status__icon { inline-size: 2rem; block-size: 2rem; }
  .pass-certificate-status form { grid-column: 1; }
  .pass-certificate-brand em { max-inline-size: 6.4rem; text-align: end; }
  .pass-certificate-card > header { align-items: center; }
  .pass-certificate-card > header > div small { font-size: .44rem; }
  .pass-certificate-seal { inline-size: 3.8rem; block-size: 3.8rem; font-size: .64rem; }
  .pass-certificate-seal > i { inline-size: 1rem; block-size: 1rem; }
  .pass-certificate-seal small { font-size: .32rem; }
  .pass-certificate-result { grid-template-columns: 1fr; }
  .pass-certificate-result > span { inline-size: 2.1rem; block-size: 2.1rem; }
  .pass-certificate-code { grid-template-columns: 1fr; align-items: start; }
  .pass-certificate-code span { grid-column: 1; grid-row: auto; }
  .pass-certificate-performance > header, .pass-certificate-scoreboard > header, .pass-certificate-ranking > header, .pass-certificate-team-ranking > header { align-items: flex-start; flex-direction: column; gap: .45rem; }
  .pass-certificate-performance > header > span, .pass-certificate-scoreboard > header > span, .pass-certificate-ranking > header > span, .pass-certificate-team-ranking > header > span { align-self: flex-start; }
  .pass-certificate-round > header { grid-template-columns: auto minmax(0,1fr); }
  .pass-certificate-round > header > em { grid-column: 2; justify-self: start; }
  .pass-certificate-rank-row.is-current { padding-inline-end: 2.95rem; }
}

@media (max-width: 21.5rem) {
  .pass-certificate-order-scores { grid-template-columns: 1fr; }
  .pass-certificate-order-score { border-inline-end: 0; border-block-end: 1px solid rgba(255,255,255,.12); }
  .pass-certificate-order-score:last-child { border-block-end: 0; }
  .pass-certificate-rank-row { grid-template-columns: 1.85rem minmax(0,1fr) auto; padding-inline-start: .28rem; }
  .pass-certificate-rank-row > span { inline-size: 1.7rem; block-size: 1.7rem; }
}

/* 隐蔽风控轨迹：只在有权限的后台档案中呈现，风险色只标记后端已判定的命中。 */
.chat-risk-ledger { margin: 0 .65rem .65rem; overflow: hidden; background: linear-gradient(148deg, rgba(242,249,251,.94), rgba(229,241,245,.88)); border: 1px solid rgba(46,105,133,.22); border-radius: .68rem; box-shadow: inset 0 1px rgba(255,255,255,.9); }
.chat-risk-ledger.has-risk { border-color: rgba(168,64,70,.3); background: linear-gradient(148deg, rgba(252,247,248,.96), rgba(243,235,238,.9)); }
.chat-risk-ledger > header { display: grid; grid-template-columns: auto minmax(0,1fr) auto; align-items: center; gap: .65rem; padding: .78rem .82rem; color: #fff; background: linear-gradient(135deg, #0c3049, #145b70); }
.chat-risk-ledger.has-risk > header { background: linear-gradient(135deg, #47252c, #7a3843); }
.chat-risk-ledger > header > span { display: grid; place-items: center; inline-size: 2.25rem; block-size: 2.25rem; color: #c5ebf5; background: rgba(255,255,255,.09); border: 1px solid rgba(255,255,255,.14); border-radius: .5rem; }
.chat-risk-ledger.has-risk > header > span { color: #ffe0e2; }
.chat-risk-ledger > header > span .icon { inline-size: .95rem; }
.chat-risk-ledger > header > div { min-inline-size: 0; }
.chat-risk-ledger > header small { display: block; color: #a8cfdb; font-size: .7rem; letter-spacing: .1em; }
.chat-risk-ledger.has-risk > header small { color: #e6b9bd; }
.chat-risk-ledger > header h2 { margin: .08rem 0; font-size: .96rem; }
.chat-risk-ledger > header p { margin: 0; color: #c5dfe6; font-size: .73rem; line-height: 1.5; }
.chat-risk-ledger.has-risk > header p { color: #ead2d4; }
.chat-risk-ledger > header > b { padding: .36rem .52rem; color: #d7f4fa; background: rgba(255,255,255,.09); border: 1px solid rgba(255,255,255,.13); border-radius: 999px; font-size: .72rem; white-space: nowrap; }
.chat-risk-ledger.has-risk > header > b { color: #ffe1e3; }
.chat-risk-overview { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); border-block-end: 1px solid rgba(58,112,136,.13); }
.chat-risk-overview > span { display: grid; gap: .08rem; padding: .58rem .68rem; border-inline-end: 1px solid rgba(58,112,136,.11); }
.chat-risk-overview > span:last-child { border-inline-end: 0; }
.chat-risk-overview small { color: #798e97; font-size: .69rem; }
.chat-risk-overview b { color: #244f61; font: 780 .94rem/1.25 "Bahnschrift",sans-serif; }
.chat-risk-flags { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: .42rem; padding: .58rem; }
.chat-risk-flags > span { display: grid; grid-template-columns: auto minmax(0,1fr); align-items: center; gap: .42rem; padding: .52rem; color: #39695a; background: rgba(224,243,236,.68); border: 1px solid rgba(51,125,99,.15); border-radius: .48rem; }
.chat-risk-flags > span.is-alert { color: #8d3038; background: rgba(255,231,233,.82); border-color: rgba(159,51,59,.21); box-shadow: inset .18rem 0 #ba4a52; }
.chat-risk-flags > span.is-legacy { color: #7e5b2d; background: rgba(255,244,218,.8); border-color: rgba(171,112,47,.2); box-shadow: inset .18rem 0 #c78945; }
.chat-risk-flags .icon { inline-size: .8rem; }
.chat-risk-flags > span > span { display: grid; gap: .04rem; }
.chat-risk-flags b { font-size: .76rem; }
.chat-risk-flags small { color: #788d85; font-size: .69rem; }
.chat-risk-flags .is-alert small { color: #98686c; }
.chat-risk-legacy { display: grid; grid-template-columns: auto minmax(0,1fr); align-items: center; gap: .5rem; margin: .58rem; padding: .58rem .62rem; color: #855329; background: rgba(255,241,211,.78); border: 1px solid rgba(171,112,47,.23); border-radius: .5rem; box-shadow: inset .18rem 0 #c78945; }
.chat-risk-legacy > .icon { inline-size: .86rem; }
.chat-risk-legacy > span { display: grid; gap: .06rem; }
.chat-risk-legacy b { font-size: .76rem; }
.chat-risk-legacy small { color: #8d714f; font-size: .69rem; line-height: 1.5; }
.chat-risk-source-policy { display: grid; grid-template-columns: auto minmax(0,1fr); align-items: center; gap: .5rem; margin: 0 .58rem .58rem; padding: .58rem .62rem; color: #76582e; background: rgba(255,246,224,.78); border: 1px solid rgba(168,117,55,.18); border-radius: .5rem; }
.chat-risk-source-policy > .icon { inline-size: .85rem; color: #ad773b; }
.chat-risk-source-policy > span { display: grid; gap: .05rem; }
.chat-risk-source-policy b { font-size: .75rem; }
.chat-risk-source-policy small { color: #8a7658; font-size: .68rem; line-height: 1.45; }
.chat-risk-seats { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .48rem; padding: 0 .58rem .58rem; }
.chat-risk-seats > :only-child { grid-column: 1 / -1; }
.chat-risk-seat { overflow: hidden; background: rgba(255,255,255,.66); border: 1px solid rgba(56,111,136,.15); border-radius: .52rem; }
.chat-risk-seat.has-legacy-sources { border-color: rgba(170,118,56,.19); }
.chat-risk-seat > header { display: grid; grid-template-columns: auto minmax(0,1fr) auto; align-items: center; gap: .42rem; padding: .5rem .56rem; background: rgba(215,235,242,.52); border-block-end: 1px solid rgba(56,111,136,.12); }
.chat-risk-seat.has-legacy-sources > header { background: rgba(250,242,222,.58); }
.chat-risk-seat > header > span { padding: .2rem .36rem; color: #275d73; background: rgba(255,255,255,.66); border-radius: 999px; font-size: .7rem; font-weight: 760; }
.chat-risk-seat--partner > header > span { color: #6c572d; background: rgba(255,243,213,.75); }
.chat-risk-seat > header > div { display: grid; min-inline-size: 0; }
.chat-risk-seat > header b { overflow: hidden; color: #275365; font-size: .77rem; text-overflow: ellipsis; white-space: nowrap; }
.chat-risk-seat > header small { color: #7b929c; font-size: .68rem; }
.chat-risk-seat > header em { display: inline-flex; align-items: center; gap: .2rem; color: #92343b; font-size: .69rem; font-style: normal; font-weight: 740; }
.chat-risk-seat > header em.is-legacy { color: #8a6331; }
.chat-risk-seat > header em .icon { inline-size: .7rem; }
.chat-risk-seat dl { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); margin: 0; border-block-end: 1px solid rgba(56,111,136,.1); }
.chat-risk-seat dl > div { display: grid; gap: .08rem; min-inline-size: 0; padding: .48rem .52rem; border-inline-end: 1px solid rgba(56,111,136,.09); }
.chat-risk-seat dl > div:last-child { border-inline-end: 0; }
.chat-risk-seat dt { color: #81949c; font-size: .68rem; }
.chat-risk-seat dd { overflow: hidden; margin: 0; color: #345b6a; font-size: .72rem; font-weight: 680; text-overflow: ellipsis; white-space: nowrap; }
.chat-risk-seat ul { display: grid; margin: 0; padding: 0; list-style: none; }
.chat-risk-sources { overflow: hidden; }
.chat-risk-sources summary { display: grid; grid-template-columns: minmax(0,1fr) auto auto; align-items: center; gap: .45rem; padding: .48rem .52rem; list-style: none; cursor: pointer; }
.chat-risk-sources summary::-webkit-details-marker { display: none; }
.chat-risk-sources summary > span { display: grid; gap: .02rem; }
.chat-risk-sources summary small { color: #8799a0; font-size: .72rem; letter-spacing: .08em; }
.chat-risk-sources summary b { color: #315b6c; font-size: .74rem; }
.chat-risk-sources summary em { color: #6d858f; font-size: .72rem; font-style: normal; }
.chat-risk-sources summary > .icon { inline-size: .68rem; color: #82949c; transform: rotate(90deg); }
.chat-risk-sources[open] summary { background: rgba(220,238,245,.38); border-block-end: 1px solid rgba(56,111,136,.09); }
.chat-risk-sources[open] summary > .icon { transform: rotate(-90deg); }
.chat-risk-sources-empty { border-block-start: 1px solid rgba(56,111,136,.09); }
.chat-risk-seat li { display: grid; grid-template-columns: minmax(7.8rem,.7fr) minmax(0,1fr); align-items: center; gap: .5rem; padding: .48rem .52rem; border-block-end: 1px solid rgba(56,111,136,.09); }
.chat-risk-seat li:last-child { border-block-end: 0; }
.chat-risk-seat li code { overflow-wrap: anywhere; color: #6b4c52; font: 690 .72rem/1.35 "Bahnschrift",sans-serif; }
.chat-risk-seat li > span { display: grid; gap: .04rem; min-inline-size: 0; }
.chat-risk-seat li b { color: #345c6b; font-size: .7rem; }
.chat-risk-seat li small { overflow: hidden; color: #87979e; font-size: .66rem; text-overflow: ellipsis; white-space: nowrap; }
.chat-risk-seat li.is-empty code { color: #8ba0a8; }
.chat-risk-bound-source { display: grid; grid-template-columns: minmax(7.8rem,.7fr) minmax(0,1fr); align-items: center; gap: .5rem; padding: .55rem .52rem; background: rgba(224,243,236,.46); border-block-end: 1px solid rgba(56,111,136,.09); }
.chat-risk-bound-source > em { display: inline-flex; align-items: center; gap: .26rem; color: #31715e; font-size: .7rem; font-style: normal; font-weight: 760; }
.chat-risk-bound-source > em .icon { inline-size: .72rem; }
.chat-risk-bound-source > code { overflow-wrap: anywhere; color: #275f54; font: 720 .74rem/1.35 "Bahnschrift",sans-serif; }
.chat-risk-bound-source > span { display: grid; grid-column: 2; gap: .04rem; min-inline-size: 0; }
.chat-risk-bound-source > span b { color: #345c6b; font-size: .7rem; }
.chat-risk-bound-source > span small { color: #7e9299; font-size: .66rem; line-height: 1.4; }
.chat-risk-bound-source.is-empty { grid-template-columns: minmax(7.8rem,.7fr) minmax(0,1fr); background: rgba(239,246,248,.68); }
.chat-risk-historical-sources summary { background: rgba(252,246,230,.56); }
.chat-risk-historical-sources summary small, .chat-risk-historical-sources summary em { color: #917345; }
.chat-risk-historical-sources summary b { color: #705a35; }
.chat-risk-empty { display: grid; grid-column: 1 / -1; grid-template-columns: auto minmax(0,1fr); align-items: center; gap: .45rem; padding: .7rem; color: #607a85; background: rgba(255,255,255,.6); border: 1px dashed rgba(56,111,136,.2); border-radius: .5rem; }
.chat-risk-empty .icon { inline-size: .82rem; }
.chat-risk-empty > span { display: grid; }
.chat-risk-empty b { font-size: .75rem; }
.chat-risk-empty small { color: #81949c; font-size: .68rem; }
.chat-risk-events { margin: 0 .58rem .58rem; overflow: hidden; background: rgba(255,255,255,.6); border: 1px solid rgba(56,111,136,.15); border-radius: .52rem; }
.chat-risk-events summary { display: grid; grid-template-columns: 1fr auto auto; align-items: center; gap: .45rem; padding: .56rem .62rem; list-style: none; cursor: pointer; }
.chat-risk-events summary::-webkit-details-marker { display: none; }
.chat-risk-events summary > span { display: grid; }
.chat-risk-events summary small { color: #82969e; font-size: .68rem; letter-spacing: .1em; }
.chat-risk-events summary b { color: #2b5668; font-size: .78rem; }
.chat-risk-events summary em { color: #6d848e; font-size: .69rem; font-style: normal; }
.chat-risk-events summary > .icon { inline-size: .68rem; color: #82949c; transform: rotate(90deg); }
.chat-risk-events[open] summary > .icon { transform: rotate(-90deg); }
.chat-risk-events ol { display: grid; margin: 0; padding: 0; border-block-start: 1px solid rgba(56,111,136,.12); list-style: none; }
.chat-risk-events li { display: grid; grid-template-columns: auto 5rem minmax(0,1fr) minmax(7.5rem,.65fr) auto; align-items: center; gap: .45rem; padding: .48rem .58rem; border-block-end: 1px solid rgba(56,111,136,.09); }
.chat-risk-events li:last-child { border-block-end: 0; }
.chat-risk-events li > i { inline-size: .45rem; block-size: .45rem; background: #468ba4; border: 2px solid #d8ebf2; border-radius: 50%; }
.chat-risk-event-seat { color: #527586; font-size: .69rem; font-weight: 740; }
.chat-risk-events li > div { display: grid; min-inline-size: 0; }
.chat-risk-events li b { color: #315a6a; font-size: .73rem; }
.chat-risk-events li small { overflow: hidden; color: #83969e; font-size: .66rem; text-overflow: ellipsis; white-space: nowrap; }
.chat-risk-events li code { overflow-wrap: anywhere; color: #715056; font: 670 .69rem/1.3 "Bahnschrift",sans-serif; }
.chat-risk-events li time { color: #798f98; font-size: .67rem; white-space: nowrap; }
.chat-risk-events li.is-empty { grid-template-columns: auto minmax(0,1fr); }
.chat-risk-ledger > footer { display: grid; grid-template-columns: auto minmax(0,1fr); align-items: center; gap: .42rem; padding: .52rem .62rem; color: #657e88; background: rgba(219,237,243,.52); border-block-start: 1px solid rgba(56,111,136,.11); font-size: .68rem; }
.chat-risk-ledger > footer .icon { inline-size: .76rem; }
.public-security-log-notice { display: flex; align-items: center; justify-content: center; gap: .36rem; margin-block: .78rem; padding: .6rem .72rem; color: #5e7783; background: rgba(230,241,246,.58); border: 1px solid rgba(85,126,153,.14); border-radius: .58rem; font-size: .54rem; line-height: 1.5; text-align: center; }
.public-security-log-notice .icon { flex: 0 0 auto; inline-size: .78rem; color: #447d8e; }

@media (max-width: 52rem) {
  .chat-risk-seats { grid-template-columns: 1fr; }
  .chat-risk-seats > :only-child { grid-column: auto; }
  .chat-risk-events li { grid-template-columns: auto 4.5rem minmax(0,1fr) auto; }
  .chat-risk-events li code { grid-column: 3 / -1; }
}

@media (max-width: 30rem) {
  .chat-risk-ledger { margin-inline: .45rem; }
  .chat-risk-ledger > header { grid-template-columns: auto minmax(0,1fr); }
  .chat-risk-ledger > header > b { grid-column: 2; justify-self: start; }
  .chat-risk-overview, .chat-risk-flags { grid-template-columns: 1fr; }
  .chat-risk-overview > span { border-inline-end: 0; border-block-end: 1px solid rgba(58,112,136,.11); }
  .chat-risk-overview > span:last-child { border-block-end: 0; }
  .chat-risk-seat > header { grid-template-columns: auto minmax(0,1fr); }
  .chat-risk-seat > header em { grid-column: 2; }
  .chat-risk-seat dl { grid-template-columns: 1fr; }
  .chat-risk-seat dl > div { border-inline-end: 0; border-block-end: 1px solid rgba(56,111,136,.09); }
  .chat-risk-seat dl > div:last-child { border-block-end: 0; }
  .chat-risk-seat li { grid-template-columns: 1fr; }
  .chat-risk-seat li small { white-space: normal; }
  .chat-risk-bound-source { grid-template-columns: 1fr; }
  .chat-risk-bound-source > span { grid-column: 1; }
  .chat-risk-sources summary { grid-template-columns: minmax(0,1fr) auto; }
  .chat-risk-sources summary > .icon { grid-column: 2; grid-row: 1 / span 2; }
  .chat-risk-sources summary em { grid-column: 1; }
  .chat-risk-events li { grid-template-columns: auto minmax(0,1fr) auto; align-items: start; }
  .chat-risk-event-seat { grid-column: 2; }
  .chat-risk-events li > div { grid-column: 2 / -1; }
  .chat-risk-events li code { grid-column: 2 / -1; }
  .chat-risk-events li time { grid-column: 2 / -1; }
}

/* 录入现场调度台：冰晶色只用于聊天室工作区，和评分表单形成明确的流程分区。 */
.player-identity-fields { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr) minmax(10rem,.82fr); gap: .72rem; align-items: end; }
.order-name-field { position: relative; padding-inline-start: .72rem; }
.order-name-field::before { content: ""; position: absolute; inset-block: .2rem; inset-inline-start: 0; inline-size: 2px; background: linear-gradient(#8fd2df,#397f99); border-radius: 99px; }
.order-name-field label { display: flex; align-items: baseline; justify-content: space-between; gap: .4rem; }
.order-name-field label small { color: #4c8293; font-size: .66rem; font-weight: 650; }
.order-name-field input { background: #f8fcfd; border-color: #b9d3dc; }
.order-name-field input:focus { border-color: #488ca1; box-shadow: 0 0 0 3px rgba(72,140,161,.12); }

.entry-chat-command { position: relative; grid-column: 1 / -1; margin-block: .2rem 1rem; overflow: hidden; color: #173b4b; background: linear-gradient(142deg,rgba(247,253,255,.98),rgba(230,244,248,.9)); border: 1px solid #b9d6df; border-radius: .9rem; box-shadow: 0 16px 42px rgba(35,90,109,.08); isolation: isolate; }
.entry-chat-command::before { content: ""; position: absolute; inset: 0; z-index: -1; pointer-events: none; background-image: linear-gradient(90deg,rgba(77,135,155,.055) 1px,transparent 1px),linear-gradient(rgba(77,135,155,.055) 1px,transparent 1px); background-size: 2.5rem 2.5rem; mask-image: linear-gradient(105deg,#000,transparent 72%); }
.entry-chat-command::after { content: ""; position: absolute; inset-block-start: -7rem; inset-inline-end: -4rem; z-index: -1; inline-size: 18rem; block-size: 18rem; border: 1px solid rgba(87,148,168,.14); border-radius: 50%; box-shadow: 0 0 0 2.5rem rgba(87,148,168,.035),0 0 0 5rem rgba(87,148,168,.025); }
.entry-chat-command__heading { display: grid; grid-template-columns: auto minmax(0,1fr) auto; align-items: center; gap: .85rem; padding: 1rem 1.05rem .9rem; border-block-end: 1px solid rgba(73,128,148,.14); }
.entry-chat-command__signal { display: grid; place-items: center; inline-size: 2.7rem; block-size: 2.7rem; color: #fff; background: #245e74; border-radius: .65rem; box-shadow: 0 7px 18px rgba(36,94,116,.2); }
.entry-chat-command__signal .icon { inline-size: 1.25rem; }
.entry-chat-command__heading > div { min-inline-size: 0; }
.entry-chat-command__heading small { color: #5d8c9c; font: 720 .68rem/1.2 "Bahnschrift","Segoe UI",sans-serif; letter-spacing: .12em; }
.entry-chat-command__heading h2 { margin: .12rem 0; color: #153c4d; font-size: 1.12rem; letter-spacing: -.02em; }
.entry-chat-command__heading p { margin: 0; color: #617f8b; font-size: .78rem; line-height: 1.55; }
.entry-chat-command__heading > strong { display: inline-flex; align-items: center; gap: .4rem; padding: .42rem .62rem; color: #256c61; background: rgba(223,247,239,.84); border: 1px solid #b5ded0; border-radius: 999px; font-size: .7rem; white-space: nowrap; }
.entry-chat-command__heading > strong i { inline-size: .48rem; block-size: .48rem; background: #2f9a7f; border-radius: 50%; box-shadow: 0 0 0 4px rgba(47,154,127,.1); }
.entry-chat-command.is-configuring .entry-chat-command__heading > strong { color: #84611b; background: #fff8e3; border-color: #ead79c; }
.entry-chat-command.is-configuring .entry-chat-command__heading > strong i { background: #d09a28; animation: entry-chat-pulse 1.2s ease-in-out infinite; }
.entry-chat-command.is-expired .entry-chat-command__heading > strong,.entry-chat-command.is-error .entry-chat-command__heading > strong { color: #8b4a52; background: #fff2f3; border-color: #e5bec2; }
.entry-chat-command.is-expired .entry-chat-command__heading > strong i,.entry-chat-command.is-error .entry-chat-command__heading > strong i { background: #b85d66; box-shadow: none; }
@keyframes entry-chat-pulse { 50% { opacity: .38; transform: scale(.72); } }
.entry-chat-command__rule { display: grid; grid-template-columns: auto minmax(0,1fr) auto; align-items: center; gap: .6rem; padding: .68rem 1.05rem; color: #456d7b; background: rgba(217,239,245,.52); border-block-end: 1px solid rgba(73,128,148,.12); }
.entry-chat-command__rule > .icon { inline-size: 1rem; color: #3d7d91; }
.entry-chat-command__rule > span { display: grid; }
.entry-chat-command__rule b { color: #315d6d; font-size: .76rem; }
.entry-chat-command__rule small { color: #6f8d98; font-size: .69rem; }
.entry-chat-command__rule time { color: #376f82; font: 680 .7rem/1.3 "Bahnschrift","Segoe UI",sans-serif; white-space: nowrap; }
.entry-chat-command__grid { display: grid; grid-template-columns: minmax(20rem,.86fr) minmax(28rem,1.14fr); gap: .82rem; padding: .9rem; }
.entry-chat-passport,.entry-chat-message-bay { min-inline-size: 0; overflow: hidden; background: rgba(255,255,255,.82); border: 1px solid rgba(86,137,154,.2); border-radius: .7rem; box-shadow: 0 7px 20px rgba(40,89,105,.045); }
.entry-chat-passport > header,.entry-chat-message-bay > header { display: flex; align-items: center; justify-content: space-between; gap: .65rem; min-block-size: 3.55rem; padding: .7rem .78rem; background: rgba(240,249,251,.76); border-block-end: 1px solid rgba(74,128,147,.14); }
.entry-chat-passport > header > div,.entry-chat-message-bay > header > div { display: grid; }
.entry-chat-passport > header small,.entry-chat-message-bay > header small { color: #7696a1; font: 700 .62rem/1.2 "Bahnschrift",sans-serif; letter-spacing: .12em; }
.entry-chat-passport > header h3,.entry-chat-message-bay > header h3 { margin: .06rem 0 0; color: #244f60; font-size: .87rem; }
.entry-chat-passport > header em { padding: .24rem .4rem; color: #3d7283; background: #e7f3f6; border-radius: .32rem; font-size: .65rem; font-style: normal; font-weight: 700; }
.entry-chat-message-bay > header > span { display: inline-flex; align-items: center; gap: .26rem; color: #67848f; font-size: .64rem; white-space: nowrap; }
.entry-chat-message-bay > header > span i { inline-size: .42rem; block-size: .42rem; margin-inline-start: .18rem; border-radius: 50%; }
.entry-chat-message-bay > header > span i:first-child { margin-inline-start: 0; }
.entry-chat-message-bay > header .is-primary { background: #39859f; }.entry-chat-message-bay > header .is-partner { background: #8874b5; }.entry-chat-message-bay > header .is-inspector { background: #2e8a6e; }
.entry-chat-pass-stack { display: grid; gap: .55rem; padding: .62rem; }
.entry-chat-pass { overflow: hidden; background: #fff; border: 1px solid #d5e4e9; border-radius: .58rem; }
.entry-chat-pass > header { display: grid; grid-template-columns: auto minmax(0,1fr) auto; align-items: center; gap: .55rem; padding: .58rem .62rem; background: linear-gradient(90deg,#f0f8fa,#fff); border-block-end: 1px solid #e3edf0; }
.entry-chat-pass > header > span { display: grid; place-items: center; inline-size: 1.55rem; block-size: 1.55rem; color: #fff; background: #477f92; border-radius: .38rem; font: 740 .62rem/1 "Bahnschrift",sans-serif; }
.entry-chat-pass--partner > header > span { background: #73639b; }
.entry-chat-pass > header > div { display: grid; min-inline-size: 0; }
.entry-chat-pass > header small { color: #78939d; font-size: .63rem; }
.entry-chat-pass > header b { overflow: hidden; color: #284f5e; font-size: .78rem; text-overflow: ellipsis; white-space: nowrap; }
.entry-chat-pass > header em { color: #8b6a27; font-size: .62rem; font-style: normal; font-weight: 700; }
.entry-chat-pass > header em.is-saved { color: #24735d; }
.entry-chat-pass dl { display: grid; grid-template-columns: 1fr 1fr; margin: 0; padding: .48rem .62rem; }
.entry-chat-pass dl > div { display: grid; gap: .05rem; min-inline-size: 0; }
.entry-chat-pass dt { color: #8aa0a8; font-size: .6rem; }
.entry-chat-pass dd { margin: 0; overflow: hidden; color: #3c6472; font-size: .7rem; font-weight: 680; text-overflow: ellipsis; white-space: nowrap; }
.entry-chat-pass__actions { display: grid; grid-template-columns: minmax(0,1fr) auto auto; gap: .38rem; padding: 0 .62rem .62rem; }
.entry-chat-pass__actions input { min-inline-size: 0; block-size: 2.2rem; padding-inline: .55rem; color: #52717c; background: #f5fafb; border: 1px solid #d4e3e8; border-radius: .38rem; font: 600 .66rem/1 "Bahnschrift",sans-serif; }
.entry-chat-pass__actions .button { min-block-size: 2.2rem; padding-inline: .58rem; font-size: .66rem; }
.entry-chat-pass-empty { display: grid; place-items: center; gap: .18rem; min-block-size: 9.5rem; padding: 1rem; color: #64818b; border: 1px dashed #bed4dc; border-radius: .52rem; text-align: center; }
.entry-chat-pass-empty .icon { inline-size: 1.3rem; color: #538b9f; }.entry-chat-pass-empty b { color: #315e6e; font-size: .8rem; }.entry-chat-pass-empty small { font-size: .68rem; }
.entry-chat-passport__footer { display: flex; align-items: center; justify-content: space-between; gap: .55rem; padding: .62rem; border-block-start: 1px solid #e2ecef; }
.entry-chat-passport__footer output { min-block-size: 1rem; color: #66818b; font-size: .66rem; line-height: 1.4; }
.entry-chat-passport__footer output.is-error { color: #a7444f; }.entry-chat-passport__footer output.is-success { color: #28705c; }.entry-chat-passport__footer output.is-working { color: #8a681f; }
.entry-chat-passport__footer .button { flex: 0 0 auto; min-block-size: 2.3rem; font-size: .68rem; }
.entry-chat-message-bay .chat-timeline { min-block-size: 13.6rem; max-block-size: 21rem; border: 0; border-radius: 0; }
.entry-chat-message-bay .chat-message { padding-inline: .68rem; }
.entry-chat-composer { padding: .65rem .72rem .72rem; background: #f7fbfc; border-block-start: 1px solid #dfeaed; }
.entry-chat-composer > label { display: block; margin-block-end: .28rem; color: #406b7a; font-size: .68rem; font-weight: 720; }
.entry-chat-composer textarea { inline-size: 100%; min-block-size: 4.4rem; padding: .58rem .62rem; resize: vertical; color: #264d5b; background: #fff; border: 1px solid #c8dce3; border-radius: .45rem; font: inherit; font-size: .74rem; }
.entry-chat-composer textarea:focus { outline: 0; border-color: #4d8da3; box-shadow: 0 0 0 3px rgba(77,141,163,.1); }
.entry-chat-composer footer { display: grid; grid-template-columns: minmax(0,1fr) auto auto; align-items: center; gap: .5rem; margin-block-start: .42rem; }
.entry-chat-composer footer small { color: #78909a; font-size: .64rem; }.entry-chat-composer footer output { color: #4c7888; font-size: .65rem; }.entry-chat-composer footer .button { min-block-size: 2.25rem; font-size: .68rem; }
.entry-chat-readonly { display: flex; align-items: center; gap: .5rem; margin: .7rem; padding: .7rem; color: #6e5960; background: #fff6f6; border: 1px solid #e9d2d4; border-radius: .5rem; }
.entry-chat-readonly .icon { inline-size: 1rem; }.entry-chat-readonly span { display: grid; }.entry-chat-readonly b { font-size: .75rem; }.entry-chat-readonly small { font-size: .66rem; }

.change-order-name-correction { padding: .72rem; background: linear-gradient(135deg,#eef8fa,#fff); border: 1px solid #bfd9e1; border-radius: .55rem; }
.change-order-name-correction > header { display: grid; grid-template-columns: auto minmax(0,1fr) auto; align-items: center; gap: .5rem; margin-block-end: .58rem; }
.change-order-name-correction > header > .icon { inline-size: 1rem; color: #3f8196; }
.change-order-name-correction > header > div { display: grid; }.change-order-name-correction > header b { color: #285668; font-size: .76rem; }.change-order-name-correction > header small { color: #6c8791; font-size: .66rem; line-height: 1.45; }
.change-order-name-correction > header em { padding: .22rem .4rem; color: #8a651c; background: #fff7dd; border: 1px solid #ead89c; border-radius: .3rem; font-size: .62rem; font-style: normal; font-weight: 720; white-space: nowrap; }
.change-order-name-correction input { background: #fff; }

.shared-body--draft { background: #edf7fa; }
.shared-draft-status { display: grid; grid-template-columns: auto minmax(0,1fr) auto; align-items: center; gap: .85rem; margin-block: .75rem; padding: 1rem; overflow: hidden; color: #244e5e; background: linear-gradient(135deg,rgba(249,254,255,.98),rgba(222,241,246,.96)); border: 1px solid #afd1dc; border-radius: .72rem; box-shadow: 0 12px 34px rgba(38,92,111,.08); }
.shared-draft-status > .icon { inline-size: 1.35rem; color: #347d96; }.shared-draft-status > div { min-inline-size: 0; }.shared-draft-status small { color: #6f929e; font: 720 .61rem/1.2 "Bahnschrift",sans-serif; letter-spacing: .1em; }.shared-draft-status h1 { margin: .1rem 0; color: #19485a; font-size: 1.3rem; }.shared-draft-status p { margin: 0; color: #63818c; font-size: .68rem; line-height: 1.55; }
.shared-draft-status > em { display: inline-flex; align-items: center; gap: .34rem; padding: .35rem .48rem; color: #24705d; background: #e3f5ef; border: 1px solid #b8dfd2; border-radius: 999px; font-size: .61rem; font-style: normal; font-weight: 720; white-space: nowrap; }.shared-draft-status > em i { inline-size: .42rem; block-size: .42rem; background: #2f987d; border-radius: 50%; }
.public-chat-room--draft { border-color: #afd2dd; box-shadow: 0 12px 34px rgba(38,92,111,.07); }
.participant-identity-rule--draft { background: #eff8fa; border-color: #c6dfe6; }
.admin-chat-draft-note { display: grid; grid-template-columns: auto minmax(0,1fr) auto; align-items: center; gap: .65rem; margin-block-end: .75rem; padding: .72rem .8rem; color: #496f7e; background: #edf8fa; border: 1px solid #bdd9e1; border-radius: .58rem; }.admin-chat-draft-note > .icon { inline-size: 1rem; color: #3e8197; }.admin-chat-draft-note > span { display: grid; }.admin-chat-draft-note b { color: #2c5b6c; font-size: .77rem; }.admin-chat-draft-note small { font-size: .67rem; }.admin-chat-draft-note em { color: #3b7487; font-size: .66rem; font-style: normal; font-weight: 720; white-space: nowrap; }
.chat-room-row.is-draft { border-color: #b9d7df; }.chat-room-row.is-draft .chat-room-state { color: #3e8197; background: #e8f5f8; }
.chat-room-risk-clear { color: #447665; background: #eff9f5; border-color: #cce5db; }.chat-room-risk-clear em { color: #4d8975; font-size: .64rem; font-style: normal; font-weight: 760; letter-spacing: .12em; }

@media (max-width: 74rem) {
  .player-identity-fields { grid-template-columns: 1fr 1fr; }.player-identity-fields .level-choice-field { grid-column: 1 / -1; }
  .entry-chat-command__grid { grid-template-columns: 1fr; }.entry-chat-message-bay .chat-timeline { max-block-size: 18rem; }
}

@media (max-width: 44rem) {
  .player-identity-fields { grid-template-columns: 1fr; }.player-identity-fields .level-choice-field { grid-column: auto; }.order-name-field { padding-inline-start: .58rem; }
  .inspection-workbench--entry-chat { padding-block-end: 1rem; }
  .inspection-workbench--entry-chat .score-dock--workbench.adjudication-dock { position: static; inset: auto; z-index: auto; inline-size: 100%; max-inline-size: none; margin: .2rem 0 0; border-block-end: 1px solid #cdd9de; border-radius: .7rem; box-shadow: 0 8px 24px rgba(14,42,58,.08); }
  .entry-chat-command__heading { grid-template-columns: auto minmax(0,1fr); }.entry-chat-command__heading > strong { grid-column: 2; justify-self: start; }
  .entry-chat-command__rule { grid-template-columns: auto minmax(0,1fr); }.entry-chat-command__rule time { grid-column: 2; }
  .entry-chat-command__grid { padding: .65rem; }.entry-chat-pass__actions { grid-template-columns: 1fr 1fr; }.entry-chat-pass__actions input { grid-column: 1 / -1; }
  .entry-chat-composer footer { grid-template-columns: 1fr auto; }.entry-chat-composer footer small { grid-column: 1 / -1; }
  .change-order-name-correction > header { grid-template-columns: auto minmax(0,1fr); }.change-order-name-correction > header em { grid-column: 2; justify-self: start; }
  .shared-draft-status { grid-template-columns: auto minmax(0,1fr); }.shared-draft-status > em { grid-column: 2; justify-self: start; }
}

@media (max-width: 25rem) {
  .entry-chat-command { margin-inline: -.2rem; border-radius: .7rem; }.entry-chat-command__heading { gap: .6rem; padding: .78rem; }.entry-chat-command__signal { inline-size: 2.35rem; block-size: 2.35rem; }.entry-chat-command__heading p { font-size: .7rem; }
  .entry-chat-command__rule { padding: .62rem .78rem; }.entry-chat-command__rule small { font-size: .64rem; }
  .entry-chat-command__grid { grid-template-columns: minmax(0,1fr); padding: .5rem; }.entry-chat-passport > header,.entry-chat-message-bay > header { align-items: flex-start; flex-direction: column; }
  .entry-chat-pass > header { grid-template-columns: auto minmax(0,1fr); }.entry-chat-pass > header em { grid-column: 2; }.entry-chat-pass dl { grid-template-columns: 1fr; gap: .35rem; }
  .entry-chat-passport__footer { align-items: stretch; flex-direction: column; }.entry-chat-passport__footer .button { inline-size: 100%; }
  .entry-chat-pass__actions { grid-template-columns: 1fr; }.entry-chat-pass__actions input { grid-column: auto; }.entry-chat-composer footer { grid-template-columns: 1fr; }.entry-chat-composer footer .button { inline-size: 100%; }
  .shared-draft-status { grid-template-columns: 1fr; }.shared-draft-status > .icon { display: none; }.shared-draft-status > em { grid-column: auto; }
  .admin-chat-draft-note { grid-template-columns: auto minmax(0,1fr); }.admin-chat-draft-note em { grid-column: 2; }
}

/* 修改申请：窄栏审批差异账单。组件自身始终单列，不依赖视口断点。 */
.change-request-editor { min-inline-size: 0; }
.change-request-editor > summary { min-block-size: 3rem; padding-inline: .72rem; color: #173f55; background: #f4f9fb; }
.change-request-editor > summary b { font-size: .76rem; }
.change-request-editor > form { display: grid; gap: .72rem; min-inline-size: 0; padding: .68rem; background: #fbfdfe; }
.change-request-editor > form > * { min-inline-size: 0; }
.change-editor-head { display: grid; grid-template-columns: 2.15rem minmax(0, 1fr); align-items: start; gap: .48rem .58rem; padding: .72rem; color: #123d55; background: linear-gradient(140deg, #e5f4f8, #f5fbfc); border: 1px solid #b8d8e2; border-radius: .58rem; }
.change-editor-head__icon { display: grid; place-items: center; inline-size: 2.15rem; block-size: 2.15rem; color: #fff; background: #236783; border-radius: .48rem; }
.change-editor-head__icon .icon { inline-size: 1.05rem; }
.change-editor-head > div { display: grid; gap: .12rem; min-inline-size: 0; }
.change-editor-head b { color: #153f55; font-size: .84rem; }
.change-editor-head small { color: #607e8b; font-size: .72rem; line-height: 1.5; }
.change-editor-head output { grid-column: 1 / -1; justify-self: start; min-block-size: 1.65rem; padding: .35rem .52rem; color: #245e76; background: rgba(255,255,255,.86); border: 1px solid #b7d4de; border-radius: 999px; font-size: .74rem; font-weight: 800; }
.change-editor-head p { grid-column: 1 / -1; margin: -.12rem 0 0; color: #567581; font-size: .72rem; line-height: 1.5; overflow-wrap: anywhere; }
.change-request-editor form.has-changes .change-editor-head output { color: #9a4d0c; background: #fff4df; border-color: #e7c28b; }

.change-editor-section { display: grid; gap: .58rem; min-inline-size: 0; margin: 0; padding: .7rem; background: #fff; border: 1px solid #d4e2e7; border-radius: .58rem; }
.change-editor-section > header { display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: start; gap: .48rem; margin: 0; }
.change-editor-section > header > .icon { inline-size: .95rem; margin-block-start: .08rem; color: #397b92; }
.change-editor-section > header > div { display: grid; gap: .08rem; min-inline-size: 0; }
.change-editor-section > header b { color: #244f61; font-size: .78rem; }
.change-editor-section > header small { color: #718a94; font-size: .72rem; line-height: 1.45; overflow-wrap: anywhere; }
.change-editor-section > header em { grid-column: 2; justify-self: start; padding: .22rem .42rem; color: #7b5c17; background: #fff7df; border: 1px solid #ead89c; border-radius: .3rem; font-size: .72rem; font-style: normal; font-weight: 760; }
.change-order-name-correction { background: linear-gradient(145deg, #f0f9fb, #fff); border-color: #c4dfe6; }
.change-editor-fields,
.change-service-list,
.change-round-kills,
.change-round-kills > [data-partner-kill-field] { display: grid; grid-template-columns: minmax(0, 1fr); gap: .5rem; min-inline-size: 0; }

.change-value-field { display: grid; grid-template-columns: minmax(0, 1fr); gap: .38rem; min-inline-size: 0; padding: .58rem; background: #f8fbfc; border: 1px solid #dce7eb; border-inline-start: 3px solid #c6d5db; border-radius: .48rem; }
.change-value-field__heading { display: flex; align-items: baseline; justify-content: space-between; gap: .45rem; min-inline-size: 0; }
.change-request-editor .change-value-field__heading label { min-inline-size: 0; color: #345969; font-size: .76rem; font-weight: 780; line-height: 1.4; overflow-wrap: anywhere; }
.change-value-field__heading [data-change-field-status] { flex: 0 0 auto; color: #84969e; font-size: .72rem; font-weight: 740; }
.change-value-route { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: .32rem; min-inline-size: 0; }
.change-value-original { grid-column: 1 / -1; display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: baseline; gap: .3rem; min-inline-size: 0; padding: .34rem .42rem; color: #627b86; background: #edf3f5; border: 1px solid #d8e2e6; border-radius: .34rem; }
.change-value-original small { color: #8799a0; font-size: .72rem; font-weight: 720; }
.change-value-original b { min-inline-size: 0; color: #536e79; font-size: .74rem; font-weight: 760; line-height: 1.35; overflow-wrap: anywhere; }
.change-value-arrow { justify-self: end; color: #7d929b; font: 800 .82rem/1 "Bahnschrift", "Segoe UI", sans-serif; }
.change-value-target { padding: .28rem .36rem; color: #527282; background: #edf7fa; border: 1px solid #d2e5ea; border-radius: .3rem; font-size: .72rem; font-weight: 760; white-space: nowrap; }
.change-value-control { display: grid; min-inline-size: 0; }
.change-value-control input:not([data-service-input]),
.change-value-control select { inline-size: 100%; min-inline-size: 0; min-block-size: 2.75rem; padding: .55rem .62rem; color: #163e52; background: #fff; border: 1px solid #bfd1d8; border-radius: .42rem; font: 720 .76rem/1.3 "Segoe UI", "Microsoft YaHei", sans-serif; }
.change-value-control input:not([data-service-input]):focus-visible,
.change-value-control select:focus-visible,
.change-reason-field textarea:focus-visible { outline: 3px solid rgba(36, 125, 153, .2); outline-offset: 1px; border-color: #397f98; }
.change-value-field[data-change-state="changed"] { background: #fff8ec; border-color: #e7c491; border-inline-start-color: #d77922; }
.change-value-field[data-change-state="changed"] .change-value-field__heading [data-change-field-status] { color: #a95713; }
.change-value-field[data-change-state="changed"] .change-value-target { color: #984b0b; background: #fff0d2; border-color: #e6bd7b; }
.change-value-field[data-change-state="changed"] .change-value-control input:not([data-service-input]),
.change-value-field[data-change-state="changed"] .change-value-control select,
.change-value-field[data-change-state="changed"] .service-stepper { border-color: #d9944b; box-shadow: 0 0 0 2px rgba(215,121,34,.09); }
.change-value-field[data-change-original-unknown] .change-value-original { color: #7e601e; background: #fff8e8; border-color: #ead9aa; }
.change-value-field[data-change-original-unknown] .change-value-original b { color: #7e601e; }
.change-value-control .supply-rounding-output { margin-block-start: .34rem; color: #617f8c; font-size: .72rem; line-height: 1.45; overflow-wrap: anywhere; }

.change-order-context { display: grid; grid-template-columns: minmax(0, 1fr); gap: .35rem; margin: 0; padding-block-start: .52rem; border-block-start: 1px dashed #d7e2e6; }
.change-order-context > div { display: grid; grid-template-columns: minmax(4.5rem, .7fr) minmax(0, 1fr); align-items: center; gap: .45rem; padding: .45rem .5rem; background: #f5f8f9; border-radius: .38rem; }
.change-order-context dt { color: #7b9099; font-size: .72rem; font-weight: 700; }
.change-order-context dd { margin: 0; color: #496572; font-size: .74rem; font-weight: 760; text-align: end; overflow-wrap: anywhere; }

.change-game-grid,
[data-change-game-list] { display: grid; grid-template-columns: minmax(0, 1fr); gap: .62rem; min-inline-size: 0; }
.change-game-grid .change-game-card { display: grid; grid-template-columns: minmax(0, 1fr); gap: .5rem; min-inline-size: 0; inline-size: 100%; margin: 0; padding: .65rem; background: #f4f9fb; border: 1px solid #cbdfe6; border-radius: .52rem; }
.change-game-card > legend { display: inline-grid; grid-template-columns: 1.65rem auto auto; align-items: center; gap: .35rem; max-inline-size: 100%; padding: 0 .3rem; color: #244f61; }
.change-game-card > legend span { display: grid; place-items: center; inline-size: 1.65rem; block-size: 1.65rem; color: #fff; background: #1e5974; border-radius: .38rem; font: 800 .68rem/1 "Bahnschrift", sans-serif; }
.change-game-card > legend b { font-size: .76rem; }
.change-game-card > legend small { color: #728b96; font-size: .72rem; font-weight: 650; }
.change-game-fields { display: grid; grid-template-columns: minmax(0, 1fr); gap: .5rem; min-inline-size: 0; }
.change-game-section > header { margin-block-end: .05rem; }

.change-service-fieldset { min-inline-size: 0; padding: .7rem; }
.change-service-fieldset > legend { padding-inline: .28rem; color: #244f61; font-size: .78rem; font-weight: 780; }
.change-service-fieldset > p { margin: 0; color: #718a94; font-size: .72rem; line-height: 1.45; }
.change-service-list .service-stepper { grid-template-columns: 2.75rem minmax(0, 1fr) 2.75rem; inline-size: 100%; }
.change-service-list .service-stepper button { inline-size: 100%; min-block-size: 2.75rem; }
.change-service-list .service-stepper output { min-inline-size: 0; }

.change-live-summary { display: grid; grid-template-columns: minmax(0, 1fr); gap: .45rem; }
.change-live-summary > span { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: baseline; gap: .12rem .45rem; padding: .62rem .68rem; color: #587581; background: #eaf4f7; border: 1px solid #d2e4e9; border-radius: .46rem; }
.change-live-summary > span > small { color: #647f8b; font-size: .72rem; font-weight: 720; }
.change-live-summary > span > b { justify-self: end; color: #123f56; font-size: 1.05rem; }
.change-live-summary > span > em { grid-column: 1 / -1; color: #728a94; font-size: .72rem; font-style: normal; }
.change-live-summary > span > em i { color: inherit; font-style: normal; font-weight: 760; }
.change-reason-field { display: grid; gap: .28rem; min-inline-size: 0; }
.change-request-editor .change-reason-field > label { color: #345969; font-size: .76rem; font-weight: 780; }
.change-reason-field > small { color: #718993; font-size: .72rem; line-height: 1.45; }
.change-reason-field textarea { inline-size: 100%; min-inline-size: 0; min-block-size: 6rem; padding: .6rem .64rem; resize: vertical; color: #183e50; background: #fff; border: 1px solid #bfd1d8; border-radius: .44rem; font: .76rem/1.55 "Segoe UI", "Microsoft YaHei", sans-serif; }
.change-submit-button { min-block-size: 2.9rem; white-space: normal; line-height: 1.35; }

@media (max-width: 25rem) {
  .change-request-editor > form { padding: .55rem; }
  .change-editor-head,
  .change-editor-section,
  .change-game-grid .change-game-card { padding: .58rem; }
  .change-order-context > div { grid-template-columns: minmax(0, 1fr); gap: .16rem; }
  .change-order-context dd { text-align: start; }
  .change-game-card > legend { grid-template-columns: 1.65rem minmax(0, 1fr); }
  .change-game-card > legend small { grid-column: 2; }
}

/* 2026-08-15 · 管理员逐页修改账本 */
.edit-ledger-shell { display: grid; min-inline-size: 0; margin-block-end: 1rem; overflow: hidden; background: #edf4f6; border: 1px solid #bdd1d9; border-radius: .88rem; box-shadow: 0 18px 46px rgba(11, 48, 66, .1); }
.edit-ledger-shell[hidden] { display: none; }
.edit-ledger-heading { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: .8rem; padding: 1rem 1.1rem; color: #edf9fc; background: linear-gradient(128deg, #0b3044, #155d73); }
.edit-ledger-heading > span { display: grid; place-items: center; inline-size: 2.55rem; block-size: 2.55rem; color: #0c4c60; background: #dff4f7; border-radius: .62rem; box-shadow: inset 0 0 0 1px rgba(15, 91, 112, .12); }
.edit-ledger-heading > span .icon { inline-size: 1.15rem; }
.edit-ledger-heading > div { display: grid; min-inline-size: 0; }
.edit-ledger-heading small { color: #8fcbd8; font: 700 .58rem/1.2 "Bahnschrift", sans-serif; letter-spacing: .13em; }
.edit-ledger-heading h2 { margin: .1rem 0; font-size: 1.08rem; }
.edit-ledger-heading p { margin: 0; color: #c3dfe6; font-size: .72rem; line-height: 1.5; }
.edit-ledger-heading output { justify-self: end; padding: .42rem .62rem; color: #d6e9ee; background: rgba(255,255,255,.08); border: 1px solid rgba(255,255,255,.18); border-radius: 999px; font-size: .72rem; font-weight: 780; white-space: nowrap; }
.edit-ledger-shell[data-edit-change-count]:not([data-edit-change-count="0"]) .edit-ledger-heading output { color: #fff2cf; background: rgba(190, 126, 29, .18); border-color: rgba(244, 196, 111, .38); }
.edit-ledger-route { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 0; min-inline-size: 0; background: #fff; border-block-end: 1px solid #cadbe1; }
.edit-ledger-route button { position: relative; display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: .38rem; min-inline-size: 0; min-block-size: 3.4rem; padding: .62rem .65rem; color: #657f8a; background: transparent; border: 0; border-inline-end: 1px solid #e1eaed; cursor: pointer; text-align: start; }
.edit-ledger-route button:last-child { border-inline-end: 0; }
.edit-ledger-route button::after { position: absolute; inset: auto .6rem 0; block-size: 3px; background: transparent; border-radius: 999px 999px 0 0; content: ''; }
.edit-ledger-route button > span { color: #73909b; font: 800 .67rem/1 "Bahnschrift", sans-serif; }
.edit-ledger-route button > b { min-inline-size: 0; overflow: hidden; font-size: .7rem; text-overflow: ellipsis; white-space: nowrap; }
.edit-ledger-route button > em { display: grid; place-items: center; min-inline-size: 1.35rem; block-size: 1.35rem; color: #6c8791; background: #eef4f6; border-radius: 999px; font-size: .6rem; font-style: normal; font-weight: 800; }
.edit-ledger-route button[aria-current="step"] { color: #174d61; background: #f0f8fa; }
.edit-ledger-route button[aria-current="step"]::after { background: #177a93; }
.edit-ledger-route button[aria-current="step"] > span { color: #177a93; }
.edit-ledger-route button[aria-current="step"] > em { color: #fff; background: #177a93; }
.edit-ledger-route button:focus-visible { z-index: 1; outline: 3px solid rgba(32, 135, 164, .24); outline-offset: -3px; }
.edit-ledger-pages { min-inline-size: 0; padding: .85rem; }
.edit-ledger-page { display: grid; gap: .8rem; min-inline-size: 0; }
.edit-ledger-page[hidden] { display: none; }
.edit-ledger-page__heading { display: grid; grid-template-columns: 2.65rem minmax(0, 1fr) auto; align-items: center; gap: .72rem; min-inline-size: 0; padding: .76rem .82rem; background: rgba(255,255,255,.82); border: 1px solid #cedde2; border-radius: .62rem; }
.edit-ledger-page__heading > span { display: grid; place-items: center; inline-size: 2.65rem; block-size: 2.65rem; color: #fff; background: #164f67; border-radius: .52rem; font: 820 .8rem/1 "Bahnschrift", sans-serif; }
.edit-ledger-page__heading > div { display: grid; min-inline-size: 0; }
.edit-ledger-page__heading small { color: #74909a; font: 700 .55rem/1.2 "Bahnschrift", sans-serif; letter-spacing: .12em; }
.edit-ledger-page__heading h3 { margin: .08rem 0; color: #153f52; font-size: 1rem; }
.edit-ledger-page__heading p { margin: 0; color: #6f8790; font-size: .7rem; line-height: 1.45; }
.edit-ledger-page__heading output { justify-self: end; padding: .34rem .5rem; color: #607b86; background: #edf3f5; border: 1px solid #d4e0e4; border-radius: 999px; font-size: .68rem; font-weight: 750; white-space: nowrap; }
.edit-ledger-page.has-changes .edit-ledger-page__heading output { color: #965012; background: #fff3dc; border-color: #e4bd7e; }
.edit-ledger-page__body { display: grid; gap: .75rem; min-inline-size: 0; }
.edit-ledger-page__body > .panel { margin: 0; }
.edit-ledger-page--identity .entry-meta { border-radius: .68rem; box-shadow: none; }
.edit-ledger-round { display: grid; gap: .65rem; padding: .8rem; }
.edit-ledger-round > header { display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: center; gap: .58rem; padding-block-end: .62rem; border-block-end: 1px solid #dce7eb; }
.edit-ledger-round > header > span { padding: .36rem .45rem; color: #fff; background: #18566e; border-radius: .35rem; font: 800 .63rem/1 "Bahnschrift", sans-serif; letter-spacing: .06em; }
.edit-ledger-round > header h4 { margin: 0; color: #244e60; font-size: .82rem; }
.edit-ledger-round > header p { margin: .12rem 0 0; color: #748b94; font-size: .68rem; }
.edit-ledger-round [data-edit-ledger-round-fields] { grid-template-columns: minmax(0, 1fr); }
.edit-ledger-round [data-personal-kill-game] { margin: 0; }
.edit-ledger-result-panel { display: grid; gap: .72rem; padding: .8rem; }
.edit-ledger-result-panel .panel-heading { margin: 0; }
.edit-ledger-result-panel .admin-result-editor { margin: 0; }
.edit-ledger-review-intro { display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: center; gap: .72rem; padding: .86rem; color: #eaf7fa; background: linear-gradient(130deg, #123a4d, #1b6676); border: 1px solid rgba(96, 180, 198, .32); border-radius: .64rem; }
.edit-ledger-review-intro > span { display: grid; place-items: center; inline-size: 2.7rem; block-size: 2.7rem; color: #164f61; background: #dff2f4; border-radius: 50%; font: 850 .72rem/1 "Bahnschrift", sans-serif; }
.edit-ledger-review-intro small { color: #93ced8; font: 700 .56rem/1.2 "Bahnschrift", sans-serif; letter-spacing: .14em; }
.edit-ledger-review-intro h4 { margin: .12rem 0; font-size: .88rem; }
.edit-ledger-review-intro p { margin: 0; color: #c7e0e5; font-size: .7rem; line-height: 1.52; }
.edit-ledger-page--review .adjudication-dock { position: static; inset: auto; z-index: auto; inline-size: 100%; max-inline-size: none; margin: 0; border-radius: .68rem; box-shadow: 0 10px 28px rgba(12, 50, 68, .1); }
.edit-ledger-comparison { min-inline-size: 0; overflow: hidden; background: #fff; border: 1px solid #c7d9df; border-radius: .68rem; }
.edit-ledger-comparison > header { display: flex; align-items: center; justify-content: space-between; gap: .65rem; padding: .68rem .76rem; background: #f3f8f9; border-block-end: 1px solid #dbe6e9; }
.edit-ledger-comparison > header > div { display: grid; }
.edit-ledger-comparison > header small { color: #78929b; font: 700 .54rem/1.2 "Bahnschrift", sans-serif; letter-spacing: .12em; }
.edit-ledger-comparison > header h4 { margin: .08rem 0 0; color: #285263; font-size: .76rem; }
.edit-ledger-comparison > header em { padding: .28rem .42rem; color: #67808a; background: #e8f0f3; border-radius: 999px; font-size: .64rem; font-style: normal; font-weight: 780; white-space: nowrap; }
.edit-ledger-page.has-changes .edit-ledger-comparison > header em { color: #9b500d; background: #fff0d4; }
.edit-ledger-comparison__list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .54rem; min-inline-size: 0; padding: .68rem; }
.edit-ledger-page--service .edit-ledger-comparison__list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.edit-ledger-diff { display: grid; gap: .45rem; min-inline-size: 0; padding: .62rem; background: #f8fbfc; border: 1px solid #dce7ea; border-inline-start: 3px solid #beced4; border-radius: .48rem; }
.edit-ledger-diff > header { display: flex; align-items: baseline; justify-content: space-between; gap: .5rem; min-inline-size: 0; }
.edit-ledger-diff > header b { min-inline-size: 0; color: #3f606e; font-size: .7rem; overflow-wrap: anywhere; }
.edit-ledger-diff > header em { flex: 0 0 auto; color: #8a9ba2; font-size: .62rem; font-style: normal; font-weight: 720; }
.edit-ledger-diff > div { display: grid; grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr); align-items: stretch; gap: .35rem; min-inline-size: 0; }
.edit-ledger-diff > div > span { display: grid; align-content: start; gap: .18rem; min-inline-size: 0; padding: .42rem .46rem; background: #edf3f5; border-radius: .34rem; }
.edit-ledger-diff > div > span small { color: #85969d; font-size: .58rem; font-weight: 720; }
.edit-ledger-diff del, .edit-ledger-diff ins { min-inline-size: 0; color: #58727d; font-size: .68rem; font-weight: 720; line-height: 1.42; text-decoration: none; overflow-wrap: anywhere; }
.edit-ledger-diff > div > i { align-self: center; color: #82969f; font: 800 .76rem/1 "Bahnschrift", sans-serif; }
.edit-ledger-diff.is-changed { background: #fff9ee; border-color: #e3c28c; border-inline-start-color: #d37820; }
.edit-ledger-diff.is-changed > header b, .edit-ledger-diff.is-changed > header em { color: #9c530f; }
.edit-ledger-diff.is-changed > div > span:first-child { background: #f6eee2; }
.edit-ledger-diff.is-changed > div > span:last-child { background: #fff0d2; }
.edit-ledger-diff.is-changed ins { color: #91480a; }
.edit-ledger-diff.is-summary { grid-column: 1 / -1; }
.edit-ledger-empty { grid-column: 1 / -1; margin: 0; padding: .85rem; color: #768c95; background: #f5f8f9; border: 1px dashed #ccd9de; border-radius: .46rem; font-size: .7rem; text-align: center; }
.edit-ledger-empty--review { display: grid; gap: .18rem; }
.edit-ledger-empty--review b { color: #486775; font-size: .76rem; }
.edit-ledger-empty--review span { font-size: .68rem; }
.edit-ledger-controls { display: grid; grid-template-columns: minmax(7rem, auto) minmax(0, 1fr) minmax(7rem, auto); align-items: center; gap: .65rem; padding: .72rem .85rem; background: #fff; border-block-start: 1px solid #cadbe1; }
.edit-ledger-controls > span { display: flex; align-items: baseline; justify-content: center; gap: .24rem; color: #6d858f; }
.edit-ledger-controls > span b { color: #174d61; font: 850 1rem/1 "Bahnschrift", sans-serif; }
.edit-ledger-controls > span i { font-size: .66rem; font-style: normal; }
.edit-ledger-controls > span small { margin-inline-start: .35rem; font-size: .65rem; }
.edit-ledger-controls > button:last-child { justify-self: end; }

/* 服务器签名差异同样逐页核对 */
.edit-confirmation:has([data-server-diff-ledger]) { inline-size: min(64rem, calc(100vw - 2rem)); }
.edit-diff-list:has([data-server-diff-ledger]) { min-inline-size: 0; padding: .8rem; }
.edit-diff-ledger { display: grid; min-inline-size: 0; overflow: hidden; background: #eef4f6; border: 1px solid #c5d6dc; border-radius: .68rem; }
.edit-diff-ledger > nav { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); background: #fff; border-block-end: 1px solid #d2dfe4; }
.edit-diff-ledger > nav button { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: .3rem; min-inline-size: 0; min-block-size: 3rem; padding: .55rem; color: #6a818b; background: transparent; border: 0; border-inline-end: 1px solid #e3eaed; cursor: pointer; }
.edit-diff-ledger > nav button:last-child { border-inline-end: 0; }
.edit-diff-ledger > nav button > span { font: 800 .62rem/1 "Bahnschrift", sans-serif; }
.edit-diff-ledger > nav button > b { min-inline-size: 0; overflow: hidden; font-size: .66rem; text-overflow: ellipsis; white-space: nowrap; }
.edit-diff-ledger > nav button > em { display: grid; place-items: center; min-inline-size: 1.2rem; block-size: 1.2rem; background: #edf3f5; border-radius: 50%; font-size: .56rem; font-style: normal; }
.edit-diff-ledger > nav button[aria-current="step"] { color: #115873; background: #eaf6f9; box-shadow: inset 0 -3px #177d99; }
.edit-diff-ledger__pages { min-inline-size: 0; padding: .72rem; }
.edit-confirmation .edit-diff-page { display: grid; gap: .65rem; min-inline-size: 0; }
.edit-confirmation .edit-diff-page[hidden] { display: none; }
.edit-confirmation .edit-diff-page > header { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: .58rem; padding: .66rem; color: #244f61; background: #fff; border: 1px solid #d5e1e5; border-radius: .5rem; }
.edit-confirmation .edit-diff-page > header > span { display: grid; place-items: center; inline-size: 2.25rem; block-size: 2.25rem; color: #fff; background: #185a72; border-radius: .42rem; font: 820 .68rem/1 "Bahnschrift", sans-serif; }
.edit-confirmation .edit-diff-page > header > div { display: grid; }
.edit-confirmation .edit-diff-page > header small { color: #78919b; font-size: .52rem; letter-spacing: .1em; }
.edit-confirmation .edit-diff-page > header h3 { margin: .06rem 0 0; color: #244f61; font-size: .82rem; }
.edit-confirmation .edit-diff-page > header em { color: #95520f; font-size: .65rem; font-style: normal; font-weight: 760; }
.edit-diff-page__cards, .edit-diff-summary { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .5rem; min-inline-size: 0; }
.edit-confirmation .edit-diff-page__cards article, .edit-confirmation .edit-diff-summary article { grid-template-columns: minmax(6.5rem, .58fr) minmax(0, 1.42fr); margin: 0; }
.edit-confirmation .edit-no-change { grid-column: 1 / -1; margin: 0; padding: 1rem; color: #718690; background: #fff; border: 1px dashed #cad9df; border-radius: .46rem; text-align: center; }
.edit-diff-summary-row { grid-column: 1 / -1; }
.edit-diff-ledger > footer { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: .55rem; padding: .62rem .72rem; background: #fff; border-block-start: 1px solid #d2dfe4; }
.edit-diff-ledger > footer > span { justify-self: center; color: #77909a; }
.edit-diff-ledger > footer > span b { color: #18546a; font: 840 .86rem/1 "Bahnschrift", sans-serif; }
.edit-diff-ledger > footer > span i { font-size: .62rem; font-style: normal; }

/* 公共聊天室第一条固定考核须知 */
.chat-system-notice { position: relative; display: grid; grid-template-columns: auto minmax(0, 1fr); gap: .68rem; min-inline-size: 0; margin-block-end: .18rem; padding: .78rem; color: #284f60; background: linear-gradient(145deg, #edf8fa, #fffdf5); border: 1px solid #b9d8df; border-inline-start: 4px solid #247b92; border-radius: .68rem; box-shadow: 0 8px 22px rgba(30, 92, 111, .07); }
.chat-system-notice::after { position: absolute; inset: .42rem .45rem auto auto; color: #7897a1; content: "SYSTEM NOTICE"; font: 700 .46rem/1 "Bahnschrift", sans-serif; letter-spacing: .12em; }
.chat-system-notice__mark { display: grid; place-items: center; inline-size: 2.15rem; block-size: 2.15rem; color: #fff; background: #216e84; border-radius: .5rem; }
.chat-system-notice__mark .icon { inline-size: 1rem; }
.chat-system-notice article { min-inline-size: 0; }
.chat-system-notice article header { display: grid; padding-inline-end: 5.8rem; }
.chat-system-notice article header small { color: #76919a; font-size: .6rem; }
.chat-system-notice article header h3 { margin: .1rem 0 0; color: #174b60; font-size: .83rem; }
.chat-system-notice ul { display: grid; gap: .35rem; margin: .5rem 0 0; padding: 0; counter-reset: briefing; list-style: none; }
.chat-system-notice li { display: grid; grid-template-columns: 1.35rem minmax(0, 1fr); align-items: start; gap: .38rem; min-inline-size: 0; color: #4e6873; font-size: .68rem; line-height: 1.58; overflow-wrap: anywhere; }
.chat-system-notice li::before { display: grid; place-items: center; inline-size: 1.25rem; block-size: 1.25rem; margin-block-start: .02rem; color: #276f84; background: #e0f1f4; border-radius: 50%; counter-increment: briefing; content: counter(briefing, decimal-leading-zero); font: 780 .48rem/1 "Bahnschrift", sans-serif; }

/* 正式结果与通过证明仪式宣言 */
.result-ceremony { position: relative; isolation: isolate; display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: center; gap: 1rem; margin-block: .9rem; padding: 1.15rem 1.25rem; overflow: hidden; text-align: center; border-radius: .9rem; box-shadow: 0 18px 46px rgba(13, 54, 64, .12); }
.result-ceremony::before { position: absolute; inset: 0; z-index: -1; opacity: .65; background-image: radial-gradient(circle at 15% 0, rgba(255,255,255,.45), transparent 36%), linear-gradient(120deg, transparent 30%, rgba(255,255,255,.13) 30.5%, transparent 31%); content: ''; }
.result-ceremony__seal { display: grid; place-items: center; align-content: center; inline-size: 5rem; block-size: 5rem; color: #fff; border: 1px solid rgba(255,255,255,.38); border-radius: 50%; font: 820 .75rem/1 "Bahnschrift", sans-serif; letter-spacing: .08em; box-shadow: inset 0 0 0 .32rem rgba(255,255,255,.1), 0 .7rem 1.6rem rgba(0,0,0,.12); }
.result-ceremony__seal i { display: grid; place-items: center; margin-block-start: .28rem; }
.result-ceremony__seal .icon { inline-size: 1rem; }
.result-ceremony > div { display: grid; justify-items: center; min-inline-size: 0; }
.result-ceremony > div > small { font: 720 .56rem/1.2 "Bahnschrift", sans-serif; letter-spacing: .16em; }
.result-ceremony h2 { margin: .16rem 0 .48rem; font-size: clamp(1.15rem, 3vw, 1.65rem); letter-spacing: -.03em; }
.result-ceremony p { max-inline-size: 58rem; margin: 0; font-size: .78rem; line-height: 1.8; overflow-wrap: anywhere; }
.result-ceremony p b { font-weight: 840; }
.result-ceremony p strong { display: inline; font-weight: 820; }
.result-ceremony blockquote { margin: .68rem 0 0; padding-block-start: .62rem; max-inline-size: 50rem; border-block-start: 1px solid currentColor; font-size: .74rem; line-height: 1.8; opacity: .92; }
.result-ceremony blockquote strong { font-size: .86rem; letter-spacing: .04em; }
.result-ceremony--passed { color: #effff7; background: linear-gradient(135deg, #15463f, #26775e 68%, #b38736); border: 1px solid rgba(236, 215, 157, .42); }
.result-ceremony--passed > div > small { color: #d6c48e; }
.result-ceremony--passed .result-ceremony__seal { color: #f9edc5; background: rgba(13, 68, 56, .45); }
.result-ceremony--passed blockquote { border-color: rgba(235, 219, 168, .35); }
.result-ceremony--failed { color: #4e3940; background: linear-gradient(140deg, #fffafa, #f6ecee); border: 1px solid #dfc5ca; }
.result-ceremony--failed > div > small { color: #9b747c; }
.result-ceremony--failed .result-ceremony__seal { color: #fff; background: #86545d; }
.result-ceremony--failed a { color: #8e303e; font-weight: 820; text-underline-offset: .16em; }
.pass-certificate-ceremony { margin-inline: 1.55rem; }

@media (max-width: 64rem) {
  .edit-ledger-route, .edit-diff-ledger > nav { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .edit-ledger-route button:nth-child(3), .edit-diff-ledger > nav button:nth-child(3) { border-inline-end: 0; }
  .edit-ledger-route button:nth-child(-n+3), .edit-diff-ledger > nav button:nth-child(-n+3) { border-block-end: 1px solid #e1eaed; }
}

@media (max-width: 42rem) {
  .edit-ledger-heading { grid-template-columns: auto minmax(0, 1fr); }
  .edit-ledger-heading output { grid-column: 2; justify-self: start; }
  .edit-ledger-comparison__list, .edit-ledger-page--service .edit-ledger-comparison__list, .edit-diff-page__cards, .edit-diff-summary { grid-template-columns: minmax(0, 1fr); }
  .edit-ledger-diff.is-summary { grid-column: auto; }
  .edit-confirmation .edit-diff-page__cards article, .edit-confirmation .edit-diff-summary article { grid-template-columns: minmax(0, 1fr); }
  .result-ceremony { grid-template-columns: minmax(0, 1fr); }
  .result-ceremony__seal { justify-self: center; inline-size: 4.3rem; block-size: 4.3rem; }
}

@media (max-width: 30rem) {
  .edit-ledger-shell { border-radius: .7rem; }
  .edit-ledger-heading { grid-template-columns: minmax(0, 1fr); padding: .8rem; }
  .edit-ledger-heading > span { display: none; }
  .edit-ledger-heading output { grid-column: auto; }
  .edit-ledger-route, .edit-diff-ledger > nav { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .edit-ledger-route button:nth-child(2n), .edit-diff-ledger > nav button:nth-child(2n) { border-inline-end: 0; }
  .edit-ledger-route button:nth-child(3), .edit-diff-ledger > nav button:nth-child(3) { border-inline-end: 1px solid #e1eaed; }
  .edit-ledger-route button:nth-child(-n+4), .edit-diff-ledger > nav button:nth-child(-n+4) { border-block-end: 1px solid #e1eaed; }
  .edit-ledger-pages { padding: .55rem; }
  .edit-ledger-page__heading { grid-template-columns: 2.3rem minmax(0, 1fr); padding: .62rem; }
  .edit-ledger-page__heading > span { inline-size: 2.3rem; block-size: 2.3rem; }
  .edit-ledger-page__heading output { grid-column: 2; justify-self: start; }
  .edit-ledger-round, .edit-ledger-result-panel { padding: .58rem; }
  .edit-ledger-diff > div { grid-template-columns: minmax(0, 1fr); }
  .edit-ledger-diff > div > i { justify-self: center; transform: rotate(90deg); }
  .edit-ledger-controls { grid-template-columns: 1fr 1fr; }
  .edit-ledger-controls > span { grid-column: 1 / -1; grid-row: 1; }
  .edit-ledger-controls > button { inline-size: 100%; }
  .edit-ledger-review-intro { grid-template-columns: minmax(0, 1fr); text-align: center; }
  .edit-ledger-review-intro > span { justify-self: center; }
  .edit-confirmation:has([data-server-diff-ledger]) { inline-size: calc(100vw - 1rem); max-block-size: calc(100vh - 1rem); }
  .edit-diff-list:has([data-server-diff-ledger]) { padding: .45rem; }
  .edit-diff-ledger__pages { padding: .48rem; }
  .edit-diff-ledger > footer { grid-template-columns: 1fr 1fr; }
  .edit-diff-ledger > footer > span { grid-column: 1 / -1; grid-row: 1; }
  .edit-diff-ledger > footer .button { inline-size: 100%; }
  .chat-system-notice { grid-template-columns: minmax(0, 1fr); padding: .68rem; }
  .chat-system-notice__mark { inline-size: 1.85rem; block-size: 1.85rem; }
  .chat-system-notice article header { padding-inline-end: 0; }
  .chat-system-notice::after { inset: .78rem .7rem auto auto; font-size: .42rem; }
  .chat-system-notice li { font-size: .66rem; }
  .result-ceremony { margin-block: .7rem; padding: .9rem .72rem; }
  .result-ceremony p { font-size: .72rem; }
  .result-ceremony blockquote { font-size: .69rem; }
  .pass-certificate-ceremony { margin-inline: .75rem; }
}

/* 紧凑批量裁决台：行内只编辑，两列在表头分别批量保存。 */
.record-table-panel--decisions .table-wrap { max-inline-size: 100%; overscroll-behavior-inline: contain; }
.record-table-panel--decisions table { min-inline-size: 62rem; }
.record-table-panel--decisions th,
.record-table-panel--decisions td { padding-inline: .36rem; }
.record-batch-column-heading { min-inline-size: 6.2rem; vertical-align: top; }
.record-batch-column-heading:has([data-batch-heading="retest"]) { min-inline-size: 10.5rem; }
.record-batch-heading { display: grid; gap: .18rem; min-inline-size: 0; }
.record-batch-heading__label { color: #546c78; font-size: .57rem; font-weight: 790; letter-spacing: .04em; white-space: nowrap; }
.record-batch-save { display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: center; gap: .16rem .28rem; min-inline-size: 0; }
.record-batch-save > button { display: inline-flex; align-items: center; justify-content: center; gap: .25rem; min-block-size: 1.72rem; padding: .25rem .42rem; color: #f7fcfd; background: #174e67; border: 1px solid #174e67; border-radius: .32rem; cursor: pointer; font: inherit; font-size: .54rem; font-weight: 790; white-space: nowrap; }
.record-batch-save > button > b { display: grid; place-items: center; min-inline-size: 1.05rem; block-size: 1.05rem; padding-inline: .18rem; color: #174e67; background: #fff; border-radius: 999px; font-size: .48rem; }
.record-batch-save > button:disabled { color: #80919a; background: #edf2f4; border-color: #d3dee3; cursor: not-allowed; }
.record-batch-save > button:disabled > b { color: #80919a; background: #dce5e9; }
.record-batch-save > output { min-inline-size: 0; overflow: hidden; color: #758993; font-size: .47rem; font-weight: 670; text-overflow: ellipsis; white-space: nowrap; }
.record-batch-save > output[data-tone="busy"] { color: #8b5e0b; }
.record-batch-save > output[data-tone="success"] { color: #176c55; }
.record-batch-save > output[data-tone="error"] { grid-column: 1 / -1; color: #9b313b; white-space: normal; }
.record-batch-save > button:focus-visible { outline: 3px solid rgba(24, 126, 166, .25); outline-offset: 2px; }
.record-decision-cell { min-inline-size: 6.2rem; vertical-align: top; }
.record-decision-cell--retest { min-inline-size: 10.5rem; }
.record-decision-cell > .final-decision-stamp { margin: .25rem 0 0; }
.record-decision-form { --decision-color: #675787; --decision-soft: #f3f0fa; --decision-control: #e9e4f5; display: grid; gap: .2rem; min-inline-size: 5.85rem; padding: .2rem .2rem .2rem .3rem; background: var(--decision-soft); border: 1px solid color-mix(in srgb, var(--decision-color) 34%, #dce6ea); border-radius: .38rem; box-shadow: inset 3px 0 var(--decision-color); transition: background-color 120ms ease, border-color 120ms ease, box-shadow 120ms ease; }
.record-decision-form--retest { min-inline-size: 10.1rem; }
.record-decision-form--processing[data-decision-state="pending"] { --decision-color: #985800; --decision-soft: #fff2c8; --decision-control: #ffe39a; }
.record-decision-form--processing[data-decision-state="completed"] { --decision-color: #17664f; --decision-soft: #e8f6ef; --decision-control: #cfeadb; }
.record-decision-form--retest[data-decision-state="pending"] { --decision-color: #655191; --decision-soft: #f1edfa; --decision-control: #e1d9f3; }
.record-decision-form--retest[data-decision-state="allowed"] { --decision-color: #16617f; --decision-soft: #e8f4f8; --decision-control: #cde7f0; }
.record-decision-form--retest[data-decision-state="denied"] { --decision-color: #9a3039; --decision-soft: #fff0f1; --decision-control: #f5d5d8; }
.record-decision-form.is-dirty { border-color: var(--decision-color); box-shadow: inset 3px 0 var(--decision-color), 0 0 0 2px color-mix(in srgb, var(--decision-color) 14%, transparent); }
.record-decision-select { position: relative; display: block; min-inline-size: 0; }
.record-decision-select select { inline-size: 100%; min-block-size: 1.92rem; padding: .3rem 1.35rem .3rem .45rem; appearance: none; color: var(--decision-color); background: var(--decision-control); border: 1px solid color-mix(in srgb, var(--decision-color) 46%, #b8c8cf); border-radius: .3rem; font-size: .64rem; font-weight: 820; cursor: pointer; }
.record-decision-select > .icon { position: absolute; inset: 50% .42rem auto auto; inline-size: .6rem; color: var(--decision-color); pointer-events: none; transform: translateY(-50%) rotate(90deg); }
.record-decision-form > small { display: none; color: color-mix(in srgb, var(--decision-color) 82%, #526b77); font-size: .48rem; font-weight: 720; line-height: 1.25; }
.record-decision-form.is-dirty > small { display: block; }
.record-decision-select select:focus-visible,
.record-retest-followup input:focus-visible + span,
.record-decision-fallback-save:focus-visible { outline: 3px solid rgba(24, 126, 166, .26); outline-offset: 2px; }
.record-retest-followup { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .15rem; min-inline-size: 0; margin: 0; padding: 0; border: 0; }
.record-retest-followup[hidden] { display: none; }
.record-retest-followup label { position: relative; min-inline-size: 0; cursor: pointer; }
.record-retest-followup input { position: absolute; inline-size: 1px; block-size: 1px; opacity: 0; pointer-events: none; }
.record-retest-followup span { display: grid; place-items: center; min-block-size: 1.82rem; padding: .18rem .1rem; color: #647781; text-align: center; background: #f4f7f8; border: 1px solid #d5e0e4; border-radius: .27rem; font-size: .48rem; font-weight: 760; line-height: 1.16; }
.record-retest-followup input[value="pending"]:checked + span { color: #8b5f0c; background: #fff7df; border-color: #e1ca91; }
.record-retest-followup input[value="success"]:checked + span { color: #0f684b; background: #dff4e9; border-color: #86c7ad; }
.record-retest-followup input[value="failed"]:checked + span { color: #962d36; background: #ffe9eb; border-color: #dfa4aa; }
.record-decision-fallback-save { min-block-size: 2.2rem; color: #fff; background: var(--decision-color); border: 0; border-radius: .32rem; font-size: .6rem; font-weight: 760; }
.record-decision-static,
.retest-decision-badge { display: inline-flex; align-items: center; gap: .35rem; min-block-size: 1.92rem; padding: .3rem .42rem; border: 1px solid; border-radius: .36rem; }
.record-decision-static > .icon,
.retest-decision-badge > .icon { flex: 0 0 auto; inline-size: .72rem; }
.record-decision-static > span,
.retest-decision-badge > span,
.retest-decision-readonly { display: grid; gap: .05rem; }
.record-decision-static b,
.retest-decision-badge b { font-size: .61rem; line-height: 1.2; }
.record-decision-static small,
.retest-decision-badge small { font-size: .46rem; line-height: 1.2; }
.record-decision-static--neutral { color: #72858e; background: #f4f7f8; border-color: #dbe4e8; }
.retest-decision-badge--allowed { color: #1b6785; background: #eaf6fa; border-color: #b5d7e3; }
.retest-decision-badge--denied { color: #9d3039; background: #fff0f1; border-color: #ebc1c5; }
.retest-decision-badge--pending { color: #92610c; background: #fff7df; border-color: #ead6a3; }
.retest-followup-readonly { padding-inline: .15rem; color: #71848d; font-size: .48rem; font-weight: 710; }
.retest-followup-readonly--success { color: #176c55; }
.retest-followup-readonly--failed { color: #9d3039; }
.processing-drawer--without-log { grid-template-columns: minmax(16rem, 34rem); }

/* 二次通关采用金绿礼成视觉；2X 金色封签是区别于首次结果的固定识别。 */
.retest-review-receipt { --review-green: #174f3c; --review-gold: #c79a35; overflow: hidden; color: #23463b; background: #fbfdf9; border: 1px solid #b9d2c5; border-radius: .66rem; box-shadow: 0 13px 30px rgba(17, 75, 54, .1); }
.retest-review-receipt > header { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: .65rem; padding: .78rem; background: linear-gradient(110deg, #edf7f0, #fffcf2); border-block-end: 1px solid #ccddcf; }
.retest-review-receipt__seal { display: grid; place-items: center; inline-size: 2.55rem; block-size: 2.55rem; color: #173f31; background: linear-gradient(145deg, #f4d778, #c8972f); border: 1px solid #b38627; border-radius: 50%; font: 860 1rem/1 "Bahnschrift", sans-serif; letter-spacing: -.03em; box-shadow: inset 0 0 0 3px rgba(255, 250, 218, .42), 0 4px 10px rgba(122, 88, 17, .18); }
.retest-review-receipt__seal small { margin-block-start: -.28rem; font-size: .35rem; letter-spacing: .08em; }
.retest-review-receipt > header > div { min-inline-size: 0; }
.retest-review-receipt > header > div > small { color: #618272; font: 760 .47rem/1.2 "Bahnschrift", sans-serif; letter-spacing: .1em; }
.retest-review-receipt h2 { margin: .08rem 0; color: #174b39; font-size: .76rem; line-height: 1.25; }
.retest-review-receipt header p { margin: 0; color: #698077; font-size: .55rem; line-height: 1.45; }
.retest-review-receipt header em { display: inline-flex; align-items: center; gap: .24rem; padding: .28rem .4rem; color: #fff8db; background: var(--review-green); border: 1px solid rgba(221, 184, 83, .42); border-radius: 999px; font-size: .5rem; font-style: normal; font-weight: 800; white-space: nowrap; }
.retest-review-receipt header em .icon { inline-size: .62rem; }
.retest-review-receipt__notice { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: .5rem; margin: .68rem .78rem 0; padding: .55rem .62rem; color: #265843; background: #edf8f1; border: 1px solid #badbc9; border-inline-start: 3px solid var(--review-gold); border-radius: .4rem; }
.retest-review-receipt__notice b { font-size: .62rem; white-space: nowrap; }
.retest-review-receipt__notice span { color: #587265; font-size: .57rem; line-height: 1.48; }
.retest-review-receipt__expiry { display: flex; align-items: center; gap: .5rem; margin: .65rem .78rem; color: #285945; }
.retest-review-receipt__expiry > .icon { inline-size: .85rem; }
.retest-review-receipt__expiry > span { display: grid; gap: .06rem; }
.retest-review-receipt__expiry b { font-size: .62rem; }
.retest-review-receipt__expiry small { color: #718893; font-size: .52rem; }
.retest-review-receipt__actions { display: grid; grid-template-columns: minmax(0, 1fr) auto auto; gap: .35rem; margin: 0; padding: 0 .78rem .72rem; }
.retest-review-receipt__actions input { min-inline-size: 0; inline-size: 100%; min-block-size: 2.35rem; font-size: .57rem; }
.retest-review-receipt__actions .button { min-block-size: 2.35rem; padding-inline: .55rem; font-size: .56rem; white-space: nowrap; }
.retest-review-receipt > footer { display: flex; align-items: center; gap: .48rem; padding: .58rem .78rem; color: #f8edc6; background: var(--review-green); border-block-start: 2px solid var(--review-gold); }
.retest-review-receipt > footer > .icon { flex: 0 0 auto; inline-size: .78rem; }
.retest-review-receipt > footer > span { display: grid; gap: .05rem; }
.retest-review-receipt > footer b { font-size: .58rem; }
.retest-review-receipt > footer small { color: #b9d3c6; font-size: .49rem; line-height: 1.4; }
.retest-review-receipt--internal { margin-block: .75rem; }
.retest-review-receipt--internal > header { grid-template-columns: auto minmax(0, 1fr); }
.retest-review-receipt--internal header em { grid-column: 1 / -1; justify-self: start; }
.retest-review-receipt--internal .retest-review-receipt__actions { grid-template-columns: minmax(0, 1fr) auto; }
.retest-review-receipt--internal .retest-review-receipt__actions a { grid-column: 1 / -1; }
.retest-review-receipt--public { margin-block: .85rem; }

.retest-review-body { min-block-size: 100vh; color: #24483c; background: radial-gradient(circle at 50% 0, rgba(210, 181, 91, .22), transparent 28rem), radial-gradient(circle at 15% 25%, rgba(89, 158, 121, .22), transparent 30rem), #eaf3ed; }
.retest-review-page { inline-size: min(calc(100% - 2rem), 48rem); margin-inline: auto; padding-block: 1rem 2.5rem; }
.retest-review-brand { display: flex; align-items: center; gap: .65rem; padding: .68rem .8rem; background: rgba(255, 255, 255, .9); border: 1px solid #c8dbcf; border-radius: .62rem; }
.retest-review-brand img { inline-size: 2.15rem; block-size: 2.15rem; object-fit: cover; border-radius: .45rem; }
.retest-review-brand > span { display: grid; }
.retest-review-brand b { font-size: .76rem; }
.retest-review-brand small { color: #718893; font-size: .54rem; }
.retest-review-brand em { display: inline-flex; align-items: center; gap: .3rem; margin-inline-start: auto; color: #1d674b; font-size: .57rem; font-style: normal; font-weight: 780; }
.retest-review-brand em .icon { inline-size: .75rem; }
.retest-review-card { position: relative; margin-block-start: .8rem; overflow: hidden; background: #fff; border: 1px solid #b8d2c3; border-radius: .82rem; box-shadow: 0 24px 60px rgba(15, 69, 49, .15); }
.retest-review-card::before { position: absolute; inset: 0 0 auto; block-size: .28rem; content: ''; background: linear-gradient(90deg, #174f3c 0 74%, #d0a43f 74%); }
.retest-review-card__seal { position: absolute; inset: 1.25rem 1.25rem auto auto; display: grid; place-items: center; inline-size: 4.6rem; block-size: 4.6rem; color: #f2d477; background: rgba(239, 209, 112, .08); border: 2px solid rgba(232, 199, 94, .68); border-radius: 50%; font: 870 1.75rem/1 "Bahnschrift", sans-serif; box-shadow: inset 0 0 0 4px rgba(238, 206, 104, .09); transform: rotate(7deg); }
.retest-review-card__seal small { margin-block-start: -.55rem; font-size: .42rem; letter-spacing: .1em; }
.retest-review-card > header { padding: 1.5rem 7rem 1.15rem 1.35rem; color: #edf7f1; background: linear-gradient(112deg, #123f31, #1b5b43); }
.retest-review-card > header > small { color: #a8ccb9; font: 760 .55rem/1.2 "Bahnschrift", sans-serif; letter-spacing: .13em; }
.retest-review-card h1 { max-inline-size: 26rem; margin: .32rem 0 .38rem; color: #fff; font-size: clamp(1.25rem, 3.4vw, 2rem); line-height: 1.16; letter-spacing: -.03em; }
.retest-review-card > header p { max-inline-size: 28rem; margin: 0; color: #c3dacd; font-size: .68rem; line-height: 1.6; }
.retest-review-card > header strong { display: inline-flex; align-items: center; gap: .35rem; margin-block-start: .72rem; padding: .38rem .55rem; color: #fff0b7; background: rgba(202, 157, 54, .18); border: 1px solid rgba(236, 204, 109, .42); border-radius: .35rem; font-size: .6rem; }
.retest-review-card > header strong .icon { inline-size: .75rem; }
.retest-review-order { display: grid; grid-template-columns: 1fr auto; grid-template-areas: "label state" "code state"; align-items: center; gap: .1rem 1rem; padding: 1rem 1.25rem; background: #f0f7f2; border-block-end: 1px solid #d2e1d7; }
.retest-review-order small { grid-area: label; color: #6f8994; font-size: .55rem; font-weight: 700; letter-spacing: .08em; }
.retest-review-order b { grid-area: code; color: #1b4a39; font: 800 1rem/1.2 "Bahnschrift", sans-serif; letter-spacing: .05em; }
.retest-review-order span { grid-area: state; padding: .35rem .52rem; color: #205b43; background: #e5f4eb; border: 1px solid #add3bd; border-radius: 999px; font-size: .58rem; font-weight: 780; }
.retest-review-participants { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .65rem; padding: 1rem 1.25rem .45rem; }
.retest-review-participants article { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: .58rem; padding: .7rem; background: #f8fbfc; border: 1px solid #d9e5e9; border-radius: .52rem; }
.retest-review-participants article > span { display: grid; place-items: center; inline-size: 1.8rem; block-size: 1.8rem; color: #fff7d7; background: #1c5d45; border: 1px solid #c6a14d; border-radius: .36rem; font: 780 .58rem/1 "Bahnschrift", sans-serif; }
.retest-review-participants article > div { display: grid; min-inline-size: 0; }
.retest-review-participants small { color: #7a8e97; font-size: .5rem; }
.retest-review-participants b { overflow: hidden; color: #173e50; font-size: .7rem; text-overflow: ellipsis; white-space: nowrap; }
.retest-review-participants em { color: #237052; font-size: .62rem; font-style: normal; font-weight: 780; }
.retest-review-facts { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin: .55rem 1.25rem 1rem; overflow: hidden; border: 1px solid #d5e3e8; border-radius: .52rem; }
.retest-review-facts > div { padding: .72rem; border-inline-end: 1px solid #dce7eb; }
.retest-review-facts > div:last-child { border-inline-end: 0; }
.retest-review-facts dt { color: #758b95; font-size: .52rem; }
.retest-review-facts dd { margin: .15rem 0 0; color: #143e51; font-size: .72rem; font-weight: 790; }
.retest-review-facts .is-expiry dd { color: #8a691d; font-size: .62rem; }
.retest-review-service-seal { display: flex; align-items: center; gap: .55rem; margin: 0 1.25rem 1rem; padding: .65rem .72rem; color: #496976; background: #f3f7f8; border: 1px solid #dce6e9; border-radius: .48rem; }
.retest-review-service-seal > .icon { flex: 0 0 auto; inline-size: .84rem; }
.retest-review-service-seal > span { display: grid; }
.retest-review-service-seal b { font-size: .62rem; }
.retest-review-service-seal small { color: #7b8e96; font-size: .54rem; line-height: 1.45; }
.retest-review-card > footer { display: flex; align-items: center; justify-content: center; gap: .55rem; padding: .9rem 1rem; color: #fff0b8; text-align: center; background: #174f3c; border-block-start: 2px solid #cda13d; }
.retest-review-card > footer > .icon { inline-size: .9rem; }
.retest-review-card > footer > span { display: grid; gap: .05rem; }
.retest-review-card > footer b { font-size: .67rem; }
.retest-review-card > footer small { color: #b9d4c6; font-size: .54rem; }
.retest-review-footnote { margin: .8rem 0 0; color: #78909a; text-align: center; font-size: .54rem; }

/* 阿伟专用申诉原因阅读页：只保留正文与最小订单定位信息。 */
.appeal-reason-reader { inline-size: min(100%, 54rem); margin-inline: auto; overflow: hidden; background: rgba(255, 255, 255, .88); border: 1px solid #c9dbe3; border-radius: .82rem; box-shadow: 0 18px 46px rgba(12, 52, 73, .08); }
.appeal-reason-reader > header { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: .8rem; padding: 1rem 1.1rem; background: linear-gradient(110deg, #f5fbfd, #e7f3f7); border-block-end: 1px solid #ccdde4; }
.appeal-reason-reader__mark { display: grid; place-items: center; inline-size: 2.6rem; block-size: 2.6rem; color: #fff; background: #175c78; border-radius: .6rem; }
.appeal-reason-reader__mark .icon { inline-size: 1.15rem; }
.appeal-reason-reader > header > div { min-inline-size: 0; }
.appeal-reason-reader > header small { color: #4d7d90; font: 760 .56rem/1.2 "Bahnschrift", sans-serif; letter-spacing: .12em; }
.appeal-reason-reader > header h2 { margin: .14rem 0; color: #153b4f; font-size: 1rem; }
.appeal-reason-reader > header p { margin: 0; color: #607d8a; font-size: .68rem; line-height: 1.55; }
.appeal-reason-reader > header > b { align-self: start; padding: .34rem .52rem; color: #fff; background: #153b4f; border-radius: 999px; font-size: .62rem; }
.appeal-reason-list { display: grid; gap: .7rem; padding: .85rem; }
.appeal-reason-card { overflow: hidden; background: #fff; border: 1px solid #dce6ea; border-inline-start: 4px solid #2c86a5; border-radius: .58rem; }
.appeal-reason-card > header { display: flex; align-items: center; justify-content: space-between; gap: .75rem; padding: .68rem .78rem; background: #f7fafb; border-block-end: 1px solid #e3eaed; }
.appeal-reason-card > header > span { display: grid; gap: .08rem; }
.appeal-reason-card > header small { color: #7a8d96; font-size: .52rem; }
.appeal-reason-card > header b { color: #183e51; font: 780 .7rem/1.2 "Bahnschrift", sans-serif; letter-spacing: .04em; }
.appeal-reason-card > header em { color: #50717f; font-size: .61rem; font-style: normal; font-weight: 720; }
.appeal-reason-copy { padding: .85rem .9rem; }
.appeal-reason-copy > small { color: #2a7894; font-size: .58rem; font-weight: 780; letter-spacing: .08em; }
.appeal-reason-copy > p { margin: .38rem 0 0; color: #294654; font-size: .78rem; line-height: 1.78; overflow-wrap: anywhere; }
.appeal-reason-card > footer { padding: .52rem .9rem; color: #83939b; background: #fbfcfc; border-block-start: 1px solid #edf1f3; font-size: .55rem; }
.appeal-reason-empty { display: flex; align-items: center; justify-content: center; gap: .65rem; min-block-size: 9rem; color: #71858f; }
.appeal-reason-empty > .icon { inline-size: 1.25rem; }
.appeal-reason-empty > span { display: grid; gap: .08rem; }
.appeal-reason-empty b { color: #365563; font-size: .76rem; }
.appeal-reason-empty small { font-size: .6rem; }

@media (max-width: 48rem) {
  .record-table-panel { max-inline-size: 100%; }
  .record-table-panel .table-wrap { inline-size: 100%; overflow: visible; }
  .record-table-panel table { display: block; min-inline-size: 0; }
  .record-table-panel thead { position: absolute; inline-size: 1px; block-size: 1px; padding: 0; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }
  .record-table-panel thead:has(.record-batch-save) { position: static; display: block; inline-size: auto; block-size: auto; overflow: visible; clip: auto; white-space: normal; background: #f0f6f8; border-block-end: 1px solid #d3e1e6; }
  .record-table-panel thead:has(.record-batch-save) tr { display: grid; grid-template-columns: repeat(auto-fit, minmax(9rem, 1fr)); gap: .45rem; padding: .55rem .62rem; }
  .record-table-panel thead:has(.record-batch-save) th { display: none; }
  .record-table-panel thead:has(.record-batch-save) .record-batch-column-heading:has(.record-batch-save) { display: block; min-inline-size: 0; padding: .45rem; background: rgba(255, 255, 255, .86); border: 1px solid #d5e2e7; border-radius: .46rem; }
  .record-table-panel .record-batch-heading { gap: .3rem; }
  .record-table-panel .record-batch-heading__label { font-size: .62rem; }
  .record-table-panel .record-batch-save { grid-template-columns: minmax(0, 1fr); gap: .24rem; }
  .record-table-panel .record-batch-save > button { min-block-size: 2.75rem; font-size: .65rem; }
  .record-table-panel .record-batch-save > output { font-size: .54rem; white-space: normal; }
  .record-table-panel tbody { display: grid; gap: .62rem; padding: .62rem; }
  .record-table-panel tr.record-data-row { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0; overflow: hidden; background: #fff; border: 1px solid #d6e2e7; border-inline-start: 4px solid #2a7998; border-radius: .62rem; box-shadow: 0 8px 22px rgba(14, 50, 69, .06); }
  .record-table-panel tr.record-data-row.is-final-decision { border-inline-start-color: #18394b; }
  .record-table-panel tr.record-data-row > td { display: grid; align-content: start; gap: .3rem; min-inline-size: 0; padding: .62rem !important; white-space: normal; border: 0; border-block-end: 1px solid #e8eef0; }
  .record-table-panel tr.record-data-row > td:nth-child(odd) { border-inline-end: 1px solid #e8eef0; }
  .record-table-panel tr.record-data-row > td::before { color: #778c96; content: attr(data-label); font-size: .53rem; font-weight: 740; letter-spacing: .04em; }
  .record-table-panel .record-cell--identity,
  .record-table-panel .record-cell--player,
  .record-table-panel .record-decision-cell,
  .record-table-panel .record-cell--action { grid-column: 1 / -1; border-inline-end: 0 !important; }
  .record-table-panel .record-cell--identity { grid-template-columns: 1fr auto; align-items: center; background: #f3f8fa; }
  .record-table-panel .record-cell--identity::before { grid-column: 1 / -1; }
  .record-table-panel .record-cell--identity small { margin: 0; text-align: end; }
  .record-table-panel .record-cell--player { background: #fbfcfc; }
  .record-table-panel .score-meter { min-inline-size: 0; }
  .record-table-panel .record-decision-cell { min-inline-size: 0; background: #fbfcfc; }
  .record-table-panel .record-decision-form { inline-size: 100%; min-inline-size: 0; padding: .28rem; }
  .record-table-panel .record-decision-select select { min-block-size: 2.75rem; padding-inline: .62rem 2rem; font-size: .72rem; }
  .record-table-panel .record-decision-select > .icon { inset-inline-end: .68rem; inline-size: .72rem; }
  .record-table-panel .record-retest-followup { gap: .28rem; }
  .record-table-panel .record-retest-followup span { min-block-size: 2.75rem; padding: .28rem .18rem; font-size: .57rem; line-height: 1.22; }
  .record-table-panel .record-decision-form > small { font-size: .55rem; }
  .record-table-panel .record-decision-static,
  .record-table-panel .retest-decision-badge { inline-size: 100%; }
  .record-table-panel .record-cell--action { border-block-end: 0 !important; }
  .record-table-panel .record-action-stack,
  .record-table-panel .record-cell--action .text-link { inline-size: 100%; }
  .record-table-panel .record-cell--action .text-link { justify-content: space-between; min-block-size: 2.75rem; padding-inline: .68rem; background: #edf5f8; border-radius: .42rem; }
  .record-table-panel tr.confidential-record-row { display: grid; gap: 0; margin: 0; overflow: hidden; background: #fff; border: 1px solid #dbe5e9; border-radius: .55rem; }
  .record-table-panel tr.confidential-record-row > td { display: none; padding: .62rem !important; white-space: normal; border: 0; }
  .record-table-panel tr.confidential-record-row > td:first-child,
  .record-table-panel tr.confidential-record-row > td:nth-child(2) { display: block; }
  .record-table-panel tr.confidential-record-row > td:first-child { border-block-end: 1px solid #e8eef0; }
  .appeal-reason-reader > header { grid-template-columns: auto minmax(0, 1fr); padding: .82rem; }
  .appeal-reason-reader > header > b { grid-column: 2; justify-self: start; }
  .appeal-reason-list { padding: .62rem; }
  .retest-review-receipt > header { grid-template-columns: auto minmax(0, 1fr); }
  .retest-review-receipt header em { grid-column: 1 / -1; justify-self: start; }
  .retest-review-receipt__actions { grid-template-columns: minmax(0, 1fr) auto; }
  .retest-review-receipt__actions a { grid-column: 1 / -1; }
  .retest-review-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .retest-review-facts > div:nth-child(2) { border-inline-end: 0; }
  .retest-review-facts > div:nth-child(-n+2) { border-block-end: 1px solid #dce7eb; }
}

@media (max-width: 24.5rem) {
  .record-table-panel thead:has(.record-batch-save) tr { grid-template-columns: minmax(0, 1fr); }
  .retest-review-receipt__notice { grid-template-columns: minmax(0, 1fr); }
  .retest-review-receipt__actions,
  .retest-review-receipt--internal .retest-review-receipt__actions { grid-template-columns: minmax(0, 1fr); }
  .retest-review-receipt__actions .button,
  .retest-review-receipt--internal .retest-review-receipt__actions a { grid-column: auto; inline-size: 100%; min-block-size: 2.75rem; }
  .retest-review-page { inline-size: min(calc(100% - 1rem), 48rem); padding-block-start: .5rem; }
  .retest-review-brand { padding: .55rem .62rem; }
  .retest-review-brand em { font-size: 0; }
  .retest-review-brand em .icon { inline-size: .85rem; }
  .retest-review-card__seal { inset: 1rem .8rem auto auto; inline-size: 3.25rem; block-size: 3.25rem; font-size: 1.2rem; }
  .retest-review-card__seal small { font-size: .32rem; }
  .retest-review-card > header { padding: 1.2rem 4.5rem .95rem .85rem; }
  .retest-review-card h1 { font-size: 1.2rem; }
  .retest-review-card > header p { font-size: .62rem; }
  .retest-review-order { grid-template-columns: minmax(0, 1fr); grid-template-areas: "label" "code" "state"; padding: .8rem; }
  .retest-review-order span { justify-self: start; margin-block-start: .35rem; }
  .retest-review-participants { grid-template-columns: minmax(0, 1fr); padding: .75rem .8rem .35rem; }
  .retest-review-facts { margin: .45rem .8rem .8rem; }
  .retest-review-facts > div { padding: .58rem; }
  .retest-review-service-seal { align-items: flex-start; margin: 0 .8rem .8rem; }
  .appeal-reason-reader { border-radius: .62rem; }
  .appeal-reason-reader > header { grid-template-columns: minmax(0, 1fr); }
  .appeal-reason-reader__mark { inline-size: 2.25rem; block-size: 2.25rem; }
  .appeal-reason-reader > header > b { grid-column: auto; }
  .appeal-reason-card > header { align-items: flex-start; flex-direction: column; }
  .appeal-reason-copy { padding: .74rem; }
  .appeal-reason-copy > p { font-size: .74rem; }
}

/* 申诉查看后台：冷静可信的双人身份核验回执。 */
.appeal-status-body { min-block-size: 100vh; margin: 0; color: #173442; background: #eef3f4; }
.appeal-status-body::before { position: fixed; z-index: -1; inset: 0 0 auto; block-size: 13rem; background: #0d2d3c; content: ""; }
.appeal-status-page { inline-size: min(calc(100% - 2rem), 52rem); margin-inline: auto; padding: 1rem 0 2rem; }
.appeal-status-page > footer { margin-block-start: 1rem; color: #6e858e; text-align: center; font-size: .68rem; letter-spacing: .04em; }
.appeal-status-brand { display: flex; align-items: center; justify-content: space-between; min-block-size: 3.25rem; padding: .4rem .5rem .4rem .42rem; color: #d8e8ec; background: #0d2d3c; border-block-end: 1px solid rgba(224, 240, 244, .18); }
.appeal-status-brand > a { display: inline-flex; align-items: center; gap: .6rem; min-inline-size: 0; color: inherit; text-decoration: none; }
.appeal-status-brand img { inline-size: 2rem; block-size: 2rem; object-fit: cover; border: 1px solid rgba(255,255,255,.38); border-radius: .34rem; }
.appeal-status-brand a > span { display: grid; gap: .05rem; }
.appeal-status-brand b { color: #fff; font-size: .88rem; }
.appeal-status-brand small { color: #9fc1cc; font: 650 .6rem/1.2 "Bahnschrift", sans-serif; letter-spacing: .11em; }
.appeal-status-brand > div > button { display: inline-flex; align-items: center; gap: .34rem; min-block-size: 2.75rem; padding: .45rem .66rem; color: #d8e8ec; background: transparent; border: 1px solid rgba(216, 232, 236, .25); border-radius: .42rem; font: inherit; font-size: .72rem; font-weight: 700; cursor: pointer; }
.appeal-status-brand > div > button:hover { color: #fff; border-color: rgba(255,255,255,.55); }
.appeal-status-brand > div > button:focus-visible { outline: 3px solid #e6bd62; outline-offset: 2px; }
.appeal-status-brand .icon { inline-size: .76rem; }
.appeal-status-hero { display: flex; align-items: flex-end; justify-content: space-between; gap: 1.2rem; min-block-size: 9rem; padding: 1.25rem .75rem 1.55rem; color: #fff; background: #0d2d3c; }
.appeal-status-hero > div { max-inline-size: 34rem; }
.appeal-status-hero > div > small { color: #8dccd9; font-size: .68rem; font-weight: 760; letter-spacing: .1em; }
.appeal-status-hero h1 { margin: .32rem 0 .38rem; color: #fff; font-size: clamp(1.55rem, 4vw, 2.15rem); line-height: 1.12; letter-spacing: -.035em; }
.appeal-status-hero p { margin: 0; color: #c8dbe1; font-size: .84rem; line-height: 1.72; }
.appeal-status-hero > span { display: inline-flex; flex: 0 0 auto; align-items: center; gap: .32rem; padding: .48rem .58rem; color: #f0cc7b; border: 1px solid rgba(231,191,104,.62); border-radius: .38rem; font-size: .7rem; font-weight: 760; }
.appeal-status-hero > span .icon { inline-size: .72rem; }
.appeal-status-card { overflow: hidden; background: #fff; border: 1px solid #cfdbdf; border-radius: .72rem; box-shadow: 0 18px 50px rgba(10, 39, 53, .12); }
.appeal-identity-lock { display: grid; grid-template-columns: auto minmax(1.2rem, 1fr) auto minmax(1.2rem, 1fr) auto; align-items: center; padding: .75rem 1rem; color: #173c4a; background: #f4f8f9; border-block-end: 1px solid #d8e3e6; }
.appeal-identity-lock > span { display: flex; align-items: center; gap: .38rem; }
.appeal-identity-lock > span > i { display: grid; place-items: center; inline-size: 1.7rem; block-size: 1.7rem; color: #fff; background: #286f7e; border-radius: .34rem; font: 760 .54rem/1 "Bahnschrift", sans-serif; }
.appeal-identity-lock > span > b { font-size: .75rem; }
.appeal-identity-lock > i { block-size: 1px; margin-inline: .42rem; background: #aac1c7; }
.appeal-identity-lock > strong { display: grid; place-items: center; gap: .2rem; min-inline-size: 4.5rem; color: #143b48; }
.appeal-identity-lock > strong .icon { inline-size: 1rem; color: #b17a22; }
.appeal-identity-lock > strong small { font-size: .62rem; font-weight: 760; white-space: nowrap; }
.appeal-status-card > form { position: relative; display: grid; gap: .9rem; padding: 1.25rem; }
.appeal-status-card form > header > small { color: #226d7d; font-size: .64rem; font-weight: 800; letter-spacing: .11em; }
.appeal-status-card form > header h2 { margin: .25rem 0 .2rem; color: #153744; font-size: 1.05rem; }
.appeal-status-card form > header p { margin: 0; color: #5f7781; font-size: .78rem; line-height: 1.6; }
.appeal-status-honeypot { position: absolute !important; inset-inline-start: -10000px !important; inline-size: 1px !important; block-size: 1px !important; overflow: hidden !important; }
.appeal-status-fields { display: grid; gap: .82rem; }
.appeal-status-fields .field { display: grid; gap: .3rem; min-inline-size: 0; }
.appeal-status-fields .field > label { color: #244754; font-size: .74rem; font-weight: 740; }
.appeal-status-fields .field > input,
.appeal-status-fields .field > select { inline-size: 100%; min-block-size: 3rem; padding: .62rem .7rem; color: #173744; background: #fbfcfc; border: 1px solid #c7d6da; border-radius: .42rem; font: inherit; font-size: .84rem; outline: 0; }
.appeal-status-fields .field > select { cursor: pointer; }
.appeal-status-fields .field > input::placeholder { color: #91a1a7; }
.appeal-status-fields .field > input:hover,
.appeal-status-fields .field > select:hover { border-color: #8facb4; }
.appeal-status-fields .field > input:focus,
.appeal-status-fields .field > select:focus { border-color: #1d6c7e; box-shadow: 0 0 0 3px rgba(29,108,126,.14); }
.appeal-status-id-field { padding: .72rem; background: #f5f9fa; border: 1px solid #d5e1e4; border-radius: .52rem; }
.appeal-status-id-field > small { color: #607983; font-size: .68rem; line-height: 1.45; }
.appeal-status-fields fieldset { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .65rem; min-inline-size: 0; margin: 0; padding: 0; border: 0; }
.appeal-status-fields fieldset > legend { grid-column: 1 / -1; inline-size: 100%; margin-block-end: .04rem; color: #244754; font-size: .76rem; font-weight: 760; }
.appeal-status-fields fieldset > legend span { margin-inline-start: .35rem; color: #236f7e; font-size: .66rem; }
.appeal-status-fields fieldset > article { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: .58rem .65rem; min-inline-size: 0; padding: .72rem; border: 1px solid #d4dfe2; border-radius: .52rem; }
.appeal-status-fields fieldset > article > span { grid-row: 1 / span 2; display: grid; place-items: center; align-self: stretch; inline-size: 1.75rem; min-block-size: 3rem; color: #2a7180; background: #edf5f6; border-radius: .34rem; font: 800 .62rem/1 "Bahnschrift", sans-serif; }
.appeal-status-message { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: .62rem; padding: .72rem; color: #426270; background: #f2f7f8; border-inline-start: 3px solid #2c7887; border-radius: .28rem .46rem .46rem .28rem; }
.appeal-status-message--error { color: #743d35; background: #fff5f2; border-inline-start-color: #b84b3b; }
.appeal-status-message > .icon { inline-size: .86rem; margin-block-start: .05rem; }
.appeal-status-message b { display: block; color: inherit; font-size: .78rem; }
.appeal-status-message p { margin: .18rem 0 0; color: inherit; font-size: .72rem; line-height: 1.58; }
.appeal-status-message:focus { outline: 3px solid rgba(184,75,59,.22); outline-offset: 2px; }
.appeal-status-submit { display: flex; align-items: center; justify-content: space-between; gap: .8rem; min-block-size: 3.4rem; inline-size: 100%; padding: .66rem .82rem; color: #fff; text-align: start; background: #153e4d; border: 1px solid #153e4d; border-radius: .48rem; font: inherit; cursor: pointer; }
.appeal-status-submit:hover { background: #0e3341; }
.appeal-status-submit:focus-visible { outline: 3px solid #e2b954; outline-offset: 2px; }
.appeal-status-submit > span { display: grid; gap: .04rem; }
.appeal-status-submit small { color: #95cad5; font-size: .62rem; letter-spacing: .08em; }
.appeal-status-submit b { font-size: .84rem; }
.appeal-status-submit .icon { inline-size: .9rem; }
.appeal-status-result { --appeal-result-color: #a57325; margin-block-start: .85rem; overflow: hidden; background: #fff; border: 1px solid #cfdbdf; border-block-start: 4px solid var(--appeal-result-color); border-radius: .72rem; box-shadow: 0 12px 34px rgba(13, 47, 61, .08); }
.appeal-status-result[data-result-state="allowed"] { --appeal-result-color: #1f7181; }
.appeal-status-result[data-result-state="denied"],
.appeal-status-result[data-result-state="failed"] { --appeal-result-color: #a7473c; }
.appeal-status-result[data-result-state="success"] { --appeal-result-color: #287357; }
.appeal-status-result > header { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: .72rem; padding: 1rem 1.1rem; background: #f7fafb; border-block-end: 1px solid #dce5e8; }
.appeal-status-result > header > span { display: grid; place-items: center; inline-size: 2.45rem; block-size: 2.45rem; color: #fff; background: var(--appeal-result-color); border-radius: .48rem; }
.appeal-status-result > header > span .icon { inline-size: 1rem; }
.appeal-status-result > header > div { display: grid; gap: .1rem; min-inline-size: 0; }
.appeal-status-result > header small { color: #647f89; font-size: .64rem; font-weight: 760; letter-spacing: .07em; }
.appeal-status-result > header h2 { margin: 0; color: #173d4b; font-size: 1.05rem; }
.appeal-status-result > header p { margin: .1rem 0 0; color: #58727d; font-size: .73rem; line-height: 1.5; }
.appeal-status-result > header em { padding: .4rem .52rem; color: var(--appeal-result-color); background: #fff; border: 1px solid currentColor; border-radius: .35rem; font-size: .68rem; font-style: normal; font-weight: 780; white-space: nowrap; }
.appeal-status-timeline { display: grid; gap: 0; margin: 0; padding: .8rem 1.1rem; list-style: none; }
.appeal-status-timeline > li { position: relative; display: grid; grid-template-columns: auto minmax(0, 1fr); gap: .68rem; min-block-size: 4.25rem; padding-block-end: .72rem; }
.appeal-status-timeline > li:last-child { min-block-size: auto; padding-block-end: 0; }
.appeal-status-timeline > li::before { position: absolute; inset: 1.65rem auto -.08rem .82rem; inline-size: 1px; background: #cad8dc; content: ""; }
.appeal-status-timeline > li:last-child::before { display: none; }
.appeal-status-timeline > li > span { z-index: 1; display: grid; place-items: center; inline-size: 1.65rem; block-size: 1.65rem; color: #617984; background: #eef4f5; border: 1px solid #bed0d5; border-radius: .34rem; font: 760 .51rem/1 "Bahnschrift", sans-serif; }
.appeal-status-timeline > li.is-complete > span { color: #fff; background: #277083; border-color: #277083; }
.appeal-status-timeline > li.is-current > span { color: #fff; background: var(--appeal-result-color); border-color: var(--appeal-result-color); box-shadow: 0 0 0 3px color-mix(in srgb, var(--appeal-result-color) 14%, transparent); }
.appeal-status-timeline > li > div { display: grid; gap: .08rem; min-inline-size: 0; padding-block-start: .05rem; }
.appeal-status-timeline small { color: #6c858f; font-size: .64rem; }
.appeal-status-timeline b { color: #274957; font-size: .8rem; }
.appeal-status-timeline time { color: #667f89; font-size: .67rem; }
.appeal-status-result > footer { display: flex; align-items: flex-start; gap: .45rem; padding: .68rem 1.1rem; color: #5b747e; background: #f8fafb; border-block-start: 1px solid #e1e8ea; font-size: .68rem; line-height: 1.55; }
.appeal-status-result > footer .icon { flex: 0 0 auto; inline-size: .75rem; margin-block-start: .04rem; color: #2a7482; }
.appeal-status-pass-link { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: .72rem; margin: 0 1.1rem .9rem; padding: .8rem; background: #f5faf6; border: 1px solid #b9d6c7; border-inline-start: 4px solid #2a7457; border-radius: .52rem; }
.appeal-status-pass-link__seal { display: grid; place-items: center; inline-size: 3rem; block-size: 3rem; color: #f7d98f; background: #1d5e47; border: 2px solid #c99e43; border-radius: 50%; font: 800 1rem/1 "Bahnschrift", sans-serif; box-shadow: inset 0 0 0 3px #1d5e47, inset 0 0 0 4px rgba(246,211,130,.4); }
.appeal-status-pass-link__seal small { margin-block-start: -.5rem; font-size: .36rem; letter-spacing: .08em; }
.appeal-status-pass-link > div:nth-of-type(1) { min-inline-size: 0; }
.appeal-status-pass-link > div > small { color: #607e70; font-size: .62rem; font-weight: 760; }
.appeal-status-pass-link h2 { margin: .12rem 0; color: #1e563f; font-size: .88rem; }
.appeal-status-pass-link p { margin: 0; color: #5f796d; font-size: .69rem; line-height: 1.45; }
.appeal-status-pass-link__expiry { align-self: start; padding: .36rem .45rem; color: #775e25; background: #fffaf0; border: 1px solid #dec992; border-radius: .34rem; font-size: .64rem; white-space: nowrap; }
.appeal-status-pass-link__expiry.is-urgent { color: #8d4335; background: #fff5f1; border-color: #e5b2a8; }
.appeal-status-pass-link__actions { grid-column: 2 / -1; display: grid; grid-template-columns: minmax(0, 1fr) auto auto; gap: .4rem; }
.appeal-status-pass-link__actions input { min-inline-size: 0; min-block-size: 2.75rem; padding: .5rem .6rem; color: #3c5c50; background: #fff; border: 1px solid #cadbd2; border-radius: .38rem; font: inherit; font-size: .68rem; }
.appeal-status-pass-link__actions button,
.appeal-status-pass-link__actions a { display: inline-flex; align-items: center; justify-content: center; gap: .28rem; min-block-size: 2.75rem; padding: .5rem .62rem; color: #1e5c45; text-decoration: none; background: #fff; border: 1px solid #8dbba5; border-radius: .38rem; font: inherit; font-size: .7rem; font-weight: 760; cursor: pointer; }
.appeal-status-pass-link__actions a { color: #fff; background: #23684e; border-color: #23684e; }
.appeal-status-pass-link__actions .icon { inline-size: .72rem; }
.appeal-status-pass-link__actions button:focus-visible,
.appeal-status-pass-link__actions a:focus-visible { outline: 3px solid #e2b954; outline-offset: 2px; }
.appeal-status-pass-link--expired { grid-template-columns: auto minmax(0, 1fr); color: #775b51; background: #fbf7f5; border-color: #dfd1cb; border-inline-start-color: #937063; }
.appeal-status-pass-link--expired > .icon { inline-size: 1.15rem; }
.appeal-status-help { display: flex; align-items: flex-start; gap: .62rem; margin-block-start: .85rem; padding: .78rem .85rem; color: #536f7a; background: #e4edef; border: 1px solid #cadadd; border-radius: .52rem; }
.appeal-status-help > .icon { flex: 0 0 auto; inline-size: .9rem; margin-block-start: .05rem; color: #267183; }
.appeal-status-help > span { display: grid; gap: .08rem; }
.appeal-status-help b { color: #244b5a; font-size: .78rem; }
.appeal-status-help small { color: #607983; font-size: .68rem; line-height: 1.5; }

/* 系统设置中的公开查询入口，仅负责分发链接。 */
.settings-card--appeal-status { grid-column: 1 / -1; display: grid; grid-template-columns: auto minmax(0, 1fr); gap: .7rem .9rem; border-inline-start: 4px solid #287284; }
.settings-card--appeal-status > div > small { color: #2a7483; font-size: .54rem; font-weight: 780; letter-spacing: .08em; }
.settings-card--appeal-status > div > p { margin: .24rem 0 0; font-size: .66rem; line-height: 1.55; }
.appeal-status-admin-link { grid-column: 2; display: grid; grid-template-columns: minmax(0, 1fr) auto auto; gap: .42rem; }
.appeal-status-admin-link input { min-inline-size: 0; min-block-size: 2.75rem; padding-inline: .62rem; color: #405e69; background: #f7fafa; border: 1px solid #cbd9dd; border-radius: .4rem; font: inherit; font-size: .62rem; }
.appeal-status-admin-link .button { min-block-size: 2.75rem; }
.settings-card--appeal-status > footer { grid-column: 2; display: flex; align-items: center; gap: .36rem; color: #6b8089; font-size: .57rem; }
.settings-card--appeal-status > footer .icon { inline-size: .72rem; color: #287284; }

@media (max-width: 48rem) {
  .appeal-status-page { inline-size: min(calc(100% - 1rem), 52rem); padding-block-start: .35rem; }
  .appeal-status-hero { min-block-size: 8.25rem; padding: 1rem .45rem 1.2rem; }
  .appeal-status-card > form { padding: .9rem; }
  .appeal-status-fields fieldset { grid-template-columns: minmax(0, 1fr); }
  .appeal-status-result > header { grid-template-columns: auto minmax(0, 1fr); padding: .85rem; }
  .appeal-status-result > header > em { grid-column: 2; justify-self: start; }
  .appeal-status-timeline { padding-inline: .85rem; }
  .appeal-status-result > footer { padding-inline: .85rem; }
  .appeal-status-pass-link { grid-template-columns: auto minmax(0, 1fr); margin-inline: .85rem; }
  .appeal-status-pass-link__expiry { grid-column: 2; justify-self: start; }
  .appeal-status-pass-link__actions { grid-column: 1 / -1; }
  .appeal-status-admin-link { grid-template-columns: minmax(0, 1fr) auto; }
  .appeal-status-admin-link a { grid-column: 1 / -1; }
}

@media (max-width: 24.5rem) {
  .appeal-status-brand { padding-inline: .2rem; }
  .appeal-status-brand small { display: none; }
  .appeal-status-brand > div > button { padding-inline: .48rem; }
  .appeal-status-hero { align-items: flex-start; flex-direction: column; justify-content: center; gap: .6rem; }
  .appeal-status-hero > span { padding: .36rem .46rem; }
  .appeal-identity-lock { padding-inline: .62rem; }
  .appeal-identity-lock > span > b { font-size: .58rem; }
  .appeal-identity-lock > strong { min-inline-size: 3.5rem; }
  .appeal-identity-lock > strong small { font-size: .43rem; }
  .appeal-status-fields fieldset > article { grid-template-columns: auto minmax(0, 1fr); }
  .appeal-status-pass-link { grid-template-columns: minmax(0, 1fr); padding: .72rem; }
  .appeal-status-pass-link__seal { inline-size: 2.65rem; block-size: 2.65rem; }
  .appeal-status-pass-link__expiry { grid-column: auto; }
  .appeal-status-pass-link__actions { grid-template-columns: minmax(0, 1fr); }
  .appeal-status-pass-link__actions button,
  .appeal-status-pass-link__actions a { inline-size: 100%; }
  .settings-card--appeal-status { grid-template-columns: minmax(0, 1fr); }
  .settings-card--appeal-status > .settings-icon,
  .settings-card--appeal-status > div,
  .appeal-status-admin-link,
  .settings-card--appeal-status > footer { grid-column: 1; }
  .appeal-status-admin-link { grid-template-columns: minmax(0, 1fr); }
}
/* 单人三局录入沿用后台工具型布局，两条达标路线独立显示。 */
.solo-rule-summary, .solo-route-preview, .solo-third-round {
  margin: 16px 0;
  padding: 18px;
  border: 1px solid #bed5df;
  border-radius: 12px;
  background: #f4f9fb;
  color: #193f51;
  min-width: 0;
}
.solo-rule-summary h3 { margin: 0 0 12px; font-size: 16px; }
.solo-rule-summary p, .solo-route-preview { font-size: 14px; line-height: 1.8; }
.solo-third-round legend { padding: 0 8px; font-weight: 700; }
.solo-third-round .game-fields { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.solo-third-round input { min-height: 44px; width: 100%; }
.solo-third-round output { margin-left: 10px; color: #146853; }
[data-solo-rules="true"] [data-score-component="supplies"],
[data-solo-rules="true"] [data-score-component="kills"] em { display: none; }
.solo-rule-summary[hidden], .solo-third-round[hidden], .solo-route-preview[hidden], .service-item[hidden] { display: none !important; }
@media (max-width: 600px) {
  .solo-third-round .game-fields { grid-template-columns: 1fr; }
  .solo-rule-summary, .solo-route-preview, .solo-third-round { padding: 12px; }
}
