:root {
  color-scheme: dark;
  --cc-bg: #08090b;
  --cc-panel: #111317;
  --cc-panel-2: #17191e;
  --cc-panel-3: #1c1f25;
  --cc-line: rgba(255, 255, 255, 0.08);
  --cc-line-strong: rgba(255, 255, 255, 0.14);
  --cc-text: #f5f6f8;
  --cc-muted: #858b96;
  --cc-muted-2: #a9aeb7;
  --cc-red: #fa2b3e;
  --cc-red-dark: #b60920;
  --cc-green: #42d797;
  --cc-amber: #f6b94b;
  --cc-danger: #ff6674;
  --cc-sidebar: 240px;
  --cc-radius: 18px;
  --cc-shadow: 0 18px 50px rgba(0, 0, 0, 0.25);
}

.cc-service-call-dock {
  margin: 18px 0;
  padding: 18px;
  border: 1px solid #f2c96d;
  border-radius: 20px;
  background: #fffaf0;
  box-shadow: 0 12px 30px rgba(137, 91, 16, .08);
}

.cc-service-call-dock[hidden] { display: none !important; }

.cc-service-call-heading,
.cc-service-call-heading > div,
.cc-service-call-actions {
  display: flex;
  align-items: center;
}

.cc-service-call-heading { justify-content: space-between; gap: 16px; margin-bottom: 14px; }
.cc-service-call-heading > div { gap: 10px; }
.cc-service-call-heading span { color: #a16207; font-weight: 800; }
.cc-service-call-heading strong { color: #202832; font-size: 18px; }
.cc-service-call-heading button,
.cc-service-call-actions button { min-height: 40px; padding: 0 18px; border: 1px solid #efb739; border-radius: 12px; background: #fff; color: #8a5b09; font-weight: 800; }

.cc-service-call-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.cc-service-call-list article { display: grid; grid-template-columns: minmax(0, 1fr) auto auto; align-items: center; gap: 16px; padding: 16px; border: 1px solid #f1ddb1; border-radius: 16px; background: #fff; }
.cc-service-call-list article[data-status="accepted"] { border-color: #9fd4ff; background: #f5fbff; }
.cc-service-call-place { display: grid; gap: 4px; }
.cc-service-call-place span,
.cc-service-call-place small { color: #7d8796; }
.cc-service-call-place strong { color: #202832; font-size: 18px; }
.cc-service-call-list article > b { padding: 6px 10px; border-radius: 999px; color: #a16207; background: #fff1c7; font-size: 13px; }
.cc-service-call-list article[data-status="accepted"] > b { color: #075985; background: #dff3ff; }
.cc-service-call-actions { gap: 8px; }
.cc-service-call-actions button:first-child { border-color: #ed1b35; background: #ed1b35; color: #fff; }
.cc-service-call-actions .is-muted { border-color: #d8dde5; color: #677284; }

@media (max-width: 1180px) {
  .cc-service-call-list { grid-template-columns: 1fr; }
}

/* Member quick console — independent operation drafts and ledgers */
.cc-shell[data-active-page="members"] .cc-member-admin-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  padding: 0;
  overflow: hidden;
  cursor: default;
}

.cc-shell[data-active-page="members"] .cc-member-admin-row-main {
  display: grid;
  grid-template-columns: 46px minmax(160px, 1fr) repeat(3, minmax(78px, auto)) 16px;
  align-items: center;
  gap: 12px;
  min-width: 0;
  padding: 12px;
  border: 0;
  color: inherit;
  background: transparent;
  text-align: left;
  cursor: pointer;
}

.cc-shell[data-active-page="members"] .cc-member-admin-row-main:focus-visible {
  outline: 2px solid #ef7788;
  outline-offset: -3px;
}

.cc-shell[data-active-page="members"] .cc-member-admin-row-actions {
  display: grid;
  grid-template-columns: repeat(2, auto);
  align-content: center;
  gap: 6px;
  padding: 10px 12px 10px 0;
}

.cc-shell[data-active-page="members"] .cc-member-admin-row-actions button {
  min-height: 31px;
  padding: 0 10px;
  border: 1px solid #dfe4e9;
  border-radius: 8px;
  color: #4b5866;
  background: #fff;
  font-size: 11px;
  font-weight: 750;
  cursor: pointer;
}

.cc-shell[data-active-page="members"] .cc-member-admin-row-actions button:hover {
  border-color: #efa5af;
  color: #d51b34;
  background: #fff8f9;
}

.cc-member-quick-console {
  margin-top: 16px;
  overflow: hidden;
  border: 1px solid #dfe4e9;
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 8px 24px rgba(27, 36, 46, .045);
}

.cc-member-quick-console-head {
  display: grid;
  grid-template-columns: minmax(210px, 1fr) auto auto;
  align-items: center;
  gap: 20px;
  padding: 18px 20px;
  border-bottom: 1px solid #e9edf1;
}

.cc-member-quick-person {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
}

.cc-member-quick-person > span {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.cc-member-quick-person small {
  color: #26915a;
  font-size: 11px;
  font-weight: 760;
}

.cc-member-quick-person strong {
  overflow: hidden;
  color: #202936;
  font-size: 18px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cc-member-quick-person em {
  color: #8994a1;
  font-size: 11px;
  font-style: normal;
}

.cc-member-quick-summary {
  display: flex;
  align-items: stretch;
}

.cc-member-quick-summary span {
  display: grid;
  min-width: 112px;
  padding: 4px 18px;
  border-left: 1px solid #e7ebef;
  text-align: center;
}

.cc-member-quick-summary b {
  color: #222c37;
  font-family: var(--cc-mono, ui-monospace, SFMono-Regular, Menlo, monospace);
  font-size: 18px;
}

.cc-member-quick-summary small {
  margin-top: 4px;
  color: #87929e;
  font-size: 10px;
}

.cc-member-quick-switch {
  min-height: 38px;
  padding: 0 15px;
  border: 1px solid #d9e0e6;
  border-radius: 9px;
  color: #44515e;
  background: #fff;
  font-weight: 760;
  cursor: pointer;
}

.cc-member-quick-section {
  display: grid;
  grid-template-columns: 150px minmax(0, 1fr);
  gap: 20px;
  align-items: start;
  padding: 17px 20px;
  border-bottom: 1px solid #edf0f3;
}

.cc-member-quick-label {
  display: grid;
  gap: 5px;
  padding-top: 8px;
}

.cc-member-quick-label strong {
  color: #222c37;
  font-size: 15px;
}

.cc-member-quick-label span {
  color: #7f8a96;
  font-size: 11px;
}

.cc-member-quick-section form {
  display: grid;
  grid-template-columns: minmax(170px, 1fr) 112px 112px;
  gap: 9px;
}

.cc-member-quick-section input,
.cc-member-quick-section button {
  min-height: 42px;
  border-radius: 9px;
  font: inherit;
}

.cc-member-quick-section input {
  min-width: 0;
  padding: 0 13px;
  border: 1px solid #d9e0e6;
  color: #26313d;
  background: #fff;
  font-size: 13px;
}

.cc-member-quick-section input:focus {
  border-color: #7eaef7;
  outline: 3px solid rgba(72, 135, 231, .11);
}

.cc-member-quick-section .is-remark {
  grid-column: 1 / -1;
}

.cc-member-quick-section button {
  border: 1px solid;
  background: #fff;
  font-size: 12px;
  font-weight: 780;
  cursor: pointer;
}

.cc-member-quick-section button.is-credit {
  border-color: #9fc1f6;
  color: #1769d1;
  background: #f7faff;
}

.cc-member-quick-section button.is-debit {
  border-color: #f1adb7;
  color: #d42139;
  background: #fffafb;
}

.cc-member-quick-section button:disabled {
  cursor: wait;
  opacity: .5;
}

.cc-member-stat-actions {
  display: grid;
  grid-template-columns: repeat(4, minmax(120px, 1fr));
  gap: 9px;
}

.cc-member-stat-actions button {
  min-height: 42px;
  border-color: #dbe2e8;
  color: #35424f;
}

.cc-member-stat-actions button:not(.is-undo):hover {
  border-color: #8db5ef;
  color: #1769d1;
  background: #f7faff;
}

.cc-member-stat-actions button.is-undo {
  color: #7c5b18;
  border-color: #e6d7b5;
  background: #fffcf5;
}

.cc-member-recent-operations {
  padding: 17px 20px 20px;
  background: #fbfcfd;
}

.cc-member-recent-operations article {
  display: grid;
  grid-template-columns: 58px minmax(0, 1fr);
  align-items: start;
  gap: 11px;
  padding: 10px 0;
  border-bottom: 1px solid #e9edf1;
}

.cc-member-recent-operations article:last-child {
  border-bottom: 0;
}

.cc-member-recent-operations article > b {
  display: inline-grid;
  place-items: center;
  min-height: 28px;
  border-radius: 8px;
  color: #117847;
  background: #eaf8f0;
  font-family: var(--cc-mono, ui-monospace, SFMono-Regular, Menlo, monospace);
  font-size: 12px;
}

.cc-member-recent-operations article > b[data-kind="event_points"] {
  color: #1769d1;
  background: #ebf3ff;
}

.cc-member-recent-operations article > b[data-kind="result_stat"] {
  color: #9a6500;
  background: #fff3d9;
}

.cc-member-recent-operations article > span {
  display: grid;
  gap: 3px;
}

.cc-member-recent-operations article strong {
  color: #293440;
  font-size: 12px;
}

.cc-member-recent-operations article small,
.cc-member-recent-operations article em {
  color: #7f8a96;
  font-size: 10px;
  font-style: normal;
}

.cc-member-record-card {
  margin-top: 14px;
}

@media (max-width: 1500px) {
  .cc-shell[data-active-page="members"] .cc-member-admin-row {
    grid-template-columns: 1fr;
  }
  .cc-shell[data-active-page="members"] .cc-member-admin-row-actions {
    grid-template-columns: repeat(4, auto);
    justify-content: end;
    padding: 0 12px 10px;
  }
  .cc-member-quick-console-head {
    grid-template-columns: minmax(200px, 1fr) auto;
  }
  .cc-member-quick-summary {
    grid-column: 1 / -1;
    grid-row: 2;
  }
  .cc-member-quick-summary span:first-child {
    border-left: 0;
    padding-left: 0;
  }
}

@media (max-width: 900px) {
  .cc-shell[data-active-page="members"] .cc-member-admin-row-main {
    grid-template-columns: 46px minmax(120px, 1fr) repeat(2, minmax(64px, auto)) 14px;
  }
  .cc-shell[data-active-page="members"] .cc-member-admin-row-main .cc-member-admin-row-stat:nth-of-type(3) {
    display: none;
  }
  .cc-member-quick-console-head,
  .cc-member-quick-section {
    grid-template-columns: 1fr;
  }
  .cc-member-quick-summary {
    overflow-x: auto;
  }
  .cc-member-quick-section form,
  .cc-member-stat-actions {
    grid-template-columns: 1fr 1fr;
  }
  .cc-member-quick-section form > input:first-child,
  .cc-member-quick-section .is-remark,
  .cc-member-stat-actions .is-undo {
    grid-column: 1 / -1;
  }
}

/* 现场控制台 2026-09：桌台为主画布，座位操作与结算沿同一条工作流展开。 */
.cc-shell[data-active-page="floor"] .cc-floor-page {
  gap: 14px;
}

.cc-shell[data-active-page="floor"] .cc-floor-hero {
  align-items: center;
  padding: 20px 24px;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-card);
  background: #fff;
  box-shadow: var(--shadow-card);
}

.cc-shell[data-active-page="floor"] .cc-floor-hero .cc-kicker {
  display: none;
}

.cc-shell[data-active-page="floor"] .cc-floor-hero h2 {
  margin: 0 0 5px;
  font-size: 22px;
  letter-spacing: -.025em;
}

.cc-shell[data-active-page="floor"] .cc-floor-hero > div > span {
  font-size: 13px;
  line-height: 1.55;
}

.cc-shell[data-active-page="floor"] .cc-floor-hero-actions button {
  min-height: 44px;
  padding-inline: 18px;
}

.cc-shell[data-active-page="floor"] .cc-floor-metrics {
  grid-template-columns: minmax(230px, 1.3fr) repeat(4, minmax(120px, 1fr));
}

.cc-shell[data-active-page="floor"] .cc-floor-metrics article {
  min-height: 84px;
  padding: 14px 20px;
}

.cc-shell[data-active-page="floor"] .cc-floor-metrics strong {
  font-size: 25px;
}

.cc-shell[data-active-page="floor"] .cc-floor-status {
  min-height: 58px;
  padding: 9px 12px 9px 18px;
  border-color: var(--color-border);
  border-radius: 14px;
  box-shadow: 0 4px 16px rgba(26, 38, 52, .035);
}

.cc-floor-main-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.75fr) minmax(340px, .82fr);
  gap: 14px;
  align-items: start;
}

.cc-shell[data-active-page="floor"] .cc-floor-tables-panel,
.cc-shell[data-active-page="floor"] .cc-floor-operations-panel,
.cc-shell[data-active-page="floor"] .cc-floor-settlement-panel {
  border-color: var(--color-border);
  border-radius: var(--radius-card);
  background: #fff;
  box-shadow: var(--shadow-card);
}

.cc-shell[data-active-page="floor"] .cc-floor-tables-panel {
  padding: 14px;
}

.cc-floor-table-toolbar {
  display: flex !important;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-height: 48px;
}

.cc-shell[data-active-page="floor"] .cc-poker-table-legend {
  padding: 0 4px;
  border: 0;
  background: transparent;
}

.cc-floor-table-tabs {
  display: flex;
  max-width: 55%;
  gap: 5px;
  padding: 4px;
  overflow-x: auto;
  border-radius: 11px;
  background: #f4f6f8;
}

.cc-floor-table-tabs button {
  flex: 0 0 auto;
  min-height: 34px !important;
  padding: 0 13px;
  border: 0;
  color: #667085;
  background: transparent;
  font-size: 12px;
  font-weight: 750;
}

.cc-floor-table-tabs button.is-active {
  color: #d91e38;
  background: #fff;
  box-shadow: 0 2px 9px rgba(28, 39, 54, .08);
}

.cc-floor-single-table {
  padding: 7px 11px;
  border-radius: 999px;
  color: #157a53;
  background: #eaf8f1;
  font-size: 12px;
}

.cc-shell[data-active-page="floor"] .cc-floor-table-grid {
  display: block;
  margin-top: 2px;
}

.cc-floor-table-stage {
  min-width: 0;
}

.cc-shell[data-active-page="floor"] .cc-floor-table-stage > .cc-poker-table-card {
  display: grid;
  gap: 10px;
  min-width: 0;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}

.cc-shell[data-active-page="floor"] .cc-floor-table-stage > .cc-poker-table-card > header {
  min-height: 50px;
  padding: 8px 6px 2px;
}

.cc-shell[data-active-page="floor"] .cc-floor-table-stage > .cc-poker-table-card > header strong {
  font-size: 18px;
}

.cc-shell[data-active-page="floor"] .cc-floor-table-stage .cc-poker-table-shell {
  min-width: 0;
  padding: 58px 54px;
  overflow: visible;
  border: 1px solid #e7ebef;
  border-radius: 16px;
  background: linear-gradient(145deg, #f2f4f6, #e6eaed);
}

.cc-shell[data-active-page="floor"] .cc-floor-table-stage .cc-poker-table-felt {
  width: 100%;
  min-height: 330px;
  aspect-ratio: 1.72 / 1;
  border-width: 10px;
}

.cc-shell[data-active-page="floor"] .cc-floor-table-stage .cc-poker-table-center {
  width: 42%;
  min-width: 170px;
  min-height: 110px;
  padding: 14px;
}

.cc-shell[data-active-page="floor"] .cc-floor-table-stage .cc-poker-table-center span { font-size: 10px; }
.cc-shell[data-active-page="floor"] .cc-floor-table-stage .cc-poker-table-center strong { font-size: 20px; }
.cc-shell[data-active-page="floor"] .cc-floor-table-stage .cc-poker-table-center small { font-size: 11px; }

.cc-shell[data-active-page="floor"] .cc-floor-table-stage .cc-poker-seat,
.cc-shell[data-active-page="floor"] .cc-floor-table-stage .cc-poker-table-card.is-dense .cc-poker-seat {
  width: clamp(86px, 8vw, 112px);
  min-height: 66px;
}

.cc-shell[data-active-page="floor"] .cc-floor-table-stage .cc-poker-seat-main,
.cc-shell[data-active-page="floor"] .cc-floor-table-stage .cc-poker-table-card.is-dense .cc-poker-seat-main {
  min-height: 66px;
  padding: 7px 9px;
  border-width: 2px;
  border-radius: 13px;
}

.cc-shell[data-active-page="floor"] .cc-floor-table-stage .cc-poker-seat-main b { font-size: 10px; }
.cc-shell[data-active-page="floor"] .cc-floor-table-stage .cc-poker-seat-main strong,
.cc-shell[data-active-page="floor"] .cc-floor-table-stage .cc-poker-table-card.is-dense .cc-poker-seat-main strong { font-size: 13px; }
.cc-shell[data-active-page="floor"] .cc-floor-table-stage .cc-poker-seat-main small {
  display: block;
  font-size: 9px;
}

.cc-shell[data-active-page="floor"] .cc-floor-table-stage .cc-poker-table-card > footer {
  display: flex;
  padding-inline: 6px;
}

.cc-shell[data-active-page="floor"] .cc-floor-operations-panel {
  position: sticky;
  top: 92px;
  margin: 0;
  padding: 18px;
}

.cc-shell[data-active-page="floor"] .cc-floor-operations-panel > .cc-panel-heading {
  min-height: 54px;
  margin: -2px 0 14px;
  padding-bottom: 14px;
  border-bottom: 1px solid #e7eaee;
}

.cc-shell[data-active-page="floor"] .cc-floor-operations-panel > .cc-panel-heading h2 {
  font-size: 18px;
}

.cc-floor-selection-heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  padding: 0 0 14px;
}

.cc-floor-selection-heading > div {
  display: grid;
  min-width: 0;
  gap: 4px;
}

.cc-floor-selection-heading span {
  color: #98a2b3;
  font-size: 11px;
}

.cc-floor-selection-heading strong {
  overflow: hidden;
  font-size: 18px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cc-floor-selection-heading > b {
  flex: 0 0 auto;
  padding: 6px 9px;
  border-radius: 999px;
  color: #16865a;
  background: #eaf8f1;
  font-size: 11px;
}

.cc-shell[data-active-page="floor"] .cc-floor-operation-workspace {
  grid-template-columns: 1fr;
  gap: 12px;
  margin-top: 0;
}

.cc-shell[data-active-page="floor"] .cc-floor-focus-panel,
.cc-shell[data-active-page="floor"] .cc-floor-focus-placeholder,
.cc-shell[data-active-page="floor"] .cc-floor-queue {
  border-color: #e5e9ed;
  border-radius: 13px;
  background: #fbfcfd;
}

.cc-shell[data-active-page="floor"] .cc-floor-focus-panel {
  min-height: 168px;
}

.cc-shell[data-active-page="floor"] .cc-floor-focus-panel .cc-table-player-actions {
  display: grid;
  gap: 14px;
  padding: 0;
  border: 0;
  background: transparent;
}

.cc-shell[data-active-page="floor"] .cc-floor-focus-panel .cc-table-player-action-buttons {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.cc-shell[data-active-page="floor"] .cc-floor-focus-panel .cc-table-player-action-buttons button {
  min-height: 48px;
  padding: 8px 10px;
  border-color: #d9dfe5;
  background: #fff;
}

.cc-shell[data-active-page="floor"] .cc-floor-focus-panel .cc-table-player-action-buttons button.is-danger {
  border-color: #f3b5be;
  color: #d91e38;
  background: #fff8f9;
}

.cc-shell[data-active-page="floor"] .cc-floor-queue {
  padding: 14px;
}

.cc-shell[data-active-page="floor"] .cc-floor-queue-list {
  max-height: 146px;
}

.cc-shell[data-active-page="floor"] .cc-floor-settlement-panel {
  padding: 20px;
}

.cc-shell[data-active-page="floor"] .cc-floor-settlement-panel > .cc-panel-heading {
  min-height: 58px;
  padding-bottom: 14px;
  border-bottom: 1px solid #e7eaee;
}

.cc-shell[data-active-page="floor"] .cc-floor-settlement-panel.is-empty {
  padding-bottom: 16px;
}

.cc-shell[data-active-page="floor"] .cc-floor-settlement-panel .cc-sng-settlement-box {
  margin-top: 16px;
}

@media (max-width: 1500px) {
  .cc-floor-main-grid { grid-template-columns: minmax(0, 1.55fr) minmax(330px, .85fr); }
  .cc-shell[data-active-page="floor"] .cc-floor-table-stage .cc-poker-table-shell { padding: 52px 46px; }
  .cc-shell[data-active-page="floor"] .cc-floor-table-stage .cc-poker-table-felt { min-height: 290px; }
}

@media (max-width: 1160px) {
  .cc-floor-main-grid { grid-template-columns: 1fr; }
  .cc-shell[data-active-page="floor"] .cc-floor-operations-panel { position: static; }
  .cc-shell[data-active-page="floor"] .cc-floor-table-stage .cc-poker-table-shell { padding: 58px 56px; }
  .cc-shell[data-active-page="floor"] .cc-floor-table-stage .cc-poker-table-felt { min-height: 330px; }
}

@media (max-width: 760px) {
  .cc-floor-table-toolbar { align-items: stretch; flex-direction: column; }
  .cc-floor-table-tabs { max-width: 100%; }
  .cc-shell[data-active-page="floor"] .cc-floor-table-stage .cc-poker-table-shell { padding: 44px 34px; overflow: hidden; }
  .cc-shell[data-active-page="floor"] .cc-floor-table-stage .cc-poker-table-felt { min-height: 255px; }
  .cc-shell[data-active-page="floor"] .cc-floor-table-stage .cc-poker-seat,
  .cc-shell[data-active-page="floor"] .cc-floor-table-stage .cc-poker-table-card.is-dense .cc-poker-seat { width: 78px; }
  .cc-shell[data-active-page="floor"] .cc-floor-table-stage .cc-poker-seat-main,
  .cc-shell[data-active-page="floor"] .cc-floor-table-stage .cc-poker-table-card.is-dense .cc-poker-seat-main { min-height: 56px; }
}

/* Member performance, rankings and sharing */
.cc-performance-page {
  display: grid;
  gap: 22px;
}

.cc-performance-page[hidden] { display: none !important; }

.cc-performance-hero {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 28px;
  padding: 30px 32px;
  border: 1px solid var(--cc-line);
  border-radius: 22px;
  background: linear-gradient(120deg, #fff 0%, #fff 66%, #fff2f4 100%);
  box-shadow: var(--cc-shadow);
}

.cc-performance-hero h2 { margin: 6px 0 8px; font-size: clamp(28px, 2vw, 38px); }
.cc-performance-hero p { margin: 0; color: var(--cc-muted); }

.cc-performance-metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(118px, 1fr));
  gap: 10px;
}

.cc-performance-metrics article,
.cc-ranking-rule {
  min-width: 126px;
  padding: 14px 16px;
  border: 1px solid #e3e7ed;
  border-radius: 14px;
  background: rgba(255,255,255,.88);
}

.cc-performance-metrics strong { display: block; font-size: 25px; color: #1e2530; }
.cc-performance-metrics span,
.cc-ranking-rule span { color: var(--cc-muted); font-size: 12px; }
.cc-ranking-rule strong { display: block; margin-top: 5px; max-width: 310px; font-size: 15px; }

.cc-performance-grid { display: grid; grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); gap: 22px; }
.cc-performance-grid > .cc-panel { margin: 0; }

.cc-performance-form {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin-top: 18px;
}

.cc-performance-form label,
.cc-ranking-filters label,
.cc-share-form label,
.cc-member-picker,
.cc-member-search {
  display: grid;
  gap: 7px;
  color: #596270;
  font-size: 13px;
  font-weight: 700;
}

.cc-performance-form label.is-wide { grid-column: 1 / -1; }
.cc-performance-form input,
.cc-performance-form select,
.cc-ranking-filters select,
.cc-share-form select,
.cc-member-picker select,
.cc-member-search input,
.cc-sng-member-entry select {
  width: 100%;
  min-height: 48px;
  padding: 0 14px;
  border: 1px solid #ccd3dd;
  border-radius: 11px;
  background: #fff;
  color: #202731;
  font: inherit;
  outline: none;
}

.cc-performance-form input:focus,
.cc-performance-form select:focus,
.cc-ranking-filters select:focus,
.cc-share-form select:focus,
.cc-member-picker select:focus,
.cc-member-search input:focus,
.cc-sng-member-entry select:focus { border-color: #ed1d3b; box-shadow: 0 0 0 3px rgba(237,29,59,.1); }
.cc-performance-form .cc-primary-button { grid-column: 1 / -1; min-height: 50px; }

.cc-performance-record-list,
.cc-member-list,
.cc-share-list,
.cc-member-history { display: grid; gap: 10px; margin-top: 16px; }

.cc-performance-record {
  display: grid;
  grid-template-columns: 125px minmax(260px, 1fr) 130px auto;
  align-items: center;
  gap: 18px;
  padding: 17px 18px;
  border: 1px solid #e0e4ea;
  border-radius: 15px;
  background: #fff;
}

.cc-performance-record[data-status="draft"] { border-left: 4px solid #f2aa31; }
.cc-performance-record[data-status="confirmed"] { border-left: 4px solid #1da26a; }
.cc-performance-record[data-status="void"] { opacity: .62; }
.cc-record-date strong,
.cc-record-main strong { display: block; color: #202731; }
.cc-record-date span,
.cc-record-main span,
.cc-record-main small,
.cc-record-score span { display: block; margin-top: 5px; color: var(--cc-muted); font-size: 12px; }
.cc-record-main p { margin: 6px 0 0; color: #4a5360; font-size: 13px; }
.cc-record-score { text-align: right; }
.cc-record-score strong { display: block; font-size: 24px; }
.cc-record-actions { display: flex; align-items: center; justify-content: flex-end; gap: 8px; flex-wrap: wrap; }
.cc-record-auto-import { grid-column: 1 / -1; display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 13px 15px; border: 1px solid #bfe7d4; border-radius: 13px; background: #f0fbf6; }
.cc-record-auto-import strong,
.cc-record-auto-import span { display: block; }
.cc-record-auto-import strong { color: #12643d; font-size: 14px; }
.cc-record-auto-import span { margin-top: 4px; color: #507060; font-size: 12px; }
.cc-record-auto-import em { padding: 6px 10px; border-radius: 999px; background: #d8f5e7; color: #137448; font-size: 12px; font-style: normal; font-weight: 800; white-space: nowrap; }
.cc-record-auto-import[data-complete="false"] { border-color: #efc8ce; background: #fff8f9; }
.cc-record-auto-import[data-complete="false"] strong { color: #b81d34; }
.cc-record-auto-import[data-complete="false"] em { background: #ffe5e9; color: #c51f38; }
.cc-record-linking { grid-column: 1 / -1; display: grid; gap: 9px; padding: 14px; border: 1px solid #f0d4d9; border-radius: 13px; background: #fff8f9; }
.cc-record-linking > div > strong,
.cc-record-linking > div > span { display: block; }
.cc-record-linking > div > strong { font-size: 14px; }
.cc-record-linking > div > span { margin-top: 4px; color: #687383; font-size: 12px; }
.cc-record-linking label { display: grid; grid-template-columns: minmax(150px,.62fr) minmax(220px,.9fr) minmax(300px,1fr); align-items: center; gap: 10px; padding-top: 9px; border-top: 1px solid #f2dfe2; }
.cc-record-linking label > span { color: #596474; font-size: 13px; }
.cc-record-linking select { min-height: 42px; padding: 0 12px; border: 1px solid #d7dde4; border-radius: 10px; background: #fff; color: #202831; }
.cc-record-linking button { min-height: 42px; padding: 0 18px; border: 1px solid #ec98a5; border-radius: 10px; background: #fff; color: #d51e38; font-weight: 800; }
.cc-record-link-actions { display: grid !important; grid-template-columns: 1fr 1fr; gap: 8px; }
.cc-record-linking button.is-create { border-color: #df1e39; background: #df1e39; color: #fff; }
.cc-record-linking button:disabled { cursor: not-allowed; opacity: .45; }
.cc-settlement-editor { grid-column: 1 / -1; display: grid; gap: 14px; padding: 18px; border: 1px solid #f0bdc5; border-radius: 15px; background: #fff8f9; }
.cc-settlement-editor-head { display: flex; align-items: end; justify-content: space-between; gap: 18px; }
.cc-settlement-editor-head strong { display: block; color: #202731; font-size: 17px; }
.cc-settlement-editor-head > div span,
.cc-settlement-editor-actions > span { display: block; margin-top: 5px; color: #687383; font-size: 12px; }
.cc-settlement-editor-head label { display: grid; grid-template-columns: auto 120px; align-items: center; gap: 10px; color: #4e5968; font-size: 13px; }
.cc-settlement-editor input,
.cc-settlement-editor select { min-width: 0; min-height: 44px; padding: 0 12px; border: 1px solid #cfd6df; border-radius: 10px; background: #fff; color: #202731; font: inherit; }
.cc-settlement-editor input:focus,
.cc-settlement-editor select:focus { border-color: #ed1d3b; box-shadow: 0 0 0 3px rgba(237,29,59,.1); outline: none; }
.cc-settlement-editor-labels,
.cc-settlement-editor-row { display: grid; grid-template-columns: minmax(240px, 1.5fr) minmax(100px, .45fr) minmax(82px, .32fr) minmax(120px, .55fr) 72px; align-items: center; gap: 10px; }
.cc-settlement-editor-labels { padding: 0 2px; color: #7b8592; font-size: 12px; }
.cc-settlement-editor-rows { display: grid; gap: 9px; }
.cc-settlement-buyin { color: #4f5968; font-size: 13px; font-weight: 800; text-align: center; }
.cc-settlement-editor-row button,
.cc-settlement-editor-actions button { min-height: 42px; padding: 0 14px; border: 1px solid #d1d7df; border-radius: 10px; background: #fff; color: #303844; font-weight: 800; cursor: pointer; }
.cc-settlement-editor-row button { color: #c52b40; }
.cc-settlement-editor-actions { display: flex; align-items: center; gap: 10px; padding-top: 2px; }
.cc-settlement-editor-actions > span { flex: 1; margin: 0; }
.cc-settlement-editor-actions button.is-primary { border-color: #ed1d3b; background: #ed1d3b; color: #fff; }
.cc-record-actions em { padding: 5px 9px; border-radius: 999px; background: #f2f4f7; color: #5d6672; font-size: 12px; font-style: normal; }
.cc-record-actions em[data-status="confirmed"] { background: #e9f8f1; color: #168356; }
.cc-record-actions button,
.cc-member-row button,
.cc-ranking-table button,
.cc-share-list button,
.cc-created-share button,
.cc-created-share a {
  min-height: 38px;
  padding: 0 13px;
  border: 1px solid #ccd3dd;
  border-radius: 9px;
  background: #fff;
  color: #2a313c;
  font-weight: 700;
  text-decoration: none;
  cursor: pointer;
}
.cc-record-actions button.is-primary { border-color: #ed1d3b; background: #ed1d3b; color: #fff; }

.cc-member-search { display: flex; align-items: center; gap: 10px; }
.cc-member-search input { width: 260px; }
.cc-member-row {
  display: grid;
  grid-template-columns: 48px minmax(220px, 1fr) repeat(3, minmax(90px, .35fr)) auto;
  align-items: center;
  gap: 14px;
  padding: 14px 16px;
  border: 1px solid #e0e4ea;
  border-radius: 14px;
  background: #fff;
}
.cc-member-avatar { display: grid; place-items: center; width: 44px; height: 44px; border-radius: 13px; background: #222936; color: #fff; font-weight: 900; }
.cc-member-identity strong,
.cc-member-row > div:not(.cc-member-identity) strong { display: block; }
.cc-member-identity span,
.cc-member-row > div:not(.cc-member-identity) span { display: block; margin-top: 4px; color: var(--cc-muted); font-size: 12px; }

.cc-ranking-filters,
.cc-share-form {
  display: flex;
  align-items: end;
  gap: 14px;
  padding: 18px 22px;
  border: 1px solid var(--cc-line);
  border-radius: 16px;
  background: #fff;
}
.cc-ranking-filters label,
.cc-share-form label { min-width: 210px; }
.cc-ranking-filters .cc-primary-button,
.cc-share-form .cc-primary-button { min-height: 48px; padding-inline: 24px; }

.cc-ranking-controls {
  display: grid;
  gap: 14px;
  padding: 18px 22px;
  border: 1px solid var(--cc-line);
  border-radius: 16px;
  background: #fff;
}

.cc-ranking-type-tabs,
.cc-ranking-period-tabs {
  display: grid;
  gap: 6px;
  padding: 5px;
  border-radius: 13px;
  background: #f1f3f6;
}

.cc-ranking-type-tabs {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

.cc-ranking-period-tabs {
  grid-template-columns: repeat(3, minmax(90px, 1fr));
}

.cc-ranking-type-tabs button,
.cc-ranking-period-tabs button,
.cc-ranking-period-nav > button {
  min-height: 42px;
  border: 0;
  border-radius: 10px;
  color: #727d89;
  background: transparent;
  font-size: 13px;
  font-weight: 850;
  cursor: pointer;
}

.cc-ranking-type-tabs button.is-active,
.cc-ranking-period-tabs button.is-active {
  color: #df1e38;
  background: #fff;
  box-shadow: 0 4px 12px rgba(31, 40, 52, .08);
}

.cc-ranking-type-tabs button:disabled,
.cc-ranking-period-tabs button:disabled,
.cc-ranking-period-nav > button:disabled {
  cursor: wait;
  opacity: .45;
}

.cc-ranking-period-row {
  display: grid;
  grid-template-columns: minmax(340px, .7fr) minmax(320px, 1fr);
  align-items: center;
  gap: 16px;
}

.cc-ranking-period-nav {
  display: grid;
  grid-template-columns: 42px minmax(180px, 1fr) 42px;
  align-items: center;
  gap: 7px;
}

.cc-ranking-period-nav[hidden] {
  display: none;
}

.cc-ranking-period-nav > button {
  border: 1px solid #dfe4e8;
  color: #596571;
  background: #fff;
  font-size: 22px;
}

.cc-ranking-period-nav > div {
  text-align: center;
}

.cc-ranking-period-nav strong,
.cc-ranking-period-nav span {
  display: block;
}

.cc-ranking-period-nav strong {
  color: #303943;
  font-size: 14px;
}

.cc-ranking-period-nav span {
  margin-top: 3px;
  color: #929ba4;
  font-size: 11px;
}

.cc-ranking-podium { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.cc-ranking-podium article { display: grid; justify-items: center; gap: 7px; padding: 25px 18px; border: 1px solid #e0e4ea; border-radius: 18px; background: #fff; box-shadow: var(--cc-shadow); }
.cc-ranking-podium article[data-rank="1"] { order: 2; border-color: #e6bd56; background: linear-gradient(180deg,#fffdf7,#fff8e7); transform: translateY(-7px); }
.cc-ranking-podium article[data-rank="2"] { order: 1; }
.cc-ranking-podium article[data-rank="3"] { order: 3; }
.cc-ranking-podium article > span { color: #ed1d3b; font-size: 12px; font-weight: 900; }
.cc-ranking-podium article > strong { font-size: 20px; }
.cc-ranking-podium article > b { font-size: 26px; }
.cc-ranking-podium article > small { color: var(--cc-muted); }

.cc-ranking-table-wrap { overflow-x: auto; margin-top: 12px; }
.cc-ranking-table { width: 100%; border-collapse: collapse; min-width: 820px; }
.cc-ranking-table th { padding: 12px 14px; background: #f4f6f8; color: #657080; text-align: left; font-size: 12px; }
.cc-ranking-table td { padding: 13px 14px; border-bottom: 1px solid #edf0f3; }
.cc-ranking-member { display: flex; align-items: center; gap: 10px; }
.cc-ranking-member .cc-member-avatar { width: 36px; height: 36px; border-radius: 10px; }
.cc-rank-number { font-size: 19px; color: #ed1d3b; }

.cc-member-picker { min-width: 300px; }
.cc-member-profile { display: grid; gap: 22px; }
.cc-member-career-card { padding: 26px; border-radius: 22px; color: #fff; background: linear-gradient(130deg,#202733,#111722 65%,#461726); box-shadow: var(--cc-shadow); }
.cc-member-career-head { display: grid; grid-template-columns: 66px minmax(0,1fr) auto; align-items: center; gap: 16px; }
.cc-member-career-head .cc-member-avatar { width: 66px; height: 66px; border-radius: 20px; background: #ed1d3b; font-size: 25px; }
.cc-member-career-head p,
.cc-member-career-head h3,
.cc-member-career-head span { margin: 0; }
.cc-member-career-head p,
.cc-member-career-head span,
.cc-member-career-head em { color: #aeb7c5; font-size: 12px; font-style: normal; }
.cc-member-career-head h3 { margin: 3px 0; font-size: 27px; }
.cc-member-career-metrics { display: grid; grid-template-columns: repeat(5,1fr); gap: 10px; margin-top: 24px; }
.cc-member-career-metrics article { padding: 16px; border: 1px solid rgba(255,255,255,.12); border-radius: 14px; background: rgba(255,255,255,.055); }
.cc-member-career-metrics strong { display: block; font-size: 25px; }
.cc-member-career-metrics span { display: block; margin-top: 5px; color: #aeb7c5; font-size: 12px; }
.cc-member-history > article { display: grid; grid-template-columns: 110px minmax(0,1fr) 100px 90px; align-items: center; gap: 16px; padding: 14px 16px; border: 1px solid #e2e6ec; border-radius: 13px; }
.cc-member-history time { color: #657080; font-size: 13px; }
.cc-member-history strong,
.cc-member-history span { display: block; }
.cc-member-history span { margin-top: 3px; color: var(--cc-muted); font-size: 12px; }
.cc-member-history em { color: #ed1d3b; font-style: normal; font-weight: 800; }
.cc-member-history b { text-align: right; }

.cc-created-share { display: flex; align-items: center; gap: 10px; margin-top: 16px; padding: 14px 16px; border: 1px solid #9ddfc4; border-radius: 13px; background: #effaf5; }
.cc-created-share > div { min-width: 0; flex: 1; }
.cc-created-share strong,
.cc-created-share span { display: block; }
.cc-created-share span { margin-top: 4px; overflow: hidden; color: #467161; font-size: 12px; text-overflow: ellipsis; white-space: nowrap; }
.cc-share-list article { display: flex; align-items: center; gap: 12px; padding: 13px 15px; border: 1px solid #e1e5eb; border-radius: 13px; }
.cc-share-list article > div { flex: 1; }
.cc-share-list strong,
.cc-share-list span { display: block; }
.cc-share-list span { margin-top: 4px; color: var(--cc-muted); font-size: 12px; }
.cc-share-list em { color: #69727e; font-size: 12px; font-style: normal; }
.cc-share-list em[data-active="true"] { color: #168356; }
.cc-performance-empty { grid-column: 1 / -1; display: grid; justify-items: center; gap: 6px; padding: 28px; color: var(--cc-muted); text-align: center; }
.cc-performance-empty strong { color: #2c3440; }
.cc-performance-empty.is-error strong { color: #c51d35; }
.cc-performance-empty button { margin-top: 8px; }

.cc-sng-member-entry { grid-template-columns: minmax(190px,.9fr) minmax(180px,1fr) auto auto !important; }

@media (max-width: 1366px) {
  .cc-performance-record { grid-template-columns: 110px minmax(220px,1fr) auto; }
  .cc-record-actions { grid-column: 1 / -1; justify-content: flex-end; }
  .cc-member-row { grid-template-columns: 44px minmax(190px,1fr) repeat(3,80px) auto; }
}

@media (max-width: 900px) {
  .cc-performance-hero { align-items: stretch; flex-direction: column; padding: 22px; }
  .cc-performance-metrics { grid-template-columns: repeat(3,1fr); }
  .cc-performance-grid,
  .cc-ranking-podium { grid-template-columns: 1fr; }
  .cc-record-linking label { grid-template-columns: 1fr; }
  .cc-record-link-actions { grid-template-columns: 1fr; }
  .cc-ranking-podium article[data-rank] { order: initial; transform: none; }
  .cc-performance-record,
  .cc-member-row,
  .cc-member-history > article { grid-template-columns: 1fr; }
  .cc-record-score { text-align: left; }
  .cc-record-actions { grid-column: auto; justify-content: flex-start; }
  .cc-member-row > .cc-member-avatar { display: none; }
  .cc-ranking-filters,
  .cc-share-form { align-items: stretch; flex-direction: column; }
  .cc-ranking-period-row { grid-template-columns: 1fr; }
  .cc-ranking-filters label,
  .cc-share-form label,
  .cc-member-picker { min-width: 0; width: 100%; }
  .cc-member-career-head { grid-template-columns: 58px 1fr; }
  .cc-member-career-head em { grid-column: 1 / -1; }
  .cc-member-career-metrics { grid-template-columns: repeat(2,1fr); }
  .cc-created-share { align-items: stretch; flex-direction: column; }
  .cc-sng-member-entry { grid-template-columns: 1fr !important; }
}

@media (max-width: 560px) {
  .cc-ranking-controls { padding: 13px; }
  .cc-ranking-type-tabs button,
  .cc-ranking-period-tabs button { font-size: 11px; }
  .cc-ranking-period-tabs { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .cc-ranking-period-nav { grid-template-columns: 38px minmax(0, 1fr) 38px; }
}

/* Store member coupons */
.cc-member-coupon-page {
  display: grid;
  gap: 18px;
  padding: 24px;
}

.cc-member-coupon-page[hidden] { display: none !important; }

.cc-member-coupon-page.is-focused-operation .cc-member-coupon-hero,
.cc-member-coupon-page.is-focused-operation .cc-member-coupon-metrics,
.cc-member-coupon-page.is-focused-operation .cc-member-coupon-tabs {
  display: none;
}

.cc-member-coupon-hero {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 28px 30px;
  border: 1px solid #eadfe1;
  border-radius: 22px;
  background: linear-gradient(115deg, #fff 54%, #fff4f5);
}

.cc-member-coupon-hero h2 { margin: 5px 0 8px; color: var(--cc-text); font-size: 30px; }
.cc-member-coupon-hero p:last-child { margin: 0; color: var(--cc-muted); }
.cc-member-coupon-hero > button,
.cc-member-coupon-form-actions button[data-coupon-action="submit-template"],
.cc-member-coupon-form-actions button[data-coupon-action="submit-grant"],
.cc-member-coupon-redemption-input form > button,
.cc-member-coupon-confirm-card > button {
  min-height: 44px;
  padding: 0 20px;
  border: 1px solid var(--cc-red);
  border-radius: 12px;
  color: #fff;
  background: var(--cc-red);
  font-weight: 800;
}

.cc-member-coupon-hero > button:disabled,
.cc-member-coupon-form-actions button:disabled { opacity: .5; cursor: wait; }

.cc-member-coupon-metrics {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  overflow: hidden;
  border: 1px solid var(--cc-line);
  border-radius: 18px;
  background: #fff;
}

.cc-member-coupon-metrics article { display: grid; gap: 5px; padding: 18px 20px; border-right: 1px solid var(--cc-line); }
.cc-member-coupon-metrics article:last-child { border-right: 0; }
.cc-member-coupon-metrics strong { color: var(--cc-text); font-size: 24px; }
.cc-member-coupon-metrics span { color: var(--cc-muted); font-size: 11px; }

.cc-member-coupon-tabs {
  display: flex;
  gap: 8px;
  padding: 6px;
  border: 1px solid var(--cc-line);
  border-radius: 14px;
  background: #fff;
}

.cc-member-coupon-tabs button {
  min-height: 42px;
  flex: 1;
  border: 0;
  border-radius: 10px;
  color: var(--cc-muted);
  background: transparent;
  font-weight: 800;
}

.cc-member-coupon-tabs button.is-active { color: var(--cc-red); background: #fff0f2; box-shadow: inset 0 0 0 1px #f2cbd1; }
.cc-member-coupon-workspace { min-width: 0; }
.cc-member-coupon-template-layout { display: grid; grid-template-columns: minmax(520px, .95fr) minmax(420px, 1.05fr); gap: 18px; align-items: start; }
.cc-member-coupon-template-form,
.cc-member-coupon-grant-form,
.cc-member-coupon-holdings,
.cc-member-coupon-redemption-input,
.cc-member-coupon-redemption-preview,
.cc-member-coupon-logs { padding: 22px; }

.cc-member-coupon-template-form { position: sticky; top: 18px; }
.cc-member-coupon-form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.cc-member-coupon-form-grid > label,
.cc-member-coupon-grant-form > label,
.cc-member-coupon-redemption-input form label { display: grid; gap: 7px; color: var(--cc-muted); font-size: 11px; font-weight: 700; }
.cc-member-coupon-form-grid > label.is-wide { grid-column: 1 / -1; }
.cc-member-coupon-form-grid input,
.cc-member-coupon-form-grid select,
.cc-member-coupon-form-grid textarea,
.cc-member-coupon-grant-form > label input,
.cc-member-coupon-grant-form > label select,
.cc-member-coupon-redemption-input input,
.cc-member-coupon-filters input,
.cc-member-coupon-filters select {
  width: 100%;
  min-height: 44px;
  padding: 10px 12px;
  border: 1px solid #d7dee6;
  border-radius: 10px;
  color: var(--cc-text);
  background: #fff;
  font: inherit;
}

.cc-member-coupon-form-grid textarea { resize: vertical; }
.cc-shell[data-active-page="member-coupons"] .cc-content :is(input, textarea)::placeholder {
  color: #aeb7c3;
  opacity: 1;
  font-weight: 500;
}
.cc-member-coupon-form-grid small { color: var(--cc-muted); font-weight: 500; }
.cc-member-coupon-event-picker { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; margin: 16px 0 0; padding: 14px; border: 1px solid var(--cc-line); border-radius: 12px; }
.cc-member-coupon-event-picker[hidden] { display: none; }
.cc-member-coupon-event-picker legend { padding: 0 6px; color: var(--cc-text); font-weight: 800; }
.cc-member-coupon-event-picker label { display: flex; align-items: center; gap: 9px; padding: 9px; border-radius: 9px; background: #f7f8fa; }
.cc-member-coupon-event-picker label span { display: grid; gap: 2px; }
.cc-member-coupon-event-picker small { color: var(--cc-muted); }
.cc-member-coupon-lock-note { margin: 14px 0 0; padding: 12px 14px; border-radius: 10px; color: #8b6212; background: #fff7df; font-size: 11px; line-height: 1.6; }
.cc-member-coupon-form-actions { display: flex; align-items: center; justify-content: flex-end; gap: 10px; margin-top: 18px; }
.cc-member-coupon-form-actions > span { margin-right: auto; color: var(--cc-muted); font-size: 10px; }
.cc-member-coupon-form-actions > button:not([type="submit"]) { min-height: 40px; padding: 0 14px; border: 1px solid var(--cc-line); border-radius: 10px; color: var(--cc-muted); background: #fff; font-weight: 700; }

.cc-member-coupon-template-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.cc-member-coupon-template-card { display: grid; gap: 13px; padding: 18px; }
.cc-member-coupon-template-card.is-disabled { opacity: .72; background: #f8f9fa; }
.cc-member-coupon-template-card > div:first-child { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.cc-member-coupon-template-card em { color: var(--cc-muted); font-size: 10px; font-style: normal; }
.cc-member-coupon-template-card h3 { margin: 0; color: var(--cc-text); font-size: 17px; }
.cc-member-coupon-template-card > p { min-height: 34px; margin: 0; color: var(--cc-muted); font-size: 10px; line-height: 1.6; }
.cc-member-coupon-type { display: inline-flex; width: max-content; padding: 5px 9px; border-radius: 999px; color: #8b6212; background: #fff4d6; font-size: 9px; font-weight: 900; }
.cc-member-coupon-type.is-redemption { color: #245b99; background: #edf5ff; }
.cc-member-coupon-template-card dl { display: grid; grid-template-columns: repeat(4, 1fr); margin: 0; overflow: hidden; border: 1px solid var(--cc-line); border-radius: 10px; }
.cc-member-coupon-template-card dl div { display: grid; gap: 4px; padding: 10px; border-right: 1px solid var(--cc-line); }
.cc-member-coupon-template-card dl div:last-child { border-right: 0; }
.cc-member-coupon-template-card dt { color: var(--cc-muted); font-size: 8px; }
.cc-member-coupon-template-card dd { margin: 0; color: var(--cc-text); font-weight: 900; }
.cc-member-coupon-template-card footer { display: flex; justify-content: flex-end; gap: 8px; }
.cc-member-coupon-template-card footer button { min-height: 36px; padding: 0 13px; border: 1px solid var(--cc-line); border-radius: 9px; color: var(--cc-text); background: #fff; font-weight: 700; }

.cc-member-coupon-template-index {
  display: grid;
  gap: 16px;
}

.cc-member-coupon-index-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 22px 24px;
  border: 1px solid var(--cc-line);
  border-radius: 18px;
  background: #fff;
}

.cc-member-coupon-index-head p,
.cc-member-coupon-index-head h2,
.cc-member-coupon-index-head span {
  display: block;
  margin: 0;
}

.cc-member-coupon-index-head p {
  color: var(--cc-red);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .08em;
}

.cc-member-coupon-index-head h2 {
  margin-top: 5px;
  color: var(--cc-text);
  font-size: 23px;
}

.cc-member-coupon-index-head span {
  margin-top: 6px;
  color: var(--cc-muted);
  font-size: 11px;
}

.cc-member-coupon-index-head > button,
.cc-member-coupon-template-filters button[type="submit"] {
  min-height: 44px;
  padding: 0 20px;
  border: 1px solid var(--cc-red);
  border-radius: 11px;
  color: #fff;
  background: var(--cc-red);
  font-weight: 850;
}

.cc-member-coupon-template-filters {
  display: grid;
  grid-template-columns: minmax(260px, 1fr) 160px 160px auto auto;
  gap: 9px;
  padding: 14px;
  border: 1px solid var(--cc-line);
  border-radius: 15px;
  background: #fff;
}

.cc-member-coupon-template-filters input,
.cc-member-coupon-template-filters select {
  width: 100%;
  min-height: 42px;
  padding: 0 12px;
  border: 1px solid #d7dee6;
  border-radius: 10px;
  color: var(--cc-text);
  background: #fff;
  font: inherit;
}

.cc-member-coupon-template-filters button {
  min-width: 76px;
  border: 1px solid var(--cc-line);
  border-radius: 10px;
  color: var(--cc-muted);
  background: #fff;
  font-weight: 800;
}

.cc-member-coupon-template-rows {
  display: grid;
  gap: 10px;
}

.cc-member-coupon-template-row {
  display: grid;
  grid-template-columns: minmax(360px, 1.25fr) minmax(330px, .8fr) 72px 176px;
  align-items: center;
  gap: 20px;
  min-height: 132px;
  padding: 20px 22px;
}

.cc-member-coupon-template-row.is-disabled {
  background: #f7f8f9;
  opacity: .72;
}

.cc-member-coupon-template-main {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: start;
  gap: 13px;
  min-width: 0;
}

.cc-member-coupon-template-main h3,
.cc-member-coupon-template-main p,
.cc-member-coupon-template-main small {
  display: block;
  margin: 0;
}

.cc-member-coupon-template-main h3 {
  overflow: hidden;
  color: var(--cc-text);
  font-size: 17px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cc-member-coupon-template-main p {
  overflow: hidden;
  margin-top: 6px;
  color: var(--cc-muted);
  font-size: 10px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cc-member-coupon-template-main small {
  overflow: hidden;
  margin-top: 9px;
  color: #8b949e;
  font-size: 9px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cc-member-coupon-template-row-stats {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  overflow: hidden;
  border: 1px solid var(--cc-line);
  border-radius: 11px;
}

.cc-member-coupon-template-row-stats > span {
  display: grid;
  gap: 5px;
  padding: 11px 9px;
  border-right: 1px solid var(--cc-line);
}

.cc-member-coupon-template-row-stats > span:last-child { border-right: 0; }
.cc-member-coupon-template-row-stats small { color: var(--cc-muted); font-size: 8px; }
.cc-member-coupon-template-row-stats strong { color: var(--cc-text); font-size: 16px; }

.cc-member-coupon-template-state {
  display: inline-flex;
  justify-content: center;
  padding: 7px 9px;
  border-radius: 999px;
  color: #147347;
  background: #eaf8f0;
  font-size: 9px;
  font-weight: 900;
}

.cc-member-coupon-template-state.is-disabled {
  color: #68727d;
  background: #edf0f2;
}

.cc-member-coupon-template-row-actions {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 7px;
}

.cc-member-coupon-template-row-actions button {
  min-height: 39px;
  padding: 0 12px;
  border: 1px solid var(--cc-line);
  border-radius: 10px;
  color: var(--cc-text);
  background: #fff;
  font-weight: 800;
}

.cc-member-coupon-template-row-actions button:first-child {
  color: var(--cc-red);
  border-color: #edb7bf;
}

.cc-member-coupon-template-editor,
.cc-member-coupon-grant-editor {
  display: grid;
  gap: 14px;
  width: min(1120px, 100%);
  margin: 0 auto;
}

.cc-member-coupon-editor-head {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  gap: 14px;
  padding: 6px 2px 10px;
}

.cc-member-coupon-editor-head > button {
  display: grid;
  width: 38px;
  height: 38px;
  padding: 0;
  place-items: center;
  border: 1px solid #e1e6ec;
  border-radius: 50%;
  color: #657181;
  background: #fff;
  box-shadow: 0 4px 12px rgba(31, 42, 55, .06);
  font: inherit;
  font-size: 18px;
  font-weight: 700;
  cursor: pointer;
  transition: border-color .16s ease, color .16s ease, background-color .16s ease, transform .16s ease;
}

.cc-member-coupon-editor-head > button:hover {
  border-color: #f4a9b4;
  color: var(--cc-red);
  background: #fff7f8;
  transform: translateX(-1px);
}

.cc-member-coupon-editor-head > button:focus-visible { outline: 3px solid rgba(240, 40, 70, .16); outline-offset: 2px; }
.cc-member-coupon-editor-head > button span { margin: 0; color: inherit; font-size: inherit; line-height: 1; }

.cc-member-coupon-editor-head p,
.cc-member-coupon-editor-head h2,
.cc-member-coupon-editor-head span {
  display: block;
  margin: 0;
}

.cc-member-coupon-editor-head p { color: var(--cc-red); font-size: 10px; font-weight: 900; }
.cc-member-coupon-editor-head h2 { margin-top: 5px; color: var(--cc-text); font-size: 28px; }
.cc-member-coupon-editor-head span { margin-top: 6px; color: var(--cc-muted); font-size: 11px; }

.cc-member-coupon-editor-section {
  display: grid;
  grid-template-columns: 220px minmax(0, 1fr);
  gap: 24px;
  padding: 24px;
}

.cc-member-coupon-editor-section-head {
  display: flex;
  align-items: flex-start;
  gap: 10px;
}

.cc-member-coupon-editor-section-head > span {
  display: inline-grid;
  width: 30px;
  height: 30px;
  flex: 0 0 auto;
  place-items: center;
  border-radius: 9px;
  color: var(--cc-red);
  background: #fff0f2;
  font-size: 10px;
  font-weight: 900;
}

.cc-member-coupon-editor-section-head strong,
.cc-member-coupon-editor-section-head small {
  display: block;
}

.cc-member-coupon-editor-section-head strong { color: var(--cc-text); font-size: 14px; }
.cc-member-coupon-editor-section-head small { margin-top: 5px; color: var(--cc-muted); font-size: 9px; line-height: 1.5; }
.cc-member-coupon-editor-section > .cc-member-coupon-event-picker { grid-column: 2; }

.cc-member-coupon-advanced {
  grid-column: 2;
  margin-top: 14px;
  padding: 13px 15px;
  border: 1px solid var(--cc-line);
  border-radius: 11px;
  background: #fafbfc;
}

.cc-member-coupon-advanced summary {
  color: var(--cc-text);
  font-size: 10px;
  font-weight: 850;
  cursor: pointer;
}

.cc-member-coupon-advanced[open] summary { margin-bottom: 14px; }

.cc-member-coupon-editor-actions {
  position: sticky;
  z-index: 4;
  bottom: 12px;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 9px;
  padding: 13px 15px;
  border: 1px solid var(--cc-line);
  border-radius: 14px;
  background: rgba(255,255,255,.96);
  box-shadow: 0 12px 35px rgba(31, 40, 52, .12);
  backdrop-filter: blur(14px);
}

.cc-member-coupon-editor-actions > span {
  margin-right: auto;
  color: var(--cc-muted);
  font-size: 9px;
}

.cc-member-coupon-editor-actions button {
  min-height: 42px;
  padding: 0 20px;
  border: 1px solid var(--cc-line);
  border-radius: 10px;
  color: var(--cc-text);
  background: #fff;
  font-weight: 850;
}

.cc-member-coupon-editor-actions button.is-primary {
  min-width: 140px;
  color: #fff;
  border-color: var(--cc-red);
  background: var(--cc-red);
}

.cc-member-coupon-dialog-backdrop {
  position: fixed;
  z-index: 90;
  inset: 0;
  display: grid;
  padding: 24px;
  place-items: center;
  background: rgba(25, 31, 39, .38);
  backdrop-filter: blur(4px);
}

.cc-member-coupon-dialog {
  display: grid;
  justify-items: center;
  width: min(430px, 100%);
  padding: 28px;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 24px 70px rgba(24, 32, 42, .24);
  text-align: center;
}

.cc-member-coupon-dialog-mark {
  display: grid;
  width: 42px;
  height: 42px;
  place-items: center;
  border-radius: 50%;
  color: #b96a00;
  background: #fff3da;
  font-size: 20px;
  font-weight: 900;
}

.cc-member-coupon-dialog h3 { margin: 16px 0 8px; color: var(--cc-text); font-size: 20px; }
.cc-member-coupon-dialog p { margin: 0; color: var(--cc-muted); font-size: 11px; line-height: 1.7; }
.cc-member-coupon-dialog > strong { margin-top: 14px; color: var(--cc-text); }
.cc-member-coupon-dialog > div { display: grid; grid-template-columns: 1fr 1fr; gap: 9px; width: 100%; margin-top: 22px; }
.cc-member-coupon-dialog button { min-height: 42px; border: 1px solid var(--cc-line); border-radius: 10px; color: var(--cc-text); background: #fff; font-weight: 850; }
.cc-member-coupon-dialog button.is-primary { color: #fff; border-color: var(--cc-red); background: var(--cc-red); }

.cc-member-coupon-grant-layout { display: grid; grid-template-columns: minmax(340px, .68fr) minmax(600px, 1.32fr); gap: 18px; align-items: start; }
.cc-member-coupon-grant-form { display: grid; gap: 14px; position: sticky; top: 18px; }
.cc-member-coupon-holdings-index { display: grid; gap: 16px; }
.cc-member-coupon-adjust-card { display: grid; grid-template-columns: 190px minmax(0, 1fr); gap: 24px; padding: 24px; }
.cc-member-coupon-adjust-step { display: flex; align-items: flex-start; gap: 10px; }
.cc-member-coupon-adjust-step > span { display: grid; width: 32px; height: 32px; flex: 0 0 auto; place-items: center; border-radius: 10px; color: var(--cc-red); background: #fff0f2; font-size: 10px; font-weight: 900; }
.cc-member-coupon-adjust-step strong,
.cc-member-coupon-adjust-step small { display: block; }
.cc-member-coupon-adjust-step strong { color: var(--cc-text); font-size: 14px; }
.cc-member-coupon-adjust-step small { margin-top: 5px; color: var(--cc-muted); font-size: 9px; line-height: 1.5; }
.cc-member-coupon-member-search { min-width: 0; }
.cc-member-coupon-member-search > label { display: block; }
.cc-member-coupon-member-search input[type="search"] { width: 100%; min-height: 50px; padding: 0 16px; border: 1px solid #d7dee6; border-radius: 12px; color: var(--cc-text); background: #fff; font: inherit; }
.cc-member-coupon-member-search input[type="search"]:focus { border-color: #ed8492; outline: 3px solid rgba(228, 31, 59, .08); }
.cc-member-coupon-member-results { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; margin-top: 10px; }
.cc-member-coupon-member-results > p { grid-column: 1 / -1; margin: 0; padding: 18px; border-radius: 10px; color: var(--cc-muted); background: #f7f8fa; font-size: 10px; text-align: center; }
.cc-member-coupon-member-results > button,
.cc-member-coupon-selected-member { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: 11px; min-height: 66px; padding: 10px 12px; border: 1px solid var(--cc-line); border-radius: 12px; color: var(--cc-text); background: #fff; text-align: left; }
.cc-member-coupon-member-results > button:hover { border-color: #ed9ca8; background: #fffafb; }
.cc-member-coupon-member-results > button > span,
.cc-member-coupon-selected-member > span { display: grid; width: 38px; height: 38px; place-items: center; border-radius: 11px; color: #fff; background: #26303c; font-weight: 900; }
.cc-member-coupon-picker-avatar { overflow: hidden; }
.cc-member-coupon-picker-avatar img { display: block; width: 100%; height: 100%; object-fit: cover; }
.cc-member-coupon-member-results strong,
.cc-member-coupon-member-results small,
.cc-member-coupon-selected-member strong,
.cc-member-coupon-selected-member small { display: block; }
.cc-member-coupon-member-results strong,
.cc-member-coupon-selected-member strong { font-size: 11px; }
.cc-member-coupon-member-results small,
.cc-member-coupon-selected-member small { margin-top: 4px; color: var(--cc-muted); font-size: 8px; }
.cc-member-coupon-source { display: inline-flex; align-items: center; margin-right: 6px; padding: 2px 5px; border-radius: 999px; font-size: 7px; font-style: normal; font-weight: 850; line-height: 1.2; }
.cc-member-coupon-source.is-wechat { color: #087f4f; background: #e9f8f0; }
.cc-member-coupon-source.is-manual { color: #687282; background: #eef1f5; }
.cc-member-coupon-member-results em { color: var(--cc-red); font-size: 9px; font-style: normal; font-weight: 850; }
.cc-member-coupon-selected-member { grid-template-columns: auto minmax(0, 1fr) auto auto; border-color: #efc5cb; background: #fffafb; }
.cc-member-coupon-selected-member em { color: #178352; font-size: 9px; font-style: normal; font-weight: 800; }
.cc-member-coupon-selected-member button { min-height: 34px; padding: 0 12px; border: 1px solid var(--cc-line); border-radius: 9px; color: var(--cc-muted); background: #fff; font-weight: 800; }
.cc-member-coupon-adjust-fields { display: grid; grid-template-columns: 190px minmax(250px, 1fr) 220px; gap: 14px; min-width: 0; }
.cc-member-coupon-adjust-card.is-disabled .cc-member-coupon-adjust-fields { opacity: .5; pointer-events: none; }
.cc-member-coupon-adjust-fields > label { display: grid; align-content: start; gap: 7px; color: var(--cc-muted); font-size: 10px; font-weight: 750; }
.cc-member-coupon-adjust-fields > label.is-wide { grid-column: 1 / -1; }
.cc-member-coupon-adjust-fields select,
.cc-member-coupon-adjust-fields > label > input { width: 100%; min-height: 44px; padding: 0 12px; border: 1px solid #d7dee6; border-radius: 10px; color: var(--cc-text); background: #fff; font: inherit; }
.cc-member-coupon-adjust-fields small { color: var(--cc-muted); font-weight: 550; }
.cc-member-coupon-adjust-fields small.is-warning { color: #a05f00; }
.cc-member-coupon-adjust-mode { display: grid; grid-template-columns: 1fr 1fr; align-self: start; padding: 4px; border-radius: 11px; background: #f2f4f6; }
.cc-member-coupon-adjust-mode button { min-height: 40px; border: 0; border-radius: 8px; color: var(--cc-muted); background: transparent; font-weight: 850; }
.cc-member-coupon-adjust-mode button.is-active { color: var(--cc-red); background: #fff; box-shadow: 0 2px 9px rgba(38, 48, 60, .08); }
.cc-member-coupon-quantity { display: grid; grid-template-columns: 42px minmax(70px, 1fr) 42px; }
.cc-member-coupon-quantity input { width: 100%; min-height: 44px; padding: 0 8px; border: solid #d7dee6; border-width: 1px 0; color: var(--cc-text); background: #fff; font: inherit; font-weight: 850; text-align: center; }
.cc-member-coupon-quantity button { min-height: 44px; border: 1px solid #d7dee6; color: var(--cc-text); background: #fff; font-size: 17px; font-weight: 850; }
.cc-member-coupon-quantity button:first-child { border-radius: 10px 0 0 10px; }
.cc-member-coupon-quantity button:last-child { border-radius: 0 10px 10px 0; }
.cc-member-coupon-quantity button:disabled { color: #b9c0c7; background: #f7f8fa; }
.cc-member-coupon-editor-actions button.is-primary.is-deduct { color: #c81f37; border-color: #e4a1ab; background: #fff; }
.cc-member-coupon-member-picker { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); max-height: 440px; overflow: auto; gap: 7px; padding: 10px; border: 1px solid var(--cc-line); border-radius: 12px; }
.cc-member-coupon-grant-editor .cc-member-coupon-member-picker { grid-column: 2; grid-template-columns: repeat(3, minmax(0, 1fr)); max-height: 520px; }
.cc-member-coupon-member-picker > div { display: flex; align-items: center; justify-content: space-between; gap: 12px; grid-column: 1 / -1; padding: 4px 3px 8px; color: var(--cc-text); }
.cc-member-coupon-member-picker > div span { color: var(--cc-muted); font-size: 10px; }
.cc-member-coupon-member-picker > div aside { display: flex; gap: 7px; margin-left: auto; }
.cc-member-coupon-member-picker > div button { min-height: 32px; padding: 0 10px; border: 1px solid var(--cc-line); border-radius: 8px; color: var(--cc-muted); background: #fff; font-weight: 750; }
.cc-member-coupon-member-picker > label { display: flex; align-items: center; gap: 8px; padding: 9px; border-radius: 9px; background: #f7f8fa; }
.cc-member-coupon-member-picker > label > span { display: grid; gap: 2px; min-width: 0; }
.cc-member-coupon-member-picker strong { overflow: hidden; color: var(--cc-text); font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }
.cc-member-coupon-member-picker small { color: var(--cc-muted); font-size: 8px; }
.cc-member-coupon-filters { display: grid; grid-template-columns: minmax(180px, 1fr) 130px 130px auto; gap: 8px; margin-bottom: 14px; }
.cc-member-coupon-filters button { padding: 0 16px; border: 1px solid var(--cc-red); border-radius: 10px; color: var(--cc-red); background: #fff; font-weight: 800; }
.cc-member-coupon-table-wrap { overflow: auto; border: 1px solid var(--cc-line); border-radius: 12px; }
.cc-member-coupon-table-wrap table { width: 100%; border-collapse: collapse; min-width: 760px; }
.cc-member-coupon-table-wrap th { padding: 12px; color: var(--cc-muted); background: #f7f8fa; font-size: 9px; text-align: left; }
.cc-member-coupon-table-wrap td { padding: 12px; border-top: 1px solid var(--cc-line); color: var(--cc-muted); font-size: 10px; vertical-align: middle; }
.cc-member-coupon-table-wrap td strong,
.cc-member-coupon-table-wrap td small { display: block; }
.cc-member-coupon-table-wrap td strong { color: var(--cc-text); }
.cc-member-coupon-table-wrap td small { margin-top: 3px; color: var(--cc-muted); }
.cc-member-coupon-table-wrap td button { min-height: 32px; padding: 0 10px; border: 1px solid #edb7bf; border-radius: 8px; color: var(--cc-red); background: #fff; font-weight: 700; }
.cc-member-coupon-status,
.cc-member-coupon-log-result { display: inline-flex; padding: 5px 8px; border-radius: 999px; color: #147347; background: #eaf8f0; font-size: 8px; font-weight: 900; }
.cc-member-coupon-status.is-used { color: #245b99; background: #edf5ff; }
.cc-member-coupon-status.is-expired { color: #667085; background: #eef1f4; }
.cc-member-coupon-status.is-revoked,
.cc-member-coupon-log-result.is-failure { color: #b42338; background: #fff0f2; }

.cc-member-coupon-redemption-layout { display: grid; grid-template-columns: .85fr 1.15fr; gap: 18px; align-items: start; }
.cc-member-coupon-redemption-input > p { margin: 0 0 18px; color: var(--cc-muted); font-size: 11px; line-height: 1.7; }
.cc-member-coupon-redemption-input form { display: grid; grid-template-columns: 1fr auto; gap: 10px; align-items: end; }
.cc-member-coupon-redemption-input aside { display: grid; gap: 5px; margin-top: 18px; padding: 13px; border-radius: 10px; color: #8b6212; background: #fff7df; font-size: 10px; }
.cc-member-coupon-camera-open { width: 100%; min-height: 40px; margin-top: 10px; border: 1px solid var(--cc-line); border-radius: 10px; color: var(--cc-text); background: #fff; font-weight: 800; }
.cc-member-coupon-camera { position: relative; overflow: hidden; margin-top: 10px; border-radius: 12px; background: #111827; }
.cc-member-coupon-camera[hidden] { display: none; }
.cc-member-coupon-camera video { display: block; width: 100%; max-height: 320px; object-fit: cover; }
.cc-member-coupon-camera button { position: absolute; right: 10px; bottom: 10px; min-height: 34px; padding: 0 12px; border: 0; border-radius: 8px; color: #fff; background: rgba(0, 0, 0, .72); font-weight: 700; }
.cc-member-coupon-or { display: flex; align-items: center; gap: 8px; margin: 12px 0; color: var(--cc-muted); font-size: 9px; }
.cc-member-coupon-or::before,
.cc-member-coupon-or::after { height: 1px; flex: 1; background: var(--cc-line); content: ""; }
.cc-member-coupon-confirm-card { display: grid; gap: 14px; padding: 18px; border: 1px solid #f0c6cc; border-radius: 14px; background: #fffafb; }
.cc-member-coupon-confirm-card h3 { margin: 0; color: var(--cc-text); font-size: 23px; }
.cc-member-coupon-confirm-card dl { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; margin: 0; }
.cc-member-coupon-confirm-card dl div { display: grid; gap: 4px; padding: 11px; border-radius: 9px; background: #fff; }
.cc-member-coupon-confirm-card dt { color: var(--cc-muted); font-size: 9px; }
.cc-member-coupon-confirm-card dd { margin: 0; color: var(--cc-text); font-size: 11px; font-weight: 800; }
.cc-member-coupon-confirm-card > p { margin: 0; color: var(--cc-muted); font-size: 10px; line-height: 1.7; }
.cc-member-coupon-confirm-card > button { justify-self: end; }
.cc-member-coupon-empty { display: grid; place-items: center; min-height: 220px; padding: 30px; color: var(--cc-muted); text-align: center; }
.cc-member-coupon-empty strong { color: var(--cc-text); font-size: 17px; }
.cc-member-coupon-empty span { margin-top: 8px; font-size: 10px; }

@media (max-width: 1440px) {
  .cc-member-coupon-template-layout,
  .cc-member-coupon-grant-layout { grid-template-columns: minmax(390px, .9fr) minmax(500px, 1.1fr); }
  .cc-member-coupon-template-list { grid-template-columns: 1fr; }
  .cc-member-coupon-grant-layout .cc-member-coupon-member-picker { grid-template-columns: 1fr; }
  .cc-member-coupon-template-row {
    grid-template-columns: minmax(330px, 1fr) minmax(300px, .8fr) 68px 170px;
    gap: 14px;
  }
}

@media (max-width: 1100px) {
  .cc-member-coupon-template-layout,
  .cc-member-coupon-grant-layout,
  .cc-member-coupon-redemption-layout { grid-template-columns: 1fr; }
  .cc-member-coupon-template-form,
  .cc-member-coupon-grant-form { position: static; }
  .cc-member-coupon-metrics { grid-template-columns: repeat(3, 1fr); }
  .cc-member-coupon-metrics article:nth-child(3) { border-right: 0; }
  .cc-member-coupon-template-row { grid-template-columns: minmax(0, 1fr) auto auto; }
  .cc-member-coupon-template-row-stats { grid-column: 1 / -1; grid-row: 2; }
  .cc-member-coupon-template-filters { grid-template-columns: minmax(220px, 1fr) 140px 140px; }
  .cc-member-coupon-template-filters button { min-height: 40px; }
  .cc-member-coupon-editor-section { grid-template-columns: 1fr; }
  .cc-member-coupon-editor-section > .cc-member-coupon-event-picker,
  .cc-member-coupon-advanced,
  .cc-member-coupon-grant-editor .cc-member-coupon-member-picker { grid-column: auto; }
  .cc-member-coupon-grant-editor .cc-member-coupon-member-picker { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .cc-member-coupon-adjust-card { grid-template-columns: 1fr; }
  .cc-member-coupon-adjust-fields { grid-template-columns: 170px minmax(220px, 1fr) 190px; }
}

@media (max-width: 700px) {
  .cc-member-coupon-page { padding: 14px; }
  .cc-member-coupon-hero { align-items: stretch; flex-direction: column; padding: 20px; }
  .cc-member-coupon-tabs { display: grid; grid-template-columns: 1fr 1fr; }
  .cc-member-coupon-form-grid,
  .cc-member-coupon-event-picker,
  .cc-member-coupon-confirm-card dl { grid-template-columns: 1fr; }
  .cc-member-coupon-form-grid > label.is-wide { grid-column: auto; }
  .cc-member-coupon-filters,
  .cc-member-coupon-redemption-input form { grid-template-columns: 1fr; }
  .cc-member-coupon-index-head { align-items: stretch; flex-direction: column; }
  .cc-member-coupon-template-filters { grid-template-columns: 1fr 1fr; }
  .cc-member-coupon-template-filters label:first-child { grid-column: 1 / -1; }
  .cc-member-coupon-template-row { grid-template-columns: 1fr; padding: 16px; }
  .cc-member-coupon-template-row-stats,
  .cc-member-coupon-template-state,
  .cc-member-coupon-template-row-actions { grid-column: auto; grid-row: auto; }
  .cc-member-coupon-template-state { justify-self: start; }
  .cc-member-coupon-editor-head { grid-template-columns: auto minmax(0, 1fr); }
  .cc-member-coupon-editor-section { padding: 18px; }
  .cc-member-coupon-grant-editor .cc-member-coupon-member-picker { grid-template-columns: 1fr; }
  .cc-member-coupon-member-picker > div { align-items: flex-start; flex-wrap: wrap; }
  .cc-member-coupon-member-picker > div aside { width: 100%; margin-left: 0; }
  .cc-member-coupon-member-results,
  .cc-member-coupon-adjust-fields { grid-template-columns: 1fr; }
  .cc-member-coupon-adjust-fields > label.is-wide { grid-column: auto; }
  .cc-member-coupon-selected-member { grid-template-columns: auto minmax(0, 1fr); }
  .cc-member-coupon-selected-member em,
  .cc-member-coupon-selected-member button { grid-column: 2; justify-self: start; }
  .cc-member-coupon-editor-actions { align-items: stretch; flex-direction: column; }
  .cc-member-coupon-editor-actions > span { margin-right: 0; }
  .cc-member-coupon-editor-actions button { width: 100%; }
}

* {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
  background: var(--cc-bg);
}

body {
  min-width: 320px;
  margin: 0;
  color: var(--cc-text);
  background:
    radial-gradient(circle at 58% -18%, rgba(250, 43, 62, 0.12), transparent 36%),
    linear-gradient(180deg, #090a0d 0%, var(--cc-bg) 42%, #07080a 100%);
  font-family: Inter, "SF Pro Display", "PingFang SC", "Microsoft YaHei", system-ui, sans-serif;
  -webkit-font-smoothing: antialiased;
}

button,
input {
  font: inherit;
}

button,
a {
  -webkit-tap-highlight-color: transparent;
}

a {
  color: inherit;
  text-decoration: none;
}

[hidden] {
  display: none !important;
}

.cc-visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.cc-shell {
  min-height: 100vh;
}

.cc-sidebar {
  position: fixed;
  inset: 0 auto 0 0;
  z-index: 20;
  display: flex;
  width: var(--cc-sidebar);
  min-height: 100vh;
  flex-direction: column;
  border-right: 1px solid var(--cc-line);
  background: rgba(10, 11, 14, 0.96);
  box-shadow: 14px 0 45px rgba(0, 0, 0, 0.18);
  backdrop-filter: blur(18px);
}

.cc-brand {
  display: flex;
  min-height: 96px;
  align-items: center;
  gap: 13px;
  padding: 20px 22px;
  border-bottom: 1px solid var(--cc-line);
}

.cc-brand-mark {
  display: grid;
  width: 47px;
  height: 47px;
  place-items: center;
  border: 1px solid rgba(250, 43, 62, 0.65);
  border-radius: 13px;
  color: #fff;
  background: linear-gradient(145deg, var(--cc-red), var(--cc-red-dark));
  box-shadow: 0 8px 24px rgba(250, 43, 62, 0.22);
  font-size: 15px;
  font-weight: 900;
  letter-spacing: -1px;
}

.cc-brand strong,
.cc-brand small {
  display: block;
}

.cc-brand strong {
  font-size: 16px;
  letter-spacing: 0.08em;
}

.cc-brand small {
  margin-top: 4px;
  color: var(--cc-muted);
  font-size: 11px;
  letter-spacing: 0.18em;
}

.cc-nav {
  display: grid;
  gap: 7px;
  padding: 24px 14px;
}

.cc-nav a {
  position: relative;
  display: flex;
  min-height: 48px;
  align-items: center;
  gap: 13px;
  padding: 0 14px;
  border: 1px solid transparent;
  border-radius: 11px;
  color: var(--cc-muted-2);
  font-size: 14px;
  font-weight: 650;
  transition: 160ms ease;
}

.cc-nav a span {
  color: #5e636d;
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  font-size: 10px;
  letter-spacing: 0.08em;
}

.cc-nav a:hover,
.cc-nav a:focus-visible {
  border-color: var(--cc-line);
  color: var(--cc-text);
  background: rgba(255, 255, 255, 0.035);
  outline: none;
}

.cc-nav a.is-active {
  border-color: rgba(250, 43, 62, 0.24);
  color: #fff;
  background: linear-gradient(90deg, rgba(250, 43, 62, 0.16), rgba(250, 43, 62, 0.04));
}

.cc-nav a.is-active::before {
  position: absolute;
  top: 11px;
  bottom: 11px;
  left: -15px;
  width: 3px;
  border-radius: 0 3px 3px 0;
  background: var(--cc-red);
  content: "";
}

.cc-nav a.is-active span {
  color: var(--cc-red);
}

.cc-nav a.is-plan-locked {
  padding-right: 66px;
  color: #9299a2;
  cursor: pointer;
}

.cc-nav a.is-plan-locked::after {
  position: absolute;
  right: 10px;
  padding: 4px 6px;
  border: 1px solid rgba(250, 43, 62, 0.3);
  border-radius: 999px;
  color: #ff7182;
  background: rgba(250, 43, 62, 0.09);
  content: "旗舰版";
  font-size: 9px;
  font-weight: 850;
  letter-spacing: 0.04em;
}

.cc-nav a.is-plan-locked:hover,
.cc-nav a.is-plan-locked:focus-visible {
  border-color: rgba(250, 43, 62, 0.22);
  color: #ffffff;
  background: rgba(250, 43, 62, 0.055);
}

.cc-sidebar-footer {
  margin-top: auto;
  padding: 18px 18px 22px;
  border-top: 1px solid var(--cc-line);
}

.cc-sidebar-footer p {
  margin: 0 0 12px;
  color: var(--cc-muted);
  font-size: 11px;
  letter-spacing: 0.08em;
}

.cc-sidebar-footer a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 11px 12px;
  border: 1px solid var(--cc-line);
  border-radius: 9px;
  color: var(--cc-muted-2);
  font-size: 12px;
  transition: 160ms ease;
}

.cc-sidebar-footer a:hover {
  border-color: var(--cc-line-strong);
  color: #fff;
}

.cc-main {
  min-width: 0;
  margin-left: var(--cc-sidebar);
}

.cc-topbar {
  position: sticky;
  top: 0;
  z-index: 15;
  display: flex;
  min-height: 96px;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 15px clamp(24px, 2.6vw, 48px);
  border-bottom: 1px solid var(--cc-line);
  background: rgba(8, 9, 11, 0.9);
  backdrop-filter: blur(20px);
}

.cc-event-identity {
  min-width: 0;
}

.cc-event-identity p,
.cc-section-heading p,
.cc-panel-heading p {
  margin: 0 0 7px;
  color: var(--cc-red);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.2em;
  text-transform: uppercase;
}

.cc-event-identity h1 {
  max-width: 42vw;
  overflow: hidden;
  margin: 0;
  font-size: clamp(18px, 1.65vw, 25px);
  font-weight: 780;
  letter-spacing: -0.02em;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cc-topbar-meta {
  display: flex;
  align-items: center;
  gap: 20px;
}

.cc-meta-block {
  display: grid;
  gap: 5px;
  text-align: right;
}

.cc-meta-block span,
.cc-device-pill small {
  color: var(--cc-muted);
  font-size: 10px;
  font-weight: 650;
  letter-spacing: 0.08em;
}

.cc-meta-block strong {
  font-size: 12px;
  font-weight: 650;
}

.cc-device-pill {
  display: flex;
  min-width: 142px;
  align-items: center;
  gap: 10px;
  padding: 9px 13px;
  border: 1px solid var(--cc-line);
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.025);
}

.cc-device-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #666b74;
  box-shadow: 0 0 0 4px rgba(102, 107, 116, 0.1);
}

.cc-device-pill.has-devices .cc-device-dot {
  background: var(--cc-amber);
  box-shadow: 0 0 0 4px rgba(246, 185, 75, 0.12);
}

.cc-device-pill div {
  display: grid;
  gap: 2px;
}

.cc-device-pill strong {
  font-size: 12px;
  font-weight: 720;
}

.cc-legacy-link {
  padding: 10px 14px;
  border: 1px solid var(--cc-line-strong);
  border-radius: 9px;
  color: var(--cc-muted-2);
  font-size: 12px;
  font-weight: 700;
  transition: 160ms ease;
}

.cc-legacy-link:hover,
.cc-legacy-link:focus-visible {
  border-color: rgba(250, 43, 62, 0.48);
  color: #fff;
  outline: none;
}

.cc-connection-banner {
  display: flex;
  align-items: center;
  gap: 13px;
  margin: 18px clamp(24px, 2.6vw, 48px) 0;
  padding: 12px 15px;
  border: 1px solid rgba(246, 185, 75, 0.28);
  border-radius: 12px;
  background: rgba(246, 185, 75, 0.07);
  color: #f9d693;
}

.cc-connection-icon {
  display: grid;
  width: 26px;
  height: 26px;
  flex: 0 0 26px;
  place-items: center;
  border-radius: 50%;
  color: #15110a;
  background: var(--cc-amber);
  font-size: 14px;
  font-weight: 900;
}

.cc-connection-banner div {
  min-width: 0;
  flex: 1;
}

.cc-connection-banner strong {
  display: block;
  font-size: 13px;
}

.cc-connection-banner p {
  margin: 3px 0 0;
  color: #c6b38f;
  font-size: 11px;
}

.cc-connection-banner button {
  padding: 7px 11px;
  border: 1px solid rgba(246, 185, 75, 0.35);
  border-radius: 8px;
  color: #f9d693;
  background: transparent;
  cursor: pointer;
  font-size: 11px;
  font-weight: 700;
}

.cc-action-feedback {
  display: grid;
  grid-template-columns: 30px minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  margin: 12px clamp(24px, 2.6vw, 48px) 0;
  padding: 12px 14px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 12px;
  background: rgba(23, 25, 30, 0.96);
  box-shadow: 0 16px 35px rgba(0, 0, 0, 0.22);
}

.cc-feedback-icon {
  display: grid;
  width: 30px;
  height: 30px;
  place-items: center;
  border-radius: 9px;
  color: var(--cc-muted-2);
  background: rgba(255, 255, 255, 0.06);
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  font-size: 13px;
  font-weight: 900;
}

.cc-action-feedback > div {
  min-width: 0;
}

.cc-action-feedback strong {
  display: block;
  font-size: 12px;
}

.cc-action-feedback p {
  margin: 3px 0 0;
  color: var(--cc-muted);
  font-size: 10px;
  line-height: 1.5;
}

.cc-action-feedback > button {
  display: grid;
  width: 28px;
  height: 28px;
  place-items: center;
  border: 0;
  border-radius: 7px;
  color: var(--cc-muted);
  background: transparent;
  cursor: pointer;
  font-size: 18px;
}

.cc-action-feedback[data-tone="processing"] {
  border-color: rgba(246, 185, 75, 0.25);
}

.cc-action-feedback[data-tone="processing"] .cc-feedback-icon,
.cc-action-feedback[data-tone="warning"] .cc-feedback-icon {
  color: #171109;
  background: var(--cc-amber);
}

.cc-action-feedback[data-tone="success"] {
  border-color: rgba(66, 215, 151, 0.25);
}

.cc-action-feedback[data-tone="success"] .cc-feedback-icon {
  color: #061710;
  background: var(--cc-green);
}

.cc-action-feedback[data-tone="error"],
.cc-action-feedback[data-tone="permission"] {
  border-color: rgba(255, 102, 116, 0.3);
}

.cc-action-feedback[data-tone="error"] .cc-feedback-icon,
.cc-action-feedback[data-tone="permission"] .cc-feedback-icon {
  color: #1d080b;
  background: var(--cc-danger);
}

.cc-action-feedback[data-tone="conflict"] {
  border-color: rgba(250, 43, 62, 0.3);
}

.cc-action-feedback[data-tone="conflict"] .cc-feedback-icon {
  color: #fff;
  background: var(--cc-red);
}

.cc-content {
  display: grid;
  gap: 24px;
  max-width: 1740px;
  margin: 0 auto;
  padding: 28px clamp(24px, 2.6vw, 48px) 52px;
}

.cc-overview {
  display: grid;
  grid-template-columns: minmax(470px, 1.5fr) minmax(250px, 0.72fr) minmax(250px, 0.72fr);
  gap: 16px;
}

.cc-timer-card,
.cc-blind-card,
.cc-panel,
.cc-stats-grid article {
  border: 1px solid var(--cc-line);
  background: linear-gradient(150deg, rgba(23, 25, 30, 0.98), rgba(14, 16, 20, 0.98));
  box-shadow: var(--cc-shadow);
}

.cc-timer-card {
  position: relative;
  min-height: 370px;
  overflow: hidden;
  padding: 25px 30px 27px;
  border-color: rgba(250, 43, 62, 0.2);
  border-radius: var(--cc-radius);
}

.cc-timer-card::before {
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(90deg, rgba(250, 43, 62, 0.05) 1px, transparent 1px),
    linear-gradient(rgba(250, 43, 62, 0.04) 1px, transparent 1px);
  background-size: 46px 46px;
  mask-image: linear-gradient(to bottom, black, transparent 82%);
  content: "";
}

.cc-timer-card::after {
  position: absolute;
  top: -110px;
  right: -90px;
  width: 310px;
  height: 310px;
  border-radius: 50%;
  background: rgba(250, 43, 62, 0.085);
  filter: blur(35px);
  content: "";
}

.cc-card-topline,
.cc-progress-label,
.cc-clock-wrap,
.cc-progress {
  position: relative;
  z-index: 2;
}

.cc-card-topline {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
}

.cc-live-status {
  display: flex;
  align-items: center;
  gap: 9px;
  color: var(--cc-muted-2);
  font-size: 12px;
  letter-spacing: 0.08em;
}

.cc-live-status span {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #737985;
}

.cc-live-status[data-status="running"] {
  color: var(--cc-green);
}

.cc-live-status[data-status="running"] span {
  background: var(--cc-green);
  box-shadow: 0 0 0 5px rgba(66, 215, 151, 0.1);
}

.cc-live-status[data-status="paused"] {
  color: var(--cc-amber);
}

.cc-live-status[data-status="paused"] span {
  background: var(--cc-amber);
}

.cc-live-status[data-status="error"] {
  color: var(--cc-danger);
}

.cc-live-status[data-status="error"] span {
  background: var(--cc-danger);
}

.cc-level-position {
  display: flex;
  align-items: baseline;
  gap: 10px;
}

.cc-level-position span {
  color: var(--cc-muted);
  font-size: 10px;
  letter-spacing: 0.12em;
}

.cc-level-position strong {
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  font-size: 13px;
}

.cc-clock-wrap {
  display: grid;
  min-height: 246px;
  place-content: center;
  text-align: center;
}

.cc-clock-wrap p {
  margin: 0 0 8px;
  color: var(--cc-muted);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.22em;
}

.cc-clock {
  color: #fff;
  font-family: "Arial Narrow", "Roboto Condensed", ui-monospace, SFMono-Regular, Menlo, monospace;
  font-size: clamp(82px, 8.2vw, 146px);
  font-stretch: condensed;
  font-variant-numeric: tabular-nums;
  font-weight: 900;
  letter-spacing: -0.085em;
  line-height: 0.96;
  text-indent: -0.085em;
  text-shadow: 0 10px 40px rgba(0, 0, 0, 0.4);
}

.cc-clock-wrap small {
  margin-top: 13px;
  color: #666c76;
  font-size: 10px;
  letter-spacing: 0.08em;
}

.cc-progress-label {
  display: flex;
  justify-content: space-between;
  margin-bottom: 9px;
  color: var(--cc-muted);
  font-size: 10px;
}

.cc-progress {
  height: 5px;
  overflow: hidden;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.07);
}

.cc-progress span {
  display: block;
  width: 0;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, var(--cc-red-dark), var(--cc-red));
  box-shadow: 0 0 16px rgba(250, 43, 62, 0.36);
  transition: width 250ms linear;
}

.cc-blind-card {
  display: flex;
  min-height: 370px;
  flex-direction: column;
  padding: 24px;
  border-radius: var(--cc-radius);
}

.cc-current-blind {
  border-top: 2px solid var(--cc-red);
}

.cc-next-blind {
  border-top: 2px solid rgba(255, 255, 255, 0.2);
}

.cc-section-label,
.cc-panel-heading,
.cc-section-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
}

.cc-section-label span {
  color: var(--cc-muted);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.14em;
}

.cc-section-label strong {
  color: var(--cc-red);
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  font-size: 11px;
  letter-spacing: 0.08em;
}

.cc-blind-values {
  display: grid;
  flex: 1;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: 9px;
}

.cc-blind-values div {
  display: grid;
  gap: 8px;
  text-align: center;
}

.cc-blind-values span,
.cc-next-summary span {
  color: var(--cc-muted);
  font-size: 10px;
  letter-spacing: 0.14em;
}

.cc-blind-values strong {
  overflow: hidden;
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  font-size: clamp(27px, 2.6vw, 44px);
  font-variant-numeric: tabular-nums;
  letter-spacing: -0.07em;
  text-overflow: ellipsis;
}

.cc-blind-values i {
  color: #41454e;
  font-size: 22px;
  font-style: normal;
}

.cc-ante-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 15px 0 0;
  border-top: 1px solid var(--cc-line);
}

.cc-ante-row span {
  color: var(--cc-muted);
  font-size: 10px;
  letter-spacing: 0.13em;
}

.cc-ante-row strong {
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  font-size: 21px;
  font-variant-numeric: tabular-nums;
}

.cc-next-summary {
  display: grid;
  flex: 1;
  align-content: center;
  gap: 14px;
}

.cc-next-summary div {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  padding-bottom: 12px;
  border-bottom: 1px solid var(--cc-line);
}

.cc-next-summary strong {
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  font-size: clamp(20px, 1.8vw, 29px);
  font-variant-numeric: tabular-nums;
  letter-spacing: -0.04em;
}

.cc-next-blind > p {
  min-height: 31px;
  margin: 14px 0 0;
  color: #6f747e;
  font-size: 10px;
  line-height: 1.55;
}

.cc-section-heading,
.cc-panel-heading {
  margin-bottom: 17px;
}

.cc-section-heading h2,
.cc-panel-heading h2 {
  margin: 0;
  font-size: 18px;
  letter-spacing: -0.02em;
}

.cc-section-heading > span,
.cc-panel-heading > span,
.cc-panel-heading > a {
  color: var(--cc-muted);
  font-size: 10px;
  letter-spacing: 0.05em;
}

.cc-panel-heading > a {
  color: var(--cc-red);
  font-weight: 700;
}

.cc-stats-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 12px;
}

.cc-stats-grid article {
  position: relative;
  display: grid;
  min-height: 128px;
  align-content: center;
  gap: 7px;
  overflow: hidden;
  padding: 19px 21px;
  border-radius: 14px;
}

.cc-stats-grid article::after {
  position: absolute;
  right: -26px;
  bottom: -45px;
  width: 95px;
  height: 95px;
  border: 1px solid rgba(255, 255, 255, 0.04);
  border-radius: 50%;
  content: "";
}

.cc-stats-grid span {
  color: var(--cc-muted-2);
  font-size: 11px;
}

.cc-stats-grid strong {
  overflow: hidden;
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  font-size: clamp(26px, 2.1vw, 36px);
  font-variant-numeric: tabular-nums;
  letter-spacing: -0.05em;
  text-overflow: ellipsis;
}

.cc-stats-grid small {
  color: #555a64;
  font-size: 8px;
  font-weight: 700;
  letter-spacing: 0.16em;
}

.cc-two-column {
  display: grid;
  grid-template-columns: minmax(0, 1.55fr) minmax(300px, 0.75fr);
  gap: 16px;
}

.cc-panel {
  padding: 23px;
  border-radius: var(--cc-radius);
}

.cc-panel-intro {
  margin: -5px 0 18px;
  color: var(--cc-muted);
  font-size: 11px;
  line-height: 1.7;
}

.cc-phase-tag,
.cc-readonly-badge {
  padding: 5px 8px;
  border: 1px solid rgba(246, 185, 75, 0.2);
  border-radius: 999px;
  color: var(--cc-amber) !important;
  background: rgba(246, 185, 75, 0.06);
}

.cc-control-safety {
  max-width: 240px;
  padding: 5px 8px;
  overflow: hidden;
  border: 1px solid rgba(66, 215, 151, 0.18);
  border-radius: 999px;
  color: var(--cc-green) !important;
  background: rgba(66, 215, 151, 0.05);
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cc-control-safety[data-state="locked"] {
  border-color: rgba(246, 185, 75, 0.2);
  color: var(--cc-amber) !important;
  background: rgba(246, 185, 75, 0.05);
}

.cc-control-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 9px;
}

.cc-control-grid button {
  display: grid;
  min-height: 89px;
  grid-template-columns: 27px 1fr;
  grid-template-rows: auto auto;
  align-content: center;
  align-items: center;
  gap: 4px 9px;
  padding: 13px;
  border: 1px solid var(--cc-line);
  border-radius: 11px;
  color: #747984;
  background: rgba(255, 255, 255, 0.018);
  text-align: left;
  cursor: not-allowed;
  transition: border-color 150ms ease, background 150ms ease, color 150ms ease, transform 150ms ease;
}

.cc-control-grid button > span {
  display: grid;
  width: 27px;
  height: 27px;
  grid-row: 1 / 3;
  place-items: center;
  border-radius: 8px;
  color: #717680;
  background: rgba(255, 255, 255, 0.05);
  font-size: 12px;
  font-weight: 900;
}

.cc-control-grid strong {
  font-size: 11px;
  font-weight: 700;
}

.cc-control-grid small {
  color: #555a64;
  font-size: 8px;
}

.cc-control-grid button:not(:disabled) {
  border-color: rgba(255, 255, 255, 0.14);
  color: var(--cc-text);
  background: rgba(255, 255, 255, 0.04);
  cursor: pointer;
}

.cc-control-grid button:not(:disabled):hover,
.cc-control-grid button:not(:disabled):focus-visible {
  border-color: rgba(250, 43, 62, 0.48);
  background: rgba(250, 43, 62, 0.07);
  outline: none;
  transform: translateY(-1px);
}

.cc-control-grid button:not(:disabled) > span {
  color: #fff;
  background: linear-gradient(145deg, var(--cc-red), var(--cc-red-dark));
}

.cc-control-grid button.is-pending {
  border-color: rgba(246, 185, 75, 0.34);
  color: var(--cc-amber);
  background: rgba(246, 185, 75, 0.05);
}

.cc-control-grid button.is-pending > span {
  color: var(--cc-amber);
  background: rgba(246, 185, 75, 0.09);
}

.cc-next-control:not(:disabled) {
  border-color: rgba(250, 43, 62, 0.3) !important;
}

.cc-control-note {
  margin: 14px 0 0;
  padding-top: 12px;
  border-top: 1px solid var(--cc-line);
  color: #616670;
  font-size: 9px;
  line-height: 1.6;
}

.cc-device-summary {
  border-color: rgba(246, 185, 75, 0.14);
}

.cc-device-count {
  display: flex;
  align-items: baseline;
  gap: 10px;
  margin: 14px 0 6px;
}

.cc-device-count strong {
  color: var(--cc-amber);
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  font-size: 49px;
  letter-spacing: -0.06em;
}

.cc-device-count span {
  color: var(--cc-muted-2);
  font-size: 11px;
}

.cc-device-summary > p {
  margin: 0 0 17px;
  color: var(--cc-muted);
  font-size: 10px;
}

.cc-device-rule {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  padding: 10px 0;
  border-top: 1px solid var(--cc-line);
  font-size: 10px;
}

.cc-device-rule span {
  color: var(--cc-muted);
}

.cc-device-rule strong {
  font-weight: 650;
}

.cc-device-caution {
  padding-top: 12px;
  border-top: 1px solid var(--cc-line);
  color: #686d76 !important;
  line-height: 1.55;
}

.cc-template-list {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

.cc-template-item {
  position: relative;
  display: grid;
  min-height: 96px;
  align-content: center;
  gap: 7px;
  padding: 17px;
  border: 1px solid var(--cc-line);
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.018);
}

.cc-template-item strong {
  padding-right: 58px;
  overflow: hidden;
  font-size: 12px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cc-template-item span {
  color: var(--cc-muted);
  font-size: 9px;
}

.cc-template-item small {
  position: absolute;
  top: 14px;
  right: 13px;
  padding: 4px 6px;
  border: 1px solid var(--cc-line);
  border-radius: 999px;
  color: #666c76;
  font-size: 7px;
}

.cc-bottom-grid {
  align-items: start;
  grid-template-columns: minmax(0, 0.85fr) minmax(420px, 1.15fr);
}

.cc-device-list,
.cc-audit-list {
  display: grid;
  gap: 8px;
}

.cc-device-item {
  display: grid;
  grid-template-columns: 42px 1fr auto;
  align-items: center;
  gap: 12px;
  padding: 12px;
  border: 1px solid var(--cc-line);
  border-radius: 11px;
  background: rgba(255, 255, 255, 0.018);
}

.cc-device-icon {
  display: grid;
  width: 42px;
  height: 35px;
  place-items: center;
  border: 1px solid rgba(246, 185, 75, 0.18);
  border-radius: 8px;
  color: var(--cc-amber);
  background: rgba(246, 185, 75, 0.06);
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  font-size: 9px;
  font-weight: 800;
}

.cc-device-item div {
  min-width: 0;
}

.cc-device-item strong {
  display: block;
  overflow: hidden;
  font-size: 11px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cc-device-item p {
  margin: 4px 0 0;
  color: var(--cc-muted);
  font-size: 9px;
}

.cc-device-status {
  padding: 5px 7px;
  border-radius: 7px;
  color: #a8adb5;
  background: rgba(255, 255, 255, 0.045);
  font-size: 8px;
}

.cc-audit-list {
  max-height: 420px;
  overflow: auto;
  padding-right: 5px;
  scrollbar-color: #363a42 transparent;
  scrollbar-width: thin;
}

.cc-audit-item {
  display: grid;
  grid-template-columns: 8px 1fr;
  gap: 11px;
  padding: 10px 2px;
  border-bottom: 1px solid var(--cc-line);
}

.cc-audit-marker {
  width: 7px;
  height: 7px;
  margin-top: 5px;
  border-radius: 50%;
  background: var(--cc-green);
  box-shadow: 0 0 0 4px rgba(66, 215, 151, 0.07);
}

.cc-audit-marker.is-failure {
  background: var(--cc-danger);
  box-shadow: 0 0 0 4px rgba(255, 102, 116, 0.07);
}

.cc-audit-item > div,
.cc-audit-item > div > div {
  min-width: 0;
}

.cc-audit-item > div > div {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

.cc-audit-item strong {
  overflow: hidden;
  font-size: 11px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cc-audit-item small {
  flex: 0 0 auto;
  padding: 3px 6px;
  border-radius: 999px;
  color: var(--cc-green);
  background: rgba(66, 215, 151, 0.07);
  font-size: 7px;
}

.cc-audit-item small.is-failure {
  color: var(--cc-danger);
  background: rgba(255, 102, 116, 0.08);
}

.cc-audit-item p {
  margin: 5px 0;
  overflow: hidden;
  color: var(--cc-muted-2);
  font-size: 9px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cc-audit-item > div > span {
  color: #5f646d;
  font-size: 8px;
}

.cc-list-state:empty {
  display: none;
}

.cc-state-message,
.cc-empty-state {
  margin: 0;
  padding: 18px;
  border: 1px dashed var(--cc-line-strong);
  border-radius: 10px;
  color: var(--cc-muted);
  background: rgba(255, 255, 255, 0.014);
  font-size: 10px;
  line-height: 1.7;
}

.cc-state-message.is-error {
  border-color: rgba(255, 102, 116, 0.25);
  color: #dc8e96;
  background: rgba(255, 102, 116, 0.05);
}

.cc-state-message.is-permission {
  border-color: rgba(246, 185, 75, 0.25);
  color: #d8b877;
  background: rgba(246, 185, 75, 0.05);
}

.cc-modal-backdrop {
  position: fixed;
  inset: 0;
  z-index: 80;
  display: grid;
  place-items: center;
  padding: 24px;
  background: rgba(3, 4, 6, 0.78);
  backdrop-filter: blur(12px);
}

.cc-confirm-modal {
  width: min(100%, 480px);
  padding: 28px;
  border: 1px solid rgba(250, 43, 62, 0.28);
  border-radius: 18px;
  background: linear-gradient(150deg, #17191e, #0e1014);
  box-shadow: 0 30px 100px rgba(0, 0, 0, 0.62);
}

.cc-confirm-mark {
  display: grid;
  width: 42px;
  height: 42px;
  margin-bottom: 20px;
  place-items: center;
  border-radius: 12px;
  color: #fff;
  background: linear-gradient(145deg, var(--cc-red), var(--cc-red-dark));
  box-shadow: 0 10px 25px rgba(250, 43, 62, 0.2);
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  font-size: 19px;
  font-weight: 900;
}

.cc-confirm-modal h2 {
  margin: 0;
  font-size: 23px;
  letter-spacing: -0.035em;
}

.cc-confirm-modal > p:not(.cc-kicker) {
  margin: 12px 0 20px;
  color: var(--cc-muted);
  font-size: 11px;
  line-height: 1.75;
}

.cc-confirm-details {
  display: grid;
  gap: 8px;
  margin-bottom: 22px;
}

.cc-confirm-details > div {
  display: grid;
  gap: 6px;
  padding: 13px 14px;
  border: 1px solid var(--cc-line);
  border-radius: 10px;
  background: rgba(255, 255, 255, 0.02);
}

.cc-confirm-details > div.is-emphasis {
  border-color: rgba(250, 43, 62, 0.26);
  background: rgba(250, 43, 62, 0.055);
}

.cc-confirm-details span {
  color: var(--cc-muted);
  font-size: 9px;
  letter-spacing: 0.08em;
}

.cc-confirm-details strong {
  font-size: 13px;
  line-height: 1.45;
}

.cc-confirm-actions {
  display: grid;
  grid-template-columns: 1fr 1.5fr;
  gap: 9px;
}

.cc-confirm-actions button {
  min-height: 43px;
  border: 1px solid var(--cc-line-strong);
  border-radius: 9px;
  color: var(--cc-muted-2);
  background: rgba(255, 255, 255, 0.025);
  cursor: pointer;
  font-size: 11px;
  font-weight: 750;
}

.cc-confirm-actions .cc-confirm-submit {
  border-color: rgba(250, 43, 62, 0.5);
  color: #fff;
  background: linear-gradient(135deg, var(--cc-red), var(--cc-red-dark));
}

.cc-list-state:not(:empty) + .cc-device-list,
.cc-list-state:not(:empty) + .cc-audit-list {
  margin-top: 10px;
}

.cc-login {
  display: grid;
  min-height: 100vh;
  place-items: center;
  padding: 24px;
  background:
    linear-gradient(90deg, rgba(250, 43, 62, 0.025) 1px, transparent 1px),
    linear-gradient(rgba(250, 43, 62, 0.025) 1px, transparent 1px);
  background-size: 48px 48px;
}

.cc-login-card {
  position: relative;
  width: min(100%, 440px);
  padding: 38px;
  border: 1px solid var(--cc-line-strong);
  border-radius: 20px;
  background: rgba(17, 19, 23, 0.96);
  box-shadow: 0 30px 90px rgba(0, 0, 0, 0.5);
}

.cc-login-card::before {
  position: absolute;
  inset: 0 auto 0 0;
  width: 3px;
  border-radius: 20px 0 0 20px;
  background: linear-gradient(var(--cc-red), transparent 82%);
  content: "";
}

.cc-login-back {
  position: absolute;
  top: 20px;
  right: 22px;
  color: var(--cc-muted);
  font-size: 10px;
}

.cc-login-brand {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 34px;
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 0.1em;
}

.cc-login-brand span {
  padding: 8px 7px;
  border-radius: 8px;
  color: #fff;
  background: var(--cc-red);
  letter-spacing: -0.05em;
}

.cc-kicker {
  margin: 0 0 7px;
  color: var(--cc-red);
  font-size: 8px;
  font-weight: 800;
  letter-spacing: 0.26em;
}

.cc-login-card h1 {
  margin: 0;
  font-size: 30px;
  letter-spacing: -0.04em;
}

.cc-login-copy {
  margin: 14px 0 26px;
  color: var(--cc-muted);
  font-size: 11px;
  line-height: 1.8;
}

.cc-login-card form {
  display: grid;
  gap: 15px;
}

.cc-login-card label {
  display: grid;
  gap: 7px;
}

.cc-login-card label span {
  color: var(--cc-muted-2);
  font-size: 10px;
  font-weight: 700;
}

.cc-login-card input {
  width: 100%;
  height: 45px;
  padding: 0 13px;
  border: 1px solid var(--cc-line-strong);
  border-radius: 9px;
  color: var(--cc-text);
  background: #0c0e11;
  outline: none;
  font-size: 13px;
}

.cc-login-card input:focus {
  border-color: rgba(250, 43, 62, 0.65);
  box-shadow: 0 0 0 3px rgba(250, 43, 62, 0.08);
}

.cc-primary-button {
  height: 46px;
  margin-top: 5px;
  border: 0;
  border-radius: 9px;
  color: #fff;
  background: linear-gradient(135deg, var(--cc-red), var(--cc-red-dark));
  box-shadow: 0 10px 24px rgba(250, 43, 62, 0.18);
  cursor: pointer;
  font-size: 12px;
  font-weight: 800;
}

.cc-primary-button:disabled {
  cursor: wait;
  opacity: 0.65;
}

.cc-form-error {
  min-height: 17px;
  margin: -4px 0 0;
  color: var(--cc-danger);
  font-size: 10px;
}

.cc-readonly-note {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  margin: 22px 0 0;
  color: #60656e;
  font-size: 9px;
}

.cc-readonly-note span {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--cc-green);
}

.cc-file-warning {
  display: grid;
  min-height: 100vh;
  place-content: center;
  padding: 24px;
  text-align: center;
}

.cc-file-warning h1 {
  margin: 0 0 8px;
}

.cc-file-warning p {
  color: var(--cc-muted);
}

.cc-file-warning a {
  margin-top: 12px;
  color: var(--cc-red);
}

@media (max-width: 1540px) {
  :root {
    --cc-sidebar: 220px;
  }

  .cc-overview {
    grid-template-columns: minmax(430px, 1.45fr) minmax(220px, 0.72fr) minmax(220px, 0.72fr);
  }

  .cc-timer-card,
  .cc-blind-card {
    min-height: 340px;
  }

  .cc-clock-wrap {
    min-height: 215px;
  }

  .cc-clock {
    font-size: clamp(76px, 7.4vw, 112px);
  }
}

@media (max-width: 1220px) {
  .cc-overview {
    grid-template-columns: minmax(440px, 1.45fr) minmax(250px, 0.7fr);
  }

  .cc-next-blind {
    min-height: 260px;
    grid-column: 1 / -1;
  }

  .cc-next-summary {
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
    padding: 20px 0;
  }

  .cc-next-summary div {
    display: grid;
    justify-content: start;
    gap: 9px;
    border-bottom: 0;
    border-right: 1px solid var(--cc-line);
  }

  .cc-next-summary div:last-child {
    border-right: 0;
  }

  .cc-stats-grid {
    grid-template-columns: repeat(5, minmax(130px, 1fr));
    overflow-x: auto;
    padding-bottom: 4px;
  }

  .cc-template-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* 单场工作台：从今日场次进入后在同一页面完成入座、现场控制和结算。 */
body.cc-sng-drawer-open {
  overflow: auto;
}

.cc-sng-workbench-backdrop {
  display: none !important;
}

.cc-sng-page.is-workbench-open > .cc-sng-heading,
.cc-sng-page.is-workbench-open > .cc-sng-list-panel,
.cc-sng-page.is-workbench-open > .cc-sng-create-panel,
.cc-sng-page.is-workbench-open > .cc-sng-report-panel {
  display: none !important;
}

.cc-sng-page.is-workbench-open .cc-sng-selection-panel {
  position: static !important;
  inset: auto !important;
  z-index: auto !important;
  width: 100% !important;
  max-height: none !important;
  overflow: visible !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.cc-sng-page.is-workbench-open .cc-sng-workbench-heading {
  margin-bottom: 18px;
  padding: 20px 22px;
  border: 1px solid #e2e7ee;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 10px 28px rgba(24, 32, 45, .05);
}

.cc-sng-live-console[hidden] {
  display: none;
}

.cc-sng-live-console {
  margin-top: 18px;
}

.cc-sng-inline-stage {
  display: grid;
  gap: 18px;
  padding: 22px;
  border: 1px solid #e2e7ee;
  border-radius: 20px;
  background: #fff;
  box-shadow: 0 12px 32px rgba(24, 32, 45, .05);
}

.cc-sng-participant-visibility {
  border: 1px solid #e2e7ee;
  border-radius: 14px;
  background: #f8fafc;
}

.cc-sng-participant-visibility > summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 14px 16px;
  cursor: pointer;
  list-style: none;
}

.cc-sng-participant-visibility > summary::-webkit-details-marker { display: none; }
.cc-sng-participant-visibility > summary span { display: grid; gap: 4px; }
.cc-sng-participant-visibility > summary strong { color: #243041; font-size: 14px; }
.cc-sng-participant-visibility > summary small { color: #7b8797; font-size: 12px; }
.cc-sng-participant-visibility > summary em { color: #df243d; font-size: 12px; font-style: normal; font-weight: 800; }
.cc-sng-participant-visibility[open] > summary { border-bottom: 1px solid #e2e7ee; }

.cc-sng-participant-visibility form {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  padding: 16px;
}

.cc-sng-participant-visibility form label { display: grid; gap: 7px; }
.cc-sng-participant-visibility form label > span { color: #5e6a79; font-size: 12px; font-weight: 800; }
.cc-sng-participant-visibility form select { width: 100%; min-height: 42px; border: 1px solid #d8e0e9; border-radius: 10px; padding: 0 11px; color: #263243; background: #fff; }
.cc-sng-participant-visibility form > div { grid-column: 1 / -1; display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.cc-sng-participant-visibility form > div small { color: #8a95a3; }
.cc-sng-participant-visibility form button { min-height: 40px; padding: 0 16px; border: 0; border-radius: 10px; color: #fff; background: #df243d; font-weight: 800; }

@media (max-width: 900px) {
  .cc-sng-participant-visibility form { grid-template-columns: 1fr; }
}

.cc-sng-inline-heading,
.cc-sng-inline-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
}

.cc-sng-inline-heading > div {
  display: grid;
  gap: 5px;
}

.cc-sng-inline-heading span {
  color: #e91f3d;
  font-size: 13px;
  font-weight: 800;
}

.cc-sng-inline-heading strong {
  color: #1d2634;
  font-size: 24px;
}

.cc-sng-inline-heading small,
.cc-sng-inline-note span {
  color: #7b8797;
  font-size: 14px;
}

.cc-sng-inline-table-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.cc-sng-inline-table-tabs button {
  min-height: 38px;
  padding: 0 16px;
  border: 1px solid #dfe5ec;
  border-radius: 12px;
  color: #566273;
  background: #fff;
  font-weight: 700;
}

.cc-sng-inline-table-tabs button.is-active {
  border-color: #ff8b9a;
  color: #d91e38;
  background: #fff4f5;
}

.cc-sng-inline-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.55fr) minmax(340px, .75fr);
  gap: 18px;
  align-items: start;
}

.cc-sng-inline-table,
.cc-sng-inline-actions {
  min-width: 0;
}

.cc-sng-inline-table {
  padding: 16px;
  border: 1px solid #e6eaf0;
  border-radius: 18px;
  background: #f7f9fb;
}

.cc-sng-inline-actions {
  display: grid;
  gap: 14px;
}

.cc-sng-inline-note {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 14px 16px;
  border-radius: 14px;
  color: #314153;
  background: #f6f8fa;
}

@media (max-width: 1280px) {
  .cc-sng-inline-grid {
    grid-template-columns: 1fr;
  }

  .cc-sng-inline-heading,
  .cc-sng-inline-toolbar {
    align-items: flex-start;
    flex-direction: column;
  }
}

@media (max-width: 900px) {
  .cc-sidebar,
  .cc-desktop-section,
  .cc-desktop-meta {
    display: none;
  }

  .cc-main {
    margin-left: 0;
  }

  .cc-topbar {
    position: relative;
    min-height: 82px;
    align-items: flex-start;
    padding: 15px 16px;
  }

  .cc-event-identity p {
    margin-bottom: 5px;
  }

  .cc-event-identity h1 {
    max-width: 54vw;
    font-size: 17px;
  }

  .cc-topbar-meta {
    gap: 8px;
  }

  .cc-device-pill {
    min-width: 0;
    padding: 8px 9px;
  }

  .cc-device-pill small,
  .cc-device-dot {
    display: none;
  }

  .cc-device-pill strong {
    font-size: 9px;
  }

  .cc-legacy-link {
    padding: 8px 9px;
    font-size: 9px;
  }

  .cc-connection-banner {
    margin: 10px 12px 0;
    padding: 10px 11px;
  }

  .cc-action-feedback {
    margin: 10px 12px 0;
    padding: 10px 11px;
  }

  .cc-connection-banner p {
    display: none;
  }

  .cc-action-feedback p {
    font-size: 9px;
  }

  .cc-connection-banner button {
    padding: 6px 8px;
  }

  .cc-content {
    padding: 14px 12px 28px;
  }

  .cc-overview {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
  }

  .cc-timer-card {
    min-height: 330px;
    grid-column: 1 / -1;
    padding: 20px;
  }

  .cc-clock-wrap {
    min-height: 220px;
  }

  .cc-clock {
    font-size: clamp(76px, 25vw, 116px);
  }

  .cc-blind-card {
    min-height: 245px;
    grid-column: auto;
    padding: 17px;
  }

  .cc-blind-values strong {
    font-size: clamp(19px, 6vw, 32px);
  }

  .cc-next-summary {
    display: grid;
    grid-template-columns: 1fr;
    gap: 8px;
    padding: 12px 0;
  }

  .cc-next-summary div {
    display: flex;
    border-right: 0;
    border-bottom: 1px solid var(--cc-line);
  }

  .cc-next-summary strong {
    font-size: 18px;
  }

  .cc-next-blind > p {
    display: none;
  }
}

@media (max-width: 560px) {
  .cc-topbar {
    flex-wrap: wrap;
  }

  .cc-event-identity {
    width: 100%;
  }

  .cc-event-identity h1 {
    max-width: 92vw;
  }

  .cc-topbar-meta {
    width: 100%;
    justify-content: space-between;
  }

  .cc-overview {
    grid-template-columns: 1fr;
  }

  .cc-timer-card,
  .cc-blind-card {
    grid-column: 1;
  }

  .cc-timer-card {
    min-height: 310px;
    padding: 17px;
  }

  .cc-card-topline {
    gap: 10px;
  }

  .cc-clock-wrap {
    min-height: 205px;
  }

  .cc-clock {
    font-size: clamp(72px, 27vw, 98px);
  }

  .cc-blind-card {
    min-height: 210px;
  }

  .cc-login-card {
    padding: 30px 22px;
  }

  .cc-modal-backdrop {
    align-items: end;
    padding: 12px;
  }

  .cc-confirm-modal {
    padding: 23px 20px;
    border-radius: 17px;
  }
}

.cc-mode-switch {
  min-width: 126px;
  padding: 9px 14px;
  border: 1px solid #d9dfe7;
  border-radius: 13px;
  background: #fff;
  color: #202733;
  text-align: left;
  cursor: pointer;
  box-shadow: 0 7px 18px rgba(22, 31, 44, .05);
}

.cc-mode-switch:hover,
.cc-mode-switch:focus-visible {
  border-color: #ef6a7c;
  outline: none;
}

.cc-mode-switch small,
.cc-mode-switch strong { display: block; }
.cc-mode-switch small { color: #8b95a3; font-size: 10px; }
.cc-mode-switch strong { margin-top: 2px; font-size: 13px; }
.cc-mode-switch[data-mode="timer"] strong { color: #18855a; }
.cc-mode-switch[data-mode="operations"] strong { color: #d91e39; }

.cc-tv-quick-access {
  min-width: 156px;
  padding: 9px 14px;
  border: 1px solid rgba(217, 30, 57, .25);
  border-radius: 13px;
  color: #202733;
  background: linear-gradient(145deg, #fff, #fff7f8);
  text-align: left;
  cursor: pointer;
  box-shadow: 0 7px 18px rgba(22, 31, 44, .05);
}

.cc-tv-quick-access:hover,
.cc-tv-quick-access:focus-visible {
  border-color: #ef6a7c;
  outline: none;
  transform: translateY(-1px);
}

.cc-tv-quick-access small,
.cc-tv-quick-access strong,
.cc-tv-quick-access span {
  display: block;
}

.cc-subscription-pill {
  position: relative;
  display: grid;
  min-width: 126px;
  min-height: 56px;
  align-content: center;
  gap: 2px;
  padding: 8px 44px 8px 13px;
  border: 1px solid #dce2e8;
  border-radius: 10px;
  color: #202832;
  background: #fff;
  text-decoration: none;
  transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

.cc-subscription-pill:hover,
.cc-subscription-pill:focus-visible {
  border-color: #f53243;
  outline: none;
  box-shadow: 0 8px 22px rgba(31, 39, 50, .08);
  transform: translateY(-1px);
}

.cc-subscription-pill small { color: #8b95a3; font-size: 9px; font-weight: 800; }
.cc-subscription-pill strong { font-size: 12px; }
.cc-subscription-pill span {
  position: absolute;
  top: 50%;
  right: 10px;
  padding: 5px 7px;
  border-radius: 6px;
  color: #f53243;
  background: #fff2f4;
  font-size: 9px;
  font-weight: 900;
  transform: translateY(-50%);
}
.cc-subscription-pill.is-warning { border-color: #f3b6bd; background: #fffafb; }
.cc-subscription-pill.is-warning strong { color: #d92138; }

.cc-tv-quick-access small {
  color: #8b95a3;
  font-size: 10px;
}

.cc-tv-quick-access strong {
  margin-top: 2px;
  color: #d91e39;
  font-size: 13px;
}

.cc-tv-quick-access span {
  margin-top: 3px;
  color: #7a8490;
  font-size: 10px;
}

.cc-tv-control-panel.is-quick-access-target,
.cc-tv-routing-dock.is-quick-access-target {
  animation: cc-tv-panel-focus 1.75s ease;
}

@keyframes cc-tv-panel-focus {
  0%, 100% { box-shadow: var(--cc-shadow); }
  25%, 70% { border-color: rgba(217, 30, 57, .55); box-shadow: 0 0 0 4px rgba(217, 30, 57, .09), var(--cc-shadow); }
}

.cc-mode-modal {
  position: relative;
  width: min(760px, calc(100vw - 32px));
  padding: 34px;
}

.cc-mode-modal > p:not(.cc-kicker) {
  margin: 8px 0 22px;
  color: #677281;
  line-height: 1.7;
}

.cc-mode-options {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.cc-mode-options > button {
  display: flex;
  min-height: 210px;
  padding: 24px;
  border: 1px solid #d8dee7;
  border-radius: 18px;
  background: #fff;
  color: #202733;
  flex-direction: column;
  align-items: flex-start;
  gap: 10px;
  text-align: left;
  cursor: pointer;
  transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

.cc-mode-options > button:hover,
.cc-mode-options > button:focus-visible {
  border-color: #ef6a7c;
  box-shadow: 0 15px 32px rgba(201, 29, 54, .10);
  outline: none;
  transform: translateY(-2px);
}

.cc-mode-options > button.is-current {
  border-color: #df2943;
  background: #fff7f8;
  box-shadow: inset 0 0 0 1px rgba(223, 41, 67, .16);
}

.cc-mode-options > button:disabled { opacity: .58; cursor: wait; transform: none; }
.cc-mode-options span { color: #d91e39; font-size: 11px; font-weight: 800; letter-spacing: .08em; }
.cc-mode-options strong { font-size: 24px; letter-spacing: -.03em; }
.cc-mode-options small { color: #596575; font-size: 13px; line-height: 1.7; }
.cc-mode-options em { margin-top: auto; color: #798390; font-size: 11px; font-style: normal; }
.cc-mode-modal[data-required="true"] .cc-mode-options > button { min-height: 238px; }

.cc-feature-upgrade-modal {
  position: relative;
  width: min(600px, calc(100vw - 32px));
  overflow: hidden;
  padding: 38px;
}

.cc-feature-upgrade-modal::before {
  position: absolute;
  top: -100px;
  right: -85px;
  width: 230px;
  height: 230px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(228, 35, 61, 0.16), rgba(228, 35, 61, 0));
  content: "";
  pointer-events: none;
}

.cc-feature-upgrade-mark {
  display: grid;
  width: 54px;
  height: 54px;
  margin: 22px 0 18px;
  place-items: center;
  border: 1px solid #f4a9b4;
  border-radius: 16px;
  color: #e4233d;
  background: #fff4f6;
  font-size: 31px;
  font-weight: 350;
}

.cc-feature-upgrade-eyebrow {
  margin: 0 0 7px;
  color: #d91e39;
  font-size: 11px;
  font-weight: 850;
  letter-spacing: 0.08em;
}

.cc-feature-upgrade-modal h2 {
  margin: 0;
  font-size: clamp(28px, 4vw, 42px);
  letter-spacing: -0.04em;
}

.cc-feature-upgrade-modal > p#cc-feature-upgrade-copy {
  max-width: 510px;
  margin: 14px 0 0;
  color: #66717f;
  font-size: 14px;
  line-height: 1.75;
}

.cc-feature-upgrade-modal ul {
  display: grid;
  gap: 10px;
  margin: 24px 0 28px;
  padding: 20px 22px;
  border: 1px solid #e1e5ea;
  border-radius: 14px;
  color: #454f5b;
  background: #f8f9fa;
  list-style: none;
}

.cc-feature-upgrade-modal li {
  position: relative;
  padding-left: 20px;
  font-size: 13px;
  line-height: 1.55;
}

.cc-feature-upgrade-modal li::before {
  position: absolute;
  left: 0;
  color: #e4233d;
  content: "✓";
  font-weight: 900;
}

.cc-feature-upgrade-actions a {
  display: grid;
  min-height: 43px;
  place-items: center;
  border: 1px solid rgba(250, 43, 62, 0.5);
  border-radius: 9px;
  color: #fff;
  background: linear-gradient(135deg, var(--cc-red), var(--cc-red-dark));
  font-size: 11px;
  font-weight: 800;
  text-decoration: none;
}

.cc-feature-upgrade-actions a:hover,
.cc-feature-upgrade-actions a:focus-visible {
  outline: 3px solid rgba(228, 35, 61, 0.16);
  transform: translateY(-1px);
}

@media (max-width: 720px) {
  .cc-subscription-pill { min-width: 0; padding: 8px 38px 8px 9px; }
  .cc-subscription-pill small { display: none; }
  .cc-mode-switch { min-width: 0; padding: 8px 10px; }
  .cc-mode-switch small { display: none; }
  .cc-mode-switch strong { max-width: 72px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  .cc-tv-quick-access { display: none; }
  .cc-mode-modal { padding: 24px 18px; }
  .cc-feature-upgrade-modal { padding: 28px 20px 22px; }
  .cc-feature-upgrade-actions { grid-template-columns: 1fr; }
  .cc-mode-options { grid-template-columns: 1fr; }
  .cc-mode-options > button,
  .cc-mode-modal[data-required="true"] .cc-mode-options > button { min-height: 0; padding: 20px; }
}

@media (max-width: 1180px) {
  .cc-sng-list {
    grid-template-columns: 1fr;
  }

  .cc-sng-create-form {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 760px) {
  .cc-sng-dispatch-heading {
    align-items: stretch;
    flex-direction: column;
  }

  .cc-sng-dispatch-heading > button {
    width: 100%;
  }

  .cc-sng-filter-tabs {
    flex-wrap: wrap;
  }

  .cc-sng-filter-tabs > span {
    width: 100%;
    margin: 3px 0 0;
  }

  .cc-sng-create-form {
    grid-template-columns: 1fr;
  }

  .cc-sng-card-facts {
    grid-template-columns: 1fr;
  }

  .cc-sng-card-facts > span {
    border-right: 0;
    border-bottom: 1px solid var(--cc-line);
  }

  .cc-sng-card-facts > span:last-child {
    border-bottom: 0;
  }

  .cc-sng-list-actions > a,
  .cc-sng-list-actions > button,
  .cc-sng-list-actions > span {
    flex: 1 1 calc(50% - 8px);
    text-align: center;
  }
}

/* SNG daily operating loop */
.cc-sng-page {
  display: grid;
  gap: 20px;
}

.cc-sng-heading {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 24px;
  padding: 4px 2px;
}

.cc-sng-heading h2 {
  margin: 6px 0;
  font-size: clamp(28px, 3vw, 42px);
}

.cc-sng-heading > div > span,
.cc-sng-session-meta,
.cc-sng-list article span {
  color: var(--cc-muted);
}

.cc-sng-metrics {
  display: grid;
  grid-template-columns: repeat(5, minmax(96px, 1fr));
  gap: 10px;
}

.cc-sng-metrics article {
  min-width: 120px;
  padding: 14px 18px;
  border: 1px solid var(--cc-line);
  border-radius: 14px;
  background: #fff;
}

.cc-sng-metrics strong,
.cc-sng-metrics span {
  display: block;
}

.cc-sng-metrics strong {
  font-size: 24px;
}

.cc-sng-metrics span {
  margin-top: 4px;
  color: var(--cc-muted);
  font-size: 12px;
}

.cc-sng-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(380px, 0.75fr);
  gap: 20px;
  align-items: start;
}

.cc-sng-tables-panel {
  margin-top: 20px;
  padding: 24px;
  border-radius: 20px;
}

.cc-sng-table-admin {
  display: grid;
  gap: 18px;
}

.cc-sng-table-heading {
  display: grid;
  grid-template-columns: minmax(280px, 1fr) minmax(520px, 1.1fr);
  gap: 24px;
  align-items: end;
}

.cc-sng-table-heading > div,
.cc-sng-table-heading form {
  min-width: 0;
}

.cc-sng-table-heading span,
.cc-sng-table-heading strong,
.cc-sng-table-heading small {
  display: block;
}

.cc-sng-table-heading span {
  color: var(--cc-red);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .08em;
}

.cc-sng-table-heading strong {
  margin-top: 6px;
  font-size: 23px;
}

.cc-sng-table-heading small {
  margin-top: 6px;
  color: var(--cc-muted);
  line-height: 1.6;
}

.cc-sng-table-heading form {
  display: grid;
  grid-template-columns: minmax(170px, 1fr) 92px 100px 126px;
  gap: 10px;
}

.cc-sng-table-heading input,
.cc-sng-table-heading button,
.cc-sng-seat-picker select,
.cc-sng-seat-picker button {
  min-height: 44px;
  border: 1px solid var(--cc-line-strong);
  border-radius: 11px;
  background: #fff;
}

.cc-sng-table-heading input,
.cc-sng-seat-picker select {
  min-width: 0;
  padding: 0 12px;
}

.cc-sng-table-heading button {
  border-color: var(--cc-red);
  color: #fff;
  background: var(--cc-red);
  font-weight: 800;
}

.cc-sng-table-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(420px, 1fr));
  gap: 24px;
}

.cc-sng-table-grid > article {
  min-width: 0;
  padding: 16px;
  border: 1px solid var(--cc-line);
  border-radius: 15px;
  background: var(--cc-panel-2);
}

.cc-sng-table-grid header {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: center;
}

.cc-sng-table-grid header strong,
.cc-sng-table-grid header span {
  display: block;
}

.cc-sng-table-grid header span,
.cc-sng-table-grid header b {
  color: var(--cc-muted);
  font-size: 11px;
  font-weight: 600;
}

.cc-sng-seat-code-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  margin-top: 14px;
}

.cc-sng-seat-code-grid button {
  min-width: 0;
  min-height: 58px;
  padding: 8px;
  border: 1px solid var(--cc-line-strong);
  border-radius: 10px;
  background: #fff;
  text-align: left;
}

.cc-sng-seat-code-grid button strong,
.cc-sng-seat-code-grid button span {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cc-sng-seat-code-grid button span {
  margin-top: 3px;
  color: var(--cc-red);
  font-size: 10px;
}

.cc-poker-table-legend {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 18px;
  align-items: center;
  padding: 12px 16px;
  border: 1px solid var(--cc-line);
  border-radius: 13px;
  background: #fff;
}

.cc-poker-table-legend span {
  display: inline-flex;
  gap: 7px;
  align-items: center;
  color: var(--cc-muted);
  font-size: 12px;
  font-weight: 700;
}

.cc-poker-table-legend span::before {
  content: "";
  width: 9px;
  height: 9px;
  border: 2px solid #b7c0c9;
  border-radius: 50%;
  background: #fff;
}

.cc-poker-table-legend .is-occupied::before { border-color: #179661; background: #26bd7c; }
.cc-poker-table-legend .is-rebuy::before { border-color: #b77b16; background: #f1b94e; }
.cc-poker-table-legend .is-eliminated::before { border-color: #b64a59; background: #d96b7a; }

.cc-sng-table-grid > .cc-poker-table-card {
  display: grid;
  gap: 14px;
  padding: 18px;
  background: linear-gradient(180deg, #fff, #f7f9fa);
  box-shadow: 0 15px 34px rgba(27, 41, 52, .08);
}

.cc-poker-table-card > header b {
  padding: 7px 10px;
  border-radius: 999px;
  color: #13784f;
  background: #e4f6ee;
  font-size: 12px;
}

.cc-poker-table-shell {
  min-width: 0;
  padding: 48px 54px;
  border-radius: 18px;
  background:
    radial-gradient(circle at 50% 45%, rgba(223, 36, 61, .08), transparent 52%),
    linear-gradient(145deg, #edf1f3, #dce3e6);
}

.cc-poker-table-felt {
  position: relative;
  min-height: 330px;
  aspect-ratio: 1.72 / 1;
  border: 10px solid #6b3f24;
  border-radius: 50%;
  background:
    radial-gradient(ellipse at center, rgba(255, 255, 255, .09), transparent 58%),
    repeating-linear-gradient(34deg, rgba(255,255,255,.025) 0 2px, transparent 2px 9px),
    linear-gradient(145deg, #126447, #073d2d);
  box-shadow:
    inset 0 0 0 3px rgba(255,255,255,.16),
    inset 0 0 40px rgba(0,0,0,.42),
    0 10px 0 #4a2817,
    0 22px 36px rgba(16, 30, 28, .28);
}

.cc-poker-table-felt::before,
.cc-poker-table-felt::after {
  content: "";
  position: absolute;
  pointer-events: none;
  border-radius: 50%;
}

.cc-poker-table-felt::before {
  inset: 11%;
  border: 1px solid rgba(220, 244, 232, .18);
}

.cc-poker-table-felt::after {
  inset: 20%;
  border: 1px dashed rgba(220, 244, 232, .12);
}

.cc-poker-table-center {
  position: absolute;
  z-index: 1;
  top: 50%;
  left: 50%;
  display: grid;
  width: 42%;
  min-width: 180px;
  min-height: 116px;
  place-content: center;
  padding: 14px;
  transform: translate(-50%, -50%);
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 50%;
  color: #fff;
  background: rgba(3, 31, 23, .48);
  text-align: center;
  box-shadow: inset 0 0 24px rgba(0,0,0,.25);
}

.cc-poker-table-center span,
.cc-poker-table-center strong,
.cc-poker-table-center small { display: block; }

.cc-poker-table-center span {
  color: #8bd8b8;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .12em;
}

.cc-poker-table-center strong {
  margin-top: 5px;
  overflow: hidden;
  font-size: 19px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cc-poker-table-center small {
  margin-top: 5px;
  color: #b6d6c8;
  font-size: 11px;
}

.cc-poker-seat {
  position: absolute;
  z-index: 3;
  width: 116px;
  min-height: 70px;
  transform: translate(-50%, -50%);
}

.cc-poker-seat-main {
  display: grid;
  width: 100%;
  min-height: 70px;
  align-content: center;
  padding: 8px 26px 8px 10px;
  overflow: hidden;
  border: 2px solid #c8d0d7;
  border-radius: 14px;
  color: #27313a;
  background: #fff;
  text-align: left;
  box-shadow: 0 8px 20px rgba(15, 32, 29, .22);
  transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease;
}

.cc-poker-seat-main:hover,
.cc-poker-seat-main:focus-visible {
  z-index: 5;
  transform: translateY(-2px);
  border-color: var(--cc-red);
  box-shadow: 0 12px 25px rgba(17, 33, 30, .3);
}

.cc-poker-seat-main b,
.cc-poker-seat-main strong,
.cc-poker-seat-main small {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cc-poker-seat-main b {
  color: #7a858f;
  font-size: 10px;
}

.cc-poker-seat-main strong {
  margin-top: 2px;
  font-size: 14px;
}

.cc-poker-seat-main small {
  margin-top: 2px;
  color: #7a858f;
  font-size: 9px;
}

.cc-poker-seat-qr {
  position: absolute;
  right: 6px;
  bottom: 7px;
  z-index: 5;
  display: grid;
  width: 24px;
  height: 24px;
  place-items: center;
  padding: 0;
  border: 1px solid #cfd6dc;
  border-radius: 7px;
  color: #66717b;
  background: rgba(255,255,255,.94);
  font-size: 10px;
  font-weight: 900;
}

.cc-poker-seat-qr:hover,
.cc-poker-seat-qr:focus-visible {
  border-color: var(--cc-red);
  color: var(--cc-red);
}

.cc-poker-seat.is-occupied .cc-poker-seat-main {
  border-color: #26a86f;
  background: #eaf9f2;
}

.cc-poker-seat.is-occupied .cc-poker-seat-main strong { color: #0a7248; }

.cc-poker-seat.is-rebuy .cc-poker-seat-main {
  border-color: #e1a83c;
  background: #fff6e4;
}

.cc-poker-seat.is-rebuy .cc-poker-seat-main strong { color: #9a6300; }

.cc-poker-seat.is-eliminated .cc-poker-seat-main {
  border-color: #d37b87;
  color: #7d4650;
  background: #fff0f2;
  opacity: .9;
}

.cc-poker-seat.is-selected {
  z-index: 8;
}

.cc-poker-seat.is-selected .cc-poker-seat-main {
  border-color: var(--cc-red);
  box-shadow: 0 0 0 4px rgba(223, 36, 61, .14), 0 14px 28px rgba(17, 33, 30, .3);
}

.cc-table-player-actions {
  display: flex;
  min-height: 82px;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 14px 16px;
  border: 1px solid rgba(223, 36, 61, .24);
  border-radius: 14px;
  background: linear-gradient(135deg, #fff, #fff7f8);
  transition: box-shadow .2s ease, border-color .2s ease;
}

.cc-table-player-actions.is-empty {
  justify-content: flex-start;
  border-style: dashed;
  border-color: var(--cc-line-strong);
  background: #fff;
}

.cc-table-player-actions.is-highlighted {
  border-color: var(--cc-red);
  box-shadow: 0 0 0 4px rgba(223, 36, 61, .12);
}

.cc-table-player-actions span,
.cc-table-player-actions strong,
.cc-table-player-actions small {
  display: block;
}

.cc-table-player-summary {
  min-width: 210px;
}

.cc-table-player-actions .cc-table-action-help {
  max-width: 360px;
  margin: 8px 0 0;
  color: var(--cc-muted);
  font-size: 11px;
  line-height: 1.55;
}

.cc-table-player-actions .cc-table-action-help b {
  color: var(--cc-text);
}

.cc-table-player-actions span {
  color: var(--cc-red);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .1em;
}

.cc-table-player-actions strong {
  margin-top: 3px;
  font-size: 17px;
}

.cc-table-player-actions small {
  margin-top: 4px;
  color: var(--cc-muted);
  font-size: 11px;
}

.cc-table-player-action-buttons {
  display: flex;
  flex: 0 0 auto;
  gap: 8px;
}

.cc-table-player-action-buttons button {
  min-height: 42px;
  padding: 0 15px;
  border: 1px solid var(--cc-line-strong);
  border-radius: 11px;
  color: var(--cc-text);
  background: #fff;
  font-weight: 800;
  text-align: left;
}

.cc-table-player-action-buttons button b,
.cc-table-player-action-buttons button small {
  display: block;
}

.cc-table-player-action-buttons button b {
  font-size: 12px;
}

.cc-table-player-action-buttons button small {
  margin-top: 3px;
  color: var(--cc-muted);
  font-size: 9px;
  font-weight: 600;
  line-height: 1.35;
}

.cc-table-player-action-buttons button.is-danger small,
.cc-table-player-action-buttons button.is-revive small {
  color: currentColor;
  opacity: .74;
}

.cc-table-player-action-buttons button.is-danger {
  border-color: rgba(207, 48, 72, .4);
  color: var(--cc-danger);
  background: #fff4f5;
}

.cc-table-player-action-buttons button.is-revive {
  border-color: #ad7716;
  color: #fff;
  background: linear-gradient(135deg, #c58c25, #99630b);
}

.cc-table-player-readonly {
  color: var(--cc-muted);
  font-size: 11px;
  font-weight: 700;
}

.cc-poker-table-card.is-dense .cc-poker-seat { width: 98px; }
.cc-poker-table-card.is-dense .cc-poker-seat-main { min-height: 62px; }
.cc-poker-table-card.is-dense .cc-poker-seat-main strong { font-size: 12px; }

.cc-poker-table-card > footer {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  color: var(--cc-muted);
  font-size: 11px;
}

.cc-sng-table-empty {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  align-items: center;
  min-height: 74px;
  padding: 16px 18px;
  border: 1px dashed var(--cc-line-strong);
  border-radius: 14px;
  color: var(--cc-muted);
}

.cc-sng-table-empty strong,
.cc-sng-table-empty span {
  display: block;
}

.cc-sng-table-empty strong {
  color: var(--cc-text);
}

.cc-sng-table-empty button {
  min-height: 40px;
  padding: 0 14px;
  border: 1px solid var(--cc-line-strong);
  border-radius: 10px;
  background: #fff;
}

.cc-sng-current-panel,
.cc-sng-create-panel,
.cc-sng-list-panel {
  border-radius: 20px;
  padding: 24px;
}

.cc-sng-current-panel {
  min-height: 520px;
}

.cc-sng-current {
  display: grid;
  gap: 22px;
  margin-top: 20px;
}

.cc-sng-empty {
  display: grid;
  place-items: center;
  min-height: 220px;
  padding: 30px;
  border: 1px dashed var(--cc-line-strong);
  border-radius: 16px;
  text-align: center;
  background: var(--cc-panel-2);
}

.cc-sng-empty p {
  max-width: 440px;
  margin: 8px 0 0;
  color: var(--cc-muted);
}

.cc-sng-empty button {
  margin-top: 16px;
}

.cc-sng-empty.is-error {
  border-color: rgba(207, 48, 72, 0.4);
}

.cc-sng-session-title,
.cc-sng-seat-progress > div:first-child,
.cc-sng-attendance-grid section,
.cc-sng-ready-box,
.cc-sng-list article {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
}

.cc-sng-session-title span {
  color: var(--cc-red);
  font-size: 12px;
  font-weight: 800;
}

.cc-sng-session-title h3 {
  margin: 4px 0 0;
  font-size: 30px;
}

.cc-sng-session-title > strong {
  padding: 8px 12px;
  border-radius: 999px;
  color: var(--cc-amber);
  background: rgba(182, 110, 8, 0.1);
}

.cc-sng-session-title > strong[data-status="running"] {
  color: var(--cc-green);
  background: rgba(20, 133, 88, 0.1);
}

.cc-sng-seat-progress {
  padding: 24px;
  border-radius: 18px;
  background: linear-gradient(135deg, #252c35, #20262e);
  color: #fff;
}

.cc-sng-seat-progress strong {
  font-size: clamp(44px, 5vw, 70px);
}

.cc-sng-seat-progress strong small {
  color: #b9c0c8;
  font-size: 22px;
}

.cc-sng-seat-progress > div:first-child > span {
  color: #f1c9cf;
  font-weight: 700;
}

.cc-sng-progress {
  height: 9px;
  margin-top: 16px;
  overflow: hidden;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.1);
}

.cc-sng-progress span {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, var(--cc-red), #ff6678);
  transition: width 180ms ease;
}

.cc-sng-attendance-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.cc-sng-attendance-grid section {
  padding: 18px;
  border: 1px solid var(--cc-line);
  border-radius: 14px;
  background: var(--cc-panel-2);
}

.cc-sng-attendance-grid section > div:first-child span,
.cc-sng-attendance-grid section > div:first-child strong {
  display: block;
}

.cc-sng-attendance-grid section > div:first-child strong {
  margin-top: 5px;
  font-size: 28px;
}

.cc-sng-attendance-grid button {
  min-width: 64px;
  min-height: 40px;
  margin-left: 6px;
  border: 1px solid var(--cc-line-strong);
  border-radius: 10px;
  background: #fff;
}

.cc-sng-attendance-grid button.is-primary {
  border-color: var(--cc-red);
  color: #fff;
  background: var(--cc-red);
}

.cc-sng-session-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.cc-sng-session-meta span {
  padding: 7px 10px;
  border-radius: 999px;
  background: var(--cc-panel-2);
}

.cc-sng-waitlist-card {
  display: grid;
  grid-template-columns: 112px minmax(0, 1fr) auto;
  align-items: center;
  gap: 18px;
  padding: 18px;
  border: 1px solid rgba(20, 133, 88, 0.24);
  border-radius: 16px;
  background: linear-gradient(135deg, #f5fcf9, #ffffff);
}

.cc-sng-waitlist-card.is-disabled {
  grid-template-columns: minmax(0, 1fr) auto;
  border-style: dashed;
  border-color: var(--cc-line-strong);
  background: var(--cc-panel-2);
}

.cc-sng-waitlist-card.is-disabled > button,
.cc-sng-waitlist-actions button,
.cc-sng-waitlist-actions a {
  min-height: 40px;
  padding: 0 13px;
  border: 1px solid var(--cc-line-strong);
  border-radius: 10px;
  color: var(--cc-text);
  background: #fff;
  text-decoration: none;
}

.cc-sng-waitlist-card.is-disabled > button {
  border-color: var(--cc-red);
  color: #fff;
  background: var(--cc-red);
}

.cc-sng-waitlist-qr {
  display: grid;
  place-items: center;
  width: 112px;
  aspect-ratio: 1;
  overflow: hidden;
  border: 1px solid var(--cc-line);
  border-radius: 13px;
  color: var(--cc-muted);
  background: #fff;
  font-size: 12px;
}

.cc-sng-waitlist-qr img {
  display: block;
  width: 100%;
  height: 100%;
  padding: 6px;
  object-fit: contain;
}

.cc-sng-waitlist-copy > span,
.cc-sng-waitlist-copy > strong,
.cc-sng-waitlist-copy > small {
  display: block;
}

.cc-sng-waitlist-copy > span {
  color: var(--cc-green);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.08em;
}

.cc-sng-waitlist-copy > strong {
  margin-top: 4px;
  font-size: 19px;
}

.cc-sng-waitlist-copy > p {
  margin: 6px 0;
  color: var(--cc-muted);
  font-size: 12px;
}

.cc-sng-waitlist-copy > small {
  color: var(--cc-muted);
  font-size: 10px;
}

.cc-sng-waitlist-actions {
  display: grid;
  gap: 7px;
}

.cc-sng-waitlist-actions a {
  display: grid;
  place-items: center;
  border-color: var(--cc-green);
  color: #fff;
  background: var(--cc-green);
}

.cc-sng-ready-box {
  padding: 22px 24px;
  border: 1px solid rgba(228, 35, 61, 0.54);
  border-radius: 18px;
  color: #fff;
  background:
    radial-gradient(circle at 18% 16%, rgba(255, 89, 109, 0.2), transparent 32%),
    linear-gradient(135deg, #242933 0%, #34171d 100%);
  box-shadow: 0 18px 40px rgba(75, 16, 26, 0.2);
}

.cc-sng-ready-box.is-prominent {
  position: relative;
  overflow: hidden;
}

.cc-sng-ready-box.is-prominent::after {
  position: absolute;
  right: -38px;
  bottom: -72px;
  width: 180px;
  height: 180px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 50%;
  content: "";
}

.cc-sng-ready-copy {
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: end;
  column-gap: 18px;
}

.cc-sng-ready-copy em {
  grid-column: 1 / -1;
  color: #ff9caa;
  font-size: 12px;
  font-style: normal;
  font-weight: 900;
  letter-spacing: 0.16em;
}

.cc-sng-complete-box,
.cc-sng-result-actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 18px 20px;
  border: 1px solid var(--cc-line-strong);
  border-radius: 16px;
  background: var(--cc-panel-2);
}

.cc-sng-settlement-box {
  display: grid;
  gap: 14px;
  padding: 20px;
  border: 1px solid rgba(183, 128, 30, 0.28);
  border-radius: 18px;
  background: linear-gradient(135deg, #fffdf7, #fff9ed);
}

.cc-sng-settlement-heading {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 18px;
}

.cc-sng-settlement-heading span,
.cc-sng-settlement-heading strong,
.cc-sng-settlement-heading small {
  display: block;
}

.cc-sng-settlement-heading span {
  color: #a76c05;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0.14em;
}

.cc-sng-settlement-heading strong {
  margin-top: 5px;
  font-size: 20px;
}

.cc-sng-settlement-heading small {
  color: var(--cc-muted);
}

.cc-sng-settlement-summary {
  display: grid;
  grid-template-columns: minmax(180px, 1fr) minmax(220px, 1fr) auto;
  gap: 12px;
  align-items: stretch;
  padding: 12px;
  border: 1px solid var(--cc-line);
  border-radius: 14px;
  background: rgba(255,255,255,.72);
}

.cc-sng-settlement-summary > div {
  padding: 8px 10px;
  border-right: 1px solid var(--cc-line);
}

.cc-sng-settlement-summary span,
.cc-sng-settlement-summary strong,
.cc-sng-settlement-summary small {
  display: block;
}

.cc-sng-settlement-summary span,
.cc-sng-settlement-summary small {
  color: var(--cc-muted);
  font-size: 11px;
}

.cc-sng-settlement-summary strong {
  margin: 3px 0;
  font-size: 15px;
}

.cc-sng-settlement-summary.is-ready > div:nth-child(2) strong { color: #148157; }
.cc-sng-settlement-summary.is-warning > div:nth-child(2) strong { color: #a76c05; }
.cc-sng-settlement-summary.is-error > div:nth-child(2) strong { color: var(--cc-danger); }

.cc-sng-settlement-summary button {
  min-width: 132px;
  padding: 0 14px;
  border: 1px solid var(--cc-line-strong);
  border-radius: 11px;
  color: var(--cc-text);
  background: #fff;
  font-weight: 800;
}

.cc-sng-placement-grid,
.cc-sng-podium-summary {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.cc-sng-placement-grid label {
  display: grid;
  gap: 8px;
  padding: 13px;
  border: 1px solid var(--cc-line);
  border-radius: 13px;
  background: #fff;
}

.cc-sng-placement-grid label[data-rank="1"] {
  border-color: rgba(205, 145, 28, 0.52);
  box-shadow: inset 0 3px #d8a334;
}

.cc-sng-placement-grid label > span {
  color: var(--cc-muted);
  font-size: 12px;
  font-weight: 800;
}

.cc-sng-placement-grid input {
  min-width: 0;
  height: 42px;
  padding: 0 12px;
  border: 1px solid var(--cc-line-strong);
  border-radius: 10px;
  color: var(--cc-text);
  background: var(--cc-panel-2);
}

.cc-sng-final-standing-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.cc-sng-final-standing-grid label {
  display: grid;
  grid-template-columns: minmax(82px, auto) minmax(0, 1fr);
  align-items: center;
  gap: 10px;
  padding: 11px 13px;
  border: 1px solid var(--cc-line);
  border-radius: 13px;
  background: #fff;
}

.cc-sng-final-standing-grid label > span {
  color: var(--cc-muted);
  font-size: 12px;
  font-weight: 800;
}

.cc-sng-final-standing-grid label > span small {
  display: block;
  margin-top: 3px;
  color: var(--cc-muted);
  font-size: 10px;
  font-weight: 500;
}

.cc-sng-final-standing-grid label[data-rank="1"] {
  border-color: rgba(205, 145, 28, .48);
  background: linear-gradient(135deg, #fffaf0, #fff);
  box-shadow: inset 4px 0 #d8a334;
}

.cc-sng-final-standing-grid select {
  min-width: 0;
  height: 42px;
  padding: 0 12px;
  border: 1px solid var(--cc-line-strong);
  border-radius: 10px;
  color: var(--cc-text);
  background: var(--cc-panel-2);
  font: inherit;
}

.cc-sng-settlement-empty {
  margin: 0;
  color: var(--cc-muted);
}

.cc-sng-complete-box strong,
.cc-sng-complete-box span,
.cc-sng-result-actions strong,
.cc-sng-result-actions span {
  display: block;
}

.cc-sng-complete-box span,
.cc-sng-result-actions span {
  margin-top: 4px;
  color: var(--cc-muted);
  font-size: 12px;
}

.cc-sng-complete-box button {
  min-width: 160px;
  min-height: 44px;
  border: 1px solid rgba(207, 48, 72, 0.34);
  border-radius: 11px;
  color: var(--cc-danger);
  background: #fff;
}

.cc-sng-result-card {
  display: grid;
  gap: 20px;
}

.cc-sng-podium-summary article,
.cc-sng-result-note {
  padding: 18px;
  border: 1px solid var(--cc-line);
  border-radius: 15px;
  background: var(--cc-panel-2);
}

.cc-sng-podium-summary article[data-rank="1"] {
  border-color: rgba(205, 145, 28, 0.46);
  background: linear-gradient(135deg, #fff8e8, #fffdf7);
  box-shadow: inset 0 3px #d9a335;
}

.cc-sng-podium-summary span,
.cc-sng-podium-summary strong,
.cc-sng-podium-summary small,
.cc-sng-result-note strong,
.cc-sng-result-note span {
  display: block;
}

.cc-sng-podium-summary span {
  color: var(--cc-muted);
  font-size: 12px;
}

.cc-sng-podium-summary strong {
  margin-top: 8px;
  overflow: hidden;
  font-size: 22px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cc-sng-podium-summary small {
  margin-top: 5px;
  color: #aa710a;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: 0.12em;
}

.cc-sng-result-note span {
  margin-top: 5px;
  color: var(--cc-muted);
  font-size: 12px;
}

.cc-sng-result-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.cc-sng-result-grid article {
  padding: 18px;
  border: 1px solid var(--cc-line);
  border-radius: 14px;
  background: var(--cc-panel-2);
}

.cc-sng-result-grid span,
.cc-sng-result-grid strong {
  display: block;
}

.cc-sng-result-grid span {
  color: var(--cc-muted);
  font-size: 12px;
}

.cc-sng-result-grid strong {
  margin-top: 8px;
  font-size: 22px;
}

.cc-sng-ready-box strong,
.cc-sng-ready-box span {
  display: block;
}

.cc-sng-ready-box strong {
  color: #fff;
  font-size: clamp(42px, 5vw, 68px);
  line-height: 0.95;
}

.cc-sng-ready-box span {
  padding-bottom: 6px;
  color: #f3cbd1;
  font-weight: 700;
}

.cc-sng-ready-box button {
  position: relative;
  z-index: 1;
  min-width: 180px;
  min-height: 52px;
  box-shadow: 0 12px 26px rgba(228, 35, 61, 0.28);
}

.cc-sng-create-form {
  display: grid;
  gap: 18px;
  margin-top: 18px;
}

.cc-sng-create-form fieldset {
  min-width: 0;
  margin: 0;
  padding: 0;
  border: 0;
}

.cc-sng-create-form legend,
.cc-sng-create-form > label > span {
  display: block;
  margin-bottom: 9px;
  color: var(--cc-muted-2);
  font-size: 13px;
  font-weight: 700;
}

.cc-sng-choice-row {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.cc-sng-choice-row label {
  position: relative;
}

.cc-sng-choice-row input[type="radio"] {
  position: absolute;
  opacity: 0;
}

.cc-sng-choice-row label > span {
  display: grid;
  place-items: center;
  min-height: 46px;
  padding: 8px;
  border: 1px solid var(--cc-line-strong);
  border-radius: 11px;
  text-align: center;
  background: #fff;
  cursor: pointer;
}

.cc-sng-choice-row input:checked + span {
  border-color: var(--cc-red);
  color: var(--cc-red-dark);
  background: #fff3f5;
  box-shadow: inset 0 0 0 1px var(--cc-red);
}

.cc-sng-choice-row label.is-disabled > span {
  color: #9aa1a9;
  background: #f1f3f4;
  cursor: not-allowed;
}

.cc-sng-choice-row small {
  margin-top: 2px;
  font-size: 10px;
}

#cc-sng-custom-seats,
.cc-sng-create-form select,
.cc-sng-create-form input[type="number"],
.cc-sng-create-form input[type="datetime-local"] {
  width: 100%;
  min-height: 46px;
  border: 1px solid var(--cc-line-strong);
  border-radius: 11px;
  padding: 0 12px;
  background: #fff;
}

.cc-sng-mushroom-config {
  display: grid;
  gap: 10px;
  padding: 14px;
  border: 1px solid rgba(181, 122, 20, 0.34);
  border-radius: 13px;
  background: linear-gradient(135deg, #fffaf0, #fffdf8);
}

.cc-sng-mushroom-config[hidden] {
  display: none;
}

.cc-sng-mushroom-fields {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.cc-sng-mushroom-fields label {
  display: grid;
  gap: 6px;
}

.cc-sng-mushroom-config p {
  margin: 0;
  color: #81652e;
  font-size: 11px;
  line-height: 1.6;
}

.cc-sng-plan-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 14px 16px;
  border: 1px solid var(--cc-line);
  border-radius: 14px;
  background: var(--cc-panel-2);
}

.cc-sng-plan-row span,
.cc-sng-plan-row strong,
.cc-sng-plan-row small {
  display: block;
}

.cc-sng-plan-row span,
.cc-sng-plan-row small {
  color: var(--cc-muted);
  font-size: 12px;
}

.cc-sng-plan-row strong {
  margin: 4px 0;
  font-size: 20px;
}

.cc-sng-plan-controls {
  display: flex;
  align-items: center;
  gap: 8px;
}

.cc-sng-plan-controls input {
  min-height: 42px;
  padding: 0 10px;
  border: 1px solid var(--cc-line-strong);
  border-radius: 10px;
  background: #fff;
}

.cc-sng-plan-controls button {
  min-height: 42px;
  padding: 0 14px;
  border: 1px solid var(--cc-line-strong);
  border-radius: 10px;
  background: #fff;
}

.cc-sng-prestart-settings {
  display: grid;
  gap: 12px;
  margin: 14px 0;
  padding: 15px 16px;
  border: 1px solid #dce3eb;
  border-radius: 15px;
  background: linear-gradient(135deg, #fbfcfe, #f6f8fb);
}

.cc-sng-prestart-summary,
.cc-sng-prestart-heading,
.cc-sng-setup-actions,
.cc-sng-cancel-actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
}

.cc-sng-prestart-summary > div,
.cc-sng-prestart-heading > div,
.cc-sng-cancel-confirm > div:first-child {
  display: grid;
  gap: 3px;
}

.cc-sng-prestart-settings span,
.cc-sng-prestart-settings small {
  color: var(--cc-muted);
  font-size: 11px;
}

.cc-sng-prestart-settings strong {
  color: var(--cc-ink);
  font-size: 14px;
}

.cc-sng-prestart-settings button {
  min-height: 40px;
  padding: 0 14px;
  border: 1px solid var(--cc-line-strong);
  border-radius: 10px;
  color: var(--cc-ink);
  background: #fff;
  font-weight: 800;
  cursor: pointer;
}

.cc-sng-prestart-settings button.is-primary {
  border-color: var(--cc-red);
  color: #fff;
  background: var(--cc-red);
}

.cc-sng-prestart-settings button:disabled {
  cursor: wait;
  opacity: .55;
}

.cc-sng-cancel-link {
  justify-self: start;
  min-height: auto !important;
  padding: 2px 0 !important;
  border: 0 !important;
  color: #9b5960 !important;
  background: transparent !important;
  font-size: 10px;
}

.cc-sng-setup-name,
.cc-sng-setup-selects label,
.cc-sng-cancel-confirm label {
  display: grid;
  gap: 6px;
}

.cc-sng-setup-name input,
.cc-sng-setup-selects select,
.cc-sng-cancel-confirm input {
  width: 100%;
  min-height: 42px;
  padding: 0 12px;
  border: 1px solid var(--cc-line-strong);
  border-radius: 10px;
  color: var(--cc-ink);
  background: #fff;
}

.cc-sng-setup-tables {
  display: grid;
  gap: 7px;
}

.cc-sng-setup-tables > div {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

.cc-sng-setup-table {
  position: relative;
  display: grid;
  gap: 3px;
  min-width: 0;
  padding: 11px 12px;
  border: 1px solid var(--cc-line);
  border-radius: 11px;
  background: #fff;
  cursor: pointer;
}

.cc-sng-setup-table input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.cc-sng-setup-table.is-selected,
.cc-sng-setup-table:has(input:checked) {
  border-color: #ef5364;
  box-shadow: inset 0 0 0 1px rgba(239, 83, 100, .2);
  background: #fff7f8;
}

.cc-sng-setup-table.is-occupied {
  cursor: not-allowed;
  opacity: .55;
  background: #f1f3f5;
}

.cc-sng-setup-table strong {
  font-size: 12px;
}

.cc-sng-setup-selects {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.cc-sng-setup-actions {
  justify-content: flex-end;
  padding-top: 2px;
}

.cc-sng-setup-empty {
  grid-column: 1 / -1;
  margin: 0;
  color: var(--cc-muted);
  font-size: 11px;
}

.cc-sng-cancel-confirm {
  display: grid;
  grid-template-columns: minmax(230px, 1.3fr) repeat(2, minmax(160px, .8fr));
  gap: 10px;
  padding: 13px;
  border: 1px solid #f0b5bb;
  border-radius: 12px;
  background: #fff8f8;
}

.cc-sng-cancel-confirm > div:first-child {
  grid-column: 1 / -1;
}

.cc-sng-cancel-confirm > div:first-child > span {
  color: var(--cc-red);
  font-weight: 850;
}

.cc-sng-cancel-actions {
  align-items: end;
  justify-content: flex-end;
}

.cc-sng-cancel-actions button.is-danger {
  border-color: #bd2638;
  color: #fff;
  background: #bd2638;
}

.cc-sng-coupon-rule {
  display: grid;
  gap: 11px;
  padding: 14px 16px !important;
  border: 1px solid #ead9b9 !important;
  border-radius: 14px;
  background: linear-gradient(135deg, #fffdf7, #fff9ee);
}

.cc-sng-create-form .cc-sng-coupon-rule { grid-column: 1 / -1; }

.cc-sng-coupon-rule-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.cc-sng-coupon-rule-heading legend,
.cc-sng-coupon-rule-heading > div {
  display: grid;
  gap: 3px;
  margin: 0;
  padding: 0;
}

.cc-sng-coupon-rule-heading strong,
.cc-sng-coupon-rule-heading legend { color: #4d4333; font-size: 13px; font-weight: 850; }
.cc-sng-coupon-rule-heading span,
.cc-sng-coupon-rule-heading em { color: #917d5e; font-size: 10px; font-style: normal; }
.cc-sng-coupon-rule-heading button {
  min-height: 34px;
  padding: 0 13px;
  border: 1px solid #d6a84c;
  border-radius: 9px;
  color: #7c570f;
  background: #fff;
  font-weight: 800;
  cursor: pointer;
}

.cc-sng-coupon-rule-main {
  display: grid;
  grid-template-columns: minmax(220px, 1fr) minmax(130px, .45fr);
  gap: 10px;
}

.cc-sng-coupon-rule-main label { display: grid; gap: 6px; color: #786c59; font-size: 10px; font-weight: 750; }
.cc-sng-coupon-rule-main select,
.cc-sng-coupon-rule-main input {
  width: 100%;
  min-height: 40px;
  padding: 0 10px;
  border: 1px solid #ddcfb7;
  border-radius: 9px;
  color: #303943;
  background: #fff;
}

.cc-sng-coupon-template-options {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}

.cc-sng-coupon-template-options label {
  position: relative;
  display: inline-flex;
  align-items: center;
  min-height: 32px;
  padding: 0 10px;
  border: 1px solid #ddcfb7;
  border-radius: 999px;
  color: #6f6048;
  background: #fff;
  font-size: 9px;
  font-weight: 750;
  cursor: pointer;
}

.cc-sng-coupon-template-options label:has(input:checked) { border-color: #d29a2d; color: #82580a; background: #fff2cf; }
.cc-sng-coupon-template-options input { width: auto; min-height: 0; margin: 0 6px 0 0; }
.cc-sng-coupon-template-empty { color: #9b8768; font-size: 10px; }
.cc-sng-coupon-rule > p { margin: 0; color: #917d5e; font-size: 9px; line-height: 1.55; }
.cc-sng-coupon-rule [hidden] { display: none !important; }
.cc-sng-current-coupon-rule { margin-top: 12px; }
.cc-sng-current-coupon-rule button:disabled { cursor: wait; opacity: .55; }

.cc-sng-mushroom-pool {
  display: grid;
  grid-template-columns: 1.1fr 1fr 1fr;
  gap: 10px;
  padding: 16px;
  border: 1px solid rgba(179, 118, 17, 0.34);
  border-radius: 15px;
  background: linear-gradient(135deg, #251f15, #3a2911);
  color: #fff;
}

.cc-sng-mushroom-pool > div {
  padding: 4px 12px;
  border-right: 1px solid rgba(255,255,255,0.12);
}

.cc-sng-mushroom-pool > div:last-child {
  border-right: 0;
}

.cc-sng-mushroom-pool span,
.cc-sng-mushroom-pool strong,
.cc-sng-mushroom-pool small {
  display: block;
}

.cc-sng-mushroom-pool span {
  color: #cfb98c;
  font-size: 11px;
}

.cc-sng-mushroom-pool strong {
  margin-top: 5px;
  color: #ffe7a4;
  font-size: 22px;
}

.cc-sng-mushroom-pool small {
  color: #cdbb94;
  font-size: 12px;
}

.cc-sng-roster {
  display: grid;
  gap: 14px;
  padding: 18px;
  border: 1px solid var(--cc-line);
  border-radius: 16px;
  background: #fff;
}

.cc-sng-roster-heading,
.cc-sng-player-entry,
.cc-sng-player-list article {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.cc-sng-roster-heading span,
.cc-sng-roster-heading strong {
  display: block;
}

.cc-sng-roster-heading span {
  color: var(--cc-red);
  font-size: 12px;
  font-weight: 800;
}

.cc-sng-roster-heading strong {
  margin-top: 3px;
  font-size: 19px;
}

.cc-sng-roster-heading small {
  color: var(--cc-muted);
  text-align: right;
}

.cc-sng-player-entry input {
  flex: 1;
  min-width: 0;
  min-height: 44px;
  padding: 0 13px;
  border: 1px solid var(--cc-line-strong);
  border-radius: 11px;
  background: var(--cc-panel-2);
}

.cc-sng-player-entry button,
.cc-sng-player-list button {
  min-height: 40px;
  padding: 0 13px;
  border: 1px solid var(--cc-line-strong);
  border-radius: 10px;
  background: #fff;
}

.cc-sng-player-entry button.is-primary {
  border-color: var(--cc-red);
  color: #fff;
  background: var(--cc-red);
}

.cc-sng-roster-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.cc-sng-roster-grid > section {
  min-width: 0;
  overflow: hidden;
  border: 1px solid var(--cc-line);
  border-radius: 13px;
  background: var(--cc-panel-2);
}

.cc-sng-roster-grid header {
  padding: 13px 14px;
  border-bottom: 1px solid var(--cc-line);
}

.cc-sng-roster-grid header strong,
.cc-sng-roster-grid header span {
  display: block;
}

.cc-sng-roster-grid header span {
  margin-top: 3px;
  color: var(--cc-muted);
  font-size: 11px;
}

.cc-sng-player-list {
  max-height: 230px;
  overflow: auto;
}

.cc-sng-player-list article {
  min-height: 50px;
  padding: 8px 12px;
  border-bottom: 1px solid var(--cc-line);
  flex-wrap: wrap;
}

.cc-sng-player-list article:last-child {
  border-bottom: 0;
}

@keyframes cc-table-player-focus {
  0%, 100% { box-shadow: none; }
  25%, 75% { box-shadow: inset 4px 0 0 var(--cc-red), 0 0 0 3px rgba(223, 36, 61, .12); }
}

.cc-sng-player-list article.is-table-focus {
  position: relative;
  z-index: 2;
  background: #fff5f6;
  animation: cc-table-player-focus .55s ease 3;
}

.cc-sng-player-list article > span {
  min-width: 0;
  overflow: hidden;
  font-weight: 700;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cc-sng-player-list article > span small {
  display: block;
  margin-top: 3px;
  overflow: hidden;
  color: var(--cc-muted);
  font-size: 10px;
  font-weight: 500;
  text-overflow: ellipsis;
}

.cc-sng-seat-picker {
  display: grid;
  grid-column: 1 / -1;
  grid-template-columns: minmax(120px, 1fr) minmax(140px, 1fr) 94px;
  gap: 8px;
  width: 100%;
  margin-top: 8px;
}

.cc-sng-seat-picker button {
  color: var(--cc-red);
  font-weight: 800;
}

.cc-sng-player-list article > div {
  display: flex;
  gap: 6px;
}

.cc-sng-player-list button {
  min-height: 32px;
  padding: 0 9px;
  font-size: 12px;
}

.cc-sng-player-list button.is-danger {
  border-color: rgba(207, 48, 72, 0.38);
  color: var(--cc-danger);
  background: #fff6f7;
}

.cc-sng-player-list button.is-revive {
  border-color: #b68120;
  color: #fff;
  background: linear-gradient(135deg, #c99025, #9d6810);
}

.cc-sng-eliminated-list {
  grid-column: 1 / -1;
  border-color: rgba(181, 122, 20, 0.32) !important;
  background: #fffaf0 !important;
}

.cc-sng-player-list p {
  margin: 0;
  padding: 18px 14px;
  color: var(--cc-muted);
  font-size: 12px;
}

#cc-sng-custom-seats {
  grid-column: 1 / -1;
  margin-top: 8px;
}

#cc-sng-custom-seats:disabled {
  display: none;
}

.cc-sng-create-note {
  margin: 0;
  color: var(--cc-muted);
  font-size: 12px;
  line-height: 1.6;
}

.cc-sng-list {
  display: grid;
  gap: 0;
  margin-top: 14px;
}

.cc-sng-list article {
  display: grid;
  grid-template-columns: 1.2fr 1fr 0.6fr auto;
  align-items: center;
  gap: 16px;
  padding: 16px 4px;
  border-bottom: 1px solid var(--cc-line);
}

.cc-sng-list article:last-child {
  border-bottom: 0;
}

.cc-sng-list article div strong,
.cc-sng-list article div span {
  display: block;
}

.cc-sng-list article div span {
  margin-top: 3px;
  font-size: 12px;
}

.cc-sng-list-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
}

.cc-sng-list-actions > span {
  margin: 0 !important;
  padding: 8px 12px;
  border: 1px solid rgba(25, 151, 101, 0.22);
  border-radius: 10px;
  color: #16835b;
  background: rgba(25, 151, 101, 0.08);
  font-size: 12px;
  font-weight: 750;
  white-space: nowrap;
}

.cc-sng-list-actions > button {
  min-height: 38px;
  padding: 0 15px;
  border: 1px solid var(--cc-line-strong);
  border-radius: 10px;
  color: var(--cc-text);
  background: #fff;
  cursor: pointer;
  font: inherit;
  font-size: 12px;
  font-weight: 700;
  white-space: nowrap;
}

.cc-sng-list-actions > button[data-sng-manage-tournament] {
  border-color: rgba(250, 43, 62, 0.28);
  color: var(--cc-red);
  background: rgba(250, 43, 62, 0.06);
}

.cc-sng-list-actions > button:hover,
.cc-sng-list-actions > button:focus-visible {
  border-color: rgba(250, 43, 62, 0.48);
  outline: none;
}

.cc-sng-list article > button,
.cc-sng-history-list article > button {
  min-height: 38px;
  padding: 0 15px;
  border: 1px solid var(--cc-line-strong);
  border-radius: 10px;
  color: var(--cc-text);
  background: #fff;
  cursor: pointer;
  font: inherit;
  font-size: 12px;
  font-weight: 700;
}

.cc-sng-dispatch-panel {
  padding: 26px;
}

.cc-sng-dispatch-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 22px;
}

.cc-sng-dispatch-heading p {
  margin: 0;
  color: var(--cc-red);
  font-size: 11px;
  font-weight: 850;
  letter-spacing: .1em;
}

.cc-sng-dispatch-heading h2 {
  margin: 5px 0 3px;
  font-size: 26px;
}

.cc-sng-dispatch-heading span {
  color: var(--cc-muted);
  font-size: 13px;
}

.cc-sng-filter-tabs {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 20px;
  padding-top: 18px;
  border-top: 1px solid var(--cc-line);
}

.cc-sng-filter-tabs button {
  min-height: 38px;
  padding: 0 17px;
  border: 1px solid transparent;
  border-radius: 999px;
  color: var(--cc-muted);
  background: var(--cc-panel-2);
  cursor: pointer;
  font: inherit;
  font-size: 12px;
  font-weight: 750;
}

.cc-sng-filter-tabs button.is-active {
  border-color: rgba(250, 43, 62, .28);
  color: var(--cc-red);
  background: rgba(250, 43, 62, .07);
}

.cc-sng-filter-tabs > span {
  margin-left: auto;
  color: var(--cc-muted);
  font-size: 12px;
}

.cc-sng-create-panel[hidden] {
  display: none;
}

.cc-sng-create-close {
  min-height: 40px;
  padding: 0 16px;
  border: 1px solid var(--cc-line-strong);
  border-radius: 10px;
  color: var(--cc-text);
  background: #fff;
  cursor: pointer;
  font: inherit;
  font-size: 12px;
  font-weight: 750;
}

.cc-sng-create-form {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: start;
}

.cc-sng-create-form.is-simple {
  grid-template-columns: 1fr;
  gap: 16px;
  margin-top: 14px;
}

.cc-sng-create-heading > div > span {
  display: block;
  margin-top: 5px;
  color: var(--cc-muted);
  font-size: 12px;
}

.cc-sng-create-form .cc-sng-create-step-card {
  grid-column: 1 / -1;
  min-width: 0;
  padding: 18px !important;
  border: 1px solid var(--cc-line) !important;
  border-radius: 16px;
  background: #fff;
}

.cc-sng-create-section-title {
  display: flex !important;
  align-items: center;
  gap: 11px !important;
}

.cc-sng-create-section-title > i {
  display: grid;
  flex: 0 0 30px;
  width: 30px;
  height: 30px;
  place-items: center;
  border-radius: 9px;
  color: #fff;
  background: var(--cc-red);
  box-shadow: 0 7px 16px rgba(228, 35, 61, .18);
  font-size: 12px;
  font-style: normal;
  font-weight: 900;
}

.cc-sng-create-section-title > div {
  display: grid;
  gap: 3px;
}

.cc-sng-create-section-title strong,
.cc-sng-create-section-title legend {
  margin: 0 !important;
  padding: 0 !important;
  color: var(--cc-text) !important;
  font-size: 14px !important;
  font-weight: 850 !important;
}

.cc-sng-create-section-title span {
  color: var(--cc-muted) !important;
  font-size: 10px !important;
  font-weight: 500;
}

.cc-sng-create-display-card {
  display: grid;
  gap: 16px;
}

.cc-sng-create-display-fields {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.cc-sng-create-display-fields label {
  display: grid;
  gap: 7px;
  color: var(--cc-muted-2);
  font-size: 11px;
  font-weight: 750;
}

.cc-sng-create-submit {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 16px 18px;
  border: 1px solid rgba(228, 35, 61, .14);
  border-radius: 16px;
  background: linear-gradient(135deg, #fff, #fff7f8);
}

.cc-sng-create-auto-facts {
  display: flex;
  align-items: center;
  gap: 28px;
}

.cc-sng-create-auto-facts span {
  display: grid;
  gap: 3px;
}

.cc-sng-create-auto-facts small { color: var(--cc-muted); font-size: 10px; }
.cc-sng-create-auto-facts strong { color: var(--cc-text); font-size: 12px; }

.cc-sng-create-submit > button {
  min-width: 220px;
  min-height: 48px;
  box-shadow: 0 10px 22px rgba(228, 35, 61, .2);
}

.cc-sng-create-form fieldset {
  grid-column: auto;
}

.cc-sng-create-form .cc-sng-table-assignment {
  grid-column: 1 / -1;
}

.cc-sng-table-assignment-heading {
  margin-bottom: 12px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}

.cc-sng-table-assignment-heading legend {
  padding: 0;
}

.cc-sng-table-assignment-heading strong {
  padding: 7px 11px;
  border-radius: 999px;
  color: var(--cc-muted);
  background: #f1f3f6;
  font-size: 12px;
  font-weight: 800;
}

.cc-sng-table-assignment-heading strong.is-ready {
  color: #147a52;
  background: #e7f7ef;
}

.cc-sng-table-assignment-heading strong.is-warning {
  color: #b36b00;
  background: #fff3d9;
}

.cc-sng-table-assignment > p {
  margin: 10px 0 0;
  color: var(--cc-muted);
  font-size: 12px;
  line-height: 1.6;
}

.cc-sng-table-options {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.cc-sng-table-option {
  position: relative;
  min-width: 0;
  padding: 14px 16px;
  border: 1px solid var(--cc-line-strong);
  border-radius: 14px;
  display: grid;
  gap: 4px;
  color: var(--cc-text);
  background: #fff;
  cursor: pointer;
  transition: border-color .16s ease, box-shadow .16s ease, background .16s ease;
}

.cc-sng-table-option input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.cc-sng-table-option span {
  font-size: 15px;
  font-weight: 800;
}

.cc-sng-table-option strong {
  color: var(--cc-red);
  font-size: 12px;
}

.cc-sng-table-option small {
  overflow: hidden;
  color: var(--cc-muted);
  font-size: 11px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cc-sng-table-option.is-selected {
  border-color: rgba(250, 43, 62, .5);
  background: rgba(250, 43, 62, .055);
  box-shadow: inset 0 0 0 1px rgba(250, 43, 62, .12);
}

.cc-sng-table-option.is-claimed {
  opacity: .58;
  background: #f2f4f7;
  cursor: not-allowed;
}

.cc-sng-table-option.is-claimed strong {
  color: var(--cc-muted);
}

.cc-sng-table-options > .cc-sng-table-empty {
  grid-column: 1 / -1;
  padding: 18px;
  border: 1px dashed var(--cc-line-strong);
  border-radius: 14px;
  color: var(--cc-muted);
  background: #f7f8fa;
  text-align: center;
}

.cc-sng-create-form .cc-sng-mushroom-config,
.cc-sng-create-form .cc-sng-coupon-rule,
.cc-sng-create-form .cc-sng-create-note,
.cc-sng-create-form > button {
  grid-column: 1 / -1;
}

.cc-sng-create-form > button {
  min-width: 240px;
  justify-self: start;
}

@media (max-width: 900px) {
  .cc-sng-table-options {
    grid-template-columns: 1fr;
  }

  .cc-sng-create-display-fields { grid-template-columns: 1fr; }
  .cc-sng-create-submit { align-items: stretch; flex-direction: column; }
  .cc-sng-create-submit > button { width: 100%; }
}

.cc-sng-list {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin-top: 18px;
}

.cc-sng-list .cc-sng-session-card {
  display: grid;
  grid-template-columns: 1fr;
  gap: 16px;
  padding: 20px;
  border: 1px solid var(--cc-line);
  border-radius: 16px;
  background: #fff;
}

.cc-sng-list .cc-sng-session-card[data-sng-open-workbench] {
  cursor: pointer;
  transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

.cc-sng-list .cc-sng-session-card[data-sng-open-workbench]:hover,
.cc-sng-list .cc-sng-session-card[data-sng-open-workbench]:focus-visible {
  outline: none;
  border-color: rgba(250, 43, 62, .48);
  box-shadow: 0 12px 30px rgba(24, 32, 44, .1);
  transform: translateY(-2px);
}

.cc-sng-list .cc-sng-session-card.is-current {
  border-color: rgba(250, 43, 62, .42);
  box-shadow: inset 0 3px 0 rgba(250, 43, 62, .88);
}

.cc-sng-session-card-heading,
.cc-sng-card-progress > div:first-child {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}

.cc-sng-session-card-heading span {
  color: var(--cc-red);
  font-size: 11px;
  font-weight: 800;
}

.cc-sng-session-card-heading span em {
  display: inline-flex;
  margin-left: 9px;
  padding: 3px 7px;
  border-radius: 999px;
  color: var(--cc-muted);
  background: var(--cc-soft);
  font-size: 10px;
  font-style: normal;
  letter-spacing: 0;
}

.cc-sng-session-card.is-current .cc-sng-session-card-heading span em {
  color: var(--cc-red);
  background: rgba(250, 43, 62, .09);
}

.cc-sng-session-card-heading h3 {
  margin: 4px 0 0;
  font-size: 21px;
}

.cc-sng-session-card-heading > strong {
  padding: 7px 11px;
  border-radius: 999px;
  color: var(--cc-amber);
  background: rgba(182, 110, 8, .1);
  font-size: 12px;
}

.cc-sng-session-card-heading > strong[data-status="running"] {
  color: var(--cc-green);
  background: rgba(20, 133, 88, .1);
}

.cc-sng-card-progress > div:first-child > strong {
  color: var(--cc-text);
  font-size: 36px;
  line-height: 1;
}

.cc-sng-card-progress strong small {
  color: var(--cc-muted);
  font-size: 14px;
}

.cc-sng-card-progress > div:first-child > span {
  color: var(--cc-muted);
  font-size: 12px;
}

.cc-sng-card-progress > div:last-child {
  height: 8px;
  margin-top: 12px;
  overflow: hidden;
  border-radius: 999px;
  background: var(--cc-panel-2);
}

.cc-sng-card-progress > div:last-child span {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, var(--cc-red), #ff6c78);
}

.cc-sng-card-facts {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  overflow: hidden;
  border: 1px solid var(--cc-line);
  border-radius: 12px;
}

.cc-sng-card-facts > span {
  display: grid;
  gap: 5px;
  min-width: 0;
  padding: 11px 12px;
  border-right: 1px solid var(--cc-line);
}

.cc-sng-card-facts > span:last-child {
  border-right: 0;
}

.cc-sng-card-facts small {
  color: var(--cc-muted);
  font-size: 10px;
}

.cc-sng-card-facts strong {
  overflow: hidden;
  color: var(--cc-text);
  font-size: 12px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cc-sng-list-actions {
  justify-content: flex-start;
  flex-wrap: wrap;
}

.cc-sng-list-actions > a,
.cc-sng-list-actions > button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 38px;
  padding: 0 14px;
  border: 1px solid var(--cc-line-strong);
  border-radius: 10px;
  color: var(--cc-text);
  background: #fff;
  cursor: pointer;
  font: inherit;
  font-size: 12px;
  font-weight: 750;
  text-decoration: none;
}

.cc-sng-list-actions > a.is-primary {
  border-color: var(--cc-red);
  color: #fff;
  background: var(--cc-red);
}

.cc-sng-report-panel {
  margin-top: 18px;
}

.cc-sng-report-filters {
  display: grid;
  grid-template-columns: repeat(4, minmax(130px, 1fr)) auto;
  align-items: end;
  gap: 10px;
  margin-top: 18px;
  padding: 14px;
  border: 1px solid var(--cc-line);
  border-radius: 14px;
  background: var(--cc-panel-2);
}

.cc-sng-report-filters label {
  display: grid;
  gap: 7px;
}

.cc-sng-report-filters label > span {
  color: var(--cc-muted);
  font-size: 11px;
  font-weight: 700;
}

.cc-sng-report-filters input,
.cc-sng-report-filters select {
  width: 100%;
  min-height: 42px;
  padding: 0 11px;
  border: 1px solid var(--cc-line-strong);
  border-radius: 10px;
  color: var(--cc-text);
  background: #fff;
  font: inherit;
}

.cc-sng-report-filters button {
  min-width: 86px;
  min-height: 42px;
}

.cc-sng-report-metrics {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 10px;
  margin-top: 14px;
}

.cc-sng-report-metrics article {
  min-width: 0;
  padding: 15px;
  border: 1px solid var(--cc-line);
  border-radius: 13px;
  background: #fff;
}

.cc-sng-report-metrics span,
.cc-sng-report-metrics strong,
.cc-sng-report-metrics small {
  display: block;
}

.cc-sng-report-metrics span,
.cc-sng-report-metrics small {
  overflow: hidden;
  color: var(--cc-muted);
  font-size: 10px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cc-sng-report-metrics strong {
  margin: 7px 0 4px;
  overflow: hidden;
  font-size: 23px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cc-sng-history-list {
  display: grid;
  gap: 9px;
  margin-top: 14px;
}

.cc-sng-history-list > article {
  display: grid;
  grid-template-columns: 1.25fr .9fr .8fr auto;
  align-items: center;
  gap: 18px;
  padding: 15px;
  border: 1px solid var(--cc-line);
  border-radius: 13px;
  background: #fff;
}

.cc-sng-history-list article div small,
.cc-sng-history-list article div strong,
.cc-sng-history-list article div span {
  display: block;
}

.cc-sng-history-list article div small,
.cc-sng-history-list article div span {
  color: var(--cc-muted);
  font-size: 10px;
}

.cc-sng-history-list article div strong {
  margin: 4px 0;
  overflow: hidden;
  font-size: 14px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cc-sng-history-list strong[data-status="completed"],
.cc-sng-detail-heading > strong[data-status="completed"] {
  color: #16865d;
}

.cc-sng-history-list strong[data-status="running"],
.cc-sng-detail-heading > strong[data-status="running"] {
  color: var(--cc-red);
}

.cc-sng-detail-modal {
  position: relative;
  width: min(980px, calc(100vw - 40px));
  max-height: calc(100vh - 40px);
  overflow: auto;
}

.cc-sng-detail-heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 18px;
  padding-right: 44px;
}

.cc-sng-detail-heading h2,
.cc-sng-detail-heading p {
  margin: 0;
}

.cc-sng-detail-heading p {
  margin-top: 5px;
  color: var(--cc-muted);
  font-size: 12px;
}

.cc-sng-detail-heading > strong {
  padding: 7px 11px;
  border: 1px solid var(--cc-line);
  border-radius: 999px;
  font-size: 12px;
  background: var(--cc-panel-2);
}

.cc-sng-detail-facts {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 9px;
}

.cc-sng-detail-facts article {
  min-width: 0;
  padding: 13px;
  border: 1px solid var(--cc-line);
  border-radius: 12px;
  background: var(--cc-panel-2);
}

.cc-sng-detail-facts span,
.cc-sng-detail-facts strong {
  display: block;
}

.cc-sng-detail-facts span {
  color: var(--cc-muted);
  font-size: 10px;
}

.cc-sng-detail-facts strong {
  margin-top: 6px;
  overflow: hidden;
  font-size: 14px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cc-sng-detail-timeline,
.cc-sng-detail-section {
  margin-top: 16px;
  padding: 16px;
  border: 1px solid var(--cc-line);
  border-radius: 14px;
  background: #fff;
}

.cc-sng-detail-timeline h3,
.cc-sng-detail-section h3 {
  margin: 0 0 12px;
  font-size: 14px;
}

.cc-sng-detail-timeline > div {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

.cc-sng-detail-timeline span,
.cc-sng-detail-timeline strong {
  display: block;
}

.cc-sng-detail-timeline span {
  color: var(--cc-muted);
  font-size: 10px;
}

.cc-sng-detail-timeline strong {
  margin-top: 5px;
  color: var(--cc-text);
  font-size: 12px;
}

.cc-sng-detail-placements {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 9px;
}

.cc-sng-detail-placements article {
  padding: 13px;
  border: 1px solid var(--cc-line);
  border-radius: 12px;
  background: var(--cc-panel-2);
}

.cc-sng-detail-placements article[data-rank="1"] {
  border-color: rgba(199, 148, 39, .45);
  background: #fff9eb;
}

.cc-sng-detail-placements span,
.cc-sng-detail-placements strong {
  display: block;
}

.cc-sng-detail-placements span {
  color: var(--cc-muted);
  font-size: 10px;
}

.cc-sng-detail-placements strong {
  margin-top: 6px;
}

.cc-sng-detail-mushroom {
  border-color: rgba(181, 122, 20, .28);
  background: #fffaf0;
}

.cc-sng-detail-player-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.cc-sng-detail-player-list article {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 11px 12px;
  border: 1px solid var(--cc-line);
  border-radius: 11px;
  background: var(--cc-panel-2);
}

.cc-sng-detail-player-list strong,
.cc-sng-detail-player-list span {
  display: block;
}

.cc-sng-detail-player-list span,
.cc-sng-detail-player-list small,
.cc-sng-detail-empty {
  color: var(--cc-muted);
  font-size: 10px;
}

.cc-sng-detail-empty {
  margin: 8px 0 0;
}

@media (max-width: 1180px) {
  .cc-sng-layout {
    grid-template-columns: 1fr;
  }

  .cc-sng-current-panel {
    min-height: auto;
  }

  .cc-sng-metrics {
    grid-template-columns: repeat(5, minmax(84px, 1fr));
  }

  .cc-sng-report-filters {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .cc-sng-report-filters button {
    width: 100%;
  }

  .cc-sng-report-metrics {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .cc-sng-setup-tables > div {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .cc-sng-cancel-confirm {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .cc-sng-cancel-actions {
    grid-column: 1 / -1;
  }
}

@media (max-width: 760px) {
  .cc-sng-heading {
    align-items: stretch;
    flex-direction: column;
  }

  .cc-sng-metrics {
    grid-template-columns: repeat(2, 1fr);
  }

  .cc-sng-metrics article {
    min-width: 0;
    padding: 12px;
  }

  .cc-sng-attendance-grid,
  .cc-sng-choice-row,
  .cc-sng-placement-grid,
  .cc-sng-final-standing-grid,
  .cc-sng-podium-summary,
  .cc-sng-roster-grid,
  .cc-sng-mushroom-fields,
  .cc-sng-mushroom-pool {
    grid-template-columns: 1fr;
  }

  .cc-sng-mushroom-pool > div {
    border-right: 0;
    border-bottom: 1px solid rgba(255,255,255,0.12);
  }

  .cc-sng-mushroom-pool > div:last-child {
    border-bottom: 0;
  }

  .cc-sng-attendance-grid section,
  .cc-sng-ready-box,
  .cc-sng-session-title,
  .cc-sng-seat-progress > div:first-child {
    align-items: stretch;
    flex-direction: column;
  }

  .cc-sng-ready-box button {
    width: 100%;
  }

  .cc-sng-complete-box,
  .cc-sng-result-actions,
  .cc-sng-settlement-heading,
  .cc-sng-plan-row,
  .cc-sng-plan-controls,
  .cc-sng-prestart-summary,
  .cc-sng-prestart-heading,
  .cc-sng-setup-actions,
  .cc-sng-cancel-actions,
  .cc-sng-roster-heading,
  .cc-sng-player-entry {
    align-items: stretch;
    flex-direction: column;
  }

  .cc-sng-coupon-rule-heading { align-items: flex-start; flex-direction: column; }
  .cc-sng-coupon-rule-heading button { width: 100%; }
  .cc-sng-coupon-rule-main { grid-template-columns: 1fr; }

  .cc-sng-setup-tables > div,
  .cc-sng-setup-selects,
  .cc-sng-cancel-confirm {
    grid-template-columns: 1fr;
  }

  .cc-sng-cancel-actions {
    grid-column: auto;
  }

  .cc-sng-prestart-settings button,
  .cc-sng-setup-actions button,
  .cc-sng-cancel-actions button {
    width: 100%;
  }

  .cc-sng-waitlist-card,
  .cc-sng-waitlist-card.is-disabled {
    grid-template-columns: 1fr;
  }

  .cc-sng-waitlist-qr {
    width: min(180px, 100%);
  }

  .cc-sng-waitlist-actions {
    grid-template-columns: 1fr;
  }

  .cc-sng-roster-heading small {
    text-align: left;
  }

  .cc-sng-player-entry button {
    width: 100%;
  }

  .cc-sng-complete-box button,
  .cc-sng-result-actions button {
    width: 100%;
  }

  .cc-sng-result-grid {
    grid-template-columns: 1fr;
  }

  .cc-sng-list article,
  .cc-sng-history-list > article,
  .cc-sng-report-filters,
  .cc-sng-report-metrics,
  .cc-sng-detail-facts,
  .cc-sng-detail-timeline > div,
  .cc-sng-detail-placements,
  .cc-sng-detail-player-list {
    grid-template-columns: 1fr;
  }

  .cc-sng-list article,
  .cc-sng-history-list > article {
    gap: 10px;
  }

  .cc-sng-list-actions,
  .cc-sng-list article > button,
  .cc-sng-history-list article > button {
    width: 100%;
  }

  .cc-sng-list-actions > button,
  .cc-sng-list-actions > span {
    flex: 1;
    text-align: center;
  }

  .cc-sng-detail-modal {
    width: calc(100vw - 20px);
    max-height: calc(100vh - 20px);
  }

  .cc-sng-detail-heading {
    align-items: stretch;
    flex-direction: column;
  }
}

/* 多电视集中管理与投屏频道。频道只改变展示主题，赛事控制仍由同一服务端状态统一驱动。 */
.cc-console-access-grid > .cc-tv-control-panel {
  grid-column: 1 / -1;
}

.cc-tv-sync-banner {
  display: grid;
  grid-template-columns: minmax(180px, .35fr) minmax(0, 1fr);
  align-items: center;
  gap: 18px;
  margin-top: 16px;
  padding: 14px 16px;
  border: 1px solid #bfe7d3;
  border-radius: 12px;
  background: #f2fbf6;
}

.cc-tv-sync-banner > div {
  display: grid;
  gap: 3px;
}

.cc-tv-sync-banner small,
.cc-channel-manager .cc-subheading small,
.cc-bound-tv-section .cc-subheading small {
  color: #74808b;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.cc-tv-sync-banner strong {
  color: #148757;
  font-size: 16px;
}

.cc-tv-sync-banner p {
  margin: 0;
  color: #5e6a75;
  font-size: 10px;
  line-height: 1.6;
}

.cc-channel-manager,
.cc-bound-tv-section {
  margin-top: 18px;
  padding-top: 18px;
  border-top: 1px solid #e0e5e9;
}

.cc-channel-manager > .cc-subheading,
.cc-bound-tv-section > .cc-subheading {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 14px;
  margin-bottom: 12px;
}

.cc-channel-manager > .cc-subheading > div,
.cc-bound-tv-section > .cc-subheading > div {
  display: grid;
  gap: 4px;
}

.cc-channel-manager > .cc-subheading strong,
.cc-bound-tv-section > .cc-subheading strong {
  color: #202733;
  font-size: 14px;
}

.cc-channel-manager > .cc-subheading > span,
.cc-bound-tv-section > .cc-subheading > span {
  color: #7b8590;
  font-size: 9px;
}

.cc-channel-create-form {
  display: grid;
  grid-template-columns: minmax(180px, 1fr) minmax(220px, 1fr) auto;
  gap: 10px;
  margin-bottom: 12px;
  padding: 12px;
  border: 1px solid #dde3e8;
  border-radius: 12px;
  background: #f7f9fa;
}

.cc-channel-create-form input,
.cc-channel-create-form select,
.cc-channel-item input,
.cc-channel-item select,
.cc-device-item select {
  width: 100%;
  min-width: 0;
  height: 42px;
  padding: 0 12px;
  border: 1px solid #cfd7df;
  border-radius: 9px;
  color: #202733;
  background: #fff;
  outline: none;
  font: inherit;
  font-size: 10px;
}

.cc-channel-create-form button,
.cc-channel-actions button,
.cc-channel-actions a,
.cc-device-actions button,
.cc-device-actions a {
  display: inline-flex;
  min-height: 38px;
  align-items: center;
  justify-content: center;
  padding: 0 13px;
  border: 1px solid #cfd7df;
  border-radius: 9px;
  color: #29313b;
  background: #fff;
  font-size: 9px;
  font-weight: 800;
  text-decoration: none;
}

.cc-channel-create-form button,
.cc-channel-actions button[data-channel-action="save"],
.cc-device-actions button[data-device-action="save"] {
  border-color: #f2a6ae;
  color: #d71d35;
  background: #fff4f5;
}

.cc-channel-actions .is-danger,
.cc-device-actions .is-danger {
  color: #9b5760;
  background: #fff;
}

.cc-channel-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.cc-channel-item {
  display: grid;
  gap: 11px;
  padding: 13px;
  border: 1px solid #dce2e7;
  border-radius: 12px;
  background: #fff;
}

.cc-channel-title {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
}

.cc-channel-title > span {
  display: grid;
  width: 34px;
  height: 34px;
  place-items: center;
  border-radius: 9px;
  color: #fff;
  background: #202733;
  font-size: 10px;
  font-weight: 900;
}

.cc-channel-title > div {
  display: grid;
  gap: 3px;
}

.cc-channel-title input {
  height: 30px;
  padding: 0 8px;
  border-color: transparent;
  font-size: 12px;
  font-weight: 900;
}

.cc-channel-title input:focus {
  border-color: #f2a6ae;
}

.cc-channel-title small,
.cc-channel-item > p {
  margin: 0;
  color: #7b8590;
  font-size: 8px;
}

.cc-channel-title em {
  padding: 5px 8px;
  border-radius: 999px;
  color: #69737d;
  background: #f0f3f5;
  font-size: 8px;
  font-style: normal;
  font-weight: 800;
}

.cc-channel-settings {
  display: grid;
  grid-template-columns: minmax(180px, 1fr) auto;
  align-items: end;
  gap: 10px;
}

.cc-channel-settings label,
.cc-device-fields label {
  display: grid;
  gap: 5px;
}

.cc-channel-settings label > span,
.cc-device-fields label > span {
  color: #6c7782;
  font-size: 8px;
  font-weight: 700;
}

.cc-channel-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.cc-bound-tv-section .cc-device-list {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.cc-bound-tv-section .cc-device-item {
  position: relative;
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr);
  align-items: start;
  gap: 10px;
  padding: 13px;
  border-color: #dce2e7;
  background: #fff;
}

.cc-bound-tv-section .cc-device-icon {
  width: 38px;
  height: 38px;
  border-color: #e8bdc3;
  color: #d71d35;
  background: #fff4f5;
}

.cc-device-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin-bottom: 9px;
}

.cc-device-heading strong {
  color: #202733;
  font-size: 12px;
}

.cc-device-heading span {
  padding: 4px 7px;
  border-radius: 999px;
  color: #7b8590;
  background: #f1f3f5;
  font-size: 7px;
  font-weight: 800;
}

.cc-device-heading span.is-online {
  color: #148757;
  background: #eaf8f1;
}

.cc-device-fields {
  display: grid;
  grid-template-columns: 1fr;
  gap: 8px;
}

.cc-bound-tv-section .cc-device-item input,
.cc-bound-tv-section .cc-device-item select {
  height: 38px;
  color: #202733;
  background: #fff;
}

.cc-bound-tv-section .cc-device-status {
  position: absolute;
  top: 13px;
  right: 13px;
  display: none;
}

@media (max-width: 1220px) {
  .cc-bound-tv-section .cc-device-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 760px) {
  .cc-tv-sync-banner,
  .cc-channel-create-form,
  .cc-channel-settings,
  .cc-channel-list,
  .cc-bound-tv-section .cc-device-list {
    grid-template-columns: 1fr;
  }

  .cc-channel-manager > .cc-subheading,
  .cc-bound-tv-section > .cc-subheading {
    align-items: start;
    flex-direction: column;
  }
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }

  *,
  *::before,
  *::after {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
  }
}

/* 2026-09 timer console final layout — scoped to the existing overview page */
.cc-shell[data-active-page="overview"] {
  --cc-console-bg: #f5f7fa;
  --cc-console-text: #172033;
  --cc-console-muted: #768198;
  --cc-console-line: #e7ebf0;
  --cc-console-red: #f2384f;
  --cc-console-navy: #102033;
  color: var(--cc-console-text);
  background: var(--cc-console-bg);
}

.cc-shell[data-active-page="overview"] .cc-main {
  min-height: 100vh;
  background: var(--cc-console-bg);
}

.cc-shell[data-active-page="overview"] .cc-topbar {
  min-height: 82px;
  padding: 12px clamp(20px, 2vw, 34px);
  border-color: var(--cc-console-line);
  background: rgba(255, 255, 255, .97);
  box-shadow: none;
  backdrop-filter: blur(12px);
}

.cc-shell[data-active-page="overview"] .cc-default-page-title,
.cc-shell[data-active-page="overview"] .cc-section-page-title,
.cc-shell[data-active-page="overview"] .cc-coupon-page-title,
.cc-shell[data-active-page="overview"] .cc-subscription-pill,
.cc-shell[data-active-page="overview"] .cc-tv-quick-access,
.cc-shell[data-active-page="overview"] .cc-desktop-meta {
  display: none !important;
}

.cc-shell[data-active-page="overview"] .cc-overview-page-title {
  display: block;
}

.cc-shell[data-active-page="overview"] .cc-overview-page-title h1 {
  margin: 0;
  color: var(--cc-console-text);
  font-size: clamp(23px, 1.7vw, 26px);
  font-weight: 650;
  letter-spacing: -.025em;
}

.cc-shell[data-active-page="overview"] .cc-overview-page-title p {
  margin: 5px 0 0;
  color: var(--cc-console-muted);
  font-size: 12px;
}

.cc-shell[data-active-page="overview"] .cc-topbar-meta {
  gap: 10px;
  flex-wrap: nowrap;
}

.cc-shell[data-active-page="overview"] .cc-coupon-store-pill,
.cc-shell[data-active-page="overview"] .cc-coupon-admin-pill,
.cc-shell[data-active-page="overview"] .cc-device-pill {
  display: flex;
  min-width: 142px;
  min-height: 52px;
  align-items: center;
  gap: 9px;
  padding: 7px 11px;
  border: 1px solid var(--cc-console-line);
  border-radius: 11px;
  color: var(--cc-console-text);
  background: #fff;
  box-shadow: none;
}

.cc-shell[data-active-page="overview"] .cc-coupon-store-pill > span,
.cc-shell[data-active-page="overview"] .cc-coupon-admin-pill > span,
.cc-shell[data-active-page="overview"] .cc-device-pill > span {
  display: grid;
  width: 32px;
  height: 32px;
  flex: 0 0 32px;
  place-items: center;
  border-radius: 9px;
  color: #276ee8;
  background: #eef5ff;
  font-size: 10px;
  font-weight: 800;
}

.cc-shell[data-active-page="overview"] .cc-coupon-admin-pill > span {
  border-radius: 50%;
  color: #fff;
  background: #253144;
}

.cc-shell[data-active-page="overview"] .cc-topbar-status-card div {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.cc-shell[data-active-page="overview"] .cc-topbar-status-card small {
  color: var(--cc-console-muted);
  font-size: 9px;
}

.cc-shell[data-active-page="overview"] .cc-topbar-status-card strong {
  overflow: hidden;
  max-width: 126px;
  color: var(--cc-console-text);
  font-size: 11px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cc-shell[data-active-page="overview"] .cc-content {
  display: grid;
  max-width: none;
  gap: 16px;
  padding: 16px clamp(18px, 2vw, 32px) 28px;
  background: var(--cc-console-bg);
}

.cc-shell[data-active-page="overview"] .cc-overview-event-shell,
.cc-shell[data-active-page="overview"] .cc-overview-v3 {
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}

.cc-overview-event-bar {
  display: grid;
  min-height: 72px;
  grid-template-columns: auto minmax(230px, 1fr) auto auto auto auto auto;
  align-items: center;
  gap: 14px;
  padding: 11px 14px 11px 18px;
  border: 1px solid var(--cc-console-line);
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 4px 14px rgba(23, 48, 72, .035);
}

.cc-overview-event-label {
  color: var(--cc-console-muted);
  font-size: 12px;
  font-weight: 700;
  white-space: nowrap;
}

.cc-overview-tournament-select select {
  width: 100%;
  min-height: 48px;
  padding: 0 38px 0 13px;
  border: 1px solid #dce2e9;
  border-radius: 10px;
  color: var(--cc-console-text);
  background: #fff;
  font: inherit;
  font-size: 14px;
  font-weight: 720;
  cursor: pointer;
  transition: border-color 140ms ease, box-shadow 140ms ease, background-color 140ms ease;
}

.cc-overview-tournament-select select:hover { border-color: #b9c4d1; background: #fbfcfd; }
.cc-overview-tournament-select select:focus-visible { border-color: #7893b8; outline: 0; box-shadow: 0 0 0 3px rgba(69, 102, 148, .12); }
.cc-overview-tournament-select select:disabled { color: #8b96a7; background: #f3f5f7; cursor: progress; }

.cc-overview-event-status,
.cc-overview-event-metric,
.cc-overview-event-actions,
.cc-overview-toolbar-state,
.cc-overview-toolbar-actions {
  display: flex;
  align-items: center;
}

.cc-overview-event-status {
  gap: 7px;
  min-height: 36px;
  padding: 0 12px;
  border-radius: 9px;
  color: #1b8a60;
  background: #edf9f4;
  font-size: 11px;
  white-space: nowrap;
}

.cc-overview-event-status i,
.cc-overview-toolbar-state > i:first-child {
  width: 8px;
  height: 8px;
  flex: 0 0 8px;
  border-radius: 50%;
  background: #18a76e;
}

.cc-overview-event-status[data-status="paused"] { color: #9b6a16; background: #fff8e9; }
.cc-overview-event-status[data-status="paused"] i { background: #d49a31; }
.cc-overview-event-status[data-status="error"] { color: #c32b42; background: #fff0f2; }
.cc-overview-event-status[data-status="error"] i { background: var(--cc-console-red); }

.cc-overview-event-metric {
  position: relative;
  display: grid;
  min-width: 104px;
  min-height: 50px;
  grid-template-columns: 42px auto;
  grid-template-rows: 1fr;
  column-gap: 10px;
  align-content: center;
  padding: 7px 12px 7px 9px;
  border: 1px solid #e4e9ef;
  border-radius: 11px;
  background: #f8fafc;
  white-space: nowrap;
}

.cc-overview-event-metric::before {
  display: grid;
  width: 42px;
  height: 30px;
  align-self: center;
  place-items: center;
  border-radius: 9px;
  color: #3d6fa8;
  background: #eaf3ff;
  font-size: 10px;
  font-weight: 760;
}
.cc-overview-event-metric.is-entries::before { content: "报名"; }
.cc-overview-event-metric.is-remaining::before { content: "剩余"; color: #278061; background: #e9f8f1; }
.cc-overview-event-metric.is-level::before { content: "当前"; color: #685b9b; background: #f0edfb; }
.cc-overview-event-metric span { display: none; }
.cc-overview-event-metric strong { grid-column: 2; align-self: center; color: var(--cc-console-text); font-size: 22px; font-variant-numeric: tabular-nums; line-height: 1.05; letter-spacing: -.02em; }
.cc-overview-event-metric.is-level { min-width: 140px; }
.cc-overview-event-metric.is-level strong { color: #596984; font-size: 17px; letter-spacing: .04em; }
.cc-overview-event-actions { justify-content: flex-end; gap: 8px; }

.cc-overview-event-actions button,
.cc-overview-display-toolbar button,
.cc-overview-display-toolbar a,
.cc-overview-toolbar-actions button,
.cc-overview-toolbar-actions a {
  min-height: 40px;
  padding: 0 14px;
  border: 1px solid #dce2e9;
  border-radius: 10px;
  color: #283449;
  background: #fff;
  font: inherit;
  font-size: 11px;
  font-weight: 720;
  white-space: nowrap;
  cursor: pointer;
}

.cc-overview-event-actions button:hover,
.cc-overview-display-toolbar button:hover,
.cc-overview-display-toolbar a:hover { border-color: #bfc8d3; background: #f8fafc; }

.cc-overview-main-grid {
  display: grid;
  grid-template-columns: minmax(0, 56fr) minmax(0, 44fr);
  align-items: stretch;
  gap: 16px;
}

.cc-shell[data-active-page="overview"] .cc-overview-main-grid > .cc-panel {
  min-width: 0;
  margin: 0;
  padding: 18px;
  border: 1px solid var(--cc-console-line);
  border-radius: 16px;
  color: var(--cc-console-text);
  background: #fff;
  box-shadow: 0 6px 20px rgba(38, 52, 73, .04);
}

.cc-overview-timer-card,
.cc-overview-adjust-card {
  display: flex;
  flex-direction: column;
}

.cc-overview-card-heading,
.cc-overview-adjust-heading,
.cc-overview-section-heading,
.cc-overview-buyin-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
}

.cc-overview-card-heading { margin-bottom: 12px; }
.cc-overview-card-heading h2,
.cc-overview-adjust-heading h2 { margin: 0; color: var(--cc-console-text); font-size: 20px; font-weight: 650; letter-spacing: -.02em; }
.cc-overview-card-heading p,
.cc-overview-adjust-heading p,
.cc-overview-section-heading p { margin: 4px 0 0; color: var(--cc-console-muted); font-size: 11px; }
.cc-overview-card-heading .cc-control-safety { color: #24815f; background: #edf8f3; font-size: 9px; }
.cc-overview-card-heading .cc-control-safety[data-state="locked"] { color: #a46c13; background: #fff7e7; }
.cc-overview-timer-card .cc-theme-console-context { display: none; }

.cc-timer-stage {
  padding: 20px 22px 18px;
  border-radius: 14px;
  color: #f8fbff;
  background: var(--cc-console-navy);
  box-shadow: none;
}

.cc-timer-stage-head {
  display: grid;
  grid-template-columns: auto auto 1fr;
  align-items: center;
  gap: 10px;
}

.cc-timer-stage-head > strong { color: #fff; font-size: 15px; letter-spacing: .035em; }
.cc-timer-stage-head > small { justify-self: end; color: #b8c4d5; font-size: 11px; }
.cc-timer-stage .cc-live-status { min-height: 28px; gap: 6px; padding: 0 10px; border: 0; border-radius: 999px; color: #65e3b1; background: rgba(19, 161, 108, .2); font-size: 10px; }
.cc-timer-stage .cc-live-status span { width: 7px; height: 7px; background: #45e6aa; box-shadow: none; }
.cc-timer-stage .cc-live-status[data-status="paused"] { color: #f0c36f; background: rgba(211, 153, 46, .17); }
.cc-timer-stage .cc-live-status[data-status="paused"] span { background: #e9b553; }

.cc-timer-stage .cc-clock-wrap {
  display: grid;
  justify-items: center;
  gap: 0;
  margin: 4px 0 7px;
  padding: 0;
  border: 0;
}

.cc-timer-stage .cc-clock {
  color: #fff;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  font-size: clamp(64px, 6.2vw, 88px);
  font-weight: 760;
  font-variant-numeric: tabular-nums;
  line-height: 1.06;
  letter-spacing: -.07em;
}

.cc-timer-stage #cc-clock-caption { color: #7f90a8; font-size: 9px; }
.cc-current-blinds { display: grid; grid-template-columns: repeat(3, 1fr); margin: 0 0 14px; }
.cc-current-blinds > div { display: grid; justify-items: center; gap: 3px; border-right: 1px solid rgba(226, 234, 244, .15); }
.cc-current-blinds > div:last-child { border-right: 0; }
.cc-current-blinds span { color: #aebbd0; font-size: 11px; }
.cc-current-blinds strong { color: #fff; font-size: clamp(24px, 2.2vw, 34px); font-variant-numeric: tabular-nums; }
.cc-timer-stage .cc-progress-label { color: #b9c5d6; font-size: 10px; }
.cc-timer-stage .cc-progress { height: 7px; margin-top: 7px; background: #344a63; }
.cc-timer-stage .cc-progress span { background: var(--cc-console-red); }

.cc-next-round-strip {
  display: grid;
  grid-template-columns: auto auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  margin-top: 14px;
  padding: 10px 12px;
  border-radius: 9px;
  color: #fff;
  background: #1b3049;
}

.cc-next-round-strip > span { color: #aab8cb; font-size: 10px; }
.cc-next-round-strip > strong { padding-right: 10px; border-right: 1px solid rgba(255,255,255,.13); font-size: 12px; white-space: nowrap; }
.cc-next-round-strip > div { display: flex; gap: 10px; min-width: 0; }
.cc-next-round-strip > div b { display: flex; gap: 4px; color: #eff5fc; font-size: 10px; white-space: nowrap; }
.cc-next-round-strip > div i,
.cc-next-round-strip > small i { color: #92a2b8; font-style: normal; font-weight: 500; }
.cc-next-round-strip > small { display: grid; justify-items: end; gap: 2px; font-size: 9px; }
.cc-next-round-strip > small strong { color: #fff; font-size: 11px; }

.cc-overview-timer-actions {
  position: relative;
  display: grid;
  grid-template-columns: minmax(116px, 1.35fr) repeat(2, minmax(78px, 1fr)) repeat(2, minmax(70px, .8fr)) minmax(72px, .8fr);
  gap: 7px;
  margin-top: 12px;
}

.cc-overview-timer-actions > button,
.cc-overview-more > summary {
  display: flex;
  min-width: 0;
  min-height: 46px;
  align-items: center;
  justify-content: center;
  gap: 7px;
  padding: 0 10px;
  border: 1px solid #dce2e9;
  border-radius: 10px;
  color: #283449;
  background: #fff;
  font: inherit;
  font-size: 11px;
  font-weight: 720;
  white-space: nowrap;
  cursor: pointer;
}

.cc-overview-timer-actions > button.is-primary { border-color: var(--cc-console-red); color: #fff; background: var(--cc-console-red); }
.cc-overview-timer-actions > button:hover:not(:disabled),
.cc-overview-more > summary:hover { border-color: #bfc8d3; background: #f8fafc; }
.cc-overview-timer-actions > button.is-primary:hover:not(:disabled) { border-color: #da2c43; background: #da2c43; }
.cc-overview-timer-actions > button:active:not(:disabled) { transform: translateY(1px); }
.cc-overview-timer-actions > button:disabled { color: #aeb7c2; background: #f3f5f7; opacity: 1; cursor: not-allowed; }
.cc-overview-timer-actions > button[hidden] { display: none !important; }
.cc-overview-more { position: relative; min-width: 0; }
.cc-overview-more > summary { list-style: none; }
.cc-overview-more > summary::-webkit-details-marker { display: none; }
.cc-overview-more[open] > div { position: absolute; z-index: 8; right: 0; bottom: 54px; display: grid; width: 220px; gap: 5px; padding: 8px; border: 1px solid var(--cc-console-line); border-radius: 12px; background: #fff; box-shadow: 0 16px 40px rgba(25, 37, 54, .15); }
.cc-overview-more[open] > div button { min-height: 38px; padding: 7px 10px; border: 0; border-radius: 8px; color: #344054; background: transparent; font: inherit; font-size: 11px; text-align: left; cursor: pointer; }
.cc-overview-more[open] > div button:hover { background: #f4f6f8; }
.cc-overview-more[open] > div button.is-danger { color: #d22b42; }
.cc-overview-more[open] > div button small { display: block; margin-top: 2px; color: #9099a6; font-size: 8px; }
.cc-overview-auxiliary { display: flex; gap: 18px; margin-top: auto; padding-top: 11px; color: var(--cc-console-muted); font-size: 9px; }
.cc-overview-auxiliary b { margin-left: 4px; color: #455268; font-size: 10px; }

.cc-overview-adjust-heading { min-height: 54px; margin-bottom: 12px; }
.cc-overview-stack-totals { display: grid; grid-template-columns: repeat(2, minmax(112px, 1fr)); gap: 8px; }
.cc-overview-stack-totals > span {
  position: relative;
  display: grid;
  min-width: 112px;
  gap: 5px;
  padding: 11px 12px 11px 45px;
  overflow: hidden;
  border: 1px solid #dfe7f0;
  border-radius: 12px;
  color: var(--cc-console-muted);
  background: #f7faff;
  font-size: 10px;
}
.cc-overview-stack-totals > span::before {
  position: absolute;
  left: 11px;
  top: 50%;
  display: grid;
  width: 25px;
  height: 25px;
  place-items: center;
  border-radius: 8px;
  color: #326ba6;
  background: #e8f2ff;
  font-size: 11px;
  font-weight: 800;
  transform: translateY(-50%);
}
.cc-overview-stack-totals > span.is-total::before { content: "Σ"; }
.cc-overview-stack-totals > span.is-average::before { content: "均"; color: #6a5b98; background: #efecfb; }
.cc-overview-stack-totals strong { color: var(--cc-console-text); font-size: 22px; font-variant-numeric: tabular-nums; line-height: 1; letter-spacing: -.025em; }
.cc-overview-adjust-section { padding: 14px; border: 1px solid var(--cc-console-line); border-radius: 12px; }
.cc-overview-adjust-section + .cc-overview-adjust-section { margin-top: 10px; }
.cc-overview-section-heading h3 { margin: 0; color: var(--cc-console-text); font-size: 15px; }
.cc-overview-people-now { display: flex; gap: 8px; color: var(--cc-console-muted); font-size: 10px; }
.cc-overview-people-now span {
  display: flex;
  min-width: 78px;
  min-height: 44px;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 6px 10px;
  border: 1px solid #dfe8f2;
  border-radius: 10px;
  background: #f6f9fd;
}
.cc-overview-people-now span.is-remaining { border-color: #d8ebe3; background: #f2faf6; }
.cc-overview-people-now b { color: var(--cc-console-text); font-size: 23px; font-variant-numeric: tabular-nums; line-height: 1; letter-spacing: -.03em; }
.cc-overview-people-now .is-remaining b { color: #24785a; }
.cc-overview-player-actions,
.cc-overview-stack-actions { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 7px; margin-top: 12px; }
.cc-overview-stack-actions { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.cc-overview-player-actions button,
.cc-overview-stack-actions button { min-height: 44px; padding: 0 8px; border: 1px solid #dce2e9; border-radius: 10px; color: #283449; background: #fff; font: inherit; font-size: 11px; font-weight: 720; white-space: nowrap; cursor: pointer; }
.cc-overview-player-actions button.is-entry { border-color: #c8dcfa; color: #246bc9; background: #f0f6ff; }
.cc-overview-player-actions button.is-remove-entry { border-color: #eadbb8; color: #8b651c; background: #fffaf0; }
.cc-overview-player-actions button.is-eliminate { border-color: #fa8c9b; color: #d92f46; background: #fff; }
.cc-overview-player-actions button.is-restore { border-color: #b9dfcf; color: #247a59; background: #f0faf6; }
.cc-overview-player-actions button:hover:not(:disabled),
.cc-overview-stack-actions button:hover:not(:disabled) { border-color: #b9c4d1; background: #f8fafc; }
.cc-overview-player-actions button:disabled,
.cc-overview-stack-actions button:disabled { color: #aeb7c2; background: #f3f5f7; cursor: not-allowed; }
.cc-overview-buyin-row { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(150px, .85fr); align-items: end; margin-top: 12px; }
.cc-buyin-mode-field,
.cc-stack-adjustment { display: grid; min-width: 0; gap: 6px; }
.cc-buyin-mode-field > span,
.cc-stack-adjustment > span { min-height: 16px; color: #556277; font-size: 11px; font-weight: 680; line-height: 16px; }
.cc-buyin-segments { display: grid; width: 100%; min-width: 0; grid-template-columns: repeat(2, 1fr); padding: 3px; border: 1px solid #dbe2ea; border-radius: 10px; background: #f3f6f9; }
.cc-buyin-segments button { min-height: 38px; padding: 0 10px; border: 0; border-radius: 7px; color: #5f6d80; background: transparent; font: inherit; font-size: 11px; font-weight: 720; cursor: pointer; }
.cc-buyin-segments button.is-active { color: #245f9f; background: #eaf3ff; box-shadow: inset 0 0 0 1px #c9ddf6; }
.cc-buyin-segments button:hover:not(.is-active) { color: #34445a; background: #e9edf2; }
.cc-stack-adjustment { position: relative; width: 100%; }
.cc-stack-adjustment input { width: 100%; min-height: 42px; padding: 0 30px 0 10px; border: 1px solid #dce2e9; border-radius: 9px; color: var(--cc-console-text); background: #fff; font: inherit; font-size: 14px; font-weight: 720; font-variant-numeric: tabular-nums; }
.cc-stack-adjustment i { position: absolute; right: 10px; bottom: 14px; color: var(--cc-console-muted); font-size: 9px; font-style: normal; }
.cc-overview-stack-actions button.is-add-stack { border-color: #bfd6f3; color: #245f9f; background: #edf5ff; }
.cc-overview-stack-actions button.is-sub-stack { border-color: #f2bac3; color: #c7374b; background: #fff7f8; }
.cc-overview-stack-actions button.is-edit-rule { color: #526176; background: #f7f8fa; }
.cc-overview-stack-actions button.is-add-stack:hover:not(:disabled) { border-color: #93b8e6; background: #e4f0ff; }
.cc-overview-stack-actions button.is-sub-stack:hover:not(:disabled) { border-color: #e8909d; background: #fff0f2; }
.cc-overview-stack-totals > span em { font-style: normal; }
.cc-overview-stack-totals.is-classic-total { grid-template-columns: minmax(112px, max-content); }
.cc-classic-total-now { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-top: 12px; padding: 10px 12px; border: 1px solid #dfe8f2; border-radius: 10px; background: #f6f9fd; color: var(--cc-console-muted); font-size: 11px; }
.cc-classic-total-now strong { color: var(--cc-console-text); font-size: 20px; font-variant-numeric: tabular-nums; line-height: 1; }
.cc-classic-total-now strong i { margin-left: 3px; color: var(--cc-console-muted); font-size: 11px; font-style: normal; font-weight: 500; }
.cc-classic-total-actions { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.cc-overview-sync-note { display: flex; align-items: center; gap: 8px; margin-top: auto; padding-top: 12px; color: var(--cc-console-muted); }
.cc-overview-sync-note span { display: grid; width: 18px; height: 18px; place-items: center; border-radius: 50%; color: #fff; background: #8190a6; font-size: 10px; }
.cc-overview-sync-note p { margin: 0; font-size: 10px; }

.cc-overview-display-toolbar {
  display: grid;
  min-height: 154px;
  gap: 16px;
  padding: 18px 20px;
  border: 1px solid var(--cc-console-line);
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 4px 14px rgba(38, 52, 73, .035);
}
.cc-overview-display-heading { display: flex; align-items: center; justify-content: space-between; gap: 18px; padding-bottom: 14px; border-bottom: 1px solid var(--cc-console-line); }
.cc-overview-display-heading > div { display: grid; gap: 3px; }
.cc-overview-display-heading span { color: var(--cc-console-red); font-size: 10px; font-weight: 750; }
.cc-overview-display-heading h2 { margin: 0; color: var(--cc-console-text); font-size: 18px; white-space: nowrap; }
.cc-overview-display-heading p { margin: 0; color: var(--cc-console-muted); font-size: 11px; }
.cc-overview-display-content { display: grid; grid-template-columns: minmax(420px, .88fr) minmax(600px, 1.12fr); align-items: stretch; gap: 16px; }
.cc-overview-template-summary { display: grid; min-width: 0; min-height: 112px; grid-template-columns: 160px minmax(150px, 1fr) auto; align-items: center; gap: 16px; padding: 12px; border: 1px solid var(--cc-console-line); border-radius: 12px; background: #f8fafc; }
.cc-overview-theme-preview { position: relative; width: 160px; aspect-ratio: 16 / 9; overflow: hidden; border: 1px solid #dce2e9; border-radius: 9px; background: #eef1f4; box-shadow: 0 3px 10px rgba(23, 32, 51, .08); }
.cc-overview-theme-preview > img { display: block; width: 100%; height: 100%; object-fit: cover; }
.cc-overview-theme-preview .cc-real-display-preview { width: 100%; height: 100%; border-radius: 0; }
.cc-overview-theme-preview .cc-real-display-label { display: none; }
.cc-overview-theme-name { display: grid; min-width: 0; gap: 4px; }
.cc-overview-theme-name span { color: var(--cc-console-muted); font-size: 10px; }
.cc-overview-theme-name strong { overflow: hidden; color: var(--cc-console-text); font-size: 15px; line-height: 1.35; text-overflow: ellipsis; white-space: nowrap; }
.cc-overview-template-change { justify-self: end; }
.cc-overview-display-workspace { display: grid; min-width: 0; grid-template-rows: 1fr auto; gap: 9px; padding: 10px; border: 1px solid var(--cc-console-line); border-radius: 12px; background: #f8fafc; }
.cc-overview-display-statuses { display: grid; min-width: 0; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.cc-overview-toolbar-state { min-width: 0; min-height: 52px; gap: 10px; padding: 8px 12px; border: 1px solid #e1e7ed; border-radius: 10px; color: #667386; background: #fff; font-size: 11px; white-space: nowrap; }
.cc-overview-toolbar-state > div { display: grid; min-width: 0; gap: 2px; }
.cc-overview-toolbar-state > div > span { color: var(--cc-console-muted); font-size: 10px; }
.cc-overview-toolbar-state strong { overflow: hidden; color: inherit; font-size: 12px; line-height: 1.35; text-overflow: ellipsis; }
.cc-overview-toolbar-state.is-online { color: #18855d; }
.cc-overview-toolbar-state:not(.is-online) > i:first-child { background: #9ba5b2; }
.cc-overview-toolbar-state.is-sync { color: #1a8b61; background: #eef9f4; }
.cc-overview-toolbar-state.is-sync > i { width: auto; height: auto; color: #1da66f; background: none; font-size: 20px; font-style: normal; }
.cc-overview-toolbar-state.is-sync small { color: #6e897f; font-size: 10px; }
.cc-overview-toolbar-state.is-sync.is-error { color: #c32b42; background: #fff0f2; }
.cc-overview-toolbar-actions { display: grid; min-height: 42px; grid-template-columns: repeat(3, minmax(112px, 1fr)); align-items: stretch; gap: 8px; margin-left: 0; }
.cc-overview-display-toolbar button,
.cc-overview-display-toolbar a { min-height: 44px; padding-inline: 16px; font-size: 12px; }
.cc-overview-toolbar-actions > button,
.cc-overview-toolbar-actions > a { display: inline-flex; min-height: 42px; align-items: center; justify-content: center; text-align: center; }
.cc-overview-toolbar-actions > .is-preview { border-color: #263c58; color: #fff; background: #263c58; }
.cc-overview-toolbar-actions > .is-preview:hover { border-color: #1d3048; color: #fff; background: #1d3048; }
.cc-overview-toolbar-actions > .is-quiet { color: #667386; background: transparent; }

.cc-shell[data-active-page="overview"] .cc-console-config-switcher,
.cc-shell[data-active-page="overview"] #cc-console-theme,
.cc-shell[data-active-page="overview"] #cc-console-rounds,
.cc-shell[data-active-page="overview"] .cc-console-more,
.cc-shell[data-active-page="overview"] .cc-console-access-grid,
.cc-shell[data-active-page="overview"] #cc-tv-routing-dock,
.cc-overview-tournament-management {
  display: none !important;
}

body[data-cc-overview-drawer="tournaments"] .cc-overview-tournament-management,
body[data-cc-overview-drawer="tv"] #cc-tv-routing-dock,
body[data-cc-overview-drawer="display"] #cc-console-theme,
body[data-cc-overview-drawer="rules"] #cc-console-rounds,
body[data-cc-overview-drawer="devices"] #devices {
  position: fixed;
  z-index: 52;
  top: 0;
  right: 0;
  bottom: 0;
  left: auto;
  display: block !important;
  width: min(760px, 88vw);
  max-height: none;
  margin: 0;
  padding: 24px;
  overflow: auto;
  border: 0;
  border-radius: 0;
  color: #172033;
  background: #fff;
  box-shadow: -20px 0 60px rgba(23, 32, 51, .16);
}

.cc-overview-drawer-backdrop {
  position: fixed;
  z-index: 51;
  inset: 0;
  border: 0;
  background: rgba(23, 32, 51, .28);
  cursor: default;
}
.cc-overview-drawer-backdrop[hidden] { display: none; }
.cc-overview-drawer-close { display: grid !important; width: 38px; min-width: 38px !important; height: 38px; min-height: 38px !important; padding: 0 !important; place-items: center; border: 1px solid #dfe4ea !important; border-radius: 10px !important; color: #5f6c7d !important; background: #fff !important; font-size: 20px !important; cursor: pointer; }
.cc-overview-drawer-heading-actions { display: flex; align-items: center; gap: 9px; }
body[data-cc-overview-drawer] { overflow: hidden; }
body[data-cc-overview-drawer] .cc-tournament-switcher-heading { align-items: flex-start; }
body[data-cc-overview-drawer="tournaments"] #cc-tournament-create-form { display: flex; gap: 8px; margin: 18px 0; }
body[data-cc-overview-drawer="tournaments"] #cc-tournament-create-form input { min-width: 0; flex: 1; }
body[data-cc-overview-drawer="tournaments"] .cc-tournament-list { grid-template-columns: 1fr; }

@media (max-width: 1500px) {
  .cc-overview-event-bar { grid-template-columns: auto minmax(190px, 1fr) auto auto auto auto; gap: 10px; }
  .cc-overview-event-actions { grid-column: auto; }
  .cc-overview-timer-actions { grid-template-columns: minmax(106px, 1.25fr) repeat(5, minmax(62px, 1fr)); }
  .cc-overview-timer-actions > button,
  .cc-overview-more > summary { padding-inline: 7px; font-size: 10px; }
  .cc-overview-display-toolbar { gap: 12px; }
  .cc-overview-event-metric { min-width: 86px; padding-inline: 8px; }
  .cc-overview-event-metric.is-level { min-width: 132px; }
  .cc-overview-stack-totals { grid-template-columns: repeat(2, minmax(100px, 1fr)); }
  .cc-overview-stack-totals > span { min-width: 100px; padding-left: 39px; }
  .cc-overview-stack-totals > span::before { left: 9px; }
  .cc-overview-display-content { grid-template-columns: minmax(390px, .88fr) minmax(520px, 1.12fr); }
}

@media (max-width: 1280px) {
  .cc-shell[data-active-page="overview"] .cc-coupon-admin-pill { display: none; }
  .cc-shell[data-active-page="overview"] .cc-content { padding-inline: 16px; }
  .cc-overview-event-bar { grid-template-columns: auto minmax(180px, 1fr) auto auto auto; }
  .cc-overview-event-metric.is-level { display: none; }
  .cc-overview-main-grid { grid-template-columns: minmax(0, 55fr) minmax(0, 45fr); gap: 12px; }
  .cc-shell[data-active-page="overview"] .cc-overview-main-grid > .cc-panel { padding: 14px; }
  .cc-current-blinds strong { font-size: 24px; }
  .cc-next-round-strip > div i { display: none; }
  .cc-overview-player-actions { grid-template-columns: repeat(2, 1fr); }
  .cc-overview-stack-totals strong { font-size: 19px; }
  .cc-overview-people-now span { min-width: 70px; }
  .cc-overview-display-toolbar { padding: 16px; }
  .cc-overview-display-content { grid-template-columns: minmax(360px, .86fr) minmax(500px, 1.14fr); gap: 12px; }
}

@media (max-width: 1080px) {
  .cc-overview-main-grid { grid-template-columns: 1fr; }
  .cc-overview-event-bar { grid-template-columns: auto minmax(180px, 1fr) auto auto; }
  .cc-overview-event-metric:nth-of-type(3) { display: none; }
  .cc-overview-event-actions { grid-column: 1 / -1; justify-content: stretch; }
  .cc-overview-event-actions button { flex: 1; }
  .cc-overview-timer-actions { grid-template-columns: repeat(3, 1fr); }
  .cc-overview-display-content { grid-template-columns: 1fr; }
  .cc-overview-display-workspace { min-height: 112px; }
  .cc-overview-display-statuses { grid-template-columns: repeat(2, 1fr); }
  .cc-overview-toolbar-actions { width: 100%; }
}

@media (max-width: 760px) {
  .cc-overview-event-bar { grid-template-columns: 1fr 1fr; }
  .cc-overview-event-label { grid-column: 1 / -1; }
  .cc-overview-tournament-select { grid-column: 1 / -1; }
  .cc-overview-timer-actions { grid-template-columns: repeat(2, 1fr); }
  .cc-next-round-strip { grid-template-columns: auto 1fr; }
  .cc-next-round-strip > div,
  .cc-next-round-strip > small { grid-column: 1 / -1; justify-self: stretch; }
  .cc-next-round-strip > small { justify-items: start; }
  .cc-overview-adjust-heading { align-items: flex-start; flex-direction: column; }
  .cc-overview-stack-totals { width: 100%; }
  .cc-overview-buyin-row { grid-template-columns: 1fr; align-items: stretch; }
  .cc-stack-adjustment { width: 100%; }
  .cc-overview-display-heading { align-items: flex-start; flex-direction: column; gap: 5px; }
  .cc-overview-template-summary { grid-template-columns: 112px 1fr; }
  .cc-overview-theme-preview { width: 112px; }
  .cc-overview-template-summary > button { grid-column: 2; justify-self: start; }
  .cc-overview-display-statuses { grid-template-columns: 1fr; }
  .cc-overview-toolbar-actions { grid-template-columns: 1fr; }
  .cc-toolbar-separator { display: none; }
  body[data-cc-overview-drawer] :is(.cc-overview-tournament-management, #cc-tv-routing-dock, #cc-console-theme, #cc-console-rounds, #devices) { width: 100vw; padding: 18px; }
}

/* Phase 3: legacy feature-equivalence surfaces, isolated to the command center. */
.cc-stat-controls {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 13px;
}

.cc-stat-controls > div {
  display: flex;
  align-items: center;
  gap: 7px;
  padding: 8px;
  border: 1px solid var(--cc-line);
  border-radius: 10px;
  background: rgba(255, 255, 255, 0.018);
}

.cc-stat-controls span,
.cc-inline-note,
.cc-subheading span,
.cc-settings-actions span,
.cc-display-access span {
  color: var(--cc-muted);
  font-size: 9px;
  line-height: 1.6;
}

.cc-stat-controls button,
.cc-level-jump button,
.cc-template-actions button,
.cc-subheading button,
.cc-inline-form button,
.cc-display-access button,
.cc-device-actions button,
.cc-panel-heading button,
.cc-performance-controls button,
.cc-dealer-item button,
.cc-template-editor-actions button {
  min-height: 34px;
  padding: 0 11px;
  border: 1px solid var(--cc-line-strong);
  border-radius: 8px;
  color: var(--cc-text);
  background: rgba(255, 255, 255, 0.035);
  cursor: pointer;
  font: inherit;
  font-size: 9px;
}

.cc-stat-controls button:disabled,
.cc-level-jump button:disabled,
.cc-performance-controls button:disabled {
  cursor: not-allowed;
  opacity: .42;
}

.cc-round-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.45fr) minmax(340px, .8fr);
  gap: 18px;
}

.cc-subheading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-height: 35px;
  margin-bottom: 10px;
}

.cc-subheading strong {
  font-size: 11px;
}

.cc-level-table-wrap {
  max-height: 480px;
  overflow: auto;
  border: 1px solid var(--cc-line);
  border-radius: 11px;
}

.cc-level-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 9px;
}

.cc-level-table th,
.cc-level-table td {
  padding: 10px 11px;
  border-bottom: 1px solid var(--cc-line);
  text-align: left;
}

.cc-level-table th {
  position: sticky;
  z-index: 1;
  top: 0;
  color: var(--cc-muted);
  background: #111419;
}

.cc-level-table tr.is-current {
  background: rgba(250, 43, 62, .07);
}

.cc-level-table td:first-child strong,
.cc-level-table td:first-child small {
  display: block;
}

.cc-level-table td:first-child small {
  margin-top: 3px;
  color: var(--cc-red);
  font-size: 7px;
}

.cc-level-type {
  display: inline-block;
  padding: 4px 6px;
  border-radius: 999px;
  color: #bbbfc7;
  background: rgba(255, 255, 255, .05);
}

.cc-level-type.is-break {
  color: var(--cc-amber);
  background: rgba(246, 185, 75, .08);
}

.cc-level-jump,
.cc-inline-form,
.cc-display-access,
.cc-template-editor-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 10px;
}

.cc-level-jump select,
.cc-inline-form input,
.cc-settings-form input,
.cc-settings-form select,
.cc-device-item input,
.cc-template-modal input,
.cc-template-modal select {
  min-width: 0;
  height: 38px;
  padding: 0 10px;
  border: 1px solid var(--cc-line-strong);
  border-radius: 8px;
  color: var(--cc-text);
  background: #0c0f13;
  outline: none;
  font: inherit;
  font-size: 10px;
}

.cc-level-jump select,
.cc-inline-form input {
  flex: 1 1 230px;
}

.cc-round-layout .cc-template-list {
  grid-template-columns: 1fr;
  max-height: 528px;
  overflow: auto;
  padding-right: 3px;
}

.cc-template-item {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
}

.cc-template-item.is-current {
  border-color: rgba(66, 215, 151, .28);
  background: rgba(66, 215, 151, .035);
}

.cc-template-item > small {
  position: static;
  justify-self: end;
}

.cc-template-actions {
  display: flex;
  flex-wrap: wrap;
  grid-column: 1 / -1;
  gap: 6px;
}

.cc-template-actions button:first-child {
  border-color: rgba(250, 43, 62, .3);
  background: rgba(250, 43, 62, .08);
}

.cc-settings-form {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.cc-settings-form label {
  display: grid;
  gap: 6px;
}

.cc-settings-form label > span {
  color: var(--cc-muted-2);
  font-size: 9px;
}

.cc-settings-wide,
.cc-settings-actions {
  grid-column: span 2;
}

.cc-setting-toggle {
  display: flex !important;
  align-items: center;
  align-self: end;
  min-height: 38px;
  grid-template-columns: auto 1fr;
  padding: 0 10px;
  border: 1px solid var(--cc-line);
  border-radius: 8px;
}

.cc-setting-toggle input {
  width: 15px;
  height: 15px;
}

.cc-settings-actions {
  display: flex;
  align-items: center;
  gap: 11px;
}

.cc-settings-actions .cc-primary-button {
  min-width: 120px;
  height: 39px;
  margin: 0;
}

.cc-performance-controls {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  margin-top: 16px;
  padding-top: 14px;
  border-top: 1px solid var(--cc-line);
}

.cc-performance-controls[hidden] {
  display: none;
}

.cc-performance-controls > div {
  display: grid;
  min-width: 240px;
  flex: 1;
  gap: 4px;
}

.cc-performance-controls span {
  color: var(--cc-muted);
  font-size: 9px;
}

.cc-display-access {
  align-items: center;
  margin-bottom: 12px;
}

.cc-display-access a,
.cc-device-actions a,
.cc-dealer-item a {
  display: inline-grid;
  min-height: 34px;
  place-items: center;
  padding: 0 11px;
  border: 1px solid rgba(250, 43, 62, .25);
  border-radius: 8px;
  color: #fff;
  background: rgba(250, 43, 62, .07);
  font-size: 9px;
}

.cc-device-item {
  align-items: start;
}

.cc-device-item label {
  display: grid;
  gap: 5px;
}

.cc-device-item label span {
  color: var(--cc-muted);
  font-size: 8px;
}

.cc-device-item input {
  width: 100%;
}

.cc-device-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 8px;
}

.cc-dealer-list,
.cc-match-list {
  display: grid;
  gap: 8px;
}

.cc-dealer-item,
.cc-match-item {
  display: grid;
  gap: 8px;
  padding: 12px;
  border: 1px solid var(--cc-line);
  border-radius: 10px;
  background: rgba(255, 255, 255, .018);
}

.cc-dealer-item.is-active {
  border-color: rgba(66, 215, 151, .2);
}

.cc-dealer-item > div,
.cc-match-item > div {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}

.cc-dealer-item b {
  color: var(--cc-amber);
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  font-size: 24px;
  letter-spacing: .12em;
}

.cc-dealer-item p,
.cc-match-item p {
  margin: 0;
  color: var(--cc-muted);
  font-size: 9px;
}

.cc-match-list {
  max-height: 420px;
  overflow: auto;
}

.cc-risk-design > div:last-of-type {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}

.cc-risk-design button {
  min-height: 44px;
  border: 1px dashed rgba(246, 185, 75, .22);
  border-radius: 9px;
  color: #6d7078;
  background: rgba(246, 185, 75, .025);
}

.cc-risk-design > p {
  margin: 11px 0 0;
  color: var(--cc-muted);
  font-size: 9px;
}

.cc-undo-bar { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-top: 14px; padding: 13px 15px; border: 1px solid var(--cc-line); border-radius: 12px; background: rgba(255,255,255,.018); }
.cc-undo-bar div { display: grid; gap: 5px; }
.cc-undo-bar span { color: var(--cc-muted); font-size: 9px; }
.cc-undo-bar strong { font-size: 11px; }
.cc-undo-bar button { min-height: 36px; border: 1px solid var(--cc-line-strong); border-radius: 8px; background: transparent; color: var(--cc-text); padding: 0 14px; }
.cc-undo-bar button:disabled { opacity: .38; }

.cc-advanced-settings { margin-top: 20px; border-top: 1px solid var(--cc-line); padding-top: 18px; }
.cc-advanced-settings summary { cursor: pointer; color: var(--cc-text); font-size: 12px; font-weight: 750; }
.cc-advanced-form { margin-top: 18px; }
.cc-chip-editor, .cc-logo-editor { padding: 16px; border: 1px solid var(--cc-line); border-radius: 12px; background: rgba(255,255,255,.015); }
.cc-chip-editor .cc-subheading { margin-bottom: 12px; }
.cc-chip-row { display: grid; grid-template-columns: 28px 54px minmax(0,1fr) auto; align-items: center; gap: 9px; margin-top: 8px; padding: 10px 0 2px; border-top: 1px solid rgba(255,255,255,.055); }
.cc-chip-index { grid-column: 1; grid-row: 1; color: var(--cc-muted); font-size: 9px; }
.cc-chip-image-preview { display: grid; width: 50px; aspect-ratio: 1; grid-column: 2; grid-row: 1; place-items: center; overflow: hidden; border: 3px dashed rgba(255,255,255,.66); border-radius: 50%; background: #e7e2d9; color: #302923; box-shadow: inset 0 0 0 3px rgba(0,0,0,.28), 0 4px 10px rgba(0,0,0,.24); }
.cc-chip-image-preview[data-tone="pink"] { background: #d85a9f; }
.cc-chip-image-preview[data-tone="red"] { background: #d52b2f; }
.cc-chip-image-preview[data-tone="orange"], .cc-chip-image-preview[data-tone="yellow"] { background: #d99a20; }
.cc-chip-image-preview[data-tone="black"], .cc-chip-image-preview[data-tone="gray"] { background: #25262a; color: #fff; }
.cc-chip-image-preview[data-tone="blue"] { background: #1878cf; color: #fff; }
.cc-chip-image-preview[data-tone="green"] { background: #21845e; color: #fff; }
.cc-chip-image-preview[data-tone="purple"] { background: #7951a6; color: #fff; }
.cc-chip-image-preview[data-tone="brown"] { background: #815137; color: #fff; }
.cc-chip-image-preview img { width: 100%; height: 100%; object-fit: cover; object-position: center; border-radius: 50%; background: rgba(0,0,0,.16); }
.cc-chip-image-preview i { font-style: normal; font-size: 18px; }
.cc-chip-fields { display: grid; min-width: 0; grid-column: 3; grid-row: 1; grid-template-columns: minmax(90px,.7fr) minmax(110px,1fr) minmax(100px,.8fr); gap: 8px; }
.cc-chip-fields label { display: grid; min-width: 0; gap: 5px; }
.cc-chip-fields small { color: var(--cc-muted); font-size: 8px; }
.cc-chip-row input, .cc-chip-row select { min-width: 0; }
.cc-chip-row button, .cc-chip-image-picker, #cc-add-chip, #cc-upload-logo { min-height: 36px; border: 1px solid var(--cc-line-strong); border-radius: 8px; background: transparent; color: var(--cc-text); padding: 0 12px; }
.cc-chip-image-actions { display: flex; min-width: 0; grid-column: 3 / 5; grid-row: 2; align-items: center; gap: 8px; }
.cc-chip-image-actions small { overflow: hidden; color: var(--cc-muted); font-size: 8px; text-overflow: ellipsis; white-space: nowrap; }
.cc-chip-image-picker { display: inline-flex; align-items: center; justify-content: center; cursor: pointer; font-size: 9px; white-space: nowrap; }
.cc-chip-image-picker[aria-busy="true"] { opacity: .55; pointer-events: none; }
.cc-chip-image-actions button:disabled { opacity: .38; }
.cc-chip-delete { grid-column: 4; grid-row: 1; }
.cc-logo-editor { display: grid; grid-template-columns: minmax(170px,1fr) 130px minmax(180px,1fr) auto; align-items: center; gap: 14px; }
.cc-logo-editor > div:first-child { display: grid; gap: 5px; }
.cc-logo-editor > div:first-child span { color: var(--cc-muted); font-size: 9px; }
.cc-logo-preview { display: flex; min-height: 72px; align-items: center; justify-content: center; gap: 8px; overflow: hidden; border: 1px dashed var(--cc-line-strong); border-radius: 10px; color: var(--cc-muted); font-size: 9px; }
.cc-logo-preview img { width: 64px; height: 52px; object-fit: contain; }
.cc-logo-editor input[type="file"] { min-width: 0; color: var(--cc-muted); font-size: 9px; }

.cc-lifecycle-grid { display: grid !important; grid-template-columns: repeat(3,minmax(0,1fr)) !important; gap: 10px; }
.cc-lifecycle-grid button { display: grid; min-height: 92px; align-content: center; gap: 7px; padding: 14px; text-align: left; }
.cc-lifecycle-grid button strong { font-size: 12px; }
.cc-lifecycle-grid button small { color: var(--cc-muted); font-size: 8px; line-height: 1.55; }
.cc-lifecycle-grid button:not(:disabled):nth-child(2), .cc-lifecycle-grid button:not(:disabled):nth-child(4), .cc-lifecycle-grid button:not(:disabled):nth-child(5) { border-color: rgba(232,48,61,.45); }

.cc-confirm-phrase { display: grid; gap: 8px; margin-top: 18px; }
.cc-confirm-phrase span { color: var(--cc-red-soft); font-size: 10px; font-weight: 700; }
.cc-confirm-phrase input { width: 100%; min-height: 44px; border: 1px solid rgba(232,48,61,.5); border-radius: 9px; background: rgba(0,0,0,.24); color: var(--cc-text); padding: 0 12px; }

.cc-template-modal {
  width: min(1040px, 96vw);
}

.cc-template-modal form,
.cc-template-modal label {
  display: grid;
  gap: 7px;
}

.cc-template-modal label > span {
  color: var(--cc-muted);
  font-size: 9px;
}

.cc-template-editor-list {
  display: grid;
  max-height: 55vh;
  gap: 7px;
  margin-top: 12px;
  overflow: auto;
}

.cc-template-editor-head {
  display: grid;
  grid-template-columns: 105px minmax(80px, 1fr) repeat(4, minmax(72px, .7fr)) 34px;
  gap: 6px;
  margin-top: 16px;
  padding: 9px 0 8px;
  border-top: 1px solid var(--cc-line);
  border-bottom: 1px solid var(--cc-line);
  color: var(--cc-muted-2);
  background: #eef1f3;
  font-size: 9px;
  font-weight: 700;
}

.cc-template-editor-head span {
  padding: 0 9px;
  white-space: nowrap;
}

.cc-template-editor-head span:last-child {
  padding: 0;
  text-align: center;
}

.cc-template-editor-head + .cc-template-editor-list {
  margin-top: 7px;
}

.cc-template-level-row {
  display: grid;
  grid-template-columns: 105px minmax(80px, 1fr) repeat(4, minmax(72px, .7fr)) 34px;
  gap: 6px;
}

.cc-template-level-row button {
  border: 1px solid rgba(250, 43, 62, .22);
  border-radius: 8px;
  color: var(--cc-red);
  background: rgba(250, 43, 62, .05);
}

@media (max-width: 1220px) {
  .cc-round-layout,
  .cc-settings-form {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .cc-round-layout > div:first-child {
    grid-column: 1 / -1;
  }

  .cc-risk-design > div:last-of-type {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .cc-logo-editor { grid-template-columns: repeat(2, minmax(0,1fr)); }
}

@media (max-width: 900px) {
  .cc-mobile-control-section {
    display: block;
    margin-top: 10px;
  }

  .cc-mobile-control-section .cc-device-summary {
    display: none;
  }

  .cc-mobile-control-section .cc-control-preview {
    padding: 16px;
  }

  .cc-control-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .cc-control-grid button {
    min-height: 78px;
    padding: 10px;
  }

  .cc-control-safety {
    max-width: 125px;
  }

  .cc-undo-bar { display: none; }
}

@media (max-width: 560px) {
  .cc-control-grid strong {
    font-size: 10px;
  }

  .cc-control-grid small {
    font-size: 7px;
  }

  .cc-template-level-row {
    grid-template-columns: 1fr 1fr;
  }

  .cc-template-editor-head {
    display: none;
  }

  .cc-chip-row { grid-template-columns: 24px 46px minmax(0,1fr); align-items: start; }
  .cc-chip-index { grid-column: 1; }
  .cc-chip-image-preview { width: 44px; grid-column: 2; }
  .cc-chip-fields { grid-column: 3; grid-template-columns: 1fr; }
  .cc-chip-image-actions { grid-column: 2 / 4; grid-row: 2; flex-wrap: wrap; }
  .cc-chip-delete { grid-column: 3; grid-row: 3; justify-self: end; }
  .cc-logo-editor { grid-template-columns: 1fr; }
}

/* Operations-first layout: keep the highest-frequency venue actions in the first viewport. */
.cc-live-workbench {
  display: grid;
  grid-template-columns: minmax(440px, .82fr) minmax(560px, 1.08fr);
  align-items: stretch;
  gap: 16px;
}

.cc-situation-grid {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: auto auto;
  gap: 14px;
}

.cc-situation-grid .cc-timer-card {
  min-height: 264px;
  padding: 21px 25px 22px;
}

.cc-situation-grid .cc-clock-wrap {
  min-height: 148px;
}

.cc-situation-grid .cc-clock {
  font-size: clamp(70px, 5.8vw, 102px);
}

.cc-blind-stack {
  display: grid;
  min-width: 0;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-template-rows: auto;
  gap: 14px;
}

.cc-blind-stack .cc-blind-card {
  min-height: 264px;
  padding: 19px;
}

.cc-blind-stack .cc-blind-values strong {
  font-size: clamp(24px, 2vw, 36px);
}

.cc-blind-stack .cc-ante-row {
  padding-top: 11px;
}

.cc-blind-stack .cc-next-summary {
  gap: 8px;
  padding-top: 10px;
}

.cc-blind-stack .cc-next-summary div {
  padding-bottom: 8px;
}

.cc-blind-stack .cc-next-summary strong {
  font-size: clamp(18px, 1.4vw, 24px);
}

.cc-blind-stack .cc-next-blind > p {
  min-height: 0;
  margin-top: 9px;
}

.cc-operations-panel {
  display: flex;
  min-width: 0;
  min-height: 542px;
  flex-direction: column;
  padding: 20px;
  border-color: rgba(250, 43, 62, .2);
  background:
    linear-gradient(150deg, rgba(26, 24, 28, .99), rgba(14, 16, 20, .99));
}

.cc-operations-heading {
  margin-bottom: 8px;
}

.cc-operations-panel .cc-panel-intro {
  min-height: 28px;
  margin: 0 0 12px;
}

.cc-primary-controls {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.cc-primary-controls button {
  min-height: 62px;
  border-color: rgba(250, 43, 62, .22);
  background: rgba(250, 43, 62, .045);
}

.cc-primary-controls button > span {
  color: #fff;
  background: linear-gradient(145deg, var(--cc-red), var(--cc-red-dark));
}

.cc-opening-stats-form {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr)) minmax(190px, 1.1fr);
  gap: 8px;
  margin-top: 10px;
  padding: 10px;
  border: 1px solid var(--cc-line);
  border-radius: 11px;
  background: rgba(255, 255, 255, .02);
}

.cc-opening-stats-heading {
  display: flex;
  grid-column: 1 / -1;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
}

.cc-opening-stats-heading strong {
  font-size: 10px;
}

.cc-opening-stats-heading span,
.cc-opening-stats-form label > span {
  color: var(--cc-muted-2);
  font-size: 8px;
}

.cc-opening-stats-form label {
  display: grid;
  gap: 5px;
}

.cc-opening-stats-form input {
  width: 100%;
  min-width: 0;
  height: 34px;
  padding: 0 9px;
  border: 1px solid var(--cc-line-strong);
  border-radius: 7px;
  color: var(--cc-text);
  background: #0c0f13;
  outline: none;
  font: inherit;
  font-size: 11px;
  font-variant-numeric: tabular-nums;
}

.cc-opening-stats-form input:focus {
  border-color: rgba(250, 43, 62, .55);
}

.cc-opening-stats-actions {
  display: grid;
  grid-template-columns: 1fr;
  align-items: end;
  gap: 6px;
}

.cc-opening-stats-actions button {
  min-height: 34px;
  padding: 0 8px;
  border: 1px solid var(--cc-line-strong);
  border-radius: 7px;
  color: var(--cc-text);
  background: rgba(255, 255, 255, .035);
  cursor: pointer;
  font: inherit;
  font-size: 8px;
}

.cc-opening-stats-actions button.is-primary:not(:disabled) {
  border-color: rgba(250, 43, 62, .36);
  color: var(--cc-red);
  background: rgba(250, 43, 62, .09);
}

.cc-opening-stats-form input:disabled,
.cc-opening-stats-actions button:disabled {
  cursor: not-allowed;
  opacity: .42;
}

.cc-quick-stats {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  margin: 11px 0;
}

.cc-quick-stat-card {
  display: grid;
  min-width: 0;
  gap: 8px;
  padding: 11px;
  border: 1px solid var(--cc-line);
  border-radius: 11px;
  background: rgba(255, 255, 255, .02);
}

.cc-quick-stat-card > div:first-child,
.cc-stack-summary {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 8px;
}

.cc-quick-stat-card span {
  color: var(--cc-muted-2);
  font-size: 9px;
}

.cc-quick-stat-card strong {
  overflow: hidden;
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  font-size: 25px;
  font-variant-numeric: tabular-nums;
  letter-spacing: -.05em;
  text-overflow: ellipsis;
}

.cc-quick-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 6px;
}

.cc-quick-actions button {
  min-height: 32px;
  padding: 0 7px;
  border: 1px solid var(--cc-line-strong);
  border-radius: 7px;
  color: var(--cc-text);
  background: rgba(255, 255, 255, .035);
  cursor: pointer;
  font: inherit;
  font-size: 8px;
}

.cc-quick-actions button.is-primary:not(:disabled) {
  border-color: rgba(250, 43, 62, .36);
  background: rgba(250, 43, 62, .09);
}

.cc-quick-actions button:disabled {
  cursor: not-allowed;
  opacity: .42;
}

.cc-stack-stat-card {
  grid-column: 1 / -1;
  grid-template-columns: minmax(100px, .75fr) minmax(96px, .65fr) minmax(140px, 1fr);
  align-items: end;
}

.cc-stack-summary {
  display: grid;
  gap: 2px;
}

.cc-stack-summary strong {
  font-size: 26px;
}

.cc-stack-summary small {
  color: var(--cc-muted);
  font-size: 8px;
}

.cc-stack-summary b {
  color: var(--cc-text);
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  font-weight: 700;
}

.cc-stack-adjustment {
  display: grid;
  gap: 5px;
}

.cc-stack-adjustment input {
  width: 100%;
  min-width: 0;
  height: 32px;
  padding: 0 8px;
  border: 1px solid var(--cc-line-strong);
  border-radius: 7px;
  color: var(--cc-text);
  background: #0c0f13;
  outline: none;
  font: inherit;
  font-size: 10px;
  font-variant-numeric: tabular-nums;
}

.cc-stack-adjustment input:focus {
  border-color: rgba(250, 43, 62, .55);
}

.cc-secondary-controls {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.cc-secondary-controls button {
  min-height: 58px;
}

.cc-operations-panel .cc-undo-bar {
  margin-top: auto;
  padding-top: 10px;
}

.cc-undo-bar .cc-reset-match-button:not(:disabled) {
  border-color: rgba(228, 35, 61, .38);
  color: var(--cc-red-dark);
  background: #fff1f3;
}

.cc-secondary-status {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

.cc-secondary-status article {
  display: flex;
  min-height: 64px;
  align-items: center;
  gap: 10px;
  padding: 12px 16px;
  border: 1px solid var(--cc-line);
  border-radius: 11px;
  background: rgba(255, 255, 255, .018);
}

.cc-secondary-status span,
.cc-secondary-status small {
  color: var(--cc-muted);
  font-size: 9px;
}

.cc-secondary-status strong {
  margin-left: auto;
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  font-size: 18px;
  font-variant-numeric: tabular-nums;
}

.cc-secondary-status small {
  max-width: 120px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cc-left-safety-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.cc-left-safety-actions button {
  display: grid;
  min-width: 0;
  min-height: 72px;
  align-content: center;
  justify-items: start;
  gap: 4px;
  padding: 12px 15px;
  border: 1px solid #cfd6dd;
  border-radius: 12px;
  color: #27303a;
  background: #fff;
  box-shadow: var(--cc-shadow);
  cursor: pointer;
  font: inherit;
  text-align: left;
}

.cc-left-safety-actions button:not(:disabled):hover,
.cc-left-safety-actions button:not(:disabled):focus-visible {
  border-color: #aeb8c2;
  background: #f7f8fa;
  transform: translateY(-1px);
}

.cc-left-safety-actions button:disabled {
  cursor: not-allowed;
  opacity: .48;
}

.cc-left-safety-actions span,
.cc-left-safety-actions small {
  max-width: 100%;
  overflow: hidden;
  color: #717c87;
  font-size: 10px;
  line-height: 1.35;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cc-left-safety-actions strong {
  font-size: 14px;
  line-height: 1.25;
}

.cc-left-safety-actions .cc-reset-match-button:not(:disabled) {
  border-color: rgba(216, 27, 51, .38);
  color: #bd1027;
  background: #fff5f6;
}

.cc-left-safety-actions .cc-reset-match-button:not(:disabled):hover,
.cc-left-safety-actions .cc-reset-match-button:not(:disabled):focus-visible {
  border-color: rgba(216, 27, 51, .58);
  background: #ffecee;
}

@media (max-width: 1540px) {
  .cc-live-workbench {
    grid-template-columns: minmax(430px, .82fr) minmax(540px, 1.08fr);
  }

  .cc-situation-grid {
    grid-template-columns: 1fr;
  }

  .cc-situation-grid .cc-timer-card {
    min-height: 252px;
  }

  .cc-situation-grid .cc-clock-wrap {
    min-height: 137px;
  }

  .cc-blind-stack .cc-blind-card {
    min-height: 252px;
  }

  .cc-operations-panel {
    min-height: 518px;
  }

  .cc-operations-panel {
    padding: 17px;
  }

  .cc-quick-stat-card {
    padding: 9px;
  }

  .cc-primary-controls button,
  .cc-secondary-controls button {
    min-height: 55px;
    padding: 9px;
  }
}

@media (max-width: 1180px) {
  .cc-live-workbench {
    grid-template-columns: 1fr;
  }

  .cc-operations-panel {
    min-height: 0;
  }

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

  .cc-stack-stat-card {
    grid-column: auto;
    grid-template-columns: 1fr;
  }

  .cc-opening-stats-form {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .cc-opening-stats-actions {
    grid-column: 1 / -1;
  }
}

@media (max-width: 900px) {
  .cc-live-workbench {
    grid-template-columns: 1fr;
  }

  .cc-situation-grid {
    display: contents;
  }

  .cc-operations-panel {
    order: 2;
  }

  .cc-blind-stack {
    order: 3;
  }

  .cc-situation-grid .cc-timer-card {
    min-height: 330px;
  }

  .cc-situation-grid .cc-clock-wrap {
    min-height: 220px;
  }

  .cc-blind-stack {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-template-rows: auto;
  }

  .cc-blind-stack .cc-blind-card {
    min-height: 230px;
  }

  .cc-operations-panel {
    padding: 16px;
  }

  .cc-quick-stats {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .cc-stack-stat-card {
    grid-column: 1 / -1;
    grid-template-columns: minmax(100px, .75fr) minmax(96px, .65fr) minmax(140px, 1fr);
  }
}

@media (max-width: 560px) {
  .cc-blind-stack,
  .cc-quick-stats {
    grid-template-columns: 1fr;
  }

  .cc-stack-stat-card {
    grid-column: auto;
    grid-template-columns: 1fr;
  }

  .cc-opening-stats-form {
    grid-template-columns: 1fr;
  }

  .cc-opening-stats-heading,
  .cc-opening-stats-actions {
    grid-column: 1;
  }

  .cc-opening-stats-heading {
    align-items: flex-start;
    flex-direction: column;
  }

  .cc-control-safety {
    max-width: 112px;
  }
}

/* Local visual refinement: hybrid light operations console.
   Keep the live timer and navigation dark; move information and frequent controls
   onto higher-contrast neutral surfaces for faster venue operation. */
:root {
  color-scheme: light;
  --cc-bg: #e8ebee;
  --cc-panel: #ffffff;
  --cc-panel-2: #f6f7f8;
  --cc-panel-3: #eef1f3;
  --cc-line: rgba(31, 41, 51, 0.12);
  --cc-line-strong: rgba(31, 41, 51, 0.2);
  --cc-text: #202831;
  --cc-muted: #6f7882;
  --cc-muted-2: #4f5964;
  --cc-red: #e4233d;
  --cc-red-dark: #b9182e;
  --cc-green: #148558;
  --cc-amber: #b66e08;
  --cc-danger: #cf3048;
  --cc-shadow: 0 12px 30px rgba(32, 42, 54, 0.07);
}

html {
  background: var(--cc-bg);
}

body {
  background:
    radial-gradient(circle at 66% -20%, rgba(228, 35, 61, 0.06), transparent 32%),
    linear-gradient(180deg, #f1f3f5 0%, var(--cc-bg) 48%, #e5e8eb 100%);
}

.cc-sidebar {
  border-color: #353c45;
  color: #f4f6f8;
  background: rgba(34, 40, 48, 0.985);
  box-shadow: 12px 0 34px rgba(22, 28, 36, 0.14);
}

.cc-brand {
  border-color: #373f48;
}

.cc-brand small,
.cc-sidebar-footer p {
  color: #89919b;
}

.cc-nav a {
  color: #c4c9cf;
}

.cc-nav a span {
  color: #7c848e;
}

.cc-nav a:hover,
.cc-nav a:focus-visible {
  border-color: #424b56;
  color: #ffffff;
  background: rgba(255, 255, 255, 0.055);
}

.cc-nav a.is-active {
  border-color: rgba(228, 35, 61, 0.48);
  color: #ffffff;
  background: linear-gradient(90deg, rgba(228, 35, 61, 0.3), rgba(228, 35, 61, 0.09));
}

.cc-sidebar-footer {
  border-color: #373f48;
}

.cc-sidebar-footer a {
  border-color: #454e59;
  color: #c3c8cf;
}

.cc-topbar {
  border-color: #d5d9de;
  background: rgba(249, 250, 251, 0.94);
  box-shadow: 0 6px 22px rgba(35, 44, 55, 0.05);
}

.cc-device-pill {
  border-color: #d4d9de;
  background: #ffffff;
  box-shadow: 0 4px 14px rgba(35, 44, 55, 0.04);
}

.cc-legacy-link:hover,
.cc-legacy-link:focus-visible {
  color: var(--cc-red-dark);
  background: #fff4f5;
}

.cc-content {
  gap: 20px;
}

.cc-timer-card,
.cc-blind-card,
.cc-panel,
.cc-stats-grid article,
.cc-secondary-status article {
  border-color: #d5d9de;
  background: #ffffff;
  box-shadow: var(--cc-shadow);
}

.cc-timer-card {
  border-color: #4a3b43;
  color: #f6f8fa;
  background:
    radial-gradient(circle at 88% 12%, rgba(228, 35, 61, 0.12), transparent 32%),
    linear-gradient(150deg, #2a3038, #20262e 76%);
  box-shadow: 0 15px 34px rgba(26, 33, 42, 0.2);
}

.cc-timer-card .cc-live-status,
.cc-timer-card .cc-level-position span,
.cc-timer-card .cc-clock-wrap p,
.cc-timer-card .cc-progress-label {
  color: #b9c0c8;
}

.cc-timer-card .cc-clock {
  color: #ffffff;
  text-shadow: 0 8px 32px rgba(0, 0, 0, 0.32);
}

.cc-timer-card .cc-clock-wrap small {
  color: #9099a3;
}

.cc-timer-card .cc-progress {
  background: #434b55;
}

.cc-blind-card {
  background: linear-gradient(150deg, #ffffff, #f7f8f9);
}

.cc-next-blind {
  border-top-color: #aeb5bd;
}

.cc-blind-values i {
  color: #aab0b7;
}

.cc-next-blind > p,
.cc-control-note,
.cc-device-caution,
.cc-readonly-note {
  color: #78818a !important;
}

.cc-operations-panel {
  border-color: #cdd3d9;
  background: #f8f9fa;
  box-shadow: 0 14px 34px rgba(32, 42, 54, 0.09);
}

.cc-control-safety {
  border-color: rgba(20, 133, 88, 0.24);
  color: var(--cc-green) !important;
  background: #ecf8f2;
}

.cc-control-grid button,
.cc-quick-stat-card,
.cc-quick-actions button,
.cc-stat-controls > div,
.cc-template-item,
.cc-dealer-item,
.cc-match-item,
.cc-undo-bar,
.cc-chip-editor,
.cc-logo-editor {
  border-color: #d4d9de;
  color: var(--cc-text);
  background: #ffffff;
}

.cc-control-grid button {
  color: #87909a;
}

.cc-control-grid button > span {
  color: #8a939d;
  background: #edf0f2;
}

.cc-control-grid small {
  color: #7d8690;
}

.cc-control-grid button:not(:disabled) {
  border-color: #cbd1d7;
  color: var(--cc-text);
  background: #ffffff;
}

.cc-control-grid button:not(:disabled):hover,
.cc-control-grid button:not(:disabled):focus-visible {
  border-color: rgba(228, 35, 61, 0.5);
  background: #fff3f4;
  box-shadow: 0 5px 14px rgba(228, 35, 61, 0.08);
}

.cc-primary-controls button {
  border-color: rgba(228, 35, 61, 0.3);
  background: #fff4f5;
}

.cc-quick-actions button {
  border-color: #ccd2d8;
}

.cc-quick-actions button.is-primary:not(:disabled) {
  border-color: rgba(228, 35, 61, 0.38);
  color: var(--cc-red-dark);
  background: #fff1f3;
}

.cc-stack-adjustment input,
.cc-opening-stats-form input,
.cc-login-card input,
.cc-level-jump select,
.cc-inline-form input,
.cc-settings-form input,
.cc-settings-form select,
.cc-device-item input,
.cc-template-modal input,
.cc-template-modal select,
.cc-confirm-phrase input {
  border-color: #cbd1d7;
  color: var(--cc-text);
  background: #ffffff;
}

.cc-stack-adjustment input:focus,
.cc-opening-stats-form input:focus,
.cc-login-card input:focus,
.cc-level-jump select:focus,
.cc-inline-form input:focus,
.cc-settings-form input:focus,
.cc-settings-form select:focus {
  border-color: rgba(228, 35, 61, 0.62);
  box-shadow: 0 0 0 3px rgba(228, 35, 61, 0.08);
}

.cc-secondary-status article {
  background: #f8f9fa;
}

.cc-stats-grid article::after {
  border-color: rgba(31, 41, 51, 0.06);
}

.cc-stats-grid small {
  color: #8a929b;
}

.cc-level-table th {
  color: var(--cc-muted);
  background: #eef1f3;
}

.cc-level-type {
  color: #4f5964;
  background: #eef1f3;
}

.cc-display-access a,
.cc-device-actions a,
.cc-dealer-item a {
  color: var(--cc-red-dark);
  background: #fff2f3;
}

.cc-template-item.is-current,
.cc-dealer-item.is-active {
  background: #eef9f4;
}

.cc-action-feedback {
  border-color: #cfd5db;
  background: rgba(255, 255, 255, 0.97);
  box-shadow: 0 12px 28px rgba(32, 42, 54, 0.12);
}

.cc-feedback-icon {
  color: #5c6670;
  background: #edf0f2;
}

.cc-connection-banner {
  border-color: #e9c98e;
  color: #7b4a08;
  background: #fff8e9;
}

.cc-connection-banner p {
  color: #8f6c35;
}

.cc-login-card {
  color: var(--cc-text);
  border-color: #d1d6db;
  background: rgba(255, 255, 255, 0.98);
  box-shadow: 0 26px 70px rgba(32, 42, 54, 0.16);
}

.cc-confirm-modal {
  color: var(--cc-text);
  border-color: rgba(228, 35, 61, 0.28);
  background: #ffffff;
  box-shadow: 0 28px 80px rgba(32, 42, 54, 0.3);
}

.cc-confirm-details > div,
.cc-confirm-actions button {
  border-color: #d4d9de;
  color: var(--cc-text);
  background: #f7f8f9;
}

.cc-confirm-details > div.is-emphasis {
  background: #fff2f4;
}

@media (max-width: 900px) {
  .cc-main {
    background: var(--cc-bg);
  }

  .cc-topbar {
    background: rgba(249, 250, 251, 0.97);
  }
}

.cc-rounds-heading {
  align-items: center;
}

.cc-round-heading-actions {
  display: flex;
  align-items: center;
  gap: 12px;
}

.cc-round-primary-action {
  min-height: 40px;
  padding: 0 18px;
  border: 1px solid rgba(228, 35, 61, 0.55) !important;
  border-radius: 9px;
  color: #ffffff !important;
  background: linear-gradient(135deg, var(--cc-red), var(--cc-red-dark)) !important;
  box-shadow: 0 8px 18px rgba(228, 35, 61, 0.18);
  cursor: pointer;
  font-size: 11px !important;
  font-weight: 800;
}

.cc-round-primary-action:hover,
.cc-round-primary-action:focus-visible {
  box-shadow: 0 10px 22px rgba(228, 35, 61, 0.25);
  transform: translateY(-1px);
  outline: none;
}

.cc-round-action-guide {
  display: flex;
  min-height: 48px;
  align-items: center;
  gap: 14px;
  margin: -3px 0 18px;
  padding: 10px 12px;
  border: 1px solid #d7dce1;
  border-left: 3px solid var(--cc-red);
  border-radius: 9px;
  color: var(--cc-muted-2);
  background: #f7f8f9;
  font-size: 9px;
}

.cc-round-action-guide strong {
  color: var(--cc-text);
  font-size: 10px;
}

.cc-round-action-guide span {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  white-space: nowrap;
}

.cc-round-action-guide b {
  display: inline-grid;
  width: 20px;
  height: 20px;
  place-items: center;
  border-radius: 50%;
  color: #ffffff;
  background: var(--cc-red);
  font-size: 9px;
}

.cc-round-action-guide small {
  margin-left: auto;
  color: var(--cc-red-dark);
  font-size: 9px;
}

.cc-template-workflow-hint {
  margin: 10px 0 16px;
  padding: 10px 12px;
  border-left: 3px solid var(--cc-red);
  color: var(--cc-muted-2);
  background: #f5f7f8;
  font-size: 10px;
  line-height: 1.65;
}

.cc-template-actions button:first-child {
  border-color: rgba(228, 35, 61, 0.45);
  color: #ffffff;
  background: linear-gradient(135deg, var(--cc-red), var(--cc-red-dark));
}

.cc-active-template-status {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 4px 10px;
  margin: 12px 0;
  padding: 12px 13px;
  border: 1px solid #d5dbe0;
  border-radius: 10px;
  background: #f6f8f9;
}

.cc-active-template-status span {
  grid-row: 1 / 3;
  align-self: center;
  padding: 5px 8px;
  border-radius: 999px;
  color: var(--cc-muted-2);
  background: #e9edf0;
  font-size: 8px;
  font-weight: 700;
}

.cc-active-template-status strong {
  font-size: 12px;
}

.cc-active-template-status small {
  color: var(--cc-muted);
  font-size: 8px;
}

.cc-active-template-status[data-state="active"] {
  border-color: rgba(20, 133, 88, 0.28);
  background: #edf9f3;
}

.cc-active-template-status[data-state="active"] span {
  color: #ffffff;
  background: var(--cc-green);
}

.cc-template-item.is-matching {
  border-color: #cfd7dd;
  background: #f8fafb;
}

.cc-template-item.is-current > small {
  border-color: rgba(20, 133, 88, 0.3);
  color: var(--cc-green);
  background: #e6f7ef;
}

@media (max-width: 900px) {
  .cc-rounds-heading,
  .cc-round-heading-actions,
  .cc-round-action-guide {
    align-items: stretch;
    flex-direction: column;
  }

  .cc-round-action-guide {
    gap: 9px;
  }

  .cc-round-action-guide small {
    margin-left: 0;
  }
}

/* Template market: local RC, product catalog backed by the existing template store. */
.cc-market-panel {
  overflow: hidden;
  border: 1px solid #cfd5da;
  border-radius: 18px;
  color: var(--cc-text);
  background: #f6f7f8;
  box-shadow: 0 14px 36px rgba(32, 42, 54, 0.09);
  scroll-margin-top: 118px;
}

.cc-market-hero {
  position: relative;
  display: grid;
  min-height: 132px;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 24px;
  overflow: hidden;
  padding: 22px 28px;
  color: #f6f7fa;
  background:
    radial-gradient(circle at 78% 42%, rgba(228, 35, 61, .28), transparent 28%),
    linear-gradient(118deg, #151923 0%, #20242e 48%, #321921 100%);
}

.cc-market-hero::after {
  position: absolute;
  width: 250px;
  height: 250px;
  right: -60px;
  top: -150px;
  border: 1px solid rgba(255, 255, 255, .09);
  border-radius: 50%;
  box-shadow: 0 0 0 55px rgba(255, 255, 255, .025), 0 0 0 115px rgba(255, 255, 255, .018);
  content: "";
}

.cc-market-hero-copy {
  position: relative;
  z-index: 1;
  max-width: 720px;
}

.cc-market-hero-copy .cc-kicker {
  margin: 0 0 6px;
  color: #ff6072;
  font-size: 10px;
  font-weight: 850;
  letter-spacing: .2em;
}

.cc-market-hero-copy h2 {
  margin: 0;
  font-size: clamp(22px, 2vw, 30px);
  line-height: 1.15;
  letter-spacing: -.03em;
}

.cc-market-hero-copy > p:last-child {
  max-width: 640px;
  margin: 8px 0 0;
  color: #b9bec8;
  font-size: 10px;
  line-height: 1.5;
}

.cc-market-stats {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: repeat(3, minmax(92px, 108px));
  gap: 8px;
}

.cc-market-stats div {
  display: grid;
  gap: 2px;
  padding: 10px 12px;
  border: 1px solid rgba(255, 255, 255, .1);
  border-radius: 12px;
  background: rgba(255, 255, 255, .055);
  backdrop-filter: blur(8px);
}

.cc-market-stats strong {
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  font-size: 19px;
}

.cc-market-stats span {
  color: #aeb4bf;
  font-size: 9px;
}

.cc-market-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 18px 22px;
  border-bottom: 1px solid #d9dde1;
  background: #fff;
}

.cc-market-filters {
  display: flex;
  gap: 7px;
  flex-wrap: wrap;
}

.cc-market-filters button,
.cc-market-card-actions button,
.cc-market-modal-close {
  border: 1px solid #d3d8dd;
  color: #4f5964;
  background: #fff;
  cursor: pointer;
}

.cc-market-filters button {
  min-height: 36px;
  padding: 0 14px;
  border-radius: 9px;
  font-size: 10px;
  font-weight: 750;
}

.cc-market-filters button.is-active {
  border-color: #202831;
  color: #fff;
  background: #202831;
}

.cc-market-category-tabs {
  padding: 4px;
  border-radius: 12px;
  background: #f2f4f6;
}

.cc-market-category-tabs button {
  min-width: 104px;
  border-color: transparent;
  background: transparent;
}

.cc-market-category-tabs button.is-active {
  border-color: #e61f3c;
  background: #e61f3c;
  box-shadow: 0 5px 14px rgba(230, 31, 60, .16);
}

.cc-market-search {
  display: flex;
  width: min(320px, 100%);
  min-height: 38px;
  align-items: center;
  gap: 8px;
  padding: 0 12px;
  border: 1px solid #d3d8dd;
  border-radius: 9px;
  color: #87909a;
  background: #f8f9fa;
}

.cc-market-search input {
  min-width: 0;
  width: 100%;
  border: 0;
  outline: 0;
  color: var(--cc-text);
  background: transparent;
  font-size: 10px;
}

.cc-market-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
  padding: 22px;
}

.cc-market-card {
  min-width: 0;
  overflow: hidden;
  border: 1px solid #d2d7dc;
  border-radius: 15px;
  background: #fff;
  box-shadow: 0 8px 22px rgba(32, 42, 54, .07);
  transition: transform 160ms ease, box-shadow 160ms ease;
}

.cc-market-card:hover {
  box-shadow: 0 14px 32px rgba(32, 42, 54, .12);
  transform: translateY(-2px);
}

.cc-market-theme-card .cc-market-card-actions {
  margin-top: auto;
  padding-top: 2px;
}

.cc-market-voice-card {
  display: grid;
  min-height: 0;
  grid-template-columns: 42% minmax(0, 1fr);
  overflow: hidden;
  border-color: #dbe0e5;
  border-radius: 20px;
  box-shadow: 0 12px 30px rgba(25, 36, 49, .08);
}

.cc-market-voice-card .cc-market-card-body {
  display: flex;
  flex-direction: column;
  padding: 22px;
}

.cc-market-voice-card .cc-market-card-actions {
  margin-top: auto;
}

.cc-market-voice-portrait {
  position: relative;
  min-height: 390px;
  overflow: hidden;
  background: #dce9f8;
}

.cc-market-voice-portrait::after {
  position: absolute;
  inset: auto 0 0;
  height: 34%;
  background: linear-gradient(180deg, transparent, rgba(12, 20, 32, .24));
  content: "";
  pointer-events: none;
}

.cc-market-voice-portrait img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  transition: transform 260ms ease;
}

.cc-market-voice-card:hover .cc-market-voice-portrait img {
  transform: scale(1.025);
}

.cc-market-voice-license {
  position: absolute;
  z-index: 2;
  top: 16px;
  left: 16px;
  padding: 7px 11px;
  border: 1px solid rgba(255,255,255,.5);
  border-radius: 999px;
  color: #fff;
  background: rgba(13, 22, 36, .55);
  box-shadow: 0 8px 22px rgba(0,0,0,.12);
  backdrop-filter: blur(12px);
  font-size: 10px;
  font-weight: 800;
}

.cc-market-voice-license[data-access="premium"] {
  border-color: rgba(255, 222, 134, .66);
  color: #ffe8a9;
  background: rgba(72, 46, 10, .66);
}

.cc-market-voice-wave {
  position: absolute;
  z-index: 2;
  right: 16px;
  bottom: 16px;
  display: flex;
  height: 34px;
  align-items: center;
  gap: 4px;
  padding: 0 11px;
  border: 1px solid rgba(255,255,255,.42);
  border-radius: 999px;
  background: rgba(12, 20, 32, .48);
  backdrop-filter: blur(10px);
}

.cc-market-voice-wave i {
  width: 3px;
  height: 10px;
  border-radius: 999px;
  background: #fff;
}

.cc-market-voice-wave i:nth-child(2),
.cc-market-voice-wave i:nth-child(4) { height: 18px; }
.cc-market-voice-wave i:nth-child(3) { height: 25px; }

.cc-market-voice-card.is-previewing .cc-market-voice-wave i {
  animation: cc-voice-wave 680ms ease-in-out infinite alternate;
}

.cc-market-voice-card.is-previewing .cc-market-voice-wave i:nth-child(2) { animation-delay: 120ms; }
.cc-market-voice-card.is-previewing .cc-market-voice-wave i:nth-child(3) { animation-delay: 240ms; }
.cc-market-voice-card.is-previewing .cc-market-voice-wave i:nth-child(4) { animation-delay: 360ms; }
.cc-market-voice-card.is-previewing .cc-market-voice-wave i:nth-child(5) { animation-delay: 480ms; }

@keyframes cc-voice-wave {
  from { transform: scaleY(.45); }
  to { transform: scaleY(1.15); }
}

.cc-market-voice-card .cc-market-card-title span {
  color: #64748b;
  font-size: 10px;
  letter-spacing: 0;
}

.cc-market-voice-card .cc-market-card-title h3 {
  margin-top: 7px;
  font-size: 22px;
}

.cc-market-voice-card .cc-market-card-title em {
  font-size: 10px;
}

.cc-market-voice-card .cc-market-card-body > p {
  min-height: 0;
  margin: 14px 0 12px;
  font-size: 12px;
  line-height: 1.65;
}

.cc-market-voice-card blockquote {
  margin: 0 0 14px;
  padding: 11px 13px;
  border-left: 3px solid #dbe3ec;
  border-radius: 0 10px 10px 0;
  color: #5c6877;
  background: #f6f8fa;
  font-size: 11px;
  line-height: 1.6;
}

.cc-market-voice-preview-state {
  display: flex;
  min-height: 34px;
  align-items: center;
  gap: 8px;
  margin: 14px 0 10px;
  color: #788391;
  font-size: 10px;
}

.cc-market-voice-preview-state i {
  width: 7px;
  height: 7px;
  flex: 0 0 auto;
  border-radius: 50%;
  background: #b7c0ca;
}

.cc-market-voice-card.is-previewing .cc-market-voice-preview-state {
  color: #2467c9;
}

.cc-market-voice-card.is-previewing .cc-market-voice-preview-state i {
  background: #2f80ed;
  box-shadow: 0 0 0 5px rgba(47,128,237,.12);
}

.cc-market-voice-card.is-preview-error .cc-market-voice-preview-state {
  color: #b42336;
}

.cc-market-voice-card.is-preview-error .cc-market-voice-preview-state i {
  background: #d92d43;
}

.cc-market-voice-play {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
}

.cc-market-voice-play b {
  display: grid;
  width: 23px;
  height: 23px;
  place-items: center;
  border-radius: 50%;
  color: #fff;
  background: #253245;
  font-size: 8px;
  line-height: 1;
}

.cc-market-voice-play:disabled b {
  background: #7f8a97;
}

.cc-market-grid.is-voice-layout {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 20px;
}

.cc-market-voice-detail-preview {
  display: grid;
  min-height: 260px;
  grid-template-columns: minmax(180px, .72fr) minmax(0, 1.28fr);
  align-items: center;
  gap: 30px;
  overflow: hidden;
  margin: 22px 0;
  padding: 0 30px 0 0;
  border-radius: 16px;
  color: #fff;
  background: linear-gradient(135deg, #14223b, #852037);
}

.cc-market-voice-detail-preview img {
  width: 100%;
  height: 260px;
  object-fit: cover;
}

.cc-market-voice-detail-preview > div:last-child {
  display: grid;
  gap: 7px;
}

.cc-market-voice-detail-preview small { color: rgba(255,255,255,.62); font-size: 11px; font-weight: 800; }
.cc-market-voice-detail-preview strong { font-size: 20px; }
.cc-market-voice-detail-preview span { color: rgba(255,255,255,.76); font-size: 12px; line-height: 1.7; }
.cc-market-voice-detail-preview button {
  width: fit-content;
  margin-top: 7px;
  padding: 9px 16px;
  border: 1px solid rgba(255,255,255,.36);
  border-radius: 9px;
  color: #fff;
  background: rgba(255,255,255,.1);
  cursor: pointer;
}

@media (min-width: 1700px) {
  .cc-market-grid.is-voice-layout {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .cc-market-grid.is-voice-layout .cc-market-voice-card {
    grid-template-columns: 1fr;
  }

  .cc-market-grid.is-voice-layout .cc-market-voice-portrait {
    min-height: 280px;
    max-height: 280px;
  }
}

@media (max-width: 900px) {
  .cc-market-voice-card {
    grid-template-columns: 1fr;
  }

  .cc-market-voice-portrait {
    min-height: 260px;
    max-height: 320px;
  }

  .cc-market-voice-detail-preview {
    grid-template-columns: 1fr;
    padding: 0 20px 22px;
  }

  .cc-market-voice-detail-preview img {
    height: 240px;
  }
}

.cc-market-preview-shell {
  position: relative;
}

.cc-market-access-badge {
  position: absolute;
  z-index: 3;
  top: 12px;
  right: 12px;
  padding: 6px 9px;
  border: 1px solid rgba(255, 255, 255, .3);
  border-radius: 999px;
  color: #fff;
  background: rgba(17, 21, 28, .76);
  box-shadow: 0 5px 16px rgba(0, 0, 0, .2);
  backdrop-filter: blur(8px);
  font-size: 8px;
  font-weight: 800;
}

.cc-market-access-badge[data-access="premium"] {
  border-color: rgba(255, 211, 116, .55);
  color: #ffe5a3;
  background: rgba(76, 47, 8, .86);
}

.cc-market-cover {
  min-height: 188px;
  padding: 18px;
  color: #f7f8fa;
  background: linear-gradient(145deg, #151a22, #242a34);
}

.cc-market-cover.is-red { background: linear-gradient(145deg, #18181d, #4c1720); }
.cc-market-cover.is-blue { background: linear-gradient(145deg, #121a24, #0c4565); }
.cc-market-cover.is-gold { background: linear-gradient(145deg, #1a1814, #4a3c1d); }

.cc-market-theme-cover {
  position: relative;
  min-height: 188px;
  overflow: hidden;
  padding: 18px;
  color: #f7f8fa;
  background: linear-gradient(145deg, #17191f, #30251d);
}

.cc-market-theme-cover::before,
.cc-market-theme-cover::after {
  position: absolute;
  border-radius: 50%;
  pointer-events: none;
  content: "";
}

.cc-market-theme-cover::before {
  width: 210px;
  height: 210px;
  top: -125px;
  right: -45px;
  border: 1px solid rgba(255, 255, 255, .12);
  box-shadow: 0 0 0 34px rgba(255, 255, 255, .025), 0 0 0 70px rgba(255, 255, 255, .018);
}

.cc-market-theme-cover::after {
  width: 120px;
  height: 120px;
  left: -70px;
  bottom: -80px;
  background: rgba(255, 255, 255, .055);
  filter: blur(18px);
}

.cc-market-theme-cover.theme-tavern { background: linear-gradient(145deg, #151414, #4a2d1e 70%, #7f4b25); }
.cc-market-theme-cover.theme-championship { background: linear-gradient(145deg, #08111f, #0b3763 62%, #19719b); }
.cc-market-theme-cover.theme-gold { background: linear-gradient(145deg, #121212, #3b2b11 62%, #8b651e); }
.cc-market-theme-cover.theme-show-red { background: linear-gradient(145deg, #0e0d10, #4b0d18 60%, #a31529); }
.cc-market-theme-cover.theme-fire { background: linear-gradient(145deg, #100d0a, #3f1709 58%, #b54a10); }
.cc-market-theme-cover.theme-superdraw { background: linear-gradient(145deg, #090f17, #18294a 54%, #b03d7c); }
.cc-market-theme-cover.theme-custom { background: linear-gradient(145deg, #151021, #3f256a 58%, #8366be); }
.cc-market-theme-cover.theme-ak { background: linear-gradient(145deg, #07151d, #083f52 58%, #1594a6); }
.cc-market-theme-cover.theme-fullhouse { background: linear-gradient(145deg, #14100d, #52351f 58%, #a67d46); }

.cc-market-theme-stage {
  position: relative;
  z-index: 1;
  display: grid;
  min-height: 120px;
  place-content: center;
  gap: 6px;
  text-align: center;
}

.cc-market-theme-stage span {
  color: rgba(255, 255, 255, .66);
  font-size: 8px;
  font-weight: 800;
  letter-spacing: .12em;
}

.cc-market-theme-stage strong {
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  font-size: clamp(38px, 4.2vw, 58px);
  line-height: 1;
  letter-spacing: -.07em;
}

.cc-market-theme-stage b {
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  font-size: 13px;
  letter-spacing: -.03em;
}

/* 模板广场的大屏主题预览复刻现有投屏信息结构，仅压缩为卡片比例。 */
.cc-screen-preview {
  --screen-accent: #e9b65e;
  --screen-line: rgba(255, 255, 255, .13);
  position: relative;
  display: flex;
  width: 100%;
  aspect-ratio: 16 / 9;
  min-width: 0;
  min-height: 0;
  container-type: inline-size;
  flex-direction: column;
  justify-content: space-between;
  overflow: hidden;
  padding: clamp(12px, 2.6cqw, 20px);
  color: #f7f8fb;
  background: radial-gradient(circle at 82% 12%, rgba(220, 151, 68, .22), transparent 30%), linear-gradient(145deg, #141313, #39261d 72%, #6d4124);
  isolation: isolate;
}

.cc-screen-preview::before,
.cc-screen-preview::after {
  position: absolute;
  z-index: -1;
  pointer-events: none;
  content: "";
}

.cc-screen-preview::before {
  width: 45%;
  aspect-ratio: 1;
  top: -38%;
  right: -8%;
  border: 1px solid rgba(255, 255, 255, .09);
  border-radius: 50%;
  box-shadow: 0 0 0 4cqw rgba(255, 255, 255, .018), 0 0 0 8cqw rgba(255, 255, 255, .012);
}

.cc-screen-preview::after {
  inset: 0;
  opacity: .24;
  background-image: linear-gradient(rgba(255,255,255,.04) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px);
  background-size: 7cqw 7cqw;
  mask-image: linear-gradient(to bottom, rgba(0,0,0,.7), transparent 80%);
}

.cc-screen-preview.theme-championship { --screen-accent: #62c9ff; background: radial-gradient(circle at 50% 52%, rgba(21, 129, 192, .25), transparent 38%), linear-gradient(145deg, #07111e, #092d51 65%, #0b5c80); }
.cc-screen-preview.theme-neon { --screen-accent: #50f2ff; background: radial-gradient(circle at 68% 42%, rgba(180, 72, 255, .34), transparent 34%), linear-gradient(145deg, #04091b, #102a55 58%, #351057); }
.cc-screen-preview.theme-grand-noir { --screen-accent: #d9bd82; background: radial-gradient(circle at 50% 45%, rgba(217, 189, 130, .16), transparent 34%), linear-gradient(145deg, #080808, #171613 62%, #33291d); }
.cc-screen-preview.theme-anime-royale { --screen-accent: #ffb4de; background: linear-gradient(90deg, rgba(15, 9, 25, .64), rgba(15, 9, 25, .28)), url("/assets/templates/anime-royale-bg.png") center / cover; }
.cc-screen-preview.theme-crimson-crown { --screen-accent: #ffbeae; background: linear-gradient(rgba(28, 3, 7, .28), rgba(28, 3, 7, .5)), url("/assets/templates/crimson-crown-stage-bg.png") center / cover; }
.cc-screen-preview.theme-gold { --screen-accent: #e7c06a; background: radial-gradient(circle at 55% 55%, rgba(196, 143, 41, .18), transparent 38%), linear-gradient(145deg, #0d0d0e, #2b2314 65%, #72541b); }
.cc-screen-preview.theme-show-red { --screen-accent: #ff4157; background: radial-gradient(circle at 50% 42%, rgba(217, 21, 50, .27), transparent 42%), linear-gradient(145deg, #090a0d, #260810 62%, #750d22); }
.cc-screen-preview.theme-fire { --screen-accent: #f6a241; background: radial-gradient(circle at 50% 70%, rgba(244, 79, 17, .32), transparent 40%), linear-gradient(145deg, #0c0907, #371407 63%, #8e2c08); }
.cc-screen-preview.theme-superdraw { --screen-accent: #f35ca6; background: radial-gradient(circle at 50% 50%, rgba(33, 123, 211, .3), transparent 32%), linear-gradient(145deg, #07101a, #102844 55%, #6e1f59); }
.cc-screen-preview.theme-custom { --screen-accent: #b894ff; background: radial-gradient(circle at 50% 45%, rgba(135, 84, 212, .26), transparent 34%), linear-gradient(145deg, #0d0b13, #2d1a4a 64%, #6343a0); }
.cc-screen-preview.theme-ak { --screen-accent: #4ee7e8; background: radial-gradient(circle at 52% 45%, rgba(15, 162, 181, .25), transparent 34%), linear-gradient(145deg, #05131a, #083b4a 64%, #087c8c); }
.cc-screen-preview.theme-fullhouse { --screen-accent: #e7bb76; background: radial-gradient(circle at 52% 45%, rgba(174, 112, 50, .24), transparent 35%), linear-gradient(145deg, #100d0b, #3d291b 63%, #815f34); }
.cc-screen-preview.theme-aurora { --screen-accent: #6cecff; background: conic-gradient(from 220deg at 50% 46%, #080923, #153d5c, #6c2c75, #111331, #14526a); }
.cc-screen-preview.theme-jade { --screen-accent: #e4c574; background: radial-gradient(circle at 50% 48%, rgba(47,166,125,.3), transparent 36%), linear-gradient(145deg, #02110d, #07513d 62%, #02100c); font-family: "Songti SC", serif; }
.cc-screen-preview.theme-velvet { --screen-accent: #f0cb7e; background: radial-gradient(ellipse at 50% 0, rgba(255,222,151,.25), transparent 38%), linear-gradient(145deg, #1a030c, #650d2b 62%, #160208); }
.cc-screen-preview.theme-cyber { --screen-accent: #baff36; background: repeating-linear-gradient(0deg, rgba(186,255,54,.035) 0 1px, transparent 1px 5px), radial-gradient(circle at 50% 45%, rgba(0,200,255,.24), transparent 34%), linear-gradient(145deg, #01070d, #00283b 62%, #090b02); font-family: ui-monospace, SFMono-Regular, monospace; }
.cc-screen-preview.theme-lunar { --screen-accent: #e7edf8; background: radial-gradient(circle at 78% 18%, rgba(230,238,255,.22), transparent 10%), radial-gradient(circle at 50% 50%, rgba(113,139,183,.2), transparent 32%), linear-gradient(145deg, #02040a, #182338 64%, #020307); }
.cc-screen-preview.theme-aurora::after { opacity: .36; background: linear-gradient(110deg, transparent 36%, rgba(111,241,255,.17) 47%, rgba(216,104,255,.14) 54%, transparent 66%); animation: cc-market-prism 7s ease-in-out infinite; }
.cc-screen-preview.theme-jade::after { opacity: .18; background-image: linear-gradient(45deg, transparent 46%, rgba(228,197,116,.35) 47% 52%, transparent 53%), linear-gradient(-45deg, transparent 46%, rgba(228,197,116,.2) 47% 52%, transparent 53%); background-size: 8cqw 8cqw; mask-image: linear-gradient(to bottom, #000, transparent 82%); }
.cc-screen-preview.theme-cyber::before { border-radius: 8%; transform: rotate(45deg); }
.cc-screen-preview.theme-lunar::before { box-shadow: inset -3cqw 0 5cqw rgba(0,0,0,.6), 0 0 0 4cqw rgba(255,255,255,.018), 0 0 0 8cqw rgba(255,255,255,.012); }

.cc-screen-topline,
.cc-screen-stage-strip,
.cc-screen-metric-row {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 2cqw;
}

.cc-screen-topline {
  color: rgba(255, 255, 255, .65);
  font-size: clamp(7px, 1.35cqw, 11px);
  letter-spacing: .12em;
  text-transform: uppercase;
}

.cc-screen-topline strong {
  color: var(--screen-accent);
  font-size: inherit;
}

.cc-screen-event-title,
.cc-screen-classic-title {
  position: absolute;
  z-index: 1;
  top: clamp(28px, 7cqw, 52px);
  right: 10%;
  left: 10%;
  overflow: hidden;
  margin: 0;
  color: rgba(255,255,255,.92);
  font-size: clamp(10px, 2.4cqw, 20px);
  font-weight: 750;
  text-align: center;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cc-screen-classic-title {
  top: 15%;
  color: var(--screen-accent);
  font-family: Georgia, serif;
  letter-spacing: .08em;
}

.cc-screen-center {
  display: grid;
  min-width: 0;
  place-content: center;
  gap: .8cqw;
  text-align: center;
}

.cc-screen-center > em,
.cc-screen-center > span {
  color: rgba(255,255,255,.58);
  font-size: clamp(7px, 1.45cqw, 12px);
  font-style: normal;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.cc-screen-center > strong,
.cc-screen-superdraw-ring > strong {
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  font-size: clamp(31px, 9.8cqw, 78px);
  font-weight: 700;
  line-height: .92;
  letter-spacing: -.08em;
  white-space: nowrap;
}

.cc-screen-center > b,
.cc-screen-superdraw-ring > b {
  color: #fff;
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  font-size: clamp(10px, 2.8cqw, 22px);
  letter-spacing: -.03em;
}

.cc-screen-progress {
  display: block;
  width: 82%;
  height: clamp(2px, .55cqw, 4px);
  margin: .8cqw auto 0;
  overflow: hidden;
  border-radius: 999px;
  background: rgba(255,255,255,.12);
}

.cc-screen-progress b {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: var(--screen-accent);
}

.cc-screen-stat-stack,
.cc-screen-next,
.cc-screen-side-level {
  display: grid;
  min-width: 0;
  align-content: center;
  gap: 1.1cqw;
}

.cc-screen-stat-stack span,
.cc-screen-side-level span {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 1cqw;
  padding-bottom: .8cqw;
  border-bottom: 1px solid var(--screen-line);
  color: rgba(255,255,255,.56);
  font-size: clamp(7px, 1.4cqw, 11px);
}

.cc-screen-stat-stack b,
.cc-screen-side-level b {
  overflow: hidden;
  color: #fff;
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  font-size: clamp(9px, 2cqw, 16px);
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cc-screen-side-level > b {
  padding-bottom: 1cqw;
  border-bottom: 1px solid var(--screen-line);
}

.cc-screen-next {
  padding: 1.8cqw;
  border: 1px solid var(--screen-line);
  border-radius: 1.5cqw;
  background: rgba(0,0,0,.18);
}

.cc-screen-next span,
.cc-screen-next small {
  color: rgba(255,255,255,.54);
  font-size: clamp(7px, 1.25cqw, 10px);
}

.cc-screen-next strong {
  overflow: hidden;
  color: var(--screen-accent);
  font-size: clamp(9px, 1.85cqw, 15px);
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cc-screen-next b {
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  font-size: clamp(9px, 2.2cqw, 18px);
}

.cc-screen-stage-strip,
.cc-screen-metric-row {
  padding-top: 1.3cqw;
  border-top: 1px solid var(--screen-line);
  color: rgba(255,255,255,.56);
  font-size: clamp(7px, 1.25cqw, 10px);
}

.cc-screen-stage-strip b,
.cc-screen-stage-strip em,
.cc-screen-metric-row b {
  color: rgba(255,255,255,.88);
  font-style: normal;
}

.cc-screen-championship-grid,
.cc-screen-performance-grid,
.cc-screen-fire-grid,
.cc-screen-premium-grid,
.cc-screen-superdraw-grid,
.cc-screen-exclusive-grid,
.cc-screen-club-grid {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, .72fr) minmax(0, 1.5fr) minmax(0, .82fr);
  gap: 2.4cqw;
  align-items: center;
  flex: 1;
}

.cc-screen-premium-grid {
  padding-top: 4.2cqw;
  grid-template-columns: minmax(0, .72fr) minmax(0, 1.5fr) minmax(0, .82fr);
}

.cc-screen-premium-stats {
  display: grid;
  align-content: center;
  gap: 1.1cqw;
  padding: 1.8cqw;
  border: 1px solid var(--screen-line);
  border-radius: 1.4cqw;
  background: rgba(0,0,0,.18);
}

.cc-screen-premium-stats span {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 1cqw;
  padding-bottom: .8cqw;
  border-bottom: 1px solid var(--screen-line);
  color: rgba(255,255,255,.56);
  font-size: clamp(7px, 1.35cqw, 11px);
}

.cc-screen-premium-stats span:last-child { border-bottom: 0; }
.cc-screen-premium-stats b { overflow: hidden; color: #fff; font-family: ui-monospace, SFMono-Regular, monospace; font-size: clamp(9px, 1.9cqw, 16px); text-overflow: ellipsis; white-space: nowrap; }

@keyframes cc-market-prism {
  0%, 18% { transform: translateX(-42%); }
  72%, 100% { transform: translateX(42%); }
}

.cc-screen-performance-grid {
  padding-top: 4.4cqw;
  grid-template-columns: minmax(0, .75fr) minmax(0, 1.55fr) minmax(0, .82fr);
}

.cc-screen-fire-grid {
  padding-top: 3.5cqw;
  grid-template-columns: minmax(0, .88fr) minmax(0, 1.45fr) minmax(0, .88fr);
}

.cc-screen-fire-footer {
  position: relative;
  z-index: 1;
  overflow: hidden;
  padding-top: 1.2cqw;
  border-top: 1px solid rgba(246,162,65,.35);
  color: rgba(255,255,255,.6);
  font-size: clamp(7px, 1.2cqw, 10px);
  letter-spacing: .08em;
  text-align: center;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cc-screen-cinematic-grid {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 1.7fr) minmax(0, .72fr);
  gap: 4cqw;
  align-items: center;
  flex: 1;
  padding-top: 3.5cqw;
}

.cc-screen-metric-row span {
  display: grid;
  gap: .25cqw;
}

.cc-screen-metric-row b {
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  font-size: clamp(8px, 1.6cqw, 13px);
}

.cc-screen-superdraw-grid {
  grid-template-columns: minmax(0, .72fr) minmax(0, 1.35fr) minmax(0, .78fr);
}

.cc-screen-superdraw-ring {
  display: grid;
  width: 78%;
  aspect-ratio: 1.6;
  place-content: center;
  justify-self: center;
  border: clamp(2px, .45cqw, 4px) solid rgba(92,190,255,.55);
  border-radius: 50%;
  box-shadow: 0 0 3.5cqw rgba(39,153,238,.22), inset 0 0 3cqw rgba(39,153,238,.12);
  text-align: center;
}

.cc-screen-superdraw-ring em {
  color: var(--screen-accent);
  font-size: clamp(7px, 1.25cqw, 10px);
  font-style: normal;
}

.cc-screen-exclusive-grid {
  grid-template-columns: minmax(0, .68fr) minmax(0, 1.48fr) minmax(0, .76fr);
  margin: 3cqw 1cqw 1cqw;
  padding: 2.2cqw;
  border: 1px solid rgba(184,148,255,.38);
  border-radius: 1.6cqw;
  background: rgba(5,4,9,.22);
}

.cc-screen-club-grid {
  padding-top: 3.2cqw;
}

.cc-screen-blind-pair {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1cqw;
}

.cc-screen-blind-pair span {
  display: grid;
  padding: .6cqw 1cqw;
  border: 1px solid var(--screen-line);
  border-radius: 1cqw;
  color: rgba(255,255,255,.52);
  font-size: clamp(6px, 1.1cqw, 9px);
}

.cc-screen-blind-pair b {
  color: #fff;
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  font-size: clamp(9px, 2cqw, 16px);
}

.cc-screen-classic-main {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 1.8fr) minmax(0, .55fr);
  gap: 4cqw;
  align-items: center;
  flex: 1;
  padding-top: 4cqw;
}

.cc-screen-classic-chip {
  display: grid;
  gap: .7cqw;
  padding: 1.8cqw;
  border: 1px solid rgba(233,182,94,.35);
  border-radius: 50%;
  background: radial-gradient(circle, rgba(233,182,94,.18), rgba(0,0,0,.1));
  text-align: center;
}

.cc-screen-classic-chip span,
.cc-screen-classic-chip small {
  color: rgba(255,255,255,.55);
  font-size: clamp(6px, 1.1cqw, 9px);
}

.cc-screen-classic-chip strong {
  color: var(--screen-accent);
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  font-size: clamp(9px, 1.9cqw, 16px);
}

.cc-screen-preview.is-detail {
  min-height: 0;
  margin: 18px 0;
  border-radius: 12px;
  box-shadow: 0 18px 42px rgba(12, 20, 28, .18);
}

.cc-real-display-preview {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9;
  min-width: 0;
  overflow: hidden;
  background: #05070a;
  isolation: isolate;
}

.cc-real-display-preview > .cc-screen-preview,
.cc-real-display-preview > img,
.cc-real-display-preview > iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}

.cc-real-display-preview > .cc-screen-preview {
  z-index: 1;
}

.cc-real-display-preview > img {
  z-index: 2;
  display: block;
  object-fit: cover;
  background: #05070a;
}

.cc-real-display-preview > iframe {
  z-index: 2;
  width: 1920px;
  height: 1080px;
  max-width: none;
  border: 0;
  background: #05070a;
  pointer-events: none;
  transform: scale(var(--cc-display-preview-scale, .25));
  transform-origin: top left;
  opacity: 0;
  transition: opacity .18s ease;
}

.cc-real-display-preview.is-ready > iframe {
  opacity: 1;
}

.cc-real-display-preview.is-failed > iframe {
  visibility: hidden;
}

.cc-real-display-label {
  position: absolute;
  z-index: 3;
  right: 10px;
  bottom: 9px;
  padding: 4px 7px;
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 999px;
  background: rgba(4,8,14,.68);
  color: rgba(255,255,255,.72);
  font-size: 8px;
  letter-spacing: .08em;
  pointer-events: none;
}

.cc-real-display-preview.is-detail {
  margin: 18px 0;
  border-radius: 12px;
  box-shadow: 0 18px 42px rgba(12, 20, 28, .18);
}

.cc-theme-preview-unavailable {
  position: absolute;
  inset: 0;
  display: grid;
  place-content: center;
  gap: 8px;
  padding: 24px;
  text-align: center;
  color: rgba(255, 255, 255, .72);
  background:
    radial-gradient(circle at 50% 30%, rgba(226, 39, 64, .2), transparent 42%),
    linear-gradient(145deg, #171b24, #080a0f);
}

.cc-theme-preview-unavailable strong {
  color: #fff;
  font-size: 16px;
}

.cc-theme-preview-unavailable span {
  max-width: 300px;
  font-size: 11px;
  line-height: 1.7;
}

.cc-market-experience {
  margin: 18px 0;
  padding: 16px;
  border: 1px solid #cbd4df;
  border-radius: 14px;
  background: linear-gradient(145deg, #f7f9fc, #eef2f7);
}

.cc-market-experience-heading {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 12px;
}

.cc-market-experience-heading div {
  display: grid;
  gap: 3px;
}

.cc-market-experience-heading span {
  color: var(--cc-red);
  font-size: 8px;
  font-weight: 850;
  letter-spacing: .16em;
}

.cc-market-experience-heading strong {
  color: var(--cc-text);
  font-size: 15px;
}

.cc-market-experience-heading p {
  margin: 0;
  color: var(--cc-muted);
  font-size: 9px;
}

.cc-market-experience-actions {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

.cc-market-experience-actions button {
  display: flex;
  min-width: 0;
  min-height: 58px;
  align-items: center;
  gap: 10px;
  padding: 9px 10px;
  border: 1px solid #d4dae1;
  border-radius: 10px;
  color: #37414b;
  text-align: left;
  background: rgba(255, 255, 255, .9);
  cursor: pointer;
  transition: border-color 150ms ease, box-shadow 150ms ease, transform 150ms ease;
}

.cc-market-experience-actions button:hover,
.cc-market-experience-actions button.is-active {
  border-color: rgba(225, 31, 55, .55);
  box-shadow: 0 7px 18px rgba(34, 45, 58, .1);
  transform: translateY(-1px);
}

.cc-market-experience-actions button.is-champion {
  border-color: rgba(205, 159, 43, .48);
  background: linear-gradient(135deg, #fffdf7, #fff7dc);
}

.cc-market-experience-actions button > b {
  display: grid;
  flex: 0 0 32px;
  width: 32px;
  height: 32px;
  place-items: center;
  border-radius: 9px;
  color: #fff;
  background: linear-gradient(135deg, var(--cc-red), var(--cc-red-dark));
  font-size: 13px;
}

.cc-market-experience-actions button.is-champion > b {
  color: #3d2a00;
  background: linear-gradient(135deg, #f4d473, #d5a733);
}

.cc-market-experience-actions button span {
  display: grid;
  min-width: 0;
  gap: 2px;
}

.cc-market-experience-actions button strong {
  font-size: 10px;
}

.cc-market-experience-actions button small {
  overflow: hidden;
  color: var(--cc-muted);
  font-size: 8px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cc-market-experience-status {
  margin: 10px 0 0;
  color: #65707b;
  font-size: 9px;
}

@media (max-width: 720px) {
  .cc-market-experience-heading {
    align-items: start;
    flex-direction: column;
    gap: 5px;
  }

  .cc-market-experience-actions {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.cc-market-cover-top,
.cc-market-cover-bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  color: rgba(255, 255, 255, .65);
  font-size: 8px;
  letter-spacing: .12em;
}

.cc-market-cover-top strong {
  color: rgba(255, 255, 255, .8);
  font-size: 8px;
}

.cc-market-cover-main {
  display: grid;
  min-height: 120px;
  place-content: center;
  gap: 7px;
  text-align: center;
}

.cc-market-cover-main small,
.cc-market-cover-main span {
  color: rgba(255, 255, 255, .58);
  font-size: 9px;
}

.cc-market-cover-main strong {
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  font-size: clamp(30px, 3vw, 42px);
  letter-spacing: -.06em;
}

.cc-market-cover-main i {
  padding: 0 11px;
  color: rgba(255, 255, 255, .35);
  font-style: normal;
}

.cc-market-card-body {
  padding: 20px;
}

.cc-market-card-title {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
}

.cc-market-card-title span {
  color: var(--cc-red-dark);
  font-size: 8px;
  font-weight: 800;
  letter-spacing: .08em;
}

.cc-market-card-title h3 {
  margin: 5px 0 0;
  font-size: 17px;
  letter-spacing: -.02em;
}

.cc-market-card-title em {
  flex: 0 0 auto;
  padding: 5px 8px;
  border: 1px solid #d6dbe0;
  border-radius: 999px;
  color: #707983;
  background: #f5f7f8;
  font-size: 8px;
  font-style: normal;
}

.cc-market-card-title em[data-state="installed"] {
  border-color: rgba(20, 133, 88, .25);
  color: #147a53;
  background: #ebf8f2;
}

.cc-market-card-title em[data-state="current"] {
  border-color: rgba(20, 133, 88, .25);
  color: #147a53;
  background: #ebf8f2;
}

.cc-market-card-title em[data-state="locked"] {
  border-color: #d7dce0;
  color: #7e8790;
  background: #f1f3f4;
}

.cc-market-card-title em[data-state="premium-locked"] {
  border-color: #e5c570;
  color: #7a5600;
  background: #fff7dc;
}

.cc-market-card-title em[data-state="update"] {
  border-color: #e4c982;
  color: #805c00;
  background: #fff8df;
}

.cc-market-card-body > p {
  min-height: 40px;
  margin: 13px 0;
  color: var(--cc-muted);
  font-size: 10px;
  line-height: 1.7;
}

.cc-market-purchase-note {
  display: flex;
  min-height: 30px;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin: -3px 0 12px;
  padding: 7px 9px;
  border: 1px solid #ead99e;
  border-radius: 8px;
  color: #7a5908;
  background: #fff9e8;
  font-size: 8px;
}

.cc-market-purchase-note strong {
  font-size: 9px;
}

.cc-market-tags {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
}

.cc-market-tags span {
  padding: 5px 7px;
  border-radius: 6px;
  color: #65707a;
  background: #eef1f3;
  font-size: 8px;
}

.cc-market-card dl {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1px;
  overflow: hidden;
  margin: 16px 0;
  border: 1px solid #e0e3e6;
  border-radius: 9px;
  background: #e0e3e6;
}

.cc-market-card dl div {
  display: grid;
  gap: 4px;
  padding: 10px;
  background: #fafbfb;
}

.cc-market-card dt {
  color: var(--cc-muted);
  font-size: 8px;
}

.cc-market-card dd {
  margin: 0;
  font-size: 10px;
  font-weight: 750;
}

.cc-market-card-actions {
  display: grid;
  grid-template-columns: .8fr 1.2fr;
  gap: 8px;
}

.cc-market-card-actions button {
  min-height: 39px;
  border-radius: 9px;
  font-size: 10px;
  font-weight: 750;
}

.cc-market-card-actions button.is-primary {
  border-color: var(--cc-red);
  color: #fff;
  background: linear-gradient(135deg, var(--cc-red), var(--cc-red-dark));
}

.cc-market-card-actions button.is-upgrade,
.cc-market-modal-actions button.is-upgrade {
  border-color: #d4a83d;
  color: #2c2000;
  background: linear-gradient(135deg, #f2cf72, #d9a62e);
}

.cc-market-card-actions button:disabled {
  border-color: #d8dde1;
  color: #8b949d;
  background: #edf0f2;
  cursor: default;
}

.cc-market-empty {
  grid-column: 1 / -1;
  display: grid;
  place-items: center;
  gap: 6px;
  min-height: 180px;
  border: 1px dashed #cbd1d6;
  border-radius: 12px;
  color: var(--cc-muted);
  background: #fff;
  font-size: 10px;
}

.cc-market-empty strong {
  color: var(--cc-text);
  font-size: 14px;
}

.cc-market-boundary {
  margin: 0;
  padding: 0 22px 22px;
  color: var(--cc-muted);
  font-size: 9px;
  line-height: 1.6;
}

.cc-market-boundary strong {
  color: var(--cc-red-dark);
}

.cc-market-modal {
  position: relative;
  width: min(920px, 100%);
  max-height: calc(100vh - 48px);
  overflow: auto;
}

.cc-market-modal-close {
  position: absolute;
  top: 18px;
  right: 18px;
  display: grid;
  width: 34px;
  height: 34px;
  place-items: center;
  border-radius: 9px;
  font-size: 20px;
}

.cc-market-detail-summary {
  max-width: 700px;
}

.cc-market-detail-facts {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
  margin: 18px 0;
}

.cc-market-detail-facts div,
.cc-market-compatibility,
.cc-market-change-scope {
  display: grid;
  gap: 6px;
  padding: 13px;
  border: 1px solid #d7dce1;
  border-radius: 10px;
  background: #f7f8f9;
}

.cc-market-theme-detail-preview {
  min-height: 260px;
  margin: 18px 0;
  border-radius: 12px;
}

.cc-market-theme-detail-preview .cc-market-theme-stage {
  min-height: 190px;
}

.cc-market-highlights {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  margin-top: 18px;
}

.cc-market-highlights .cc-subheading {
  grid-column: 1 / -1;
}

.cc-market-highlights article {
  display: flex;
  align-items: center;
  gap: 9px;
  padding: 12px;
  border: 1px solid #d7dce1;
  border-radius: 9px;
  background: #f7f8f9;
}

.cc-market-highlights article span {
  display: grid;
  width: 23px;
  height: 23px;
  flex: 0 0 23px;
  place-items: center;
  border-radius: 50%;
  color: #fff;
  background: var(--cc-red);
  font-size: 8px;
  font-weight: 800;
}

.cc-market-highlights article strong {
  font-size: 10px;
}

.cc-market-detail-facts span,
.cc-market-compatibility span,
.cc-market-change-scope span {
  color: var(--cc-muted);
  font-size: 9px;
  line-height: 1.6;
}

.cc-market-detail-facts strong,
.cc-market-compatibility strong,
.cc-market-change-scope strong {
  font-size: 11px;
}

.cc-market-compatibility {
  margin-bottom: 8px;
  border-color: rgba(20, 133, 88, .24);
  background: #edf9f3;
}

.cc-market-change-scope {
  margin-bottom: 18px;
  border-color: rgba(228, 35, 61, .2);
  background: #fff4f5;
}

.cc-market-purchase-panel {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px 18px;
  margin: 0 0 8px;
  padding: 14px;
  border: 1px solid #e6c96f;
  border-radius: 10px;
  color: #5f4504;
  background: linear-gradient(135deg, #fffaf0, #fff3c9);
}

.cc-market-purchase-panel div {
  display: grid;
  gap: 4px;
}

.cc-market-purchase-panel strong {
  font-size: 12px;
}

.cc-market-purchase-panel span,
.cc-market-purchase-panel small {
  color: #806b38;
  font-size: 9px;
  line-height: 1.55;
}

.cc-market-purchase-panel.is-wechat-order {
  grid-template-columns: minmax(0, 1fr) 132px;
  align-items: stretch;
  border-color: rgba(19, 166, 89, .32);
  color: #143e28;
  background: linear-gradient(135deg, #f4fff8, #e7f9ee);
}

.cc-wechat-order-copy {
  align-content: center;
  gap: 7px !important;
}

.cc-wechat-order-copy > span {
  color: #14934f;
  font-size: 8px;
  font-weight: 900;
  letter-spacing: .16em;
}

.cc-wechat-order-copy > strong {
  color: #102c1d;
  font-size: 15px;
}

.cc-wechat-order-copy p {
  margin: 0;
  color: #426452;
  font-size: 10px;
}

.cc-wechat-order-copy p b {
  color: #0f8846;
  font-size: 15px;
}

.cc-wechat-order-copy button {
  justify-self: start;
  margin-top: 5px;
  padding: 9px 13px;
  border-color: #18a85b;
  color: #fff;
  background: #18a85b;
  font-size: 9px;
  font-weight: 800;
}

.cc-wechat-qr {
  display: grid;
  place-items: center;
  gap: 5px;
  padding: 8px;
  border: 1px solid rgba(19, 166, 89, .22);
  border-radius: 10px;
  background: #fff;
}

.cc-wechat-qr img {
  display: block;
  width: 104px;
  height: 104px;
}

.cc-wechat-qr span {
  color: #287248;
  font-size: 8px;
  font-weight: 800;
}

.cc-market-levels {
  margin-top: 16px;
}

.cc-market-levels .cc-level-table-wrap {
  max-height: 330px;
  overflow: auto;
}

.cc-market-modal-actions {
  position: sticky;
  bottom: -28px;
  margin: 20px -28px -28px;
  padding: 16px 28px 22px;
  border-top: 1px solid #d7dce1;
  background: rgba(255, 255, 255, .96);
  backdrop-filter: blur(10px);
}

@media (max-width: 1180px) {
  .cc-market-hero {
    grid-template-columns: minmax(0, 1fr) auto;
  }

  .cc-market-stats {
    max-width: 520px;
  }
}

@media (max-width: 900px) {
  .cc-market-panel {
    border-radius: 14px;
  }

  .cc-market-hero {
    min-height: auto;
    grid-template-columns: 1fr;
    padding: 20px;
  }

  .cc-market-toolbar {
    align-items: stretch;
    flex-direction: column;
  }

  .cc-market-search {
    width: 100%;
  }

  .cc-market-grid {
    grid-template-columns: 1fr;
    padding: 16px;
  }

  .cc-market-detail-facts {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .cc-market-highlights {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 560px) {
  .cc-market-stats {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 6px;
  }

  .cc-market-stats div {
    grid-template-columns: 1fr;
    padding: 8px;
  }

  .cc-market-hero-copy > p:last-child {
    display: none;
  }

  .cc-market-cover {
    min-height: 170px;
  }

  .cc-market-card dl,
  .cc-market-card-actions,
  .cc-market-detail-facts,
  .cc-market-purchase-panel {
    grid-template-columns: 1fr;
  }

  .cc-market-purchase-panel.is-wechat-order {
    grid-template-columns: 1fr;
  }

  .cc-wechat-qr {
    justify-self: start;
  }

  .cc-market-modal-actions {
    grid-template-columns: 1fr;
  }
}

/* Settings hub: separate configuration tasks instead of one long page. */
.cc-settings-navigation {
  display: grid;
  grid-template-columns: minmax(260px, .75fr) minmax(620px, 1.55fr);
  align-items: center;
  gap: 24px;
  padding: 20px 22px;
  border: 1px solid #cfd5da;
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 12px 30px rgba(32, 42, 54, .08);
}

.cc-settings-navigation-copy {
  display: grid;
  gap: 5px;
}

.cc-settings-navigation-copy .cc-kicker {
  margin: 0;
  color: var(--cc-red-dark);
  font-size: 8px;
  font-weight: 850;
  letter-spacing: .16em;
}

.cc-settings-navigation-copy h2 {
  margin: 0;
  color: var(--cc-text);
  font-size: 20px;
}

.cc-settings-navigation-copy > span {
  color: var(--cc-muted);
  font-size: 9px;
  line-height: 1.55;
}

.cc-settings-tabs {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 7px;
}

.cc-settings-tabs button {
  display: grid;
  min-height: 54px;
  place-content: center;
  gap: 4px;
  padding: 8px;
  border: 1px solid #d4d9de;
  border-radius: 10px;
  color: #5b6570;
  background: #f7f8f9;
  cursor: pointer;
  font: inherit;
  font-size: 9px;
  font-weight: 750;
}

.cc-settings-tabs button span {
  color: #a0a8b0;
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  font-size: 8px;
}

.cc-settings-tabs button.is-active {
  border-color: rgba(228, 35, 61, .45);
  color: var(--cc-red-dark);
  background: #fff1f3;
  box-shadow: inset 0 0 0 1px rgba(228, 35, 61, .08);
}

.cc-settings-tabs button.is-active span {
  color: var(--cc-red);
}

.cc-settings-section {
  scroll-margin-top: 120px;
}

.cc-settings-form label > small {
  color: var(--cc-muted);
  font-size: 8px;
  line-height: 1.45;
}

.cc-single-settings-form {
  grid-template-columns: 1fr;
}

.cc-single-settings-form .cc-settings-wide,
.cc-single-settings-form .cc-settings-actions {
  grid-column: 1;
}

.cc-link-button {
  min-height: 36px !important;
  padding: 0 14px !important;
  border-color: rgba(228, 35, 61, .28) !important;
  color: var(--cc-red-dark) !important;
  background: #fff2f3 !important;
}

.cc-theme-settings-layout {
  display: grid;
  grid-template-columns: minmax(420px, 1.05fr) minmax(390px, .95fr);
  gap: 20px;
}

.cc-theme-settings-preview,
.cc-theme-settings-editor {
  min-width: 0;
}

.cc-theme-settings-preview #cc-settings-theme-preview {
  overflow: hidden;
  border: 1px solid #d4d9de;
  border-radius: 12px;
  background: #080b10;
}

.cc-theme-settings-preview .cc-real-display-preview.is-detail {
  margin: 0;
  border-radius: 0;
  box-shadow: none;
}

.cc-theme-source-note {
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: start;
  gap: 9px;
  margin-top: 10px;
  padding: 10px 12px;
  border: 1px solid #cce4d8;
  border-radius: 9px;
  background: #eff9f4;
}

.cc-theme-source-note span {
  padding: 4px 6px;
  border-radius: 999px;
  color: #147a53;
  background: #dcf3e8;
  font-size: 8px;
  font-weight: 800;
}

.cc-theme-source-note p {
  margin: 2px 0 0;
  color: #567064;
  font-size: 8px;
  line-height: 1.55;
}

.cc-theme-field-profile {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 8px 22px;
  margin-top: 12px;
  padding: 12px 14px;
  border: 1px solid #e3e8ee;
  border-radius: 12px;
  background: #f6f8fb;
}

.cc-theme-field-profile > div {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 8px;
}

.cc-theme-field-profile strong {
  flex: 0 0 auto;
  color: #48525d;
  font-size: 12px;
  white-space: nowrap;
}

.cc-theme-field-profile p {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  margin: 0;
}

.cc-theme-field-profile p span {
  padding: 3px 8px;
  border-radius: 999px;
  color: #5f6974;
  background: #eceff1;
  font-size: 11px;
}

.cc-theme-field-profile > div:first-child p span {
  color: #147a53;
  background: #e5f5ed;
}

.cc-theme-field-profile > small {
  flex-basis: 100%;
  color: var(--cc-muted);
  font-size: 11px;
}

.cc-theme-advanced-form {
  grid-template-columns: minmax(0, 1fr);
  margin-top: 14px;
}

@media (max-width: 1220px) {
  .cc-settings-navigation {
    grid-template-columns: 1fr;
  }

  .cc-theme-settings-layout {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 760px) {
  .cc-settings-navigation {
    gap: 14px;
    padding: 16px;
    border-radius: 13px;
  }

  .cc-settings-tabs {
    display: flex;
    overflow-x: auto;
    padding-bottom: 3px;
  }

  .cc-settings-tabs button {
    min-width: 112px;
    flex: 0 0 auto;
  }

  .cc-theme-settings-layout {
    grid-template-columns: minmax(0, 1fr);
  }

  .cc-theme-field-profile {
    flex-direction: column;
    gap: 8px;
  }

  .cc-theme-source-note {
    grid-template-columns: 1fr;
  }

  .cc-theme-advanced-form {
    grid-template-columns: 1fr;
  }

  .cc-theme-advanced-form .cc-settings-wide,
  .cc-theme-advanced-form .cc-settings-actions {
    grid-column: 1;
  }
}

/* 赛事控制台收口：高频控制固定展示，配置内容一次只显示一类。 */
.cc-console-config-switcher {
  display: flex;
  align-items: center;
  gap: 18px;
  padding: 14px 16px;
  border: 1px solid #d8dde2;
  border-radius: 13px;
  background: rgba(255, 255, 255, 0.92);
  box-shadow: 0 10px 28px rgba(32, 42, 54, 0.06);
}

.cc-console-config-switcher > div {
  min-width: 190px;
  margin-right: auto;
}

.cc-console-config-switcher p {
  margin: 0 0 4px;
  color: var(--cc-accent);
  font-size: 8px;
  font-weight: 900;
  letter-spacing: .12em;
}

.cc-console-config-switcher h2 {
  margin: 0;
  color: #202731;
  font-size: 17px;
}

.cc-console-config-switcher nav {
  display: grid;
  grid-template-columns: repeat(3, minmax(132px, 1fr));
  gap: 8px;
}

.cc-console-config-switcher button {
  min-height: 40px;
  padding: 0 16px;
  border: 1px solid #d9dee3;
  border-radius: 9px;
  color: #59636e;
  background: #f7f8f9;
  cursor: pointer;
  font-size: 9px;
  font-weight: 800;
}

.cc-console-config-switcher button.is-active {
  border-color: rgba(224, 29, 51, 0.32);
  color: var(--cc-accent);
  background: rgba(224, 29, 51, 0.07);
  box-shadow: inset 0 0 0 1px rgba(224, 29, 51, 0.06);
}

.cc-content[data-console-config="theme"] [data-cc-console-panel]:not([data-cc-console-panel="theme"]),
.cc-content[data-console-config="rounds"] [data-cc-console-panel]:not([data-cc-console-panel="rounds"]),
.cc-content[data-console-config="more"] [data-cc-console-panel]:not([data-cc-console-panel="more"]) {
  display: none !important;
}

.cc-console-config-panel,
.cc-console-access-grid,
.cc-console-more {
  scroll-margin-top: 92px;
}

.cc-console-config-panel {
  border-color: #d7dce2;
}

.cc-console-config-panel > .cc-panel-heading {
  padding-bottom: 14px;
  border-bottom: 1px solid #eceff2;
}

.cc-console-config-panel .cc-settings-form {
  margin-top: 16px;
}

.cc-console-access-grid {
  align-items: start;
}

.cc-console-access-grid > .cc-panel {
  min-height: 100%;
}

.cc-console-access-grid .cc-display-access {
  display: grid;
  grid-template-columns: minmax(150px, 1fr) minmax(150px, 1fr);
  gap: 10px;
  margin: 18px 0 12px;
  padding: 12px;
  border: 1px solid #dce1e6;
  border-radius: 12px;
  background: #f7f8fa;
}

.cc-theme-console-context {
  display: grid;
  grid-template-columns: minmax(150px, .7fr) minmax(220px, 1.3fr);
  gap: 8px 18px;
  margin: 12px 0 16px;
  padding: 11px 13px;
  border: 1px solid #dde2e7;
  border-radius: 10px;
  background: #f7f8fa;
}

.cc-theme-console-context > div {
  display: grid;
  gap: 2px;
}

.cc-theme-console-context span,
.cc-theme-console-context small {
  color: #7a8591;
  font-size: 9px;
}

.cc-theme-console-context strong {
  color: #202832;
  font-size: 13px;
}

.cc-theme-console-context p {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px;
  margin: 0;
}

.cc-theme-console-context p b {
  padding: 5px 8px;
  border-radius: 999px;
  color: #177c57;
  background: #e9f7f1;
  font-size: 8px;
}

.cc-theme-console-context small {
  grid-column: 1 / -1;
}

[data-theme-control-group][hidden],
[data-theme-basic-field][hidden],
[data-theme-field][hidden] {
  display: none !important;
}

.cc-theme-content-heading {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 12px;
  margin-top: 18px;
  padding-top: 17px;
  border-top: 1px solid #e6eaee;
}

.cc-theme-content-heading > div {
  display: grid;
  gap: 4px;
}

.cc-theme-content-heading small {
  color: var(--cc-accent);
  font-size: 8px;
  font-weight: 900;
  letter-spacing: .12em;
}

.cc-theme-content-heading strong {
  color: #202832;
  font-size: 15px;
}

.cc-theme-content-heading > span {
  color: #7c8691;
  font-size: 9px;
}

.cc-theme-copy-form {
  padding: 14px;
  border: 1px solid #e1e5e9;
  border-radius: 12px;
  background: #fafbfc;
}

.cc-blind-slots-panel .cc-panel-intro {
  max-width: 900px;
}

.cc-blind-current-template {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  gap: 3px 14px;
  margin-top: 16px;
  padding: 14px 16px;
  border: 1px solid #d8dee5;
  border-radius: 12px;
  background: #f8fafb;
}

.cc-blind-current-template span {
  grid-row: 1 / 3;
  padding: 7px 10px;
  border-radius: 999px;
  color: #697480;
  background: #edf1f4;
  font-size: 10px;
  font-weight: 900;
}

.cc-blind-current-template strong {
  color: #202832;
  font-size: 16px;
}

.cc-blind-current-template small {
  color: #7b8792;
  font-size: 10px;
}

.cc-blind-current-template[data-state="active"] {
  border-color: #a8dfc7;
  background: #f3fbf7;
}

.cc-blind-current-template[data-state="active"] span {
  color: #16815a;
  background: #def4e8;
}

.cc-blind-current-template[data-state="matching"] {
  border-color: #f3c789;
  background: #fffaf1;
}

.cc-blind-current-template[data-state="matching"] span {
  color: #996317;
  background: #fff0d6;
}

.cc-blind-slot-list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin-top: 18px;
}

.cc-blind-slot {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 12px;
  min-height: 150px;
  padding: 15px;
  border: 1px solid #d9dfe5;
  border-radius: 13px;
  background: #fafbfc;
}

.cc-blind-slot.is-current {
  border-color: #a8dfc7;
  background: #f3fbf7;
  box-shadow: inset 0 0 0 1px rgba(29, 158, 105, .06);
}

.cc-blind-slot.is-matching:not(.is-current) {
  border-color: #edcf9e;
  background: #fffdf8;
}

.cc-blind-slot.is-empty {
  border-style: dashed;
}

.cc-blind-slot-number {
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  border-radius: 10px;
  color: var(--cc-accent);
  background: rgba(224, 29, 51, .08);
  font-size: 11px;
  font-weight: 900;
}

.cc-blind-slot > div:nth-child(2) {
  display: grid;
  align-content: start;
  gap: 5px;
  min-width: 0;
}

.cc-blind-slot small,
.cc-blind-slot span {
  color: #7c8792;
  font-size: 9px;
}

.cc-blind-slot strong {
  overflow: hidden;
  color: #202832;
  font-size: 15px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cc-blind-slot > button,
.cc-blind-slot-actions {
  grid-column: 1 / -1;
  align-self: end;
}

.cc-blind-slot > button,
.cc-blind-slot-actions button,
.cc-blind-slots-footer button {
  min-height: 38px;
  padding: 0 13px;
  border: 1px solid #d5dbe1;
  border-radius: 9px;
  color: #38424d;
  background: #fff;
  cursor: pointer;
  font-size: 9px;
  font-weight: 800;
}

.cc-blind-slot-actions {
  display: grid;
  grid-template-columns: 1fr 1.15fr;
  gap: 8px;
}

.cc-blind-slot-actions button.is-primary {
  border-color: var(--cc-red);
  color: #fff;
  background: linear-gradient(135deg, var(--cc-red), #d31631);
  box-shadow: 0 8px 18px rgba(250, 43, 62, 0.18);
}

.cc-blind-slot-actions button.is-primary:not(:disabled):hover,
.cc-blind-slot-actions button.is-primary:not(:disabled):focus-visible {
  border-color: #c90f29;
  background: #d91631;
}

.cc-blind-slot-actions button:disabled {
  opacity: 1;
  border-color: #b9dfce;
  color: #18855e;
  background: #edf9f3;
  box-shadow: none;
  cursor: default;
}

.cc-blind-slots-footer {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 12px;
  margin-top: 14px;
}

.cc-blind-slots-footer span {
  color: #7b8590;
  font-size: 9px;
}

@media (max-width: 1100px) {
  .cc-blind-slot-list {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 760px) {
  .cc-console-config-switcher nav {
    grid-template-columns: 1fr;
  }

  .cc-theme-console-context {
    grid-template-columns: 1fr;
  }

  .cc-theme-console-context small {
    grid-column: 1;
  }

  .cc-theme-content-heading,
  .cc-blind-slots-footer {
    align-items: stretch;
    flex-direction: column;
  }
}

.cc-console-access-grid .cc-display-access a,
.cc-console-access-grid .cc-display-access button {
  display: inline-flex;
  min-height: 42px;
  align-items: center;
  justify-content: center;
  border: 1px solid #d5dbe1;
  border-radius: 9px;
  color: #202733;
  background: #fff;
  font-weight: 800;
  text-decoration: none;
}

.cc-console-access-grid .cc-display-access a {
  border-color: var(--cc-accent);
  color: #fff;
  background: var(--cc-accent);
}

.cc-console-access-grid .cc-display-access > span {
  grid-column: 1 / -1;
  color: var(--cc-muted);
  font-size: 9px;
  line-height: 1.5;
}

.cc-console-inline-details {
  margin-top: 14px;
  border-top: 1px solid #e3e6e9;
}

.cc-console-inline-details > summary {
  padding: 14px 2px 2px;
  color: #58626e;
  cursor: pointer;
  font-size: 10px;
  font-weight: 800;
}

.cc-console-more {
  overflow: hidden;
}

.cc-console-more > summary {
  cursor: pointer;
  list-style: none;
}

.cc-console-more > summary::-webkit-details-marker {
  display: none;
}

.cc-console-more > summary::after {
  content: "展开";
  margin-left: auto;
  padding: 6px 10px;
  border: 1px solid #d8dde2;
  border-radius: 999px;
  color: #5f6974;
  background: #f7f8f9;
  font-size: 9px;
  font-weight: 800;
}

.cc-console-more[open] > summary::after {
  content: "收起";
}

.cc-console-more[open] > summary {
  margin-bottom: 18px;
  padding-bottom: 15px;
  border-bottom: 1px solid #e6e9ec;
}

@media (max-width: 1220px) {
  .cc-console-config-switcher {
    align-items: stretch;
    flex-direction: column;
  }

  .cc-console-config-switcher > div {
    min-width: 0;
    margin-right: 0;
  }

  .cc-console-access-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 760px) {
  .cc-console-config-switcher nav {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .cc-console-access-grid .cc-display-access {
    grid-template-columns: 1fr;
  }

  .cc-console-access-grid .cc-display-access > span {
    grid-column: 1;
  }
}

/* 现场操作区可读性优化：统一输入、按钮和危险操作的视觉层级。 */
.cc-operations-panel .cc-opening-stats-form {
  gap: 12px;
  margin-top: 14px;
  padding: 15px;
  border-color: #cfd6dd;
  border-radius: 14px;
  background: #fff;
}

.cc-operations-panel .cc-secondary-controls {
  margin-top: 10px;
}

.cc-operations-panel .cc-opening-stats-heading {
  margin-bottom: 2px;
}

.cc-operations-panel .cc-opening-stats-heading strong {
  color: #202731;
  font-size: 14px;
  line-height: 1.3;
}

.cc-operations-panel .cc-opening-stats-heading span {
  color: #697480;
  font-size: 12px;
  line-height: 1.45;
}

.cc-operations-panel .cc-opening-stats-form label > span,
.cc-operations-panel .cc-stack-adjustment > span,
.cc-operations-panel .cc-quick-stat-card > div:first-child > span,
.cc-operations-panel .cc-stack-summary > span {
  color: #59636e;
  font-size: 12px;
  font-weight: 700;
}

.cc-operations-panel .cc-opening-stats-form input,
.cc-operations-panel .cc-stack-adjustment input {
  height: 46px;
  padding: 0 14px;
  border-color: #bdc7d1;
  border-radius: 10px;
  color: #202731;
  background: #fff;
  font-size: 17px;
  font-weight: 650;
}

.cc-operations-panel .cc-opening-stats-form input[type="number"] {
  appearance: textfield;
  -moz-appearance: textfield;
}

.cc-operations-panel .cc-opening-stats-form input[type="number"]::-webkit-inner-spin-button,
.cc-operations-panel .cc-opening-stats-form input[type="number"]::-webkit-outer-spin-button {
  margin: 0;
  -webkit-appearance: none;
}

.cc-operations-panel .cc-opening-stats-form input:focus,
.cc-operations-panel .cc-stack-adjustment input:focus {
  border-color: rgba(216, 27, 51, .65);
  box-shadow: 0 0 0 4px rgba(216, 27, 51, .08);
}

.cc-operations-panel .cc-opening-stats-actions button {
  min-height: 46px;
  border-radius: 10px;
  font-size: 13px;
  font-weight: 800;
}

.cc-operations-panel .cc-opening-stats-actions button.is-primary:not(:disabled) {
  border-color: #d81b33;
  color: #fff;
  background: linear-gradient(135deg, #ed2340, #c9142c);
  box-shadow: 0 8px 18px rgba(216, 27, 51, .18);
}

.cc-operations-panel .cc-opening-stats-actions button.is-primary:not(:disabled):hover,
.cc-operations-panel .cc-opening-stats-actions button.is-primary:not(:disabled):focus-visible {
  background: linear-gradient(135deg, #f22b48, #b90f26);
  transform: translateY(-1px);
}

.cc-operations-panel .cc-quick-stats {
  gap: 12px;
  margin: 14px 0;
}

.cc-operations-panel .cc-quick-stat-card {
  gap: 12px;
  padding: 14px;
  border-color: #cfd6dd;
  border-radius: 14px;
  background: #fff;
}

.cc-operations-panel .cc-quick-stat-card strong {
  color: #1f2731;
  font-size: 30px;
}

.cc-operations-panel .cc-stack-summary strong {
  overflow: visible;
  width: 100%;
  font-size: clamp(25px, 2vw, 32px);
  letter-spacing: -.035em;
  text-overflow: clip;
  white-space: nowrap;
}

.cc-operations-panel .cc-stack-summary small {
  color: #6a7580;
  font-size: 11px;
}

.cc-operations-panel .cc-stack-summary b {
  font-size: 12px;
}

.cc-operations-panel .cc-stack-stat-card {
  grid-template-columns: minmax(210px, .85fr) minmax(190px, .72fr) minmax(300px, 1.15fr);
  align-items: stretch;
}

.cc-operations-panel .cc-stack-summary {
  display: grid !important;
  min-width: 210px;
  grid-template-columns: minmax(0, 1fr);
  align-content: center;
  align-items: start;
  justify-content: stretch;
  gap: 4px;
}

.cc-operations-panel .cc-stack-summary > span,
.cc-operations-panel .cc-stack-summary > strong,
.cc-operations-panel .cc-stack-summary > small {
  display: block;
  min-width: 0;
}

.cc-operations-panel .cc-quick-actions {
  gap: 8px;
}

.cc-operations-panel .cc-quick-actions button {
  min-height: 42px;
  padding: 0 12px;
  border-color: #c5cdd5;
  border-radius: 9px;
  color: #303944;
  background: #f7f8fa;
  font-size: 12px;
  font-weight: 750;
}

.cc-operations-panel .cc-quick-actions button:not(:disabled):hover,
.cc-operations-panel .cc-quick-actions button:not(:disabled):focus-visible {
  border-color: #aeb8c2;
  background: #eef1f4;
}

.cc-operations-panel .cc-quick-actions button.is-primary:not(:disabled) {
  border-color: rgba(216, 27, 51, .38);
  color: #c9142c;
  background: #fff1f3;
}

.cc-operations-panel .cc-undo-bar {
  gap: 10px;
  padding: 12px 14px;
  border-color: #cfd6dd;
  border-radius: 13px;
  background: #fff;
}

.cc-operations-panel .cc-undo-bar span {
  color: #6a7580;
  font-size: 11px;
}

.cc-operations-panel .cc-undo-bar strong {
  color: #252d37;
  font-size: 13px;
}

.cc-operations-panel .cc-undo-bar button {
  min-height: 40px;
  padding: 0 16px;
  border-radius: 9px;
  font-size: 12px;
  font-weight: 750;
  white-space: nowrap;
}

.cc-operations-panel .cc-undo-bar #cc-undo-last:not(:disabled) {
  border-color: #bbc4cd;
  color: #303944;
  background: #f5f7f9;
}

.cc-operations-panel .cc-undo-bar .cc-reset-match-button:not(:disabled) {
  border-color: rgba(216, 27, 51, .45);
  color: #bd1027;
  background: #fff4f5;
}

@media (max-width: 1180px) {
  .cc-operations-panel .cc-opening-stats-form {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .cc-operations-panel .cc-opening-stats-actions {
    grid-column: 1 / -1;
  }

  .cc-operations-panel .cc-stack-stat-card {
    grid-column: 1 / -1;
    grid-template-columns: minmax(200px, .85fr) minmax(180px, .72fr) minmax(280px, 1.15fr);
  }
}

@media (max-width: 760px) {
  .cc-operations-panel .cc-stack-stat-card {
    grid-template-columns: 1fr;
  }

  .cc-operations-panel .cc-stack-summary {
    min-width: 0;
  }
}

@media (max-width: 640px) {
  .cc-operations-panel .cc-opening-stats-form {
    grid-template-columns: 1fr;
  }

  .cc-operations-panel .cc-opening-stats-heading,
  .cc-operations-panel .cc-opening-stats-actions {
    grid-column: 1;
  }

  .cc-operations-panel .cc-undo-bar {
    align-items: stretch;
    flex-direction: column;
  }

  .cc-operations-panel .cc-undo-bar button {
    width: 100%;
  }
}

/* Member directory: scan identity, registrations and verified results in one place. */
.cc-member-admin-page {
  display: grid;
  gap: 18px;
}

.cc-member-admin-page[hidden] {
  display: none !important;
}

.cc-member-admin-hero {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 24px;
  padding: 6px 2px 2px;
}

.cc-member-admin-hero h2 {
  margin: 5px 0 7px;
  color: #202832;
  font-size: clamp(25px, 2vw, 34px);
  letter-spacing: -.03em;
}

.cc-member-admin-hero p:last-child {
  margin: 0;
  color: #6d7884;
  font-size: 14px;
}

.cc-member-admin-hero .cc-primary-button {
  min-width: 150px;
  min-height: 46px;
}

.cc-member-admin-metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.cc-member-numbering-note {
  display: flex;
  min-height: 70px;
  padding: 12px 14px;
  border: 1px solid #d8dee5;
  border-radius: 12px;
  background: #f7f8fa;
  flex-direction: column;
  justify-content: center;
}

.cc-member-numbering-note span,
.cc-member-numbering-note small {
  color: #7b8691;
  font-size: 12px;
}

.cc-member-numbering-note strong {
  margin: 4px 0 2px;
  color: #202832;
  font-family: var(--cc-mono, ui-monospace, SFMono-Regular, Menlo, monospace);
  font-size: 16px;
}

.cc-member-admin-metrics article {
  position: relative;
  overflow: hidden;
  min-height: 112px;
  padding: 18px 20px;
  border: 1px solid #d7dde3;
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 10px 28px rgba(24, 32, 42, .045);
}

.cc-member-admin-metrics article::after {
  position: absolute;
  right: -28px;
  bottom: -38px;
  width: 100px;
  height: 100px;
  border: 15px solid #f1f3f5;
  border-radius: 50%;
  content: "";
}

.cc-member-admin-metrics article[data-tone="warning"] {
  border-color: #f0c9cf;
  background: #fffafb;
}

.cc-member-admin-metrics article[data-tone="warning"]::after {
  border-color: #fbeaed;
}

.cc-member-admin-metrics span,
.cc-member-admin-metrics small,
.cc-member-admin-metrics strong {
  position: relative;
  z-index: 1;
  display: block;
}

.cc-member-admin-metrics span {
  color: #687480;
  font-size: 13px;
  font-weight: 700;
}

.cc-member-admin-metrics strong {
  margin-top: 8px;
  color: #202832;
  font-family: var(--cc-mono, ui-monospace, SFMono-Regular, Menlo, monospace);
  font-size: 30px;
  line-height: 1;
}

.cc-member-admin-metrics small {
  margin-top: 8px;
  color: #98a1aa;
  font-size: 11px;
}

.cc-scoring-rules-panel {
  padding: 18px 20px;
  border-color: #e7d8b7;
  background: #fffdf8;
}

.cc-scoring-rules-panel form {
  display: grid;
  grid-template-columns: repeat(6, minmax(105px, 1fr)) minmax(220px, 1.35fr) auto;
  align-items: end;
  gap: 9px;
  margin-top: 13px;
}

.cc-scoring-rules-panel label {
  display: grid;
  gap: 6px;
  color: #6d7781;
  font-size: 10px;
  font-weight: 750;
}

.cc-scoring-rules-panel input {
  width: 100%;
  min-height: 39px;
  padding: 0 10px;
  border: 1px solid #d4d9dd;
  border-radius: 9px;
  color: #27313b;
  background: #fff;
  font: inherit;
  font-size: 12px;
}

.cc-scoring-rule-example {
  display: grid;
  align-content: center;
  min-height: 56px;
  padding: 8px 11px;
  border: 1px solid #ead9b5;
  border-radius: 9px;
  background: #fff9eb;
}

.cc-scoring-rule-example span,
.cc-scoring-rule-example strong,
.cc-scoring-rule-example small {
  display: block;
}

.cc-scoring-rule-example span,
.cc-scoring-rule-example small {
  color: #907b58;
  font-size: 9px;
}

.cc-scoring-rule-example strong {
  margin: 3px 0;
  color: #805300;
  font-size: 11px;
}

.cc-scoring-rules-panel form > button {
  min-width: 126px;
  min-height: 39px;
}

.cc-member-admin-toolbar {
  display: grid;
  grid-template-columns: minmax(280px, 1fr) auto auto;
  align-items: center;
  gap: 12px;
  padding: 13px;
}

.cc-member-admin-toolbar form {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
}

.cc-member-admin-toolbar input {
  width: 100%;
  min-height: 42px;
  padding: 0 14px;
  border: 1px solid #cdd5dd;
  border-radius: 10px;
  color: #202832;
  background: #fff;
  font: inherit;
}

.cc-member-admin-toolbar input:focus {
  outline: 3px solid rgba(225, 28, 54, .1);
  border-color: #df3048;
}

.cc-member-admin-toolbar button,
.cc-member-admin-filters button {
  min-height: 42px;
  padding: 0 15px;
  border: 1px solid #cfd6dd;
  border-radius: 10px;
  color: #4a5561;
  background: #fff;
  font: inherit;
  font-size: 13px;
  font-weight: 750;
  cursor: pointer;
}

.cc-member-admin-toolbar form button,
.cc-member-admin-filters button.is-active {
  border-color: #df3048;
  color: #c9152d;
  background: #fff2f4;
}

.cc-member-admin-toolbar button:disabled {
  opacity: .55;
  cursor: wait;
}

.cc-member-admin-filters {
  display: flex;
  gap: 5px;
  padding: 4px;
  border-radius: 12px;
  background: #f1f3f5;
}

.cc-member-admin-filters button {
  min-height: 34px;
  padding: 0 12px;
  border-color: transparent;
  background: transparent;
  white-space: nowrap;
}

.cc-member-admin-layout {
  display: grid;
  grid-template-columns: minmax(500px, .92fr) minmax(440px, 1.08fr);
  align-items: start;
  gap: 16px;
}

.cc-member-directory-panel,
.cc-member-admin-detail {
  min-height: 560px;
  padding: 20px;
}

.cc-member-admin-list {
  display: grid;
  gap: 7px;
  margin-top: 14px;
}

.cc-member-admin-row {
  display: grid;
  grid-template-columns: 46px minmax(160px, 1fr) repeat(3, minmax(58px, auto)) 16px;
  align-items: center;
  gap: 12px;
  width: 100%;
  min-height: 72px;
  padding: 10px 12px;
  border: 1px solid transparent;
  border-radius: 13px;
  color: #222b35;
  background: #f6f7f9;
  text-align: left;
  cursor: pointer;
  transition: border-color .15s ease, background-color .15s ease, transform .15s ease;
}

.cc-member-admin-row:hover,
.cc-member-admin-row:focus-visible {
  border-color: #d3d9df;
  background: #fff;
  outline: none;
}

.cc-member-admin-row.is-selected {
  border-color: #ed9aa6;
  background: #fff5f6;
  box-shadow: inset 3px 0 #df1e38;
}

.cc-member-admin-avatar {
  display: inline-grid;
  place-items: center;
  overflow: hidden;
  width: 46px;
  height: 46px;
  border-radius: 13px;
  color: #fff;
  background: linear-gradient(145deg, #293440, #151b23);
  font-weight: 850;
}

.cc-member-admin-avatar.has-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.cc-member-admin-avatar.is-large {
  width: 68px;
  height: 68px;
  border-radius: 19px;
  font-size: 24px;
}

.cc-member-admin-identity,
.cc-member-admin-identity > span,
.cc-member-admin-row-stat {
  display: block;
  min-width: 0;
}

.cc-member-admin-identity strong {
  overflow: hidden;
  color: #202832;
  font-size: 14px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cc-member-admin-identity em {
  display: inline-block;
  margin-left: 7px;
  padding: 2px 6px;
  border-radius: 10px;
  color: #bf6a00;
  background: #fff0d7;
  font-size: 9px;
  font-style: normal;
  vertical-align: 2px;
}

.cc-member-admin-identity small,
.cc-member-admin-row-stat small {
  display: block;
  overflow: hidden;
  margin-top: 5px;
  color: #89939d;
  font-size: 10px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cc-member-admin-row-stat {
  text-align: right;
}

.cc-member-admin-row-stat strong {
  font-family: var(--cc-mono, ui-monospace, SFMono-Regular, Menlo, monospace);
  font-size: 14px;
}

.cc-member-admin-chevron {
  color: #9da5ad;
  font-size: 22px;
}

.cc-member-admin-empty {
  display: grid;
  place-items: center;
  align-content: center;
  gap: 8px;
  min-height: 300px;
  padding: 26px;
  color: #8a949e;
  text-align: center;
}

.cc-member-admin-empty strong {
  color: #3b4550;
  font-size: 16px;
}

.cc-member-admin-empty span {
  font-size: 12px;
}

.cc-member-admin-empty.is-error strong {
  color: #c71830;
}

.cc-member-admin-empty button {
  min-height: 38px;
  margin-top: 7px;
  padding: 0 16px;
  border: 1px solid #e18a97;
  border-radius: 9px;
  color: #c71830;
  background: #fff;
}

.cc-member-admin-empty.is-compact {
  min-height: 110px;
}

.cc-member-admin-profile-head {
  display: grid;
  grid-template-columns: 68px minmax(0, 1fr) auto;
  align-items: center;
  gap: 14px;
  padding-bottom: 17px;
  border-bottom: 1px solid #e1e5e9;
}

.cc-member-admin-profile-head h2 {
  margin: 4px 0;
  color: #202832;
  font-size: 23px;
}

.cc-member-admin-profile-head p {
  margin: 0;
  color: #7e8994;
  font-size: 12px;
}

.cc-member-admin-profile-head > em {
  align-self: start;
  padding: 5px 8px;
  border-radius: 12px;
  color: #ad6400;
  background: #fff0d7;
  font-size: 10px;
  font-style: normal;
  font-weight: 800;
}

.cc-member-profile-editor {
  margin-top: 10px;
  border: 1px solid #dfe4e8;
  border-radius: 10px;
  background: #f8f9fa;
}

.cc-member-profile-editor summary {
  padding: 10px 12px;
  color: #596571;
  font-size: 10px;
  font-weight: 850;
  cursor: pointer;
}

.cc-member-profile-editor form,
.cc-member-record-editor {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  padding: 0 12px 12px;
}

.cc-member-profile-editor label,
.cc-member-record-editor label {
  display: grid;
  gap: 5px;
  color: #6f7a85;
  font-size: 9px;
  font-weight: 750;
}

.cc-member-profile-editor label.is-wide,
.cc-member-record-editor label.is-wide,
.cc-member-record-editor-actions {
  grid-column: 1 / -1;
}

.cc-member-profile-editor input,
.cc-member-record-editor input,
.cc-member-record-editor select {
  width: 100%;
  min-height: 37px;
  padding: 0 9px;
  border: 1px solid #cfd7de;
  border-radius: 8px;
  color: #26313b;
  background: #fff;
  font-size: 10px;
}

.cc-member-profile-editor .cc-member-active-switch {
  display: flex;
  align-items: center;
  gap: 7px;
}

.cc-member-profile-editor .cc-member-active-switch input {
  width: 16px;
  min-height: 16px;
}

.cc-member-profile-editor form > button,
.cc-member-record-editor-actions button {
  min-height: 37px;
  padding: 0 13px;
  border: 1px solid #df3048;
  border-radius: 8px;
  color: #fff;
  background: #df1e38;
  font-size: 10px;
  font-weight: 800;
  cursor: pointer;
}

.cc-member-admin-source {
  color: #69747f;
  font-size: 10px;
  font-weight: 850;
  letter-spacing: .08em;
}

.cc-member-admin-source[data-source="wechat"] {
  color: #13845b;
}

.cc-member-admin-profile-meta {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1px;
  overflow: hidden;
  margin-top: 14px;
  border: 1px solid #e0e5e9;
  border-radius: 12px;
  background: #e0e5e9;
}

.cc-member-admin-profile-meta span {
  min-width: 0;
  padding: 11px 12px;
  background: #f7f8f9;
}

.cc-member-admin-profile-meta small,
.cc-member-admin-profile-meta strong {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cc-member-admin-profile-meta small {
  color: #939ca5;
  font-size: 9px;
}

.cc-member-admin-profile-meta strong {
  margin-top: 5px;
  color: #3b4550;
  font-size: 11px;
}

.cc-member-admin-career {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 8px;
  margin-top: 14px;
}

.cc-member-admin-career article {
  padding: 11px 8px;
  border: 1px solid #e0e5e9;
  border-radius: 11px;
  background: #fff;
  text-align: center;
}

.cc-member-admin-career strong,
.cc-member-admin-career span {
  display: block;
}

.cc-member-admin-career strong {
  color: #202832;
  font-family: var(--cc-mono, ui-monospace, SFMono-Regular, Menlo, monospace);
  font-size: 16px;
}

.cc-member-admin-career span {
  margin-top: 5px;
  color: #929ba4;
  font-size: 9px;
}

.cc-member-admin-duplicate-box {
  margin-top: 14px;
  padding: 13px;
  border: 1px solid #f1d2a9;
  border-radius: 12px;
  background: #fffaf2;
}

.cc-member-admin-duplicate-box > div strong,
.cc-member-admin-duplicate-box > div span {
  display: block;
}

.cc-member-admin-duplicate-box > div strong {
  color: #8c5400;
  font-size: 12px;
}

.cc-member-admin-duplicate-box > div span,
.cc-member-admin-duplicate-box > p {
  margin: 4px 0 0;
  color: #9a7c52;
  font-size: 10px;
}

.cc-member-admin-duplicate-box button {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  width: 100%;
  min-height: 40px;
  margin-top: 9px;
  padding: 7px 10px;
  border: 1px solid #ead8bd;
  border-radius: 9px;
  color: #493c2c;
  background: #fff;
  text-align: left;
  cursor: pointer;
}

.cc-member-admin-duplicate-box button small {
  color: #a17c45;
}

.cc-member-admin-history {
  margin-top: 17px;
}

.cc-member-admin-section-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-bottom: 8px;
  border-bottom: 1px solid #e1e5e9;
}

.cc-member-admin-section-title strong {
  color: #303943;
  font-size: 13px;
}

.cc-member-admin-section-title span {
  color: #929ba4;
  font-size: 10px;
}

.cc-member-admin-history > article {
  display: grid;
  grid-template-columns: 72px minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  padding: 10px 2px;
  border-bottom: 1px solid #eceff2;
}

.cc-member-admin-history > article:has(.cc-member-record-row-actions) {
  grid-template-columns: 72px minmax(0, 1fr) auto auto;
}

.cc-member-record-row-actions {
  display: flex;
  gap: 5px;
}

.cc-member-record-row-actions button,
.cc-member-ledger-row [data-point-reverse],
.cc-member-ledger-filters button,
.cc-member-reversal-form button {
  min-height: 29px;
  padding: 0 9px;
  border: 1px solid #d5dce2;
  border-radius: 7px;
  color: #596571;
  background: #fff;
  font-size: 9px;
  font-weight: 800;
  cursor: pointer;
}

.cc-member-record-editor {
  grid-column: 1 / -1;
  margin-top: 1px;
  padding: 12px;
  border: 1px solid #d9e0e5;
  border-radius: 9px;
  background: #f7f8f9;
}

.cc-member-record-editor.is-void {
  border-color: #efc2c8;
  background: #fff7f8;
}

.cc-member-record-editor-actions {
  display: flex;
  justify-content: flex-end;
  gap: 7px;
}

.cc-member-record-editor-actions button:first-child {
  color: #596571;
  background: #fff;
  border-color: #d5dce2;
}

.cc-member-record-editor-actions button.is-danger,
.cc-member-reversal-form button.is-danger {
  color: #fff;
  border-color: #c71830;
  background: #c71830;
}

.cc-member-admin-history time {
  color: #8c959e;
  font-family: var(--cc-mono, ui-monospace, SFMono-Regular, Menlo, monospace);
  font-size: 10px;
}

.cc-member-admin-history article div strong,
.cc-member-admin-history article div span {
  display: block;
}

.cc-member-admin-history article div strong {
  overflow: hidden;
  color: #313a44;
  font-size: 11px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cc-member-admin-history article div span {
  margin-top: 3px;
  color: #939ca5;
  font-size: 9px;
}

.cc-member-admin-history article em {
  color: #d21a34;
  font-size: 10px;
  font-style: normal;
  font-weight: 800;
  white-space: nowrap;
}

.cc-member-admin-note {
  margin-top: 15px;
  padding: 12px 13px;
  border-radius: 10px;
  color: #63707c;
  background: #f2f4f6;
}

.cc-member-admin-note strong {
  font-size: 10px;
}

.cc-member-admin-note p {
  margin: 5px 0 0;
  font-size: 11px;
  line-height: 1.65;
}

.cc-member-admin-create {
  padding: 18px 20px;
  border-color: #efc8ce;
  background: #fffafb;
}

.cc-member-admin-create .cc-panel-heading button {
  min-height: 36px;
  padding: 0 14px;
  border: 1px solid #d6dce2;
  border-radius: 9px;
  background: #fff;
  cursor: pointer;
}

.cc-member-admin-create .cc-performance-form {
  grid-template-columns: repeat(4, minmax(140px, 1fr)) auto;
  align-items: end;
  margin-top: 13px;
}

.cc-member-admin-create .cc-performance-form .cc-primary-button {
  grid-column: auto;
  min-width: 140px;
}

.cc-member-admin-row-stat.is-member-points strong,
.cc-member-admin-career .is-member-points strong {
  color: #b66a00;
}

.cc-points-separation {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-top: 12px;
  padding: 9px 11px;
  border: 1px solid #ead9b9;
  border-radius: 10px;
  color: #7b6745;
  background: #fffbf2;
  font-size: 10px;
}

.cc-points-separation strong {
  flex: 0 0 auto;
  color: #9b6007;
}

.cc-member-quick-grid {
  display: grid;
  grid-template-columns: 1fr;
  align-items: start;
  gap: 12px;
  margin-top: 14px;
}

.cc-member-coupon-quick-card {
  display: grid;
  gap: 11px;
  margin-top: 12px;
  padding: 13px;
  border: 1px solid #eadfe1;
  border-radius: 12px;
  background: linear-gradient(115deg, #fff 62%, #fff8f9);
}

.cc-member-coupon-quick-head,
.cc-member-coupon-quick-counts {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.cc-member-coupon-quick-head > div:first-child {
  display: grid;
  gap: 3px;
}

.cc-member-coupon-quick-head > div:first-child strong {
  color: #303943;
  font-size: 12px;
}

.cc-member-coupon-quick-head > div:first-child span {
  color: #929ba4;
  font-size: 9px;
}

.cc-member-coupon-quick-counts > span {
  color: #7e8993;
  font-size: 9px;
  white-space: nowrap;
}

.cc-member-coupon-quick-counts b {
  color: #c71830;
  font-size: 13px;
}

.cc-member-coupon-quick-counts button {
  min-height: 32px;
  padding: 0 11px;
  border: 1px solid #e3aab2;
  border-radius: 8px;
  color: #b42338;
  background: #fff;
  font-size: 9px;
  font-weight: 800;
  cursor: pointer;
}

.cc-member-coupon-quick-card > form {
  display: grid;
  grid-template-columns: minmax(190px, .85fr) minmax(220px, 1.15fr) auto;
  gap: 8px;
}

.cc-member-coupon-quick-card select,
.cc-member-coupon-quick-card input,
.cc-member-coupon-quick-card form button {
  min-width: 0;
  min-height: 38px;
  padding: 0 10px;
  border: 1px solid #d3dae0;
  border-radius: 9px;
  color: #26313b;
  background: #fff;
  font: inherit;
  font-size: 10px;
}

.cc-member-coupon-quick-card form button {
  min-width: 126px;
  padding: 0 16px;
  border-color: #df1e38;
  color: #fff;
  background: #df1e38;
  font-weight: 800;
  cursor: pointer;
}

.cc-member-coupon-quick-card form button:disabled { cursor: wait; opacity: .55; }

.cc-member-coupon-quick-recent {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 7px;
}

.cc-member-coupon-quick-recent article {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 8px;
  min-width: 0;
  padding: 9px;
  border: 1px solid #edf0f2;
  border-radius: 9px;
  background: #fff;
}

.cc-member-coupon-quick-recent article > div {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.cc-member-coupon-quick-recent article strong,
.cc-member-coupon-quick-recent article small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cc-member-coupon-quick-recent article strong { color: #303943; font-size: 10px; }
.cc-member-coupon-quick-recent article small { color: #929ba4; font-size: 8px; }
.cc-member-coupon-quick-recent .cc-member-coupon-type,
.cc-member-coupon-quick-recent .cc-member-coupon-status { padding: 4px 7px; font-size: 7px; }

.cc-member-coupon-quick-empty {
  padding: 9px 11px;
  border-radius: 8px;
  color: #929ba4;
  background: #f7f8f9;
  font-size: 9px;
  text-align: center;
}

.cc-member-coupon-quick-empty.is-error { color: #b42338; background: #fff4f5; }

.cc-member-data-hub {
  margin-top: 17px;
}

.cc-member-data-nav {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
  margin-top: 10px;
}

.cc-member-data-nav button {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 4px 8px;
  min-height: 82px;
  padding: 12px 34px 12px 13px;
  border: 1px solid #dfe4e8;
  border-radius: 11px;
  color: #5f6b76;
  background: #f8f9fa;
  text-align: left;
  cursor: pointer;
  transition: border-color .16s ease, background .16s ease, transform .16s ease;
}

.cc-member-data-nav button:hover,
.cc-member-data-nav button:focus-visible {
  border-color: #dda2aa;
  background: #fffafb;
  transform: translateY(-1px);
}

.cc-member-data-nav button.is-active {
  border-color: #df3048;
  background: #fff6f7;
  box-shadow: inset 0 0 0 1px rgba(223, 48, 72, .06);
}

.cc-member-data-nav button > span {
  color: #313a44;
  font-size: 11px;
  font-weight: 800;
}

.cc-member-data-nav button > strong {
  color: #c71830;
  font-size: 12px;
  text-align: right;
}

.cc-member-data-nav button > small {
  grid-column: 1 / -1;
  color: #929ba4;
  font-size: 9px;
  line-height: 1.45;
}

.cc-member-data-nav button > em {
  position: absolute;
  top: 50%;
  right: 12px;
  color: #9ca5ad;
  font-size: 20px;
  font-style: normal;
  line-height: 1;
  transform: translateY(-50%);
}

.cc-member-data-panel {
  margin-top: 10px;
  padding: 12px;
  border: 1px solid #dfe4e8;
  border-radius: 12px;
  background: #fff;
}

.cc-member-data-panel-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 0 2px 10px;
}

.cc-member-data-panel-head div,
.cc-member-data-panel-head strong,
.cc-member-data-panel-head span {
  display: block;
}

.cc-member-data-panel-head strong {
  color: #303943;
  font-size: 12px;
}

.cc-member-data-panel-head span {
  margin-top: 3px;
  color: #929ba4;
  font-size: 9px;
}

.cc-member-data-panel-head button {
  min-height: 31px;
  padding: 0 11px;
  border: 1px solid #d5dce2;
  border-radius: 8px;
  color: #65717c;
  background: #fff;
  font-size: 9px;
  font-weight: 800;
  cursor: pointer;
}

.cc-member-data-scroll {
  max-height: min(560px, 62vh);
  overflow: auto;
  padding: 0 3px 2px;
  overscroll-behavior: contain;
  scrollbar-gutter: stable;
}

.cc-member-data-scroll > .cc-member-admin-history,
.cc-member-data-scroll > .cc-member-points-ledger,
.cc-member-data-scroll > .cc-member-share-inline {
  margin-top: 0;
}

.cc-member-action-card {
  padding: 13px;
  border: 1px solid #dfe4e8;
  border-radius: 12px;
  background: #f8f9fa;
}

.cc-member-action-card form {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 9px;
  margin-top: 11px;
}

.cc-member-action-card label,
.cc-member-action-card label span {
  display: grid;
  gap: 5px;
  color: #6f7a85;
  font-size: 9px;
  font-weight: 750;
}

.cc-member-action-card label.is-wide,
.cc-member-record-actions {
  grid-column: 1 / -1;
}

.cc-member-action-card input,
.cc-member-action-card select,
.cc-member-share-inline select {
  width: 100%;
  min-height: 39px;
  padding: 0 10px;
  border: 1px solid #cfd7de;
  border-radius: 9px;
  color: #26313b;
  background: #fff;
  font: inherit;
  font-size: 11px;
}

.cc-member-action-card form > button,
.cc-member-record-actions button,
.cc-member-share-inline button,
.cc-member-share-created button,
.cc-member-share-list button {
  min-height: 39px;
  padding: 0 13px;
  border: 1px solid #df3048;
  border-radius: 9px;
  color: #c71830;
  background: #fff;
  font-size: 11px;
  font-weight: 800;
  cursor: pointer;
}

.cc-member-action-card form > button {
  grid-column: 1 / -1;
  color: #fff;
  background: #df1e38;
}

.cc-member-record-actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}

.cc-member-record-actions > span {
  color: #8b949d;
  font-size: 9px;
}

.cc-member-record-actions button.is-primary {
  min-width: 180px;
  color: #fff;
  background: #df1e38;
}

.cc-member-points-card form {
  grid-template-columns: minmax(220px, 1fr) minmax(116px, auto) minmax(116px, auto);
  align-items: end;
}

.cc-member-points-card form > button {
  grid-column: auto;
  min-width: 116px;
}

.cc-member-points-card form > button.is-credit {
  border-color: #df1e38;
  color: #fff;
  background: #df1e38;
}

.cc-member-points-card form > button.is-debit {
  border-color: #e4a5ae;
  color: #b42338;
  background: #fff;
}

.cc-member-points-card form > button.is-debit:hover,
.cc-member-points-card form > button.is-debit:focus-visible {
  border-color: #b42338;
  background: #fff5f6;
}

.cc-member-points-note {
  margin-top: 1px;
}

.cc-member-rank-label {
  display: flex !important;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}

.cc-member-rank-label button {
  min-height: 24px;
  padding: 0 8px;
  border: 1px solid #d8b15b;
  border-radius: 7px;
  color: #875800;
  background: #fff8e8;
  font-size: 8px;
  font-weight: 850;
  cursor: pointer;
}

.cc-member-score-field small {
  color: #8a949e;
  font-size: 9px;
  font-weight: 650;
}

.cc-member-score-field small[data-mode="auto"] { color: #9a670c; }
.cc-member-score-field small[data-mode="manual"] { color: #168356; }
.cc-member-score-field small[data-mode="error"] { color: #c71830; }

.cc-member-action-card button:disabled,
.cc-member-share-inline button:disabled {
  cursor: wait;
  opacity: .55;
}

.cc-member-admin-history article em[data-status="draft"] { color: #b56b00; }
.cc-member-admin-history article em[data-status="void"] { color: #8a949e; }
.cc-member-admin-history article em[data-status="confirmed"] { color: #168356; }

.cc-member-points-ledger,
.cc-member-share-inline {
  margin-top: 17px;
}

.cc-member-ledger-table {
  overflow-x: auto;
  margin-top: 8px;
  border: 1px solid #e1e5e9;
  border-radius: 10px;
}

.cc-member-ledger-filters {
  display: grid;
  grid-template-columns: 100px 128px 128px minmax(150px, 1fr) auto;
  gap: 7px;
  margin-top: 9px;
}

.cc-member-ledger-filters input,
.cc-member-ledger-filters select {
  min-width: 0;
  min-height: 34px;
  padding: 0 8px;
  border: 1px solid #d4dbe1;
  border-radius: 8px;
  color: #4d5964;
  background: #fff;
  font-size: 9px;
}

.cc-member-ledger-table > div {
  display: grid;
  grid-template-columns: 118px 62px minmax(150px, 1fr) 90px 62px 60px;
  align-items: center;
  gap: 8px;
  min-width: 620px;
  padding: 9px 10px;
  border-bottom: 1px solid #edf0f2;
  color: #66717c;
  font-size: 9px;
}

.cc-member-ledger-row[hidden] { display: none; }

.cc-member-reversal-form {
  display: grid;
  grid-column: 1 / -1;
  grid-template-columns: minmax(180px, 1fr) auto auto;
  gap: 7px;
  padding: 9px;
  border: 1px solid #efc2c8;
  border-radius: 8px;
  background: #fff7f8;
}

.cc-member-reversal-form input {
  min-height: 32px;
  padding: 0 9px;
  border: 1px solid #d4dbe1;
  border-radius: 7px;
  font-size: 9px;
}

.cc-member-ledger-table > div:last-child { border-bottom: 0; }
.cc-member-ledger-table .cc-member-ledger-head { color: #89939c; background: #f3f5f6; font-weight: 800; }
.cc-member-ledger-table b { color: #c71830; }
.cc-member-ledger-table b[data-direction="credit"] { color: #168356; }
.cc-member-ledger-table strong { color: #28323c; text-align: right; }

.cc-member-share-inline form {
  display: grid;
  grid-template-columns: 1fr 1fr auto;
  gap: 8px;
  margin-top: 10px;
}

.cc-member-share-inline form button { color: #fff; background: #df1e38; }

.cc-member-share-created,
.cc-member-share-list > div,
.cc-member-share-list > span {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 8px;
  padding: 9px 10px;
  border-radius: 9px;
  color: #68737e;
  background: #f3f5f6;
  font-size: 9px;
}

.cc-member-share-created span,
.cc-member-share-list > div span {
  min-width: 0;
  flex: 1;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cc-member-share-created { border: 1px solid #a9dcc6; background: #f0faf6; }
.cc-member-share-list button,
.cc-member-share-created button { min-height: 30px; }

.cc-member-record-queue {
  margin: 0;
}

/* Member operations v2: start from a clean directory and open one focused task at a time. */
.cc-member-admin-detail[hidden],
.cc-member-admin-create[hidden],
[data-member-index-section][hidden],
.cc-member-admin-hero[hidden] {
  display: none !important;
}

.cc-member-admin-layout {
  display: block;
}

.cc-member-directory-panel {
  min-height: 440px;
}

.cc-member-admin-page[data-member-view="detail"],
.cc-member-admin-page[data-member-view="create"] {
  display: block;
}

.cc-member-admin-page[data-member-view="detail"] .cc-member-admin-detail,
.cc-member-admin-page[data-member-view="create"] .cc-member-admin-create {
  width: min(1380px, 100%);
  min-height: 0;
  margin: 0 auto;
  padding: 24px;
}

.cc-member-admin-page[data-member-view="create"] .cc-member-admin-create {
  width: min(1120px, 100%);
}

.cc-member-focus-heading {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: start;
  gap: 22px;
  margin-bottom: 20px;
  padding-bottom: 20px;
  border-bottom: 1px solid #e1e5e9;
}

.cc-member-focus-heading > button {
  min-height: 42px;
  padding: 0 15px;
  border: 1px solid #cfd6dd;
  border-radius: 10px;
  color: #55616c;
  background: #fff;
  font: inherit;
  font-size: 12px;
  font-weight: 800;
  cursor: pointer;
}

.cc-member-focus-heading p,
.cc-member-focus-heading h2,
.cc-member-focus-heading span {
  display: block;
  margin: 0;
}

.cc-member-focus-heading p {
  color: #df1e38;
  font-size: 10px;
  font-weight: 850;
  letter-spacing: .12em;
}

.cc-member-focus-heading h2 {
  margin-top: 5px;
  color: #202832;
  font-size: 27px;
  letter-spacing: -.025em;
}

.cc-member-focus-heading span {
  margin-top: 7px;
  color: #7b8691;
  font-size: 12px;
}

.cc-member-detail-shortcuts {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 20px;
}

.cc-member-detail-shortcuts button {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 2px 10px;
  min-height: 74px;
  padding: 12px 14px;
  border: 1px solid #dce2e7;
  border-radius: 12px;
  color: #27313b;
  background: #f7f8fa;
  text-align: left;
  cursor: pointer;
}

.cc-member-detail-shortcuts button:hover,
.cc-member-detail-shortcuts button:focus-visible {
  border-color: #eb9aa6;
  background: #fff6f7;
  outline: none;
}

.cc-member-detail-shortcuts span {
  grid-row: 1 / 3;
  align-self: center;
  color: #df1e38;
  font-family: var(--cc-mono, ui-monospace, SFMono-Regular, Menlo, monospace);
  font-size: 11px;
  font-weight: 850;
}

.cc-member-detail-shortcuts strong {
  font-size: 13px;
}

.cc-member-detail-shortcuts small {
  color: #8b949d;
  font-size: 10px;
}

.cc-member-advanced-panel {
  padding: 0;
  overflow: hidden;
}

.cc-member-advanced-panel > summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  min-height: 70px;
  padding: 14px 20px;
  list-style: none;
  cursor: pointer;
}

.cc-member-advanced-panel > summary::-webkit-details-marker {
  display: none;
}

.cc-member-advanced-panel > summary span,
.cc-member-advanced-panel > summary small,
.cc-member-advanced-panel > summary strong {
  display: block;
}

.cc-member-advanced-panel > summary small {
  color: #df1e38;
  font-size: 9px;
  font-weight: 850;
}

.cc-member-advanced-panel > summary strong {
  margin-top: 4px;
  color: #2b3540;
  font-size: 15px;
}

.cc-member-advanced-panel > summary em {
  color: #8a949e;
  font-size: 11px;
  font-style: normal;
}

.cc-member-advanced-panel > summary::after {
  color: #9aa3ac;
  content: "展开 ›";
  font-size: 11px;
}

.cc-member-advanced-panel[open] > summary::after {
  content: "收起⌃";
}

.cc-member-advanced-panel[open] > summary {
  border-bottom: 1px solid #e5e9ec;
}

.cc-member-advanced-panel.cc-scoring-rules-panel form,
.cc-member-advanced-panel .cc-performance-record-list {
  margin: 0;
  padding: 18px 20px 20px;
}

.cc-member-admin-create .cc-performance-form {
  margin-top: 0;
}

.cc-member-space-page {
  display: grid;
  gap: 16px;
}

.cc-member-space-hero {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 24px;
  padding: 5px 2px;
}

.cc-member-space-hero h2 {
  margin: 6px 0 0;
  color: #202832;
  font-size: clamp(27px, 2.1vw, 38px);
}

.cc-member-space-hero p:last-child {
  margin: 8px 0 0;
  color: #76818c;
  font-size: 13px;
}

.cc-member-space-hero > span {
  padding: 7px 11px;
  border-radius: 20px;
  color: #63707b;
  background: #edf0f2;
  font-size: 11px;
}

.cc-member-space-layout {
  display: grid;
  grid-template-columns: minmax(280px, 340px) minmax(0, 1fr);
  align-items: start;
  gap: 16px;
}

.cc-member-space-preview {
  position: sticky;
  top: 18px;
  overflow: hidden;
  min-height: 540px;
  padding: 22px;
  border-color: color-mix(in srgb, var(--member-space-color) 32%, #dfe4e8);
  background: linear-gradient(155deg, color-mix(in srgb, var(--member-space-color) 10%, #fff) 0 34%, #fff 34% 100%);
}

.cc-member-space-preview::before {
  position: absolute;
  top: -90px;
  right: -75px;
  width: 230px;
  height: 230px;
  border-radius: 50%;
  background: var(--member-space-color);
  opacity: .12;
  content: "";
}

.cc-member-space-preview[data-enabled="false"] {
  filter: grayscale(.75);
  opacity: .68;
}

.cc-member-space-preview-top {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  gap: 12px;
}

#cc-member-space-preview-logo {
  display: grid;
  place-items: center;
  overflow: hidden;
  width: 52px;
  height: 52px;
  border-radius: 15px;
  color: var(--member-space-foreground);
  background: var(--member-space-color);
  font-size: 21px;
  font-weight: 900;
}

#cc-member-space-preview-logo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.cc-member-space-preview-top strong,
.cc-member-space-preview-top small {
  display: block;
}

.cc-member-space-preview-top strong { color: #202832; font-size: 16px; }
.cc-member-space-preview-top small { margin-top: 4px; color: #8d969f; font-size: 9px; letter-spacing: .08em; }

.cc-member-space-preview blockquote {
  position: relative;
  z-index: 1;
  min-height: 116px;
  margin: 24px 0 0;
  padding: 19px;
  border-radius: 16px;
  color: var(--member-space-foreground);
  background: var(--member-space-color);
  font-size: 17px;
  font-weight: 800;
  line-height: 1.55;
}

.cc-member-space-preview-modules {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 9px;
  margin-top: 15px;
}

.cc-member-space-preview-modules span,
.cc-member-space-preview-modules small {
  display: grid;
  place-items: center;
  min-height: 62px;
  padding: 8px;
  border: 1px solid #e0e5e9;
  border-radius: 12px;
  color: #505c67;
  background: #f8f9fa;
  font-size: 10px;
  font-weight: 800;
  text-align: center;
}

.cc-member-space-preview-contact {
  display: grid;
  gap: 7px;
  margin-top: 18px;
  padding-top: 15px;
  border-top: 1px solid #e2e6e9;
  color: #75808a;
  font-size: 10px;
}

.cc-member-space-preview-contact span {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  gap: 7px;
  line-height: 1.45;
}

.cc-member-space-preview-contact .is-empty { display: block; }

.cc-member-space-preview-contact b {
  color: #4f5b66;
  font-size: 9px;
}

.cc-member-space-preview > small {
  position: absolute;
  right: 22px;
  bottom: 20px;
  left: 22px;
  color: #a0a7ae;
  font-size: 9px;
  text-align: center;
}

.cc-member-space-form {
  display: grid;
  gap: 12px;
}

.cc-member-space-status-card,
.cc-member-space-config-card {
  padding: 18px 20px;
}

.cc-member-space-status-card {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  border-color: #ecd5a8;
  background: #fffcf5;
}

.cc-member-space-status-card strong,
.cc-member-space-status-card span { display: block; }
.cc-member-space-status-card strong { color: #343e48; font-size: 13px; }
.cc-member-space-status-card div span { margin-top: 4px; color: #8b7a5b; font-size: 10px; }
.cc-member-space-status-card label,
.cc-member-space-inline-switch { display: flex; align-items: center; gap: 7px; color: #4d5964; font-size: 10px; font-weight: 800; }
.cc-member-space-status-card input,
.cc-member-space-inline-switch input { width: 17px; height: 17px; accent-color: #df1e38; }

.cc-member-space-field-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 11px;
  margin-top: 13px;
}

.cc-member-space-field-grid > label {
  display: grid;
  gap: 6px;
  color: #697580;
  font-size: 10px;
  font-weight: 750;
}

.cc-member-space-field-grid > label > small {
  color: #929ba4;
  font-size: 9px;
  font-weight: 600;
  line-height: 1.55;
}

.cc-member-space-field-grid .is-wide { grid-column: 1 / -1; }

.cc-member-space-field-grid input,
.cc-member-space-field-grid select,
.cc-member-space-field-grid textarea {
  width: 100%;
  min-height: 40px;
  padding: 9px 11px;
  border: 1px solid #cfd7de;
  border-radius: 9px;
  color: #26313b;
  background: #fff;
  font: inherit;
  font-size: 11px;
  resize: vertical;
}

.cc-member-space-field-grid input[type="color"] { padding: 4px; }

.cc-member-space-logo-control {
  display: grid;
  grid-template-columns: 74px minmax(0, 1fr);
  align-items: center;
  gap: 12px;
  padding: 11px;
  border: 1px dashed #ccd5dc;
  border-radius: 11px;
  background: #f8f9fa;
}

#cc-member-space-logo-preview {
  display: grid;
  place-items: center;
  overflow: hidden;
  width: 74px;
  height: 74px;
  border-radius: 14px;
  color: #8a949e;
  background: #fff;
  font-size: 9px;
}

#cc-member-space-logo-preview img { width: 100%; height: 100%; object-fit: contain; }
.cc-member-space-logo-control > div:last-child { display: flex; flex-wrap: wrap; align-items: center; gap: 7px; }
.cc-member-space-logo-control label,
.cc-member-space-logo-control button,
.cc-member-space-scene button { min-height: 34px; padding: 0 10px; border: 1px solid #d1d8de; border-radius: 8px; color: #596570; background: #fff; font-size: 9px; font-weight: 800; cursor: pointer; }
.cc-member-space-logo-control small { flex-basis: 100%; color: #929ba4; font-size: 9px; }


.cc-member-space-platform-note {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 13px 15px;
  border: 1px solid #dce4e9;
  border-radius: 11px;
  color: #75808a;
  background: #f7f9fa;
  font-size: 10px;
  line-height: 1.55;
}

.cc-member-space-platform-note strong { flex: 0 0 auto; color: #47535e; }

.cc-member-space-switch-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin-top: 13px;
}

.cc-member-space-switch-grid > label {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: start;
  gap: 10px;
  min-height: 74px;
  padding: 13px;
  border: 1px solid #dce2e7;
  border-radius: 11px;
  background: #f8f9fa;
  cursor: pointer;
}

.cc-member-space-switch-grid input {
  width: 17px;
  height: 17px;
  margin: 1px 0 0;
  accent-color: #df1e38;
}

.cc-member-space-switch-grid span,
.cc-member-space-switch-grid strong,
.cc-member-space-switch-grid small { display: block; }
.cc-member-space-switch-grid strong { color: #394550; font-size: 11px; }
.cc-member-space-switch-grid small { margin-top: 5px; color: #87919a; font-size: 9px; line-height: 1.5; }

.cc-member-space-benefits-card .cc-panel-heading > button {
  min-height: 34px;
  padding: 0 11px;
  border: 1px solid #d1d8de;
  border-radius: 9px;
  color: #4d5964;
  background: #fff;
  font-size: 10px;
  font-weight: 850;
}

.cc-member-space-benefits-note {
  margin: 9px 0 0;
  color: #838e98;
  font-size: 10px;
  line-height: 1.55;
}

.cc-member-space-benefit-list {
  display: grid;
  gap: 9px;
  margin-top: 13px;
}

.cc-member-space-benefit {
  display: grid;
  grid-template-columns: 64px 78px minmax(150px, .8fr) minmax(210px, 1.4fr) auto;
  align-items: end;
  gap: 8px;
  padding: 11px;
  border: 1px solid #dce2e7;
  border-radius: 11px;
  background: #f8f9fa;
}

.cc-member-space-benefit > label {
  display: grid;
  gap: 5px;
  color: #6a7680;
  font-size: 9px;
  font-weight: 750;
}

.cc-member-space-benefit input[type="text"],
.cc-member-space-benefit input:not([type]) {
  width: 100%;
  min-height: 36px;
  padding: 8px 9px;
  border: 1px solid #cfd7de;
  border-radius: 8px;
  color: #26313b;
  background: #fff;
  font: inherit;
  font-size: 10px;
}

.cc-member-space-benefit-enabled {
  display: flex !important;
  min-height: 36px;
  align-items: center;
  gap: 6px !important;
  padding-bottom: 8px;
}

.cc-member-space-benefit-enabled input { width: 16px; height: 16px; accent-color: #df1e38; }
.cc-member-space-benefit-actions { display: flex; gap: 5px; }
.cc-member-space-benefit-actions button {
  min-width: 32px;
  min-height: 36px;
  padding: 0 8px;
  border: 1px solid #d1d8de;
  border-radius: 8px;
  color: #596570;
  background: #fff;
  font-size: 9px;
  font-weight: 800;
}
.cc-member-space-benefit-actions button:last-child { color: #b42338; }
.cc-member-space-benefits-empty {
  padding: 20px;
  border: 1px dashed #d4dce2;
  border-radius: 11px;
  color: #8a949d;
  text-align: center;
}
.cc-member-space-benefits-empty strong,
.cc-member-space-benefits-empty span { display: block; }
.cc-member-space-benefits-empty strong { color: #596570; font-size: 11px; }
.cc-member-space-benefits-empty span { margin-top: 5px; font-size: 9px; }

.cc-member-growth-levels-card .cc-panel-heading > button,
.cc-member-growth-level-footer > button:first-child {
  min-height: 34px;
  padding: 0 12px;
  border: 1px solid #d1d8de;
  border-radius: 9px;
  color: #4d5964;
  background: #fff;
  font-size: 10px;
  font-weight: 850;
}

.cc-member-growth-level-head,
.cc-member-growth-level {
  display: grid;
  grid-template-columns: 84px minmax(180px, 1fr) minmax(160px, .8fr) 150px;
  align-items: center;
  gap: 10px;
}

.cc-member-growth-level-head {
  margin-top: 14px;
  padding: 0 12px 7px;
  color: #87919a;
  font-size: 9px;
  font-weight: 800;
}

.cc-member-growth-level-list { display: grid; gap: 8px; }

.cc-member-growth-level {
  padding: 11px 12px;
  border: 1px solid #dce2e7;
  border-radius: 11px;
  background: #f8f9fa;
}

.cc-member-growth-level-number {
  color: #df1e38;
  font-size: 13px;
  font-weight: 900;
}

.cc-member-growth-level label { display: grid; gap: 5px; }
.cc-member-growth-level label > span { display: none; color: #6a7680; font-size: 9px; font-weight: 750; }
.cc-member-growth-level input {
  width: 100%;
  min-height: 38px;
  padding: 8px 10px;
  border: 1px solid #cfd7de;
  border-radius: 8px;
  color: #26313b;
  background: #fff;
  font: inherit;
  font-size: 10px;
}
.cc-member-growth-level input[readonly] { color: #7f8a94; background: #eef1f3; }
.cc-member-growth-level-actions { display: flex; justify-content: flex-end; gap: 5px; }
.cc-member-growth-level-actions button {
  min-width: 34px;
  min-height: 36px;
  padding: 0 8px;
  border: 1px solid #d1d8de;
  border-radius: 8px;
  color: #596570;
  background: #fff;
  font-size: 9px;
  font-weight: 800;
}
.cc-member-growth-level-actions button:last-child { color: #b42338; }
.cc-member-growth-level-actions button:disabled { cursor: not-allowed; opacity: .35; }

.cc-member-growth-level-footer {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  margin-top: 13px;
}
.cc-member-growth-level-footer > span { color: #7d8892; font-size: 9px; }
.cc-member-growth-level-footer .cc-primary-button { min-width: 150px; }

.cc-member-space-code-card { padding: 18px 20px; }

.cc-member-space-code-body {
  display: grid;
  grid-template-columns: 146px minmax(0, 1fr);
  align-items: center;
  gap: 18px;
  margin-top: 13px;
}

.cc-member-space-code-preview {
  display: grid;
  width: 146px;
  height: 146px;
  place-items: center;
  overflow: hidden;
  padding: 9px;
  border: 1px dashed #cdd6dd;
  border-radius: 14px;
  color: #8a949d;
  background: #f8f9fa;
  font-size: 10px;
  text-align: center;
}

.cc-member-space-code-preview img { width: 100%; height: 100%; object-fit: contain; }
.cc-member-space-code-body > div:last-child > strong { color: #37434e; font-size: 13px; }
.cc-member-space-code-body p { max-width: 540px; margin: 7px 0 5px; color: #6f7a84; font-size: 10px; line-height: 1.6; }
.cc-member-space-code-body small { display: block; color: #929aa2; font-size: 9px; line-height: 1.5; }
.cc-member-space-code-body > div:last-child > div { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 12px; }
.cc-member-space-code-body button { min-height: 36px; padding: 0 13px; border: 1px solid #ced6dd; border-radius: 9px; color: #4b5863; background: #fff; font-size: 10px; font-weight: 800; cursor: pointer; }
.cc-member-space-code-body button:first-child { border-color: #df1e38; color: #fff; background: #df1e38; }
.cc-member-space-code-body button:disabled { cursor: not-allowed; opacity: .5; }

.cc-member-space-code-entry {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 18px 20px;
  border-color: #efc6cc;
  color: inherit;
  background: linear-gradient(135deg, #fff, #fff5f6);
  text-decoration: none;
}

.cc-member-space-code-entry span,
.cc-member-space-code-entry small,
.cc-member-space-code-entry strong,
.cc-member-space-code-entry em {
  display: block;
}

.cc-member-space-code-entry small { color: #c71830; font-size: 9px; font-weight: 850; }
.cc-member-space-code-entry strong { margin-top: 4px; color: #303943; font-size: 15px; }
.cc-member-space-code-entry em { margin-top: 5px; color: #818b95; font-size: 10px; font-style: normal; }
.cc-member-space-code-entry b { color: #c71830; font-size: 11px; white-space: nowrap; }

.cc-store-code-page {
  display: grid;
  gap: 16px;
}

.cc-store-code-hero {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 28px 32px;
  border: 1px solid #eadfe1;
  border-radius: 20px;
  background: linear-gradient(135deg, #fff 58%, #fff1f3);
  box-shadow: var(--cc-shadow);
}

.cc-store-code-hero h2 { margin: 5px 0 7px; color: #29333d; font-size: 28px; }
.cc-store-code-hero p:last-child { margin: 0; color: #76818c; font-size: 12px; }
.cc-store-code-hero > span { padding: 8px 12px; border-radius: 999px; color: #167a53; background: #ecf9f3; font-size: 10px; font-weight: 850; white-space: nowrap; }
.cc-store-code-hero > span[data-status="disabled"] { color: #a45700; background: #fff6e8; }

.cc-store-code-metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.cc-store-code-metrics article {
  padding: 17px 19px;
  border: 1px solid #e1e5e9;
  border-radius: 14px;
  background: #fff;
}

.cc-store-code-metrics span,
.cc-store-code-metrics strong,
.cc-store-code-metrics small { display: block; }
.cc-store-code-metrics span { color: #8b959f; font-size: 9px; }
.cc-store-code-metrics strong { margin-top: 5px; overflow: hidden; color: #303943; font-size: 16px; text-overflow: ellipsis; white-space: nowrap; }
.cc-store-code-metrics small { margin-top: 5px; color: #9aa3ac; font-size: 9px; }

.cc-store-staff-card {
  padding: 22px;
}

.cc-store-staff-intro {
  margin: 12px 0 18px;
  color: #707b86;
  font-size: 12px;
  line-height: 1.7;
}

.cc-store-staff-form {
  display: grid;
  grid-template-columns: minmax(150px, .8fr) minmax(180px, 1fr) minmax(180px, 1fr) auto;
  align-items: end;
  gap: 12px;
  padding: 16px;
  border: 1px solid #e4e8ec;
  border-radius: 14px;
  background: #f7f9fa;
}

.cc-store-staff-form label {
  display: grid;
  min-width: 0;
  gap: 7px;
  color: #68737e;
  font-size: 11px;
  font-weight: 750;
}

.cc-store-staff-form input,
.cc-store-staff-list input,
.cc-store-staff-form select,
.cc-store-staff-list select {
  width: 100%;
  min-width: 0;
  min-height: 42px;
  padding: 0 12px;
  border: 1px solid #dbe1e6;
  border-radius: 10px;
  color: #303943;
  background: #fff;
  font: inherit;
}

.cc-store-staff-form select,
.cc-store-staff-list select {
  appearance: auto;
}

.cc-store-staff-form button,
.cc-store-staff-list button {
  min-height: 42px;
  padding: 0 15px;
  border: 1px solid #d4dbe1;
  border-radius: 10px;
  color: #4d5964;
  background: #fff;
  font-size: 11px;
  font-weight: 850;
  white-space: nowrap;
  cursor: pointer;
}

.cc-store-staff-form button {
  border-color: #df1e38;
  color: #fff;
  background: #df1e38;
}

.cc-store-staff-form button:disabled,
.cc-store-staff-list button:disabled {
  cursor: wait;
  opacity: .5;
}

.cc-store-staff-list {
  display: grid;
  gap: 9px;
  margin-top: 14px;
}

.cc-store-staff-list > article {
  display: grid;
  grid-template-columns: minmax(150px, 1fr) auto minmax(160px, .8fr) auto minmax(150px, .7fr) auto auto;
  align-items: center;
  gap: 10px;
  padding: 13px 14px;
  border: 1px solid #e4e8ec;
  border-radius: 12px;
  background: #fff;
}

.cc-store-staff-list > article.is-disabled {
  background: #f7f8f9;
}

.cc-store-staff-list > article > div {
  display: grid;
  min-width: 0;
  gap: 4px;
}

.cc-store-staff-device-field {
  display: grid;
  min-width: 0;
  gap: 5px;
}

.cc-store-staff-list strong {
  overflow: hidden;
  color: #303943;
  font-size: 13px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cc-store-staff-list span {
  overflow: hidden;
  color: #8b959f;
  font-size: 10px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cc-store-staff-list em {
  padding: 5px 9px;
  border-radius: 999px;
  color: #167a53;
  background: #ecf9f3;
  font-size: 9px;
  font-style: normal;
  font-weight: 850;
  white-space: nowrap;
}

.cc-store-staff-list .is-disabled em {
  color: #7d8790;
  background: #edf0f2;
}

.cc-store-staff-list [data-store-staff-action="toggle"] {
  color: #b42338;
  border-color: #e3a5ae;
}

.cc-store-staff-list .is-disabled [data-store-staff-action="toggle"] {
  color: #167a53;
  border-color: #9fd3bd;
}

.cc-store-staff-empty {
  padding: 22px;
  border: 1px dashed #d8dee4;
  border-radius: 12px;
  color: #89939c;
  background: #fafbfb;
  font-size: 11px;
  text-align: center;
}

.cc-store-code-layout {
  display: grid;
  grid-template-columns: minmax(420px, .9fr) minmax(460px, 1.1fr);
  align-items: start;
  gap: 16px;
}

.cc-store-code-preview-card,
.cc-store-code-status-card,
.cc-store-code-info-card,
.cc-store-code-reset-card { padding: 20px; }

.cc-store-code-preview {
  display: grid;
  place-items: center;
  width: min(100%, 430px);
  aspect-ratio: 1;
  margin: 18px auto 14px;
  padding: 24px;
  border: 1px solid #e1e5e9;
  border-radius: 18px;
  color: #9aa3ac;
  background: #f7f8f9;
  text-align: center;
}

.cc-store-code-preview img { width: 100%; height: 100%; object-fit: contain; }

.cc-store-code-download-note {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
  padding: 11px 13px;
  border-radius: 10px;
  background: #f4f6f7;
}

.cc-store-code-download-note strong { color: #4c5863; font-size: 10px; white-space: nowrap; }
.cc-store-code-download-note span { color: #8a949e; font-size: 9px; line-height: 1.5; text-align: right; }

.cc-store-code-primary-actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 9px;
  margin-top: 12px;
}

.cc-store-code-primary-actions button,
.cc-store-code-status-card > button,
.cc-store-code-reset-card > button,
.cc-store-code-reset-confirm button {
  min-height: 42px;
  padding: 0 14px;
  border: 1px solid #d5dce2;
  border-radius: 10px;
  color: #56626d;
  background: #fff;
  font-size: 10px;
  font-weight: 850;
  cursor: pointer;
}

.cc-store-code-primary-actions button:first-child { border-color: #df1e38; color: #fff; background: #df1e38; }
.cc-store-code-primary-actions button:disabled,
.cc-store-code-status-card > button:disabled,
.cc-store-code-reset-card > button:disabled,
.cc-store-code-reset-confirm button:disabled { cursor: wait; opacity: .5; }

.cc-store-code-management { display: grid; gap: 12px; }
.cc-store-code-status-card > p,
.cc-store-code-reset-card > p { margin: 13px 0; color: #707b86; font-size: 10px; line-height: 1.7; }
.cc-store-code-status-card > button { color: #b42338; border-color: #e3a5ae; }
.cc-store-code-status-card > button[data-action="enable"] { color: #fff; border-color: #168356; background: #168356; }
.cc-store-code-reset-card > button { color: #a45700; border-color: #e7c88c; background: #fffaf0; }

.cc-store-code-info-card dl { display: grid; gap: 0; margin: 12px 0 0; }
.cc-store-code-info-card dl > div { display: grid; grid-template-columns: 130px minmax(0, 1fr); gap: 14px; padding: 11px 2px; border-bottom: 1px solid #edf0f2; }
.cc-store-code-info-card dl > div:last-child { border-bottom: 0; }
.cc-store-code-info-card dt { color: #8c969f; font-size: 9px; }
.cc-store-code-info-card dd { margin: 0; overflow: hidden; color: #37424c; font-family: var(--cc-mono, ui-monospace, monospace); font-size: 10px; font-weight: 750; text-align: right; text-overflow: ellipsis; white-space: nowrap; }

.cc-store-code-reset-confirm {
  display: grid;
  gap: 8px;
  margin-top: 12px;
  padding: 13px;
  border: 1px solid #edc6a2;
  border-radius: 11px;
  background: #fffaf3;
}

.cc-store-code-reset-confirm[hidden] { display: none; }
.cc-store-code-reset-confirm strong { color: #8f4c00; font-size: 11px; }
.cc-store-code-reset-confirm span { color: #8a7357; font-size: 9px; line-height: 1.55; }
.cc-store-code-reset-confirm input { min-height: 40px; padding: 0 11px; border: 1px solid #ddb57f; border-radius: 9px; color: #3d4650; background: #fff; font-size: 10px; }
.cc-store-code-reset-confirm > div { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.cc-store-code-reset-confirm > div button:last-child { color: #fff; border-color: #c71830; background: #c71830; }

.cc-store-code-security {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 13px 16px;
  border: 1px solid #d9e4df;
  border-radius: 12px;
  color: #5f7169;
  background: #f3faf7;
  font-size: 10px;
  line-height: 1.65;
}
.cc-store-code-security strong { flex: 0 0 auto; color: #167a53; }

.cc-store-seat-code-card { padding: 20px; }
.cc-store-seat-code-intro { max-width: 920px; margin: 12px 0 15px; color: #707b86; font-size: 10px; line-height: 1.7; }
.cc-store-seat-code-list { display: grid; gap: 12px; }
.cc-store-seat-code-empty { display: grid; justify-items: center; gap: 6px; padding: 34px 18px; border: 1px dashed #d8dfe5; border-radius: 12px; color: #8d97a0; text-align: center; }
.cc-store-seat-code-empty strong { color: #3b4650; font-size: 12px; }
.cc-store-seat-code-empty span { font-size: 10px; }
.cc-store-seat-code-empty a,
.cc-store-seat-code-empty button { margin-top: 6px; padding: 9px 13px; border: 1px solid #d6dde3; border-radius: 9px; color: #c71830; background: #fff; font-size: 10px; font-weight: 800; text-decoration: none; cursor: pointer; }
.cc-store-seat-code-empty.is-error strong { color: #c71830; }

.cc-store-seat-code-create { overflow: hidden; border: 1px solid #e0e5e9; border-radius: 13px; background: #fff; }
.cc-store-seat-code-create > header { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 13px 15px; }
.cc-store-seat-code-create > header span,
.cc-store-seat-code-create > header strong,
.cc-store-seat-code-create > header small { display: block; }
.cc-store-seat-code-create > header span { color: #c71830; font-size: 8px; font-weight: 850; }
.cc-store-seat-code-create > header strong { margin-top: 2px; color: #303943; font-size: 12px; }
.cc-store-seat-code-create > header small { margin-top: 2px; color: #949da6; font-size: 9px; }
.cc-store-seat-code-create > header button { min-height: 36px; padding: 0 14px; border: 1px solid #df1e38; border-radius: 9px; color: #fff; background: #df1e38; font-size: 9px; font-weight: 850; cursor: pointer; }
.cc-store-seat-code-create.is-open > header button { color: #65717c; border-color: #d4dbe1; background: #fff; }
.cc-store-seat-code-create-form { display: grid; grid-template-columns: 130px minmax(220px, 1fr) 160px auto; align-items: end; gap: 9px; padding: 13px 15px; border-top: 1px solid #e3e7ea; background: #f6f8f9; }
.cc-store-seat-code-create-form label { display: grid; gap: 5px; }
.cc-store-seat-code-create-form label span { color: #65717c; font-size: 8px; font-weight: 800; }
.cc-store-seat-code-create-form input { width: 100%; min-height: 38px; padding: 0 10px; border: 1px solid #d2d9df; border-radius: 8px; color: #303943; background: #fff; font: inherit; font-size: 10px; outline: none; }
.cc-store-seat-code-create-form input:focus { border-color: #df3048; box-shadow: 0 0 0 3px rgb(223 48 72 / 9%); }
.cc-store-seat-code-create-form > button { min-height: 38px; padding: 0 15px; border: 1px solid #df1e38; border-radius: 8px; color: #fff; background: #df1e38; font-size: 9px; font-weight: 850; cursor: pointer; }

.cc-store-seat-code-table { overflow: hidden; border: 1px solid #e0e5e9; border-radius: 13px; background: #fafbfb; }
.cc-store-seat-code-table > header { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 13px 15px; border-bottom: 1px solid #e4e8eb; background: #fff; }
.cc-store-seat-code-table > header > div:first-child,
.cc-store-seat-code-table > header span,
.cc-store-seat-code-table > header strong,
.cc-store-seat-code-table > header small { display: block; }
.cc-store-seat-code-table > header span { color: #c71830; font-size: 8px; font-weight: 850; }
.cc-store-seat-code-table > header strong { margin-top: 2px; color: #303943; font-size: 13px; }
.cc-store-seat-code-table > header small { margin-top: 2px; color: #949da6; font-size: 9px; }
.cc-store-seat-code-table > header button { min-height: 35px; padding: 0 12px; border: 1px solid #df3048; border-radius: 9px; color: #c71830; background: #fff; font-size: 9px; font-weight: 850; cursor: pointer; }
.cc-store-seat-code-table > header button:disabled { cursor: wait; opacity: .5; }
.cc-store-seat-code-header-actions { display: flex; align-items: center; gap: 7px; }
.cc-store-seat-code-header-actions button:first-child { color: #596571; border-color: #d4dbe1; }
.cc-store-seat-code-settings { display: grid; gap: 10px; padding: 13px 15px; border-bottom: 1px solid #e2e6e9; background: #f6f8f9; }
.cc-store-seat-code-settings > label,
.cc-store-seat-code-settings > div > label { display: grid; gap: 5px; }
.cc-store-seat-code-settings > label { max-width: 420px; }
.cc-store-seat-code-settings > div { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; }
.cc-store-seat-code-settings label span { color: #65717c; font-size: 8px; font-weight: 800; }
.cc-store-seat-code-settings input { width: 100%; min-height: 38px; padding: 0 10px; border: 1px solid #d2d9df; border-radius: 8px; color: #303943; background: #fff; font: inherit; font-size: 10px; outline: none; }
.cc-store-seat-code-settings input:focus { border-color: #df3048; box-shadow: 0 0 0 3px rgb(223 48 72 / 9%); }
.cc-store-seat-code-settings footer { display: flex; justify-content: flex-end; gap: 7px; }
.cc-store-seat-code-settings footer button { min-height: 35px; padding: 0 13px; border: 1px solid #d4dbe1; border-radius: 8px; color: #596571; background: #fff; font-size: 9px; font-weight: 850; cursor: pointer; }
.cc-store-seat-code-settings footer button:last-child { color: #fff; border-color: #df1e38; background: #df1e38; }

.cc-store-seat-code-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; padding: 10px; }
.cc-store-seat-code-grid article { display: grid; gap: 10px; padding: 12px; border: 1px solid #e3e7ea; border-radius: 10px; background: #fff; }
.cc-store-seat-code-grid article > div:first-child span,
.cc-store-seat-code-grid article > div:first-child strong,
.cc-store-seat-code-grid article > div:first-child small { display: block; }
.cc-store-seat-code-grid article > div:first-child span { color: #303943; font-size: 11px; font-weight: 850; }
.cc-store-seat-code-grid article > div:first-child strong { margin-top: 4px; color: #68747f; font-family: var(--cc-mono, ui-monospace, monospace); font-size: 9px; }
.cc-store-seat-code-grid article > div:first-child small { margin-top: 4px; color: #98a1aa; font-size: 8px; }
.cc-store-seat-code-grid article > div:last-child { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 6px; }
.cc-store-seat-code-grid button { min-height: 33px; padding: 0 9px; border: 1px solid #d5dce2; border-radius: 8px; color: #5d6974; background: #fff; font-size: 8px; font-weight: 850; cursor: pointer; }
.cc-store-seat-code-grid button:first-child { color: #fff; border-color: #df1e38; background: #df1e38; }

.cc-member-space-module-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  margin-top: 13px;
}

.cc-member-space-module-list label {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) 92px;
  align-items: center;
  gap: 8px;
  min-height: 44px;
  padding: 7px 9px;
  border: 1px solid #e0e5e9;
  border-radius: 9px;
  color: #4d5964;
  background: #f8f9fa;
  font-size: 10px;
  font-weight: 800;
}

.cc-member-space-module-list input { width: 16px; height: 16px; accent-color: #df1e38; }
.cc-member-space-module-list select { min-height: 31px; border: 1px solid #d2d9df; border-radius: 7px; background: #fff; font-size: 9px; }

.cc-member-space-scene {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  gap: 7px;
}

.cc-member-space-scene input { font-family: var(--cc-mono, ui-monospace, monospace); }

.cc-member-space-form-actions {
  position: sticky;
  bottom: 10px;
  z-index: 3;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 14px;
  padding: 13px 15px;
  border: 1px solid #e0e5e9;
  border-radius: 12px;
  background: rgba(255,255,255,.94);
  box-shadow: 0 12px 30px rgba(27, 35, 44, .12);
  backdrop-filter: blur(12px);
}

.cc-member-space-form-actions span { flex: 1; color: #87919b; font-size: 10px; }
.cc-member-space-form-actions button { min-width: 190px; }

@media (min-width: 1680px) {
  .cc-member-admin-layout { grid-template-columns: minmax(520px, .82fr) minmax(720px, 1.18fr); }
}

@media (max-width: 1320px) {
  .cc-scoring-rules-panel form {
    grid-template-columns: repeat(3, minmax(110px, 1fr));
  }

  .cc-scoring-rule-example {
    grid-column: 1 / 3;
  }

  .cc-member-admin-toolbar {
    grid-template-columns: 1fr auto;
  }

  .cc-member-admin-filters {
    grid-column: 1 / -1;
    grid-row: 2;
    overflow-x: auto;
  }

  .cc-member-admin-layout {
    grid-template-columns: minmax(400px, .82fr) minmax(460px, 1.18fr);
  }

  .cc-member-admin-create .cc-performance-form { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .cc-member-admin-create .cc-performance-form .cc-primary-button { grid-column: 1 / -1; }

  .cc-member-admin-row {
    grid-template-columns: 42px minmax(150px, 1fr) repeat(2, minmax(52px, auto)) 14px;
  }

  .cc-member-admin-row-stat:nth-of-type(4) {
    display: none;
  }
}

@media (max-width: 980px) {
  .cc-member-space-layout { grid-template-columns: 1fr; }
  .cc-member-space-preview { position: relative; top: auto; min-height: 520px; }
  .cc-member-admin-metrics {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .cc-member-admin-layout {
    grid-template-columns: 1fr;
  }

  .cc-member-directory-panel,
  .cc-member-admin-detail {
    min-height: 0;
  }

  .cc-member-ledger-filters {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .cc-member-ledger-filters input[name="keyword"] {
    grid-column: 1 / -1;
  }

  .cc-member-data-nav {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .cc-member-coupon-quick-recent { grid-template-columns: 1fr; }

  .cc-store-code-layout { grid-template-columns: 1fr; }
  .cc-store-seat-code-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .cc-store-seat-code-settings > div { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .cc-store-seat-code-create-form { grid-template-columns: 120px minmax(220px, 1fr) 140px; }
  .cc-store-seat-code-create-form > button { grid-column: 1 / -1; }
}

@media (max-width: 640px) {
  .cc-member-space-hero,
  .cc-member-space-status-card,
  .cc-member-space-form-actions { align-items: stretch; flex-direction: column; }
  .cc-member-space-field-grid,
  .cc-member-space-module-list,
  .cc-member-space-switch-grid { grid-template-columns: 1fr; }
  .cc-member-space-field-grid .is-wide { grid-column: auto; }
  .cc-member-space-config-card,
  .cc-member-space-status-card { padding: 14px; }
  .cc-member-space-platform-note { align-items: flex-start; flex-direction: column; gap: 4px; }
  .cc-member-space-form-actions button { width: 100%; min-width: 0; }
  .cc-member-space-scene { grid-template-columns: 1fr 1fr; }
  .cc-member-space-scene input { grid-column: 1 / -1; }
  .cc-member-space-code-body { grid-template-columns: 1fr; }
  .cc-member-space-benefit { grid-template-columns: 64px minmax(0, 1fr); }
  .cc-member-space-benefit .is-description,
  .cc-member-space-benefit-actions { grid-column: 1 / -1; }
  .cc-member-growth-level-head { display: none; }
  .cc-member-growth-level {
    grid-template-columns: 58px minmax(0, 1fr);
    align-items: end;
  }
  .cc-member-growth-level label > span { display: block; }
  .cc-member-growth-level label:nth-of-type(2),
  .cc-member-growth-level-actions { grid-column: 2; }
  .cc-member-growth-level-actions { justify-content: flex-start; }
  .cc-member-growth-level-footer { grid-template-columns: 1fr; }
  .cc-member-growth-level-footer .cc-primary-button { width: 100%; min-width: 0; }
  .cc-member-admin-page {
    gap: 12px;
  }

  .cc-member-admin-hero {
    align-items: stretch;
    flex-direction: column;
    gap: 13px;
  }

  .cc-member-admin-hero .cc-primary-button {
    width: 100%;
  }

  .cc-member-admin-metrics {
    gap: 8px;
  }

  .cc-member-admin-metrics article {
    min-height: 96px;
    padding: 14px;
  }

  .cc-member-admin-metrics strong {
    font-size: 25px;
  }

  .cc-scoring-rules-panel {
    padding: 14px;
  }

  .cc-scoring-rules-panel form {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .cc-scoring-rule-example,
  .cc-scoring-rules-panel form > button {
    grid-column: 1 / -1;
  }

  .cc-member-admin-toolbar {
    grid-template-columns: 1fr;
  }

  .cc-member-data-nav {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .cc-member-data-nav button {
    min-height: 78px;
  }

  .cc-member-coupon-quick-head { align-items: stretch; flex-direction: column; }
  .cc-member-coupon-quick-counts { justify-content: flex-start; flex-wrap: wrap; }
  .cc-member-coupon-quick-counts button { margin-left: auto; }
  .cc-member-coupon-quick-card > form { grid-template-columns: 1fr; }
  .cc-member-coupon-quick-card form button { width: 100%; }

  .cc-member-data-panel-head {
    align-items: flex-start;
  }

  .cc-store-code-hero { align-items: flex-start; flex-direction: column; padding: 20px; }
  .cc-store-code-metrics { grid-template-columns: 1fr; }
  .cc-store-code-primary-actions { grid-template-columns: 1fr; }
  .cc-store-code-download-note { align-items: flex-start; flex-direction: column; }
  .cc-store-code-download-note span { text-align: left; }
  .cc-store-code-info-card dl > div { grid-template-columns: 1fr; gap: 5px; }
  .cc-store-code-info-card dd { text-align: left; }
  .cc-store-staff-card { padding: 16px; }
  .cc-store-staff-form { grid-template-columns: 1fr; }
  .cc-store-staff-form button { width: 100%; }
  .cc-store-staff-list > article { grid-template-columns: minmax(0, 1fr) auto; }
  .cc-store-staff-list > article > label { grid-column: 1 / -1; }
  .cc-store-staff-list > article > button { width: 100%; }
  .cc-store-code-security { flex-direction: column; }
  .cc-store-seat-code-grid { grid-template-columns: 1fr; }
  .cc-store-seat-code-table > header { align-items: flex-start; flex-direction: column; }
  .cc-store-seat-code-header-actions { width: 100%; }
  .cc-store-seat-code-header-actions button { flex: 1; }
  .cc-store-seat-code-settings > div { grid-template-columns: 1fr; }
  .cc-store-seat-code-create > header { align-items: flex-start; flex-direction: column; }
  .cc-store-seat-code-create > header button { width: 100%; }
  .cc-store-seat-code-create-form { grid-template-columns: 1fr; }
  .cc-store-seat-code-create-form > button { grid-column: auto; }

  .cc-member-admin-create .cc-performance-form,
  .cc-member-action-card form,
  .cc-member-share-inline form,
  .cc-member-record-actions { grid-template-columns: 1fr; }

  .cc-member-record-actions {
    align-items: stretch;
    flex-direction: column;
  }

  .cc-member-record-actions button.is-primary,
  .cc-member-points-card form > button {
    width: 100%;
  }

  .cc-member-points-card form {
    grid-template-columns: 1fr 1fr;
  }

  .cc-member-points-amount,
  .cc-member-points-note {
    grid-column: 1 / -1;
  }

  .cc-member-share-inline form button { width: 100%; }

  .cc-member-admin-toolbar form {
    grid-template-columns: 1fr;
  }

  .cc-member-admin-toolbar > button {
    width: 100%;
  }

  .cc-member-admin-filters {
    grid-column: 1;
    grid-row: auto;
  }

  .cc-member-directory-panel,
  .cc-member-admin-detail {
    padding: 14px;
  }

  .cc-member-admin-row {
    grid-template-columns: 42px minmax(0, 1fr) auto 12px;
    gap: 9px;
  }

  .cc-member-admin-row-stat {
    display: none;
  }

  .cc-member-admin-row-stat:nth-of-type(3) {
    display: block;
  }

  .cc-member-admin-profile-meta,
  .cc-member-admin-career {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .cc-member-admin-career article:last-child {
    grid-column: 1 / -1;
  }

  .cc-member-admin-history > article {
    grid-template-columns: 64px minmax(0, 1fr);
  }

  .cc-member-admin-history article em {
    grid-column: 2;
  }

  .cc-member-admin-history > article:has(.cc-member-record-row-actions) {
    grid-template-columns: 64px minmax(0, 1fr);
  }

  .cc-member-record-row-actions,
  .cc-member-record-editor {
    grid-column: 2;
  }

  .cc-member-profile-editor form,
  .cc-member-record-editor,
  .cc-member-ledger-filters,
  .cc-member-reversal-form {
    grid-template-columns: 1fr;
  }

  .cc-member-ledger-filters input[name="keyword"] {
    grid-column: auto;
  }
}

@media (max-width: 760px) {
  .cc-settlement-editor { padding: 14px; }
  .cc-settlement-editor-head { align-items: stretch; flex-direction: column; }
  .cc-settlement-editor-head label { grid-template-columns: 1fr; }
  .cc-settlement-editor-labels { display: none; }
  .cc-settlement-editor-row { grid-template-columns: minmax(0, 1fr) minmax(90px, .35fr); }
  .cc-settlement-editor-row select { grid-column: 1 / -1; }
  .cc-settlement-editor-row button { grid-column: 1 / -1; }
  .cc-settlement-editor-actions { align-items: stretch; flex-direction: column; }
  .cc-settlement-editor-actions > span { order: -1; }
}

/* Console layout v7: keep the situation column compact and let operations lead. */
@media (min-width: 1181px) {
  .cc-live-workbench {
    grid-template-columns: minmax(380px, .68fr) minmax(700px, 1.32fr);
    align-items: start;
    gap: 18px;
  }

  .cc-situation-grid {
    align-self: start;
    align-content: start;
    gap: 12px;
  }

  .cc-situation-grid .cc-timer-card {
    min-height: 0;
    padding: 18px 22px 19px;
    border-radius: 16px;
  }

  .cc-situation-grid .cc-clock-wrap {
    min-height: 126px;
  }

  .cc-situation-grid .cc-clock-wrap p {
    margin-bottom: 5px;
    font-size: 10px;
  }

  .cc-situation-grid .cc-clock {
    font-size: clamp(62px, 4.7vw, 82px);
  }

  .cc-situation-grid .cc-clock-wrap small {
    margin-top: 8px;
  }

  .cc-situation-grid .cc-progress-label {
    margin-bottom: 7px;
  }

  .cc-blind-stack {
    gap: 12px;
  }

  .cc-blind-stack .cc-blind-card {
    min-height: 204px;
    padding: 16px 17px;
    border-radius: 15px;
  }

  .cc-blind-stack .cc-blind-values {
    min-height: 94px;
  }

  .cc-blind-stack .cc-blind-values strong {
    font-size: clamp(23px, 1.7vw, 31px);
  }

  .cc-blind-stack .cc-ante-row {
    padding-top: 9px;
  }

  .cc-blind-stack .cc-next-summary {
    gap: 5px;
    padding-top: 8px;
  }

  .cc-blind-stack .cc-next-summary div {
    padding-bottom: 7px;
  }

  .cc-blind-stack .cc-next-summary strong {
    font-size: clamp(17px, 1.2vw, 22px);
  }

  .cc-blind-stack .cc-next-blind > p {
    min-height: 0;
    margin-top: 7px;
    line-height: 1.4;
  }

  .cc-situation-grid .cc-secondary-status {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
  }

  .cc-situation-grid .cc-secondary-status article {
    min-height: 68px;
    padding: 11px 14px;
    border-radius: 13px;
  }

  .cc-situation-grid .cc-secondary-status strong {
    font-size: 17px;
  }

  .cc-situation-grid .cc-secondary-status small {
    max-width: 92px;
  }

  .cc-operations-panel {
    min-height: 0;
    padding: 19px 20px;
    border-radius: 17px;
  }
}

@media (min-width: 1181px) and (max-width: 1450px) {
  .cc-live-workbench {
    grid-template-columns: minmax(360px, .72fr) minmax(660px, 1.28fr);
  }

  .cc-situation-grid .cc-timer-card {
    padding-inline: 19px;
  }

  .cc-situation-grid .cc-clock {
    font-size: clamp(58px, 5vw, 74px);
  }

  .cc-blind-stack .cc-blind-card {
    min-height: 194px;
    padding-inline: 14px;
  }
}

@media (min-width: 1181px) and (max-width: 1600px) {
  .cc-operations-panel .cc-stack-stat-card {
    grid-template-columns: minmax(130px, .75fr) minmax(130px, .72fr) minmax(210px, 1fr);
  }

  .cc-operations-panel .cc-stack-summary {
    min-width: 0;
  }

  .cc-operations-panel .cc-stack-summary strong {
    font-size: clamp(22px, 1.8vw, 28px);
  }

  .cc-operations-panel .cc-quick-actions,
  .cc-operations-panel .cc-quick-actions button {
    min-width: 0;
  }

  .cc-operations-panel .cc-quick-actions button {
    padding-inline: 8px;
  }

  .cc-logo-editor {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 900px) {
  .cc-situation-grid .cc-secondary-status {
    display: none;
  }
}

/* Phase 3: one account controls several independent tournaments. */
.cc-tournament-switcher {
  margin-bottom: 18px;
  padding: 17px 18px;
  border: 1px solid #d9dee7;
  border-radius: 18px;
  background: rgba(255, 255, 255, .94);
  box-shadow: 0 12px 30px rgba(25, 35, 50, .06);
}

.cc-tournament-switcher-heading {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 22px;
  margin-bottom: 13px;
}

.cc-tournament-switcher-heading p {
  margin: 0 0 5px;
  color: #e51d3c;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .12em;
}

.cc-tournament-switcher-heading h2 {
  margin: 0;
  color: #202733;
  font-size: 22px;
}

.cc-tournament-switcher-heading span {
  display: block;
  margin-top: 6px;
  color: #737e8d;
  font-size: 13px;
}

#cc-tournament-create-form {
  display: flex;
  gap: 9px;
  flex: 0 1 430px;
}

#cc-tournament-create-form input,
.cc-tournament-card input {
  min-width: 0;
  height: 36px;
  padding: 0 11px;
  border: 1px solid #cfd6df;
  border-radius: 10px;
  background: #fff;
  color: #202733;
  font: inherit;
}

#cc-tournament-create-form input { flex: 1; }

#cc-tournament-create-form button,
.cc-tournament-card-actions button,
.cc-tournament-card-actions a {
  min-height: 34px;
  padding: 0 10px;
  border: 1px solid #cfd6df;
  border-radius: 9px;
  background: #fff;
  color: #252d39;
  font: inherit;
  font-size: 12px;
  font-weight: 700;
  text-decoration: none;
  cursor: pointer;
}

#cc-tournament-create-form button,
.cc-tournament-card-actions .is-primary {
  border-color: #e51d3c;
  background: #e51d3c;
  color: #fff;
}

.cc-tournament-list {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 330px));
  gap: 12px;
  justify-content: start;
}

.cc-tournament-card {
  min-width: 0;
  padding: 12px;
  border: 1px solid #d9dee7;
  border-radius: 13px;
  background: #f8fafc;
  cursor: pointer;
  transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease, background .16s ease;
}

.cc-tournament-card:hover {
  border-color: #f08a99;
  background: #fff;
  box-shadow: 0 8px 20px rgba(32, 39, 51, .08);
  transform: translateY(-1px);
}

.cc-tournament-card:focus-visible {
  outline: 3px solid rgba(229, 29, 60, .2);
  outline-offset: 2px;
}

.cc-tournament-card.is-active {
  border-color: #f13b55;
  box-shadow: inset 0 3px #e51d3c, 0 8px 22px rgba(229, 29, 60, .08);
  background: #fffafb;
  cursor: default;
  transform: none;
}

.cc-tournament-card-top,
.cc-tournament-card-stats,
.cc-tournament-card-actions {
  display: flex;
  align-items: center;
  gap: 8px;
}

.cc-tournament-card-top {
  justify-content: space-between;
  margin-bottom: 7px;
  color: #687383;
  font-size: 12px;
  font-weight: 700;
}

.cc-tournament-card-top em {
  padding: 3px 7px;
  border-radius: 999px;
  background: #eef1f5;
  color: #6c7583;
  font-style: normal;
}

.cc-tournament-card-top em.is-running {
  background: #e6f7ee;
  color: #158a55;
}

.cc-tournament-card-name {
  display: block;
  min-height: 36px;
  color: #202733;
  font-size: 18px;
  font-weight: 800;
  line-height: 1.4;
}

.cc-tournament-card-clock {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 10px;
  margin: 9px 0 7px;
}

.cc-tournament-card-clock strong {
  color: #171e29;
  font-size: 27px;
  font-variant-numeric: tabular-nums;
  letter-spacing: -.04em;
}

.cc-tournament-card-clock span {
  color: #697485;
  font-size: 12px;
  text-align: right;
}

.cc-tournament-card-stats {
  justify-content: space-between;
  padding: 7px 0;
  border-top: 1px solid #e4e8ee;
  color: #717b89;
  font-size: 12px;
}

.cc-tournament-card-stats b { color: #202733; font-size: 14px; }

.cc-tournament-tv-area {
  margin-top: 4px;
  padding: 8px;
  border: 1px solid #e2e7ed;
  border-radius: 10px;
  background: #fff;
  cursor: default;
}

.cc-tournament-tv-summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}

.cc-tournament-tv-summary > div {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.cc-tournament-tv-summary b {
  color: #687383;
  font-size: 11px;
}

.cc-tournament-tv-summary > div > span {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 5px;
}

.cc-tournament-tv-chip {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  max-width: 130px;
  padding: 3px 7px;
  border-radius: 999px;
  background: #f0f3f7;
  color: #4f5a69;
  font-size: 11px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cc-tournament-tv-chip i,
.cc-tournament-tv-option strong i {
  width: 7px;
  height: 7px;
  flex: 0 0 7px;
  border-radius: 50%;
  background: #9da6b2;
}

.cc-tournament-tv-chip.is-online i,
.cc-tournament-tv-option strong i.is-online { background: #1ba66a; }

.cc-tournament-tv-empty {
  color: #8a94a2;
  font-size: 11px;
}

.cc-tournament-tv-summary button,
.cc-tournament-tv-option button,
.cc-tournament-tv-panel-actions button {
  min-height: 30px;
  padding: 0 9px;
  border: 1px solid #cfd6df;
  border-radius: 8px;
  background: #fff;
  color: #313a47;
  font: inherit;
  font-size: 11px;
  font-weight: 750;
  cursor: pointer;
  white-space: nowrap;
}

.cc-tournament-tv-summary button {
  border-color: #f0a5af;
  color: #d51e38;
}

.cc-tournament-tv-panel {
  display: grid;
  gap: 6px;
  margin-top: 8px;
  padding-top: 8px;
  border-top: 1px solid #e6eaf0;
}

.cc-tournament-tv-panel > p {
  margin: 2px 0;
  color: #727d8b;
  font-size: 11px;
  line-height: 1.5;
}

.cc-tournament-tv-option {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 7px;
  border-radius: 8px;
  background: #f7f9fb;
}

.cc-tournament-tv-option > div {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.cc-tournament-tv-option > .cc-tournament-tv-option-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 5px;
}

.cc-tournament-tv-option strong {
  display: flex;
  align-items: center;
  gap: 6px;
  min-width: 0;
  color: #252d39;
  font-size: 12px;
}

.cc-tournament-tv-option small {
  color: #7b8593;
  font-size: 10px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cc-tournament-tv-option button:disabled {
  border-color: #bfe5d2;
  background: #e8f7ef;
  color: #168756;
  cursor: default;
}

.cc-tournament-tv-option-actions a {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  padding: 0 9px;
  border: 1px solid #cfd6df;
  border-radius: 8px;
  background: #fff;
  color: #313a47;
  font-size: 11px;
  font-weight: 750;
  text-decoration: none;
  white-space: nowrap;
}

.cc-tournament-tv-option button.is-muted {
  border-color: #e0e5eb;
  background: #f4f6f8;
  color: #697485;
}

.cc-tournament-tv-panel-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 6px;
  margin-top: 2px;
}

@media (max-width: 560px) {
  .cc-tournament-tv-summary,
  .cc-tournament-tv-option {
    align-items: stretch;
    flex-direction: column;
  }

  .cc-tournament-tv-summary button,
  .cc-tournament-tv-option button {
    width: 100%;
  }

  .cc-tournament-tv-panel-actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }
}

.cc-tournament-card-actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  margin-top: 7px;
}

.cc-tournament-card-actions > * {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.cc-tournament-card-actions button:disabled {
  opacity: .6;
  cursor: default;
}

.cc-tournament-card-actions .is-danger { color: #d31c37; }

.cc-tournament-more {
  margin-top: 7px;
  border-top: 1px solid #e5e9ee;
  color: #737e8d;
  font-size: 11px;
}

.cc-tournament-more summary {
  width: max-content;
  margin: 7px 0 0 auto;
  padding: 3px 0;
  cursor: pointer;
  font-weight: 750;
  list-style: none;
}

.cc-tournament-more summary::-webkit-details-marker { display: none; }

.cc-tournament-more > div {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  gap: 6px;
  margin-top: 5px;
}

.cc-tournament-more button {
  min-height: 36px;
  padding: 0 10px;
  border: 1px solid #cfd6df;
  border-radius: 9px;
  background: #fff;
  color: #252d39;
  font: inherit;
  font-weight: 750;
  cursor: pointer;
}

.cc-tournament-more button.is-danger { color: #d31c37; }
.cc-tournament-empty { grid-column: 1 / -1; padding: 25px; text-align: center; color: #747f8e; }

.cc-tv-routing-dock {
  display: grid;
  gap: 12px;
  margin-top: 16px;
  padding-top: 16px;
  border-top: 1px solid #e4e8ee;
}

.cc-tv-routing-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
}

.cc-tv-routing-heading p,
.cc-tv-routing-heading h3,
.cc-tv-routing-heading span {
  margin: 0;
}

.cc-tv-routing-heading p {
  color: #e51d3c;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .1em;
}

.cc-tv-routing-heading h3 {
  margin-top: 3px;
  color: #202733;
  font-size: 17px;
}

.cc-tv-routing-heading span {
  display: block;
  margin-top: 4px;
  color: #737e8d;
  font-size: 12px;
  line-height: 1.55;
}

.cc-tv-routing-heading-actions {
  display: flex;
  align-items: center;
  gap: 9px;
  flex: 0 0 auto;
}

.cc-tv-routing-heading-actions strong {
  padding: 7px 10px;
  border-radius: 999px;
  background: #e8f7ef;
  color: #168756;
  font-size: 12px;
  white-space: nowrap;
}

.cc-tv-routing-heading-actions button,
.cc-tv-quick-bind-form button,
.cc-tv-routing-item button {
  min-height: 36px;
  padding: 0 13px;
  border: 1px solid #cfd6df;
  border-radius: 10px;
  background: #fff;
  color: #252d39;
  font: inherit;
  font-size: 12px;
  font-weight: 750;
  cursor: pointer;
}

.cc-tv-quick-bind-form {
  display: grid;
  grid-template-columns: minmax(260px, 1fr) auto;
  align-items: end;
  gap: 10px;
  padding: 11px;
  border: 1px solid #e1e6ed;
  border-radius: 12px;
  background: #f7f9fc;
}

.cc-tv-quick-bind-form label,
.cc-tv-routing-item label {
  display: grid;
  gap: 5px;
  min-width: 0;
}

.cc-tv-quick-bind-form label span,
.cc-tv-routing-item label span {
  color: #697485;
  font-size: 11px;
  font-weight: 700;
}

.cc-tv-quick-bind-form input,
.cc-tv-routing-item select {
  width: 100%;
  min-width: 0;
  height: 38px;
  padding: 0 11px;
  border: 1px solid #cfd6df;
  border-radius: 9px;
  background: #fff;
  color: #202733;
  font: inherit;
  font-size: 13px;
}

.cc-tv-quick-bind-form button {
  border-color: #e51d3c;
  background: #e51d3c;
  color: #fff;
}

.cc-tv-quick-bind-form :is(input, button):disabled,
#cc-tv-bind-form :is(input, button):disabled {
  cursor: not-allowed;
  opacity: .58;
}

.cc-tv-quota {
  display: grid;
  gap: 8px;
}

.cc-tv-quota:empty { display: none; }

.cc-tv-quota-summary {
  display: grid;
  grid-template-columns: minmax(210px, 1fr) minmax(120px, .7fr) auto;
  align-items: center;
  gap: 14px;
  padding: 12px 14px;
  border: 1px solid #dfe6ee;
  border-radius: 12px;
  background: #f8fafc;
}

.cc-tv-quota-summary > div:first-child {
  display: grid;
  gap: 2px;
}

.cc-tv-quota-summary span,
.cc-tv-quota-summary small {
  color: #718096;
  font-size: 11px;
}

.cc-tv-quota-summary strong {
  color: #172033;
  font-size: 15px;
}

.cc-tv-quota-meter {
  height: 7px;
  overflow: hidden;
  border-radius: 999px;
  background: #e4eaf1;
}

.cc-tv-quota-meter i {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: #22a06b;
}

.cc-tv-quota-summary.is-full .cc-tv-quota-meter i,
.cc-tv-quota-summary.is-over .cc-tv-quota-meter i { background: #f2384f; }

.cc-tv-quota-summary > button,
.cc-tv-addon-payment button {
  min-height: 38px;
  padding: 0 14px;
  border: 1px solid #f2384f;
  border-radius: 10px;
  background: #fff;
  color: #d9213c;
  font: inherit;
  font-size: 12px;
  font-weight: 800;
  cursor: pointer;
  white-space: nowrap;
}

.cc-tv-quota-summary > button:disabled {
  border-color: #d7dee7;
  color: #8a95a5;
  cursor: not-allowed;
}

.cc-tv-quota-warning {
  margin: 0;
  padding: 9px 12px;
  border-radius: 9px;
  background: #fff1f3;
  color: #bd1833;
  font-size: 12px;
}

.cc-tv-addon-payment {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 14px;
  border: 1px solid #bfe6d2;
  border-radius: 12px;
  background: #f1fbf6;
}

.cc-tv-addon-payment > div {
  display: grid;
  gap: 5px;
}

.cc-tv-addon-payment strong { color: #172033; font-size: 14px; }
.cc-tv-addon-payment span,
.cc-tv-addon-payment small { color: #617084; font-size: 11px; }
.cc-tv-addon-payment button { justify-self: start; margin-top: 4px; }
.cc-tv-addon-payment img { width: 116px; height: 116px; border-radius: 8px; background: #fff; }

.cc-tv-routing-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(360px, 1fr));
  gap: 10px;
}

.cc-tv-routing-item {
  display: grid;
  grid-template-columns: minmax(150px, .72fr) minmax(180px, 1fr) auto;
  align-items: end;
  gap: 11px;
  padding: 11px;
  border: 1px solid #dde3ea;
  border-radius: 12px;
  background: #fff;
}

.cc-tv-routing-item.is-quota-blocked,
.cc-device-item.is-quota-blocked {
  border-color: #f2b7c0;
  background: #fff8f9;
}

.cc-tv-routing-item button:disabled,
.cc-device-item button:disabled {
  cursor: not-allowed;
  opacity: .55;
}

.cc-tv-routing-device {
  display: flex;
  align-items: center;
  gap: 9px;
  min-width: 0;
  align-self: center;
}

.cc-tv-routing-device > span {
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  border-radius: 10px;
  background: #edf1f5;
  color: #687383;
  font-size: 11px;
  font-weight: 800;
}

.cc-tv-routing-device > span.is-online {
  background: #e3f6ec;
  color: #118555;
}

.cc-tv-routing-device div {
  min-width: 0;
}

.cc-tv-routing-device strong,
.cc-tv-routing-device small {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cc-tv-routing-device strong {
  color: #202733;
  font-size: 13px;
}

.cc-tv-routing-device small {
  margin-top: 3px;
  color: #7a8491;
  font-size: 10px;
}

.cc-tv-routing-item button {
  border-color: #f1a2ae;
  color: #d91e39;
}

.cc-tv-routing-actions {
  display: flex;
  align-items: center;
  gap: 6px;
}

.cc-tv-routing-actions a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 36px;
  padding: 0 11px;
  border: 1px solid #cfd6df;
  border-radius: 10px;
  background: #fff;
  color: #252d39;
  font-size: 12px;
  font-weight: 750;
  text-decoration: none;
  white-space: nowrap;
}

.cc-tv-routing-state:empty {
  display: none;
}

.cc-tv-routing-state .cc-state-message {
  margin: 0;
}

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

@media (max-width: 1280px) {
  .cc-tournament-list { grid-template-columns: repeat(auto-fill, minmax(270px, 320px)); }
}

@media (max-width: 900px) {
  .cc-tournament-switcher { padding: 16px; border-radius: 15px; }
  .cc-tournament-switcher-heading { align-items: stretch; flex-direction: column; }
  #cc-tournament-create-form { flex-basis: auto; }
  .cc-tournament-list { grid-template-columns: 1fr; }
  .cc-tv-routing-heading { align-items: flex-start; flex-direction: column; }
  .cc-tv-routing-list { grid-template-columns: 1fr; }
  .cc-device-fields { grid-template-columns: 1fr; }
}

@media (max-width: 560px) {
  #cc-tournament-create-form { flex-direction: column; }
  .cc-tournament-card-clock strong { font-size: 25px; }
  .cc-tournament-card-actions { grid-template-columns: 1fr; }
  .cc-tournament-more > div { grid-template-columns: 1fr; }
  .cc-tv-routing-heading-actions { width: 100%; justify-content: space-between; }
  .cc-tv-quick-bind-form { grid-template-columns: 1fr; }
  .cc-tv-quota-summary { grid-template-columns: 1fr; }
  .cc-tv-addon-payment { align-items: flex-start; }
  .cc-tv-routing-item { grid-template-columns: 1fr; align-items: stretch; }
  .cc-tv-routing-item button { min-height: 40px; }
  .cc-tv-routing-actions { display: grid; grid-template-columns: 1fr 1fr; }
  .cc-tournament-tv-option > .cc-tournament-tv-option-actions { display: grid; grid-template-columns: 1fr; }
}

/* Template editor: keep the common path short and move optional fields out of the way. */
.cc-theme-settings-layout {
  grid-template-columns: minmax(520px, 1.12fr) minmax(420px, .88fr);
  align-items: start;
  gap: 22px;
}

.cc-theme-settings-preview {
  position: sticky;
  top: 96px;
  align-self: start;
}

.cc-theme-settings-editor {
  display: grid;
  gap: 14px;
}

.cc-theme-main-form {
  grid-template-columns: minmax(0, 1fr);
  gap: 14px;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
}

.cc-theme-main-form label {
  gap: 9px;
}

.cc-theme-main-form label > span {
  color: #56616e;
  font-size: 12px;
  font-weight: 750;
}

.cc-theme-main-form input,
.cc-theme-main-form select {
  height: 48px;
  padding: 0 14px;
  border-radius: 10px;
  font-size: 14px;
}

.cc-theme-form-section-heading,
.cc-theme-content-heading {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 12px;
}

.cc-theme-form-section-heading > div,
.cc-theme-content-heading > div {
  display: grid;
  gap: 3px;
}

.cc-theme-form-section-heading small,
.cc-theme-content-heading small {
  color: var(--cc-accent);
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .1em;
}

.cc-theme-form-section-heading strong,
.cc-theme-content-heading strong {
  color: #202832;
  font-size: 16px;
}

.cc-theme-form-section-heading > span,
.cc-theme-content-heading > span {
  color: #7c8691;
  font-size: 10px;
  text-align: right;
}

.cc-theme-save-status:empty {
  display: none;
}

.cc-theme-save-status {
  color: #697482;
  font-weight: 700;
}

.cc-theme-save-status[data-state="saving"] { color: #a66a00; }
.cc-theme-save-status[data-state="success"] { color: #16865a; }
.cc-theme-save-status[data-state="error"] { color: #cf2238; }

.cc-theme-advanced-form .cc-logo-editor {
  display: grid;
  grid-template-columns: 1fr;
  gap: 13px;
  padding: 16px;
  border-color: #d9dee4;
  background: #fbfcfd;
}

.cc-logo-editor-heading {
  display: flex !important;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
}

.cc-logo-editor-heading > div {
  display: grid;
  gap: 4px;
}

.cc-logo-editor-heading strong {
  color: #202832;
  font-size: 14px;
}

.cc-logo-editor-heading span,
.cc-logo-help {
  color: #75808c;
  font-size: 10px;
  line-height: 1.55;
}

.cc-logo-editor-heading em {
  flex: 0 0 auto;
  padding: 5px 9px;
  border-radius: 999px;
  color: #16865a;
  background: #eaf8f1;
  font-size: 9px;
  font-style: normal;
  font-weight: 800;
}

.cc-logo-editor-body {
  display: grid;
  grid-template-columns: 132px minmax(180px, 1fr) 126px;
  align-items: stretch;
  gap: 12px;
}

.cc-logo-editor .cc-logo-preview {
  display: grid;
  grid-template-rows: minmax(66px, 1fr) auto;
  min-height: 102px;
  padding: 9px;
  gap: 5px;
  overflow: hidden;
  border-color: #cdd4db;
  background: #fff;
  text-align: center;
}

.cc-logo-editor .cc-logo-preview img {
  width: 100%;
  height: 66px;
  object-fit: contain;
}

.cc-logo-editor .cc-logo-preview span {
  overflow: hidden;
  color: #65717e;
  font-size: 9px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cc-logo-editor .cc-logo-preview.is-error {
  border-color: #efabb5;
  color: #c6243a;
  background: #fff6f7;
}

.cc-logo-upload-control {
  display: grid;
  align-content: center;
  gap: 8px;
  min-width: 0;
  padding: 13px;
  border: 1px solid #d9dee4;
  border-radius: 10px;
  background: #fff;
}

.cc-logo-file-trigger,
.cc-logo-upload-button {
  display: grid;
  min-height: 42px !important;
  place-items: center;
  border: 1px solid #cbd2da !important;
  border-radius: 9px !important;
  color: #28313b !important;
  background: #fff !important;
  font-size: 11px;
  font-weight: 800;
  cursor: pointer;
}

.cc-logo-upload-control > span {
  overflow: hidden;
  color: #78838f;
  font-size: 9px;
  text-align: center;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cc-logo-upload-button {
  height: auto;
  padding: 12px !important;
  border-color: #e21f3d !important;
  color: #fff !important;
  background: #e21f3d !important;
}

.cc-logo-upload-button:disabled {
  cursor: wait;
  opacity: .62;
}

.cc-logo-file-trigger:hover,
.cc-logo-file-trigger:focus-visible {
  border-color: #e21f3d !important;
  color: #d51c38 !important;
}

/* Floor console: one-screen control for every configured table */
.cc-floor-page {
  display: grid;
  gap: 16px;
}

.cc-floor-hero {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 24px;
  padding: 4px 2px;
}

.cc-floor-hero h2 {
  margin: 5px 0 4px;
  font-size: clamp(28px, 3vw, 42px);
  letter-spacing: -.04em;
}

.cc-floor-hero > div > span {
  color: var(--cc-muted);
  font-size: 14px;
}

.cc-floor-hero-actions button,
.cc-floor-status button,
.cc-floor-empty button {
  min-height: 44px;
  padding: 0 18px;
  border: 1px solid var(--cc-line-strong);
  border-radius: 11px;
  color: var(--cc-text);
  background: #fff;
  font-weight: 800;
}

.cc-floor-hero-actions {
  display: flex;
  align-items: center;
  gap: 10px;
}

.cc-floor-hero-actions button:last-child {
  color: #fff;
  border-color: var(--cc-red);
  background: var(--cc-red);
}

.cc-floor-metrics {
  display: grid;
  grid-template-columns: minmax(190px, 1.35fr) repeat(4, minmax(105px, 1fr));
  gap: 10px;
}

.cc-floor-metrics article {
  min-width: 0;
  padding: 14px 16px;
  border: 1px solid var(--cc-line);
  border-radius: 14px;
  background: #fff;
}

.cc-floor-metrics span,
.cc-floor-metrics strong,
.cc-floor-metrics small {
  display: block;
}

.cc-floor-metrics span {
  color: var(--cc-muted);
  font-size: 11px;
  font-weight: 700;
}

.cc-floor-metrics strong {
  margin-top: 4px;
  overflow: hidden;
  font-size: 24px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cc-floor-metrics small {
  margin-top: 4px;
  color: var(--cc-muted);
  font-size: 10px;
}

.cc-floor-metrics article.is-warning {
  border-color: #e9bd6d;
  background: #fff9ed;
}

.cc-floor-status {
  display: flex;
  min-height: 62px;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 10px 14px 10px 18px;
  border: 1px solid var(--cc-line);
  border-radius: 14px;
  background: #fff;
}

.cc-floor-status > div {
  display: grid;
  grid-template-columns: auto auto 1fr;
  gap: 6px 10px;
  align-items: center;
}

.cc-floor-status > div > span {
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: #a6afb8;
}

.cc-floor-status > div > span.is-live {
  background: #21a66e;
  box-shadow: 0 0 0 5px rgba(33, 166, 110, .12);
}

.cc-floor-status strong { font-size: 14px; }
.cc-floor-status small { color: var(--cc-muted); font-size: 11px; }

.cc-floor-tables-panel {
  padding: 20px;
}

.cc-floor-tables-panel > div {
  display: grid;
  gap: 14px;
}

.cc-floor-table-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.cc-floor-table-grid > .cc-poker-table-card {
  min-width: 0;
  gap: 11px;
  padding: 14px;
}

.cc-floor-table-grid .cc-poker-table-shell {
  min-width: 0;
  padding: 27px 25px;
  overflow: hidden;
}

.cc-floor-table-grid .cc-poker-table-felt {
  width: 100%;
  min-height: 0;
  aspect-ratio: 1.55 / 1;
  border-width: 6px;
}

.cc-floor-table-grid .cc-poker-table-center {
  width: 46%;
  min-width: 76px;
  min-height: 58px;
  padding: 7px;
}

.cc-floor-table-grid .cc-poker-table-center span { font-size: 7px; }
.cc-floor-table-grid .cc-poker-table-center strong { margin-top: 2px; font-size: 11px; }
.cc-floor-table-grid .cc-poker-table-center small { margin-top: 2px; font-size: 8px; }

.cc-floor-table-grid .cc-poker-seat,
.cc-floor-table-grid .cc-poker-table-card.is-dense .cc-poker-seat {
  width: 64px;
  min-height: 42px;
}

.cc-floor-table-grid .cc-poker-seat-main,
.cc-floor-table-grid .cc-poker-table-card.is-dense .cc-poker-seat-main {
  min-height: 42px;
  padding: 4px 6px;
  border-width: 1px;
  border-radius: 9px;
}

.cc-floor-table-grid .cc-poker-seat-main b { font-size: 7px; }
.cc-floor-table-grid .cc-poker-seat-main strong,
.cc-floor-table-grid .cc-poker-table-card.is-dense .cc-poker-seat-main strong { font-size: 9px; }
.cc-floor-table-grid .cc-poker-seat-main small { display: none; }
.cc-floor-table-grid .cc-poker-seat-qr { right: 3px; bottom: 4px; width: 16px; height: 16px; border-radius: 5px; font-size: 8px; }
.cc-floor-table-grid .cc-table-player-actions { min-height: 74px; align-items: stretch; flex-direction: column; }
.cc-floor-table-grid .cc-table-player-action-buttons { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.cc-floor-table-grid .cc-table-player-action-buttons button { min-height: 38px; padding: 0 8px; }
.cc-floor-table-grid .cc-poker-table-card > footer { display: none; }

.cc-floor-empty {
  display: grid;
  min-height: 260px;
  place-content: center;
  justify-items: center;
  padding: 30px;
  border: 1px dashed var(--cc-line-strong);
  border-radius: 16px;
  color: var(--cc-muted);
  background: #fafbfc;
  text-align: center;
}

.cc-floor-empty strong { color: var(--cc-text); font-size: 20px; }
.cc-floor-empty p { max-width: 520px; margin: 8px 0 18px; line-height: 1.7; }

/* 页面职责：今日场次只负责报名与选场；现场控制台负责人员、买入和结算。 */
.cc-floor-operations-panel,
.cc-sng-selection-panel {
  padding: 24px;
}

.cc-floor-operations-panel {
  margin-top: 2px;
}

.cc-sng-current-summary {
  display: grid;
  gap: 18px;
}

.cc-sng-selection-summary {
  display: grid;
  gap: 18px;
  padding: 18px;
  border: 1px solid var(--cc-line);
  border-radius: 16px;
  background: var(--cc-panel-2);
}

.cc-sng-selection-facts {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  overflow: hidden;
  border: 1px solid var(--cc-line);
  border-radius: 14px;
  background: #fff;
}

.cc-sng-selection-facts article {
  display: grid;
  min-width: 0;
  gap: 6px;
  padding: 14px 16px;
  border-right: 1px solid var(--cc-line);
}

.cc-sng-selection-facts article:last-child {
  border-right: 0;
}

.cc-sng-selection-facts span {
  color: var(--cc-muted);
  font-size: 11px;
}

.cc-sng-selection-facts strong {
  overflow: hidden;
  color: var(--cc-text);
  font-size: 15px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cc-sng-selection-facts strong[data-registration="open"] {
  color: var(--cc-green);
}

.cc-sng-selection-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.cc-sng-selection-actions > a,
.cc-sng-selection-actions > button {
  min-height: 42px;
}

.cc-sng-selection-actions > .is-primary {
  border-color: var(--cc-red);
  color: #fff;
  background: var(--cc-red);
}

@media (max-width: 1220px) {
  .cc-theme-settings-layout { grid-template-columns: 1fr; }
  .cc-theme-settings-preview { position: static; }
}

@media (max-width: 720px) {
  .cc-theme-main-form { grid-template-columns: 1fr; padding: 0; }
  .cc-theme-main-form > * { grid-column: 1 !important; }
  .cc-theme-form-section-heading,
  .cc-theme-content-heading { align-items: flex-start; flex-direction: column; }
  .cc-theme-form-section-heading > span,
  .cc-theme-content-heading > span { text-align: left; }
  .cc-logo-editor-body { grid-template-columns: 1fr; }
  .cc-logo-editor .cc-logo-preview { min-height: 120px; }
}

@media (max-width: 1220px) {
  .cc-sng-table-heading { grid-template-columns: 1fr; }
  .cc-sng-table-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .cc-floor-table-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .cc-floor-metrics { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 980px) {
  .cc-sng-table-grid { grid-template-columns: 1fr; }
  .cc-floor-table-grid { grid-template-columns: 1fr; }
  .cc-sng-settlement-summary { grid-template-columns: 1fr 1fr; }
  .cc-sng-settlement-summary button { grid-column: 1 / -1; min-height: 42px; }
}

@media (max-width: 720px) {
  .cc-floor-hero,
  .cc-floor-status { align-items: stretch; flex-direction: column; }
  .cc-floor-hero-actions,
  .cc-floor-hero-actions button,
  .cc-floor-status button { width: 100%; }
  .cc-floor-hero-actions button { flex: 1; }
  .cc-floor-metrics { grid-template-columns: 1fr 1fr; }
  .cc-floor-metrics article:first-child { grid-column: 1 / -1; }
  .cc-floor-tables-panel { padding: 12px; }
  .cc-sng-tables-panel { padding: 16px; }
  .cc-sng-table-heading form { grid-template-columns: 1fr 1fr; }
  .cc-sng-table-heading form input:first-child { grid-column: 1 / -1; }
  .cc-sng-table-grid { grid-template-columns: 1fr; }
  .cc-sng-table-grid > .cc-poker-table-card { padding: 12px; }
  .cc-poker-table-shell { padding: 40px 38px; }
  .cc-poker-table-felt {
    width: 100%;
    min-height: 250px;
    aspect-ratio: auto;
    border-width: 7px;
  }
  .cc-poker-table-center { min-width: 120px; min-height: 88px; }
  .cc-poker-table-center strong { font-size: 14px; }
  .cc-poker-seat,
  .cc-poker-table-card.is-dense .cc-poker-seat { width: 82px; min-height: 58px; }
  .cc-poker-seat-main,
  .cc-poker-table-card.is-dense .cc-poker-seat-main { min-height: 58px; padding: 6px 22px 6px 7px; border-radius: 11px; }
  .cc-poker-seat-main b { font-size: 8px; }
  .cc-poker-seat-main strong,
  .cc-poker-table-card.is-dense .cc-poker-seat-main strong { font-size: 11px; }
  .cc-poker-seat-main small { display: none; }
  .cc-poker-seat-qr { right: 4px; bottom: 5px; width: 20px; height: 20px; }
  .cc-poker-table-card > footer { align-items: flex-start; flex-direction: column; }
  .cc-table-player-actions { align-items: stretch; flex-direction: column; }
  .cc-table-player-action-buttons { display: grid; grid-template-columns: 1fr 1fr; }
  .cc-table-player-action-buttons button { width: 100%; }
  .cc-sng-settlement-summary { grid-template-columns: 1fr; }
  .cc-sng-settlement-summary > div { border-right: 0; border-bottom: 1px solid var(--cc-line); }
  .cc-sng-settlement-summary button { grid-column: auto; min-height: 42px; }
  .cc-sng-seat-picker { grid-template-columns: 1fr; }
  .cc-sng-table-empty { align-items: flex-start; flex-direction: column; }
}

/* 今日场次：每一张卡片独立管理报名、投屏和现场控制。 */

.cc-member-code-panel {
  display: grid;
  gap: 20px;
  padding: 24px;
  border-color: #d8e0ec;
  background: linear-gradient(145deg, #ffffff 0%, #f7f9fc 100%);
}

.cc-member-code-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
}

.cc-member-code-heading p,
.cc-member-code-heading h2,
.cc-member-code-heading span {
  display: block;
  margin: 0;
}

.cc-member-code-heading p {
  color: #b42338;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .15em;
}

.cc-member-code-heading h2 {
  margin-top: 5px;
  color: #172033;
  font-size: 23px;
}

.cc-member-code-heading span {
  margin-top: 6px;
  color: #6c778a;
  font-size: 13px;
}

.cc-member-code-heading > button,
.cc-member-code-session button,
.cc-member-code-camera button {
  min-height: 40px;
  padding: 0 18px;
  color: #273247;
  font-weight: 800;
  background: #fff;
  border: 1px solid #ccd5e2;
  border-radius: 10px;
}

.cc-member-code-form {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: end;
  gap: 12px;
}

.cc-member-code-form label,
.cc-member-code-form label > span {
  display: grid;
  gap: 8px;
}

.cc-member-code-form label > span {
  color: #516076;
  font-size: 12px;
  font-weight: 800;
}

.cc-member-code-form input {
  width: 100%;
  min-height: 46px;
  box-sizing: border-box;
  padding: 0 14px;
  color: #172033;
  font: inherit;
  background: #fff;
  border: 1px solid #cfd8e5;
  border-radius: 11px;
  outline: none;
}

.cc-member-code-form input:focus {
  border-color: #b42338;
  box-shadow: 0 0 0 3px rgba(180, 35, 56, .1);
}

.cc-member-code-form > button {
  min-width: 132px;
  min-height: 46px;
}

.cc-member-code-camera {
  display: grid;
  grid-template-columns: minmax(260px, 440px) 1fr;
  gap: 20px;
  align-items: center;
  padding: 16px;
  background: #101827;
  border-radius: 16px;
}

.cc-member-code-camera[hidden] {
  display: none;
}

.cc-member-code-camera video {
  width: 100%;
  max-height: 280px;
  object-fit: cover;
  background: #060a12;
  border-radius: 12px;
}

.cc-member-code-camera > div {
  display: grid;
  gap: 10px;
  color: #fff;
}

.cc-member-code-camera strong {
  font-size: 18px;
}

.cc-member-code-camera span {
  color: #aeb9ca;
  font-size: 13px;
  line-height: 1.6;
}

.cc-member-code-camera button {
  justify-self: start;
}

.cc-member-code-empty {
  display: grid;
  gap: 5px;
  min-height: 66px;
  padding: 18px 20px;
  color: #6c778a;
  background: #f5f7fa;
  border: 1px dashed #cfd8e5;
  border-radius: 13px;
}

.cc-member-code-empty strong {
  color: #2d394d;
}

.cc-member-code-empty span {
  font-size: 13px;
}

.cc-member-code-empty.is-error {
  color: #a31e32;
  background: #fff4f5;
  border-color: #efb8c0;
}

.cc-member-code-verified {
  overflow: hidden;
  background: #fff;
  border: 1px solid #d8e0ec;
  border-radius: 16px;
  box-shadow: 0 12px 30px rgba(31, 45, 69, .06);
}

.cc-member-code-identity {
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr) auto;
  gap: 14px;
  align-items: center;
  padding: 18px 20px;
  border-bottom: 1px solid #e5eaf1;
}

.cc-member-code-identity > span {
  display: grid;
  width: 48px;
  height: 48px;
  place-items: center;
  color: #fff;
  font-size: 19px;
  font-weight: 900;
  background: #b42338;
  border-radius: 14px;
}

.cc-member-code-identity div {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.cc-member-code-identity small,
.cc-member-code-identity em {
  color: #718096;
  font-size: 12px;
  font-style: normal;
}

.cc-member-code-identity strong {
  overflow: hidden;
  color: #172033;
  font-size: 19px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cc-member-code-identity > b {
  padding: 7px 11px;
  color: #137a48;
  font-size: 12px;
  background: #e9f8f0;
  border-radius: 999px;
}

.cc-member-code-metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1px;
  background: #e5eaf1;
}

.cc-member-code-metrics > div {
  display: grid;
  gap: 4px;
  padding: 17px 20px;
  background: #fff;
}

.cc-member-code-metrics span,
.cc-member-code-metrics small {
  color: #718096;
  font-size: 11px;
}

.cc-member-code-metrics strong {
  color: #172033;
  font-size: 22px;
}

.cc-member-code-session {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 18px 20px;
  background: #f8fafc;
}

.cc-member-code-session > div:first-child {
  display: grid;
  gap: 4px;
}

.cc-member-code-session span {
  color: #718096;
  font-size: 11px;
}

.cc-member-code-session strong {
  color: #273247;
  font-size: 14px;
}

.cc-member-code-session > div:last-child {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
}

.cc-member-code-session button.is-primary {
  color: #fff;
  background: #b42338;
  border-color: #b42338;
}

@media (max-width: 900px) {
  .cc-member-code-heading,
  .cc-member-code-session {
    align-items: stretch;
    flex-direction: column;
  }

  .cc-member-code-form,
  .cc-member-code-camera,
  .cc-member-code-metrics {
    grid-template-columns: 1fr;
  }

  .cc-member-code-session > div:last-child {
    justify-content: flex-start;
  }
}
.cc-sng-list {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: start;
  gap: 16px;
}

.cc-sng-list .cc-sng-session-card {
  gap: 14px;
  padding: 18px;
}

.cc-sng-card-tables {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 9px 12px;
  align-items: start;
  min-height: 34px;
  padding: 10px 12px;
  border-radius: 11px;
  background: var(--cc-panel-2);
}

.cc-sng-card-tables > span {
  padding-top: 4px;
  color: var(--cc-muted);
  font-size: 10px;
  font-weight: 750;
}

.cc-sng-card-tables > div {
  display: flex;
  min-width: 0;
  flex-wrap: wrap;
  gap: 6px;
}

.cc-sng-card-tables strong,
.cc-sng-card-tables em {
  padding: 4px 8px;
  border-radius: 999px;
  color: var(--cc-text);
  background: #fff;
  font-size: 11px;
  font-style: normal;
  font-weight: 750;
}

.cc-sng-card-tables em {
  color: var(--cc-muted);
  font-weight: 650;
}

.cc-sng-card-coupon-rule {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 8px 11px;
  border: 1px solid #ead9b9;
  border-radius: 10px;
  color: #8b7655;
  background: #fffaf0;
  font-size: 9px;
}

.cc-sng-card-coupon-rule strong { color: #82580a; font-size: 10px; }
.cc-sng-card-coupon-rule[data-policy="none"] { border-color: var(--cc-line); color: var(--cc-muted); background: #f7f8f9; }
.cc-sng-card-coupon-rule[data-policy="none"] strong { color: var(--cc-muted); }
.cc-sng-card-coupon-rule[data-policy="required"] { border-color: #e3b04b; background: #fff5dc; }

.cc-sng-card-facts {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.cc-sng-card-facts > span {
  border-right: 1px solid var(--cc-line);
  border-bottom: 1px solid var(--cc-line);
}

.cc-sng-card-facts > span:nth-child(2n) {
  border-right: 0;
}

.cc-sng-card-facts > span:nth-last-child(-n + 2) {
  border-bottom: 0;
}

.cc-sng-card-facts strong[data-registration="open"] {
  color: var(--cc-green);
}

.cc-sng-list-primary-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.cc-sng-list-primary-actions > a,
.cc-sng-list-primary-actions > button {
  width: 100%;
  min-height: 44px;
  padding: 0 10px;
}

.cc-sng-list-primary-actions > .is-primary {
  grid-column: 1 / -1;
  border-color: var(--cc-red);
  color: #fff;
  background: var(--cc-red);
}

.cc-sng-list-primary-actions > button:disabled {
  cursor: not-allowed;
  opacity: .52;
}

.cc-sng-list-secondary-actions {
  display: flex;
  gap: 2px 10px;
  padding-top: 10px;
  border-top: 1px solid var(--cc-line);
}

.cc-sng-list-secondary-actions > a,
.cc-sng-list-secondary-actions > button {
  min-height: 30px;
  padding: 0;
  border: 0;
  border-radius: 0;
  color: var(--cc-muted);
  background: transparent;
  font-size: 11px;
}

.cc-sng-list-secondary-actions > a:hover,
.cc-sng-list-secondary-actions > button:hover {
  color: var(--cc-red);
}

@media (max-width: 1680px) {
  .cc-sng-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 980px) {
  .cc-sng-list { grid-template-columns: 1fr; }
  .cc-sng-selection-facts { grid-template-columns: 1fr 1fr; }
  .cc-sng-selection-facts article:nth-child(2) { border-right: 0; }
  .cc-sng-selection-facts article:nth-child(-n + 2) { border-bottom: 1px solid var(--cc-line); }
}

@media (max-width: 560px) {
  .cc-sng-list-primary-actions { grid-template-columns: 1fr; }
  .cc-sng-list-primary-actions > .is-primary { grid-column: auto; }
  .cc-floor-operations-panel,
  .cc-sng-selection-panel { padding: 14px; }
  .cc-sng-selection-summary { padding: 13px; }
  .cc-sng-selection-facts { grid-template-columns: 1fr; }
  .cc-sng-selection-facts article,
  .cc-sng-selection-facts article:nth-child(2) {
    border-right: 0;
    border-bottom: 1px solid var(--cc-line);
  }
  .cc-sng-selection-facts article:last-child { border-bottom: 0; }
  .cc-sng-selection-actions {
    display: grid;
    grid-template-columns: 1fr;
  }
  .cc-sng-selection-actions > a,
  .cc-sng-selection-actions > button { width: 100%; }
}

/* 现场控制台：桌台图只负责定位座位，所有高频操作集中在固定工作区。 */
.cc-floor-operation-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding-bottom: 16px;
  border-bottom: 1px solid var(--cc-line);
}

.cc-floor-operation-heading > div {
  display: grid;
  min-width: 0;
  gap: 4px;
}

.cc-floor-operation-heading span {
  color: var(--cc-red);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .12em;
}

.cc-floor-operation-heading strong {
  overflow: hidden;
  color: var(--cc-text);
  font-size: 21px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cc-floor-operation-heading > b {
  flex: 0 0 auto;
  padding: 8px 12px;
  border: 1px solid #bde7d3;
  border-radius: 999px;
  color: #14845b;
  background: #effbf6;
  font-size: 12px;
}

.cc-floor-operation-workspace {
  display: grid;
  grid-template-columns: minmax(0, 1.9fr) minmax(260px, .8fr);
  gap: 14px;
  margin-top: 16px;
}

.cc-floor-operation-workspace > section {
  min-width: 0;
}

.cc-floor-focus-panel,
.cc-floor-focus-placeholder,
.cc-floor-queue {
  border: 1px solid var(--cc-line);
  border-radius: 15px;
  background: #fff;
}

.cc-floor-focus-panel {
  display: grid;
  min-height: 138px;
  gap: 13px;
  padding: 16px;
}

.cc-floor-focus-panel > header,
.cc-floor-queue > header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.cc-floor-focus-panel > header > div,
.cc-floor-queue > header > div {
  display: grid;
  min-width: 0;
  gap: 3px;
}

.cc-floor-focus-panel > header span,
.cc-floor-queue > header span {
  color: var(--cc-muted);
  font-size: 11px;
}

.cc-floor-focus-panel > header strong,
.cc-floor-queue > header strong {
  overflow: hidden;
  font-size: 16px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cc-floor-focus-panel > header b {
  flex: 0 0 auto;
  color: var(--cc-red);
  font-size: 12px;
}

.cc-floor-focus-panel .cc-table-player-actions {
  min-height: 0;
  margin: 0;
}

.cc-floor-focus-placeholder {
  display: grid;
  min-height: 138px;
  place-content: center;
  justify-items: center;
  padding: 24px;
  color: var(--cc-muted);
  text-align: center;
}

.cc-floor-focus-placeholder strong {
  color: var(--cc-text);
  font-size: 18px;
}

.cc-floor-focus-placeholder p {
  margin: 7px 0 0;
  line-height: 1.6;
}

.cc-floor-empty-seat-picker {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
}

.cc-floor-empty-seat-picker select,
.cc-floor-empty-seat-picker button {
  min-height: 44px;
}

.cc-floor-empty-seat-picker button {
  border-color: var(--cc-red);
  color: #fff;
  background: var(--cc-red);
}

.cc-floor-focus-note,
.cc-floor-operation-note {
  color: var(--cc-muted);
  font-size: 11px;
  line-height: 1.6;
}

.cc-floor-queue {
  padding: 16px;
}

.cc-floor-queue > header b {
  flex: 0 0 auto;
  color: var(--cc-muted);
  font-size: 12px;
}

.cc-floor-queue-list {
  display: grid;
  max-height: 182px;
  gap: 7px;
  margin-top: 12px;
  overflow: auto;
}

.cc-floor-queue-list button {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  min-height: 40px;
  padding: 0 12px;
  border: 1px solid var(--cc-line);
  border-radius: 10px;
  color: var(--cc-text);
  background: var(--cc-panel-2);
  text-align: left;
}

.cc-floor-queue-list button:hover {
  border-color: #ffb4bd;
  color: var(--cc-red);
  background: #fff6f7;
}

.cc-floor-queue-list button span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cc-floor-queue-list button small {
  flex: 0 0 auto;
  color: var(--cc-muted);
}

.cc-floor-operation-note {
  margin-top: 14px;
  padding: 11px 13px;
  border-radius: 11px;
  background: var(--cc-panel-2);
}

@media (max-width: 980px) {
  .cc-floor-operation-workspace { grid-template-columns: 1fr; }
}

@media (max-width: 720px) {
  .cc-floor-operation-heading { align-items: flex-start; flex-direction: column; }
  .cc-floor-operation-heading > b { align-self: flex-start; }
  .cc-floor-empty-seat-picker { grid-template-columns: 1fr; }
  .cc-floor-empty-seat-picker button { width: 100%; }
}

/* 门店大屏：把现场播报从桌台操作中独立出来，避免店长在比赛控制页寻找设置。 */
.cc-store-display-page {
  display: grid;
  gap: 20px;
}

.cc-store-display-hero {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 24px 28px;
  border: 1px solid var(--cc-line);
  border-radius: 18px;
  background: var(--cc-panel);
  box-shadow: var(--cc-shadow);
}

.cc-store-display-hero h2 {
  margin: 5px 0 7px;
  color: var(--cc-text);
  font-size: clamp(26px, 2.2vw, 36px);
  line-height: 1.1;
}

.cc-store-display-hero span {
  color: var(--cc-muted);
  font-size: 14px;
  line-height: 1.7;
}

.cc-store-display-hero .cc-primary-button {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  min-width: 148px;
  min-height: 48px;
  text-decoration: none;
}

.cc-smart-welcome-access {
  display: grid;
  grid-template-columns: minmax(280px, 1.2fr) minmax(360px, .9fr) auto;
  align-items: center;
  gap: 22px;
  padding: 22px 24px;
  border-color: #dfe5eb;
  background: linear-gradient(135deg, #ffffff 0%, #f7f9fb 100%);
}

.cc-smart-welcome-access[data-state="enabled"] {
  border-color: #addbc9;
  background: linear-gradient(135deg, #f4fbf8 0%, #ffffff 100%);
}

.cc-smart-welcome-access[data-state="disabled"] {
  border-color: #efc9cf;
  background: linear-gradient(135deg, #fff7f8 0%, #ffffff 100%);
}

.cc-smart-welcome-access[data-state="unavailable"] {
  border-color: #ead7a6;
  background: linear-gradient(135deg, #fffaf0 0%, #ffffff 100%);
}

.cc-smart-welcome-access-main {
  display: flex;
  align-items: center;
  gap: 15px;
  min-width: 0;
}

.cc-smart-welcome-access-icon {
  display: grid;
  width: 48px;
  height: 48px;
  flex: 0 0 48px;
  place-items: center;
  border-radius: 15px;
  color: #fff;
  background: #707b88;
  font-size: 17px;
  font-weight: 900;
}

.cc-smart-welcome-access[data-state="enabled"] .cc-smart-welcome-access-icon { background: #168458; }
.cc-smart-welcome-access[data-state="disabled"] .cc-smart-welcome-access-icon { background: #b42338; }
.cc-smart-welcome-access[data-state="unavailable"] .cc-smart-welcome-access-icon { background: #a46100; }

.cc-smart-welcome-access-main > div {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.cc-smart-welcome-access-main small,
.cc-smart-welcome-access-meta small {
  color: var(--cc-muted);
  font-size: 11px;
  font-weight: 800;
}

.cc-smart-welcome-access-main h3 {
  margin: 0;
  color: var(--cc-text);
  font-size: 18px;
}

.cc-smart-welcome-access-main p {
  margin: 0;
  color: var(--cc-muted);
  font-size: 12px;
  line-height: 1.55;
}

.cc-smart-welcome-access-meta {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.cc-smart-welcome-access-meta > span {
  display: grid;
  gap: 4px;
  min-width: 0;
  padding-left: 12px;
  border-left: 1px solid var(--cc-line);
}

.cc-smart-welcome-access-meta strong {
  overflow: hidden;
  color: var(--cc-text);
  font-size: 12px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cc-smart-welcome-access > button {
  min-height: 40px;
  padding: 0 16px;
  border: 1px solid var(--cc-line);
  border-radius: 10px;
  color: var(--cc-text);
  background: #fff;
  font: inherit;
  font-size: 13px;
  font-weight: 850;
  cursor: pointer;
}

.cc-smart-welcome-access > button:disabled { cursor: wait; opacity: .55; }

.cc-store-display-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(330px, .75fr);
  gap: 18px;
  align-items: start;
}

.cc-store-display-settings,
.cc-seat-welcome-preview-card {
  padding: 26px;
}

.cc-seat-welcome-history-card {
  padding: 22px 26px;
}

.cc-seat-welcome-history-card .cc-panel-heading > button {
  min-height: 38px;
  padding: 0 15px;
  border: 1px solid var(--cc-line);
  border-radius: 10px;
  color: var(--cc-text);
  background: #fff;
  font: inherit;
  font-weight: 800;
  cursor: pointer;
}

.cc-seat-welcome-history-card .cc-panel-heading > button:disabled {
  cursor: wait;
  opacity: .55;
}

.cc-seat-welcome-history {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin-top: 16px;
}

.cc-seat-welcome-history-item {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  min-height: 74px;
  padding: 12px 14px;
  border: 1px solid var(--cc-line);
  border-radius: 13px;
  background: #fff;
}

.cc-seat-welcome-history-avatar {
  display: grid;
  width: 42px;
  height: 42px;
  place-items: center;
  border-radius: 12px;
  color: #fff;
  background: #202936;
  font-weight: 900;
}

.cc-seat-welcome-history-main,
.cc-seat-welcome-history-result {
  display: grid;
  gap: 4px;
}

.cc-seat-welcome-history-main strong { color: var(--cc-text); font-size: 14px; }
.cc-seat-welcome-history-main span,
.cc-seat-welcome-history-result > span { color: var(--cc-muted); font-size: 12px; }
.cc-seat-welcome-history-result { justify-items: end; }
.cc-seat-welcome-history-result em {
  padding: 5px 8px;
  border-radius: 999px;
  font-size: 11px;
  font-style: normal;
  font-weight: 900;
}
.cc-seat-welcome-history-result em[data-tone="success"] { color: #087a4d; background: #e8f8f0; }
.cc-seat-welcome-history-result em[data-tone="fallback"] { color: #1767c9; background: #eaf3ff; }
.cc-seat-welcome-history-result em[data-tone="muted"] { color: #a46100; background: #fff4da; }
.cc-seat-welcome-history-result em[data-tone="failed"] { color: #c21f34; background: #ffedf0; }
.cc-seat-welcome-history-result em[data-tone="pending"] { color: #687484; background: #eef1f4; }

.cc-seat-welcome-history-empty {
  grid-column: 1 / -1;
  display: grid;
  justify-items: center;
  gap: 6px;
  padding: 30px 16px;
  border: 1px dashed var(--cc-line);
  border-radius: 13px;
  color: var(--cc-muted);
  text-align: center;
}

.cc-seat-welcome-history-empty strong { color: var(--cc-text); }

.cc-seat-welcome-form {
  display: grid;
  gap: 16px;
  margin-top: 18px;
}

.cc-seat-welcome-switches {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.cc-seat-welcome-voice-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.cc-seat-welcome-voice-grid > :only-child,
.cc-seat-welcome-voice-grid > [hidden] + :last-child {
  grid-column: auto;
}

.cc-cloud-voice-picker {
  display: grid;
  gap: 14px;
  padding: 16px;
  border: 1px solid var(--cc-line);
  border-radius: 15px;
  background: var(--cc-panel-2);
}

.cc-cloud-voice-picker[hidden] {
  display: none;
}

.cc-cloud-voice-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}

.cc-cloud-voice-heading > div {
  display: grid;
  gap: 3px;
}

.cc-cloud-voice-heading strong {
  color: var(--cc-text);
  font-size: 15px;
}

.cc-cloud-voice-heading span,
.cc-cloud-voice-heading em {
  color: var(--cc-muted);
  font-size: 12px;
  font-style: normal;
}

.cc-cloud-voice-heading em {
  padding: 5px 9px;
  border-radius: 999px;
  color: #168458;
  background: #eaf8f1;
  white-space: nowrap;
}

.cc-cloud-voice-list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.cc-cloud-voice-card {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 8px;
  min-width: 0;
  padding: 11px;
  border: 1px solid var(--cc-line);
  border-radius: 13px;
  background: #fff;
  cursor: pointer;
  transition: border-color .16s ease, box-shadow .16s ease, background .16s ease;
}

.cc-cloud-voice-card:hover {
  border-color: #efb1ba;
}

.cc-cloud-voice-card:focus-visible {
  outline: 3px solid rgba(229, 30, 55, .12);
  outline-offset: 2px;
}

.cc-cloud-voice-card.is-selected {
  border-color: var(--cc-red);
  background: #fff7f8;
  box-shadow: 0 0 0 2px rgba(229, 30, 55, .07);
}

.cc-cloud-voice-card > label {
  display: grid;
  grid-template-columns: 40px minmax(0, 1fr) 20px;
  align-items: center;
  gap: 10px;
  min-width: 0;
  cursor: pointer;
}

.cc-cloud-voice-card input {
  position: absolute;
  width: 1px;
  height: 1px;
  opacity: 0;
  pointer-events: none;
}

.cc-cloud-voice-avatar {
  display: grid;
  width: 40px;
  height: 40px;
  place-items: center;
  border-radius: 11px;
  color: #fff;
  background: #172231;
  font-size: 16px;
  font-weight: 800;
}

.cc-cloud-voice-card:nth-child(2) .cc-cloud-voice-avatar {
  background: #2864ad;
}

.cc-cloud-voice-card:nth-child(3) .cc-cloud-voice-avatar {
  background: #a85d1f;
}

.cc-cloud-voice-copy {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.cc-cloud-voice-copy strong {
  color: var(--cc-text);
  font-size: 14px;
}

.cc-cloud-voice-copy small {
  overflow: hidden;
  color: var(--cc-muted);
  font-size: 11px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cc-cloud-voice-check {
  display: grid;
  width: 20px;
  height: 20px;
  place-items: center;
  border-radius: 50%;
  color: transparent;
  background: #eef1f5;
  font-size: 12px;
  font-weight: 900;
}

.cc-cloud-voice-card.is-selected .cc-cloud-voice-check {
  color: #fff;
  background: var(--cc-red);
}

.cc-cloud-voice-card > button {
  min-height: 34px;
  padding: 0 10px;
  border: 1px solid var(--cc-line);
  border-radius: 9px;
  color: var(--cc-text);
  background: #fff;
  font-weight: 700;
}

.cc-cloud-voice-card > button:hover {
  border-color: var(--cc-red);
  color: var(--cc-red);
}

.cc-cloud-voice-style {
  display: grid;
  grid-template-columns: auto repeat(2, minmax(140px, 1fr));
  align-items: stretch;
  gap: 8px;
  margin: 0;
  padding: 0;
  border: 0;
}

.cc-cloud-voice-style legend {
  align-self: center;
  padding: 0 8px 0 0;
  color: var(--cc-text);
  font-size: 13px;
  font-weight: 750;
}

.cc-cloud-voice-style label {
  position: relative;
  display: block;
  cursor: pointer;
}

.cc-cloud-voice-style input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.cc-cloud-voice-style label > span {
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 43px;
  padding: 0 12px;
  border: 1px solid var(--cc-line);
  border-radius: 11px;
  background: #fff;
}

.cc-cloud-voice-style label.is-selected > span {
  border-color: var(--cc-red);
  color: var(--cc-red);
  background: #fff7f8;
}

.cc-cloud-voice-style strong {
  font-size: 13px;
}

.cc-cloud-voice-style small {
  color: var(--cc-muted);
  font-size: 11px;
}

.cc-seat-welcome-switch {
  display: flex;
  align-items: center;
  gap: 12px;
  min-height: 72px;
  padding: 14px 16px;
  border: 1px solid var(--cc-line);
  border-radius: 13px;
  background: var(--cc-panel-2);
  cursor: pointer;
}

.cc-seat-welcome-switch input {
  width: 20px;
  height: 20px;
  accent-color: var(--cc-red);
}

.cc-seat-welcome-switch span,
.cc-seat-welcome-field {
  display: grid;
  gap: 5px;
}

.cc-seat-welcome-switch strong,
.cc-seat-welcome-field > span {
  color: var(--cc-text);
  font-size: 14px;
  font-weight: 750;
}

.cc-seat-welcome-switch small {
  color: var(--cc-muted);
  font-size: 11px;
  line-height: 1.5;
}

.cc-seat-welcome-field select,
.cc-seat-welcome-field textarea {
  width: 100%;
  border: 1px solid var(--cc-line);
  border-radius: 12px;
  color: var(--cc-text);
  background: var(--cc-panel-2);
  font: inherit;
  outline: none;
}

.cc-seat-welcome-field select {
  min-height: 48px;
  padding: 0 14px;
}

.cc-seat-welcome-field textarea {
  min-height: 92px;
  padding: 13px 14px;
  line-height: 1.65;
  resize: vertical;
}

.cc-participant-announcement-heading {
  display: grid;
  gap: 5px;
  margin-top: 4px;
  padding-top: 16px;
  border-top: 1px solid var(--cc-line);
}

.cc-participant-announcement-heading strong {
  color: var(--cc-text);
  font-size: 15px;
}

.cc-participant-announcement-heading span {
  color: var(--cc-muted);
  font-size: 12px;
  line-height: 1.5;
}

.cc-seat-welcome-field select:focus,
.cc-seat-welcome-field textarea:focus {
  border-color: var(--cc-red);
  box-shadow: 0 0 0 3px rgba(229, 30, 55, .09);
}

.cc-seat-welcome-tokens {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  color: var(--cc-muted);
  font-size: 12px;
}

.cc-seat-welcome-tokens button {
  min-height: 34px;
  padding: 0 11px;
  border: 1px solid var(--cc-line);
  border-radius: 9px;
  color: var(--cc-text);
  background: var(--cc-panel-2);
}

.cc-seat-welcome-tokens button:hover {
  border-color: #ffabb5;
  color: var(--cc-red);
  background: #fff5f6;
}

.cc-seat-welcome-save-actions {
  align-items: center;
}

.cc-seat-welcome-save-actions .cc-primary-button {
  justify-self: start;
  min-width: 176px;
  min-height: 46px;
}

.cc-seat-welcome-sample {
  display: flex;
  align-items: center;
  gap: 14px;
  margin: 18px 0 14px;
  padding: 16px;
  border: 1px solid #cfe9dc;
  border-radius: 14px;
  background: #f0faf5;
}

.cc-seat-welcome-avatar {
  display: grid;
  width: 48px;
  height: 48px;
  flex: 0 0 48px;
  place-items: center;
  border-radius: 50%;
  color: #fff;
  background: #179461;
  font-size: 20px;
  font-weight: 800;
}

.cc-seat-welcome-sample div {
  display: grid;
  gap: 3px;
}

.cc-seat-welcome-sample small,
.cc-seat-welcome-sample span {
  color: var(--cc-muted);
  font-size: 11px;
}

.cc-seat-welcome-sample strong {
  color: var(--cc-text);
  font-size: 15px;
}

.cc-seat-welcome-preview-card blockquote {
  min-height: 108px;
  margin: 0 0 12px;
  padding: 22px;
  border: 1px solid var(--cc-line);
  border-left: 4px solid var(--cc-red);
  border-radius: 14px;
  color: var(--cc-text);
  background: var(--cc-panel-2);
  font-size: 21px;
  font-weight: 750;
  line-height: 1.55;
}

.cc-seat-welcome-preview-card blockquote[data-disabled="true"] {
  border-left-color: #aeb7c3;
  color: var(--cc-muted);
}

#cc-seat-welcome-preview {
  width: 100%;
  min-height: 46px;
  border: 1px solid var(--cc-red);
  border-radius: 11px;
  color: var(--cc-red);
  background: #fff7f8;
  font-weight: 750;
}

#cc-seat-welcome-preview:disabled {
  border-color: var(--cc-line);
  color: var(--cc-muted);
  background: var(--cc-panel-2);
}

.cc-seat-welcome-notes {
  display: grid;
  gap: 8px;
  margin-top: 18px;
  padding-top: 16px;
  border-top: 1px solid var(--cc-line);
}

.cc-seat-welcome-notes p {
  margin: 0;
  color: var(--cc-muted);
  font-size: 12px;
  line-height: 1.65;
}

.cc-seat-welcome-notes strong {
  color: var(--cc-text);
}

@media (max-width: 1050px) {
  .cc-store-display-grid { grid-template-columns: 1fr; }
  .cc-smart-welcome-access { grid-template-columns: 1fr auto; }
  .cc-smart-welcome-access-meta { grid-column: 1 / -1; grid-row: 2; }
}

@media (max-width: 1250px) {
  .cc-cloud-voice-list { grid-template-columns: 1fr; }
}

@media (max-width: 720px) {
  .cc-store-display-hero { align-items: stretch; flex-direction: column; }
  .cc-store-display-hero .cc-primary-button { width: 100%; }
  .cc-smart-welcome-access { grid-template-columns: 1fr; padding: 18px; }
  .cc-smart-welcome-access-meta { grid-column: 1; grid-template-columns: 1fr; }
  .cc-smart-welcome-access-meta > span { padding: 9px 0 0; border-top: 1px solid var(--cc-line); border-left: 0; }
  .cc-smart-welcome-access > button { width: 100%; }
  .cc-store-display-settings,
  .cc-seat-welcome-preview-card { padding: 18px; }
  .cc-seat-welcome-switches { grid-template-columns: 1fr; }
  .cc-seat-welcome-voice-grid { grid-template-columns: 1fr; }
  .cc-cloud-voice-heading { align-items: flex-start; flex-direction: column; }
  .cc-cloud-voice-style { grid-template-columns: 1fr; }
  .cc-seat-welcome-save-actions {
    align-items: stretch;
    flex-direction: column;
  }
  .cc-seat-welcome-save-actions .cc-primary-button { width: 100%; }
}

/* 今日场次工作台：选场后按赛前、比赛中、赛后的顺序引导店长。 */
.cc-sng-workbench-heading {
  align-items: flex-start;
}

.cc-sng-workbench-heading > span {
  padding: 7px 10px;
  border: 1px solid #f1d3d8;
  border-radius: 999px;
  color: #a2192f;
  background: #fff7f8;
  font-weight: 800;
}

.cc-sng-workflow {
  display: grid;
  gap: 12px;
  margin: 18px 0;
}

.cc-sng-workflow-empty {
  display: grid;
  min-height: 92px;
  place-content: center;
  gap: 6px;
  padding: 20px;
  border: 1px dashed var(--cc-line-strong);
  border-radius: 14px;
  color: var(--cc-muted);
  background: var(--cc-panel-2);
  text-align: center;
}

.cc-sng-workflow-empty strong { color: var(--cc-text); }

.cc-sng-workflow-steps {
  display: grid;
  grid-template-columns: repeat(5, minmax(150px, 1fr));
  gap: 34px;
  overflow-x: auto;
  padding: 14px 20px;
  border: 1px solid var(--cc-line);
  border-radius: 14px;
  background: #fff;
}

.cc-sng-workflow-steps article {
  position: relative;
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr);
  align-items: center;
  gap: 12px;
  min-width: 150px;
  padding: 14px 6px;
}

.cc-sng-workflow-steps article::after {
  position: absolute;
  top: 50%;
  right: -31px;
  z-index: 1;
  color: #aeb6c1;
  content: "→";
  font-size: 24px;
  font-weight: 400;
  line-height: 1;
  transform: translateY(-50%);
}

.cc-sng-workflow-steps article:last-child::after { display: none; }

.cc-sng-workflow-steps b {
  display: grid;
  width: 42px;
  height: 42px;
  place-items: center;
  border: 1px solid #d7dde5;
  border-radius: 50%;
  color: #7a8595;
  background: #fff;
  font-size: 16px;
  font-weight: 800;
}

.cc-sng-workflow-steps div { display: grid; min-width: 0; gap: 3px; }
.cc-sng-workflow-steps strong { color: var(--cc-text); font-size: 14px; }
.cc-sng-workflow-steps span { overflow: hidden; color: var(--cc-muted); font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }
.cc-sng-workflow-steps span i {
  display: inline-grid;
  width: 16px;
  height: 16px;
  margin-left: 4px;
  place-items: center;
  border-radius: 50%;
  color: #fff;
  background: #22a765;
  font-size: 9px;
  font-style: normal;
}
.cc-sng-workflow-steps article.is-done b { border-color: #cfd5dd; color: #4d5867; }
.cc-sng-workflow-steps article.is-current b { border-color: var(--cc-red); color: #fff; background: var(--cc-red); }
.cc-sng-workflow-steps article.is-current strong { color: #a2192f; }
.cc-sng-workflow-steps article.is-current span { color: var(--cc-red); font-weight: 800; }
.cc-sng-workflow-steps article.is-pending::after { color: #c9ced6; }

.cc-sng-next-step {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: 16px 18px;
  border: 1px solid #efd9dd;
  border-left: 4px solid var(--cc-red);
  border-radius: 12px;
  background: #fffafb;
}

.cc-sng-next-step > div { display: grid; gap: 3px; }
.cc-sng-next-step span { color: #a2192f; font-size: 10px; font-weight: 900; letter-spacing: .08em; }
.cc-sng-next-step strong { color: var(--cc-text); font-size: 15px; }
.cc-sng-next-step small { color: var(--cc-muted); font-size: 11px; line-height: 1.55; }
.cc-sng-next-step > button { flex: 0 0 auto; min-height: 42px; padding: 0 18px; }
.cc-sng-next-step > button.is-primary { border-color: var(--cc-red); color: #fff; background: var(--cc-red); }
.cc-sng-next-step > .cc-sng-next-actions { display: flex; align-items: center; gap: 9px; }
.cc-sng-next-actions button { min-height: 42px; padding: 0 18px; }
.cc-sng-next-actions button.is-primary { border-color: var(--cc-red); color: #fff; background: var(--cc-red); }

.cc-sng-workbench-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.45fr) minmax(360px, .75fr);
  align-items: start;
  gap: 18px;
}

.cc-sng-workbench-layout > .cc-member-code-panel {
  position: sticky;
  top: 18px;
  gap: 16px;
  margin: 0;
  padding: 18px;
  border: 1px solid #d8e0ec;
  border-radius: 16px;
  background: linear-gradient(145deg, #fff 0%, #f7f9fc 100%);
}

.cc-sng-workbench-layout .cc-member-code-heading {
  align-items: flex-start;
}

.cc-sng-workbench-layout .cc-member-code-heading h2 { font-size: 20px; }
.cc-sng-workbench-layout .cc-member-code-heading span { max-width: 420px; font-size: 11px; line-height: 1.55; }
.cc-sng-workbench-layout .cc-member-code-heading > button { min-height: 36px; padding: 0 12px; font-size: 11px; }
.cc-sng-workbench-layout .cc-member-code-form { grid-template-columns: 1fr; }
.cc-sng-workbench-layout .cc-member-code-form > button { width: 100%; }
.cc-sng-workbench-layout .cc-member-code-camera { grid-template-columns: 1fr; }
.cc-sng-workbench-layout .cc-member-code-metrics { grid-template-columns: 1fr; }
.cc-sng-workbench-layout .cc-member-code-session { align-items: stretch; flex-direction: column; }
.cc-sng-workbench-layout .cc-member-code-session > div:last-child { justify-content: flex-start; }

.cc-sng-workbench-roster {
  display: grid;
  gap: 14px;
  padding: 18px;
  border: 1px solid var(--cc-line);
  border-radius: 16px;
  background: #fff;
}

.cc-sng-workbench-section-heading {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 16px;
}

.cc-sng-workbench-section-heading > div { display: grid; gap: 3px; }
.cc-sng-workbench-section-heading span { color: var(--cc-red); font-size: 10px; font-weight: 900; letter-spacing: .08em; }
.cc-sng-workbench-section-heading strong { color: var(--cc-text); font-size: 17px; }
.cc-sng-workbench-section-heading small { color: var(--cc-muted); font-size: 10px; text-align: right; }

.cc-sng-workbench-entry {
  display: grid;
  grid-template-columns: minmax(170px, .8fr) minmax(160px, 1fr) auto auto;
  gap: 8px;
  padding: 12px;
  border-radius: 12px;
  background: var(--cc-panel-2);
}

.cc-sng-workbench-entry select,
.cc-sng-workbench-entry input,
.cc-sng-workbench-entry button {
  min-width: 0;
  min-height: 40px;
  border: 1px solid var(--cc-line-strong);
  border-radius: 9px;
  background: #fff;
}

.cc-sng-workbench-entry select,
.cc-sng-workbench-entry input { padding: 0 10px; color: var(--cc-text); }
.cc-sng-workbench-entry button { padding: 0 12px; color: var(--cc-text); font-weight: 800; }
.cc-sng-workbench-entry button.is-primary { border-color: var(--cc-red); color: #fff; background: var(--cc-red); }

.cc-sng-workbench-anonymous {
  padding: 9px 12px;
  border: 1px solid #eadcae;
  border-radius: 9px;
  color: #795f13;
  background: #fffaf0;
  font-size: 10px;
}

.cc-sng-workbench-roster-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.cc-sng-workbench-roster-grid > section {
  overflow: hidden;
  border: 1px solid var(--cc-line);
  border-radius: 12px;
}

.cc-sng-workbench-roster-grid header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 10px 12px;
  background: var(--cc-panel-2);
}

.cc-sng-workbench-roster-grid header strong { color: var(--cc-text); font-size: 12px; }
.cc-sng-workbench-roster-grid header span { color: var(--cc-muted); font-size: 9px; }
.cc-sng-workbench-roster-grid > section > div { display: grid; }

.cc-sng-workbench-roster-grid article {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 9px;
  min-width: 0;
  padding: 10px 12px;
  border-top: 1px solid var(--cc-line);
}

.cc-sng-workbench-roster-grid article > div:nth-child(2) { display: grid; min-width: 0; gap: 2px; }
.cc-sng-workbench-roster-grid article strong { overflow: hidden; color: var(--cc-text); font-size: 12px; text-overflow: ellipsis; white-space: nowrap; }
.cc-sng-workbench-roster-grid article small { overflow: hidden; color: var(--cc-muted); font-size: 9px; text-overflow: ellipsis; white-space: nowrap; }
.cc-sng-workbench-roster-grid p { margin: 0; padding: 22px 12px; border-top: 1px solid var(--cc-line); color: var(--cc-muted); font-size: 10px; text-align: center; }

.cc-sng-roster-state {
  padding: 4px 7px;
  border-radius: 999px;
  font-size: 8px;
  font-weight: 900;
  white-space: nowrap;
}

.cc-sng-roster-state.is-registered { color: #245b99; background: #edf5ff; }
.cc-sng-roster-state.is-arrived { color: #147347; background: #eaf8f0; }
.cc-sng-roster-state.is-waitlist { color: #8b6212; background: #fff5d9; }
.cc-sng-workbench-row-actions { display: flex; gap: 5px; }
.cc-sng-workbench-row-actions button { min-height: 28px; padding: 0 7px; border: 1px solid var(--cc-line); border-radius: 7px; color: var(--cc-muted); background: #fff; font-size: 8px; font-weight: 800; }
.cc-sng-workbench-row-actions button.is-primary { border-color: #b9ddc7; color: #147347; background: #f1faf5; }

.cc-sng-completed-handoff {
  display: grid;
  gap: 16px;
  padding: 18px;
  border: 1px solid var(--cc-line);
  border-radius: 16px;
  background: #fff;
}

.cc-sng-completed-handoff-action {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 14px 16px;
  border-radius: 12px;
  background: #fff6f7;
}

.cc-sng-completed-handoff-action > div { display: grid; gap: 4px; }
.cc-sng-completed-handoff-action strong { color: var(--cc-text); }
.cc-sng-completed-handoff-action span { color: var(--cc-muted); font-size: 10px; }
.cc-sng-completed-handoff-action button { min-height: 40px; padding: 0 16px; }
.cc-sng-completed-handoff-action button.is-primary { border-color: var(--cc-red); color: #fff; background: var(--cc-red); }

/* 今日场次：一步式创建，空闲与占用桌台分开呈现。 */
.cc-sng-create-form.is-simple {
  gap: 12px;
}

.cc-sng-create-form .cc-sng-create-table-card,
.cc-sng-create-form .cc-sng-create-config-card {
  min-width: 0;
  padding: 16px 18px !important;
  border: 1px solid var(--cc-line) !important;
  border-radius: 15px;
  background: #fff;
}

.cc-sng-table-assignment-heading > div,
.cc-sng-create-config-heading {
  display: grid;
  gap: 4px;
}

.cc-sng-table-assignment-heading > div > strong,
.cc-sng-create-config-heading > strong {
  color: var(--cc-text);
  font-size: 14px;
  font-weight: 850;
}

.cc-sng-table-assignment-heading > div > span,
.cc-sng-create-config-heading > span {
  color: var(--cc-muted);
  font-size: 10px;
}

.cc-sng-create-table-card .cc-sng-table-options {
  grid-template-columns: repeat(auto-fill, minmax(180px, 240px));
}

.cc-sng-create-table-card .cc-sng-table-option {
  min-height: 88px;
  align-content: center;
}

.cc-sng-table-occupied-summary {
  display: flex;
  align-items: flex-start;
  gap: 9px;
  margin-top: 10px;
  padding: 9px 11px;
  border-radius: 10px;
  color: var(--cc-muted);
  background: #f4f5f7;
  font-size: 10px;
  line-height: 1.55;
}

.cc-sng-table-occupied-summary[hidden] { display: none; }
.cc-sng-table-occupied-summary strong { flex: 0 0 auto; color: var(--cc-muted-2); }

.cc-sng-create-config-card.cc-sng-coupon-rule {
  gap: 13px;
  background: #fff;
}

.cc-sng-create-config-fields {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

.cc-sng-create-config-fields label {
  display: grid;
  gap: 6px;
  color: var(--cc-muted-2);
  font-size: 10px;
  font-weight: 750;
}

.cc-sng-create-config-fields select,
.cc-sng-create-config-fields input[type="number"] {
  min-height: 42px;
}

.cc-sng-create-coupon-details {
  padding-top: 2px;
  border-top: 1px solid var(--cc-line);
}

.cc-sng-create-coupon-details summary {
  width: fit-content;
  padding-top: 10px;
  color: var(--cc-muted-2);
  cursor: pointer;
  font-size: 10px;
  font-weight: 800;
}

.cc-sng-create-coupon-details .cc-sng-coupon-template-options { margin-top: 10px; }
.cc-sng-create-coupon-details p { margin: 8px 0 0; color: var(--cc-muted); font-size: 10px; }

.cc-sng-create-submit {
  padding: 13px 16px;
}

.cc-sng-create-submit > button:disabled {
  box-shadow: none;
  cursor: not-allowed;
  opacity: .48;
}

/* 今日场次：紧凑卡片 + 右侧操作抽屉，避免点击后跳到长页面下方。 */
.cc-sng-list {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.cc-sng-list .cc-sng-session-card {
  min-height: 0;
  gap: 12px;
  padding: 16px;
  border-radius: 16px;
  cursor: default;
  transition: transform .16s ease, border-color .16s ease, box-shadow .16s ease;
}

.cc-sng-list .cc-sng-session-card:hover {
  transform: none;
}

.cc-sng-list .cc-sng-session-card.is-current {
  border-color: rgba(228, 35, 61, .42);
  box-shadow: inset 3px 0 0 var(--cc-red);
}

.cc-sng-card-compact-body {
  display: grid;
  grid-template-columns: minmax(120px, .72fr) minmax(0, 1.45fr);
  gap: 14px;
  align-items: stretch;
}

.cc-sng-card-headcount {
  display: grid;
  align-content: center;
  gap: 6px;
  padding: 13px 14px;
  border-radius: 13px;
  background: linear-gradient(145deg, #fff6f7, #fff);
}

.cc-sng-card-headcount > strong {
  color: var(--cc-text);
  font-size: 28px;
  line-height: 1;
}

.cc-sng-card-headcount > strong small { color: var(--cc-muted); font-size: 12px; }
.cc-sng-card-headcount > span { color: var(--cc-muted); font-size: 9px; line-height: 1.5; }

.cc-sng-card-compact-meta {
  display: grid;
  overflow: hidden;
  border: 1px solid var(--cc-line);
  border-radius: 13px;
  background: #fff;
}

.cc-sng-card-compact-meta > span {
  display: grid;
  grid-template-columns: 68px minmax(0, 1fr);
  align-items: center;
  gap: 10px;
  min-width: 0;
  padding: 8px 11px;
  border-bottom: 1px solid var(--cc-line);
}

.cc-sng-card-compact-meta > span:last-child { border-bottom: 0; }
.cc-sng-card-compact-meta small { color: var(--cc-muted); font-size: 9px; }
.cc-sng-card-compact-meta strong { overflow: hidden; color: var(--cc-text); font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }

.cc-sng-card-compact-status {
  display: flex;
  align-items: center;
  min-height: 22px;
}

.cc-sng-card-compact-status > span {
  padding: 4px 8px;
  border-radius: 999px;
  color: var(--cc-muted);
  background: #f2f4f6;
  font-size: 9px;
  font-weight: 800;
}

.cc-sng-card-compact-status > span[data-tone="success"] { color: #147347; background: #eaf8f0; }
.cc-sng-card-compact-status > span[data-tone="warning"] { color: #9a6208; background: #fff5df; }
.cc-sng-card-compact-status > span[data-tone="danger"] { color: #c41f36; background: #fff0f2; }

.cc-sng-card-compact-actions {
  position: relative;
  display: grid;
  grid-template-columns: minmax(150px, 1fr) auto;
  align-items: stretch;
  gap: 8px;
  padding-top: 11px;
  border-top: 1px solid var(--cc-line);
}

.cc-sng-card-compact-actions.is-single { grid-template-columns: 1fr; }

.cc-sng-card-compact-actions > a,
.cc-sng-card-compact-actions > button {
  display: inline-grid;
  min-height: 40px;
  padding: 0 14px;
  place-items: center;
  border: 1px solid var(--cc-line-strong);
  border-radius: 10px;
  color: var(--cc-text);
  background: #fff;
  font: inherit;
  font-size: 10px;
  font-weight: 800;
  text-decoration: none;
  cursor: pointer;
}

.cc-sng-card-compact-actions > .is-primary {
  border-color: var(--cc-red);
  color: #fff;
  background: var(--cc-red);
  box-shadow: 0 8px 18px rgba(228, 35, 61, .16);
}

.cc-sng-card-more {
  position: relative;
  min-width: 96px;
}

.cc-sng-card-more > summary {
  display: flex;
  min-height: 40px;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 0 14px;
  border: 1px solid var(--cc-line-strong);
  border-radius: 10px;
  color: var(--cc-text);
  background: #fff;
  cursor: pointer;
  font-size: 10px;
  font-weight: 800;
  list-style: none;
  user-select: none;
}

.cc-sng-card-more > summary::-webkit-details-marker { display: none; }
.cc-sng-card-more[open] > summary { border-color: rgba(228, 35, 61, .35); color: var(--cc-red); }
.cc-sng-card-more[open] > summary span { transform: rotate(180deg); }

.cc-sng-card-more > div {
  position: absolute;
  z-index: 12;
  right: 0;
  bottom: calc(100% + 8px);
  display: grid;
  min-width: 176px;
  gap: 4px;
  padding: 7px;
  border: 1px solid var(--cc-line);
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 14px 34px rgba(24, 32, 44, .16);
}

.cc-sng-card-more > div > :is(a, button) {
  display: flex;
  min-height: 38px;
  align-items: center;
  padding: 0 12px;
  border: 0;
  border-radius: 8px;
  color: var(--cc-text);
  background: transparent;
  cursor: pointer;
  font: inherit;
  font-size: 11px;
  font-weight: 750;
  text-align: left;
  text-decoration: none;
}

.cc-sng-card-more > div > :is(a, button):hover,
.cc-sng-card-more > div > :is(a, button):focus-visible {
  outline: none;
  color: var(--cc-red);
  background: rgba(228, 35, 61, .06);
}

body.cc-sng-drawer-open { overflow: hidden; }

.cc-sng-workbench-backdrop {
  position: fixed;
  z-index: 300;
  inset: 0;
  border: 0;
  background: rgba(20, 26, 34, .32);
  backdrop-filter: blur(2px);
}

.cc-sng-workbench-backdrop[hidden],
.cc-sng-selection-panel[hidden] { display: none; }

.cc-sng-selection-panel {
  position: fixed;
  z-index: 301;
  top: 14px;
  right: 14px;
  bottom: 14px;
  width: min(900px, calc(100vw - 40px));
  margin: 0;
  overflow-x: hidden;
  overflow-y: auto;
  border-radius: 22px;
  background: #f7f8fa;
  box-shadow: 0 28px 80px rgba(16, 24, 36, .22);
}

.cc-sng-selection-panel .cc-sng-workbench-heading {
  position: sticky;
  z-index: 5;
  top: -24px;
  margin: -24px -24px 18px;
  padding: 20px 24px 16px;
  border-bottom: 1px solid var(--cc-line);
  background: rgba(255, 255, 255, .96);
  backdrop-filter: blur(14px);
}

.cc-sng-workbench-heading-actions {
  display: flex;
  align-items: center;
  gap: 10px;
}

.cc-sng-workbench-heading-actions > span { color: var(--cc-muted); font-size: 10px; }
.cc-sng-workbench-heading-actions > button {
  min-height: 36px;
  padding: 0 13px;
  border: 1px solid var(--cc-line-strong);
  border-radius: 10px;
  color: var(--cc-text);
  background: #fff;
  font: inherit;
  font-size: 10px;
  font-weight: 800;
  cursor: pointer;
}

.cc-sng-selection-panel .cc-sng-workbench-layout { grid-template-columns: 1fr; }
.cc-sng-selection-panel .cc-sng-workbench-layout > .cc-member-code-panel { position: static; }

@media (max-width: 1280px) {
  .cc-sng-create-config-fields { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .cc-sng-workbench-layout { grid-template-columns: 1fr; }
  .cc-sng-workbench-layout > .cc-member-code-panel { position: static; }
  .cc-sng-workbench-layout .cc-member-code-form { grid-template-columns: minmax(0, 1fr) auto; }
  .cc-sng-workbench-layout .cc-member-code-form > button { width: auto; }
  .cc-sng-workbench-layout .cc-member-code-metrics { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 860px) {
  .cc-sng-list { grid-template-columns: 1fr; }
  .cc-sng-card-compact-body { grid-template-columns: 1fr; }
  .cc-sng-card-compact-actions { grid-template-columns: minmax(0, 1fr) auto; }
  .cc-sng-selection-panel { inset: 8px; width: auto; border-radius: 18px; }
  .cc-sng-selection-panel .cc-sng-workbench-heading { align-items: flex-start; flex-direction: column; }
  .cc-sng-workbench-heading-actions { width: 100%; justify-content: space-between; }
  .cc-sng-create-config-fields { grid-template-columns: 1fr; }
  .cc-sng-create-submit { align-items: stretch; flex-direction: column; }
  .cc-sng-create-submit > button { width: 100%; min-width: 0; }
  .cc-sng-workflow-steps { grid-template-columns: repeat(5, minmax(150px, 1fr)); }
  .cc-sng-next-step,
  .cc-sng-workbench-section-heading,
  .cc-sng-completed-handoff-action { align-items: stretch; flex-direction: column; }
  .cc-sng-next-step > button,
  .cc-sng-completed-handoff-action button { width: 100%; }
  .cc-sng-next-step > .cc-sng-next-actions { width: 100%; align-items: stretch; flex-direction: column; }
  .cc-sng-next-actions button { width: 100%; }
  .cc-sng-workbench-entry { grid-template-columns: 1fr 1fr; }
  .cc-sng-workbench-entry select,
  .cc-sng-workbench-entry input { grid-column: 1 / -1; }
  .cc-sng-workbench-roster-grid { grid-template-columns: 1fr; }
  .cc-sng-workbench-section-heading small { text-align: left; }
}

@media (max-width: 560px) {
  .cc-sng-workbench-layout .cc-member-code-form,
  .cc-sng-workbench-layout .cc-member-code-metrics,
  .cc-sng-workbench-entry { grid-template-columns: 1fr; }
  .cc-sng-workbench-entry select,
  .cc-sng-workbench-entry input { grid-column: auto; }
  .cc-sng-workbench-roster-grid article { grid-template-columns: auto minmax(0, 1fr); }
  .cc-sng-workbench-row-actions { grid-column: 1 / -1; }
}
/* 2026-09 member coupon visual system */
:root {
  --color-primary: #ed243f;
  --color-bg: #f5f7fa;
  --color-surface: #ffffff;
  --color-text: #182230;
  --color-muted: #8a94a4;
  --color-border: #e8ecf1;
  --radius-card: 16px;
  --shadow-card: 0 8px 26px rgba(28, 39, 54, .055);
}

.cc-sidebar {
  color: #f7f9fc;
  background: #0d1724;
  box-shadow: 12px 0 34px rgba(13, 23, 36, .14);
}

.cc-brand { min-height: 88px; padding: 18px 24px; border-color: rgba(255,255,255,.09); }
.cc-brand-mark { width: 42px; height: 42px; border: 0; border-radius: 10px; background: linear-gradient(145deg, #ff3d58, #ed1938); font-size: 13px; }
.cc-brand strong { font-size: 17px; letter-spacing: 0; }
.cc-brand small { margin-top: 3px; color: #8793a2; font-size: 9px; letter-spacing: .04em; }
.cc-nav { gap: 3px; padding: 20px 14px; }
.cc-nav a { min-height: 48px; gap: 13px; padding: 0 17px; border: 0; border-radius: 8px; color: #d2d9e2; font-size: 13px; font-weight: 650; }
.cc-nav a .cc-nav-icon { display: grid; width: 21px; height: 21px; flex: 0 0 21px; place-items: center; color: #d8e0e9; font-family: inherit; letter-spacing: 0; }
.cc-nav a .cc-nav-icon svg { width: 20px; height: 20px; }
.cc-nav a .cc-nav-label { color: inherit; font-family: inherit; font-size: inherit; letter-spacing: 0; white-space: nowrap; }
.cc-nav a:hover,
.cc-nav a:focus-visible { border: 0; color: #fff; background: rgba(255,255,255,.06); }
.cc-nav a.is-active { border: 0; color: #fff; background: linear-gradient(90deg, rgba(237,36,63,.24), rgba(255,255,255,.06)); box-shadow: none; }
.cc-nav a.is-active::before { top: 0; bottom: 0; left: -14px; width: 3px; border-radius: 0; background: #ff2e4b; }
.cc-nav a.is-active .cc-nav-icon,
.cc-nav a.is-active .cc-nav-label { color: #fff; }
.cc-sidebar-footer { padding: 14px 16px 20px; border-color: rgba(255,255,255,.09); }
.cc-sidebar-footer > button { display: flex; width: 100%; min-height: 44px; align-items: center; gap: 12px; padding: 0 14px; border: 0; border-radius: 9px; color: #dce3eb; background: transparent; font: inherit; cursor: pointer; }
.cc-sidebar-footer > button:hover { color: #fff; background: rgba(255,255,255,.06); }
.cc-sidebar-footer > button span { font-size: 18px; }
.cc-sidebar-footer > button strong { font-size: 12px; }
.cc-shell.is-sidebar-collapsed .cc-sidebar { width: 76px; }
.cc-shell.is-sidebar-collapsed .cc-main { margin-left: 76px; }
.cc-shell.is-sidebar-collapsed .cc-brand { justify-content: center; padding-inline: 10px; }
.cc-shell.is-sidebar-collapsed .cc-brand > span:last-child,
.cc-shell.is-sidebar-collapsed .cc-nav-label,
.cc-shell.is-sidebar-collapsed .cc-sidebar-footer button strong,
.cc-shell.is-sidebar-collapsed .cc-nav a.is-plan-locked::after { display: none; }
.cc-shell.is-sidebar-collapsed .cc-nav { padding-inline: 10px; }
.cc-shell.is-sidebar-collapsed .cc-nav a { justify-content: center; padding: 0; }
.cc-shell.is-sidebar-collapsed .cc-nav a.is-active::before { left: -10px; }
.cc-shell.is-sidebar-collapsed .cc-sidebar-footer button { justify-content: center; padding: 0; }
.cc-shell.is-sidebar-collapsed .cc-sidebar-footer button span { transform: none; }

.cc-coupon-page-title,
.cc-coupon-store-pill,
.cc-coupon-admin-pill { display: none; }
.cc-shell[data-active-page="member-coupons"] .cc-topbar { min-height: 92px; padding: 14px clamp(22px, 2vw, 36px); border-color: #e4e8ed; background: rgba(255,255,255,.96); }
.cc-shell[data-active-page="member-coupons"] .cc-default-page-title { display: none; }
.cc-shell[data-active-page="member-coupons"] .cc-coupon-page-title { display: block; }
.cc-coupon-page-title h1 { margin: 0; color: var(--color-text); font-size: 22px; letter-spacing: -.02em; }
.cc-coupon-page-title p { margin: 7px 0 0; color: var(--color-muted); font-size: 11px; }
.cc-shell[data-active-page="member-coupons"] .cc-topbar-meta { gap: 11px; flex-wrap: nowrap; }
.cc-shell[data-active-page="member-coupons"] .cc-subscription-pill,
.cc-shell[data-active-page="member-coupons"] .cc-tv-quick-access,
.cc-shell[data-active-page="member-coupons"] .cc-desktop-meta { display: none; }
.cc-shell[data-active-page="member-coupons"] .cc-coupon-store-pill,
.cc-shell[data-active-page="member-coupons"] .cc-coupon-admin-pill { display: flex; min-width: 150px; min-height: 58px; align-items: center; gap: 10px; padding: 8px 13px; border: 1px solid #e3e7ec; border-radius: 12px; background: #fff; box-shadow: 0 3px 12px rgba(28,39,54,.035); }
.cc-coupon-store-pill > span,
.cc-coupon-admin-pill > span { display: grid; width: 34px; height: 34px; flex: 0 0 34px; place-items: center; border-radius: 9px; color: #5f6b7a; background: #f1f4f7; font-size: 11px; font-weight: 850; }
.cc-coupon-admin-pill > span { border-radius: 50%; color: #fff; background: linear-gradient(145deg, #334155, #111827); }
.cc-coupon-store-pill div,
.cc-coupon-admin-pill div { display: grid; min-width: 0; gap: 3px; }
.cc-coupon-store-pill strong,
.cc-coupon-admin-pill strong { overflow: hidden; max-width: 108px; color: var(--color-text); font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }
.cc-coupon-store-pill small,
.cc-coupon-admin-pill small { color: var(--color-muted); font-size: 9px; }
.cc-shell[data-active-page="member-coupons"] .cc-mode-switch,
.cc-shell[data-active-page="member-coupons"] .cc-device-pill { min-width: 150px; min-height: 58px; border-color: #e3e7ec; border-radius: 12px; background: #fff; box-shadow: 0 3px 12px rgba(28,39,54,.035); }
.cc-shell[data-active-page="member-coupons"] .cc-mode-switch { padding: 9px 14px; text-align: left; }
.cc-shell[data-active-page="member-coupons"] .cc-mode-switch small,
.cc-shell[data-active-page="member-coupons"] .cc-device-pill small { color: var(--color-muted); font-size: 9px; }
.cc-shell[data-active-page="member-coupons"] .cc-mode-switch strong,
.cc-shell[data-active-page="member-coupons"] .cc-device-pill strong { color: var(--color-text); font-size: 11px; }
.cc-shell[data-active-page="member-coupons"] .cc-content { max-width: none; gap: 18px; padding: 20px clamp(20px, 2vw, 34px) 42px; background: var(--color-bg); }

.cc-member-coupon-page { gap: 18px; padding: 0; }
.cc-member-coupon-page.is-focused-operation .cc-member-coupon-overview,
.cc-member-coupon-page.is-focused-operation .cc-member-coupon-tabs { display: none; }
.cc-member-coupon-overview { overflow: hidden; border: 1px solid var(--color-border); border-radius: var(--radius-card); background: var(--color-surface); box-shadow: var(--shadow-card); }
.cc-member-coupon-overview > header { display: flex; min-height: 68px; align-items: center; justify-content: space-between; gap: 20px; padding: 14px 22px 5px; }
.cc-member-coupon-overview > header > div { display: flex; align-items: center; gap: 11px; }
.cc-member-coupon-overview h3 { margin: 0; color: var(--color-text); font-size: 15px; }
.cc-member-coupon-overview header span { color: var(--color-muted); font-size: 9px; }
.cc-member-coupon-overview header i { display: inline-grid; width: 15px; height: 15px; place-items: center; border: 1px solid #b9c1cc; border-radius: 50%; font-size: 8px; font-style: normal; }
.cc-member-coupon-overview > header > button { display: inline-flex; min-height: 38px; align-items: center; gap: 7px; padding: 0 14px; border: 1px solid #dde2e8; border-radius: 9px; color: #4b5767; background: #fff; font: inherit; font-size: 10px; font-weight: 750; cursor: pointer; }
.cc-member-coupon-overview > header > button:hover { border-color: #cbd2da; background: #f8fafc; }
.cc-member-coupon-overview > header > button:disabled { opacity: .55; cursor: wait; }
.cc-member-coupon-metrics { grid-template-columns: repeat(6, minmax(0, 1fr)); border: 0; border-radius: 0; }
.cc-member-coupon-metrics article { display: flex; min-height: 92px; align-items: center; gap: 14px; padding: 13px 22px 20px; border-right: 1px solid #edf0f3; }
.cc-member-coupon-metrics article:last-child { border-right: 0; }
.cc-member-coupon-metric-icon { display: grid; width: 42px; height: 42px; flex: 0 0 42px; place-items: center; border-radius: 12px; color: #3e82f7; background: #edf5ff; }
.cc-member-coupon-metric-icon svg { width: 23px; height: 23px; }
.cc-member-coupon-metrics article[data-tone="granted"] .cc-member-coupon-metric-icon { color: #20a858; background: #edf9f1; }
.cc-member-coupon-metrics article[data-tone="available"] .cc-member-coupon-metric-icon { color: #f39a24; background: #fff6e9; }
.cc-member-coupon-metrics article[data-tone="used"] .cc-member-coupon-metric-icon { color: #9a53e9; background: #f7efff; }
.cc-member-coupon-metrics article[data-tone="expired"] .cc-member-coupon-metric-icon { color: #e5455c; background: #fff0f2; }
.cc-member-coupon-metrics article[data-tone="revoked"] .cc-member-coupon-metric-icon { color: #747d89; background: #f1f3f6; }
.cc-member-coupon-metrics article > div { display: grid; gap: 5px; }
.cc-member-coupon-metrics strong { color: var(--color-text); font-size: 22px; line-height: 1; }
.cc-member-coupon-metrics article > div > span { color: var(--color-muted); font-size: 10px; white-space: nowrap; }

.cc-member-coupon-tabs { min-height: 66px; align-items: stretch; gap: 34px; padding: 0 24px; border: 1px solid var(--color-border); border-radius: var(--radius-card); background: #fff; box-shadow: var(--shadow-card); }
.cc-member-coupon-tabs button { position: relative; min-height: 64px; flex: 0 0 auto; padding: 0 12px; border-radius: 0; color: #5f6a78; font-size: 12px; }
.cc-member-coupon-tabs button > span { display: inline-grid; width: 24px; height: 24px; margin-right: 7px; place-items: center; border-radius: 8px; color: #8b95a3; background: #f3f5f7; font-size: 9px; font-weight: 850; }
.cc-member-coupon-tabs button.is-active { color: var(--color-primary); background: transparent; box-shadow: none; }
.cc-member-coupon-tabs button.is-active > span { color: var(--color-primary); background: #fff0f2; }
.cc-member-coupon-tabs button.is-active::after { position: absolute; right: 5px; bottom: -1px; left: 5px; height: 2px; background: var(--color-primary); content: ""; }
.cc-member-coupon-holdings-index { display: block; }
.cc-member-coupon-records-card { overflow: hidden; padding: 22px; border: 1px solid var(--color-border); border-radius: var(--radius-card); background: #fff; box-shadow: var(--shadow-card); }
.cc-member-coupon-records-head { display: flex; align-items: center; justify-content: space-between; gap: 22px; margin-bottom: 18px; }
.cc-member-coupon-records-head h2 { margin: 0; color: var(--color-text); font-size: 17px; }
.cc-member-coupon-records-head p { margin: 7px 0 0; color: var(--color-muted); font-size: 10px; }
.cc-member-coupon-records-head > button { min-height: 42px; padding: 0 18px; border: 1px solid var(--color-primary); border-radius: 9px; color: #fff; background: linear-gradient(135deg, #f32b47, #e91d39); box-shadow: 0 8px 18px rgba(237,36,63,.15); font: inherit; font-size: 11px; font-weight: 800; cursor: pointer; white-space: nowrap; }
.cc-member-coupon-quick-grant-head > div > span { display: block; margin-bottom: 6px; color: var(--color-primary); font-size: 10px; font-weight: 850; }
.cc-member-coupon-record-section-head { display: flex; min-height: 62px; align-items: center; justify-content: space-between; gap: 20px; border-top: 1px solid #edf0f3; }
.cc-member-coupon-record-section-head h3 { margin: 0; color: var(--color-text); font-size: 15px; }
.cc-member-coupon-record-section-head span { display: block; margin-top: 5px; color: var(--color-muted); font-size: 10px; }
.cc-member-coupon-record-section-head > strong { color: #667283; font-size: 11px; font-weight: 750; }
.cc-member-coupon-filters { display: grid; grid-template-columns: minmax(250px, 1fr) 132px 132px minmax(260px, .7fr) 92px; gap: 10px; margin: 0 0 14px; }
.cc-member-coupon-filters > input,
.cc-member-coupon-filters > select,
.cc-member-coupon-filters > button,
.cc-member-coupon-search,
.cc-member-coupon-date-range { min-height: 42px; border: 1px solid #e0e5eb; border-radius: 9px; background: #fff; }
.cc-member-coupon-search { display: flex; align-items: center; gap: 8px; padding: 0 12px; }
.cc-member-coupon-search > span { color: #9ba5b3; font-size: 18px; transform: rotate(-20deg); }
.cc-member-coupon-search input { width: 100%; min-width: 0; border: 0; outline: 0; color: var(--color-text); background: transparent; font: inherit; font-size: 12px; }
.cc-member-coupon-filters > select { width: 100%; padding: 0 12px; color: #4f5b69; font: inherit; font-size: 11px; }
.cc-member-coupon-date-range { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 5px; padding: 0 9px; }
.cc-member-coupon-date-range input { min-width: 0; border: 0; outline: 0; color: #5f6b79; background: transparent; font: inherit; font-size: 10px; }
.cc-member-coupon-date-range span { color: #a0a9b5; font-size: 10px; }
.cc-member-coupon-filters > button { color: var(--color-primary); border-color: #ffc2cb; background: #fff8f9; font: inherit; font-size: 11px; font-weight: 800; cursor: pointer; }
.cc-member-coupon-filters > button:hover { background: #fff0f2; }
.cc-member-coupon-table-wrap { overflow-x: auto; border: 1px solid #e8ecf1; border-radius: 11px; }
.cc-member-coupon-table-wrap table { min-width: 930px; width: 100%; border-collapse: collapse; table-layout: fixed; }
.cc-member-coupon-table-wrap th { height: 48px; padding: 0 18px; color: #667283; background: #f8f9fb; font-size: 11px; font-weight: 750; text-align: left; }
.cc-member-coupon-table-wrap th:nth-child(1) { width: 23%; }
.cc-member-coupon-table-wrap th:nth-child(2) { width: 20%; }
.cc-member-coupon-table-wrap th:nth-child(3) { width: 12%; }
.cc-member-coupon-table-wrap th:nth-child(4),
.cc-member-coupon-table-wrap th:nth-child(5) { width: 17%; }
.cc-member-coupon-table-wrap th:nth-child(6) { width: 11%; }
.cc-member-coupon-table-wrap td { height: 82px; padding: 11px 18px; border-top: 1px solid #edf0f3; color: #6f7b8b; font-size: 12px; vertical-align: middle; }
.cc-member-coupon-table-wrap td > strong,
.cc-member-coupon-table-wrap td > small { display: block; }
.cc-member-coupon-table-wrap td > strong { margin-bottom: 5px; color: #303c4b; font-size: 12px; }
.cc-member-coupon-table-wrap td > small { color: #8994a3; font-size: 10px; }
.cc-member-coupon-member-cell { display: flex; align-items: center; gap: 11px; }
.cc-member-coupon-avatar { display: grid; width: 38px; height: 38px; flex: 0 0 38px; overflow: hidden; place-items: center; border-radius: 50%; color: #fff; background: linear-gradient(145deg, #526173, #263242); font-size: 12px; font-weight: 850; }
.cc-member-coupon-avatar img { width: 100%; height: 100%; object-fit: cover; }
.cc-member-coupon-member-cell strong,
.cc-member-coupon-member-cell small { display: block; }
.cc-member-coupon-member-cell strong { margin-bottom: 4px; color: #2f3b4a; font-size: 12px; }
.cc-member-coupon-member-cell small { color: #8b96a5; font-size: 10px; line-height: 1.5; }
.cc-member-coupon-masked-phone { color: #667487 !important; }
.cc-member-coupon-status { display: inline-flex; min-height: 27px; align-items: center; padding: 0 10px; border-radius: 999px; font-size: 10px; font-weight: 800; }
.cc-member-coupon-status.is-available { color: #159553; background: #e9f8ef; }
.cc-member-coupon-status.is-used { color: #6f55bc; background: #f2edff; }
.cc-member-coupon-status.is-expired { color: #e2465c; background: #fff0f2; }
.cc-member-coupon-status.is-revoked { color: #727d8b; background: #eff2f5; }
.cc-member-coupon-table-wrap td button { min-height: 34px; padding: 0 13px; border: 1px solid #ffbdc7; border-radius: 8px; color: var(--color-primary); background: #fff; font: inherit; font-size: 10px; font-weight: 800; cursor: pointer; }
.cc-member-coupon-table-wrap td button:hover { background: #fff4f6; }
.cc-member-coupon-table-empty { height: 100px !important; color: var(--color-muted) !important; text-align: center; }
.cc-member-coupon-redemption-layout { grid-template-columns: 1fr; }
.cc-member-coupon-redemption-console { padding: 24px; }
.cc-member-coupon-redemption-methods { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; margin-top: 18px; }
.cc-member-coupon-redemption-method { min-width: 0; padding: 18px; border: 1px solid #e4e9ef; border-radius: 14px; background: #fafbfc; }
.cc-member-coupon-redemption-method > header { display: flex; align-items: center; gap: 11px; margin-bottom: 15px; }
.cc-member-coupon-redemption-method > header > span { display: grid; width: 34px; height: 34px; flex: 0 0 34px; place-items: center; border-radius: 10px; color: #f02846; background: #fff0f2; font-size: 11px; font-weight: 850; }
.cc-member-coupon-redemption-method > header strong,
.cc-member-coupon-redemption-method > header small { display: block; }
.cc-member-coupon-redemption-method > header strong { color: var(--cc-text); font-size: 15px; }
.cc-member-coupon-redemption-method > header small { margin-top: 3px; color: var(--cc-muted); font-size: 11px; }
.cc-member-coupon-redemption-method form { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: end; gap: 10px; }
.cc-member-coupon-redemption-method form label { display: grid; gap: 7px; color: var(--cc-muted); font-size: 12px; font-weight: 700; }
.cc-member-coupon-redemption-method form input { width: 100%; min-height: 46px; padding: 10px 13px; border: 1px solid #d7dee6; border-radius: 10px; color: var(--cc-text); background: #fff; font: inherit; }
.cc-member-coupon-redemption-method form > button { min-height: 46px; padding: 0 18px; border: 1px solid var(--cc-red); border-radius: 10px; color: #fff; background: var(--cc-red); font: inherit; font-weight: 800; cursor: pointer; }
.cc-member-coupon-redemption-method > p { min-height: 40px; margin: 10px 0 0; color: var(--cc-muted); font-size: 11px; line-height: 1.6; }
.cc-member-coupon-redemption-method .cc-member-coupon-camera-open { min-height: 40px; margin-top: 10px; }
.cc-member-coupon-redemption-console > .cc-member-coupon-camera { margin-top: 14px; }
.cc-member-coupon-redemption-safety { display: flex; align-items: center; gap: 10px; margin-top: 14px; padding: 11px 14px; border-radius: 10px; color: #8b6212; background: #fff7df; font-size: 11px; }
.cc-member-coupon-redemption-safety strong { white-space: nowrap; }
.cc-member-coupon-redemption-preview { margin-top: 16px; padding: 18px; border: 1px solid #e4e9ef; border-radius: 14px; background: #fff; }
.cc-member-coupon-redemption-preview.is-empty { display: flex; min-height: 78px; align-items: center; justify-content: space-between; gap: 18px; }
.cc-member-coupon-preview-heading { display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.cc-member-coupon-preview-heading p { margin: 0 0 4px; color: #f02846; font-size: 11px; font-weight: 850; }
.cc-member-coupon-preview-heading h3 { margin: 0; color: var(--cc-text); font-size: 17px; }
.cc-member-coupon-preview-heading > span,
.cc-member-coupon-preview-empty { color: var(--cc-muted); font-size: 11px; }
.cc-member-coupon-preview-empty { white-space: nowrap; }
.cc-member-coupon-redemption-preview.has-preview .cc-member-coupon-confirm-card { margin-top: 14px; }
.cc-member-coupon-redemption-preview.has-preview .cc-member-coupon-confirm-card dl { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.cc-member-coupon-redemption-history { grid-column: 1 / -1; padding: 22px; }
.cc-member-coupon-redemption-history .cc-member-coupon-record-section-head { border-top: 0; }
.cc-member-coupon-operation-table table { min-width: 880px; }
.cc-member-coupon-pagination { display: flex; min-height: 60px; align-items: center; justify-content: flex-end; gap: 12px; color: #768293; font-size: 10px; }
.cc-member-coupon-pagination select,
.cc-member-coupon-page-jump input { min-height: 32px; border: 1px solid #e1e6eb; border-radius: 8px; color: #667281; background: #fff; font: inherit; font-size: 10px; }
.cc-member-coupon-pagination select { padding: 0 24px 0 10px; }
.cc-member-coupon-pagination > div { display: flex; align-items: center; gap: 5px; }
.cc-member-coupon-pagination > div button { display: grid; width: 31px; height: 31px; place-items: center; border: 0; border-radius: 7px; color: #8a95a4; background: #f7f8fa; font: inherit; font-size: 10px; cursor: pointer; }
.cc-member-coupon-pagination > div button.is-active { color: #fff; background: var(--color-primary); box-shadow: 0 5px 12px rgba(237,36,63,.18); }
.cc-member-coupon-pagination > div button:disabled { opacity: .4; cursor: not-allowed; }
.cc-member-coupon-page-gap { padding: 0 2px; }
.cc-member-coupon-page-jump { display: flex; align-items: center; gap: 5px; }
.cc-member-coupon-page-jump input { width: 46px; padding: 0 6px; text-align: center; }

@media (max-width: 1500px) {
  .cc-shell[data-active-page="member-coupons"] .cc-topbar { gap: 14px; }
  .cc-shell[data-active-page="member-coupons"] .cc-coupon-store-pill,
  .cc-shell[data-active-page="member-coupons"] .cc-coupon-admin-pill,
  .cc-shell[data-active-page="member-coupons"] .cc-mode-switch,
  .cc-shell[data-active-page="member-coupons"] .cc-device-pill { min-width: 138px; }
  .cc-member-coupon-filters { grid-template-columns: minmax(230px, 1fr) 120px 120px minmax(240px, .72fr) 82px; gap: 8px; }
  .cc-member-coupon-metrics article { gap: 10px; padding-inline: 16px; }
}

@media (max-width: 1180px) {
  .cc-shell[data-active-page="member-coupons"] .cc-coupon-admin-pill { display: none; }
  .cc-member-coupon-filters { grid-template-columns: minmax(260px, 1fr) 130px 130px 90px; }
  .cc-member-coupon-date-range { grid-column: 1 / -1; }
  .cc-member-coupon-metrics { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .cc-member-coupon-metrics article:nth-child(3) { border-right: 0; }
  .cc-member-coupon-metrics article:nth-child(-n+3) { border-bottom: 1px solid #edf0f3; }
}

@media (max-width: 900px) {
  .cc-shell[data-active-page="member-coupons"] .cc-coupon-store-pill,
  .cc-shell[data-active-page="member-coupons"] .cc-device-pill { display: none; }
  .cc-shell[data-active-page="member-coupons"] .cc-content { padding: 14px; }
  .cc-member-coupon-records-card { padding: 16px; }
  .cc-member-coupon-records-head { align-items: stretch; flex-direction: column; }
  .cc-member-coupon-records-head > button { width: 100%; }
  .cc-member-coupon-filters { grid-template-columns: 1fr 1fr; }
  .cc-member-coupon-search,
  .cc-member-coupon-date-range { grid-column: 1 / -1; }
  .cc-member-coupon-filters > button { min-height: 42px; }
  .cc-member-coupon-pagination { align-items: flex-end; flex-direction: column; }
}

/* 2026-09 tournament console visual upgrade */
.cc-overview-page-title { display: none; }

.cc-brand-mark,
.cc-nav a.is-active,
.cc-coupon-admin-pill > span,
.cc-member-coupon-records-head > button {
  background-image: none;
}

.cc-member-coupon-records-head > button {
  border-color: #f02846;
  color: #fff;
  background-color: #f02846;
}

.cc-brand-mark { background-color: #f02846; }
.cc-nav a.is-active { background-color: rgba(240, 40, 70, .16); }

.cc-shell[data-active-page="overview"] {
  --cc-console-red: #f02846;
  --cc-console-red-dark: #d91f3c;
  --cc-console-text: #171b24;
  --cc-console-muted: #667085;
  --cc-console-soft: #98a2b3;
  --cc-console-bg: #f5f7fa;
  --cc-console-line: #e8ecf2;
  --cc-console-success: #22a06b;
}

.cc-shell[data-active-page="overview"] .cc-topbar {
  min-height: 88px;
  gap: 20px;
  padding: 13px clamp(22px, 2vw, 36px);
  border-color: var(--cc-console-line);
  background: rgba(255, 255, 255, .97);
}

.cc-shell[data-active-page="overview"] .cc-default-page-title { display: none; }
.cc-shell[data-active-page="overview"] .cc-overview-page-title { display: block; }
.cc-overview-page-title h1 {
  margin: 0;
  color: var(--cc-console-text);
  font-size: 22px;
  line-height: 1.2;
  letter-spacing: -.02em;
}
.cc-overview-page-title p {
  margin: 7px 0 0;
  color: var(--cc-console-muted);
  font-size: 11px;
}

.cc-shell[data-active-page="overview"] .cc-topbar-meta {
  gap: 11px;
  flex-wrap: nowrap;
}
.cc-shell[data-active-page="overview"] .cc-subscription-pill,
.cc-shell[data-active-page="overview"] .cc-tv-quick-access,
.cc-shell[data-active-page="overview"] .cc-desktop-meta { display: none; }
.cc-shell[data-active-page="overview"] .cc-coupon-store-pill,
.cc-shell[data-active-page="overview"] .cc-coupon-admin-pill {
  display: flex;
  min-width: 150px;
  min-height: 58px;
  align-items: center;
  gap: 10px;
  padding: 8px 13px;
  border: 1px solid var(--cc-console-line);
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 3px 12px rgba(16, 24, 40, .035);
}
.cc-shell[data-active-page="overview"] .cc-coupon-admin-pill > span {
  background-color: #263242;
}
.cc-shell[data-active-page="overview"] .cc-mode-switch,
.cc-shell[data-active-page="overview"] .cc-device-pill {
  min-width: 150px;
  min-height: 58px;
  border: 1px solid var(--cc-console-line);
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 3px 12px rgba(16, 24, 40, .035);
}
.cc-shell[data-active-page="overview"] .cc-mode-switch {
  padding: 9px 14px;
  text-align: left;
}
.cc-shell[data-active-page="overview"] .cc-mode-switch small,
.cc-shell[data-active-page="overview"] .cc-device-pill small {
  color: var(--cc-console-soft);
  font-size: 9px;
}
.cc-shell[data-active-page="overview"] .cc-mode-switch strong,
.cc-shell[data-active-page="overview"] .cc-device-pill strong {
  color: var(--cc-console-text);
  font-size: 11px;
}
.cc-shell[data-active-page="overview"] .cc-device-dot { background: var(--cc-console-soft); }
.cc-shell[data-active-page="overview"] .cc-device-pill.has-devices .cc-device-dot { background: var(--cc-console-success); }

.cc-shell[data-active-page="overview"] .cc-content {
  max-width: none;
  gap: 14px;
  padding: 16px clamp(18px, 1.7vw, 30px) 40px;
  background: var(--cc-console-bg);
}

.cc-shell[data-active-page="overview"] .cc-tournament-switcher,
.cc-shell[data-active-page="overview"] .cc-situation-grid,
.cc-shell[data-active-page="overview"] .cc-operations-panel,
.cc-shell[data-active-page="overview"] .cc-console-config-switcher,
.cc-shell[data-active-page="overview"] .cc-console-config-panel {
  border: 1px solid var(--cc-console-line);
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 4px 18px rgba(16, 24, 40, .04);
}

.cc-shell[data-active-page="overview"] .cc-tournament-switcher {
  margin: 0;
  padding: 15px 18px 13px;
}
.cc-shell[data-active-page="overview"] .cc-tournament-switcher-heading {
  align-items: center;
  margin-bottom: 12px;
}
.cc-shell[data-active-page="overview"] .cc-tournament-title-row {
  display: flex;
  align-items: center;
  gap: 12px;
}
.cc-shell[data-active-page="overview"] .cc-tournament-title-row h2 {
  color: var(--cc-console-text);
  font-size: 15px;
  letter-spacing: -.01em;
}
.cc-shell[data-active-page="overview"] .cc-tournament-title-row em {
  padding: 4px 8px;
  border-radius: 999px;
  color: var(--cc-console-success);
  background: #eaf8f1;
  font-size: 9px;
  font-style: normal;
  font-weight: 800;
}
.cc-shell[data-active-page="overview"] .cc-tournament-switcher-heading > div > span {
  margin-top: 5px;
  color: var(--cc-console-muted);
  font-size: 10px;
}
.cc-shell[data-active-page="overview"] #cc-tournament-create-form {
  flex: 0 1 315px;
}
.cc-shell[data-active-page="overview"] #cc-tournament-create-form input,
.cc-shell[data-active-page="overview"] #cc-tournament-create-form button {
  height: 36px;
  min-height: 36px;
  border-radius: 10px;
  font-size: 10px;
}
.cc-shell[data-active-page="overview"] #cc-tournament-create-form button {
  border-color: var(--cc-console-red);
  background: var(--cc-console-red);
}

.cc-shell[data-active-page="overview"] .cc-tournament-list {
  display: grid;
  grid-auto-columns: minmax(260px, 330px);
  grid-auto-flow: column;
  grid-template-columns: none;
  gap: 10px;
  overflow-x: auto;
  padding-bottom: 2px;
  scrollbar-width: thin;
}
.cc-shell[data-active-page="overview"] .cc-tournament-card {
  min-height: 153px;
  padding: 11px 12px 10px;
  border-color: var(--cc-console-line);
  border-radius: 12px;
  background: #fff;
  box-shadow: none;
  transform: none;
}
.cc-shell[data-active-page="overview"] .cc-tournament-card:hover {
  border-color: #f5a8b4;
  box-shadow: 0 5px 14px rgba(16, 24, 40, .05);
  transform: none;
}
.cc-shell[data-active-page="overview"] .cc-tournament-card.is-active {
  border-color: #ff8194;
  background: #fff8f9;
  box-shadow: 0 0 0 1px rgba(240, 40, 70, .05);
}
.cc-shell[data-active-page="overview"] .cc-tournament-card.is-active::before { display: none; }
.cc-shell[data-active-page="overview"] .cc-tournament-card-top { margin-bottom: 3px; font-size: 9px; }
.cc-shell[data-active-page="overview"] .cc-tournament-card-top em { padding: 3px 7px; font-size: 8px; }
.cc-shell[data-active-page="overview"] .cc-tournament-card-name { min-height: 25px; font-size: 15px; }
.cc-shell[data-active-page="overview"] .cc-tournament-card-clock { margin: 3px 0 5px; }
.cc-shell[data-active-page="overview"] .cc-tournament-card-clock strong { color: var(--cc-console-text); font-size: 22px; }
.cc-shell[data-active-page="overview"] .cc-tournament-card.is-active .cc-tournament-card-clock strong { color: var(--cc-console-red); }
.cc-shell[data-active-page="overview"] .cc-tournament-card-clock span,
.cc-shell[data-active-page="overview"] .cc-tournament-card-stats { font-size: 9px; }
.cc-shell[data-active-page="overview"] .cc-tournament-card-stats { padding: 5px 0; }
.cc-shell[data-active-page="overview"] .cc-tournament-card-stats b { font-size: 10px; }
.cc-shell[data-active-page="overview"] .cc-tournament-card-actions { margin-top: 5px; }
.cc-shell[data-active-page="overview"] .cc-tournament-card-actions button,
.cc-shell[data-active-page="overview"] .cc-tournament-card-actions a {
  min-height: 30px;
  border-radius: 8px;
  font-size: 9px;
}
.cc-shell[data-active-page="overview"] .cc-tournament-card-actions .is-primary {
  color: var(--cc-console-red);
  border-color: #ffb2bd;
  background: #fff;
}
.cc-shell[data-active-page="overview"] .cc-tournament-more { margin-top: 3px; }
.cc-shell[data-active-page="overview"] .cc-tournament-more summary { margin-top: 3px; font-size: 8px; }

.cc-shell[data-active-page="overview"] .cc-tv-routing-dock {
  grid-template-columns: auto minmax(300px, .75fr) minmax(360px, 1fr);
  align-items: center;
  gap: 10px;
  margin-top: 10px;
  padding-top: 10px;
}
.cc-shell[data-active-page="overview"] .cc-tv-routing-heading {
  align-items: center;
  gap: 10px;
}
.cc-shell[data-active-page="overview"] .cc-tv-routing-heading h3 { margin: 0; font-size: 12px; white-space: nowrap; }
.cc-shell[data-active-page="overview"] .cc-tv-routing-heading span { margin-top: 3px; font-size: 8px; line-height: 1.4; }
.cc-shell[data-active-page="overview"] .cc-tv-routing-heading-actions strong { padding: 5px 8px; font-size: 8px; }
.cc-shell[data-active-page="overview"] .cc-tv-routing-heading-actions button { display: none; }
.cc-shell[data-active-page="overview"] .cc-tv-quick-bind-form {
  grid-template-columns: minmax(170px, 1fr) auto;
  gap: 7px;
  padding: 0;
  border: 0;
  background: transparent;
}
.cc-shell[data-active-page="overview"] .cc-tv-quick-bind-form label { gap: 3px; }
.cc-shell[data-active-page="overview"] .cc-tv-quick-bind-form label span { display: none; }
.cc-shell[data-active-page="overview"] .cc-tv-quick-bind-form input,
.cc-shell[data-active-page="overview"] .cc-tv-quick-bind-form button { height: 34px; min-height: 34px; font-size: 9px; }
.cc-shell[data-active-page="overview"] .cc-tv-quick-bind-form button {
  border-color: var(--cc-console-red);
  background: var(--cc-console-red);
}
.cc-shell[data-active-page="overview"] .cc-tv-routing-state { grid-column: 1 / -1; }
.cc-shell[data-active-page="overview"] .cc-tv-routing-list {
  display: flex;
  min-width: 0;
  gap: 7px;
  overflow-x: auto;
}
.cc-shell[data-active-page="overview"] .cc-tv-routing-item {
  min-width: 290px;
  grid-template-columns: minmax(100px, .8fr) minmax(120px, 1fr) auto;
  gap: 6px;
  padding: 6px;
  border-color: var(--cc-console-line);
  border-radius: 10px;
}
.cc-shell[data-active-page="overview"] .cc-tv-routing-device > span { width: 28px; height: 28px; border-radius: 8px; font-size: 8px; }
.cc-shell[data-active-page="overview"] .cc-tv-routing-device strong { font-size: 9px; }
.cc-shell[data-active-page="overview"] .cc-tv-routing-device small { font-size: 7px; }
.cc-shell[data-active-page="overview"] .cc-tv-routing-item label span { display: none; }
.cc-shell[data-active-page="overview"] .cc-tv-routing-item select,
.cc-shell[data-active-page="overview"] .cc-tv-routing-item button,
.cc-shell[data-active-page="overview"] .cc-tv-routing-actions a { height: 30px; min-height: 30px; font-size: 8px; }

.cc-shell[data-active-page="overview"] .cc-live-workbench {
  display: grid;
  grid-template-columns: minmax(440px, .86fr) minmax(660px, 1.34fr);
  align-items: stretch;
  gap: 14px;
}
.cc-shell[data-active-page="overview"] .cc-situation-grid {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: auto auto auto auto;
  gap: 0;
  padding: 15px 16px 13px;
}
.cc-shell[data-active-page="overview"] .cc-situation-grid .cc-timer-card,
.cc-shell[data-active-page="overview"] .cc-situation-grid .cc-blind-card,
.cc-shell[data-active-page="overview"] .cc-situation-grid .cc-secondary-status article,
.cc-shell[data-active-page="overview"] .cc-situation-grid .cc-left-safety-actions button {
  border: 0;
  background: transparent;
  box-shadow: none;
}
.cc-shell[data-active-page="overview"] .cc-situation-grid .cc-timer-card {
  min-height: 190px;
  padding: 0 0 12px;
}
.cc-shell[data-active-page="overview"] .cc-situation-grid .cc-timer-card::before,
.cc-shell[data-active-page="overview"] .cc-situation-grid .cc-timer-card::after { display: none; }
.cc-current-event-heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
}
.cc-current-event-heading > div:first-child { min-width: 0; }
.cc-current-event-heading > div:first-child > span {
  color: var(--cc-console-text);
  font-size: 13px;
  font-weight: 800;
}
.cc-current-event-heading em {
  display: inline-flex;
  min-height: 22px;
  align-items: center;
  margin-left: 8px;
  padding: 0 7px;
  border-radius: 999px;
  color: var(--cc-console-red);
  background: #fff0f2;
  font-size: 8px;
  font-style: normal;
  font-weight: 800;
}
.cc-current-event-heading h2 {
  overflow: hidden;
  max-width: 340px;
  margin: 6px 0 0;
  color: var(--cc-console-text);
  font-size: 20px;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.cc-shell[data-active-page="overview"] .cc-live-status {
  min-height: 25px;
  padding: 0 9px;
  border-radius: 999px;
  font-size: 8px;
}
.cc-shell[data-active-page="overview"] .cc-clock-wrap {
  min-height: 105px;
  justify-content: center;
  padding: 3px 0 0;
}
.cc-shell[data-active-page="overview"] .cc-clock-wrap p { margin-bottom: 0; color: var(--cc-console-muted); font-size: 9px; }
.cc-shell[data-active-page="overview"] .cc-clock-wrap small { display: none; }
.cc-shell[data-active-page="overview"] .cc-clock {
  color: var(--cc-console-text);
  font-size: clamp(54px, 4.4vw, 78px);
  line-height: 1.08;
  text-shadow: none;
}
.cc-shell[data-active-page="overview"] .cc-progress-label { color: var(--cc-console-soft); font-size: 8px; }
.cc-shell[data-active-page="overview"] .cc-progress { height: 5px; background: #f0f2f5; }
.cc-shell[data-active-page="overview"] .cc-progress > span { background: var(--cc-console-red); box-shadow: none; }

.cc-shell[data-active-page="overview"] .cc-blind-stack {
  grid-template-columns: 1fr 1fr;
  gap: 0;
  border-top: 1px solid var(--cc-console-line);
  border-bottom: 1px solid var(--cc-console-line);
}
.cc-shell[data-active-page="overview"] .cc-blind-stack .cc-blind-card {
  min-height: 118px;
  padding: 13px 14px;
}
.cc-shell[data-active-page="overview"] .cc-blind-stack .cc-blind-card + .cc-blind-card { border-left: 1px solid var(--cc-console-line); }
.cc-shell[data-active-page="overview"] .cc-section-label span,
.cc-shell[data-active-page="overview"] .cc-blind-values span,
.cc-shell[data-active-page="overview"] .cc-ante-row span,
.cc-shell[data-active-page="overview"] .cc-next-summary span { color: var(--cc-console-soft); font-size: 8px; }
.cc-shell[data-active-page="overview"] .cc-section-label strong { color: var(--cc-console-red); font-size: 12px; }
.cc-shell[data-active-page="overview"] .cc-next-blind .cc-section-label strong { color: var(--cc-console-text); }
.cc-shell[data-active-page="overview"] .cc-blind-values { margin-top: 13px; }
.cc-shell[data-active-page="overview"] .cc-blind-values strong { color: var(--cc-console-text); font-size: 21px; }
.cc-shell[data-active-page="overview"] .cc-ante-row { padding-top: 7px; }
.cc-shell[data-active-page="overview"] .cc-ante-row strong { color: var(--cc-console-text); font-size: 12px; }
.cc-shell[data-active-page="overview"] .cc-next-summary { grid-template-columns: repeat(3, 1fr); gap: 7px; padding-top: 9px; }
.cc-shell[data-active-page="overview"] .cc-next-summary div { padding: 7px 5px; border: 0; border-radius: 7px; background: #f7f8fa; }
.cc-shell[data-active-page="overview"] .cc-next-summary strong { color: var(--cc-console-text); font-size: 13px; }
.cc-shell[data-active-page="overview"] .cc-next-blind > p { margin: 6px 0 0; color: var(--cc-console-soft); font-size: 7px; }

.cc-shell[data-active-page="overview"] .cc-secondary-status {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0;
  padding-top: 10px;
}
.cc-shell[data-active-page="overview"] .cc-secondary-status article {
  display: grid;
  min-height: 56px;
  align-content: center;
  justify-items: center;
  gap: 5px;
  padding: 4px 7px;
  border-right: 1px solid var(--cc-console-line);
  border-radius: 0;
}
.cc-shell[data-active-page="overview"] .cc-secondary-status article:last-child { border-right: 0; }
.cc-shell[data-active-page="overview"] .cc-secondary-status span,
.cc-shell[data-active-page="overview"] .cc-secondary-status small { color: var(--cc-console-soft); font-size: 8px; }
.cc-shell[data-active-page="overview"] .cc-secondary-status strong { margin: 0; color: var(--cc-console-text); font-size: 13px; }
.cc-shell[data-active-page="overview"] .cc-secondary-status article:last-child strong::before {
  display: inline-block;
  width: 7px;
  height: 7px;
  margin-right: 5px;
  border-radius: 50%;
  background: var(--cc-console-soft);
  content: "";
}
.cc-shell[data-active-page="overview"] .cc-secondary-status.has-devices article:last-child strong::before { background: var(--cc-console-success); }
.cc-shell[data-active-page="overview"] .cc-secondary-status small { max-width: 86px; }
.cc-shell[data-active-page="overview"] .cc-left-safety-actions {
  grid-template-columns: 1fr 1fr;
  gap: 8px;
  padding-top: 8px;
}
.cc-shell[data-active-page="overview"] .cc-left-safety-actions button {
  min-height: 43px;
  padding: 7px 10px;
  border: 1px solid var(--cc-console-line);
  border-radius: 9px;
}
.cc-shell[data-active-page="overview"] .cc-left-safety-actions span { display: none; }
.cc-shell[data-active-page="overview"] .cc-left-safety-actions strong { color: var(--cc-console-muted); font-size: 9px; }
.cc-shell[data-active-page="overview"] .cc-left-safety-actions small { font-size: 7px; }

.cc-shell[data-active-page="overview"] .cc-operations-panel {
  display: flex;
  min-width: 0;
  min-height: 0;
  flex-direction: column;
  padding: 15px 16px 13px;
  color: var(--cc-console-text);
}
.cc-shell[data-active-page="overview"] .cc-operations-heading {
  margin-bottom: 8px;
}
.cc-shell[data-active-page="overview"] .cc-operations-heading h2 { color: var(--cc-console-text); font-size: 15px; }
.cc-shell[data-active-page="overview"] .cc-operations-heading h2 { font-size: 20px; }
.cc-shell[data-active-page="overview"] .cc-operations-heading p { margin-top: 5px; color: var(--cc-console-soft); font-size: 11px; letter-spacing: 0; }
.cc-shell[data-active-page="overview"] .cc-control-safety {
  color: var(--cc-console-success);
  border-color: #ccebdd;
  background: #eef9f4;
  font-size: 11px;
}
.cc-shell[data-active-page="overview"] .cc-operations-panel .cc-panel-intro {
  min-height: 0;
  margin: 0 0 10px;
  color: var(--cc-console-muted);
  font-size: 11px;
  line-height: 1.55;
}
.cc-shell[data-active-page="overview"] .cc-theme-console-context { margin: 0 0 8px; }
.cc-shell[data-active-page="overview"] .cc-primary-controls {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}
.cc-shell[data-active-page="overview"] .cc-secondary-controls {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  margin-top: 8px;
}
.cc-shell[data-active-page="overview"] .cc-control-grid button {
  display: grid;
  min-height: 64px;
  grid-template-columns: 30px minmax(0, 1fr);
  align-content: center;
  align-items: center;
  gap: 2px 9px;
  padding: 9px 11px;
  border: 1px solid #dfe4ea;
  border-radius: 11px;
  color: #344054;
  background: #fff;
  box-shadow: none;
  text-align: left;
}
.cc-shell[data-active-page="overview"] .cc-control-grid button > span {
  display: grid;
  width: 30px;
  height: 30px;
  grid-row: 1 / 3;
  place-items: center;
  border: 0;
  border-radius: 7px;
  color: #7b8493;
  background: #f3f5f7;
  font-size: 14px;
}
.cc-shell[data-active-page="overview"] .cc-control-grid button strong { color: inherit; font-size: 13px; line-height: 1.3; }
.cc-shell[data-active-page="overview"] .cc-control-grid button small { color: var(--cc-console-soft); font-size: 10px; line-height: 1.35; }
.cc-shell[data-active-page="overview"] .cc-primary-controls button:first-child:not(:disabled) {
  border-color: var(--cc-console-red);
  color: #fff;
  background: var(--cc-console-red);
}
.cc-shell[data-active-page="overview"] .cc-primary-controls button:first-child:not(:disabled) > span {
  color: #fff;
  background: rgba(255, 255, 255, .16);
}
.cc-shell[data-active-page="overview"] .cc-primary-controls button:first-child:not(:disabled) small { color: rgba(255, 255, 255, .78); }
.cc-shell[data-active-page="overview"] .cc-control-grid button:not(:disabled):hover {
  border-color: #f5a5b1;
  transform: none;
}
.cc-shell[data-active-page="overview"] .cc-control-grid button:disabled { opacity: .46; }

.cc-shell[data-active-page="overview"] .cc-opening-stats-form {
  grid-template-columns: repeat(3, minmax(0, 1fr)) minmax(160px, 1fr);
  gap: 8px;
  margin-top: 10px;
  padding: 10px;
  border: 1px solid var(--cc-console-line);
  border-radius: 11px;
  background: #fafbfc;
}
.cc-shell[data-active-page="overview"] .cc-opening-stats-heading strong { color: var(--cc-console-text); font-size: 14px; }
.cc-shell[data-active-page="overview"] .cc-opening-stats-heading span,
.cc-shell[data-active-page="overview"] .cc-opening-stats-form label > span { color: var(--cc-console-soft); font-size: 11px; }
.cc-shell[data-active-page="overview"] .cc-opening-stats-form input {
  height: 42px;
  color: var(--cc-console-text);
  border-color: #dfe4ea;
  border-radius: 8px;
  background: #fff;
  font-size: 14px;
}
.cc-shell[data-active-page="overview"] .cc-opening-stats-actions button {
  min-height: 42px;
  border-radius: 8px;
  font-size: 12px;
}
.cc-shell[data-active-page="overview"] .cc-opening-stats-actions button.is-primary:not(:disabled) {
  color: #fff;
  border-color: var(--cc-console-red-dark);
  background: var(--cc-console-red-dark);
}

.cc-shell[data-active-page="overview"] .cc-quick-stats {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 7px;
  margin: 9px 0 0;
}
.cc-shell[data-active-page="overview"] .cc-quick-stats-heading {
  display: flex;
  grid-column: 1 / -1;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 0 1px;
}
.cc-shell[data-active-page="overview"] .cc-quick-stats-heading strong { color: var(--cc-console-text); font-size: 10px; }
.cc-shell[data-active-page="overview"] .cc-quick-stats-heading strong { font-size: 14px; }
.cc-shell[data-active-page="overview"] .cc-quick-stats-heading span { color: var(--cc-console-soft); font-size: 10px; }
.cc-shell[data-active-page="overview"] .cc-quick-stat-card {
  gap: 6px;
  padding: 10px 11px;
  border-color: var(--cc-console-line);
  border-radius: 10px;
  background: #fff;
}
.cc-shell[data-active-page="overview"] .cc-quick-stat-card span { color: var(--cc-console-soft); font-size: 11px; }
.cc-shell[data-active-page="overview"] .cc-quick-stat-card strong { color: var(--cc-console-text); font-size: 24px; }
.cc-shell[data-active-page="overview"] .cc-quick-actions button {
  min-height: 38px;
  color: #475467;
  border-color: #dfe4ea;
  border-radius: 7px;
  background: #fff;
  font-size: 11px;
}
.cc-shell[data-active-page="overview"] .cc-quick-actions button.is-primary:not(:disabled) {
  color: var(--cc-console-red);
  border-color: #f8b0bb;
  background: #fff7f8;
}
.cc-shell[data-active-page="overview"] .cc-stack-stat-card {
  grid-template-columns: minmax(120px, .75fr) minmax(130px, .7fr) minmax(180px, 1fr);
  align-items: end;
  grid-column: 1 / -1;
}
.cc-shell[data-active-page="overview"] .cc-stack-summary strong { font-size: 28px; }
.cc-shell[data-active-page="overview"] .cc-stack-summary small { color: var(--cc-console-muted); font-size: 11px; }
.cc-shell[data-active-page="overview"] .cc-stack-adjustment input {
  height: 38px;
  color: var(--cc-console-text);
  border-color: #dfe4ea;
  border-radius: 7px;
  background: #fff;
  font-size: 14px;
}

.cc-shell[data-active-page="overview"] .cc-console-config-switcher {
  min-height: 52px;
  grid-template-columns: auto 1fr;
  align-items: center;
  gap: 20px;
  padding: 8px 14px;
}
.cc-shell[data-active-page="overview"] .cc-console-config-switcher > div p { display: none; }
.cc-shell[data-active-page="overview"] .cc-console-config-switcher > div h2 { margin: 0; color: var(--cc-console-text); font-size: 12px; }
.cc-shell[data-active-page="overview"] .cc-console-config-switcher nav { justify-content: flex-start; }
.cc-shell[data-active-page="overview"] .cc-console-config-switcher button {
  min-height: 34px;
  border-radius: 8px;
  color: var(--cc-console-muted);
  background: transparent;
  font-size: 9px;
}
.cc-shell[data-active-page="overview"] .cc-console-config-switcher button.is-active {
  color: var(--cc-console-red);
  background: #fff1f3;
  box-shadow: none;
}

.cc-shell[data-active-page="overview"] .cc-console-config-panel {
  padding: 16px;
  color: var(--cc-console-text);
}
.cc-shell[data-active-page="overview"] .cc-console-config-panel .cc-panel-heading h2 { color: var(--cc-console-text); font-size: 15px; }
.cc-shell[data-active-page="overview"] .cc-console-config-panel .cc-panel-heading p { color: var(--cc-console-red); font-size: 8px; }
.cc-shell[data-active-page="overview"] .cc-theme-settings-layout {
  grid-template-columns: minmax(420px, 1fr) minmax(430px, 1.05fr);
  gap: 16px;
}
.cc-shell[data-active-page="overview"] .cc-theme-settings-preview,
.cc-shell[data-active-page="overview"] .cc-theme-settings-editor {
  padding: 12px;
  border: 1px solid var(--cc-console-line);
  border-radius: 12px;
  background: #fff;
}
.cc-shell[data-active-page="overview"] .cc-theme-settings-editor {
  border: 0;
  padding: 0;
  background: transparent;
}
.cc-shell[data-active-page="overview"] .cc-theme-main-form,
.cc-shell[data-active-page="overview"] .cc-theme-advanced-form { background: transparent; }
.cc-shell[data-active-page="overview"] .cc-settings-form label > span,
.cc-shell[data-active-page="overview"] .cc-theme-form-section-heading span,
.cc-shell[data-active-page="overview"] .cc-theme-content-heading span { color: var(--cc-console-soft); }
.cc-shell[data-active-page="overview"] .cc-settings-form input,
.cc-shell[data-active-page="overview"] .cc-settings-form select {
  color: var(--cc-console-text);
  border-color: #dfe4ea;
  background: #fff;
}
.cc-shell[data-active-page="overview"] .cc-primary-button {
  border-color: var(--cc-console-red);
  background: var(--cc-console-red);
}

@media (max-width: 1500px) {
  .cc-shell[data-active-page="overview"] .cc-live-workbench { grid-template-columns: minmax(405px, .82fr) minmax(600px, 1.28fr); }
  .cc-shell[data-active-page="overview"] .cc-coupon-store-pill,
  .cc-shell[data-active-page="overview"] .cc-coupon-admin-pill,
  .cc-shell[data-active-page="overview"] .cc-mode-switch,
  .cc-shell[data-active-page="overview"] .cc-device-pill { min-width: 135px; }
  .cc-shell[data-active-page="overview"] .cc-tv-routing-dock { grid-template-columns: auto minmax(270px, .8fr) minmax(290px, 1fr); }
  .cc-shell[data-active-page="overview"] .cc-theme-settings-layout { grid-template-columns: minmax(390px, .9fr) minmax(470px, 1.1fr); }
}

@media (max-width: 1240px) {
  .cc-shell[data-active-page="overview"] .cc-coupon-admin-pill { display: none; }
  .cc-shell[data-active-page="overview"] .cc-live-workbench { grid-template-columns: 1fr; }
  .cc-shell[data-active-page="overview"] .cc-tv-routing-dock { grid-template-columns: 1fr 1fr; }
  .cc-shell[data-active-page="overview"] .cc-tv-routing-list { grid-column: 1 / -1; }
  .cc-shell[data-active-page="overview"] .cc-theme-settings-layout { grid-template-columns: 1fr; }
}

@media (max-width: 900px) {
  .cc-shell[data-active-page="overview"] .cc-coupon-store-pill,
  .cc-shell[data-active-page="overview"] .cc-device-pill { display: none; }
  .cc-shell[data-active-page="overview"] .cc-content { padding: 12px; }
  .cc-shell[data-active-page="overview"] .cc-tournament-switcher-heading { align-items: stretch; flex-direction: column; }
  .cc-shell[data-active-page="overview"] #cc-tournament-create-form { flex-basis: auto; }
  .cc-shell[data-active-page="overview"] .cc-tv-routing-dock { grid-template-columns: 1fr; }
  .cc-shell[data-active-page="overview"] .cc-tv-routing-list { grid-column: auto; }
  .cc-shell[data-active-page="overview"] .cc-primary-controls { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .cc-shell[data-active-page="overview"] .cc-opening-stats-form { grid-template-columns: 1fr 1fr; }
  .cc-shell[data-active-page="overview"] .cc-opening-stats-heading,
  .cc-shell[data-active-page="overview"] .cc-opening-stats-actions { grid-column: 1 / -1; }
}

@media (max-width: 560px) {
  .cc-shell[data-active-page="overview"] .cc-overview-page-title p { display: none; }
  .cc-shell[data-active-page="overview"] .cc-tournament-title-row { align-items: flex-start; flex-direction: column; gap: 5px; }
  .cc-shell[data-active-page="overview"] .cc-tournament-list { grid-auto-columns: 88%; }
  .cc-shell[data-active-page="overview"] .cc-blind-stack { grid-template-columns: 1fr; }
  .cc-shell[data-active-page="overview"] .cc-blind-stack .cc-blind-card + .cc-blind-card { border-top: 1px solid var(--cc-console-line); border-left: 0; }
  .cc-shell[data-active-page="overview"] .cc-secondary-status { grid-template-columns: repeat(2, 1fr); }
  .cc-shell[data-active-page="overview"] .cc-secondary-status article:nth-child(2) { border-right: 0; }
  .cc-shell[data-active-page="overview"] .cc-secondary-status article:nth-child(-n+2) { border-bottom: 1px solid var(--cc-console-line); }
  .cc-shell[data-active-page="overview"] .cc-opening-stats-form,
  .cc-shell[data-active-page="overview"] .cc-quick-stats { grid-template-columns: 1fr; }
  .cc-shell[data-active-page="overview"] .cc-quick-stats-heading,
  .cc-shell[data-active-page="overview"] .cc-stack-stat-card { grid-column: auto; }
  .cc-shell[data-active-page="overview"] .cc-stack-stat-card { grid-template-columns: 1fr; }
  .cc-shell[data-active-page="overview"] .cc-console-config-switcher { grid-template-columns: 1fr; }
}

/* Tournament console readability pass: use normal admin typography in the high-frequency workbench. */
.cc-shell[data-active-page="overview"] .cc-live-workbench {
  grid-template-columns: minmax(410px, .74fr) minmax(700px, 1.36fr);
  align-items: stretch;
  gap: 0;
  overflow: hidden;
  border: 1px solid var(--cc-console-line);
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 6px 22px rgba(16, 24, 40, .055);
}

.cc-shell[data-active-page="overview"] .cc-live-workbench > .cc-situation-grid,
.cc-shell[data-active-page="overview"] .cc-live-workbench > .cc-operations-panel {
  min-height: 100%;
  border: 0;
  border-radius: 0;
  background: #fff;
  box-shadow: none;
}

.cc-shell[data-active-page="overview"] .cc-live-workbench > .cc-situation-grid {
  padding: 22px 24px;
}

.cc-shell[data-active-page="overview"] .cc-live-workbench > .cc-operations-panel {
  border-left: 1px solid var(--cc-console-line);
}

.cc-shell[data-active-page="overview"] .cc-operations-panel {
  padding: 22px;
}

.cc-shell[data-active-page="overview"] .cc-operations-heading {
  margin-bottom: 10px;
}

.cc-shell[data-active-page="overview"] .cc-theme-console-context > small {
  display: none;
}

.cc-shell[data-active-page="overview"] .cc-operations-heading h2 {
  font-size: 23px;
  line-height: 1.25;
}

.cc-shell[data-active-page="overview"] .cc-operations-heading p,
.cc-shell[data-active-page="overview"] .cc-operations-panel .cc-panel-intro {
  font-size: 13px;
  line-height: 1.6;
}

.cc-shell[data-active-page="overview"] .cc-control-safety {
  min-height: 32px;
  padding: 0 12px;
  font-size: 12px;
}

.cc-shell[data-active-page="overview"] .cc-theme-console-context {
  grid-template-columns: minmax(180px, .8fr) minmax(280px, 1.2fr);
  gap: 9px 20px;
  margin: 2px 0 14px;
  padding: 15px 17px;
  border-color: #dfe4ea;
  border-radius: 12px;
  background: #f7f9fb;
}

.cc-shell[data-active-page="overview"] .cc-theme-console-context span,
.cc-shell[data-active-page="overview"] .cc-theme-console-context small {
  color: #667085;
  font-size: 12px;
  line-height: 1.55;
}

.cc-shell[data-active-page="overview"] .cc-theme-console-context strong {
  margin-top: 2px;
  color: #171b24;
  font-size: 17px;
  line-height: 1.35;
}

.cc-shell[data-active-page="overview"] .cc-theme-console-context p {
  gap: 8px;
}

.cc-shell[data-active-page="overview"] .cc-theme-console-context p b {
  padding: 6px 10px;
  font-size: 11px;
}

.cc-shell[data-active-page="overview"] .cc-primary-controls,
.cc-shell[data-active-page="overview"] .cc-secondary-controls {
  gap: 10px;
}

.cc-shell[data-active-page="overview"] .cc-secondary-controls {
  margin-top: 10px;
}

.cc-shell[data-active-page="overview"] .cc-control-grid button {
  min-height: 72px;
  grid-template-columns: 34px minmax(0, 1fr);
  gap: 3px 10px;
  padding: 11px 13px;
  border-radius: 12px;
}

.cc-shell[data-active-page="overview"] .cc-control-grid button > span {
  width: 34px;
  height: 34px;
  font-size: 16px;
}

.cc-shell[data-active-page="overview"] .cc-control-grid button strong {
  font-size: 15px;
  font-weight: 800;
  line-height: 1.3;
}

.cc-shell[data-active-page="overview"] .cc-control-grid button small {
  font-size: 11px;
  line-height: 1.4;
}

.cc-shell[data-active-page="overview"] .cc-opening-stats-form {
  gap: 12px;
  margin-top: 14px;
  padding: 16px;
  border-radius: 14px;
}

.cc-shell[data-active-page="overview"] .cc-opening-stats-heading {
  margin-bottom: 3px;
}

.cc-shell[data-active-page="overview"] .cc-opening-stats-heading strong,
.cc-shell[data-active-page="overview"] .cc-quick-stats-heading strong {
  font-size: 16px;
  line-height: 1.35;
}

.cc-shell[data-active-page="overview"] .cc-opening-stats-heading span,
.cc-shell[data-active-page="overview"] .cc-quick-stats-heading span {
  font-size: 12px;
  line-height: 1.5;
}

.cc-shell[data-active-page="overview"] .cc-opening-stats-form label > span,
.cc-shell[data-active-page="overview"] .cc-stack-adjustment > span,
.cc-shell[data-active-page="overview"] .cc-quick-stat-card > div:first-child > span,
.cc-shell[data-active-page="overview"] .cc-stack-summary > span {
  color: #475467;
  font-size: 13px;
  font-weight: 750;
}

.cc-shell[data-active-page="overview"] .cc-opening-stats-form input,
.cc-shell[data-active-page="overview"] .cc-stack-adjustment input {
  height: 48px;
  padding-inline: 14px;
  font-size: 16px;
  font-weight: 700;
}

.cc-shell[data-active-page="overview"] .cc-opening-stats-actions button {
  min-height: 48px;
  font-size: 14px;
}

.cc-shell[data-active-page="overview"] .cc-quick-stats {
  gap: 11px;
  margin-top: 15px;
}

.cc-shell[data-active-page="overview"] .cc-quick-stat-card {
  gap: 10px;
  padding: 14px 15px;
  border-radius: 13px;
}

.cc-shell[data-active-page="overview"] .cc-quick-stat-card strong {
  font-size: 29px;
}

.cc-shell[data-active-page="overview"] .cc-quick-actions {
  gap: 9px;
}

.cc-shell[data-active-page="overview"] .cc-quick-actions button {
  min-height: 44px;
  font-size: 13px;
  font-weight: 750;
}

.cc-shell[data-active-page="overview"] .cc-stack-summary strong {
  font-size: clamp(31px, 2.1vw, 38px);
  line-height: 1.1;
}

.cc-shell[data-active-page="overview"] .cc-stack-summary small,
.cc-shell[data-active-page="overview"] .cc-stack-summary b {
  font-size: 13px;
}

@media (max-width: 1500px) {
  .cc-shell[data-active-page="overview"] .cc-live-workbench {
    grid-template-columns: minmax(390px, .72fr) minmax(620px, 1.28fr);
  }
  .cc-shell[data-active-page="overview"] .cc-operations-panel { padding: 18px; }
  .cc-shell[data-active-page="overview"] .cc-control-grid button { min-height: 68px; padding-inline: 11px; }
  .cc-shell[data-active-page="overview"] .cc-control-grid button strong { font-size: 14px; }
  .cc-shell[data-active-page="overview"] .cc-control-grid button small { font-size: 10px; }
}

@media (max-width: 1240px) {
  .cc-shell[data-active-page="overview"] .cc-live-workbench {
    grid-template-columns: 1fr;
  }
  .cc-shell[data-active-page="overview"] .cc-live-workbench > .cc-operations-panel {
    border-top: 1px solid var(--cc-console-line);
    border-left: 0;
  }

  .cc-member-coupon-redemption-methods { grid-template-columns: 1fr; }
  .cc-member-coupon-redemption-method form { grid-template-columns: 1fr; }
  .cc-member-coupon-redemption-preview.is-empty,
  .cc-member-coupon-preview-heading { align-items: flex-start; flex-direction: column; }
  .cc-member-coupon-preview-empty { white-space: normal; }
  .cc-member-coupon-redemption-preview.has-preview .cc-member-coupon-confirm-card dl { grid-template-columns: 1fr; }
}

@media (max-width: 900px) {
  .cc-shell[data-active-page="overview"] .cc-live-workbench > .cc-situation-grid {
    display: grid;
    padding: 18px;
  }
}

/* Unified operations UI: extend the member-coupon information hierarchy to the full admin. */
.cc-section-page-title { display: none; }

.cc-shell,
.cc-shell .cc-main,
.cc-shell .cc-content {
  min-width: 0;
}

.cc-shell { overflow-x: clip; }
html,
body { overflow-x: hidden; }

.cc-shell .cc-visually-hidden {
  position: absolute !important;
  overflow: hidden !important;
  width: 1px !important;
  min-width: 1px !important;
  max-width: 1px !important;
  height: 1px !important;
  min-height: 1px !important;
  max-height: 1px !important;
  margin: -1px !important;
  padding: 0 !important;
  border: 0 !important;
  clip: rect(0 0 0 0) !important;
  clip-path: inset(50%) !important;
  contain: strict !important;
  white-space: nowrap !important;
}

.cc-shell[data-active-page]:not([data-active-page="overview"]) .cc-topbar {
  min-height: 92px;
  padding: 14px clamp(22px, 2vw, 36px);
  border-color: #e4e8ed;
  background: rgba(255, 255, 255, .96);
}

.cc-shell[data-active-page]:not([data-active-page="overview"]):not([data-active-page="member-coupons"]) .cc-default-page-title {
  display: none;
}

.cc-shell[data-active-page]:not([data-active-page="overview"]):not([data-active-page="member-coupons"]) .cc-section-page-title {
  display: block;
}

.cc-section-page-title h1 {
  margin: 0;
  color: var(--color-text);
  font-size: 24px;
  line-height: 1.2;
  letter-spacing: -.025em;
}

.cc-section-page-title p {
  margin: 7px 0 0;
  color: var(--color-muted);
  font-size: 12px;
  line-height: 1.5;
}

.cc-shell[data-active-page]:not([data-active-page="overview"]) .cc-topbar-meta {
  gap: 11px;
  flex-wrap: nowrap;
}

.cc-shell[data-active-page]:not([data-active-page="overview"]) .cc-subscription-pill,
.cc-shell[data-active-page]:not([data-active-page="overview"]) .cc-tv-quick-access,
.cc-shell[data-active-page]:not([data-active-page="overview"]) .cc-desktop-meta {
  display: none;
}

.cc-shell[data-active-page]:not([data-active-page="overview"]) .cc-coupon-store-pill,
.cc-shell[data-active-page]:not([data-active-page="overview"]) .cc-coupon-admin-pill {
  display: flex;
  min-width: 150px;
  min-height: 58px;
  align-items: center;
  gap: 10px;
  padding: 8px 13px;
  border: 1px solid #e3e7ec;
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 3px 12px rgba(28, 39, 54, .035);
}

.cc-shell[data-active-page]:not([data-active-page="overview"]) .cc-mode-switch,
.cc-shell[data-active-page]:not([data-active-page="overview"]) .cc-device-pill {
  min-width: 150px;
  min-height: 58px;
  border-color: #e3e7ec;
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 3px 12px rgba(28, 39, 54, .035);
}

.cc-shell[data-active-page]:not([data-active-page="overview"]) .cc-content {
  max-width: none;
  gap: 18px;
  padding: 20px clamp(20px, 2vw, 34px) 42px;
  background: var(--color-bg);
}

.cc-shell[data-active-page]:not([data-active-page="overview"]) .cc-content > [data-cc-page] {
  gap: 18px;
}

.cc-shell[data-active-page]:not([data-active-page="overview"]) .cc-kicker {
  display: none;
}

.cc-shell[data-active-page]:not([data-active-page="overview"]) .cc-panel,
.cc-shell[data-active-page]:not([data-active-page="overview"]) :is(.cc-floor-hero, .cc-store-display-hero, .cc-sng-heading, .cc-member-admin-hero, .cc-performance-hero, .cc-member-space-hero, .cc-store-code-hero, .cc-market-hero) {
  border: 1px solid var(--color-border);
  border-radius: var(--radius-card);
  background: var(--color-surface);
  box-shadow: var(--shadow-card);
}

.cc-shell[data-active-page]:not([data-active-page="overview"]) :is(.cc-floor-hero, .cc-store-display-hero, .cc-member-admin-hero, .cc-performance-hero, .cc-member-space-hero, .cc-store-code-hero) {
  min-height: 96px;
  padding: 20px 24px;
}

.cc-shell[data-active-page]:not([data-active-page="overview"]) :is(.cc-floor-hero, .cc-store-display-hero, .cc-member-admin-hero, .cc-performance-hero, .cc-member-space-hero, .cc-store-code-hero, .cc-market-hero) h2 {
  margin: 0;
  color: var(--color-text);
  font-size: 20px;
  line-height: 1.3;
  letter-spacing: -.02em;
}

.cc-shell[data-active-page]:not([data-active-page="overview"]) :is(.cc-floor-hero, .cc-store-display-hero, .cc-member-admin-hero, .cc-performance-hero, .cc-member-space-hero, .cc-store-code-hero, .cc-market-hero) p,
.cc-shell[data-active-page]:not([data-active-page="overview"]) :is(.cc-floor-hero, .cc-store-display-hero) span {
  margin-top: 7px;
  color: var(--color-muted);
  font-size: 12px;
  line-height: 1.6;
}

.cc-shell[data-active-page]:not([data-active-page="overview"]) .cc-panel-heading h2 {
  font-size: 19px;
  line-height: 1.35;
}

.cc-shell[data-active-page]:not([data-active-page="overview"]) .cc-panel-heading p {
  font-size: 10px;
  letter-spacing: .08em;
}

.cc-shell[data-active-page]:not([data-active-page="overview"]) :is(input, select, textarea) {
  border-color: #dfe4ea;
  border-radius: 10px;
  color: var(--color-text);
  background: #fff;
  font-size: 14px;
}

.cc-shell[data-active-page]:not([data-active-page="overview"]) :is(input, select):not([type="checkbox"]):not([type="radio"]):not([type="file"]) {
  min-height: 46px;
}

.cc-shell[data-active-page]:not([data-active-page="overview"]) :is(button, .cc-primary-button) {
  border-radius: 10px;
}

.cc-shell[data-active-page]:not([data-active-page="overview"]) :is(table th, table td) {
  font-size: 13px;
}

.cc-shell[data-active-page]:not([data-active-page="overview"]) table th {
  height: 52px;
  color: #667085;
  background: #f7f9fb;
  font-weight: 750;
}

.cc-shell[data-active-page]:not([data-active-page="overview"]) table td {
  min-height: 64px;
  color: #344054;
}

/* Today sessions and operational overview bars. */
.cc-shell[data-active-page="sng"] .cc-sng-heading {
  display: grid;
  grid-template-columns: minmax(280px, .7fr) minmax(620px, 1.3fr);
  align-items: stretch;
  gap: 20px;
  padding: 20px 22px;
}

.cc-shell[data-active-page="sng"] .cc-sng-heading > div:first-child {
  align-self: center;
}

.cc-shell[data-active-page="sng"] .cc-sng-heading > div:first-child h2 {
  font-size: 20px;
}

.cc-shell[data-active-page="sng"] .cc-sng-metrics {
  overflow: hidden;
  border: 1px solid #e7eaee;
  border-radius: 13px;
  background: #fafbfc;
  box-shadow: none;
}

.cc-shell[data-active-page="sng"] .cc-sng-metrics article {
  min-height: 76px;
  padding: 14px 16px;
  border-right: 1px solid #e7eaee;
  background: transparent;
}

.cc-shell[data-active-page="sng"] .cc-sng-metrics article:last-child { border-right: 0; }
.cc-shell[data-active-page="sng"] .cc-sng-metrics strong { font-size: 24px; }
.cc-shell[data-active-page="sng"] .cc-sng-metrics span { font-size: 11px; }

.cc-shell[data-active-page="sng"] .cc-sng-metrics article.is-attention {
  transition: color .18s ease, background .18s ease;
}

.cc-shell[data-active-page="sng"] .cc-sng-metrics article.is-attention.has-items {
  background: linear-gradient(145deg, #fff2f4, #fff8f9);
}

.cc-shell[data-active-page="sng"] .cc-sng-metrics article.is-attention.has-items strong,
.cc-shell[data-active-page="sng"] .cc-sng-metrics article.is-attention.has-items span {
  color: var(--cc-red);
}

.cc-shell[data-active-page="sng"] .cc-sng-dispatch-panel { padding: 22px; }
.cc-shell[data-active-page="sng"] .cc-sng-filter-tabs {
  padding: 10px;
  border: 1px solid #e4e8ed;
  border-radius: 12px;
  background: #f7f9fb;
}

.cc-shell[data-active-page="sng"] .cc-sng-filter-tabs button {
  min-height: 38px;
  padding-inline: 18px;
  border: 0;
  background: transparent;
}

.cc-shell[data-active-page="sng"] .cc-sng-filter-tabs button.is-active {
  color: var(--color-primary);
  background: #fff;
  box-shadow: 0 2px 10px rgba(28, 39, 54, .06);
}

/* Member administration: directory first, complex operations remain focused. */
.cc-shell[data-active-page="members"] .cc-member-admin-hero,
.cc-shell[data-active-page="members"] .cc-member-admin-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
}

.cc-shell[data-active-page="members"] .cc-member-admin-metrics,
.cc-shell[data-active-page="member-code"] .cc-store-code-metrics,
.cc-shell[data-active-page="floor"] .cc-floor-metrics {
  overflow: hidden;
  gap: 0;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-card);
  background: #fff;
  box-shadow: var(--shadow-card);
}

.cc-shell[data-active-page="members"] .cc-member-admin-metrics article,
.cc-shell[data-active-page="member-code"] .cc-store-code-metrics article,
.cc-shell[data-active-page="floor"] .cc-floor-metrics article {
  min-height: 92px;
  padding: 16px 22px;
  border: 0;
  border-right: 1px solid #e7eaee;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.cc-shell[data-active-page="members"] .cc-member-admin-metrics article:last-child,
.cc-shell[data-active-page="member-code"] .cc-store-code-metrics article:last-child,
.cc-shell[data-active-page="floor"] .cc-floor-metrics article:last-child { border-right: 0; }

.cc-shell[data-active-page="members"] .cc-member-admin-toolbar {
  padding: 16px 18px;
}

.cc-shell[data-active-page="members"] .cc-member-admin-toolbar form {
  flex: 1 1 520px;
}

.cc-shell[data-active-page="members"] .cc-member-admin-layout {
  grid-template-columns: 1fr;
}

.cc-shell[data-active-page="members"] .cc-member-directory-panel {
  padding: 0;
}

.cc-shell[data-active-page="members"] .cc-member-directory-panel > .cc-panel-heading {
  min-height: 72px;
  padding: 15px 22px;
  border-bottom: 1px solid #e7eaee;
}

/* Rankings: a restrained SaaS honor board with one continuous reading flow. */
.cc-shell[data-active-page="rankings"] .cc-performance-page {
  gap: 14px;
}

.cc-shell[data-active-page="rankings"] .cc-ranking-alerts {
  display: grid;
  gap: 8px;
}

.cc-shell[data-active-page="rankings"] .cc-ranking-alerts[hidden] { display: none; }

.cc-shell[data-active-page="rankings"] .cc-ranking-alert {
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr) auto;
  align-items: center;
  min-height: 48px;
  gap: 12px;
  padding: 8px 14px;
  border: 1px solid #f4c7ce;
  border-radius: 12px;
  color: #a61b31;
  background: #fff6f7;
}

.cc-shell[data-active-page="rankings"] .cc-ranking-alert > span {
  display: grid;
  width: 24px;
  height: 24px;
  place-items: center;
  border-radius: 50%;
  color: #fff;
  background: #f04438;
  font-size: 12px;
  font-weight: 900;
}

.cc-shell[data-active-page="rankings"] .cc-ranking-alert strong,
.cc-shell[data-active-page="rankings"] .cc-ranking-alert p { margin: 0; }
.cc-shell[data-active-page="rankings"] .cc-ranking-alert strong { font-size: 13px; }
.cc-shell[data-active-page="rankings"] .cc-ranking-alert p { margin-top: 2px; color: #8f4a55; font-size: 12px; }
.cc-shell[data-active-page="rankings"] .cc-ranking-alert button { min-height: 32px; padding: 0 12px; border: 1px solid #ef9baa; border-radius: 8px; color: #b4233a; background: #fff; font-weight: 750; cursor: pointer; }

.cc-shell[data-active-page="rankings"] .cc-ranking-overview {
  display: grid;
  grid-template-columns: minmax(0, 1.12fr) minmax(360px, .88fr);
  align-items: center;
  gap: 18px;
  min-height: 104px;
  padding: 18px 22px;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-card);
  background: #fff;
  box-shadow: var(--shadow-card);
}

.cc-shell[data-active-page="rankings"] .cc-ranking-overview-copy {
  display: flex;
  align-items: center;
  gap: 16px;
}

.cc-shell[data-active-page="rankings"] .cc-ranking-overview-icon {
  display: grid;
  width: 44px;
  height: 44px;
  flex: 0 0 44px;
  place-items: center;
  border: 1px solid #ffc4cd;
  border-radius: 13px;
  color: var(--color-primary);
  background: #fff5f7;
}

.cc-shell[data-active-page="rankings"] .cc-ranking-overview-icon svg { width: 23px; height: 23px; }
.cc-shell[data-active-page="rankings"] .cc-ranking-overview h2 { margin: 0 0 5px; font-size: 19px; }
.cc-shell[data-active-page="rankings"] .cc-ranking-overview p { color: var(--color-text-secondary); font-size: 13px; }

.cc-shell[data-active-page="rankings"] .cc-ranking-rule {
  min-width: 0;
  padding: 13px 16px;
  border: 1px solid #e8ecf2;
  border-radius: 12px;
  background: #f8fafc;
}

.cc-shell[data-active-page="rankings"] .cc-ranking-rule span { color: var(--color-text-tertiary); font-size: 11px; }
.cc-shell[data-active-page="rankings"] .cc-ranking-rule strong { max-width: none; margin-top: 4px; color: var(--color-text); font-size: 14px; line-height: 1.45; }

.cc-shell[data-active-page="rankings"] .cc-ranking-board {
  overflow: hidden;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-card);
  background: #fff;
  box-shadow: var(--shadow-card);
}

.cc-shell[data-active-page="rankings"] .cc-ranking-controls {
  gap: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.cc-shell[data-active-page="rankings"] .cc-ranking-type-tabs {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0;
  padding: 0 10px;
  border-bottom: 1px solid #edf0f4;
  border-radius: 0;
  background: #fff;
}

.cc-shell[data-active-page="rankings"] .cc-ranking-type-tabs button {
  position: relative;
  min-height: 54px;
  border: 0;
  border-radius: 0;
  color: #667085;
  background: transparent;
  font-size: 14px;
  font-weight: 760;
  box-shadow: none;
}

.cc-shell[data-active-page="rankings"] .cc-ranking-type-tabs button::after {
  position: absolute;
  right: 18%;
  bottom: 0;
  left: 18%;
  height: 2px;
  border-radius: 2px;
  background: transparent;
  content: "";
}

.cc-shell[data-active-page="rankings"] .cc-ranking-type-tabs button.is-active {
  color: var(--color-primary);
  background: #fff;
  box-shadow: none;
}

.cc-shell[data-active-page="rankings"] .cc-ranking-type-tabs button.is-active::after { background: var(--color-primary); }

.cc-shell[data-active-page="rankings"] .cc-ranking-period-row {
  grid-template-columns: minmax(300px, 470px) minmax(340px, 1fr);
  gap: 18px;
  min-height: 62px;
  padding: 10px 14px;
  border-bottom: 1px solid #edf0f4;
  background: #fbfcfd;
}

.cc-shell[data-active-page="rankings"] .cc-ranking-period-tabs {
  grid-template-columns: repeat(3, minmax(86px, 1fr));
  gap: 4px;
  padding: 4px;
  border-radius: 11px;
  background: #f0f2f5;
}

.cc-shell[data-active-page="rankings"] .cc-ranking-period-tabs button {
  min-height: 36px;
  border: 0;
  border-radius: 8px;
  color: #667085;
  background: transparent;
  font-size: 13px;
  font-weight: 730;
}

.cc-shell[data-active-page="rankings"] .cc-ranking-period-tabs button.is-active {
  color: var(--color-primary);
  background: #fff;
  box-shadow: 0 2px 8px rgba(16, 24, 40, .07);
}

.cc-shell[data-active-page="rankings"] .cc-ranking-period-nav {
  grid-template-columns: 38px minmax(190px, 1fr) 38px;
  justify-self: end;
  width: min(100%, 420px);
}

.cc-shell[data-active-page="rankings"] .cc-ranking-period-nav > button {
  min-height: 38px;
  border: 1px solid #e2e7ed;
  border-radius: 9px;
  color: #667085;
  background: #fff;
  font-size: 20px;
}

.cc-shell[data-active-page="rankings"] .cc-ranking-period-nav > div {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  min-height: 38px;
  border-top: 1px solid #e8ecf2;
  border-bottom: 1px solid #e8ecf2;
  background: #fff;
}

.cc-shell[data-active-page="rankings"] .cc-ranking-period-nav strong,
.cc-shell[data-active-page="rankings"] .cc-ranking-period-nav span { margin: 0; font-size: 12px; }
.cc-shell[data-active-page="rankings"] .cc-ranking-period-nav strong { color: #344054; font-weight: 760; }
.cc-shell[data-active-page="rankings"] .cc-ranking-period-nav span { color: #7b8492; }

.cc-shell[data-active-page="rankings"] .cc-ranking-podium {
  display: grid;
  grid-template-columns: minmax(0, .94fr) minmax(0, 1.08fr) minmax(0, .94fr);
  align-items: end;
  gap: 18px;
  min-height: 218px;
  padding: 30px 18px 18px;
}

.cc-shell[data-active-page="rankings"] .cc-ranking-podium:has(> article:only-child) {
  grid-template-columns: minmax(280px, 430px);
  justify-content: center;
}

.cc-shell[data-active-page="rankings"] .cc-ranking-podium:has(> article:nth-child(2):last-child) {
  grid-template-columns: repeat(2, minmax(280px, 430px));
  justify-content: center;
}

.cc-shell[data-active-page="rankings"] .cc-ranking-podium article {
  position: relative;
  isolation: isolate;
  display: grid;
  min-width: 0;
  min-height: 158px;
  justify-items: center;
  align-content: center;
  gap: 5px;
  padding: 18px 16px 15px;
  border: 1px solid #e5e9ef;
  border-radius: 17px;
  color: #171b24;
  background: linear-gradient(145deg, #fff, #fafbfc);
  box-shadow: 0 4px 18px rgba(16, 24, 40, .04);
}

.cc-shell[data-active-page="rankings"] .cc-ranking-podium article[data-place="1"] {
  order: 2;
  min-height: 176px;
  border-color: rgba(214, 166, 66, .55);
  background: linear-gradient(135deg, rgba(255, 249, 231, .92), #fff 72%);
  box-shadow: 0 8px 28px rgba(180, 135, 45, .08);
  transform: translateY(-8px);
}

.cc-shell[data-active-page="rankings"] .cc-ranking-podium article:only-child {
  order: initial;
}

.cc-shell[data-active-page="rankings"] .cc-ranking-podium article[data-place="1"]::before {
  position: absolute;
  z-index: -1;
  inset: 0;
  border-radius: inherit;
  background: radial-gradient(circle at 50% 10%, rgba(231, 190, 91, .18), transparent 52%);
  content: "";
}

.cc-shell[data-active-page="rankings"] .cc-ranking-podium article[data-place="2"] {
  order: 1;
  border-color: #d8dee7;
  background: linear-gradient(145deg, #fff, #f6f8fa);
}

.cc-shell[data-active-page="rankings"] .cc-ranking-podium article[data-place="3"] {
  order: 3;
  border-color: #ead3c4;
  background: linear-gradient(145deg, #fff, #fcf5f0);
}

.cc-shell[data-active-page="rankings"] .cc-ranking-honor-icon {
  position: absolute;
  top: -16px;
  display: grid;
  width: 34px;
  height: 34px;
  place-items: center;
  border: 1px solid currentColor;
  border-radius: 50%;
  color: #9aa4b2;
  background: #f7f8fa;
  box-shadow: 0 3px 10px rgba(16, 24, 40, .08);
}

.cc-shell[data-active-page="rankings"] article[data-place="1"] .cc-ranking-honor-icon { width: 39px; height: 39px; top: -20px; color: #d6a642; background: #fff9e8; }
.cc-shell[data-active-page="rankings"] article[data-place="3"] .cc-ranking-honor-icon { color: #c78354; background: #faeee6; }
.cc-shell[data-active-page="rankings"] .cc-ranking-honor-icon svg { width: 19px; height: 19px; }

.cc-shell[data-active-page="rankings"] .cc-ranking-place {
  color: #667085;
  font-size: 11px;
  font-weight: 760;
}

.cc-shell[data-active-page="rankings"] article[data-place="1"] .cc-ranking-place { color: #8b681d; }
.cc-shell[data-active-page="rankings"] article[data-place="3"] .cc-ranking-place { color: #9a5d36; }
.cc-shell[data-active-page="rankings"] .cc-ranking-podium .cc-member-avatar { width: 40px; height: 40px; border-radius: 12px; font-size: 15px; overflow: hidden; }
.cc-shell[data-active-page="rankings"] article[data-place="1"] .cc-member-avatar { width: 46px; height: 46px; border-radius: 14px; }
.cc-shell[data-active-page="rankings"] .cc-member-avatar img { width: 100%; height: 100%; object-fit: cover; }
.cc-shell[data-active-page="rankings"] .cc-ranking-podium article > strong { max-width: 100%; overflow: hidden; font-size: 16px; text-overflow: ellipsis; white-space: nowrap; }
.cc-shell[data-active-page="rankings"] .cc-ranking-podium article > em { color: #98a2b3; font-size: 10px; font-style: normal; }
.cc-shell[data-active-page="rankings"] .cc-ranking-podium article > b { margin-top: 1px; font-size: 25px; font-weight: 680; letter-spacing: -.02em; }
.cc-shell[data-active-page="rankings"] .cc-ranking-podium article > b small { color: inherit; font-size: 13px; font-weight: 650; }
.cc-shell[data-active-page="rankings"] .cc-ranking-podium article > p { max-width: 100%; margin: 0; overflow: hidden; color: #7b8492; font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }

.cc-shell[data-active-page="rankings"] .cc-ranking-empty {
  grid-column: 1 / -1;
  display: grid;
  min-height: 190px;
  place-items: center;
  align-content: center;
  gap: 6px;
  color: #98a2b3;
  text-align: center;
}

.cc-shell[data-active-page="rankings"] .cc-ranking-empty > span { display: grid; width: 42px; height: 42px; place-items: center; border-radius: 13px; background: #f3f5f8; }
.cc-shell[data-active-page="rankings"] .cc-ranking-empty svg { width: 24px; height: 24px; }
.cc-shell[data-active-page="rankings"] .cc-ranking-empty strong { color: #344054; font-size: 16px; }
.cc-shell[data-active-page="rankings"] .cc-ranking-empty p { margin: 0; font-size: 12px; }

.cc-shell[data-active-page="rankings"] .cc-ranking-table-panel {
  overflow: hidden;
  padding: 0;
}

.cc-shell[data-active-page="rankings"] .cc-ranking-table-panel > .cc-panel-heading {
  min-height: 70px;
  padding: 13px 18px;
}

.cc-shell[data-active-page="rankings"] .cc-ranking-table-panel > .cc-panel-heading p { color: var(--color-primary); }
.cc-shell[data-active-page="rankings"] .cc-ranking-table-panel > .cc-panel-heading h2 { font-size: 17px; }

.cc-shell[data-active-page="rankings"] .cc-ranking-table-meta {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 7px;
  flex-wrap: wrap;
}

.cc-shell[data-active-page="rankings"] .cc-ranking-table-meta span,
.cc-shell[data-active-page="rankings"] .cc-ranking-table-meta button {
  min-height: 30px;
  padding: 0 10px;
  border: 1px solid #e3e8ef;
  border-radius: 8px;
  color: #667085;
  background: #fff;
  font-size: 11px;
  font-weight: 680;
}

.cc-shell[data-active-page="rankings"] .cc-ranking-table-meta span { display: inline-flex; align-items: center; }
.cc-shell[data-active-page="rankings"] .cc-ranking-table-meta button { color: var(--color-primary); cursor: pointer; }
.cc-shell[data-active-page="rankings"] .cc-ranking-table-wrap { margin: 0; border-top: 1px solid #edf0f4; }
.cc-shell[data-active-page="rankings"] .cc-ranking-table { min-width: 880px; }
.cc-shell[data-active-page="rankings"] .cc-ranking-table th { padding: 11px 16px; color: #667085; background: #f8fafc; font-size: 11px; font-weight: 720; }
.cc-shell[data-active-page="rankings"] .cc-ranking-table td { height: 60px; padding: 10px 16px; border-bottom: 1px solid #edf0f4; color: #475467; font-size: 13px; }
.cc-shell[data-active-page="rankings"] .cc-ranking-table tbody tr:last-child td { border-bottom: 0; }
.cc-shell[data-active-page="rankings"] .cc-ranking-table tbody tr:hover td { background: #fafbfc; }
.cc-shell[data-active-page="rankings"] .cc-ranking-table td:nth-child(3) { color: #171b24; }

.cc-shell[data-active-page="rankings"] .cc-ranking-member .cc-member-avatar { width: 34px; height: 34px; flex: 0 0 34px; border-radius: 10px; overflow: hidden; font-size: 12px; }
.cc-shell[data-active-page="rankings"] .cc-ranking-member > div { min-width: 0; }
.cc-shell[data-active-page="rankings"] .cc-ranking-member strong,
.cc-shell[data-active-page="rankings"] .cc-ranking-member span { display: block; }
.cc-shell[data-active-page="rankings"] .cc-ranking-member strong { color: #27313d; font-size: 13px; }
.cc-shell[data-active-page="rankings"] .cc-ranking-member > div > span { margin-top: 2px; color: #98a2b3; font-size: 10px; }

.cc-shell[data-active-page="rankings"] .cc-rank-number {
  display: inline-grid;
  width: 26px;
  height: 26px;
  place-items: center;
  border-radius: 50%;
  color: #667085;
  background: #eef1f5;
  font-size: 12px;
  font-weight: 760;
}

.cc-shell[data-active-page="rankings"] tr[data-rank="1"] .cc-rank-number { color: #8b681d; background: #fff3c9; }
.cc-shell[data-active-page="rankings"] tr[data-rank="2"] .cc-rank-number { color: #66717f; background: #e9edf2; }
.cc-shell[data-active-page="rankings"] tr[data-rank="3"] .cc-rank-number { color: #995b34; background: #fae8dc; }
.cc-shell[data-active-page="rankings"] .cc-ranking-primary-value { font-weight: 700; }
.cc-shell[data-active-page="rankings"] .cc-ranking-crown { margin-right: 4px; color: #d6a642; font-size: 11px; }
.cc-shell[data-active-page="rankings"] .cc-ranking-table button { min-height: 30px; padding: 0 11px; border-color: #e2e7ed; color: #475467; font-size: 11px; }

.cc-shell[data-active-page="rankings"] .cc-ranking-table-empty {
  display: grid;
  min-height: 122px;
  place-items: center;
  align-content: center;
  gap: 5px;
  color: #98a2b3;
  text-align: center;
}

.cc-shell[data-active-page="rankings"] .cc-ranking-table-empty strong { color: #475467; }
.cc-shell[data-active-page="rankings"] .cc-ranking-table-empty span { font-size: 12px; }

.cc-shell[data-active-page="rankings"] :is(.cc-ranking-podium-skeleton, .cc-ranking-row-skeleton i) {
  background: linear-gradient(90deg, #f1f3f6 20%, #fafbfc 40%, #f1f3f6 60%);
  background-size: 300% 100%;
  animation: cc-ranking-skeleton 1.25s ease-in-out infinite;
}

.cc-shell[data-active-page="rankings"] .cc-ranking-podium-skeleton { border-color: #edf0f4; box-shadow: none; transform: none; }
.cc-shell[data-active-page="rankings"] .cc-ranking-podium-skeleton i { width: 42px; height: 42px; border-radius: 12px; background: rgba(255,255,255,.7); }
.cc-shell[data-active-page="rankings"] .cc-ranking-podium-skeleton span { width: 72px; height: 11px; border-radius: 5px; background: rgba(255,255,255,.72); }
.cc-shell[data-active-page="rankings"] .cc-ranking-podium-skeleton b { width: 96px; height: 22px; border-radius: 6px; background: rgba(255,255,255,.75); }
.cc-shell[data-active-page="rankings"] .cc-ranking-podium-skeleton small { width: 150px; max-width: 80%; height: 9px; border-radius: 4px; background: rgba(255,255,255,.7); }
.cc-shell[data-active-page="rankings"] .cc-ranking-row-skeleton i { display: block; width: 75%; height: 11px; border-radius: 5px; }

@keyframes cc-ranking-skeleton {
  0% { background-position: 100% 0; }
  100% { background-position: 0 0; }
}

/* Member-space settings become a top preview plus a card-based configuration flow. */
.cc-shell[data-active-page="member-space"] .cc-member-space-layout {
  grid-template-columns: 1fr;
}

.cc-shell[data-active-page="member-space"] .cc-member-space-preview {
  position: static;
  display: grid;
  grid-template-columns: minmax(210px, .8fr) minmax(240px, 1fr) minmax(310px, 1.3fr) minmax(160px, .6fr);
  align-items: center;
  gap: 18px;
  min-height: 150px;
  padding: 20px 22px;
}

.cc-shell[data-active-page="member-space"] .cc-member-space-preview blockquote {
  margin: 0;
}

.cc-shell[data-active-page="member-space"] .cc-member-space-preview > small {
  justify-self: end;
  text-align: right;
}

.cc-shell[data-active-page="member-space"] .cc-member-space-form {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.cc-shell[data-active-page="member-space"] :is(.cc-member-space-status-card, .cc-member-space-benefits-card, .cc-member-growth-levels-card, .cc-member-space-code-entry, .cc-member-space-platform-note, .cc-member-space-form-actions) {
  grid-column: 1 / -1;
}

.cc-shell[data-active-page="member-space"] .cc-member-space-config-card {
  margin: 0;
}

/* Store code and display pages use one unified work surface rather than floating left/right cards. */
.cc-shell[data-active-page="member-code"] .cc-store-code-layout,
.cc-shell[data-active-page="store-display"] .cc-store-display-grid {
  align-items: stretch;
  gap: 0;
  overflow: hidden;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-card);
  background: #fff;
  box-shadow: var(--shadow-card);
}

.cc-shell[data-active-page="member-code"] .cc-store-code-layout > .cc-panel,
.cc-shell[data-active-page="store-display"] .cc-store-display-grid > .cc-panel {
  min-height: 100%;
  border: 0;
  border-radius: 0;
  box-shadow: none;
}

.cc-shell[data-active-page="member-code"] .cc-store-code-management,
.cc-shell[data-active-page="store-display"] .cc-store-display-grid > .cc-panel + .cc-panel {
  border-left: 1px solid #e7eaee;
}

.cc-shell[data-active-page="member-code"] .cc-store-code-management {
  gap: 0;
}

.cc-shell[data-active-page="member-code"] .cc-store-code-management > .cc-panel {
  border: 0;
  border-bottom: 1px solid #e7eaee;
  border-radius: 0;
  box-shadow: none;
}

.cc-shell[data-active-page="member-code"] .cc-store-code-management > .cc-panel:last-child { border-bottom: 0; }

/* Market and audit pages adopt a single reading flow. */
.cc-shell[data-active-page="market"] .cc-market-hero {
  min-height: 104px;
  padding: 20px 22px;
}

.cc-shell[data-active-page="market"] .cc-market-stats div {
  border-color: #e5e9ef;
  background: #f7f9fb;
  backdrop-filter: none;
}

.cc-shell[data-active-page="market"] .cc-market-stats strong {
  color: var(--color-text);
}

.cc-shell[data-active-page="market"] .cc-market-stats span {
  color: var(--color-muted);
}

.cc-shell[data-active-page="market"] .cc-market-toolbar {
  padding: 12px;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-card);
  background: #fff;
  box-shadow: var(--shadow-card);
}

.cc-shell[data-active-page="market"] .cc-market-filters {
  padding: 5px;
  border-radius: 11px;
  background: #f5f7f9;
}

.cc-shell[data-active-page="market"] .cc-market-filters button {
  min-height: 40px;
  border: 0;
  background: transparent;
}

.cc-shell[data-active-page="market"] .cc-market-filters button.is-active {
  color: var(--color-primary);
  background: #fff;
  box-shadow: 0 2px 10px rgba(28, 39, 54, .06);
}

.cc-shell[data-active-page="audit"] .cc-bottom-grid {
  grid-template-columns: 1fr;
  gap: 18px;
}

.cc-shell[data-active-page="audit"] .cc-bottom-grid > .cc-panel {
  padding: 0;
  overflow: hidden;
}

.cc-shell[data-active-page="audit"] .cc-bottom-grid > .cc-panel > .cc-panel-heading {
  min-height: 72px;
  padding: 15px 22px;
  border-bottom: 1px solid #e7eaee;
}

@media (max-width: 1500px) {
  .cc-shell[data-active-page]:not([data-active-page="overview"]) .cc-coupon-admin-pill { display: none; }
  .cc-shell[data-active-page="sng"] .cc-sng-heading { grid-template-columns: 1fr; }
  .cc-shell[data-active-page="rankings"] .cc-ranking-podium { gap: 12px; padding-inline: 14px; }
  .cc-shell[data-active-page="rankings"] .cc-ranking-podium article { padding-inline: 12px; }
  .cc-shell[data-active-page="rankings"] .cc-ranking-table-meta span:nth-child(3) { display: none; }
  .cc-shell[data-active-page="member-space"] .cc-member-space-preview { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .cc-shell[data-active-page="member-space"] .cc-member-space-preview > small { grid-column: 1 / -1; justify-self: start; text-align: left; }
}

@media (max-width: 1240px) {
  .cc-shell[data-active-page]:not([data-active-page="overview"]) .cc-coupon-store-pill { display: none; }
  .cc-shell[data-active-page="rankings"] .cc-ranking-overview { grid-template-columns: 1fr; }
  .cc-shell[data-active-page="rankings"] .cc-ranking-period-row { grid-template-columns: 1fr; }
  .cc-shell[data-active-page="rankings"] .cc-ranking-period-nav { justify-self: stretch; width: 100%; }
  .cc-shell[data-active-page="rankings"] .cc-ranking-podium { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .cc-shell[data-active-page="rankings"] .cc-ranking-table-panel > .cc-panel-heading { align-items: flex-start; flex-direction: column; }
  .cc-shell[data-active-page="rankings"] .cc-ranking-table-meta { justify-content: flex-start; }
  .cc-shell[data-active-page="member-space"] .cc-member-space-form { grid-template-columns: 1fr; }
  .cc-shell[data-active-page="member-space"] .cc-member-space-form > * { grid-column: auto; }
  .cc-shell[data-active-page="member-code"] .cc-store-code-layout,
  .cc-shell[data-active-page="store-display"] .cc-store-display-grid { grid-template-columns: 1fr; }
  .cc-seat-welcome-history { grid-template-columns: 1fr; }
  .cc-shell[data-active-page="member-code"] .cc-store-code-management,
  .cc-shell[data-active-page="store-display"] .cc-store-display-grid > .cc-panel + .cc-panel { border-top: 1px solid #e7eaee; border-left: 0; }
}

@media (max-width: 900px) {
  .cc-section-page-title h1 { font-size: 20px; }
  .cc-section-page-title p { display: none; }
  .cc-shell[data-active-page]:not([data-active-page="overview"]) .cc-content { padding: 14px; }
  .cc-shell[data-active-page]:not([data-active-page="overview"]) :is(.cc-floor-hero, .cc-store-display-hero, .cc-member-admin-hero, .cc-performance-hero, .cc-member-space-hero, .cc-store-code-hero) { align-items: stretch; flex-direction: column; }
  .cc-shell[data-active-page="members"] .cc-member-admin-toolbar { align-items: stretch; flex-direction: column; }
  .cc-shell[data-active-page="member-space"] .cc-member-space-preview { grid-template-columns: 1fr; }
  .cc-shell[data-active-page="member-space"] .cc-member-space-preview > small { grid-column: auto; }
  .cc-shell[data-active-page="rankings"] .cc-performance-hero { align-items: stretch; flex-direction: column; }
  .cc-shell[data-active-page="rankings"] .cc-ranking-alert { grid-template-columns: 26px minmax(0, 1fr); }
  .cc-shell[data-active-page="rankings"] .cc-ranking-alert button { grid-column: 2; justify-self: start; }
  .cc-shell[data-active-page="rankings"] .cc-ranking-overview { padding: 16px; }
  .cc-shell[data-active-page="rankings"] .cc-ranking-podium { grid-template-columns: 1fr; align-items: stretch; padding-top: 24px; }
  .cc-shell[data-active-page="rankings"] .cc-ranking-podium article[data-place] { order: initial; min-height: 150px; transform: none; }
  .cc-shell[data-active-page="rankings"] .cc-ranking-podium article[data-place="1"] { order: -1; }
}

/* 2026-09 unified admin typography baseline.
   Keep page layouts intact while making operational text readable at 1440/1920 widths. */
.cc-shell[data-active-page] {
  --cc-type-page-title: 24px;
  --cc-type-section-title: 20px;
  --cc-type-card-title: 16px;
  --cc-type-body: 14px;
  --cc-type-control: 14px;
  --cc-type-table: 13px;
  --cc-type-label: 13px;
  --cc-type-caption: 12px;
}

/* Sidebar navigation is a primary operation surface, so it uses a larger scale than captions. */
.cc-shell[data-active-page] .cc-brand-mark {
  font-size: 15px;
}

.cc-shell[data-active-page] .cc-brand strong {
  font-size: 20px;
  line-height: 1.25;
}

.cc-shell[data-active-page] .cc-brand small {
  margin-top: 4px;
  font-size: 12px;
  line-height: 1.35;
}

.cc-shell[data-active-page] .cc-nav a {
  min-height: 52px;
  gap: 14px;
  padding-inline: 18px;
  font-size: 15px;
  line-height: 1.3;
}

.cc-shell[data-active-page] .cc-nav a .cc-nav-icon {
  width: 23px;
  height: 23px;
  flex-basis: 23px;
}

.cc-shell[data-active-page] .cc-nav a .cc-nav-icon svg {
  width: 22px;
  height: 22px;
}

.cc-shell[data-active-page] .cc-sidebar-footer > button strong {
  font-size: 14px;
}

.cc-shell[data-active-page] :is(.cc-default-page-title, .cc-section-page-title, .cc-coupon-page-title) h1 {
  font-size: var(--cc-type-page-title);
  line-height: 1.2;
}

.cc-shell[data-active-page="overview"] .cc-overview-page-title h1 {
  font-size: var(--cc-type-page-title);
  line-height: 1.2;
}

.cc-shell[data-active-page] :is(.cc-default-page-title, .cc-section-page-title, .cc-coupon-page-title) p {
  font-size: 13px;
  line-height: 1.5;
}

.cc-shell[data-active-page] .cc-topbar-meta :is(.cc-coupon-store-pill, .cc-coupon-admin-pill, .cc-mode-switch, .cc-device-pill) strong {
  font-size: 13px;
}

.cc-shell[data-active-page] .cc-topbar-meta :is(.cc-coupon-store-pill, .cc-coupon-admin-pill, .cc-mode-switch, .cc-device-pill) small {
  font-size: var(--cc-type-caption);
  line-height: 1.35;
}

.cc-shell[data-active-page] .cc-content :is(input, select, textarea):not([type="checkbox"]):not([type="radio"]):not([type="file"]) {
  font-size: var(--cc-type-body);
  line-height: 1.35;
}

.cc-shell[data-active-page] .cc-content button {
  font-size: var(--cc-type-control);
  line-height: 1.35;
}

.cc-shell[data-active-page] .cc-content :is(table th, table td) {
  font-size: var(--cc-type-table);
  line-height: 1.45;
}

.cc-shell[data-active-page] .cc-content small {
  font-size: var(--cc-type-caption);
  line-height: 1.45;
}

.cc-shell[data-active-page] .cc-content label {
  font-size: var(--cc-type-label);
}

.cc-shell[data-active-page] .cc-content .cc-panel-heading p {
  font-size: var(--cc-type-label);
  line-height: 1.5;
}

.cc-shell[data-active-page] .cc-content .cc-panel-heading > span {
  font-size: var(--cc-type-caption);
  line-height: 1.4;
}

/* Tournament console: remove the compact 6-10px legacy scale. */
.cc-shell[data-active-page="overview"] .cc-tournament-card-top,
.cc-shell[data-active-page="overview"] .cc-tournament-card-clock span,
.cc-shell[data-active-page="overview"] .cc-tournament-card-stats,
.cc-shell[data-active-page="overview"] .cc-tv-routing-device small,
.cc-shell[data-active-page="overview"] .cc-clock-wrap p,
.cc-shell[data-active-page="overview"] .cc-progress-label,
.cc-shell[data-active-page="overview"] .cc-next-blind > p,
.cc-shell[data-active-page="overview"] .cc-secondary-status span,
.cc-shell[data-active-page="overview"] .cc-secondary-status small,
.cc-shell[data-active-page="overview"] .cc-left-safety-actions small,
.cc-shell[data-active-page="overview"] .cc-console-config-panel .cc-panel-heading p {
  font-size: var(--cc-type-caption);
  line-height: 1.45;
}

.cc-shell[data-active-page="overview"] .cc-tournament-card-top em,
.cc-shell[data-active-page="overview"] .cc-tournament-more summary,
.cc-shell[data-active-page="overview"] .cc-tv-routing-heading-actions strong,
.cc-shell[data-active-page="overview"] .cc-tv-routing-device > span,
.cc-shell[data-active-page="overview"] .cc-section-label span,
.cc-shell[data-active-page="overview"] .cc-blind-values span,
.cc-shell[data-active-page="overview"] .cc-ante-row span,
.cc-shell[data-active-page="overview"] .cc-next-summary span,
.cc-shell[data-active-page="overview"] .cc-current-event-heading em,
.cc-shell[data-active-page="overview"] .cc-live-status,
.cc-shell[data-active-page="overview"] .cc-left-safety-actions strong {
  font-size: var(--cc-type-caption);
}

.cc-shell[data-active-page="overview"] .cc-tournament-card-stats b,
.cc-shell[data-active-page="overview"] .cc-tv-routing-device strong,
.cc-shell[data-active-page="overview"] .cc-tv-routing-item :is(select, button),
.cc-shell[data-active-page="overview"] .cc-tv-routing-actions a,
.cc-shell[data-active-page="overview"] .cc-console-config-switcher button {
  font-size: var(--cc-type-control);
}

.cc-shell[data-active-page="overview"] .cc-tournament-card-actions :is(button, a),
.cc-shell[data-active-page="overview"] .cc-tv-quick-bind-form :is(input, button),
.cc-shell[data-active-page="overview"] .cc-opening-stats-actions button,
.cc-shell[data-active-page="overview"] .cc-quick-actions button {
  min-height: 38px;
  font-size: var(--cc-type-control);
}

.cc-shell[data-active-page="overview"] .cc-tv-routing-heading h3,
.cc-shell[data-active-page="overview"] .cc-tournament-switcher-heading h2,
.cc-shell[data-active-page="overview"] .cc-console-config-switcher > div h2,
.cc-shell[data-active-page="overview"] .cc-console-config-panel .cc-panel-heading h2 {
  font-size: var(--cc-type-card-title);
}

.cc-shell[data-active-page="overview"] .cc-tournament-switcher-heading h2 {
  font-size: var(--cc-type-section-title);
}

.cc-shell[data-active-page="overview"] .cc-tv-routing-heading span,
.cc-shell[data-active-page="overview"] .cc-operations-heading p,
.cc-shell[data-active-page="overview"] .cc-operations-panel .cc-panel-intro,
.cc-shell[data-active-page="overview"] .cc-quick-stats-heading span {
  font-size: var(--cc-type-label);
  line-height: 1.5;
}

/* Keep the high-frequency console direct: title, state, then actions. */
.cc-shell[data-active-page="overview"] .cc-operations-heading p,
.cc-shell[data-active-page="overview"] .cc-operations-panel > .cc-panel-intro {
  display: none;
}

.cc-shell[data-active-page="overview"] .cc-operations-heading {
  margin-bottom: 10px;
}

.cc-shell[data-active-page="overview"] .cc-control-grid button small,
.cc-shell[data-active-page="overview"] .cc-opening-stats-form label > span,
.cc-shell[data-active-page="overview"] .cc-quick-stat-card span,
.cc-shell[data-active-page="overview"] .cc-stack-summary small {
  font-size: var(--cc-type-label);
}

.cc-shell[data-active-page="overview"] .cc-tournament-switcher-heading :is(input, button),
.cc-shell[data-active-page="overview"] .cc-tv-routing-state .cc-state-message {
  font-size: var(--cc-type-control);
}

.cc-shell[data-active-page="overview"] #cc-tournament-create-form :is(input, button) {
  font-size: var(--cc-type-control);
}

.cc-shell[data-active-page="overview"] .cc-tournament-title-row em,
.cc-shell[data-active-page="overview"] .cc-subheading span,
.cc-shell[data-active-page="overview"] .cc-theme-source-note span,
.cc-shell[data-active-page="overview"] .cc-theme-form-section-heading span,
.cc-shell[data-active-page="overview"] .cc-theme-content-heading span,
.cc-shell[data-active-page="overview"] .cc-chip-row span,
.cc-shell[data-active-page="overview"] .cc-logo-editor-heading em,
.cc-shell[data-active-page="overview"] .cc-logo-preview span,
.cc-shell[data-active-page="overview"] .cc-logo-upload-control span,
.cc-shell[data-active-page="overview"] .cc-settings-actions span {
  font-size: var(--cc-type-caption);
  line-height: 1.4;
}

.cc-shell[data-active-page="overview"] .cc-tournament-switcher-heading > div > span,
.cc-shell[data-active-page="overview"] .cc-settings-form label > span,
.cc-shell[data-active-page="overview"] .cc-logo-editor-heading span {
  font-size: var(--cc-type-label);
}

.cc-shell[data-active-page="overview"] .cc-theme-source-note p {
  font-size: var(--cc-type-caption);
  line-height: 1.5;
}

/* Floor console: seat labels and decision hints must remain legible. */
.cc-shell[data-active-page="floor"] .cc-floor-table-stage .cc-poker-table-center span,
.cc-shell[data-active-page="floor"] .cc-floor-table-stage .cc-poker-seat-main b {
  font-size: var(--cc-type-label);
}

.cc-shell[data-active-page="floor"] .cc-floor-table-stage .cc-poker-seat-main strong,
.cc-shell[data-active-page="floor"] .cc-floor-table-stage .cc-poker-table-card.is-dense .cc-poker-seat-main strong {
  font-size: var(--cc-type-body);
}

.cc-shell[data-active-page="floor"] .cc-floor-table-stage .cc-poker-seat-main small,
.cc-shell[data-active-page="floor"] .cc-floor-status small,
.cc-shell[data-active-page="floor"] .cc-floor-selection-heading span {
  font-size: var(--cc-type-caption);
  line-height: 1.4;
}

.cc-shell[data-active-page="floor"] .cc-floor-operations-panel > .cc-panel-heading h2 {
  font-size: var(--cc-type-section-title);
}

.cc-shell[data-active-page="sng"] .cc-sng-session-card-heading em,
.cc-shell[data-active-page="sng"] .cc-sng-report-metrics span,
.cc-shell[data-active-page="sng"] .cc-sng-history-list span {
  font-size: var(--cc-type-caption);
}

.cc-shell[data-active-page="sng"] .cc-sng-card-compact-meta strong {
  font-size: var(--cc-type-label);
}

.cc-shell[data-active-page="sng"] .cc-sng-card-compact-actions a {
  font-size: var(--cc-type-control);
}

.cc-shell[data-active-page="members"] .cc-scoring-rule-example span,
.cc-shell[data-active-page="rankings"] .cc-ranking-member em {
  font-size: var(--cc-type-caption);
}

.cc-shell[data-active-page="rankings"] .cc-ranking-podium article em,
.cc-shell[data-active-page="rankings"] .cc-ranking-member > div > span {
  font-size: var(--cc-type-caption);
}

/* Today sessions, members, rankings and coupon operations share one readable control scale. */
.cc-shell[data-active-page="sng"] .cc-content :is(.cc-sng-card-compact-meta small, .cc-sng-card-headcount > span, .cc-sng-workbench-section-heading small, .cc-sng-workbench-roster-grid header span, .cc-sng-workbench-roster-grid article small),
.cc-shell[data-active-page="members"] .cc-content small,
.cc-shell[data-active-page="rankings"] .cc-content small,
.cc-shell[data-active-page="member-coupons"] .cc-content small,
.cc-shell[data-active-page="member-space"] .cc-content small,
.cc-shell[data-active-page="member-code"] .cc-content small,
.cc-shell[data-active-page="store-display"] .cc-content small,
.cc-shell[data-active-page="market"] .cc-content small,
.cc-shell[data-active-page="audit"] .cc-content small {
  font-size: var(--cc-type-caption);
  line-height: 1.45;
}

.cc-shell[data-active-page="member-coupons"] .cc-member-coupon-page :is(p, label),
.cc-shell[data-active-page="member-space"] .cc-content :is(p, label),
.cc-shell[data-active-page="member-code"] .cc-content :is(p, label) {
  font-size: var(--cc-type-label);
  line-height: 1.55;
}

.cc-shell[data-active-page="member-coupons"] .cc-member-coupon-overview header span,
.cc-shell[data-active-page="member-coupons"] .cc-member-coupon-metrics article > div > span,
.cc-shell[data-active-page="member-coupons"] .cc-member-coupon-records-head p,
.cc-shell[data-active-page="member-coupons"] .cc-member-coupon-pagination,
.cc-shell[data-active-page="member-coupons"] .cc-member-coupon-page-jump input,
.cc-shell[data-active-page="member-coupons"] .cc-member-coupon-pagination > div button {
  font-size: var(--cc-type-label);
}

.cc-shell[data-active-page="member-coupons"] .cc-member-coupon-date-range span {
  font-size: var(--cc-type-label);
}

.cc-shell[data-active-page="member-coupons"] .cc-member-coupon-overview > header > button,
.cc-shell[data-active-page="member-coupons"] .cc-member-coupon-records-head > button,
.cc-shell[data-active-page="member-coupons"] .cc-member-coupon-filters :is(input, select, button),
.cc-shell[data-active-page="member-coupons"] .cc-member-coupon-table-wrap td button {
  font-size: var(--cc-type-control);
}

.cc-shell[data-active-page="member-coupons"] .cc-member-coupon-editor-head > button[data-coupon-action] {
  border-radius: 50%;
}

.cc-shell[data-active-page="member-coupons"] .cc-member-coupon-table-wrap :is(th, td),
.cc-shell[data-active-page="member-coupons"] .cc-member-coupon-table-wrap td > strong,
.cc-shell[data-active-page="member-coupons"] .cc-member-coupon-member-cell strong {
  font-size: var(--cc-type-table);
}

.cc-shell[data-active-page="member-coupons"] .cc-member-coupon-stack-count {
  display: inline-grid;
  min-width: 34px;
  min-height: 24px;
  margin-left: 7px;
  padding: 0 8px;
  place-items: center;
  border-radius: 999px;
  color: #b77908;
  background: #fff3d9;
  font-size: var(--cc-type-label);
  font-weight: 850;
  vertical-align: middle;
}

.cc-shell[data-active-page="member-coupons"] .cc-member-coupon-status,
.cc-shell[data-active-page="rankings"] .cc-ranking-table button,
.cc-shell[data-active-page="rankings"] .cc-ranking-table th {
  font-size: var(--cc-type-label);
}

@media (max-width: 900px) {
  .cc-shell[data-active-page] {
    --cc-type-page-title: 20px;
    --cc-type-section-title: 18px;
    --cc-type-card-title: 16px;
    --cc-type-body: 14px;
    --cc-type-control: 13px;
    --cc-type-table: 13px;
    --cc-type-label: 12px;
    --cc-type-caption: 11px;
  }
}

/* Unified topbar context cards */
.cc-shell[data-active-page] .cc-topbar-meta .cc-topbar-status-card {
  box-sizing: border-box;
  width: 168px;
  min-width: 168px;
  min-height: 64px;
  align-items: center;
  gap: 12px;
  padding: 10px 13px;
  border: 1px solid #e3e8ef;
  border-radius: 14px;
  color: #1f2937;
  background: #fff;
  box-shadow: 0 4px 14px rgba(31, 41, 55, .035);
}

.cc-shell[data-active-page] .cc-topbar-meta button.cc-topbar-status-card {
  display: flex;
  text-align: left;
}

.cc-shell[data-active-page] .cc-topbar-meta .cc-topbar-status-card > div {
  display: grid;
  min-width: 0;
  gap: 3px;
}

.cc-shell[data-active-page] .cc-topbar-meta .cc-topbar-status-card small {
  order: 0;
  color: #8a94a3;
  font-size: 12px;
  font-weight: 620;
  line-height: 1.25;
}

.cc-shell[data-active-page] .cc-topbar-meta .cc-topbar-status-card strong {
  order: 1;
  overflow: hidden;
  max-width: 112px;
  margin: 0;
  color: #202733;
  font-size: 14px;
  font-weight: 760;
  line-height: 1.3;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cc-shell[data-active-page] .cc-topbar-meta .cc-topbar-card-icon {
  display: grid;
  width: 38px;
  height: 38px;
  flex: 0 0 38px;
  place-items: center;
  border-radius: 11px;
  font-size: 13px;
  font-weight: 820;
}

.cc-shell[data-active-page] .cc-topbar-meta .is-store .cc-topbar-card-icon {
  color: #2563eb;
  background: #edf4ff;
}

.cc-shell[data-active-page] .cc-topbar-meta .is-store .cc-topbar-card-icon.has-image {
  overflow: hidden;
  padding: 2px;
  border: 1px solid #e2e8f0;
  background: #fff;
}

.cc-shell[data-active-page] .cc-topbar-meta .is-store .cc-topbar-card-icon.has-image img {
  display: block;
  width: 100%;
  height: 100%;
  border-radius: 8px;
  object-fit: contain;
}

.cc-shell[data-active-page] .cc-topbar-meta .is-mode .cc-topbar-card-icon {
  color: #c46b12;
  background: #fff4df;
}

.cc-shell[data-active-page] .cc-topbar-meta .is-mode[data-mode="timer"] .cc-topbar-card-icon {
  color: #147d5a;
  background: #eaf8f1;
}

.cc-shell[data-active-page] .cc-topbar-meta .is-mode[data-mode="operations"] strong {
  color: #b85f0a;
}

.cc-shell[data-active-page] .cc-topbar-meta .is-mode[data-mode="timer"] strong {
  color: #147d5a;
}

.cc-shell[data-active-page] .cc-topbar-meta .is-device .cc-device-status-icon {
  background: #f1f3f6;
}

.cc-shell[data-active-page] .cc-topbar-meta .is-device.has-devices .cc-device-status-icon {
  background: #eaf8f1;
}

.cc-shell[data-active-page] .cc-topbar-meta .is-device .cc-device-dot {
  display: block;
  width: 9px;
  height: 9px;
  background: #8d96a3;
  box-shadow: 0 0 0 5px rgba(141, 150, 163, .12);
}

.cc-shell[data-active-page] .cc-topbar-meta .is-device.has-devices .cc-device-dot {
  background: #20a66a;
  box-shadow: 0 0 0 5px rgba(32, 166, 106, .12);
}

.cc-shell[data-active-page] .cc-topbar-meta .is-device.has-devices strong {
  color: #168557;
}

.cc-shell[data-active-page] .cc-topbar-meta .is-account .cc-topbar-card-icon {
  border-radius: 50%;
  color: #6553b8;
  background: #f0edff;
}

@media (max-width: 1500px) {
  .cc-shell[data-active-page] .cc-topbar-meta .cc-topbar-status-card {
    width: 154px;
    min-width: 154px;
  }

  .cc-shell[data-active-page] .cc-topbar-meta .cc-coupon-admin-pill {
    display: flex;
  }
}

@media (max-width: 1220px) {
  .cc-shell[data-active-page] .cc-topbar-meta .cc-coupon-admin-pill {
    display: none;
  }
}

/* Floor console: keep the table visual and collect every frequent action in one clear inspector. */
.cc-shell[data-active-page="floor"] .cc-floor-main-grid {
  grid-template-columns: minmax(680px, 1.62fr) minmax(390px, .78fr);
  align-items: start;
  gap: 18px;
}

.cc-shell[data-active-page="floor"] .cc-floor-tables-panel,
.cc-shell[data-active-page="floor"] .cc-floor-operations-panel,
.cc-shell[data-active-page="floor"] .cc-floor-settlement-panel {
  border-color: #e3e8ee;
  box-shadow: 0 12px 32px rgba(31, 41, 55, .055);
}

.cc-shell[data-active-page="floor"] .cc-floor-operations-panel {
  position: sticky;
  top: 86px;
  overflow: hidden;
}

.cc-shell[data-active-page="floor"] .cc-poker-table-shell {
  padding: 62px 56px;
}

.cc-shell[data-active-page="floor"] .cc-poker-table-felt {
  min-height: 390px;
  box-shadow: inset 0 0 0 2px rgba(255, 255, 255, .06), 0 18px 30px rgba(33, 53, 44, .16);
}

.cc-shell[data-active-page="floor"] .cc-poker-seat {
  width: clamp(104px, 8.6vw, 132px);
}

.cc-shell[data-active-page="floor"] .cc-poker-seat-main {
  min-height: 74px;
  padding: 9px 10px;
}

.cc-floor-seat-layout {
  display: flex;
  min-width: 0;
  align-items: center;
  gap: 8px;
  text-align: left;
}

.cc-floor-seat-copy {
  display: grid;
  min-width: 0;
  gap: 1px;
}

.cc-floor-seat-copy b,
.cc-floor-seat-copy strong,
.cc-floor-seat-copy small {
  overflow: hidden;
  max-width: 100%;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cc-floor-seat-avatar,
.cc-floor-player-avatar,
.cc-floor-queue-avatar {
  display: grid;
  overflow: hidden;
  flex: 0 0 auto;
  place-items: center;
  border-radius: 50%;
  color: #fff;
  background: #263241;
  font-weight: 850;
}

.cc-floor-seat-avatar {
  width: 31px;
  height: 31px;
  font-size: 13px;
}

.cc-floor-player-avatar {
  width: 56px;
  height: 56px;
  font-size: 21px;
}

.cc-floor-queue-avatar {
  width: 34px;
  height: 34px;
  font-size: 13px;
}

.cc-floor-seat-avatar img,
.cc-floor-player-avatar img,
.cc-floor-queue-avatar img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.cc-shell[data-active-page="floor"] .cc-floor-selection-heading {
  margin-bottom: 0;
  padding: 16px 18px;
  border-bottom: 1px solid #edf0f3;
}

.cc-shell[data-active-page="floor"] .cc-floor-selection-heading > div > span {
  color: #e71d3d;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .08em;
}

.cc-shell[data-active-page="floor"] .cc-floor-selection-heading > div > strong {
  margin-top: 4px;
  font-size: 19px;
}

.cc-shell[data-active-page="floor"] .cc-floor-operation-workspace {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 14px;
  padding: 16px;
}

.cc-floor-player-panel {
  display: grid;
  gap: 16px;
}

.cc-floor-player-identity {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  padding: 3px 2px 14px;
  border-bottom: 1px solid #edf0f3;
}

.cc-floor-player-identity > div {
  display: grid;
  min-width: 0;
  gap: 3px;
}

.cc-floor-player-identity > div span,
.cc-floor-player-stats span,
.cc-floor-player-action-title span,
.cc-floor-empty-seat-panel > span {
  color: #8b95a4;
  font-size: 12px;
  font-weight: 650;
}

.cc-floor-player-identity > div strong {
  color: #1d2530;
  font-size: 20px;
  line-height: 1.25;
}

.cc-floor-player-identity > div small {
  color: #8b95a4;
  font-size: 12px;
}

.cc-floor-player-identity > b {
  padding: 6px 10px;
  border-radius: 999px;
  font-size: 12px;
  white-space: nowrap;
}

.cc-floor-player-identity > b[data-tone="active"] {
  color: #168557;
  background: #e8f8f0;
}

.cc-floor-player-identity > b[data-tone="warning"] {
  color: #b06d0d;
  background: #fff3dd;
}

.cc-floor-player-identity > b[data-tone="danger"] {
  color: #ca3650;
  background: #fff0f2;
}

.cc-floor-player-identity > b[data-tone="neutral"] {
  color: #687385;
  background: #f1f3f6;
}

.cc-floor-player-stats {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  overflow: hidden;
  border: 1px solid #e6eaf0;
  border-radius: 14px;
  background: #fff;
}

.cc-floor-player-stats > div {
  display: grid;
  min-width: 0;
  gap: 5px;
  padding: 13px 12px;
  border-right: 1px solid #edf0f3;
  border-bottom: 1px solid #edf0f3;
}

.cc-floor-player-stats > div:nth-child(3n) {
  border-right: 0;
}

.cc-floor-player-stats > div:nth-last-child(-n + 3) {
  border-bottom: 0;
}

.cc-floor-player-stats strong {
  overflow: hidden;
  color: #222b37;
  font-size: 14px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cc-floor-player-action-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.cc-floor-player-action-title strong {
  color: #252d38;
  font-size: 14px;
}

.cc-floor-player-actions {
  display: grid;
  gap: 9px;
}

.cc-floor-player-actions.is-three {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.cc-floor-player-actions.is-two {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.cc-floor-player-actions button {
  display: grid;
  min-height: 68px;
  gap: 4px;
  padding: 11px 8px;
  place-content: center;
  border: 1px solid #dde3ea;
  border-radius: 12px;
  color: #283341;
  background: #fff;
  text-align: center;
}

.cc-floor-player-actions button b {
  font-size: 13px;
}

.cc-floor-player-actions button small {
  color: #8b95a4;
  font-size: 10px;
  font-weight: 600;
  line-height: 1.25;
}

.cc-floor-player-actions button.is-primary {
  border-color: #bfe8d5;
  color: #138454;
  background: #effaf5;
}

.cc-floor-player-actions button.is-warning {
  border-color: #f1d49d;
  color: #af6c0b;
  background: #fff9ef;
}

.cc-floor-player-actions button.is-danger {
  border-color: #f6c6ce;
  color: #d82c49;
  background: #fff7f8;
}

.cc-floor-player-actions button:hover:not(:disabled) {
  transform: translateY(-1px);
  box-shadow: 0 8px 18px rgba(31, 41, 55, .07);
}

.cc-floor-player-actions button:disabled {
  opacity: .46;
}

.cc-floor-player-assign {
  display: grid;
  gap: 8px;
  padding-top: 4px;
}

.cc-floor-player-readonly {
  padding: 14px;
  border-radius: 12px;
  color: #727d8d;
  background: #f5f7f9;
  font-size: 13px;
  text-align: center;
}

.cc-floor-empty-seat-panel {
  display: grid;
  justify-items: center;
  gap: 8px;
  padding: 22px 8px 8px;
  text-align: center;
}

.cc-floor-empty-seat-icon,
.cc-floor-focus-placeholder-icon {
  display: grid;
  width: 50px;
  height: 50px;
  place-items: center;
  border-radius: 15px;
  color: #e51f3f;
  background: #fff0f3;
  font-size: 17px;
  font-weight: 850;
}

.cc-floor-empty-seat-panel > strong {
  color: #202834;
  font-size: 20px;
}

.cc-floor-empty-seat-panel > p {
  max-width: 320px;
  margin: 0 0 8px;
  color: #7f8998;
  font-size: 13px;
  line-height: 1.5;
}

.cc-floor-empty-seat-panel > small {
  color: #9aa3af;
}

.cc-floor-empty-seat-panel .cc-floor-empty-seat-picker {
  width: 100%;
}

.cc-floor-focus-placeholder.is-redesigned {
  min-height: 230px;
  gap: 10px;
}

.cc-floor-focus-placeholder.is-redesigned strong {
  color: #252d38;
  font-size: 17px;
}

.cc-floor-focus-placeholder.is-redesigned > span:last-child {
  max-width: 300px;
  line-height: 1.55;
}

.cc-shell[data-active-page="floor"] .cc-floor-queue {
  overflow: hidden;
  margin: 0;
  border: 1px solid #e6eaf0;
  border-radius: 14px;
}

.cc-shell[data-active-page="floor"] .cc-floor-queue header {
  padding: 12px 13px;
  background: #fafbfc;
}

.cc-shell[data-active-page="floor"] .cc-floor-queue-list {
  padding: 7px;
}

.cc-shell[data-active-page="floor"] .cc-floor-queue-list button {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  width: 100%;
  align-items: center;
  gap: 10px;
  padding: 9px;
  text-align: left;
}

.cc-shell[data-active-page="floor"] .cc-floor-queue-list button > span {
  display: grid;
  min-width: 0;
  gap: 2px;
}

.cc-shell[data-active-page="floor"] .cc-floor-queue-list button > span b {
  color: #28313d;
  font-size: 13px;
}

.cc-shell[data-active-page="floor"] .cc-floor-queue-list button > span small {
  overflow: hidden;
  color: #919aa7;
  font-size: 11px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cc-shell[data-active-page="floor"] .cc-floor-queue-list button em {
  color: #df2441;
  font-size: 11px;
  font-style: normal;
  font-weight: 750;
}

.cc-floor-settlement-workflow {
  overflow: hidden;
  border: 1px solid #e5e9ef;
  border-radius: 15px;
  background: #fff;
}

.cc-floor-settlement-workflow > summary {
  display: grid;
  grid-template-columns: minmax(220px, 1fr) auto auto;
  align-items: center;
  gap: 22px;
  padding: 17px 20px;
  cursor: pointer;
  list-style: none;
}

.cc-floor-settlement-workflow > summary::-webkit-details-marker {
  display: none;
}

.cc-floor-settlement-workflow > summary > div:first-child {
  display: grid;
  gap: 4px;
}

.cc-floor-settlement-workflow > summary > div:first-child span {
  color: #e41f3e;
  font-size: 11px;
  font-weight: 820;
  letter-spacing: .08em;
}

.cc-floor-settlement-workflow > summary > div:first-child strong {
  color: #202833;
  font-size: 17px;
}

.cc-floor-settlement-summary {
  display: flex;
  gap: 8px;
}

.cc-floor-settlement-summary span {
  padding: 7px 10px;
  border-radius: 999px;
  color: #697586;
  background: #f2f4f7;
  font-size: 12px;
  font-weight: 650;
}

.cc-floor-settlement-workflow > summary > b {
  padding: 9px 12px;
  border: 1px solid #dde3ea;
  border-radius: 10px;
  color: #4c5868;
  font-size: 12px;
}

.cc-floor-settlement-workflow[open] > summary > b {
  font-size: 0;
}

.cc-floor-settlement-workflow[open] > summary > b::after {
  content: "收起结算";
  font-size: 12px;
}

.cc-floor-settlement-content {
  padding: 0 14px 14px;
  border-top: 1px solid #edf0f3;
}

@media (max-width: 1500px) {
  .cc-shell[data-active-page="floor"] .cc-floor-main-grid {
    grid-template-columns: minmax(610px, 1.45fr) minmax(360px, .82fr);
  }

  .cc-shell[data-active-page="floor"] .cc-poker-table-shell {
    padding: 58px 44px;
  }

  .cc-shell[data-active-page="floor"] .cc-poker-table-felt {
    min-height: 350px;
  }

  .cc-shell[data-active-page="floor"] .cc-poker-seat {
    width: clamp(96px, 8.3vw, 120px);
  }

  .cc-floor-player-actions button small {
    display: none;
  }

  .cc-floor-player-actions button {
    min-height: 48px;
  }
}

@media (max-width: 1160px) {
  .cc-shell[data-active-page="floor"] .cc-floor-main-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .cc-shell[data-active-page="floor"] .cc-floor-operations-panel {
    position: static;
  }
}

@media (max-width: 760px) {
  .cc-shell[data-active-page="floor"] .cc-poker-table-shell {
    padding: 52px 30px;
  }

  .cc-shell[data-active-page="floor"] .cc-poker-table-felt {
    min-height: 300px;
  }

  .cc-shell[data-active-page="floor"] .cc-poker-seat {
    width: 86px;
  }

  .cc-floor-seat-avatar {
    display: none;
  }

  .cc-floor-player-stats {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .cc-floor-player-stats > div:nth-child(3n) {
    border-right: 1px solid #edf0f3;
  }

  .cc-floor-player-stats > div:nth-child(2n) {
    border-right: 0;
  }

  .cc-floor-player-stats > div:nth-last-child(-n + 3) {
    border-bottom: 1px solid #edf0f3;
  }

  .cc-floor-player-stats > div:nth-last-child(-n + 2) {
    border-bottom: 0;
  }

  .cc-floor-player-actions.is-three,
  .cc-floor-player-actions.is-two {
    grid-template-columns: minmax(0, 1fr);
  }

  .cc-floor-settlement-workflow > summary {
    grid-template-columns: minmax(0, 1fr) auto;
  }

  .cc-floor-settlement-summary {
    display: none;
  }
}

/* Today-session settlement reuses the member performance record in-place. */
.cc-sng-performance-workspace {
  display: grid;
  gap: 14px;
  margin: 16px;
  padding: 18px;
  border: 1px solid #e4e8ee;
  border-radius: 16px;
  background: #f8f9fb;
}

.cc-sng-performance-heading {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 18px;
}

.cc-sng-performance-heading > div {
  display: grid;
  gap: 4px;
}

.cc-sng-performance-heading span {
  color: #d91f3b;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .1em;
}

.cc-sng-performance-heading strong {
  color: #202833;
  font-size: 18px;
}

.cc-sng-performance-heading small {
  max-width: 520px;
  color: #697586;
  font-size: 12px;
  line-height: 1.55;
  text-align: right;
}

.cc-performance-record.is-workflow {
  grid-template-columns: 112px minmax(260px, 1fr) 120px minmax(260px, auto);
  align-items: start;
  box-shadow: 0 12px 30px rgba(32, 40, 51, .06);
}

.cc-sng-settlement-review-table {
  grid-column: 1 / -1;
  overflow: hidden;
  border: 1px solid #e1e5eb;
  border-radius: 13px;
  background: #fff;
}

.cc-sng-settlement-review-labels,
.cc-sng-settlement-review-row {
  display: grid;
  grid-template-columns: 135px minmax(260px, 1fr) 105px 115px;
  align-items: center;
  gap: 14px;
  padding: 11px 14px;
}

.cc-sng-settlement-review-labels {
  color: #7d8794;
  background: #f5f7f9;
  font-size: 11px;
  font-weight: 750;
}

.cc-sng-settlement-review-row + .cc-sng-settlement-review-row {
  border-top: 1px solid #edf0f3;
}

.cc-sng-settlement-review-row > strong {
  color: #252d38;
  font-size: 13px;
}

.cc-sng-settlement-review-row > span,
.cc-sng-settlement-review-row > span b,
.cc-sng-settlement-review-row > span small {
  display: block;
}

.cc-sng-settlement-review-row > span b {
  color: #28313d;
  font-size: 13px;
}

.cc-sng-settlement-review-row > span small {
  margin-top: 3px;
  color: #168356;
  font-size: 11px;
}

.cc-sng-settlement-review-row > span small[data-linked="false"] {
  color: #bd6b00;
}

.cc-sng-settlement-review-row > em {
  color: #4f5968;
  font-size: 13px;
  font-style: normal;
  font-weight: 800;
}

.cc-sng-settlement-review-empty,
.cc-sng-settlement-confirmed {
  grid-column: 1 / -1;
  padding: 14px 16px;
  border-radius: 12px;
}

.cc-sng-settlement-review-empty {
  color: #687383;
  background: #f4f6f8;
  font-size: 13px;
}

.cc-sng-settlement-confirmed {
  border: 1px solid #bee5d1;
  background: #eefaf4;
}

.cc-sng-settlement-confirmed strong,
.cc-sng-settlement-confirmed span {
  display: block;
}

.cc-sng-settlement-confirmed strong {
  color: #137448;
  font-size: 14px;
}

.cc-sng-settlement-confirmed span {
  margin-top: 4px;
  color: #4e7461;
  font-size: 12px;
}

/* 已结束场次：以最终排名和结算检查清单为核心。 */
.cc-performance-record.is-workflow.is-settlement-dashboard {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 0;
  padding: 0;
  overflow: hidden;
  border-left-width: 1px;
  border-radius: 16px;
  background: #fff;
}

.cc-sng-settlement-event-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 20px;
  padding: 20px 22px 16px;
  border-bottom: 1px solid #e8ebef;
}

.cc-sng-settlement-event-head > div {
  display: grid;
  min-width: 0;
  gap: 5px;
}

.cc-sng-settlement-event-head > div > span {
  color: #e4213f;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .08em;
}

.cc-sng-settlement-event-head > div > strong {
  overflow: hidden;
  color: #202833;
  font-size: 21px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cc-sng-settlement-event-head > div > small {
  color: #748091;
  font-size: 12px;
}

.cc-sng-settlement-event-head > em {
  flex: 0 0 auto;
  padding: 7px 11px;
  border-radius: 9px;
  color: #b96e00;
  background: #fff2df;
  font-size: 12px;
  font-style: normal;
  font-weight: 850;
}

.cc-sng-settlement-event-head > em[data-status="confirmed"] {
  color: #128152;
  background: #e9f8f1;
}

.cc-sng-settlement-event-head > em[data-status="void"] {
  color: #697586;
  background: #eef1f4;
}

.cc-sng-settlement-metrics {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  padding: 0 22px;
  border-bottom: 1px solid #e8ebef;
}

.cc-sng-settlement-metrics > div {
  display: grid;
  gap: 4px;
  padding: 16px 18px;
  border-right: 1px solid #e8ebef;
}

.cc-sng-settlement-metrics > div:first-child {
  padding-left: 0;
}

.cc-sng-settlement-metrics > div:last-child {
  border-right: 0;
}

.cc-sng-settlement-metrics span {
  color: #7a8594;
  font-size: 11px;
}

.cc-sng-settlement-metrics strong {
  color: #202833;
  font-size: 22px;
  line-height: 1.2;
}

.cc-sng-settlement-metrics strong small {
  color: #667181;
  font-size: 11px;
  font-weight: 650;
}

.cc-sng-settlement-dashboard-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.58fr) minmax(310px, .72fr);
  align-items: start;
  gap: 14px;
  padding: 16px;
  background: #f7f9fb;
}

.cc-sng-settlement-ranking-panel,
.cc-sng-settlement-check-panel {
  min-width: 0;
  overflow: hidden;
  border: 1px solid #e2e6eb;
  border-radius: 14px;
  background: #fff;
}

.cc-sng-settlement-ranking-panel {
  display: grid;
  gap: 12px;
  padding: 14px;
}

.cc-sng-settlement-ranking-panel > header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 0 2px;
}

.cc-sng-settlement-ranking-panel > header > div,
.cc-sng-settlement-check-panel > header {
  display: grid;
  gap: 3px;
}

.cc-sng-settlement-ranking-panel > header span {
  color: #e51f3d;
  font-size: 13px;
  font-weight: 900;
}

.cc-sng-settlement-ranking-panel > header strong,
.cc-sng-settlement-check-panel > header strong {
  color: #6f7a88;
  font-size: 11px;
  font-weight: 600;
}

.cc-sng-settlement-ranking-panel > header button {
  min-height: 36px;
  padding: 0 13px;
  border: 1px solid #d8dee5;
  border-radius: 9px;
  color: #404a58;
  background: #fff;
  font-weight: 750;
}

.is-settlement-dashboard .cc-record-auto-import {
  padding: 11px 13px;
}

.is-settlement-dashboard .cc-sng-settlement-review-table {
  border-radius: 10px;
}

.is-settlement-dashboard .cc-sng-settlement-review-labels,
.is-settlement-dashboard .cc-sng-settlement-review-row {
  grid-template-columns: 90px minmax(210px, 1fr) 86px 100px;
  gap: 10px;
  padding: 10px 12px;
}

.is-settlement-dashboard .cc-sng-settlement-review-row > strong {
  display: flex;
  align-items: baseline;
  gap: 5px;
}

.is-settlement-dashboard .cc-sng-settlement-review-row > strong i {
  display: grid;
  width: 30px;
  height: 30px;
  place-items: center;
  border-radius: 50%;
  color: #4f5967;
  background: #eef1f4;
  font-size: 13px;
  font-style: normal;
}

.is-settlement-dashboard .cc-sng-settlement-review-row[data-rank="1"] > strong i {
  color: #9f6908;
  background: #fff0c8;
  box-shadow: inset 0 0 0 1px #e4bc61;
}

.is-settlement-dashboard .cc-sng-settlement-review-row[data-rank="2"] > strong i {
  color: #657180;
  background: #edf0f3;
  box-shadow: inset 0 0 0 1px #c8cfd7;
}

.is-settlement-dashboard .cc-sng-settlement-review-row[data-rank="3"] > strong i {
  color: #9a5f34;
  background: #fae8d9;
  box-shadow: inset 0 0 0 1px #dfb38f;
}

.is-settlement-dashboard .cc-sng-settlement-review-row > strong span {
  color: #788391;
  font-size: 10px;
}

.cc-sng-settlement-member {
  display: flex !important;
  min-width: 0;
  align-items: center;
  gap: 9px;
}

.cc-sng-settlement-member > .cc-member-avatar {
  width: 36px;
  height: 36px;
  overflow: hidden;
  flex: 0 0 auto;
  border-radius: 50%;
  font-size: 12px;
}

.cc-sng-settlement-member > .cc-member-avatar img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.cc-sng-settlement-member > span {
  min-width: 0;
}

.cc-sng-settlement-member > span b,
.cc-sng-settlement-member > span small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cc-sng-settlement-check-panel {
  display: grid;
  gap: 0;
}

.cc-sng-settlement-check-panel > header {
  padding: 16px;
  border-bottom: 1px solid #e8ebef;
}

.cc-sng-settlement-check-panel > header span {
  color: #202833;
  font-size: 16px;
  font-weight: 850;
}

.cc-sng-settlement-checks {
  display: grid;
}

.cc-sng-settlement-checks > div {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  padding: 13px 15px;
  border-bottom: 1px solid #edf0f3;
}

.cc-sng-settlement-checks > div > i,
.cc-sng-settlement-lock-note > i {
  display: grid;
  width: 20px;
  height: 20px;
  place-items: center;
  border-radius: 50%;
  font-size: 11px;
  font-style: normal;
  font-weight: 900;
}

.cc-sng-settlement-checks > div[data-passed="true"] > i {
  color: #fff;
  background: #11a564;
}

.cc-sng-settlement-checks > div[data-passed="false"] > i {
  color: #fff;
  background: #e5a32b;
}

.cc-sng-settlement-checks > div > span {
  display: grid;
  min-width: 0;
  gap: 3px;
}

.cc-sng-settlement-checks > div > span strong {
  color: #313a46;
  font-size: 12px;
}

.cc-sng-settlement-checks > div > span small {
  overflow: hidden;
  color: #8a94a2;
  font-size: 10px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cc-sng-settlement-checks > div > b {
  color: #13a063;
  font-size: 11px;
  white-space: nowrap;
}

.cc-sng-settlement-checks > div[data-passed="false"] > b {
  color: #b8750a;
}

.cc-sng-settlement-lock-note {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: start;
  gap: 9px;
  margin: 14px;
  padding: 11px 12px;
  border-radius: 10px;
  color: #697586;
  background: #f5f7f9;
  font-size: 10px;
  line-height: 1.55;
}

.cc-sng-settlement-lock-note > i {
  border: 1px solid #aeb8c5;
  color: #687486;
  background: #fff;
}

.cc-sng-settlement-side-actions {
  display: grid;
  gap: 8px;
  padding: 0 14px 14px;
}

.cc-sng-settlement-side-actions button {
  width: 100%;
  min-height: 44px;
  padding: 8px 12px;
  border: 1px solid #d5dbe3;
  border-radius: 10px;
  color: #36404d;
  background: #fff;
  font-weight: 850;
}

.cc-sng-settlement-side-actions button.is-primary {
  border-color: #df1f3b;
  color: #fff;
  background: linear-gradient(135deg, #ee203f, #cf1732);
  box-shadow: 0 10px 20px rgba(218, 28, 55, .16);
}

.cc-sng-settlement-side-actions button:disabled {
  cursor: not-allowed;
  opacity: .45;
  box-shadow: none;
}

.cc-sng-settlement-check-panel .cc-sng-settlement-confirmed {
  margin: 0 14px 14px;
}

.cc-sng-settlement-ranking-panel .cc-record-linking label {
  grid-template-columns: minmax(0, 1fr);
}

.cc-sng-settlement-ranking-panel .cc-record-link-actions {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

@media (max-width: 1180px) {
  .cc-performance-record.is-workflow {
    grid-template-columns: 110px minmax(220px, 1fr) auto;
  }

  .cc-performance-record.is-workflow .cc-record-actions {
    grid-column: 1 / -1;
  }

  .cc-sng-settlement-dashboard-grid {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (max-width: 760px) {
  .cc-sng-performance-workspace {
    margin: 10px;
    padding: 12px;
  }

  .cc-sng-performance-heading {
    align-items: start;
    flex-direction: column;
  }

  .cc-sng-performance-heading small {
    text-align: left;
  }

  .cc-performance-record.is-workflow {
    grid-template-columns: 1fr;
  }

  .cc-sng-settlement-event-head {
    align-items: flex-start;
    flex-direction: column;
  }

  .cc-sng-settlement-metrics {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .cc-sng-settlement-metrics > div:nth-child(2) {
    border-right: 0;
  }

  .cc-sng-settlement-metrics > div:nth-child(-n + 2) {
    border-bottom: 1px solid #e8ebef;
  }

  .is-settlement-dashboard .cc-sng-settlement-review-labels {
    display: none;
  }

  .is-settlement-dashboard .cc-sng-settlement-review-row {
    min-width: 0;
    grid-template-columns: 70px minmax(0, 1fr) auto;
  }

  .is-settlement-dashboard .cc-sng-settlement-review-row > em:last-child {
    grid-column: 2 / -1;
  }

  .cc-sng-settlement-review-table {
    overflow: hidden;
  }

  .cc-sng-settlement-review-labels,
  .cc-sng-settlement-review-row {
    min-width: 0;
  }

  .cc-settlement-buyin {
    text-align: left;
  }

  .cc-sng-settlement-ranking-panel .cc-record-link-actions {
    grid-template-columns: minmax(0, 1fr);
  }
}

/* 今日场次：按店长的阅读顺序呈现为单页纵向创建表单。 */
.cc-sng-create-form.is-guided {
  gap: 14px;
}

.cc-sng-create-guided-sheet {
  overflow: hidden;
  border: 1px solid var(--cc-line);
  border-radius: 16px;
  background: #fff;
}

.cc-sng-create-guided-row {
  display: grid;
  grid-template-columns: minmax(170px, 220px) minmax(0, 1fr);
  align-items: center;
  gap: 24px;
  min-width: 0;
  padding: 20px 24px;
  border: 0;
  border-bottom: 1px solid var(--cc-line);
}

.cc-sng-create-guided-label {
  display: grid !important;
  gap: 5px;
  min-width: 0;
  margin: 0 !important;
  padding: 0 !important;
}

.cc-sng-create-guided-label strong {
  color: var(--cc-text);
  font-size: 14px;
  font-weight: 850;
}

.cc-sng-create-guided-label span {
  color: var(--cc-muted);
  font-size: 10px;
  font-weight: 500;
  line-height: 1.5;
}

.cc-sng-create-readonly-value,
.cc-sng-create-guided-control > select {
  width: 100%;
  min-height: 50px;
  border: 1px solid var(--cc-line-strong);
  border-radius: 10px;
  background: #fff;
}

.cc-sng-create-readonly-value {
  display: grid;
  align-content: center;
  gap: 3px;
  padding: 7px 14px;
  background: #f8f9fb;
}

.cc-sng-create-readonly-value strong {
  color: var(--cc-text);
  font-size: 14px;
  font-weight: 750;
}

.cc-sng-create-readonly-value small {
  color: var(--cc-muted);
  font-size: 9px;
}

.cc-sng-create-name-control {
  display: grid;
  gap: 5px;
}

.cc-sng-create-name-control input {
  width: 100%;
  min-height: 50px;
  padding: 0 14px;
  border: 1px solid var(--cc-line-strong);
  border-radius: 10px;
  color: var(--cc-text);
  background: #fff;
  font: inherit;
  font-size: 14px;
  font-weight: 750;
}

.cc-sng-create-name-control input:focus {
  border-color: rgba(228, 35, 61, .62);
  outline: 3px solid rgba(228, 35, 61, .09);
}

.cc-sng-create-name-control small {
  color: var(--cc-muted);
  font-size: 9px;
}

.cc-sng-create-guided-control {
  min-width: 0;
}

.cc-sng-seat-mode-options {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 14px;
}

.cc-sng-seat-mode-options label {
  position: relative;
  min-width: 0;
  cursor: pointer;
}

.cc-sng-seat-mode-options input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.cc-sng-seat-mode-options label > span {
  display: grid;
  gap: 3px;
  min-height: 62px;
  align-content: center;
  padding: 10px 14px 10px 38px;
  border: 1px solid var(--cc-line-strong);
  border-radius: 10px;
  background: #fff;
}

.cc-sng-seat-mode-options label > span::before {
  position: absolute;
  top: 50%;
  left: 14px;
  width: 15px;
  height: 15px;
  box-sizing: border-box;
  border: 1px solid #c8cdd4;
  border-radius: 50%;
  background: #fff;
  content: "";
  transform: translateY(-50%);
}

.cc-sng-seat-mode-options span strong { color: var(--cc-text); font-size: 12px; }
.cc-sng-seat-mode-options span small { color: var(--cc-muted); font-size: 9px; }
.cc-sng-seat-mode-options input:checked + span { border-color: rgba(228, 35, 61, .55); background: #fff6f7; }
.cc-sng-seat-mode-options input:checked + span::before { border: 5px solid var(--cc-red); }
.cc-sng-seat-mode-options input:focus-visible + span { outline: 2px solid rgba(228, 35, 61, .28); outline-offset: 2px; }
.cc-sng-seat-mode-options label.is-disabled { cursor: not-allowed; opacity: .48; }

.cc-sng-manual-seat-field {
  display: grid;
  grid-template-columns: minmax(100px, 150px) minmax(0, 1fr);
  align-items: center;
  gap: 8px 14px;
}

.cc-sng-manual-seat-field[hidden] { display: none; }
.cc-sng-manual-seat-field > span { color: var(--cc-muted-2); font-size: 10px; font-weight: 750; }
.cc-sng-manual-seat-field input {
  width: 100%;
  min-height: 50px;
  padding: 0 14px;
  border: 1px solid var(--cc-line-strong);
  border-radius: 10px;
  color: var(--cc-text);
  background: #fff;
  font: inherit;
  font-weight: 750;
}
.cc-sng-manual-seat-field small { grid-column: 2; color: var(--cc-muted); font-size: 9px; }

.cc-sng-create-form .cc-sng-table-assignment.cc-sng-create-guided-row {
  grid-column: auto;
}

.cc-sng-create-guided-control .cc-sng-table-assignment-heading {
  justify-content: flex-start;
  margin-bottom: 10px;
}

.cc-sng-create-guided-control .cc-sng-table-assignment-heading strong {
  color: #168555;
  background: #ebf8f1;
}

.cc-sng-create-guided-control .cc-sng-table-assignment-heading strong.is-warning {
  color: var(--cc-muted-2);
  background: #f1f3f6;
}

.cc-sng-create-guided-control .cc-sng-table-options {
  grid-template-columns: none;
  grid-auto-flow: column;
  grid-auto-columns: minmax(170px, 220px);
  justify-content: start;
  overflow-x: auto;
  padding-bottom: 2px;
}

.cc-sng-create-guided-control .cc-sng-table-option {
  min-height: 82px;
  align-content: center;
}

.cc-sng-create-guided-control > p {
  margin: 10px 0 0;
  color: var(--cc-muted);
  font-size: 10px;
  line-height: 1.55;
}

.cc-sng-create-scheme-fields {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  min-width: 0;
}

.cc-sng-create-scheme-fields > label {
  display: grid;
  gap: 7px;
  min-width: 0;
}

.cc-sng-create-scheme-fields > label > span,
.cc-sng-create-coupon-inline > label > span,
.cc-sng-create-coupon-picker > span {
  color: var(--cc-muted-2);
  font-size: 10px;
  font-weight: 750;
}

.cc-sng-create-scheme-fields select {
  width: 100%;
  min-height: 50px;
}

.cc-sng-create-theme-control {
  display: grid;
  grid-template-columns: 92px minmax(0, 1fr);
  align-items: center;
  gap: 10px;
}

.cc-sng-create-theme-control > i {
  position: relative;
  display: block;
  width: 92px;
  height: 50px;
  overflow: hidden;
  border: 1px solid #342d25;
  border-radius: 8px;
  background: radial-gradient(circle at 50% 50%, rgba(255, 197, 66, .22), transparent 34%), linear-gradient(145deg, #16130f, #080808);
}

.cc-sng-create-theme-control > i::before,
.cc-sng-create-theme-control > i::after {
  position: absolute;
  content: "";
}

.cc-sng-create-theme-control > i::before {
  inset: 8px 15px;
  border-top: 1px solid rgba(246, 190, 63, .72);
  border-bottom: 1px solid rgba(246, 190, 63, .35);
}

.cc-sng-create-theme-control > i::after {
  top: 18px;
  left: 30px;
  width: 30px;
  height: 10px;
  border-radius: 2px;
  background: #e5ad30;
  box-shadow: -21px 0 0 -3px rgba(229, 173, 48, .55), 21px 0 0 -3px rgba(229, 173, 48, .55);
}

.cc-sng-create-guided-coupon {
  display: grid;
  grid-column: auto !important;
  gap: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
}

.cc-sng-create-guided-coupon .cc-sng-create-guided-row:last-of-type {
  border-bottom: 1px solid var(--cc-line);
}

.cc-sng-create-policy-options {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.cc-sng-create-policy-options label {
  position: relative;
  min-width: 0;
  cursor: pointer;
}

.cc-sng-create-policy-options input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.cc-sng-create-policy-options span {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  min-height: 50px;
  padding: 8px 12px;
  border: 1px solid var(--cc-line-strong);
  border-radius: 10px;
  color: var(--cc-muted-2);
  background: #fff;
  font-size: 12px;
  font-weight: 750;
  text-align: center;
}

.cc-sng-create-policy-options span::before {
  width: 16px;
  height: 16px;
  box-sizing: border-box;
  border: 1px solid #c8cdd4;
  border-radius: 50%;
  background: #fff;
  content: "";
}

.cc-sng-create-policy-options input:checked + span {
  border-color: rgba(228, 35, 61, .55);
  color: var(--cc-red-dark);
  background: #fff6f7;
  box-shadow: inset 0 0 0 1px rgba(228, 35, 61, .1);
}

.cc-sng-create-policy-options input:checked + span::before {
  border: 5px solid var(--cc-red);
}

.cc-sng-create-policy-options input:focus-visible + span {
  outline: 2px solid rgba(228, 35, 61, .28);
  outline-offset: 2px;
}

.cc-sng-create-quantity-stepper {
  display: grid;
  grid-template-columns: 50px minmax(90px, 240px) 50px;
  max-width: 340px;
}

.cc-sng-create-quantity-stepper button,
.cc-sng-create-quantity-stepper input[type="number"] {
  min-height: 48px;
  border: 1px solid var(--cc-line-strong);
  border-radius: 0;
  color: var(--cc-text);
  background: #fff;
  font: inherit;
  text-align: center;
}

.cc-sng-create-quantity-stepper button {
  cursor: pointer;
  font-size: 18px;
}

.cc-sng-create-quantity-stepper button:first-child { border-radius: 10px 0 0 10px; }
.cc-sng-create-quantity-stepper button:last-child { border-radius: 0 10px 10px 0; }
.cc-sng-create-quantity-stepper input[type="number"] { margin: 0 -1px; }

.cc-sng-create-coupon-inline {
  display: grid;
  grid-template-columns: minmax(220px, 340px) minmax(0, 1fr);
  align-items: start;
  gap: 18px;
  min-width: 0;
}

.cc-sng-create-coupon-inline > label,
.cc-sng-create-coupon-picker {
  display: grid;
  gap: 7px;
  min-width: 0;
}

.cc-sng-create-coupon-picker .cc-sng-coupon-template-options {
  min-height: 48px;
  align-content: center;
  padding: 7px;
  border: 1px solid var(--cc-line-strong);
  border-radius: 10px;
  background: #fff;
}

.cc-sng-create-coupon-picker small {
  color: var(--cc-muted);
  font-size: 9px;
}

.cc-sng-create-guided-coupon .cc-sng-create-coupon-details {
  padding: 16px 24px 20px;
  border-top: 0;
  border-bottom: 1px solid var(--cc-line);
}

.cc-sng-create-guided-coupon .cc-sng-create-coupon-details summary {
  padding-top: 0;
}

.cc-sng-create-form.is-guided .cc-sng-create-submit {
  padding: 16px 22px;
}

.cc-sng-create-form.is-guided .cc-sng-create-submit > p {
  max-width: 680px;
  margin: 0;
  color: var(--cc-muted);
  font-size: 10px;
  line-height: 1.6;
}

.cc-sng-create-form.is-guided .cc-sng-create-submit > button {
  min-width: min(360px, 42vw);
}

@media (max-width: 900px) {
  .cc-sng-create-guided-row {
    grid-template-columns: 1fr;
    gap: 12px;
    padding: 18px;
  }

  .cc-sng-create-guided-coupon .cc-sng-create-coupon-details {
    padding: 16px 18px 18px;
  }

  .cc-sng-create-form.is-guided .cc-sng-create-submit > button {
    min-width: 0;
  }

  .cc-sng-create-scheme-fields,
  .cc-sng-create-coupon-inline {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 620px) {
  .cc-sng-seat-mode-options { grid-template-columns: 1fr; }
  .cc-sng-manual-seat-field { grid-template-columns: 1fr; }
  .cc-sng-manual-seat-field small { grid-column: auto; }

  .cc-sng-create-policy-options {
    grid-template-columns: 1fr;
  }

  .cc-sng-create-theme-control {
    grid-template-columns: 74px minmax(0, 1fr);
  }

  .cc-sng-create-theme-control > i {
    width: 74px;
  }

  .cc-sng-create-quantity-stepper {
    grid-template-columns: 46px minmax(80px, 1fr) 46px;
    max-width: none;
  }
}

/* 单场工作台：以真实桌位为主，收起赛前已完成的配置信息。 */
.cc-sng-selection-panel .cc-sng-workbench-layout {
  grid-template-columns: 1fr;
  gap: 0;
}

.cc-sng-selection-panel .cc-sng-current-summary {
  gap: 0;
}

.cc-sng-seating-summary {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  overflow: hidden;
  border: 1px solid var(--cc-line);
  border-radius: 14px;
  background: #fff;
}

.cc-sng-seating-summary > span {
  display: grid;
  gap: 4px;
  padding: 13px 16px;
  border-right: 1px solid var(--cc-line);
}

.cc-sng-seating-summary > span:last-child {
  border-right: 0;
}

.cc-sng-seating-summary small {
  color: var(--cc-muted);
  font-size: 10px;
}

.cc-sng-seating-summary strong {
  color: var(--cc-text);
  font-size: 16px;
}

.cc-sng-selection-panel .cc-sng-live-console {
  margin-top: 12px;
}

.cc-sng-selection-panel .cc-sng-inline-stage {
  gap: 14px;
  container-type: inline-size;
}

.cc-sng-selection-panel .cc-sng-inline-grid {
  grid-template-columns: minmax(0, 1.7fr) minmax(300px, .65fr);
}

.cc-sng-selection-panel .cc-sng-inline-actions {
  width: 100%;
  min-width: 0;
  overflow: hidden;
}

.cc-sng-selection-panel .cc-sng-inline-actions > * {
  width: 100%;
  min-width: 0;
  max-width: 100%;
}

.cc-sng-selection-panel .cc-floor-focus-panel {
  min-width: 0;
  overflow: hidden;
  padding: 15px;
}

.cc-sng-selection-panel .cc-floor-focus-panel .cc-table-player-actions {
  display: grid;
  width: 100%;
  min-width: 0;
  gap: 14px;
  padding: 0;
  border: 0;
  background: transparent;
}

.cc-sng-selection-panel .cc-floor-focus-panel .cc-table-player-summary {
  width: 100%;
  min-width: 0;
}

.cc-sng-selection-panel .cc-floor-focus-panel .cc-table-player-summary strong,
.cc-sng-selection-panel .cc-floor-focus-panel .cc-table-player-summary small {
  overflow-wrap: anywhere;
  white-space: normal;
}

.cc-sng-selection-panel .cc-floor-focus-panel .cc-table-player-action-buttons {
  display: grid;
  width: 100%;
  min-width: 0;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.cc-sng-selection-panel .cc-floor-focus-panel .cc-table-player-action-buttons button {
  width: 100%;
  min-width: 0;
  min-height: 52px;
  padding: 8px 10px;
  text-align: center;
  white-space: normal;
}

.cc-sng-selection-panel .cc-floor-focus-panel .cc-table-player-action-buttons button:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

.cc-sng-selection-panel .cc-floor-empty-seat-picker {
  grid-template-columns: minmax(0, 1fr);
}

.cc-sng-selection-panel .cc-floor-empty-seat-picker select,
.cc-sng-selection-panel .cc-floor-empty-seat-picker button {
  width: 100%;
  min-width: 0;
}

.cc-sng-selection-panel .cc-floor-queue {
  min-width: 0;
  overflow: hidden;
}

.cc-sng-secondary-actions {
  border: 1px solid var(--cc-line);
  border-radius: 12px;
  background: #fff;
}

.cc-sng-secondary-actions > summary {
  padding: 13px 16px;
  color: var(--cc-muted-2);
  cursor: pointer;
  font-size: 11px;
  font-weight: 800;
}

.cc-sng-secondary-actions[open] > summary {
  border-bottom: 1px solid var(--cc-line);
}

.cc-sng-secondary-actions > .cc-sng-workbench-roster {
  border: 0;
  border-radius: 0 0 12px 12px;
}

@media (max-width: 1280px) {
  .cc-sng-selection-panel .cc-sng-inline-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 1500px) {
  .cc-sng-selection-panel .cc-sng-inline-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .cc-sng-selection-panel .cc-sng-inline-heading,
  .cc-sng-selection-panel .cc-sng-inline-toolbar {
    align-items: flex-start;
    flex-direction: column;
  }
}

@container (max-width: 1180px) {
  .cc-sng-selection-panel .cc-sng-inline-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .cc-sng-selection-panel .cc-sng-inline-heading,
  .cc-sng-selection-panel .cc-sng-inline-toolbar {
    align-items: flex-start;
    flex-direction: column;
  }
}

@media (max-width: 720px) {
  .cc-sng-seating-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .cc-sng-seating-summary > span:nth-child(2) {
    border-right: 0;
  }

  .cc-sng-seating-summary > span:nth-child(-n + 2) {
    border-bottom: 1px solid var(--cc-line);
  }

  .cc-sng-selection-panel .cc-floor-focus-panel .cc-table-player-action-buttons {
    grid-template-columns: minmax(0, 1fr);
  }

  .cc-sng-selection-panel .cc-floor-focus-panel .cc-table-player-action-buttons button {
    grid-column: auto;
  }
}

/* 今日场次桌台：让客户身份成为座位的第一视觉信息。 */
.cc-sng-selection-panel .cc-sng-inline-table {
  padding: 12px;
  border-color: #e1e6ea;
  background: linear-gradient(155deg, #f8fafb 0%, #edf2f3 100%);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .9);
}

.cc-sng-selection-panel .cc-sng-inline-table > .cc-poker-table-card {
  display: grid;
  gap: 12px;
}

.cc-sng-selection-panel .cc-poker-table-card > header {
  padding: 2px 4px 0;
}

.cc-sng-selection-panel .cc-poker-table-shell {
  padding: 70px 66px;
  overflow: hidden;
  border: 1px solid rgba(109, 129, 138, .14);
  border-radius: 22px;
  background:
    radial-gradient(circle at 50% 44%, rgba(255, 255, 255, .96) 0%, rgba(235, 241, 243, .95) 53%, rgba(213, 223, 226, .96) 100%),
    linear-gradient(145deg, #edf2f4, #dbe4e7);
  box-shadow:
    inset 0 1px 1px rgba(255, 255, 255, .9),
    inset 0 -16px 32px rgba(91, 110, 118, .08);
}

.cc-sng-selection-panel .cc-poker-table-felt {
  min-height: 410px;
  border: 12px solid #653719;
  background:
    radial-gradient(ellipse at 50% 43%, rgba(90, 196, 145, .2), transparent 45%),
    repeating-linear-gradient(32deg, rgba(255, 255, 255, .028) 0 2px, transparent 2px 10px),
    linear-gradient(145deg, #147456 0%, #07503c 48%, #033728 100%);
  box-shadow:
    inset 0 0 0 3px rgba(221, 166, 92, .28),
    inset 0 0 54px rgba(0, 18, 13, .5),
    0 9px 0 #41200f,
    0 20px 36px rgba(37, 55, 50, .28);
}

.cc-sng-selection-panel .cc-poker-table-felt::before {
  inset: 10%;
  border-color: rgba(221, 245, 233, .23);
  box-shadow: inset 0 0 24px rgba(0, 0, 0, .08);
}

.cc-sng-selection-panel .cc-poker-table-felt::after {
  inset: 20%;
  border-color: rgba(221, 245, 233, .15);
}

.cc-sng-selection-panel .cc-poker-table-center {
  width: 40%;
  min-height: 126px;
  padding: 18px 24px;
  border: 1px solid rgba(231, 190, 110, .42);
  background:
    radial-gradient(ellipse at 50% 30%, rgba(255, 255, 255, .08), transparent 56%),
    rgba(1, 42, 31, .72);
  box-shadow:
    inset 0 0 0 5px rgba(255, 255, 255, .025),
    inset 0 0 30px rgba(0, 0, 0, .24),
    0 10px 24px rgba(0, 27, 20, .2);
}

.cc-sng-selection-panel .cc-poker-table-center::before {
  content: "店启赛事";
  display: block;
  margin-bottom: 3px;
  color: #d9ad5f;
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .22em;
}

.cc-sng-selection-panel .cc-poker-table-center strong {
  font-size: clamp(17px, 1.5vw, 22px);
}

.cc-sng-selection-panel .cc-poker-seat {
  width: clamp(122px, 9.6vw, 150px);
}

.cc-sng-selection-panel .cc-poker-seat-main {
  min-height: 82px;
  padding: 10px 12px;
  border-width: 1px;
  border-color: rgba(189, 201, 205, .9);
  border-radius: 18px;
  background: rgba(255, 255, 255, .96);
  box-shadow:
    0 9px 0 rgba(20, 42, 35, .13),
    0 15px 25px rgba(12, 39, 31, .18);
}

.cc-sng-selection-panel .cc-poker-seat-main:hover,
.cc-sng-selection-panel .cc-poker-seat-main:focus-visible {
  transform: translateY(-3px);
  box-shadow:
    0 6px 0 rgba(117, 27, 40, .14),
    0 16px 28px rgba(12, 39, 31, .25);
}

.cc-sng-selection-panel .cc-poker-seat.is-empty .cc-poker-seat-main {
  border-style: dashed;
  border-color: rgba(198, 211, 213, .95);
  color: #56646b;
  background: rgba(250, 253, 252, .93);
}

.cc-sng-selection-panel .cc-poker-seat.is-occupied .cc-poker-seat-main {
  border-color: #5fc796;
  background: linear-gradient(145deg, #ffffff 0%, #effbf5 100%);
}

.cc-sng-selection-panel .cc-poker-seat.is-rebuy .cc-poker-seat-main {
  border-color: #e6b95f;
  background: linear-gradient(145deg, #fffdf8 0%, #fff5dd 100%);
}

.cc-sng-selection-panel .cc-poker-seat.is-eliminated .cc-poker-seat-main {
  border-color: #dd929d;
  background: linear-gradient(145deg, #fff 0%, #fff0f2 100%);
}

.cc-sng-selection-panel .cc-floor-seat-layout {
  gap: 10px;
}

.cc-sng-selection-panel .cc-floor-seat-avatar {
  width: 42px;
  height: 42px;
  border: 2px solid rgba(255, 255, 255, .92);
  background: linear-gradient(145deg, #314556, #172633);
  font-size: 16px;
  box-shadow: 0 4px 10px rgba(20, 35, 47, .22);
}

.cc-sng-selection-panel .cc-floor-seat-avatar.is-empty {
  border: 1px dashed #b8c5c7;
  color: #87979a;
  background: #eef3f2;
  font-size: 21px;
  font-weight: 500;
  box-shadow: none;
}

.cc-sng-selection-panel .cc-floor-seat-copy b {
  color: #89939b;
  font-size: 10px;
}

.cc-sng-selection-panel .cc-floor-seat-copy strong {
  margin-top: 1px;
  color: #1f2a32;
  font-size: 14px;
  line-height: 1.25;
}

.cc-sng-selection-panel .cc-poker-seat.is-occupied .cc-floor-seat-copy strong {
  color: #08704a;
}

.cc-sng-selection-panel .cc-floor-seat-copy small {
  margin-top: 2px;
  font-size: 9px;
}

.cc-sng-selection-panel .cc-poker-seat.is-selected .cc-poker-seat-main {
  border-color: var(--cc-red);
  box-shadow:
    0 0 0 4px rgba(223, 36, 61, .14),
    0 9px 0 rgba(117, 27, 40, .14),
    0 17px 30px rgba(12, 39, 31, .27);
}

.cc-sng-selection-panel .cc-poker-table-card > footer {
  padding: 0 4px 2px;
}

@media (max-width: 1280px) {
  .cc-sng-selection-panel .cc-poker-table-shell {
    padding: 62px 56px;
  }

  .cc-sng-selection-panel .cc-poker-table-felt {
    min-height: 370px;
  }
}

@media (max-width: 720px) {
  .cc-sng-selection-panel .cc-poker-table-shell {
    padding: 52px 42px;
  }

  .cc-sng-selection-panel .cc-poker-table-felt {
    min-height: 300px;
  }

  .cc-sng-selection-panel .cc-poker-seat {
    width: 104px;
  }

  .cc-sng-selection-panel .cc-poker-seat-main {
    min-height: 68px;
    padding: 8px;
    border-radius: 14px;
  }

  .cc-sng-selection-panel .cc-floor-seat-avatar {
    width: 32px;
    height: 32px;
    font-size: 13px;
  }

  .cc-sng-selection-panel .cc-floor-seat-copy small {
    display: none;
  }
}

/* 会员与战绩：左侧持续选人，右侧完成高频运营操作。 */
.cc-shell[data-active-page="members"] .cc-member-admin-page {
  gap: 14px;
}

.cc-shell[data-active-page="members"] .cc-member-admin-hero {
  padding: 2px 0;
}

.cc-shell[data-active-page="members"] .cc-member-admin-hero h2 {
  margin: 3px 0 4px;
  font-size: 24px;
}

.cc-member-admin-page[data-member-view="detail"] .cc-member-admin-hero > div > p:last-child,
.cc-member-admin-page[data-member-view="detail"] .cc-member-admin-hero > button {
  display: none;
}

.cc-shell[data-active-page="members"] .cc-member-admin-layout {
  display: grid;
  grid-template-columns: minmax(400px, .68fr) minmax(0, 1.32fr);
  align-items: start;
  gap: 14px;
}

.cc-member-admin-page[data-member-view="list"] .cc-member-admin-layout {
  grid-template-columns: minmax(0, 1fr);
}

.cc-member-directory-column {
  display: grid;
  min-width: 0;
  gap: 10px;
}

.cc-shell[data-active-page="members"] .cc-member-admin-toolbar {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
  padding: 12px;
}

.cc-shell[data-active-page="members"] .cc-member-admin-toolbar form {
  display: grid;
  min-width: 0;
  grid-column: 1 / -1;
  grid-template-columns: minmax(0, 1fr) auto;
  flex: none;
}

.cc-shell[data-active-page="members"] .cc-member-admin-toolbar form button {
  padding-inline: 13px;
}

.cc-shell[data-active-page="members"] .cc-member-admin-filters {
  min-width: 0;
  overflow-x: auto;
}

.cc-shell[data-active-page="members"] .cc-member-admin-filters button {
  padding-inline: 9px;
  font-size: 11px;
}

.cc-shell[data-active-page="members"] #cc-member-admin-reload {
  min-height: 34px;
  padding-inline: 11px;
  font-size: 11px;
}

.cc-shell[data-active-page="members"] .cc-member-directory-panel {
  min-height: 690px;
  padding: 0;
  overflow: hidden;
}

.cc-shell[data-active-page="members"] .cc-member-directory-panel > .cc-panel-heading {
  min-height: 60px;
  padding: 12px 15px;
}

.cc-shell[data-active-page="members"] .cc-member-directory-panel > .cc-panel-heading h2 {
  font-size: 16px;
}

.cc-shell[data-active-page="members"] .cc-member-admin-list {
  max-height: 740px;
  gap: 0;
  margin: 0;
  overflow-y: auto;
  padding: 4px 10px 12px;
}

.cc-shell[data-active-page="members"] .cc-member-admin-row {
  display: block;
  min-height: 0;
  border: 0;
  border-bottom: 1px solid #edf0f3;
  border-radius: 0;
  background: transparent;
}

.cc-shell[data-active-page="members"] .cc-member-admin-row:last-child {
  border-bottom: 0;
}

.cc-shell[data-active-page="members"] .cc-member-admin-row.is-selected {
  border: 1px solid #f1a7b1;
  border-radius: 10px;
  background: #fff5f6;
  box-shadow: inset 3px 0 #e51f3d;
}

.cc-shell[data-active-page="members"] .cc-member-admin-row-main {
  width: 100%;
  min-height: 66px;
  grid-template-columns: 42px minmax(0, 1fr) 14px;
  gap: 10px;
  padding: 9px 10px;
}

.cc-shell[data-active-page="members"] .cc-member-admin-avatar {
  width: 42px;
  height: 42px;
  border-radius: 50%;
}

.cc-shell[data-active-page="members"] .cc-member-admin-identity > span {
  display: flex;
  min-width: 0;
  align-items: center;
}

.cc-shell[data-active-page="members"] .cc-member-admin-identity em {
  flex: 0 0 auto;
  color: #2766b0;
  background: #eaf3ff;
}

.cc-shell[data-active-page="members"] .cc-member-admin-detail,
.cc-member-admin-page[data-member-view="detail"] .cc-member-admin-detail {
  width: auto;
  min-width: 0;
  min-height: 690px;
  margin: 0;
  padding: 0;
  overflow: hidden;
}

.cc-member-workbench-profile {
  display: grid;
  grid-template-columns: auto minmax(180px, .75fr) minmax(430px, 1.5fr);
  align-items: center;
  gap: 16px;
  padding: 18px 20px;
  border-bottom: 1px solid #e6eaee;
  background: #fff;
}

.cc-member-workbench-profile .cc-member-admin-avatar.is-large {
  width: 72px;
  height: 72px;
  border-radius: 50%;
}

.cc-member-workbench-identity {
  display: grid;
  min-width: 0;
  gap: 4px;
}

.cc-member-workbench-identity > span {
  width: max-content;
  padding: 3px 7px;
  border-radius: 7px;
  color: #2865aa;
  background: #eaf3ff;
  font-size: 9px;
  font-weight: 800;
}

.cc-member-workbench-identity > strong {
  overflow: hidden;
  color: #202833;
  font-size: 21px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cc-member-workbench-identity > small {
  color: #697586;
  font-size: 11px;
}

.cc-member-workbench-metrics {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  min-width: 0;
}

.cc-member-workbench-metrics > span {
  display: grid;
  gap: 5px;
  padding: 7px 15px;
  border-left: 1px solid #e5e9ed;
  text-align: center;
}

.cc-member-workbench-metrics small {
  color: #687384;
  font-size: 10px;
}

.cc-member-workbench-metrics strong {
  color: #202833;
  font-size: 20px;
}

.cc-member-workbench-metrics > span:first-child strong {
  color: #0874df;
}

.cc-member-workbench-metrics > span:nth-child(2) strong {
  color: #e51f3d;
}

.cc-member-adjustment-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  padding: 14px;
  background: #f7f9fb;
}

.cc-member-adjustment-card {
  min-width: 0;
  overflow: hidden;
  border: 1px solid #e1e5ea;
  border-radius: 12px;
  background: #fff;
}

.cc-member-adjustment-card > header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 14px 15px;
  border-bottom: 1px solid #e8ebef;
}

.cc-member-adjustment-card > header > div {
  display: grid;
  min-width: 0;
  gap: 3px;
}

.cc-member-adjustment-card > header strong {
  color: #202833;
  font-size: 15px;
}

.cc-member-adjustment-card > header span,
.cc-member-adjustment-card form label > span {
  color: #788391;
  font-size: 10px;
}

.cc-member-adjustment-card > header > b {
  color: #0874df;
  font-size: 18px;
}

.cc-member-adjustment-card.is-event > header > b {
  color: #e51f3d;
}

.cc-member-adjustment-card form {
  display: grid;
  gap: 11px;
  padding: 14px 15px 16px;
}

.cc-member-adjustment-card form label {
  display: grid;
  gap: 6px;
}

.cc-member-adjustment-card form input {
  width: 100%;
  min-width: 0;
  min-height: 40px;
  padding: 0 11px;
  border: 1px solid #d6dce3;
  border-radius: 8px;
  color: #202833;
  background: #fff;
  font: inherit;
}

.cc-member-adjustment-card form input:focus {
  border-color: #e26d7e;
  outline: 3px solid rgba(226, 36, 63, .08);
}

.cc-member-adjustment-directions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.cc-member-adjustment-directions button {
  min-width: 0;
  min-height: 38px;
  border: 1px solid #b8dfcd;
  border-radius: 8px;
  color: #138354;
  background: #f4fbf7;
  font-weight: 800;
}

.cc-member-adjustment-directions button.is-debit {
  border-color: #f0b3bc;
  color: #d7223e;
  background: #fff7f8;
}

.cc-member-adjustment-directions button:disabled {
  cursor: wait;
  opacity: .5;
}

.cc-member-recent-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  padding: 0 14px 14px;
  background: #f7f9fb;
}

.cc-member-recent-grid > article {
  min-width: 0;
  overflow: hidden;
  border: 1px solid #e1e5ea;
  border-radius: 12px;
  background: #fff;
}

.cc-member-recent-grid > article > header {
  display: flex;
  min-height: 48px;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 10px 13px;
  border-bottom: 1px solid #e8ebef;
}

.cc-member-recent-grid > article > header strong {
  color: #28313d;
  font-size: 13px;
}

.cc-member-recent-grid > article > header button {
  border: 0;
  color: #1474da;
  background: transparent;
  font-size: 10px;
  font-weight: 750;
}

.cc-member-workbench-table {
  display: grid;
}

.cc-member-workbench-table > div {
  display: grid;
  grid-template-columns: 112px minmax(90px, 1fr) 70px 82px;
  align-items: center;
  gap: 8px;
  min-height: 42px;
  padding: 7px 11px;
  border-bottom: 1px solid #edf0f3;
  color: #596575;
  font-size: 10px;
}

.cc-member-workbench-table > div:last-child {
  border-bottom: 0;
}

.cc-member-workbench-table > .is-head {
  min-height: 34px;
  color: #89939f;
  background: #f7f9fb;
  font-size: 9px;
}

.cc-member-workbench-table > div > time {
  color: #788391;
  font-size: 9px;
}

.cc-member-workbench-table > div > b {
  color: #3d4856;
  font-size: 10px;
}

.cc-member-workbench-table > div > b[data-direction="credit"] {
  color: #13925d;
}

.cc-member-workbench-table > div > b[data-direction="debit"] {
  color: #d82b45;
}

.cc-member-workbench-table > div > em {
  overflow: hidden;
  color: #687383;
  font-size: 9px;
  font-style: normal;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cc-member-workbench-table.is-records > div > span {
  display: grid;
  min-width: 0;
  gap: 2px;
}

.cc-member-workbench-table.is-records > div > span strong,
.cc-member-workbench-table.is-records > div > span small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cc-member-workbench-table.is-records > div > span strong {
  color: #3c4652;
  font-size: 10px;
}

.cc-member-workbench-table.is-records > div > span small {
  color: #8b95a1;
  font-size: 9px;
}

.cc-member-workbench-table > .is-empty {
  display: grid;
  min-height: 120px;
  place-items: center;
  color: #8d97a3;
}

.cc-member-more-tools {
  margin: 0 14px 14px;
  overflow: hidden;
  border: 1px solid #e1e5ea;
  border-radius: 12px;
  background: #fff;
}

.cc-member-more-tools > summary {
  display: flex;
  min-height: 56px;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 11px 14px;
  cursor: pointer;
  list-style: none;
}

.cc-member-more-tools > summary::-webkit-details-marker {
  display: none;
}

.cc-member-more-tools > summary > span,
.cc-member-more-tools > summary strong,
.cc-member-more-tools > summary small {
  display: block;
}

.cc-member-more-tools > summary strong {
  color: #303a46;
  font-size: 13px;
}

.cc-member-more-tools > summary small {
  margin-top: 3px;
  color: #8a94a0;
  font-size: 10px;
}

.cc-member-more-tools > summary > b {
  color: #687383;
  font-size: 10px;
}

.cc-member-more-tools[open] > summary > b {
  font-size: 0;
}

.cc-member-more-tools[open] > summary > b::after {
  content: "收起";
  font-size: 10px;
}

.cc-member-more-tools-body {
  display: grid;
  gap: 12px;
  padding: 14px;
  border-top: 1px solid #e8ebef;
  background: #f8f9fb;
}

.cc-member-more-tools-body > * {
  margin: 0;
}

@media (max-width: 1500px) {
  .cc-shell[data-active-page="members"] .cc-member-admin-layout {
    grid-template-columns: minmax(360px, .62fr) minmax(0, 1.38fr);
  }

  .cc-member-workbench-profile {
    grid-template-columns: auto minmax(160px, 1fr);
  }

  .cc-member-workbench-metrics {
    grid-column: 1 / -1;
    grid-row: 2;
  }
}

@media (max-width: 1180px) {
  .cc-shell[data-active-page="members"] .cc-member-admin-layout {
    grid-template-columns: minmax(0, 1fr);
  }

  .cc-shell[data-active-page="members"] .cc-member-directory-panel {
    min-height: 0;
  }

  .cc-shell[data-active-page="members"] .cc-member-admin-list {
    max-height: 360px;
  }
}

@media (max-width: 760px) {
  .cc-member-workbench-profile {
    grid-template-columns: auto minmax(0, 1fr);
    padding: 15px;
  }

  .cc-member-workbench-metrics {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .cc-member-workbench-metrics > span:nth-child(3) {
    border-top: 1px solid #e5e9ed;
  }

  .cc-member-workbench-metrics > span:nth-child(4) {
    border-top: 1px solid #e5e9ed;
  }

  .cc-member-adjustment-grid,
  .cc-member-recent-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .cc-member-workbench-table {
    overflow-x: auto;
  }

  .cc-member-workbench-table > div {
    min-width: 440px;
  }

  .cc-member-adjustment-directions {
    grid-template-columns: minmax(0, 1fr);
  }
}

/* Motion feedback: short, interruptible cues driven by real UI and server state. */
@keyframes cc-page-enter {
  from { opacity: 0; transform: translateY(5px); }
  to { opacity: 1; transform: translateY(0); }
}

@keyframes cc-feedback-enter {
  from { opacity: 0; transform: translateY(-6px); }
  to { opacity: 1; transform: translateY(0); }
}

@keyframes cc-panel-open {
  from { opacity: 0; transform: translateY(8px) scale(.995); }
  to { opacity: 1; transform: translateY(0) scale(1); }
}

@keyframes cc-stage-change {
  0% { opacity: .58; transform: translateY(4px); }
  65% { opacity: 1; transform: translateY(-1px); }
  100% { opacity: 1; transform: translateY(0); }
}

@keyframes cc-state-change {
  0% { background-color: rgba(228, 31, 61, .1); box-shadow: inset 3px 0 0 rgba(228, 31, 61, .72); }
  100% { background-color: transparent; box-shadow: inset 0 0 0 rgba(228, 31, 61, 0); }
}

@keyframes cc-seat-state-change {
  0% { filter: brightness(1.08); transform: translate(-50%, -50%) scale(.96); }
  70% { filter: brightness(1); transform: translate(-50%, -50%) scale(1.025); }
  100% { filter: brightness(1); transform: translate(-50%, -50%) scale(1); }
}

@keyframes cc-check-passed {
  0% { background: rgba(17, 165, 100, .14); }
  100% { background: transparent; }
}

@keyframes cc-modal-backdrop-enter {
  from { opacity: 0; }
  to { opacity: 1; }
}

@keyframes cc-modal-enter {
  from { opacity: 0; transform: translateY(8px) scale(.985); }
  to { opacity: 1; transform: translateY(0) scale(1); }
}

@keyframes cc-busy-line {
  from { transform: translateX(-115%); }
  to { transform: translateX(215%); }
}

@keyframes cc-processing-spin {
  to { transform: rotate(360deg); }
}

.cc-content.is-page-entering > [data-cc-page]:not([hidden]) {
  animation: cc-page-enter 180ms cubic-bezier(.2, .72, .28, 1) both;
}

.cc-action-feedback.is-feedback-entering {
  animation: cc-feedback-enter 180ms cubic-bezier(.2, .72, .28, 1) both;
}

.cc-connection-banner:not([hidden]) {
  animation: cc-feedback-enter 180ms cubic-bezier(.2, .72, .28, 1) both;
}

.cc-live-status,
.cc-live-status span {
  transition: color 140ms ease, background-color 140ms ease, box-shadow 140ms ease;
}

.cc-action-feedback[data-tone="processing"] .cc-feedback-icon {
  animation: cc-processing-spin 720ms linear infinite;
}

#cc-sng-create-panel.is-opening,
.cc-sng-selection-panel.is-opening {
  transform-origin: center top;
  animation: cc-panel-open 210ms cubic-bezier(.2, .72, .28, 1) both;
}

.cc-sng-card-more[open] > div,
.cc-member-more-tools[open] > .cc-member-more-tools-body {
  transform-origin: center top;
  animation: cc-panel-open 160ms cubic-bezier(.2, .72, .28, 1) both;
}

.cc-sng-workflow.is-stage-changing .cc-sng-workflow-steps article.is-current,
.cc-sng-workflow.is-stage-changing .cc-sng-next-step {
  animation: cc-stage-change 340ms cubic-bezier(.2, .72, .28, 1) both;
}

.cc-sng-player-list article.is-state-changed,
.cc-sng-workbench-roster-grid article.is-state-changed {
  animation: cc-state-change 420ms ease-out both;
}

.cc-poker-seat.is-state-changed {
  animation: cc-seat-state-change 360ms cubic-bezier(.2, .72, .28, 1) both;
}

.cc-sng-settlement-checks > div.is-newly-passed {
  animation: cc-check-passed 460ms ease-out both;
}

.cc-sng-settlement-checks > div.is-newly-passed > i {
  transition: transform 180ms cubic-bezier(.2, .72, .28, 1);
  transform: scale(1.08);
}

.cc-modal-backdrop:not([hidden]) {
  animation: cc-modal-backdrop-enter 140ms ease-out both;
}

.cc-modal-backdrop:not([hidden]) > * {
  transform-origin: center;
  animation: cc-modal-enter 180ms cubic-bezier(.2, .72, .28, 1) both;
}

#sng[aria-busy="true"] .cc-sng-workflow {
  position: relative;
  overflow: hidden;
  cursor: progress;
}

#sng[aria-busy="true"] .cc-sng-workflow::before {
  position: absolute;
  z-index: 4;
  top: 0;
  left: 0;
  width: 42%;
  height: 2px;
  border-radius: 999px;
  background: linear-gradient(90deg, transparent, var(--cc-red), transparent);
  content: "";
  animation: cc-busy-line 780ms ease-in-out infinite;
}

.cc-sng-player-list article.is-table-focus {
  animation-duration: 360ms;
  animation-iteration-count: 1;
}

@media (max-width: 760px) {
  .cc-modal-backdrop {
    backdrop-filter: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }

  *,
  *::before,
  *::after {
    scroll-behavior: auto !important;
    transition-duration: .01ms !important;
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
  }
}

/* Final cascade guard for the integrated timer-console layout. */
.cc-shell[data-active-page="overview"] .cc-overview-event-shell {
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}

.cc-shell[data-active-page="overview"] #overview.cc-overview-v3 {
  display: block;
  overflow: visible;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.cc-shell[data-active-page="overview"] .cc-brand-mark {
  background: #f2384f;
}

.cc-shell[data-active-page="overview"] .cc-nav a.is-active {
  background: rgba(242, 56, 79, .18);
}

.cc-shell[data-active-page="overview"] #overview .cc-timer-stage .cc-live-status {
  min-height: 28px;
  padding: 0 10px;
  color: #65e3b1;
  background: rgba(19, 161, 108, .2);
  font-size: 10px;
}

.cc-shell[data-active-page="overview"] #overview .cc-timer-stage .cc-clock-wrap {
  display: grid;
  min-height: 0;
  justify-content: normal;
  justify-items: center;
  margin: 4px 0 7px;
  padding: 0;
}

.cc-shell[data-active-page="overview"] #overview .cc-timer-stage .cc-clock {
  color: #fff;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  font-size: clamp(64px, 6.2vw, 88px);
  font-weight: 760;
  font-variant-numeric: tabular-nums;
  line-height: 1.06;
  letter-spacing: -.07em;
}

.cc-shell[data-active-page="overview"] #overview .cc-timer-stage #cc-clock-caption {
  display: block;
  color: #7f90a8;
  font-size: 9px;
}

.cc-shell[data-active-page="overview"] #overview .cc-timer-stage .cc-progress-label {
  color: #b9c5d6;
  font-size: 10px;
}

.cc-shell[data-active-page="overview"] #overview .cc-timer-stage .cc-progress {
  height: 7px;
  background: #344a63;
}

.cc-shell[data-active-page="overview"] #overview .cc-stack-adjustment input {
  height: 42px;
  padding: 0 30px 0 10px;
  border-radius: 9px;
  font-size: 14px;
}

.cc-shell[data-active-page="overview"] .cc-console-config-switcher,
.cc-shell[data-active-page="overview"] #cc-console-theme,
.cc-shell[data-active-page="overview"] #cc-console-rounds,
.cc-shell[data-active-page="overview"] .cc-console-more,
.cc-shell[data-active-page="overview"] .cc-console-access-grid,
.cc-shell[data-active-page="overview"] #cc-tv-routing-dock,
.cc-overview-tournament-management {
  display: none !important;
}

body[data-cc-overview-drawer="tournaments"] .cc-shell[data-active-page="overview"] .cc-overview-tournament-management,
body[data-cc-overview-drawer="tv"] .cc-shell[data-active-page="overview"] #cc-tv-routing-dock,
body[data-cc-overview-drawer="display"] .cc-shell[data-active-page="overview"] #cc-console-theme,
body[data-cc-overview-drawer="rules"] .cc-shell[data-active-page="overview"] #cc-console-rounds,
body[data-cc-overview-drawer="devices"] .cc-shell[data-active-page="overview"] #devices {
  display: block !important;
}

/* Account subscription summary and official website — reviewed in template-lab/account-header. */
.cc-shell[data-active-page] .cc-topbar .cc-topbar-meta { flex-wrap: wrap; }
.cc-shell[data-active-page] .cc-topbar-meta #cc-subscription-pill {
  display: grid !important;
  box-sizing: border-box;
  min-width: 190px;
  min-height: 64px;
  padding: 9px 54px 9px 12px;
  border-radius: 14px;
  flex: 0 0 auto;
}
.cc-shell[data-active-page] #cc-subscription-pill small { display: block; font-size: 11px; }
.cc-shell[data-active-page] #cc-subscription-pill strong { font-size: 14px; }
.cc-shell[data-active-page] #cc-subscription-pill span:empty { display: none; }
.cc-shell[data-active-page] #cc-subscription-pill em { font-size: 10px; color: #788596; font-style: normal; white-space: nowrap; }
.cc-shell[data-active-page] .cc-topbar-meta .cc-product-home-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  min-height: 42px;
  padding: 0 14px;
  border: 1px solid #cfddf4;
  border-radius: 10px;
  background: #f4f8ff;
  color: #2563eb;
  font-size: 13px;
  font-weight: 700;
  text-decoration: none;
  white-space: nowrap;
}
.cc-product-home-link:focus-visible { outline: 2px solid #2563eb; outline-offset: 3px; }
.cc-product-home-link:hover { background: #eaf2ff; }
@media (max-width: 1500px) {
  .cc-shell[data-active-page] .cc-topbar { flex-wrap: wrap; gap: 16px; }
  .cc-shell[data-active-page] .cc-topbar .cc-topbar-meta { max-width: 100%; justify-content: flex-start; }
}
@media (max-width: 600px) {
  .cc-shell[data-active-page] .cc-topbar-meta #cc-subscription-pill { min-width: 0; flex: 1 1 185px; }
}
@media (prefers-reduced-motion: reduce) { #cc-subscription-pill { transition: none; transform: none; } }

/* Edit-display is a focused desktop dialog; the other overview tools remain drawers. */
body[data-cc-overview-drawer="display"] .cc-shell[data-active-page="overview"] #cc-console-theme {
  top: 50%;
  right: auto;
  bottom: auto;
  left: 50%;
  width: min(1180px, calc(100vw - 56px));
  max-height: calc(100vh - 48px);
  padding: 24px;
  border: 1px solid rgba(23, 32, 51, .12);
  border-radius: 18px;
  box-shadow: 0 28px 90px rgba(15, 23, 42, .28);
  transform: translate(-50%, -50%);
  animation: cc-overview-display-dialog-in 160ms ease-out;
}

body[data-cc-overview-drawer="display"] #cc-overview-drawer-backdrop {
  background: rgba(15, 23, 42, .42);
  backdrop-filter: blur(2px);
}

body[data-cc-overview-drawer="display"] #cc-console-theme > .cc-panel-heading {
  position: sticky;
  z-index: 4;
  top: -24px;
  margin: -24px -24px 16px;
  padding: 20px 24px 16px;
  border-bottom: 1px solid #e6eaf0;
  background: rgba(255, 255, 255, .98);
}

@keyframes cc-overview-display-dialog-in {
  from { opacity: 0; transform: translate(-50%, calc(-50% + 12px)) scale(.985); }
  to { opacity: 1; transform: translate(-50%, -50%) scale(1); }
}

@media (max-width: 760px) {
  body[data-cc-overview-drawer="display"] .cc-shell[data-active-page="overview"] #cc-console-theme {
    width: calc(100vw - 20px);
    max-height: calc(100vh - 20px);
    padding: 14px;
    border-radius: 14px;
  }

  body[data-cc-overview-drawer="display"] #cc-console-theme > .cc-panel-heading {
    top: -14px;
    margin: -14px -14px 12px;
    padding: 14px;
  }
}

@media (prefers-reduced-motion: reduce) {
  body[data-cc-overview-drawer="display"] .cc-shell[data-active-page="overview"] #cc-console-theme { animation: none; }
}

/* All overview configuration surfaces use the same centered-dialog interaction. */
body[data-cc-overview-drawer] .cc-shell[data-active-page="overview"] :is(
  .cc-overview-tournament-management,
  #cc-tv-routing-dock,
  #cc-console-theme,
  #cc-console-rounds,
  #devices
) {
  top: 50%;
  right: auto;
  bottom: auto;
  left: 50%;
  width: min(1180px, calc(100vw - 56px));
  max-height: calc(100vh - 48px);
  margin: 0;
  padding: 24px;
  overflow: auto;
  border: 1px solid rgba(23, 32, 51, .12);
  border-radius: 18px;
  box-shadow: 0 28px 90px rgba(15, 23, 42, .28);
  transform: translate(-50%, -50%);
  animation: cc-overview-display-dialog-in 160ms ease-out;
}

body[data-cc-overview-drawer] #cc-overview-drawer-backdrop {
  background: rgba(15, 23, 42, .42);
  backdrop-filter: blur(2px);
}

body[data-cc-overview-drawer] [data-cc-overview-dialog-active] > :is(
  .cc-panel-heading,
  .cc-tv-routing-heading,
  .cc-tournament-switcher-heading
) {
  position: sticky;
  z-index: 4;
  top: -24px;
  margin-top: -24px;
  padding-top: 20px;
  padding-bottom: 16px;
  background: rgba(255, 255, 255, .98);
}

@media (max-width: 760px) {
  body[data-cc-overview-drawer] .cc-shell[data-active-page="overview"] :is(
    .cc-overview-tournament-management,
    #cc-tv-routing-dock,
    #cc-console-theme,
    #cc-console-rounds,
    #devices
  ) {
    width: calc(100vw - 20px);
    max-height: calc(100vh - 20px);
    padding: 14px;
    border-radius: 14px;
  }

  body[data-cc-overview-drawer] [data-cc-overview-dialog-active] > :is(
    .cc-panel-heading,
    .cc-tv-routing-heading,
    .cc-tournament-switcher-heading
  ) {
    top: -14px;
    margin-top: -14px;
    padding-top: 14px;
  }
}

@media (prefers-reduced-motion: reduce) {
  body[data-cc-overview-drawer] .cc-shell[data-active-page="overview"] :is(
    .cc-overview-tournament-management,
    #cc-tv-routing-dock,
    #cc-console-theme,
    #cc-console-rounds,
    #devices
  ) { animation: none; }
}

/* Tournament creation keeps its guidance and result inside the active dialog. */
body[data-cc-overview-drawer="tournaments"] .cc-shell[data-active-page="overview"] #cc-tournament-create-form {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: end;
  gap: 9px 12px;
  margin: 20px 0 22px;
}

.cc-shell[data-active-page="overview"] .cc-tournament-create-field {
  display: grid;
  min-width: 0;
  gap: 7px;
}

.cc-shell[data-active-page="overview"] .cc-tournament-create-field > span {
  color: #30394a;
  font-size: 12px;
  font-weight: 800;
}

.cc-shell[data-active-page="overview"] #cc-tournament-create-form .cc-tournament-create-field input {
  width: 100%;
  height: 44px;
  padding-inline: 14px;
  border-radius: 11px;
  font-size: 13px;
}

.cc-shell[data-active-page="overview"] #cc-tournament-create-form .cc-tournament-create-field input.is-invalid {
  border-color: #ef3150;
  box-shadow: 0 0 0 3px rgba(239, 49, 80, .1);
}

.cc-shell[data-active-page="overview"] .cc-tournament-create-field small {
  color: #8994a5;
  font-size: 10px;
  line-height: 1.45;
}

.cc-shell[data-active-page="overview"] #cc-tournament-create-form > button {
  min-width: 126px;
  height: 44px;
  padding-inline: 18px;
  border-radius: 11px;
  font-size: 12px;
}

.cc-shell[data-active-page="overview"] #cc-tournament-create-form > button[aria-busy="true"] {
  cursor: wait;
  opacity: .72;
}

.cc-shell[data-active-page="overview"] .cc-tournament-create-status {
  grid-column: 1 / -1;
  margin: 0;
  padding: 9px 12px;
  border-radius: 9px;
  color: #b32139;
  background: #fff1f3;
  font-size: 11px;
  font-weight: 700;
}

.cc-shell[data-active-page="overview"] .cc-tournament-create-status[data-tone="loading"] {
  color: #45637f;
  background: #eff6fd;
}

.cc-shell[data-active-page="overview"] .cc-tournament-create-status[data-tone="success"] {
  color: #12825a;
  background: #eaf8f1;
}

@media (max-width: 640px) {
  body[data-cc-overview-drawer="tournaments"] .cc-shell[data-active-page="overview"] #cc-tournament-create-form {
    grid-template-columns: 1fr;
  }

  .cc-shell[data-active-page="overview"] #cc-tournament-create-form > button,
  .cc-shell[data-active-page="overview"] .cc-tournament-create-status {
    grid-column: 1;
    width: 100%;
  }
}

/* Store-display voice settings: explicit sections prevent controls from collapsing into uneven columns. */
.cc-shell[data-active-page="store-display"] .cc-seat-welcome-form {
  grid-template-columns: minmax(0, 1fr) !important;
  align-items: start;
  gap: 16px;
}

.cc-shell[data-active-page="store-display"] .cc-seat-welcome-form > * {
  grid-column: 1 / -1 !important;
  min-width: 0;
}

.cc-seat-welcome-setup-section,
.cc-seat-welcome-copy-section {
  display: grid;
  gap: 14px;
  min-width: 0;
  padding: 18px;
  border: 1px solid var(--cc-line);
  border-radius: 15px;
  background: var(--cc-panel-2);
}

.cc-seat-welcome-section-heading {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 16px;
  padding-bottom: 12px;
  border-bottom: 1px solid var(--cc-line);
}

.cc-seat-welcome-section-heading > div {
  display: flex;
  align-items: center;
  gap: 9px;
}

.cc-seat-welcome-section-heading small,
.cc-cloud-voice-heading > div > small {
  display: grid;
  width: 28px;
  height: 28px;
  flex: 0 0 28px;
  place-items: center;
  border-radius: 8px;
  color: var(--cc-red);
  background: #fff0f2;
  font-size: 10px;
  font-weight: 900;
}

.cc-seat-welcome-section-heading strong {
  color: var(--cc-text);
  font-size: 15px;
}

.cc-seat-welcome-section-heading > span {
  color: var(--cc-muted);
  font-size: 11px;
  line-height: 1.5;
  text-align: right;
}

.cc-seat-welcome-setup-section .cc-seat-welcome-switches,
.cc-seat-welcome-setup-section .cc-seat-welcome-voice-grid,
.cc-seat-welcome-copy-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.cc-seat-welcome-copy-grid > *,
.cc-seat-welcome-setup-section :is(.cc-seat-welcome-switch, .cc-seat-welcome-field) {
  min-width: 0;
}

.cc-seat-welcome-copy-grid .cc-seat-welcome-field textarea {
  min-height: 112px;
  background: #fff;
}

.cc-seat-welcome-setup-section .cc-seat-welcome-field select {
  background: #fff;
}

.cc-cloud-voice-heading > div {
  grid-template-columns: auto 1fr;
  align-items: center;
}

.cc-cloud-voice-heading > div > span {
  grid-column: 2;
}

.cc-cloud-voice-list {
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
}

.cc-cloud-voice-card,
.cc-cloud-voice-card > label,
.cc-cloud-voice-copy {
  min-width: 0;
}

.cc-cloud-voice-copy strong,
.cc-cloud-voice-copy small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cc-shell[data-active-page="store-display"] .cc-seat-welcome-preview-card {
  position: sticky;
  top: 18px;
  align-self: start;
  min-height: 0;
}

@media (max-width: 1240px) {
  .cc-shell[data-active-page="store-display"] .cc-seat-welcome-preview-card { position: static; }
}

@media (max-width: 760px) {
  .cc-seat-welcome-setup-section,
  .cc-seat-welcome-copy-section,
  .cc-cloud-voice-picker { padding: 14px; }

  .cc-seat-welcome-section-heading { align-items: flex-start; flex-direction: column; gap: 6px; }
  .cc-seat-welcome-section-heading > span { padding-left: 37px; text-align: left; }
  .cc-seat-welcome-setup-section .cc-seat-welcome-switches,
  .cc-seat-welcome-setup-section .cc-seat-welcome-voice-grid,
  .cc-seat-welcome-copy-grid { grid-template-columns: 1fr; }
}

/* Member mini-program settings use module tabs instead of a long wall of forms. */
.cc-shell[data-active-page="member-space"] .cc-member-space-form {
  grid-template-columns: minmax(0, 1fr);
  gap: 16px;
}

.cc-member-space-section-tabs {
  display: grid;
  grid-column: 1 / -1;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 10px;
  padding: 12px;
  border: 1px solid #e1e6eb;
  border-radius: 15px;
  background: #fff;
  box-shadow: 0 8px 26px rgba(31, 42, 55, .06);
}

.cc-member-space-section-tabs button {
  display: grid;
  min-width: 0;
  min-height: 82px;
  grid-template-columns: 30px minmax(0, 1fr);
  grid-template-rows: auto auto;
  align-content: center;
  align-items: center;
  gap: 4px 9px;
  padding: 12px;
  border: 1px solid #dfe5ea;
  border-radius: 12px;
  color: #53606d;
  text-align: left;
  background: #f8fafb;
  cursor: pointer;
  transition: border-color .16s ease, color .16s ease, background .16s ease, box-shadow .16s ease, transform .16s ease;
}

.cc-member-space-section-tabs button:hover {
  border-color: #efb5bd;
  transform: translateY(-1px);
}

.cc-member-space-section-tabs button > span {
  display: grid;
  width: 30px;
  height: 30px;
  grid-row: 1 / 3;
  place-items: center;
  border-radius: 9px;
  color: #697786;
  background: #e9eef3;
  font-size: 10px;
  font-weight: 900;
}

.cc-member-space-section-tabs button > strong {
  overflow: hidden;
  color: #303b47;
  font-size: 13px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cc-member-space-section-tabs button > small {
  overflow: hidden;
  color: #8a95a0;
  font-size: 9px;
  line-height: 1.35;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cc-member-space-section-tabs button.is-active {
  border-color: #df1e38;
  color: #b7182e;
  background: #fff4f5;
  box-shadow: 0 0 0 2px rgba(223, 30, 56, .07);
}

.cc-member-space-section-tabs button.is-active > span {
  color: #fff;
  background: #df1e38;
}

.cc-member-space-section-tabs button.is-active > strong { color: #b7182e; }
.cc-member-space-section-tabs button:focus-visible { outline: 3px solid rgba(223, 30, 56, .14); outline-offset: 2px; }

.cc-shell[data-active-page="member-space"] [data-member-space-panel] {
  grid-column: 1 / -1;
  min-width: 0;
  animation: cc-member-space-panel-in 150ms ease-out;
}

.cc-shell[data-active-page="member-space"] [data-member-space-panel][hidden] { display: none !important; }

.cc-member-space-entry-panel {
  display: grid;
  gap: 12px;
}

@keyframes cc-member-space-panel-in {
  from { opacity: 0; transform: translateY(5px); }
  to { opacity: 1; transform: translateY(0); }
}

@media (max-width: 1240px) {
  .cc-member-space-section-tabs { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 700px) {
  .cc-member-space-section-tabs { grid-template-columns: repeat(2, minmax(0, 1fr)); padding: 9px; }
  .cc-member-space-section-tabs button { min-height: 74px; padding: 10px; }
}

@media (prefers-reduced-motion: reduce) {
  .cc-shell[data-active-page="member-space"] [data-member-space-panel] { animation: none; }
}

/* 2026-09-13 PC timer-console hierarchy refresh.
   This block is deliberately scoped to the overview page so the rest of the
   command center keeps its existing layout and behavior. */
.cc-overview-notification { display: none; }

.cc-shell[data-active-page="overview"] {
  --cc-sidebar: 224px;
  --cc-console-bg: #f4f7fb;
  --cc-console-text: #172033;
  --cc-console-muted: #758198;
  --cc-console-line: #e3e9f1;
  --cc-console-red: #f52645;
  --cc-console-blue: #3489ff;
  --cc-console-navy: #10253a;
}

.cc-shell[data-active-page="overview"] .cc-sidebar {
  overflow-y: auto;
  border-right-color: rgba(152, 174, 200, .13);
  background: linear-gradient(180deg, #0b1928 0%, #0c1c2d 100%);
  box-shadow: 12px 0 34px rgba(20, 39, 61, .08);
}

.cc-shell[data-active-page="overview"] .cc-brand { min-height: 82px; padding-block: 15px; }
.cc-shell[data-active-page="overview"] .cc-brand-mark { border: 0; border-radius: 12px; box-shadow: 0 9px 24px rgba(245, 38, 69, .28); }
.cc-shell[data-active-page="overview"] .cc-nav { gap: 5px; padding-top: 20px; }
.cc-shell[data-active-page="overview"] .cc-nav a { min-height: 46px; color: #d5dfeb; }
.cc-shell[data-active-page="overview"] .cc-nav a .cc-nav-label { color: inherit; font-family: inherit; font-size: 13px; letter-spacing: 0; }

.cc-shell[data-active-page="overview"] .cc-topbar {
  min-height: 72px;
  padding: 10px clamp(20px, 2vw, 32px);
  border-bottom-color: var(--cc-console-line);
  background: rgba(255, 255, 255, .94);
  box-shadow: 0 1px 0 rgba(33, 57, 84, .02);
}

.cc-shell[data-active-page="overview"] .cc-event-identity,
.cc-shell[data-active-page="overview"] .cc-subscription-pill,
.cc-shell[data-active-page="overview"] .cc-mode-switch,
.cc-shell[data-active-page="overview"] .cc-tv-quick-access,
.cc-shell[data-active-page="overview"] .cc-desktop-meta,
.cc-shell[data-active-page="overview"] .cc-product-home-link { display: none !important; }

.cc-shell[data-active-page="overview"] .cc-topbar-meta #cc-subscription-pill { display: none !important; }

.cc-shell[data-active-page="overview"] .cc-topbar .cc-topbar-meta {
  display: flex;
  width: 100%;
  max-width: none;
  align-items: center;
  justify-content: flex-end;
  gap: 12px;
  flex-wrap: nowrap;
}

.cc-shell[data-active-page="overview"] .cc-topbar-meta .cc-topbar-status-card { min-height: 50px; height: 50px; padding-block: 7px; }

.cc-shell[data-active-page="overview"] .cc-coupon-store-pill {
  width: 310px;
  min-width: 310px;
  min-height: 50px;
  margin-right: auto;
  padding: 7px 13px;
  border-color: #e4eaf2;
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 4px 18px rgba(41, 66, 95, .035);
}

.cc-shell[data-active-page="overview"] .cc-topbar-meta .cc-coupon-store-pill { width: 310px; min-width: 310px; min-height: 50px; }

.cc-shell[data-active-page="overview"] .cc-coupon-store-pill::after {
  margin-left: auto;
  color: #4a5a70;
  content: "⌄";
  font-size: 14px;
}

.cc-shell[data-active-page="overview"] .cc-coupon-store-pill > span {
  color: #19375b;
  background: #edf4ff;
}

.cc-shell[data-active-page="overview"] .cc-device-pill {
  min-width: 176px;
  min-height: 48px;
  padding: 7px 12px;
  border-color: #e4eaf2;
  border-radius: 11px;
  background: #fff;
}

.cc-shell[data-active-page="overview"] .cc-device-pill > span { color: #28435f; background: #edf3fa; }
.cc-shell[data-active-page="overview"] .cc-device-pill.has-devices .cc-device-dot { background: #18b477; box-shadow: 0 0 0 5px rgba(24, 180, 119, .09); }

.cc-shell[data-active-page="overview"] .cc-coupon-admin-pill {
  min-width: 174px;
  min-height: 48px;
  padding: 6px 12px;
  border: 0;
  border-left: 1px solid #e2e8ef;
  border-radius: 0;
  background: transparent;
}

.cc-shell[data-active-page="overview"] .cc-coupon-admin-pill::after { margin-left: auto; color: #40516a; content: "⌄"; font-size: 13px; }
.cc-shell[data-active-page="overview"] .cc-coupon-admin-pill > span { width: 38px; height: 38px; flex-basis: 38px; color: #5a48d7; background: #eeebff; }

.cc-shell[data-active-page="overview"] .cc-overview-notification {
  display: grid;
  width: 42px;
  height: 42px;
  flex: 0 0 42px;
  place-items: center;
  padding: 0;
  border: 0;
  border-radius: 50%;
  color: #35465e;
  background: transparent;
  cursor: pointer;
}

.cc-shell[data-active-page="overview"] .cc-overview-notification:hover { color: #1e6fd9; background: #eef5ff; }
.cc-shell[data-active-page="overview"] .cc-overview-notification:focus-visible { outline: 3px solid rgba(52, 137, 255, .18); }
.cc-shell[data-active-page="overview"] .cc-overview-notification svg { width: 21px; height: 21px; }

.cc-shell[data-active-page="overview"] .cc-topbar-status-card small { color: #8994a7; font-size: 10px; }
.cc-shell[data-active-page="overview"] .cc-topbar-status-card strong { max-width: 230px; color: #172033; font-size: 12px; }

.cc-shell[data-active-page="overview"] .cc-content {
  gap: 14px;
  max-width: none;
  padding: 16px clamp(18px, 2vw, 30px) 30px;
  background:
    radial-gradient(circle at 92% 4%, rgba(82, 139, 255, .055), transparent 27%),
    var(--cc-console-bg);
}

.cc-shell[data-active-page="overview"] .cc-overview-event-bar {
  min-height: 80px;
  grid-template-columns: auto minmax(210px, 1fr) auto repeat(3, auto) auto;
  gap: 0;
  padding: 10px 14px 10px 20px;
  border: 1px solid var(--cc-console-line);
  border-radius: 15px;
  background: rgba(255, 255, 255, .98);
  box-shadow: 0 5px 18px rgba(43, 69, 98, .035);
}

.cc-shell[data-active-page="overview"] .cc-overview-event-label {
  align-self: stretch;
  display: flex;
  align-items: center;
  padding-right: 20px;
  border-right: 1px solid #e5eaf0;
  color: #738198;
  font-size: 12px;
  font-weight: 730;
}

.cc-shell[data-active-page="overview"] .cc-overview-tournament-select { min-width: 0; padding: 0 18px; }
.cc-shell[data-active-page="overview"] .cc-overview-tournament-select select {
  min-height: 46px;
  padding: 0 28px 0 0;
  overflow: hidden;
  border: 0;
  border-radius: 0;
  color: #172033;
  background-color: transparent;
  font-size: 17px;
  font-weight: 760;
  text-overflow: ellipsis;
}
.cc-shell[data-active-page="overview"] .cc-overview-tournament-select select:disabled { color: #172033; background-color: transparent; cursor: default; opacity: 1; }
.cc-shell[data-active-page="overview"] .cc-overview-tournament-select select:focus-visible { border: 0; box-shadow: none; outline: 3px solid rgba(52, 137, 255, .15); outline-offset: 4px; }

.cc-shell[data-active-page="overview"] .cc-overview-event-status {
  min-height: 34px;
  margin-right: 18px;
  padding: 0 13px;
  border-radius: 999px;
  color: #18875e;
  background: #e9f8f2;
  font-size: 11px;
}

.cc-shell[data-active-page="overview"] .cc-overview-event-metric {
  display: grid;
  min-width: 104px;
  min-height: 46px;
  grid-template-columns: auto auto;
  gap: 12px;
  align-content: center;
  align-items: baseline;
  padding: 0 20px;
  border: 0;
  border-left: 1px solid #e6ebf1;
  border-radius: 0;
  background: transparent;
}

.cc-shell[data-active-page="overview"] .cc-overview-event-metric::before { display: none; }
.cc-shell[data-active-page="overview"] .cc-overview-event-metric span { display: inline; color: #6f7d92; font-size: 11px; }
.cc-shell[data-active-page="overview"] .cc-overview-event-metric strong { grid-column: auto; color: #172033; font-size: 21px; font-weight: 780; }
.cc-shell[data-active-page="overview"] .cc-overview-event-metric.is-level { min-width: 154px; }
.cc-shell[data-active-page="overview"] .cc-overview-event-metric.is-level strong { color: #263b57; font-size: 17px; letter-spacing: .02em; }
.cc-shell[data-active-page="overview"] .cc-overview-event-metric.is-level { display: none; }
.cc-shell[data-active-page="overview"] .cc-overview-event-actions { padding-left: 14px; }
.cc-shell[data-active-page="overview"] .cc-overview-event-actions button { min-height: 44px; padding: 0 18px; border-color: #dfe6ef; border-radius: 10px; color: #26364d; font-size: 11px; }
.cc-shell[data-active-page="overview"] .cc-overview-event-actions button:first-child::after { margin-left: 8px; content: "›"; font-size: 18px; line-height: 1; }
.cc-shell[data-active-page="overview"] .cc-overview-event-actions button[data-overview-drawer="tv"] { display: none; }

.cc-shell[data-active-page="overview"] .cc-overview-main-grid {
  grid-template-columns: minmax(0, 1.84fr) minmax(360px, 1fr);
  align-items: stretch;
  gap: 16px;
}

.cc-shell[data-active-page="overview"] #overview.cc-overview-v3 { display: grid; grid-template-columns: minmax(0, 1fr); gap: 16px; }

.cc-shell[data-active-page="overview"] .cc-overview-main-grid > .cc-overview-timer-card {
  min-height: 556px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.cc-shell[data-active-page="overview"] .cc-overview-card-heading,
.cc-shell[data-active-page="overview"] .cc-overview-auxiliary { display: none; }

.cc-shell[data-active-page="overview"] .cc-timer-stage {
  position: relative;
  display: grid;
  min-height: 492px;
  grid-template-rows: auto minmax(250px, 1fr) auto auto;
  gap: 0;
  overflow: hidden;
  padding: 24px 28px 20px;
  border: 1px solid rgba(127, 175, 231, .17);
  border-radius: 17px;
  color: #f8fbff;
  background:
    radial-gradient(circle at 50% 43%, rgba(32, 92, 157, .22), transparent 41%),
    linear-gradient(145deg, #11283f 0%, #0d2134 60%, #10263c 100%);
  box-shadow: 0 14px 30px rgba(22, 48, 76, .11);
}

.cc-shell[data-active-page="overview"] .cc-timer-stage::before,
.cc-shell[data-active-page="overview"] .cc-timer-stage::after {
  position: absolute;
  width: 76px;
  height: 76px;
  border: 1px solid rgba(133, 179, 229, .08);
  border-radius: 50%;
  background: rgba(79, 128, 184, .025);
  content: "";
}
.cc-shell[data-active-page="overview"] .cc-timer-stage::before { top: 108px; left: 72px; }
.cc-shell[data-active-page="overview"] .cc-timer-stage::after { top: 108px; right: 72px; }

.cc-shell[data-active-page="overview"] .cc-timer-stage-head { position: relative; z-index: 2; grid-template-columns: auto auto 1fr; gap: 10px; }
.cc-shell[data-active-page="overview"] .cc-timer-stage-head > strong { font-size: 18px; font-weight: 760; }
.cc-shell[data-active-page="overview"] .cc-timer-stage-head > small { color: #b6c5d9; font-size: 11px; }
.cc-shell[data-active-page="overview"] #overview .cc-timer-stage .cc-live-status { min-height: 30px; padding: 0 12px; font-size: 11px; }

.cc-shell[data-active-page="overview"] .cc-timer-hero {
  position: relative;
  z-index: 1;
  display: grid;
  min-height: 274px;
  grid-template-columns: minmax(105px, 1fr) minmax(270px, 340px) minmax(105px, 1fr);
  align-items: center;
  gap: 12px;
}

.cc-shell[data-active-page="overview"] .cc-timer-side-stat { display: grid; justify-items: center; gap: 8px; text-align: center; }
.cc-shell[data-active-page="overview"] .cc-timer-side-stat span { color: #aebed2; font-size: 12px; }
.cc-shell[data-active-page="overview"] .cc-timer-side-stat strong { color: #fff; font-size: clamp(28px, 2.5vw, 38px); font-weight: 780; font-variant-numeric: tabular-nums; }

.cc-shell[data-active-page="overview"] #overview .cc-timer-stage .cc-clock-wrap {
  --cc-timer-progress: 0%;
  position: relative;
  isolation: isolate;
  display: grid;
  width: min(100%, 340px);
  height: 268px;
  place-content: center;
  justify-content: stretch;
  justify-items: center;
  align-self: center;
  margin: 0 auto;
  padding: 30px;
}

.cc-shell[data-active-page="overview"] #overview .cc-timer-stage .cc-clock-wrap::before {
  position: absolute;
  z-index: -1;
  inset: 0;
  border-radius: 50%;
  background: conic-gradient(from 215deg, #5a48ff 0%, #3b9fff var(--cc-timer-progress), rgba(80, 115, 155, .25) var(--cc-timer-progress), rgba(80, 115, 155, .25) 100%);
  content: "";
  -webkit-mask: radial-gradient(farthest-side, transparent calc(100% - 12px), #000 calc(100% - 11px));
  mask: radial-gradient(farthest-side, transparent calc(100% - 12px), #000 calc(100% - 11px));
  filter: drop-shadow(0 0 8px rgba(55, 145, 255, .32));
}

.cc-shell[data-active-page="overview"] #overview .cc-timer-stage .cc-clock-wrap::after {
  position: absolute;
  z-index: -2;
  inset: 20px;
  border: 1px solid rgba(100, 165, 235, .14);
  border-radius: 50%;
  background: radial-gradient(circle, rgba(36, 86, 139, .18), rgba(16, 42, 69, .03) 67%);
  content: "";
}

.cc-shell[data-active-page="overview"] .cc-clock-eyebrow { color: #9fb2ca; font-size: 12px; }
.cc-shell[data-active-page="overview"] #overview .cc-timer-stage .cc-clock {
  margin: 6px 0 3px;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: clamp(66px, 5.7vw, 86px);
  font-weight: 790;
  line-height: .98;
  letter-spacing: -.07em;
  text-shadow: 0 5px 22px rgba(0, 0, 0, .2);
}
.cc-shell[data-active-page="overview"] #overview .cc-timer-stage #cc-clock-caption { color: #c0cde0; font-size: 11px; }

.cc-shell[data-active-page="overview"] .cc-timer-metrics {
  position: relative;
  z-index: 2;
  display: grid;
  min-height: 72px;
  grid-template-columns: minmax(90px, .72fr) minmax(180px, 1.8fr) minmax(100px, .72fr);
  align-items: center;
  gap: 22px;
  padding: 12px 20px;
  border: 1px solid rgba(156, 190, 226, .11);
  border-radius: 12px;
  background: rgba(13, 34, 55, .46);
}
.cc-shell[data-active-page="overview"] .cc-timer-ante,
.cc-shell[data-active-page="overview"] .cc-timer-duration { display: grid; justify-items: center; gap: 4px; }
.cc-shell[data-active-page="overview"] .cc-timer-ante { border-right: 1px solid rgba(191, 211, 235, .13); }
.cc-shell[data-active-page="overview"] .cc-timer-duration { border-left: 1px solid rgba(191, 211, 235, .13); }
.cc-shell[data-active-page="overview"] .cc-timer-ante span,
.cc-shell[data-active-page="overview"] .cc-timer-duration span { color: #a6b6ca; font-size: 10px; }
.cc-shell[data-active-page="overview"] .cc-timer-ante strong,
.cc-shell[data-active-page="overview"] .cc-timer-duration strong { color: #fff; font-size: 18px; font-weight: 740; }
.cc-shell[data-active-page="overview"] .cc-timer-progress { min-width: 0; }
.cc-shell[data-active-page="overview"] .cc-timer-stage .cc-progress-label { margin-bottom: 7px; color: #aebdd0; font-size: 10px; }
.cc-shell[data-active-page="overview"] .cc-timer-stage .cc-progress { height: 7px; margin: 0; overflow: hidden; border-radius: 999px; background: #35516e; }
.cc-shell[data-active-page="overview"] .cc-timer-stage .cc-progress span { border-radius: inherit; background: linear-gradient(90deg, #f52645, #ff4860); }

.cc-shell[data-active-page="overview"] .cc-next-round-strip {
  position: relative;
  z-index: 2;
  min-height: 56px;
  margin-top: 12px;
  padding: 11px 14px;
  border: 1px solid rgba(150, 185, 222, .12);
  border-radius: 10px;
  background: rgba(36, 65, 96, .68);
}

.cc-shell[data-active-page="overview"] .cc-overview-timer-actions {
  grid-template-columns: minmax(148px, 1.3fr) repeat(5, minmax(76px, 1fr));
  gap: 9px;
  margin-top: 12px;
}
.cc-shell[data-active-page="overview"] .cc-overview-timer-actions > button,
.cc-shell[data-active-page="overview"] .cc-overview-more > summary { min-height: 52px; border-color: #dce5ef; border-radius: 10px; color: #2c3e56; background: #fff; font-size: 12px; }
.cc-shell[data-active-page="overview"] .cc-overview-timer-actions > button.is-primary { border-color: var(--cc-console-red); color: #fff; background: linear-gradient(135deg, #fb3450, #ee1d3d); box-shadow: 0 8px 18px rgba(242, 38, 69, .15); }
.cc-shell[data-active-page="overview"] .cc-overview-more[open] > div { z-index: 20; }

.cc-shell[data-active-page="overview"] .cc-overview-main-grid > .cc-overview-adjust-card {
  min-height: 556px;
  padding: 22px;
  border-color: var(--cc-console-line);
  border-radius: 17px;
  background: rgba(255, 255, 255, .98);
  box-shadow: 0 8px 24px rgba(38, 61, 88, .045);
}
.cc-shell[data-active-page="overview"] .cc-overview-adjust-heading { display: grid; min-height: 48px; grid-template-columns: minmax(150px, 1fr) max-content; align-items: start; margin-bottom: 4px; }
.cc-shell[data-active-page="overview"] .cc-overview-adjust-heading h2 { font-size: 20px; }
.cc-shell[data-active-page="overview"] .cc-overview-stack-totals { display: grid; grid-template-columns: repeat(2, minmax(76px, max-content)); gap: 16px; }
.cc-shell[data-active-page="overview"] .cc-overview-stack-totals.is-classic-total { grid-template-columns: minmax(76px, max-content); }
.cc-shell[data-active-page="overview"] .cc-overview-stack-totals > span { min-width: 0; padding: 0; overflow: visible; border: 0; color: #8994a5; background: transparent; font-size: 9px; white-space: nowrap; }
.cc-shell[data-active-page="overview"] .cc-overview-stack-totals > span::before { display: none; }
.cc-shell[data-active-page="overview"] .cc-overview-stack-totals strong { overflow: visible; max-width: none; font-size: clamp(14px, 1.08vw, 17px); font-variant-numeric: tabular-nums; line-height: 1.15; white-space: nowrap; }

.cc-shell[data-active-page="overview"] .cc-overview-adjust-section {
  padding: 18px 0;
  border: 0;
  border-bottom: 1px solid #e9edf2;
  border-radius: 0;
}
.cc-shell[data-active-page="overview"] .cc-overview-adjust-section + .cc-overview-adjust-section { margin-top: 0; }
.cc-shell[data-active-page="overview"] .cc-overview-section-heading h3 { font-size: 16px; }
.cc-shell[data-active-page="overview"] .cc-overview-people-now span { min-width: 70px; min-height: 36px; padding: 5px 9px; border-radius: 9px; }
.cc-shell[data-active-page="overview"] .cc-overview-people-now b { font-size: 18px; }

.cc-shell[data-active-page="overview"] .cc-overview-player-actions { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 9px; margin-top: 15px; }
.cc-shell[data-active-page="overview"] .cc-overview-player-actions button {
  display: grid;
  min-height: 92px;
  place-content: center;
  justify-items: center;
  gap: 8px;
  padding: 10px 6px;
  border-radius: 10px;
  white-space: normal;
}
.cc-shell[data-active-page="overview"] .cc-overview-player-actions button > span { display: grid; width: 31px; height: 31px; place-items: center; border-radius: 50%; font-size: 20px; line-height: 1; }
.cc-shell[data-active-page="overview"] .cc-overview-player-actions button.is-entry > span { color: #2773df; background: #dceaff; }
.cc-shell[data-active-page="overview"] .cc-overview-player-actions button.is-remove-entry > span { color: #ad7120; background: #f6ead4; }
.cc-shell[data-active-page="overview"] .cc-overview-player-actions button.is-eliminate > span { color: #dd2945; background: #ffdce3; }
.cc-shell[data-active-page="overview"] .cc-overview-player-actions button.is-restore > span { color: #16805a; background: #d8f1e8; }
.cc-shell[data-active-page="overview"] .cc-overview-player-actions button > strong { color: currentColor; font-size: 11px; }
.cc-shell[data-active-page="overview"] .cc-overview-player-actions button.is-entry { border-color: #d9e7ff; color: #2773df; background: #eff6ff; }
.cc-shell[data-active-page="overview"] .cc-overview-player-actions button.is-remove-entry { border-color: #f0e5cf; color: #b87924; background: #fff9ef; }
.cc-shell[data-active-page="overview"] .cc-overview-player-actions button.is-eliminate { border-color: #fae0e5; color: #e62d4a; background: #fff1f4; }
.cc-shell[data-active-page="overview"] .cc-overview-player-actions button.is-restore { border-color: #d9eee6; color: #16885f; background: #effaf6; }

.cc-shell[data-active-page="overview"] .cc-overview-buyin-row { grid-template-columns: 1fr; align-items: stretch; gap: 12px; margin-top: 13px; }
.cc-shell[data-active-page="overview"] .cc-buyin-segments { grid-template-columns: repeat(2, 1fr); padding: 3px; }
.cc-shell[data-active-page="overview"] .cc-buyin-segments button { min-height: 40px; font-size: 12px; }
.cc-shell[data-active-page="overview"] .cc-stack-adjustment input { min-height: 44px; font-size: 14px; }
.cc-shell[data-active-page="overview"] .cc-overview-stack-actions { gap: 9px; margin-top: 13px; }
.cc-shell[data-active-page="overview"] .cc-overview-stack-actions button { min-height: 44px; }
.cc-shell[data-active-page="overview"] .cc-overview-sync-note { margin-top: auto; padding-top: 15px; }

.cc-shell[data-active-page="overview"] .cc-overview-display-toolbar {
  display: grid;
  min-height: 176px;
  grid-template-columns: minmax(390px, 1.3fr) minmax(270px, .9fr);
  gap: 16px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.cc-shell[data-active-page="overview"] .cc-overview-tool-card {
  display: grid;
  min-width: 0;
  grid-template-rows: auto 1fr;
  gap: 12px;
  padding: 18px;
  border: 1px solid var(--cc-console-line);
  border-radius: 15px;
  background: rgba(255, 255, 255, .98);
  box-shadow: 0 6px 18px rgba(38, 61, 88, .035);
}
.cc-shell[data-active-page="overview"] .cc-overview-tool-card.is-template {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 100% 0%, rgba(69, 139, 246, .09), transparent 34%),
    linear-gradient(145deg, #fff 0%, #fbfdff 100%);
}
.cc-shell[data-active-page="overview"] .cc-overview-tool-card.is-template::before {
  position: absolute;
  top: 0;
  left: 20px;
  width: 58px;
  height: 3px;
  border-radius: 0 0 999px 999px;
  background: linear-gradient(90deg, #376ee9, #58a8ff);
  content: "";
}
.cc-shell[data-active-page="overview"] .cc-overview-tool-heading { display: flex; min-width: 0; align-items: flex-start; justify-content: space-between; gap: 12px; }
.cc-shell[data-active-page="overview"] .cc-overview-tool-heading h2 { margin: 0; color: #172033; font-size: 17px; font-weight: 720; }
.cc-shell[data-active-page="overview"] .cc-overview-tool-heading p { margin: 4px 0 0; color: #8994a5; font-size: 10px; }
.cc-shell[data-active-page="overview"] .cc-overview-tool-arrow { display: grid; width: 32px; min-width: 32px; height: 32px; min-height: 32px; place-items: center; padding: 0; border: 1px solid #e3eaf3; border-radius: 50%; color: #31506f; background: rgba(255, 255, 255, .82); font-size: 22px; box-shadow: 0 4px 12px rgba(50, 82, 118, .06); }
.cc-shell[data-active-page="overview"] .cc-overview-tool-arrow:hover { border-color: #bad4fa; color: #216bd0; background: #f1f7ff; transform: translateX(1px); }

.cc-shell[data-active-page="overview"] .cc-overview-template-summary {
  position: relative;
  min-height: 94px;
  grid-template-columns: 154px minmax(110px, 1fr) auto;
  gap: 14px;
  padding: 14px;
  overflow: hidden;
  border: 1px solid #e3ebf5;
  border-radius: 13px;
  background: linear-gradient(135deg, #f7faff 0%, #eef5ff 100%);
}
.cc-shell[data-active-page="overview"] .cc-overview-template-summary::after {
  position: absolute;
  right: -42px;
  bottom: -68px;
  width: 150px;
  height: 150px;
  border: 24px solid rgba(65, 133, 232, .045);
  border-radius: 50%;
  content: "";
  pointer-events: none;
}
.cc-shell[data-active-page="overview"] .cc-overview-theme-preview { z-index: 1; width: 154px; border-color: rgba(64, 94, 130, .18); border-radius: 9px; background: #0d1724; box-shadow: 0 9px 20px rgba(21, 48, 80, .16); }
.cc-shell[data-active-page="overview"] .cc-overview-theme-name { z-index: 1; gap: 7px; }
.cc-shell[data-active-page="overview"] .cc-overview-theme-name span { width: max-content; padding: 4px 8px; border-radius: 999px; color: #2c72cf; background: #e2efff; font-size: 9px; font-weight: 750; }
.cc-shell[data-active-page="overview"] .cc-overview-theme-name strong { color: #14233a; font-size: 14px; line-height: 1.4; }
.cc-shell[data-active-page="overview"] .cc-overview-template-change { z-index: 1; min-height: 42px; padding: 0 13px; border-color: #c9dcf7; color: #245fae; background: rgba(255, 255, 255, .86); font-size: 11px; box-shadow: 0 4px 12px rgba(45, 96, 163, .06); }
.cc-shell[data-active-page="overview"] .cc-overview-template-change:hover { border-color: #8eb8f0; color: #1559b6; background: #fff; }

.cc-shell[data-active-page="overview"] .cc-overview-template-actions { z-index: 1; display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 8px; }
.cc-shell[data-active-page="overview"] .cc-overview-template-edit {
  min-height: 42px;
  padding: 0 16px;
  border: 1px solid #d92448;
  border-radius: 9px;
  color: #fff;
  background: #e82449;
  box-shadow: 0 6px 16px rgba(225, 36, 70, .16);
  font: inherit;
  font-size: 13px;
  font-weight: 750;
  white-space: nowrap;
  cursor: pointer;
}
.cc-shell[data-active-page="overview"] .cc-overview-template-edit:hover { background: #cb183b; }
.cc-shell[data-active-page="overview"] .cc-overview-template-edit:focus-visible,
.cc-shell[data-active-page="overview"] .cc-overview-template-change:focus-visible { outline: 2px solid #2563eb; outline-offset: 2px; }
.cc-shell[data-active-page="overview"] .cc-overview-template-actions .cc-overview-template-change { min-height: 42px; font-size: 12px; }

body[data-cc-overview-drawer="display"] #cc-console-theme .cc-theme-content-heading strong { font-size: 18px; }
body[data-cc-overview-drawer="display"] #cc-console-theme .cc-settings-form label > span { font-size: 13px; }
body[data-cc-overview-drawer="display"] #cc-console-theme .cc-settings-form input,
body[data-cc-overview-drawer="display"] #cc-console-theme .cc-settings-form select { min-height: 44px; font-size: 15px; }
body[data-cc-overview-drawer="display"] #cc-console-theme .cc-theme-source-note p,
body[data-cc-overview-drawer="display"] #cc-console-theme .cc-theme-form-section-heading span,
body[data-cc-overview-drawer="display"] #cc-console-theme .cc-theme-content-heading span { font-size: 12px; }
body[data-cc-overview-drawer="display"] #cc-console-theme .cc-theme-main-form .cc-settings-actions { flex-wrap: wrap; }
body[data-cc-overview-drawer="display"] #cc-console-theme .cc-theme-assets-shortcut {
  min-height: 44px;
  padding: 0 14px;
  border: 1px solid #d7e1ef;
  border-radius: 8px;
  color: #295486;
  background: #f8fbff;
  font: inherit;
  font-size: 13px;
  font-weight: 700;
  cursor: pointer;
}
body[data-cc-overview-drawer="display"] #cc-console-theme .cc-theme-assets-shortcut:hover { background: #ebf3ff; }

/* 2026-10-02 theme drawer redesign: wider dialog, carded sections, voice pack picker, sticky footer. */
@media (min-width: 761px) {
  body[data-cc-overview-drawer="display"] .cc-shell[data-active-page="overview"] #cc-console-theme {
    width: min(1040px, 92vw);
  }
}

#cc-console-theme .cc-theme-field-profile {
  margin-bottom: 16px;
}

#cc-console-theme .cc-theme-section {
  display: grid;
  gap: 14px;
  padding: 18px;
  border: 1px solid #e2e7ec;
  border-radius: 14px;
  background: #fff;
}

#cc-console-theme .cc-theme-section-note,
#cc-console-theme .cc-theme-voice-hint {
  margin: 0;
  color: #7c8691;
  font-size: 12px;
  line-height: 1.6;
}

#cc-console-theme .cc-theme-field-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px 14px;
}

#cc-console-theme .cc-theme-field-grid .cc-theme-field-wide {
  grid-column: 1 / -1;
}

#cc-console-theme .cc-theme-assets-shortcut {
  justify-self: start;
}

#cc-console-theme .cc-theme-voice-row {
  display: flex;
  align-items: flex-end;
  gap: 10px;
}

#cc-console-theme .cc-theme-voice-row .cc-theme-voice-field {
  flex: 1 1 auto;
  min-width: 0;
}

#cc-console-theme .cc-theme-voice-preview {
  flex: 0 0 auto;
  min-width: 84px;
  height: 48px;
  padding: 0 18px;
  border: 1px solid #d7e1ef;
  border-radius: 10px;
  color: #295486;
  background: #f8fbff;
  font: inherit;
  font-size: 14px;
  font-weight: 700;
  cursor: pointer;
}

#cc-console-theme .cc-theme-voice-preview:hover:not(:disabled) { background: #ebf3ff; }

#cc-console-theme .cc-theme-voice-preview:disabled {
  border-color: #e3e8ee;
  color: #9aa5b1;
  background: #f3f5f7;
  cursor: not-allowed;
}

#cc-console-theme .cc-theme-advanced-group {
  display: grid;
  gap: 12px;
  padding: 16px;
  border: 1px solid #d9dee4;
  border-radius: 12px;
  background: #fbfcfd;
}

#cc-console-theme .cc-theme-group-heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
}

#cc-console-theme .cc-theme-group-heading > div {
  display: grid;
  gap: 4px;
}

#cc-console-theme .cc-theme-group-heading strong {
  color: #202832;
  font-size: 14px;
}

#cc-console-theme .cc-theme-group-heading span {
  color: #75808c;
  font-size: 12px;
  line-height: 1.55;
}

#cc-console-theme .cc-theme-form-section-heading,
#cc-console-theme .cc-theme-content-heading {
  flex-direction: column;
  align-items: flex-start;
  gap: 6px;
}

#cc-console-theme .cc-theme-form-section-heading > span,
#cc-console-theme .cc-theme-content-heading > span {
  text-align: left;
}

#cc-console-theme .cc-theme-group-heading > button {
  flex: 0 0 auto;
}

#cc-console-theme .cc-theme-section.is-highlighted {
  animation: cc-theme-section-highlight 900ms ease-out;
}

@keyframes cc-theme-section-highlight {
  0% { border-color: #2563eb; box-shadow: 0 0 0 3px rgba(37, 99, 235, .18); }
  100% { border-color: #e2e7ec; box-shadow: none; }
}

#cc-console-theme .cc-theme-drawer-footer {
  position: sticky;
  z-index: 4;
  bottom: -24px;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 12px;
  margin: 18px -24px -24px;
  padding: 14px 24px;
  border-top: 1px solid #e6eaf0;
  background: rgba(255, 255, 255, .98);
}

#cc-console-theme .cc-theme-drawer-footer .cc-primary-button {
  min-height: 46px;
  padding: 0 20px;
  font-size: 13px;
}

#cc-console-theme .cc-theme-market-link {
  min-height: 40px;
  margin-left: auto;
  padding: 0 14px;
  border: 1px solid #dfe4ea;
  border-radius: 10px;
  color: #5f6c7d;
  background: #fff;
  font: inherit;
  font-size: 13px;
  font-weight: 700;
  cursor: pointer;
}

#cc-console-theme .cc-theme-market-link:hover { background: #f4f6f9; }

@media (max-width: 760px) {
  #cc-console-theme .cc-theme-field-grid { grid-template-columns: 1fr; }
  #cc-console-theme .cc-theme-voice-row { align-items: stretch; flex-direction: column; }
  #cc-console-theme .cc-theme-voice-preview { width: 100%; }
  #cc-console-theme .cc-theme-drawer-footer {
    bottom: -14px;
    margin: 14px -14px -14px;
    padding: 12px 14px;
  }
}

@media (prefers-reduced-motion: reduce) {
  #cc-console-theme .cc-theme-section.is-highlighted { animation: none; }
}

.cc-shell[data-active-page="overview"] .cc-overview-tool-card.is-tv {
  position: relative;
  grid-template-rows: auto 1fr;
  overflow: hidden;
  background:
    radial-gradient(circle at 100% 0%, rgba(42, 157, 116, .07), transparent 34%),
    linear-gradient(145deg, #fff 0%, #fbfefd 100%);
}
.cc-shell[data-active-page="overview"] .cc-overview-tool-card.is-tv::before {
  position: absolute;
  top: 0;
  left: 20px;
  width: 58px;
  height: 3px;
  border-radius: 0 0 999px 999px;
  background: linear-gradient(90deg, #2b79df, #31b48b);
  content: "";
}
.cc-shell[data-active-page="overview"] .cc-overview-tool-card.is-tv .cc-overview-tool-heading { align-items: center; }
.cc-shell[data-active-page="overview"] .cc-overview-tool-card.is-tv #cc-overview-tv-status { min-height: 30px; padding: 0 10px; border: 1px solid #e8edf3; border-radius: 999px; color: #7d899a; background: rgba(244, 247, 250, .9); }
.cc-shell[data-active-page="overview"] .cc-overview-tool-card.is-tv #cc-overview-tv-status.is-online { color: #17835c; background: #edf9f4; }
.cc-shell[data-active-page="overview"] .cc-overview-tool-card.is-tv #cc-overview-tv-status strong { font-size: 10px; }
.cc-shell[data-active-page="overview"] .cc-overview-tv-body { display: grid; min-height: 0; grid-template-rows: 1fr auto; gap: 9px; }
.cc-shell[data-active-page="overview"] .cc-overview-tool-card.is-tv .cc-overview-toolbar-state.is-sync { min-height: 54px; padding: 10px 12px; border-color: #dceee7; border-radius: 11px; background: linear-gradient(135deg, #effaf6, #eaf7f2); }
.cc-shell[data-active-page="overview"] .cc-overview-tool-card.is-tv .cc-overview-toolbar-state.is-sync > i { display: grid; width: 34px; height: 34px; flex: 0 0 34px; place-items: center; border-radius: 50%; color: #14956a; background: #d8f1e7; font-size: 19px; }
.cc-shell[data-active-page="overview"] .cc-overview-tool-card.is-tv .cc-overview-toolbar-state.is-sync.is-waiting { border-color: #e1e8f1; color: #5f7187; background: linear-gradient(135deg, #f5f8fc, #eff4f9); }
.cc-shell[data-active-page="overview"] .cc-overview-tool-card.is-tv .cc-overview-toolbar-state.is-sync.is-waiting > i { color: #6e849d; background: #e2eaf3; }
.cc-shell[data-active-page="overview"] .cc-overview-tool-card.is-tv .cc-overview-toolbar-state.is-sync.is-waiting small { color: #8290a2; }
.cc-shell[data-active-page="overview"] .cc-overview-tool-card.is-tv .cc-overview-toolbar-state.is-sync.is-error { border-color: #f4d8dd; color: #be3147; background: #fff1f3; }
.cc-shell[data-active-page="overview"] .cc-overview-tool-card.is-tv .cc-overview-toolbar-state.is-sync.is-error > i { color: #c83249; background: #ffe0e5; }
.cc-shell[data-active-page="overview"] .cc-overview-tool-card.is-tv .cc-overview-toolbar-actions { grid-template-columns: repeat(2, 1fr); gap: 8px; }
.cc-shell[data-active-page="overview"] .cc-overview-tool-card.is-tv .cc-overview-toolbar-actions > * { min-height: 40px; padding-inline: 8px; }
.cc-shell[data-active-page="overview"] .cc-overview-tool-card.is-tv .cc-overview-toolbar-actions > button { border-color: #cddcf0; color: #2e5f98; background: #f7faff; }
.cc-shell[data-active-page="overview"] .cc-overview-tool-card.is-tv .cc-overview-toolbar-actions > button:hover { border-color: #94b8e8; color: #175fae; background: #eef5ff; }

.cc-shell[data-active-page="overview"] .cc-overview-quick-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 9px; }
.cc-shell[data-active-page="overview"] .cc-overview-quick-grid > * {
  display: grid;
  min-width: 0;
  min-height: 88px;
  place-content: center;
  justify-items: center;
  gap: 8px;
  padding: 9px 5px;
  border: 1px solid #e1e7ee;
  border-radius: 10px;
  color: #263a54;
  background: #fbfcfe;
  font: inherit;
  text-align: center;
  text-decoration: none;
  cursor: pointer;
}
.cc-shell[data-active-page="overview"] .cc-overview-quick-grid > *:hover { border-color: #b9d3f7; color: #2168c5; background: #f3f8ff; }
.cc-shell[data-active-page="overview"] .cc-overview-quick-grid span { display: grid; width: 30px; height: 30px; place-items: center; color: #29476a; font-size: 21px; }
.cc-shell[data-active-page="overview"] .cc-overview-quick-grid span svg { width: 22px; height: 22px; }
.cc-shell[data-active-page="overview"] .cc-overview-quick-grid strong { overflow: hidden; max-width: 100%; font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }

@media (max-width: 1500px) {
  .cc-shell[data-active-page="overview"] .cc-topbar-meta .cc-coupon-store-pill { width: 270px; min-width: 270px; }
  .cc-shell[data-active-page="overview"] .cc-overview-event-metric { min-width: 88px; padding-inline: 14px; }
  .cc-shell[data-active-page="overview"] .cc-overview-event-metric.is-level { min-width: 138px; }
  .cc-shell[data-active-page="overview"] .cc-overview-main-grid { grid-template-columns: minmax(0, 1.7fr) minmax(360px, 1fr); }
  .cc-shell[data-active-page="overview"] .cc-timer-hero { grid-template-columns: minmax(90px, 1fr) minmax(250px, 310px) minmax(90px, 1fr); }
  .cc-shell[data-active-page="overview"] #overview .cc-timer-stage .cc-clock-wrap { height: 250px; }
  .cc-shell[data-active-page="overview"] .cc-overview-display-toolbar { grid-template-columns: minmax(360px, 1.22fr) minmax(260px, .92fr); }
  .cc-shell[data-active-page="overview"] .cc-overview-template-summary { grid-template-columns: 136px minmax(105px, 1fr) auto; gap: 11px; }
  .cc-shell[data-active-page="overview"] .cc-overview-theme-preview { width: 136px; }
}

@media (max-width: 1320px) {
  .cc-shell[data-active-page="overview"] .cc-coupon-admin-pill { display: none; }
  .cc-shell[data-active-page="overview"] .cc-overview-event-bar { grid-template-columns: auto minmax(180px, 1fr) auto repeat(3, auto) auto; }
  .cc-shell[data-active-page="overview"] .cc-overview-event-metric { min-width: 80px; padding-inline: 11px; }
  .cc-shell[data-active-page="overview"] .cc-overview-event-metric.is-level { display: none; }
  .cc-shell[data-active-page="overview"] .cc-overview-main-grid { grid-template-columns: minmax(0, 1.55fr) minmax(350px, 1fr); }
  .cc-shell[data-active-page="overview"] .cc-timer-stage { padding-inline: 20px; }
  .cc-shell[data-active-page="overview"] .cc-timer-hero { grid-template-columns: minmax(78px, 1fr) minmax(230px, 278px) minmax(78px, 1fr); }
  .cc-shell[data-active-page="overview"] #overview .cc-timer-stage .cc-clock-wrap { height: 230px; }
  .cc-shell[data-active-page="overview"] #overview .cc-timer-stage .cc-clock { font-size: clamp(60px, 5.3vw, 74px); }
  .cc-shell[data-active-page="overview"] .cc-overview-player-actions { grid-template-columns: repeat(2, 1fr); }
  .cc-shell[data-active-page="overview"] .cc-overview-player-actions button { min-height: 66px; grid-template-columns: 28px auto; gap: 6px; }
  .cc-shell[data-active-page="overview"] .cc-overview-player-actions button > span { width: 27px; height: 27px; font-size: 17px; }
  .cc-shell[data-active-page="overview"] .cc-overview-display-toolbar { grid-template-columns: minmax(0, 1.12fr) minmax(250px, .88fr); }
  .cc-shell[data-active-page="overview"] .cc-overview-template-summary { grid-template-columns: 112px minmax(90px, 1fr); }
  .cc-shell[data-active-page="overview"] .cc-overview-theme-preview { width: 112px; }
  .cc-shell[data-active-page="overview"] .cc-overview-template-actions { grid-column: 2; justify-content: flex-start; }
  .cc-shell[data-active-page="overview"] .cc-overview-template-edit,
  .cc-shell[data-active-page="overview"] .cc-overview-template-actions .cc-overview-template-change { min-height: 36px; }
  .cc-shell[data-active-page="overview"] .cc-overview-quick-grid { grid-template-columns: repeat(2, 1fr); }
  .cc-shell[data-active-page="overview"] .cc-overview-quick-grid > * { min-height: 55px; grid-template-columns: 24px 1fr; justify-items: start; }
}

@media (max-width: 1180px) {
  .cc-shell[data-active-page="overview"] .cc-device-pill { display: none; }
  .cc-shell[data-active-page="overview"] .cc-overview-event-bar { grid-template-columns: auto minmax(170px, 1fr) auto repeat(2, auto) auto; }
  .cc-shell[data-active-page="overview"] .cc-overview-event-metric.is-level { display: none; }
  .cc-shell[data-active-page="overview"] .cc-overview-main-grid { grid-template-columns: 1fr; }
  .cc-shell[data-active-page="overview"] .cc-overview-display-toolbar { grid-template-columns: 1fr 1fr; }
  .cc-shell[data-active-page="overview"] .cc-overview-tool-card.is-quick { grid-column: 1 / -1; }
  .cc-shell[data-active-page="overview"] .cc-overview-quick-grid { grid-template-columns: repeat(4, 1fr); }
  .cc-shell[data-active-page="overview"] .cc-overview-quick-grid > * { min-height: 68px; grid-template-columns: none; justify-items: center; }
}

@media (max-width: 760px) {
  .cc-shell[data-active-page="overview"] { --cc-sidebar: 0px; }
  .cc-shell[data-active-page="overview"] .cc-topbar { min-height: 64px; padding-inline: 14px; }
  .cc-shell[data-active-page="overview"] .cc-coupon-store-pill { min-width: 0; flex: 1; }
  .cc-shell[data-active-page="overview"] .cc-overview-notification { display: none; }
  .cc-shell[data-active-page="overview"] .cc-content { padding: 12px 10px 24px; }
  .cc-shell[data-active-page="overview"] .cc-overview-event-bar { grid-template-columns: 1fr 1fr; gap: 8px; padding: 14px; }
  .cc-shell[data-active-page="overview"] .cc-overview-event-label { grid-column: 1 / -1; min-height: 28px; border: 0; }
  .cc-shell[data-active-page="overview"] .cc-overview-tournament-select { grid-column: 1 / -1; padding: 0; }
  .cc-shell[data-active-page="overview"] .cc-overview-event-status { margin: 0; }
  .cc-shell[data-active-page="overview"] .cc-overview-event-metric { min-width: 0; padding: 8px 0; border: 0; }
  .cc-shell[data-active-page="overview"] .cc-overview-event-metric.is-level { display: none; }
  .cc-shell[data-active-page="overview"] .cc-overview-event-actions { grid-column: 1 / -1; padding: 0; }
  .cc-shell[data-active-page="overview"] .cc-overview-event-actions button { width: 100%; }
  .cc-shell[data-active-page="overview"] .cc-timer-stage { min-height: 460px; padding: 18px 12px 14px; }
  .cc-shell[data-active-page="overview"] .cc-timer-hero { grid-template-columns: 72px minmax(190px, 1fr) 72px; gap: 3px; }
  .cc-shell[data-active-page="overview"] #overview .cc-timer-stage .cc-clock-wrap { width: 220px; height: 220px; padding: 22px; }
  .cc-shell[data-active-page="overview"] #overview .cc-timer-stage .cc-clock { font-size: 56px; }
  .cc-shell[data-active-page="overview"] .cc-timer-side-stat strong { font-size: 23px; }
  .cc-shell[data-active-page="overview"] .cc-timer-metrics { grid-template-columns: 64px 1fr 74px; gap: 8px; padding-inline: 8px; }
  .cc-shell[data-active-page="overview"] .cc-overview-timer-actions { grid-template-columns: repeat(2, 1fr); }
  .cc-shell[data-active-page="overview"] .cc-overview-main-grid > .cc-overview-adjust-card { padding: 16px; }
  .cc-shell[data-active-page="overview"] .cc-overview-adjust-heading { grid-template-columns: 1fr; gap: 12px; }
  .cc-shell[data-active-page="overview"] .cc-overview-stack-totals { display: grid; width: 100%; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
  .cc-shell[data-active-page="overview"] .cc-overview-stack-totals > span { gap: 5px; padding: 10px 12px; overflow: hidden; border: 1px solid #e1e8f0; border-radius: 10px; background: #f7faff; }
  .cc-shell[data-active-page="overview"] .cc-overview-stack-totals strong { font-size: 16px; }
  .cc-shell[data-active-page="overview"] .cc-overview-display-toolbar { grid-template-columns: 1fr; }
  .cc-shell[data-active-page="overview"] .cc-overview-tool-card.is-quick { grid-column: auto; }
  .cc-shell[data-active-page="overview"] .cc-overview-template-summary { grid-template-columns: 112px 1fr; }
  .cc-shell[data-active-page="overview"] .cc-overview-template-actions { grid-column: 1 / -1; justify-content: stretch; }
  .cc-shell[data-active-page="overview"] .cc-overview-template-actions > button { flex: 1 1 130px; }
  .cc-shell[data-active-page="overview"] .cc-overview-quick-grid { grid-template-columns: repeat(2, 1fr); }
}

/* Linked TVs: a calm management dialog, not a compressed overview toolbar. */
body[data-cc-overview-drawer="tv"] .cc-shell[data-active-page="overview"] #cc-tv-routing-dock {
  box-sizing: border-box;
  width: min(1060px, calc(100vw - 48px));
  max-height: calc(100vh - 48px);
  padding: 26px 30px 30px;
  background: #fff;
}
body[data-cc-overview-drawer="tv"] .cc-shell[data-active-page="overview"] .cc-tv-routing-heading {
  display: flex;
  align-items: flex-start;
  gap: 24px;
  margin: -26px -30px 0;
  padding: 26px 30px 20px;
  border-bottom: 1px solid #e8edf2;
}
body[data-cc-overview-drawer="tv"] .cc-shell[data-active-page="overview"] .cc-tv-routing-heading h3 {
  margin: 0;
  font-size: 24px;
  line-height: 1.25;
}
body[data-cc-overview-drawer="tv"] .cc-shell[data-active-page="overview"] .cc-tv-routing-heading span {
  margin-top: 6px;
  font-size: 13px;
  line-height: 1.5;
}
body[data-cc-overview-drawer="tv"] .cc-shell[data-active-page="overview"] .cc-tv-routing-heading-actions { gap: 12px; }
body[data-cc-overview-drawer="tv"] .cc-shell[data-active-page="overview"] .cc-tv-routing-heading-actions strong {
  padding: 8px 12px;
  font-size: 12px;
}
body[data-cc-overview-drawer="tv"] .cc-shell[data-active-page="overview"] .cc-tv-routing-heading-actions .cc-overview-drawer-close {
  display: grid;
  place-items: center;
  flex: 0 0 38px;
  width: 38px;
  height: 38px;
  min-height: 38px;
  padding: 0;
  font-size: 24px;
}
body[data-cc-overview-drawer="tv"] .cc-shell[data-active-page="overview"] .cc-tv-quick-bind-form {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  margin-top: 20px;
  padding: 15px 17px;
  border: 1px solid #e5ebf1;
  border-radius: 14px;
  background: #f8fafc;
}
body[data-cc-overview-drawer="tv"] .cc-shell[data-active-page="overview"] .cc-tv-quick-bind-form label span {
  display: block;
  font-size: 12px;
}
body[data-cc-overview-drawer="tv"] .cc-shell[data-active-page="overview"] .cc-tv-quick-bind-form :is(input, button) {
  box-sizing: border-box;
  height: 42px;
  min-height: 42px;
  font-size: 14px;
}
body[data-cc-overview-drawer="tv"] .cc-shell[data-active-page="overview"] .cc-tv-quick-bind-form button:disabled {
  opacity: 1;
  border-color: #dbe2e9;
  background: #e9eef3;
  color: #7c8998;
}
body[data-cc-overview-drawer="tv"] .cc-shell[data-active-page="overview"] #cc-tv-quick-quota { margin: 12px 0 22px; }
body[data-cc-overview-drawer="tv"] .cc-shell[data-active-page="overview"] #cc-tv-quick-quota .cc-tv-quota-summary {
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 16px;
  padding: 12px 16px;
  background: #fff;
}
body[data-cc-overview-drawer="tv"] #cc-tv-quick-quota .cc-tv-quota-summary > div:first-child { display: flex; align-items: center; flex-wrap: wrap; gap: 5px 12px; }
body[data-cc-overview-drawer="tv"] #cc-tv-quick-quota .cc-tv-quota-summary strong { font-size: 13px; }
body[data-cc-overview-drawer="tv"] #cc-tv-quick-quota .cc-tv-quota-summary small { flex-basis: 100%; }
body[data-cc-overview-drawer="tv"] #cc-tv-quick-quota .cc-tv-quota-meter { display: none; }
body[data-cc-overview-drawer="tv"] #cc-tv-quick-quota .cc-tv-quota-summary > button {
  min-height: 34px;
  padding: 0 10px;
  font-size: 12px;
  white-space: normal;
  text-align: center;
}
.cc-tv-routing-list-heading { display: none; }
body[data-cc-overview-drawer="tv"] .cc-tv-routing-list-heading {
  display: flex;
  align-items: baseline;
  gap: 12px;
  margin-bottom: 12px;
}
body[data-cc-overview-drawer="tv"] .cc-tv-routing-list-heading strong { color: #202733; font-size: 16px; }
body[data-cc-overview-drawer="tv"] .cc-tv-routing-list-heading span { color: #7a8491; font-size: 12px; }
body[data-cc-overview-drawer="tv"] .cc-shell[data-active-page="overview"] .cc-tv-routing-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  overflow: visible;
}
body[data-cc-overview-drawer="tv"] .cc-shell[data-active-page="overview"] .cc-tv-routing-item {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  align-items: stretch;
  gap: 16px;
  min-width: 0;
  padding: 18px;
  border: 1px solid #dfe6ee;
  border-radius: 14px;
  box-shadow: 0 3px 12px rgba(31, 49, 73, .04);
}
body[data-cc-overview-drawer="tv"] .cc-shell[data-active-page="overview"] .cc-tv-routing-device { gap: 11px; }
body[data-cc-overview-drawer="tv"] .cc-shell[data-active-page="overview"] .cc-tv-routing-device > span {
  flex: 0 0 38px;
  width: 38px;
  height: 38px;
  font-size: 12px;
}
body[data-cc-overview-drawer="tv"] .cc-shell[data-active-page="overview"] .cc-tv-routing-device strong { font-size: 15px; }
body[data-cc-overview-drawer="tv"] .cc-shell[data-active-page="overview"] .cc-tv-routing-device small { font-size: 12px; }
body[data-cc-overview-drawer="tv"] .cc-tv-routing-fields {
  display: grid;
  grid-template-columns: minmax(110px, .55fr) minmax(0, 1.45fr);
  gap: 12px;
}
body[data-cc-overview-drawer="tv"] .cc-tv-routing-fields .is-tournament { grid-column: 1 / -1; }
body[data-cc-overview-drawer="tv"] .cc-shell[data-active-page="overview"] .cc-tv-routing-item label span {
  display: block;
  font-size: 12px;
}
body[data-cc-overview-drawer="tv"] .cc-shell[data-active-page="overview"] .cc-tv-routing-item :is(input, select) {
  box-sizing: border-box;
  width: 100%;
  height: 40px;
  min-height: 40px;
  padding: 0 11px;
  border: 1px solid #d1dbe5;
  border-radius: 9px;
  background: #fff;
  color: #202733;
  font: inherit;
  font-size: 13px;
}
body[data-cc-overview-drawer="tv"] .cc-shell[data-active-page="overview"] .cc-tv-routing-actions {
  justify-content: flex-end;
  gap: 10px;
  padding-top: 13px;
  border-top: 1px solid #edf0f4;
}
body[data-cc-overview-drawer="tv"] .cc-shell[data-active-page="overview"] .cc-tv-routing-actions :is(a, button) {
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: auto;
  min-height: 38px;
  padding: 0 14px;
  font-size: 13px;
  white-space: nowrap;
}
body[data-cc-overview-drawer="tv"] .cc-shell[data-active-page="overview"] .cc-tv-routing-actions button:not(:disabled) {
  border-color: #e52b48;
  background: #e52b48;
  color: #fff;
}
.cc-device-fields { grid-template-columns: repeat(2, minmax(0, 1fr)); }
body[data-cc-overview-drawer="tv"] .cc-tv-routing-item :is(input, select):focus-visible,
body[data-cc-overview-drawer="tv"] .cc-tv-routing-item :is(button, a):focus-visible { outline: 2px solid #e52b48; outline-offset: 2px; }

@media (max-width: 900px) {
  body[data-cc-overview-drawer="tv"] .cc-shell[data-active-page="overview"] .cc-tv-routing-list { grid-template-columns: 1fr; }
}
@media (max-width: 600px) {
  body[data-cc-overview-drawer="tv"] .cc-shell[data-active-page="overview"] #cc-tv-routing-dock {
    width: calc(100vw - 20px);
    max-height: calc(100vh - 20px);
    padding: 18px;
  }
  body[data-cc-overview-drawer="tv"] .cc-shell[data-active-page="overview"] .cc-tv-routing-heading {
    flex-direction: row;
    margin: -18px -18px 0;
    padding: 18px;
  }
  body[data-cc-overview-drawer="tv"] .cc-shell[data-active-page="overview"] .cc-tv-routing-heading h3 { font-size: 20px; }
  body[data-cc-overview-drawer="tv"] .cc-shell[data-active-page="overview"] .cc-tv-routing-heading-actions {
    width: auto;
    margin-left: auto;
  }
  body[data-cc-overview-drawer="tv"] .cc-shell[data-active-page="overview"] .cc-tv-routing-heading-actions strong { display: none; }
  body[data-cc-overview-drawer="tv"] .cc-shell[data-active-page="overview"] .cc-tv-quick-bind-form { grid-template-columns: 1fr; }
  body[data-cc-overview-drawer="tv"] .cc-shell[data-active-page="overview"] #cc-tv-quick-quota .cc-tv-quota-summary { grid-template-columns: 1fr; }
  .cc-device-fields { grid-template-columns: 1fr; }
  body[data-cc-overview-drawer="tv"] .cc-tv-routing-list-heading { flex-direction: column; gap: 3px; }
  body[data-cc-overview-drawer="tv"] .cc-tv-routing-fields { grid-template-columns: 1fr; }
  body[data-cc-overview-drawer="tv"] .cc-tv-routing-fields .is-tournament { grid-column: auto; }
}

/* Focused timer mode has a status summary, not a per-event selector. */
.cc-shell[data-active-page="overview"] .cc-overview-event-bar {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  min-height: 68px;
}
.cc-shell[data-active-page="overview"] .cc-overview-event-label {
  min-width: 0;
  min-height: 0;
  margin-right: auto;
  padding: 0 16px 0 0;
  border: 0;
  color: #26364d;
  font-size: 15px;
}
.cc-shell[data-active-page="overview"] .cc-overview-event-status { margin: 0; }
.cc-shell[data-active-page="overview"] .cc-overview-event-metric { min-height: 38px; padding: 0 14px; }
.cc-shell[data-active-page="overview"] .cc-overview-event-actions { padding: 0; }
.cc-shell[data-active-page="overview"] .cc-overview-event-actions[hidden] { display: none !important; }
.cc-shell[data-active-page="overview"] .cc-overview-event-actions button { min-height: 38px; }
body[data-cc-overview-drawer="tv"] .cc-tv-legacy-notice {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin: 0 0 18px;
  padding: 12px 14px;
  border: 1px solid #f3d9ab;
  border-radius: 11px;
  background: #fffbf2;
  color: #805512;
  font-size: 12px;
  line-height: 1.5;
}
body[data-cc-overview-drawer="tv"] .cc-tv-legacy-notice[hidden] { display: none; }
body[data-cc-overview-drawer="tv"] .cc-tv-legacy-notice button {
  flex: 0 0 auto;
  min-height: 34px;
  padding: 0 11px;
  border: 1px solid #dfbd7e;
  border-radius: 8px;
  background: #fff;
  color: #805512;
  font: inherit;
  font-weight: 750;
  cursor: pointer;
}
body[data-cc-overview-drawer="tv"] .cc-tv-routing-old-assignment {
  margin: -6px 0 0;
  color: #9c6620;
  font-size: 12px;
}
@media (max-width: 760px) {
  .cc-shell[data-active-page="overview"] .cc-overview-event-label { flex: 1 0 100%; }
  .cc-shell[data-active-page="overview"] .cc-overview-event-metric { min-width: 0; padding: 0 8px; }
  .cc-shell[data-active-page="overview"] .cc-overview-event-actions:not([hidden]) { width: 100%; }
  body[data-cc-overview-drawer="tv"] .cc-tv-legacy-notice { align-items: flex-start; flex-direction: column; }
}

/* Blind structures live directly below the overview's display and TV tools. */
.cc-shell[data-active-page="overview"] .cc-overview-blind-structure {
  display: block;
  margin-top: 18px;
  padding: 24px;
  scroll-margin-top: 86px;
  border: 1px solid #dce5ef;
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 6px 18px rgba(38, 61, 88, .035);
}
.cc-overview-blind-structure:focus { outline: none; }
.cc-overview-blind-structure:focus-visible { outline: 3px solid rgba(48, 123, 220, .25); outline-offset: 3px; }
.cc-overview-blind-heading { display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.cc-overview-blind-heading > div { min-width: 0; }
.cc-overview-blind-heading span { color: #cf334e; font-size: 11px; font-weight: 800; letter-spacing: .08em; }
.cc-overview-blind-heading h2 { margin: 5px 0 4px; color: #1d2b3e; font-size: 22px; line-height: 1.3; }
.cc-overview-blind-heading p { margin: 0; color: #708096; font-size: 12px; line-height: 1.5; }
.cc-overview-blind-heading > button {
  flex: 0 0 auto;
  min-height: 40px;
  padding: 0 16px;
  border: 1px solid #cbd9e8;
  border-radius: 10px;
  color: #294f7e;
  background: #f7fbff;
  font: inherit;
  font-size: 12px;
  font-weight: 750;
  cursor: pointer;
}
.cc-overview-blind-heading > button:hover { border-color: #aac5e8; background: #edf6ff; }
.cc-overview-blind-heading > button:disabled { border-color: #dfe5eb; color: #94a0ae; background: #f6f8fa; cursor: default; }
.cc-overview-blind-heading > button[hidden] { display: none !important; }
.cc-overview-blind-current { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(260px, .8fr); align-items: start; gap: 12px; margin-top: 20px; }
.cc-overview-blind-current.is-expanded { grid-template-columns: 1fr; }
.cc-overview-blind-current .cc-blind-current-template { margin: 0; }
.cc-overview-blind-preview { min-width: 0; border: 1px solid #dce5ef; border-radius: 12px; background: #f8fbfe; }
.cc-overview-blind-preview summary { display: flex; min-height: 72px; align-items: center; justify-content: space-between; gap: 10px; padding: 0 18px; color: #294f7e; font-size: 13px; font-weight: 750; cursor: pointer; list-style: none; }
.cc-overview-blind-preview summary::-webkit-details-marker { display: none; }
.cc-overview-blind-preview summary::after { content: "⌄"; font-size: 20px; line-height: 1; }
.cc-overview-blind-preview[open] summary::after { transform: rotate(180deg); }
.cc-overview-blind-levels { max-height: 320px; overflow: auto; border-top: 1px solid #e5edf5; }
.cc-overview-blind-levels table { width: 100%; border-collapse: collapse; color: #26364a; font-size: 12px; font-variant-numeric: tabular-nums; }
.cc-overview-blind-levels th,
.cc-overview-blind-levels td { padding: 10px 12px; border-bottom: 1px solid #e8edf3; text-align: left; white-space: nowrap; }
.cc-overview-blind-levels th { position: sticky; top: 0; color: #708096; background: #f8fbfe; font-size: 11px; }
.cc-overview-blind-levels tr.is-current td { color: #17694d; background: #edf9f3; font-weight: 750; }
.cc-overview-blind-levels p { margin: 0; padding: 14px; color: #708096; font-size: 12px; }
.cc-overview-blind-list-heading { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; margin-top: 22px; }
.cc-overview-blind-list-heading strong { color: #27364a; font-size: 15px; }
.cc-overview-blind-list-heading span { color: #7b8795; font-size: 12px; }
.cc-overview-blind-structure .cc-blind-slot-list { margin-top: 12px; }
.cc-overview-blind-structure .cc-blind-slot { min-height: 166px; padding: 16px; background: #fbfcfe; }
.cc-overview-blind-structure .cc-blind-slot small,
.cc-overview-blind-structure .cc-blind-slot span { font-size: 11px; }
.cc-overview-blind-structure .cc-blind-slot strong { font-size: 16px; }
.cc-overview-blind-structure .cc-blind-slot :is(button) { min-height: 40px; font-size: 12px; }
.cc-overview-blind-safety { margin: 15px 0 0; color: #8b6a34; font-size: 12px; line-height: 1.5; }
@media (max-width: 1050px) {
  .cc-overview-blind-current { grid-template-columns: 1fr; }
  .cc-overview-blind-structure .cc-blind-slot-list { grid-template-columns: 1fr; }
}
@media (max-width: 760px) {
  .cc-shell[data-active-page="overview"] .cc-overview-blind-structure { padding: 18px; }
  .cc-overview-blind-heading { align-items: stretch; flex-direction: column; gap: 12px; }
  .cc-overview-blind-heading > button { width: 100%; }
  .cc-overview-blind-list-heading { align-items: flex-start; flex-direction: column; gap: 3px; }
  .cc-overview-blind-preview summary { min-height: 54px; }
}

/* Secondary pages need a clear title, not the console's repeated status cards. */
.cc-shell[data-active-page]:not([data-active-page="overview"]) .cc-topbar {
  min-height: 76px;
  padding-block: 12px;
  flex-wrap: nowrap;
}
.cc-shell[data-active-page]:not([data-active-page="overview"]) .cc-topbar-meta {
  display: none;
}
.cc-shell[data-active-page]:not([data-active-page="overview"]) .cc-event-identity h1 {
  max-width: 100%;
}

/* Audit is a reading page: keep each record legible across desktop and mobile. */
.cc-shell[data-active-page="audit"] .cc-event-identity {
  width: min(100%, 1160px);
  margin-inline: auto;
}
.cc-shell[data-active-page="audit"] .cc-bottom-grid {
  width: min(100%, 1160px);
  margin-inline: auto;
}
.cc-shell[data-active-page="audit"] .cc-bottom-grid > .cc-panel > .cc-panel-heading {
  min-height: 78px;
  padding: 18px 24px;
}
.cc-shell[data-active-page="audit"] .cc-audit-list {
  max-height: min(66vh, 680px);
  gap: 0;
  padding: 0 24px;
  scrollbar-color: #cbd5df transparent;
}
.cc-shell[data-active-page="audit"] .cc-audit-item {
  grid-template-columns: 8px minmax(0, 1fr);
  align-items: center;
  gap: 16px;
  min-height: 72px;
  padding: 13px 0;
  border-bottom-color: #e8edf2;
}
.cc-shell[data-active-page="audit"] .cc-audit-item:last-child { border-bottom: 0; }
.cc-shell[data-active-page="audit"] .cc-audit-marker { margin-top: 0; }
.cc-shell[data-active-page="audit"] .cc-audit-item > div {
  display: grid;
  grid-template-columns: minmax(180px, .8fr) minmax(260px, 1.4fr) minmax(200px, 1fr);
  align-items: center;
  gap: 18px;
}
.cc-shell[data-active-page="audit"] .cc-audit-item > div > div { gap: 12px; }
.cc-shell[data-active-page="audit"] .cc-audit-item strong {
  color: #253143;
  font-size: 14px;
  line-height: 1.4;
  white-space: normal;
}
.cc-shell[data-active-page="audit"] .cc-audit-item small {
  padding: 4px 8px;
  font-size: 11px;
  font-weight: 700;
}
.cc-shell[data-active-page="audit"] .cc-audit-item p {
  margin: 0;
  color: #526073;
  font-size: 13px;
  line-height: 1.5;
  white-space: normal;
  overflow-wrap: anywhere;
}
.cc-shell[data-active-page="audit"] .cc-audit-item > div > span {
  color: #758397;
  font-size: 12px;
  line-height: 1.45;
  text-align: right;
}
.cc-shell[data-active-page="audit"] .cc-match-list {
  max-height: 520px;
  gap: 0;
  padding: 0 24px;
}
.cc-shell[data-active-page="audit"] .cc-match-item {
  padding: 16px 0;
  border: 0;
  border-bottom: 1px solid #e8edf2;
  border-radius: 0;
}
.cc-shell[data-active-page="audit"] .cc-match-item:last-child { border-bottom: 0; }
.cc-shell[data-active-page="audit"] .cc-match-item strong { font-size: 14px; }
.cc-shell[data-active-page="audit"] .cc-match-item :is(span, p) { font-size: 12px; line-height: 1.5; }
.cc-shell[data-active-page="audit"] .cc-list-state .cc-state-message {
  margin: 18px 24px;
  padding: 20px;
  color: #657489;
  font-size: 13px;
  line-height: 1.6;
}
@media (max-width: 1180px) {
  .cc-shell[data-active-page="audit"] .cc-audit-item > div {
    grid-template-columns: minmax(0, 1fr) auto;
    column-gap: 16px;
    row-gap: 4px;
  }
  .cc-shell[data-active-page="audit"] .cc-audit-item > div > div { grid-column: 1; }
  .cc-shell[data-active-page="audit"] .cc-audit-item p { grid-column: 1; }
  .cc-shell[data-active-page="audit"] .cc-audit-item > div > span {
    grid-column: 2;
    grid-row: 1 / 3;
  }
}
@media (max-width: 900px) {
  .cc-shell[data-active-page="audit"] .cc-bottom-grid { display: grid; }
}
@media (max-width: 760px) {
  .cc-shell[data-active-page="audit"] .cc-bottom-grid > .cc-panel > .cc-panel-heading { padding: 16px 18px; }
  .cc-shell[data-active-page="audit"] .cc-audit-list,
  .cc-shell[data-active-page="audit"] .cc-match-list { padding-inline: 18px; }
  .cc-shell[data-active-page="audit"] .cc-audit-item { gap: 12px; padding-block: 15px; }
  .cc-shell[data-active-page="audit"] .cc-audit-item > div { grid-template-columns: minmax(0, 1fr); }
  .cc-shell[data-active-page="audit"] .cc-audit-item > div > span {
    grid-column: 1;
    grid-row: auto;
    text-align: left;
  }
  .cc-shell[data-active-page="audit"] .cc-list-state .cc-state-message { margin: 16px 18px; }
}

/* Customer-facing TV APK download. */
.cc-shell[data-active-page="devices"] .cc-devices-page { display: grid; min-width: 0; gap: 18px; }
.cc-devices-page-heading { display: flex; align-items: end; justify-content: space-between; gap: 20px; }
.cc-devices-page-heading span { color: #e32745; font-size: 12px; font-weight: 800; letter-spacing: .08em; }
.cc-devices-page-heading h2 { margin: 5px 0 6px; color: #1d2b3e; font-size: 26px; line-height: 1.3; }
.cc-devices-page-heading p { margin: 0; color: #728094; font-size: 14px; line-height: 1.5; }
.cc-devices-page-heading button { min-height: 42px; padding: 0 16px; border: 1px solid #d6e0eb; border-radius: 10px; color: #31547d; background: #fff; font: inherit; font-size: 13px; font-weight: 700; cursor: pointer; }
.cc-devices-overview { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.cc-devices-overview > div { display: flex; align-items: baseline; gap: 8px; min-width: 0; padding: 17px 20px; border: 1px solid #e1e8f0; border-radius: 14px; background: #fff; }
.cc-devices-overview span { margin-right: auto; color: #68778b; font-size: 13px; }
.cc-devices-overview strong { color: #25364d; font-size: 27px; font-variant-numeric: tabular-nums; }
.cc-devices-overview small { color: #8491a2; font-size: 12px; }
.cc-devices-overview > div:nth-child(2) strong { color: #16865d; }
.cc-shell[data-active-page="devices"] #devices,
.cc-shell[data-active-page="devices"] .cc-bound-tv-section,
.cc-shell[data-active-page="devices"] .cc-device-advanced { min-width: 0; margin: 0; padding: 0; overflow: hidden; border: 1px solid #e0e7ef; border-radius: 16px; background: #fff; }
.cc-shell[data-active-page="devices"] #devices > .cc-panel-heading { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 20px 24px; border-bottom: 1px solid #e9edf2; }
.cc-shell[data-active-page="devices"] #devices > .cc-panel-heading h3 { margin: 3px 0 0; color: #253143; font-size: 19px; }
.cc-shell[data-active-page="devices"] #cc-device-panel-meta { color: #8290a2; font-size: 12px; }
.cc-devices-help { margin: 20px 24px 0; color: #65758a; font-size: 14px; line-height: 1.5; }
.cc-shell[data-active-page="devices"] #cc-tv-bind-form { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 12px; margin: 15px 24px 20px; }
.cc-shell[data-active-page="devices"] #cc-tv-bind-form input { height: 48px; min-width: 0; padding: 0 14px; border: 1px solid #cfd9e5; border-radius: 10px; background: #fff; font-size: 16px; }
.cc-shell[data-active-page="devices"] #cc-tv-bind-form button { min-height: 48px; padding: 0 22px; border-radius: 10px; background: #e32745; color: #fff; font-size: 14px; }
.cc-shell[data-active-page="devices"] #cc-tv-bind-form button:disabled { background: #e8edf2; color: #7c8998; }
.cc-shell[data-active-page="devices"] #cc-tv-quota { margin: 0 24px 22px; }
.cc-shell[data-active-page="devices"] #cc-tv-quota .cc-tv-quota-summary { gap: 16px; padding: 14px 16px; background: #f8fafc; }
.cc-shell[data-active-page="devices"] .cc-bound-tv-section { padding: 22px 24px 26px; }
.cc-shell[data-active-page="devices"] .cc-bound-tv-section > .cc-subheading { align-items: baseline; margin-bottom: 18px; }
.cc-shell[data-active-page="devices"] .cc-bound-tv-section > .cc-subheading strong { font-size: 19px; }
.cc-shell[data-active-page="devices"] .cc-bound-tv-section > .cc-subheading span { font-size: 12px; }
.cc-shell[data-active-page="devices"] .cc-device-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.cc-shell[data-active-page="devices"] .cc-device-item { display: grid; grid-template-columns: 42px minmax(0, 1fr); gap: 14px; padding: 20px; border: 1px solid #dfe7f0; border-radius: 14px; background: #fff; }
.cc-shell[data-active-page="devices"] .cc-device-icon { width: 42px; height: 42px; border-radius: 11px; font-size: 13px; }
.cc-shell[data-active-page="devices"] .cc-device-heading { align-items: flex-start; margin: 0; }
.cc-shell[data-active-page="devices"] .cc-device-heading > div { display: grid; gap: 4px; }
.cc-shell[data-active-page="devices"] .cc-device-heading strong { color: #1d2b3e; font-size: 17px; }
.cc-shell[data-active-page="devices"] .cc-device-heading small { color: #738196; font-size: 13px; }
.cc-shell[data-active-page="devices"] .cc-device-heading > span { padding: 6px 10px; font-size: 12px; white-space: nowrap; }
.cc-shell[data-active-page="devices"] .cc-device-last-seen { margin: 11px 0 17px; color: #738196; font-size: 12px; line-height: 1.45; }
.cc-shell[data-active-page="devices"] .cc-device-fields { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 13px; }
.cc-shell[data-active-page="devices"] .cc-device-fields label:first-child { grid-column: 1 / -1; }
.cc-shell[data-active-page="devices"] .cc-device-fields label > span,
.cc-shell[data-active-page="devices"] .cc-device-extra label > span { color: #627188; font-size: 12px; }
.cc-shell[data-active-page="devices"] .cc-device-item :is(input, select) { box-sizing: border-box; width: 100%; height: 44px; min-width: 0; padding: 0 12px; border: 1px solid #d3deea; border-radius: 9px; color: #253143; background: #fff; font-size: 14px; }
.cc-shell[data-active-page="devices"] .cc-device-item :is(input, select):disabled { color: #758294; background: #f3f6f9; }
.cc-shell[data-active-page="devices"] .cc-device-extra { margin-top: 16px; border-top: 1px solid #e9edf2; }
.cc-shell[data-active-page="devices"] .cc-device-extra summary { padding: 13px 0; color: #506481; font-size: 13px; font-weight: 700; cursor: pointer; }
.cc-shell[data-active-page="devices"] .cc-device-extra > div { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; padding: 0 0 16px; }
.cc-shell[data-active-page="devices"] .cc-device-extra label { display: grid; gap: 7px; }
.cc-shell[data-active-page="devices"] .cc-device-actions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 16px; }
.cc-shell[data-active-page="devices"] .cc-device-actions :is(button, a) { min-height: 42px; padding: 0 12px; border-radius: 9px; font-size: 13px; }
.cc-shell[data-active-page="devices"] .cc-device-actions a { color: #315f94; background: #f2f7fd; }
.cc-shell[data-active-page="devices"] .cc-device-actions button[data-device-action="save"] { color: #fff; background: #e32745; border-color: #e32745; }
.cc-shell[data-active-page="devices"] .cc-device-advanced summary { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 20px 24px; color: #253143; font-size: 16px; font-weight: 750; cursor: pointer; }
.cc-shell[data-active-page="devices"] .cc-device-advanced summary span { color: #8a96a6; font-size: 12px; font-weight: 500; }
.cc-shell[data-active-page="devices"] .cc-device-advanced-content { padding: 0 24px 24px; }
.cc-shell[data-active-page="devices"] .cc-device-advanced-content > p { margin: 0 0 16px; color: #68778b; font-size: 13px; line-height: 1.5; }
.cc-shell[data-active-page="devices"] .cc-device-advanced .cc-display-access { margin-bottom: 16px; }
@media (max-width: 900px) {
  .cc-shell[data-active-page="devices"] .cc-device-list { grid-template-columns: 1fr; }
}
@media (max-width: 600px) {
  .cc-devices-page-heading { align-items: flex-start; flex-direction: column; }
  .cc-devices-overview { gap: 7px; }
  .cc-devices-overview > div { display: grid; gap: 2px; padding: 12px; }
  .cc-devices-overview strong { font-size: 23px; }
  .cc-shell[data-active-page="devices"] #devices > .cc-panel-heading,
  .cc-shell[data-active-page="devices"] .cc-bound-tv-section { padding: 18px; }
  .cc-devices-help { margin: 18px 18px 0; }
  .cc-shell[data-active-page="devices"] #cc-tv-bind-form { grid-template-columns: 1fr; margin: 14px 18px 18px; }
  .cc-shell[data-active-page="devices"] #cc-tv-quota { margin: 0 18px 18px; }
  .cc-shell[data-active-page="devices"] .cc-bound-tv-section > .cc-subheading { align-items: flex-start; flex-direction: column; }
  .cc-shell[data-active-page="devices"] .cc-device-item { grid-template-columns: 1fr; padding: 16px; }
  .cc-shell[data-active-page="devices"] .cc-device-fields,
  .cc-shell[data-active-page="devices"] .cc-device-extra > div { grid-template-columns: 1fr; }
  .cc-shell[data-active-page="devices"] .cc-device-fields label:first-child { grid-column: auto; }
  .cc-shell[data-active-page="devices"] .cc-device-advanced summary { padding: 18px; }
  .cc-shell[data-active-page="devices"] .cc-device-advanced-content { padding: 0 18px 18px; }
}
.cc-shell .cc-nav { min-height: 0; overflow-y: auto; }
.cc-shell[data-active-page="apk"] .cc-apk-page { max-width: 920px; width: 100%; margin-inline: auto; padding: 0; overflow: hidden; }
.cc-shell[data-active-page="apk"] .cc-apk-page > .cc-panel-heading { padding: 22px 26px; border-bottom: 1px solid #e7ebf0; }
.cc-apk-body { display: flex; align-items: center; gap: 20px; padding: 30px 26px; }
.cc-apk-icon { display: grid; flex: 0 0 72px; width: 72px; height: 72px; place-items: center; border-radius: 18px; color: #2563eb; background: #eaf2ff; font-size: 17px; font-weight: 850; }
.cc-apk-details { min-width: 0; flex: 1; }
.cc-apk-details strong { color: #1c2b3e; font-size: 19px; }
.cc-apk-details p { margin: 7px 0; color: #627188; font-size: 13px; line-height: 1.6; }
.cc-apk-details > span { color: #8995a7; font-size: 12px; }
.cc-apk-body > a { display: inline-flex; min-height: 44px; align-items: center; justify-content: center; padding: 0 18px; border-radius: 10px; color: #fff; background: #e32745; font-size: 13px; font-weight: 750; text-decoration: none; white-space: nowrap; }
.cc-apk-body > a:hover { background: #c91d39; }
.cc-apk-body > a[hidden] { display: none; }
.cc-apk-note { margin: 0; padding: 16px 26px 20px; border-top: 1px solid #edf0f3; color: #778496; font-size: 12px; line-height: 1.5; }
.cc-shell[data-active-page="apk"] .cc-apk-guide { max-width: 920px; width: 100%; margin-inline: auto; padding: 0; overflow: hidden; }
.cc-shell[data-active-page="apk"] .cc-apk-guide > .cc-panel-heading { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 22px 26px; border-bottom: 1px solid #e7ebf0; }
.cc-apk-guide-status { flex: none; padding: 7px 11px; border-radius: 999px; color: #7c6670; background: #faf0f3; font-size: 12px; font-weight: 700; }
.cc-apk-guide-body { padding: 22px 26px 26px; }
.cc-apk-guide-body > p { margin: 0 0 18px; color: #627188; font-size: 14px; line-height: 1.65; }
.cc-apk-guide-topics { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin: 0; padding: 0; list-style: none; }
.cc-apk-guide-topics li { display: flex; min-width: 0; flex-direction: column; align-items: flex-start; gap: 12px; padding: 18px; border: 1px solid #e5eaf0; border-radius: 14px; background: #f8fafc; }
.cc-apk-guide-topics li > span { color: #e32745; font-size: 12px; font-weight: 800; letter-spacing: .06em; }
.cc-apk-guide-topics strong { color: #223047; font-size: 15px; line-height: 1.4; }
.cc-apk-guide-topics em { margin-top: auto; color: #8b97a8; font-size: 12px; font-style: normal; }
@media (max-width: 760px) {
  .cc-apk-body { align-items: flex-start; flex-wrap: wrap; padding: 22px 18px; }
  .cc-apk-icon { flex-basis: 54px; width: 54px; height: 54px; border-radius: 14px; font-size: 13px; }
  .cc-apk-details { flex-basis: calc(100% - 74px); }
  .cc-apk-body > a { width: 100%; }
  .cc-apk-note { padding-inline: 18px; }
  .cc-shell[data-active-page="apk"] .cc-apk-guide > .cc-panel-heading { padding: 20px 18px; }
  .cc-apk-guide-body { padding: 20px 18px; }
  .cc-apk-guide-topics { grid-template-columns: 1fr; }
  .cc-apk-guide-topics li { flex-direction: row; align-items: center; gap: 12px; padding: 14px 16px; }
  .cc-apk-guide-topics em { margin: 0 0 0 auto; white-space: nowrap; }
}

/* Blind-structure editor: legible controls at desktop size, labeled cards on narrow screens. */
.cc-template-modal {
  width: min(1280px, calc(100vw - 48px));
  max-height: calc(100dvh - 48px);
  overflow-y: auto;
}
.cc-template-modal h2 { font-size: clamp(25px, 2vw, 31px); }
.cc-template-modal .cc-template-workflow-hint {
  margin: 16px 0 22px;
  padding: 14px 16px;
  color: #526073;
  font-size: 15px;
  line-height: 1.55;
}
.cc-template-modal > form { gap: 0; }
.cc-template-modal > form > label { gap: 9px; }
.cc-template-modal > form > label > span {
  color: #526073;
  font-size: 15px;
  font-weight: 700;
}
.cc-template-modal input,
.cc-template-modal select {
  height: 52px;
  padding-inline: 14px;
  border-radius: 10px;
  font-size: 16px;
}
.cc-template-modal :is(input, select):focus {
  border-color: #e32745;
  box-shadow: 0 0 0 3px rgba(227, 39, 69, .12);
}
.cc-template-editor-head,
.cc-template-level-row {
  grid-template-columns: 138px minmax(130px, 1.15fr) repeat(4, minmax(105px, 1fr)) 50px;
  gap: 10px;
}
.cc-template-editor-head {
  margin-top: 24px;
  padding: 13px 0;
  border-radius: 9px;
  color: #526073;
  font-size: 14px;
}
.cc-template-editor-head span { padding-inline: 13px; }
.cc-template-editor-list {
  max-height: min(48vh, 470px);
  gap: 10px;
  padding: 3px 2px 5px;
}
.cc-template-level-row { align-items: stretch; }
.cc-template-modal .cc-template-level-field { display: contents; }
.cc-template-modal .cc-template-level-field > span { display: none; }
.cc-template-level-row :is(input, select) { width: 100%; }
.cc-template-level-row button {
  min-width: 50px;
  min-height: 52px;
  font-size: 22px;
  cursor: pointer;
}
.cc-template-remove-label { display: none; }
.cc-template-editor-actions { gap: 10px; margin-top: 20px; }
.cc-template-editor-actions button {
  min-height: 44px;
  padding-inline: 16px;
  font-size: 14px;
  font-weight: 700;
}
.cc-template-modal .cc-confirm-actions { margin-top: 20px; }
.cc-template-modal .cc-confirm-actions button {
  min-height: 52px;
  font-size: 15px;
  font-weight: 700;
}
@media (max-width: 1050px) {
  .cc-template-editor-head { display: none; }
  .cc-template-editor-list { max-height: min(50vh, 540px); margin-top: 18px; }
  .cc-template-level-row {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    padding: 16px;
    border: 1px solid #dce3ea;
    border-radius: 12px;
    background: #fafbfc;
  }
  .cc-template-modal .cc-template-level-field { display: grid; gap: 7px; }
  .cc-template-modal .cc-template-level-field > span {
    display: block;
    color: #526073;
    font-size: 14px;
    font-weight: 700;
  }
  .cc-template-level-row button {
    grid-column: 1 / -1;
    justify-self: end;
    min-height: 44px;
    width: auto;
    padding-inline: 16px;
    font-size: 14px;
    font-weight: 700;
  }
  .cc-template-remove-icon { display: none; }
  .cc-template-remove-label { display: inline; }
}
@media (max-width: 640px) {
  .cc-modal-backdrop:has(.cc-template-modal) { padding: 10px; }
  .cc-template-modal {
    width: 100%;
    max-height: calc(100dvh - 20px);
    padding: 22px 18px;
  }
  .cc-template-modal .cc-template-workflow-hint { font-size: 14px; }
  .cc-template-editor-list { max-height: 50vh; }
  .cc-template-level-row { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .cc-template-modal .cc-confirm-actions { grid-template-columns: 1fr; }
}

/* Direct participant entry beside the live totals; quick +/- controls remain below. */
.cc-shell[data-active-page="overview"] .cc-overview-section-heading { flex-wrap: wrap; }
.cc-shell[data-active-page="overview"] .cc-overview-people-now {
  display: grid;
  width: min(100%, 308px);
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  margin: 0;
}
.cc-shell[data-active-page="overview"] .cc-overview-people-now label {
  display: flex;
  min-width: 0;
  min-height: 52px;
  align-items: center;
  justify-content: space-between;
  gap: 7px;
  padding: 5px 7px 5px 10px;
  border: 1px solid #dbe5f1;
  border-radius: 10px;
  background: #f6f9fd;
}
.cc-shell[data-active-page="overview"] .cc-overview-people-now label.is-remaining {
  border-color: #d5ebe1;
  background: #f2faf6;
}
.cc-shell[data-active-page="overview"] .cc-overview-people-now label > span {
  display: inline;
  min-width: 0;
  min-height: 0;
  padding: 0;
  border: 0;
  color: #61718a;
  background: none;
  font-size: 13px;
  font-weight: 700;
  white-space: nowrap;
}
.cc-shell[data-active-page="overview"] .cc-overview-people-now input {
  box-sizing: border-box;
  width: 76px;
  height: 39px;
  min-width: 0;
  padding: 0 5px;
  border: 1px solid #cad7e6;
  border-radius: 8px;
  outline: none;
  color: #1b2b43;
  background: #fff;
  font: inherit;
  font-size: 18px;
  font-weight: 800;
  font-variant-numeric: tabular-nums;
  text-align: center;
  appearance: textfield;
}
.cc-shell[data-active-page="overview"] .cc-overview-people-now input::-webkit-inner-spin-button,
.cc-shell[data-active-page="overview"] .cc-overview-people-now input::-webkit-outer-spin-button { margin: 0; -webkit-appearance: none; }
.cc-shell[data-active-page="overview"] .cc-overview-people-now .is-remaining input { color: #24785a; }
.cc-shell[data-active-page="overview"] .cc-overview-people-now input:focus {
  border-color: #e32745;
  box-shadow: 0 0 0 3px rgba(227, 39, 69, .12);
}
.cc-shell[data-active-page="overview"] .cc-people-save-actions {
  display: none;
  grid-column: 1 / -1;
  justify-content: flex-end;
  gap: 8px;
}
.cc-shell[data-active-page="overview"] .cc-overview-people-now[data-dirty="true"] .cc-people-save-actions { display: flex; }
.cc-shell[data-active-page="overview"] .cc-people-save-actions button {
  min-height: 38px;
  padding: 0 12px;
  border: 1px solid #dce3eb;
  border-radius: 8px;
  color: #38465a;
  background: #fff;
  font: inherit;
  font-size: 12px;
  font-weight: 750;
  cursor: pointer;
}
.cc-shell[data-active-page="overview"] #cc-people-save {
  border-color: #e32745;
  color: #fff;
  background: #e32745;
}
.cc-shell[data-active-page="overview"] .cc-people-save-actions button:disabled { opacity: .45; cursor: not-allowed; }
@media (max-width: 1450px) {
  .cc-shell[data-active-page="overview"] .cc-overview-people-now { width: 100%; }
}

/* Focused pages share the timer console's shell and card language. Keep the
   display previews themselves untouched: they represent real TV templates. */
.cc-shell[data-active-page]:is([data-active-page="store-display"], [data-active-page="market"], [data-active-page="interaction"], [data-active-page="devices"], [data-active-page="brand"], [data-active-page="audit"], [data-active-page="apk"]) {
  --cc-sidebar: 224px;
  --cc-console-bg: #f4f7fb;
  --cc-console-text: #172033;
  --cc-console-muted: #758198;
  --cc-console-line: #e3e9f1;
  --cc-console-red: #f52645;
}
.cc-shell[data-active-page]:is([data-active-page="store-display"], [data-active-page="market"], [data-active-page="interaction"], [data-active-page="devices"], [data-active-page="brand"], [data-active-page="audit"], [data-active-page="apk"]) .cc-sidebar {
  border-right-color: rgba(152, 174, 200, .13);
  background: linear-gradient(180deg, #0b1928 0%, #0c1c2d 100%);
  box-shadow: 12px 0 34px rgba(20, 39, 61, .08);
}
.cc-shell[data-active-page]:is([data-active-page="store-display"], [data-active-page="market"], [data-active-page="interaction"], [data-active-page="devices"], [data-active-page="brand"], [data-active-page="audit"], [data-active-page="apk"]) .cc-topbar {
  min-height: 72px;
  padding: 10px clamp(20px, 2vw, 32px);
  border-bottom-color: var(--cc-console-line);
  background: rgba(255, 255, 255, .94);
  box-shadow: 0 1px 0 rgba(33, 57, 84, .02);
}
.cc-shell[data-active-page]:is([data-active-page="store-display"], [data-active-page="market"], [data-active-page="interaction"], [data-active-page="devices"], [data-active-page="brand"], [data-active-page="audit"], [data-active-page="apk"]) .cc-content {
  gap: 14px;
  padding: 16px clamp(18px, 2vw, 30px) 30px;
  background: radial-gradient(circle at 92% 4%, rgba(82, 139, 255, .055), transparent 27%), var(--cc-console-bg);
}
.cc-shell[data-active-page]:is([data-active-page="store-display"], [data-active-page="market"], [data-active-page="interaction"], [data-active-page="devices"], [data-active-page="brand"], [data-active-page="audit"], [data-active-page="apk"]) .cc-content > .cc-panel,
.cc-shell[data-active-page]:is([data-active-page="store-display"], [data-active-page="market"], [data-active-page="interaction"], [data-active-page="devices"], [data-active-page="brand"], [data-active-page="audit"], [data-active-page="apk"]) .cc-content .cc-panel {
  border-color: var(--cc-console-line);
  border-radius: 16px;
  background-color: #fff;
  box-shadow: 0 8px 24px rgba(38, 61, 88, .045);
}
.cc-shell:is([data-active-page="interaction"], [data-active-page="brand"]) .cc-content > .cc-panel {
  padding: 24px;
}
.cc-shell:is([data-active-page="interaction"], [data-active-page="brand"]) .cc-panel-intro {
  max-width: 760px;
  color: #627188;
  font-size: 14px;
  line-height: 1.7;
}
.cc-shell[data-active-page="brand"] .cc-confirm-actions { justify-content: flex-start; gap: 10px; }
.cc-shell[data-active-page="brand"] .cc-confirm-actions button { min-height: 44px; flex: 0 1 220px; border: 1px solid #dce5ef; color: #2c3e56; background: #fff; font-size: 14px; font-weight: 700; }
.cc-shell[data-active-page="brand"] .cc-confirm-actions button:first-child { border-color: #f52645; color: #fff; background: #f52645; }
.cc-shell[data-active-page="devices"] .cc-devices-page-heading {
  min-height: 96px;
  padding: 20px 24px;
  border: 1px solid var(--cc-console-line);
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 8px 24px rgba(38, 61, 88, .045);
}
.cc-shell[data-active-page="apk"] :is(.cc-apk-page, .cc-apk-guide) {
  max-width: 1160px;
}

/* The catalog formerly used 8-10px metadata inside an oversized gray panel.
   Match the console's readable type scale and separate white cards instead. */
.cc-shell[data-active-page="market"] .cc-market-panel {
  display: grid;
  gap: 14px;
  overflow: visible;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
.cc-shell[data-active-page="market"] .cc-market-hero {
  min-height: 106px;
  padding: 20px 24px;
  border-color: var(--cc-console-line);
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 8px 24px rgba(38, 61, 88, .045);
}
.cc-shell[data-active-page="market"] .cc-market-hero::after { display: none; }
.cc-shell[data-active-page="market"] .cc-market-hero-copy h2 { color: #172033; font-size: 21px; }
.cc-shell[data-active-page="market"] .cc-market-hero-copy > p:last-child {
  margin-top: 6px;
  color: #758198;
  font-size: 13px;
  line-height: 1.5;
}
.cc-shell[data-active-page="market"] .cc-market-stats { grid-template-columns: repeat(3, minmax(100px, 122px)); gap: 10px; }
.cc-shell[data-active-page="market"] .cc-market-stats div { padding: 11px 13px; border-color: #e3e9f1; border-radius: 11px; background: #f7f9fc; }
.cc-shell[data-active-page="market"] .cc-market-stats strong { color: #172033; font-size: 22px; }
.cc-shell[data-active-page="market"] .cc-market-stats span { color: #758198; font-size: 12px; }
.cc-shell[data-active-page="market"] .cc-market-toolbar { padding: 13px 16px; border-color: var(--cc-console-line); border-radius: 16px; box-shadow: 0 6px 18px rgba(38, 61, 88, .035); }
.cc-shell[data-active-page="market"] .cc-market-category-tabs { padding: 4px; background: #f2f5f9; }
.cc-shell[data-active-page="market"] .cc-market-category-tabs button { min-height: 42px; font-size: 14px; }
.cc-shell[data-active-page="market"] .cc-market-category-tabs button.is-active { border-color: #fff; color: #e32745; background: #fff; box-shadow: 0 2px 9px rgba(41, 64, 91, .07); }
.cc-shell[data-active-page="market"] .cc-market-search { min-height: 44px; border-color: #dce5ef; background: #fff; }
.cc-shell[data-active-page="market"] .cc-market-search input { font-size: 14px; }
.cc-shell[data-active-page="market"] .cc-market-grid { gap: 16px; padding: 0; }
.cc-shell[data-active-page="market"] .cc-market-card { border-color: var(--cc-console-line); border-radius: 16px; box-shadow: 0 8px 24px rgba(38, 61, 88, .045); }
.cc-shell[data-active-page="market"] .cc-market-card-body { padding: 20px 22px 22px; }
.cc-shell[data-active-page="market"] .cc-market-card-title span { font-size: 12px; }
.cc-shell[data-active-page="market"] .cc-market-card-title h3 { font-size: 20px; }
.cc-shell[data-active-page="market"] .cc-market-card-title em { font-size: 12px; }
.cc-shell[data-active-page="market"] .cc-market-card-body > p { color: #68778b; font-size: 13px; line-height: 1.6; }
.cc-shell[data-active-page="market"] .cc-market-tags span,
.cc-shell[data-active-page="market"] .cc-market-card dt,
.cc-shell[data-active-page="market"] .cc-market-purchase-note { font-size: 12px; }
.cc-shell[data-active-page="market"] .cc-market-purchase-note strong,
.cc-shell[data-active-page="market"] .cc-market-card dd { font-size: 13px; }
.cc-shell[data-active-page="market"] .cc-market-card-actions button { min-height: 44px; font-size: 14px; }
.cc-shell[data-active-page="market"] .cc-market-boundary { margin: 0; color: #758198; font-size: 12px; line-height: 1.6; }

@media (max-width: 900px) {
  .cc-shell[data-active-page="market"] .cc-market-hero { grid-template-columns: 1fr; }
  .cc-shell[data-active-page="market"] .cc-market-stats { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .cc-shell[data-active-page="market"] .cc-market-grid { grid-template-columns: 1fr; }
}
@media (max-width: 760px) {
  .cc-shell[data-active-page="devices"] .cc-devices-page-heading { padding: 18px; }
  .cc-shell[data-active-page="market"] .cc-market-hero { padding: 18px; }
  .cc-shell[data-active-page="market"] .cc-market-toolbar { align-items: stretch; flex-direction: column; }
  .cc-shell[data-active-page="market"] .cc-market-search { width: 100%; }
  .cc-shell[data-active-page="market"] .cc-market-category-tabs { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .cc-shell[data-active-page="market"] .cc-market-category-tabs button { min-width: 0; padding-inline: 5px; }
}

/* Use the timer console's navigation and context bar on every workspace page.
   Page headings stay in the first content card instead of replacing the bar. */
.cc-shell[data-active-page]:not([data-active-page="overview"]) {
  --cc-sidebar: 224px;
  --cc-console-bg: #f4f7fb;
  --cc-console-line: #e3e9f1;
}
.cc-shell[data-active-page]:not([data-active-page="overview"]) .cc-sidebar {
  overflow-y: auto;
  border-right-color: rgba(152, 174, 200, .13);
  background: linear-gradient(180deg, #0b1928 0%, #0c1c2d 100%);
  box-shadow: 12px 0 34px rgba(20, 39, 61, .08);
}
.cc-shell[data-active-page]:not([data-active-page="overview"]) .cc-brand { min-height: 82px; padding-block: 15px; }
.cc-shell[data-active-page]:not([data-active-page="overview"]) .cc-brand-mark { border: 0; border-radius: 12px; box-shadow: 0 9px 24px rgba(245, 38, 69, .28); }
.cc-shell[data-active-page]:not([data-active-page="overview"]) .cc-nav { gap: 5px; padding-top: 20px; }
.cc-shell[data-active-page]:not([data-active-page="overview"]) .cc-nav a { min-height: 46px; color: #d5dfeb; }
.cc-shell[data-active-page]:not([data-active-page="overview"]) .cc-nav a .cc-nav-label { color: inherit; font-family: inherit; font-size: 13px; letter-spacing: 0; }
.cc-shell[data-active-page]:not([data-active-page="overview"]) .cc-topbar {
  min-height: 72px;
  padding: 10px clamp(20px, 2vw, 32px);
  border-bottom-color: var(--cc-console-line);
  background: rgba(255, 255, 255, .94);
  box-shadow: 0 1px 0 rgba(33, 57, 84, .02);
}
.cc-shell[data-active-page]:not([data-active-page="overview"]) :is(.cc-event-identity, .cc-subscription-pill, .cc-mode-switch, .cc-tv-quick-access, .cc-desktop-meta, .cc-product-home-link) { display: none !important; }
.cc-shell[data-active-page]:not([data-active-page="overview"]) .cc-topbar-meta #cc-subscription-pill { display: none !important; }
.cc-shell[data-active-page]:not([data-active-page="overview"]) .cc-topbar .cc-topbar-meta {
  display: flex;
  width: 100%;
  max-width: none;
  align-items: center;
  justify-content: flex-end;
  gap: 12px;
  flex-wrap: nowrap;
}
.cc-shell[data-active-page]:not([data-active-page="overview"]) .cc-topbar-meta .cc-topbar-status-card { min-height: 50px; height: 50px; padding-block: 7px; }
.cc-shell[data-active-page]:not([data-active-page="overview"]) .cc-topbar-meta .cc-coupon-store-pill {
  display: flex;
  width: 310px;
  min-width: 310px;
  min-height: 50px;
  margin-right: auto;
  padding: 7px 13px;
  border-color: #e4eaf2;
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 4px 18px rgba(41, 66, 95, .035);
}
.cc-shell[data-active-page]:not([data-active-page="overview"]) .cc-coupon-store-pill::after { margin-left: auto; color: #4a5a70; content: "⌄"; font-size: 14px; }
.cc-shell[data-active-page]:not([data-active-page="overview"]) .cc-coupon-store-pill > span { color: #19375b; background: #edf4ff; }
.cc-shell[data-active-page]:not([data-active-page="overview"]) .cc-device-pill {
  min-width: 176px;
  min-height: 48px;
  padding: 7px 12px;
  border-color: #e4eaf2;
  border-radius: 11px;
  background: #fff;
}
.cc-shell[data-active-page]:not([data-active-page="overview"]) .cc-device-pill > span { color: #28435f; background: #edf3fa; }
.cc-shell[data-active-page]:not([data-active-page="overview"]) .cc-device-pill.has-devices .cc-device-dot { background: #18b477; box-shadow: 0 0 0 5px rgba(24, 180, 119, .09); }
.cc-shell[data-active-page]:not([data-active-page="overview"]) .cc-coupon-admin-pill {
  min-width: 174px;
  min-height: 48px;
  padding: 6px 12px;
  border: 0;
  border-left: 1px solid #e2e8ef;
  border-radius: 0;
  background: transparent;
}
.cc-shell[data-active-page]:not([data-active-page="overview"]) .cc-coupon-admin-pill::after { margin-left: auto; color: #40516a; content: "⌄"; font-size: 13px; }
.cc-shell[data-active-page]:not([data-active-page="overview"]) .cc-coupon-admin-pill > span { width: 38px; height: 38px; flex-basis: 38px; color: #5a48d7; background: #eeebff; }
.cc-shell[data-active-page]:not([data-active-page="overview"]) .cc-overview-notification {
  display: grid;
  width: 42px;
  height: 42px;
  flex: 0 0 42px;
  place-items: center;
  padding: 0;
  border: 0;
  border-radius: 50%;
  color: #35465e;
  background: transparent;
  cursor: pointer;
}
.cc-shell[data-active-page]:not([data-active-page="overview"]) .cc-overview-notification svg { width: 21px; height: 21px; }
.cc-shell[data-active-page]:not([data-active-page="overview"]) .cc-content {
  gap: 14px;
  max-width: none;
  padding: 16px clamp(18px, 2vw, 30px) 30px;
  background: radial-gradient(circle at 92% 4%, rgba(82, 139, 255, .055), transparent 27%), var(--cc-console-bg);
}

/* Smart welcome: keep authorization available without letting it dominate the page. */
.cc-shell[data-active-page="store-display"] .cc-store-display-page { gap: 14px; }
.cc-shell[data-active-page="store-display"] .cc-store-display-hero {
  min-height: 80px;
  gap: 18px;
  padding: 16px 22px;
  border-color: var(--cc-console-line);
  border-radius: 16px;
  box-shadow: 0 5px 18px rgba(43, 69, 98, .035);
}
.cc-shell[data-active-page="store-display"] .cc-store-display-hero .cc-kicker { display: none; }
.cc-shell[data-active-page="store-display"] .cc-store-display-hero h2 { margin: 0 0 4px; color: #172033; font-size: 18px; line-height: 1.3; }
.cc-shell[data-active-page="store-display"] .cc-store-display-hero span { color: #758198; font-size: 12px; }
.cc-shell[data-active-page="store-display"] .cc-store-display-hero .cc-primary-button { min-height: 44px; font-size: 13px; }
.cc-shell[data-active-page="store-display"] .cc-smart-welcome-access {
  grid-template-columns: minmax(0, 1fr) auto auto;
  gap: 14px;
  min-height: 76px;
  padding: 13px 20px;
  border-color: var(--cc-console-line);
  border-left: 3px solid #aeb9c7;
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 5px 18px rgba(43, 69, 98, .035);
}
.cc-shell[data-active-page="store-display"] .cc-smart-welcome-access[data-state="enabled"] { border-color: var(--cc-console-line); border-left-color: #19a56f; background: #fff; }
.cc-shell[data-active-page="store-display"] .cc-smart-welcome-access[data-state="disabled"] { border-color: var(--cc-console-line); border-left-color: #e32745; background: #fff; }
.cc-shell[data-active-page="store-display"] .cc-smart-welcome-access[data-state="unavailable"] { border-color: var(--cc-console-line); border-left-color: #d89b36; background: #fff; }
.cc-shell[data-active-page="store-display"] .cc-smart-welcome-access-icon { width: 40px; height: 40px; flex-basis: 40px; border-radius: 11px; font-size: 14px; }
.cc-shell[data-active-page="store-display"] .cc-smart-welcome-access-main h3 { font-size: 15px; }
.cc-shell[data-active-page="store-display"] .cc-smart-welcome-access-main p { font-size: 12px; }
.cc-smart-welcome-access-details { min-width: 0; }
.cc-smart-welcome-access-details summary { padding: 9px 10px; border-radius: 9px; color: #50617a; font-size: 12px; font-weight: 700; cursor: pointer; white-space: nowrap; }
.cc-smart-welcome-access-details summary:hover { background: #f2f6fb; }
.cc-smart-welcome-access-details[open] { grid-column: 1 / -1; grid-row: 2; }
.cc-smart-welcome-access-details[open] .cc-smart-welcome-access-meta { margin-top: 8px; padding: 14px; border: 1px solid #e3e9f1; border-radius: 10px; background: #f7f9fc; }
.cc-shell[data-active-page="store-display"] .cc-smart-welcome-access > button { grid-column: 3; grid-row: 1; min-height: 38px; }

@media (max-width: 1500px) {
  .cc-shell[data-active-page]:not([data-active-page="overview"]) .cc-topbar-meta .cc-coupon-store-pill { width: 270px; min-width: 270px; }
}
@media (max-width: 1320px) {
  .cc-shell[data-active-page]:not([data-active-page="overview"]) .cc-coupon-admin-pill { display: none; }
}
@media (max-width: 1180px) {
  .cc-shell[data-active-page]:not([data-active-page="overview"]) .cc-device-pill { display: none; }
}
@media (max-width: 760px) {
  .cc-shell[data-active-page]:not([data-active-page="overview"]) { --cc-sidebar: 0px; }
  .cc-shell[data-active-page]:not([data-active-page="overview"]) .cc-topbar { min-height: 64px; padding-inline: 14px; }
  .cc-shell[data-active-page]:not([data-active-page="overview"]) .cc-topbar-meta .cc-coupon-store-pill { width: auto; min-width: 0; flex: 1; }
  .cc-shell[data-active-page]:not([data-active-page="overview"]) .cc-overview-notification { display: none; }
  .cc-shell[data-active-page]:not([data-active-page="overview"]) .cc-content { padding: 12px 10px 24px; }
  .cc-shell[data-active-page="store-display"] .cc-store-display-hero { align-items: stretch; flex-direction: column; }
  .cc-shell[data-active-page="store-display"] .cc-smart-welcome-access { grid-template-columns: minmax(0, 1fr) auto; }
  .cc-smart-welcome-access-details { grid-column: 1 / -1; grid-row: 2; }
  .cc-shell[data-active-page="store-display"] .cc-smart-welcome-access > button { grid-column: 2; grid-row: 1; }
}

/* MTT shares one clock across TVs; SNG controls one independent clock per TV. */
.cc-shell[data-active-page="overview"] .cc-timer-groups {
  display: grid;
  gap: 9px;
  margin-bottom: 12px;
  padding: 14px 18px;
  border: 1px solid var(--cc-console-line);
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 5px 18px rgba(43, 69, 98, .035);
}
.cc-timer-groups-heading { display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.cc-timer-groups-heading > div { display: grid; gap: 3px; min-width: 0; }
.cc-timer-groups-heading span { color: #e32745; font-size: 11px; font-weight: 800; letter-spacing: .08em; }
.cc-timer-groups-heading strong { overflow: hidden; color: #172033; font-size: 19px; line-height: 1.3; text-overflow: ellipsis; white-space: nowrap; }
.cc-timer-groups-heading small { color: #718096; font-size: 12px; line-height: 1.45; }
.cc-timer-groups-heading > button,
.cc-timer-group-device > button {
  min-height: 40px;
  padding: 0 14px;
  border: 1px solid #dce5ef;
  border-radius: 10px;
  color: #2e5e9c;
  background: #f7faff;
  font: inherit;
  font-size: 13px;
  font-weight: 750;
  white-space: nowrap;
  cursor: pointer;
}
.cc-timer-groups-heading > button:hover,
.cc-timer-group-device > button:hover { border-color: #b8d1f4; background: #edf5ff; }
.cc-timer-group-list { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 11px; }
.cc-timer-group-card {
  display: grid;
  min-width: 0;
  min-height: 102px;
  align-content: start;
  gap: 5px;
  padding: 11px 14px;
  border: 1px solid #e1e8f0;
  border-radius: 13px;
  color: #243249;
  background: #f9fbfe;
  font: inherit;
  text-align: left;
  cursor: pointer;
}
.cc-timer-group-card:hover { border-color: #b9d2f8; background: #f3f8ff; }
.cc-timer-group-card.is-empty:not(.is-active) { border-style: dashed; background: #fcfdff; }
.cc-timer-group-card.is-active { border-color: #478dff; background: #eef5ff; box-shadow: inset 0 0 0 1px rgba(71, 141, 255, .15); }
.cc-timer-group-card:focus-visible,
.cc-timer-groups button:focus-visible,
.cc-timer-group-device select:focus-visible { outline: 3px solid rgba(52, 137, 255, .2); outline-offset: 2px; }
.cc-timer-group-card:disabled { cursor: wait; opacity: .65; }
.cc-timer-group-card-top { display: flex; align-items: center; justify-content: space-between; gap: 8px; color: #5c7391; font-size: 11px; }
.cc-timer-group-card-top b { font-weight: 800; }
.cc-timer-group-card-top em { color: #7d8798; font-style: normal; font-weight: 700; }
.cc-timer-group-card-top em.is-running { color: #178765; }
.cc-timer-group-card > strong { overflow: hidden; color: #18283c; font-size: 16px; text-overflow: ellipsis; white-space: nowrap; }
.cc-timer-group-card-meta { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 4px 12px; color: #3f526c; font-size: 12px; font-variant-numeric: tabular-nums; }
.cc-timer-group-card-meta b { color: #172033; font-size: 15px; }
.cc-timer-group-card > small { overflow: hidden; color: #738198; font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }
.cc-timer-group-empty { margin: 0; padding: 16px; color: #718096; font-size: 13px; }
.cc-timer-group-manager { padding-top: 14px; border-top: 1px solid #e6ebf2; }
.cc-timer-group-manager[hidden] { display: none !important; }
.cc-timer-group-manager-heading { margin-bottom: 10px; }
.cc-timer-group-manager-heading strong { color: #172033; font-size: 15px; }
.cc-timer-group-manager-heading p { margin: 4px 0 0; color: #718096; font-size: 12px; line-height: 1.5; }
.cc-timer-group-device { display: grid; grid-template-columns: minmax(160px, 1fr) minmax(170px, 230px) auto auto; align-items: center; gap: 10px; padding: 12px 0; border-top: 1px solid #edf1f5; }
.cc-timer-group-device > div { display: grid; gap: 3px; min-width: 0; }
.cc-timer-group-device > div strong { overflow: hidden; color: #25364d; font-size: 13px; text-overflow: ellipsis; white-space: nowrap; }
.cc-timer-group-device > div small { overflow: hidden; color: #758198; font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }
.cc-timer-group-device label { display: grid; gap: 3px; color: #758198; font-size: 11px; }
.cc-timer-group-device select { min-width: 0; min-height: 38px; padding: 0 10px; border: 1px solid #dce5ef; border-radius: 9px; color: #25364d; background: #fff; font: inherit; font-size: 12px; }
.cc-timer-group-device > button.is-independent { color: #e32745; background: #fff8f9; border-color: #f3c4cd; }
.cc-timer-group-device > button:disabled { opacity: .5; cursor: not-allowed; }
.cc-timer-control-target { margin: 10px 0 8px; padding: 9px 12px; border: 1px solid #cfe2f7; border-radius: 9px; color: #275d9b; background: #f1f7ff; font-size: 12px; font-weight: 750; }

/* Group-first device management: one tournament state is one clock group. */
.cc-timer-group-create{display:grid;gap:12px;padding:17px;border:1px solid #cfe0f5;border-radius:14px;background:#f7faff}
.cc-timer-group-create>div:first-child{display:grid;gap:3px}.cc-timer-group-create>div:first-child strong{font-size:16px;color:#193552}
.cc-timer-group-create>div:first-child small{font-size:12px;color:#71839c}
.cc-timer-group-name-field{display:grid;gap:6px;color:#4e6480;font-size:12px;font-weight:750}
.cc-timer-group-name-field input{min-height:42px;padding:8px 12px;border:1px solid #d6e1ee;border-radius:9px;background:#fff;color:#1b2c44;font:inherit;font-size:14px}
.cc-timer-group-choices{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:10px 0 0;border:0}
.cc-timer-group-choices legend{padding:0;color:#516780;font-size:12px;font-weight:800}
.cc-timer-group-choices label{display:flex;align-items:center;gap:7px;min-width:175px;min-height:42px;padding:7px 9px;border:1px solid #dce6f2;border-radius:9px;background:#fff;color:#283b56;font-size:12px;cursor:pointer}
.cc-timer-group-choices label:has(input:checked){border-color:#84adf4;background:#edf5ff}
.cc-timer-group-choices label:has(input:disabled){opacity:.6;cursor:not-allowed}
.cc-timer-group-choices input{width:15px;height:15px;accent-color:#2869e7}.cc-timer-group-choices label span{font-weight:800}
.cc-timer-group-choices label small{max-width:165px;overflow:hidden;color:#8291a5;font-size:11px;text-overflow:ellipsis;white-space:nowrap}
.cc-timer-group-create-button,.cc-timer-group-manage-card>button{justify-self:start;min-height:40px;padding:0 15px;border:1px solid #c0d4f3;border-radius:9px;color:#235da9;background:#fff;font:inherit;font-size:13px;font-weight:800;cursor:pointer}
.cc-timer-group-create-button{border-color:#2564df;color:#fff;background:#2564df}
.cc-timer-group-create-button:disabled,.cc-timer-group-manage-card>button:disabled{opacity:.5;cursor:not-allowed}
.cc-timer-group-manage-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(310px,1fr));gap:11px;margin-top:14px}
.cc-timer-group-manage-card{display:grid;align-content:start;gap:11px;min-width:0;padding:15px;border:1px solid #e1e8f0;border-radius:13px;background:#fff}
.cc-timer-group-manage-card header{display:flex;align-items:center;justify-content:space-between;gap:10px}.cc-timer-group-manage-card header strong{font-size:15px;color:#1b304b}.cc-timer-group-manage-card header small{color:#71849b;font-size:11px}
.cc-timer-group-card-tools{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px}
.cc-timer-group-delete{min-height:28px;padding:3px 8px;border:1px solid #f3c4cd;border-radius:7px;color:#cf2d47;background:#fff8f9;font:inherit;font-size:11px;font-weight:800;cursor:pointer}
.cc-timer-group-delete:hover:not(:disabled){background:#ffecef}.cc-timer-group-delete:disabled{opacity:.45;cursor:not-allowed}
.cc-timer-group-members{display:flex;flex-wrap:wrap;gap:7px}.cc-timer-group-members>span{display:flex;align-items:center;gap:7px;max-width:100%;padding:5px 7px 5px 10px;border:1px solid #d7e5f5;border-radius:8px;background:#f3f8ff;color:#325477;font-size:12px;font-weight:800}
.cc-timer-group-members>span button{min-height:27px;padding:2px 7px;border:1px solid #c9d8ee;border-radius:6px;color:#3c66a2;background:#fff;font:inherit;font-size:11px;cursor:pointer}.cc-timer-group-members>span button:disabled{opacity:.55;cursor:not-allowed}
.cc-timer-group-members>em{color:#8595a8;font-size:12px;font-style:normal}
.cc-timer-group-manage-card .cc-timer-group-choices{border-top:1px solid #eef2f6}.cc-timer-group-manage-card .cc-timer-group-choices label{min-width:150px}

@media (max-width: 1150px) {
  .cc-timer-group-device { grid-template-columns: minmax(150px, 1fr) minmax(150px, 1fr); }
  .cc-timer-group-device > button { width: 100%; }
}
@media (max-width: 760px) {
  .cc-shell[data-active-page="overview"] .cc-timer-groups { padding: 15px; }
  .cc-timer-groups-heading { align-items: stretch; flex-direction: column; gap: 10px; }
  .cc-timer-groups-heading > button { width: 100%; }
  .cc-timer-group-list { grid-template-columns: 1fr; }
  .cc-timer-group-card { min-height: 102px; }
  .cc-timer-group-device { grid-template-columns: 1fr 1fr; }
  .cc-timer-group-device > div,
  .cc-timer-group-device label { grid-column: 1 / -1; }
  .cc-timer-control-target { line-height: 1.5; }
}

/* Remove introductory cards; preserve controls and real-time status. */
.cc-shell[data-active-page="devices"] .cc-devices-page-heading,
.cc-shell[data-active-page="market"] .cc-market-hero {
  display: none;
}
.cc-shell:not([data-active-page="overview"]) :is(.cc-store-display-hero, .onsite-header, .posters-header) {
  min-height: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  justify-content: flex-end;
}
.cc-shell:not([data-active-page="overview"]) :is(.cc-store-display-hero, .onsite-header, .posters-header) > div:first-child {
  display: none;
}
.cc-shell[data-active-page="onsite"] .onsite-tabs { margin-top: 12px; }
.cc-shell[data-active-page="posters"] .posters-layout { margin-top: 12px; }
.cc-devices-list-actions { display: flex; align-items: center; justify-content: flex-end; flex-wrap: wrap; gap: 12px; }
.cc-devices-list-actions button { min-height: 40px; padding: 0 16px; border: 1px solid #d6e0eb; border-radius: 10px; color: #31547d; background: #fff; font: inherit; font-size: 13px; font-weight: 700; cursor: pointer; }
.cc-shell .cc-bound-tv-section .cc-subheading > .cc-devices-list-actions { display: flex; flex-direction: row; align-items: center; }
.cc-shell .cc-bound-tv-section .cc-devices-list-actions button { flex: 0 0 auto; width: auto; }
.cc-shell:not([data-active-page="overview"]) :is(.cc-floor-hero, .cc-member-admin-hero, .cc-performance-hero, .cc-member-space-hero, .cc-store-code-hero) {
  min-height: 0; padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; justify-content: flex-end;
}
.cc-shell:not([data-active-page="overview"]) :is(.cc-floor-hero, .cc-member-admin-hero, .cc-member-space-hero, .cc-store-code-hero) > div:first-child,
.cc-shell:not([data-active-page="overview"]) .cc-ranking-overview-copy { display: none; }

/* Account actions stay available in the sidebar when the compact header hides the account pill. */
.cc-account-control { position: relative; flex: 0 0 auto; }
.cc-account-control .cc-coupon-admin-pill { font: inherit; text-align: left; cursor: pointer; }
.cc-account-control .cc-coupon-admin-pill:hover { background: #f6f9fe; }
.cc-account-control .cc-coupon-admin-pill:focus-visible,
.cc-account-menu button:focus-visible,
#cc-sidebar-logout:focus-visible { outline: 2px solid #2563eb; outline-offset: 2px; }
.cc-account-menu {
  position: absolute;
  top: calc(100% + 8px);
  right: 0;
  z-index: 30;
  min-width: 172px;
  padding: 6px;
  border: 1px solid #dde5f0;
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 14px 34px rgba(18, 35, 60, .16);
}
.cc-account-menu[hidden] { display: none !important; }
.cc-account-menu button {
  width: 100%;
  min-height: 40px;
  padding: 0 12px;
  border: 0;
  border-radius: 8px;
  color: #c42e43;
  background: transparent;
  font: inherit;
  font-size: 13px;
  font-weight: 700;
  text-align: left;
  cursor: pointer;
}
.cc-account-menu button:hover { background: #fff0f2; }
.cc-login .cc-form-error[data-tone="success"] { color: #16845f; }
.cc-account-menu button:disabled,
#cc-sidebar-logout:disabled { opacity: .55; cursor: wait; }
#cc-sidebar-logout { margin-top: 4px; }

/* APK installation and usage guide */
.cc-apk-guide-steps { margin: 0; padding: 0; list-style: none; }
.cc-apk-guide-steps > li { display: grid; grid-template-columns: 34px minmax(0, 1fr); gap: 16px; padding: 22px 0; border-top: 1px solid #e5eaf0; }
.cc-apk-step-number { padding-top: 2px; color: #936c2f; font-size: 14px; font-weight: 800; }
.cc-apk-guide-steps h3 { margin: 0 0 12px; color: #223047; font-size: 17px; line-height: 1.5; }
.cc-apk-guide-steps ol { padding-left: 20px; margin: 0; }
.cc-apk-guide-steps ol li { margin-bottom: 7px; padding-left: 3px; }
.cc-apk-guide-steps, .cc-apk-guide-support { color: #44546b; font-size: 14px; line-height: 1.8; overflow-wrap: anywhere; }
.cc-apk-step-result { margin: 12px 0 0; padding: 12px 14px; background: #f8fafc; border-radius: 8px; }
.cc-apk-guide-body > .cc-apk-guide-tip { padding: 12px 14px; border-left: 3px solid #c8a66c; background: #faf7f0; color: #60533e; }
.cc-apk-guide-link { display: inline-flex; align-items: center; min-height: 44px; margin-top: 4px; color: #805c26; font-weight: 700; text-decoration: underline; text-underline-offset: 4px; }
.cc-apk-guide-link:focus-visible, .cc-apk-guide-support summary:focus-visible { outline: 2px solid #805c26; outline-offset: 3px; border-radius: 4px; }
.cc-apk-guide-support { border-top: 1px solid #e5eaf0; }
.cc-apk-guide-support details { border-bottom: 1px solid #e5eaf0; }
.cc-apk-guide-support summary { padding: 16px 0; min-height: 48px; cursor: pointer; color: #223047; font-weight: 700; }
.cc-apk-guide-support details > div { padding: 0 0 16px; }
.cc-apk-guide-support p { margin: 0 0 10px; }
.cc-apk-guide-support p:last-child { margin-bottom: 0; }
.cc-apk-guide-status { color: #705326; background: #faf6ee; }
@media (max-width: 600px) {
  .cc-apk-guide-steps > li { grid-template-columns: 25px minmax(0, 1fr); gap: 10px; padding: 18px 0; }
  .cc-apk-guide-steps > li > div { display: contents; }
  .cc-apk-guide-steps h3 { font-size: 16px; margin-bottom: 0; }
  .cc-apk-guide-steps > li > div > :is(ol, p, a) { grid-column: 1 / -1; }
  .cc-apk-step-result, .cc-apk-guide-steps .cc-apk-guide-link { margin-top: 0; }
}

/* Staff grants follow the existing account form, with native multi-selection. */
.cc-store-staff-list > article { grid-template-columns: minmax(150px, 1fr) minmax(120px, .7fr) auto auto; }
.cc-store-staff-group-field { grid-column: 1 / -1; min-width: 0; margin: 0; padding: 16px; border: 1px solid var(--cc-border, #dbe3ef); border-radius: 12px; }
.cc-store-staff-group-field legend { font-weight: 700; padding: 0 6px; }
.cc-store-staff-group-field p, .cc-store-staff-group-field small { display: block; line-height: 1.6; margin: 8px 0; }
.cc-store-staff-group-field .cc-staff-group-option { display: flex; align-items: center; gap: 12px; min-height: 44px; cursor: pointer; }
.cc-store-staff-group-field .cc-staff-group-option input { width: 20px; height: 20px; min-height: 20px; flex: none; }

.cc-store-staff-group-field .cc-staff-group-option span { color: #303943; font-size: 14px; line-height: 1.5; white-space: normal; overflow-wrap: anywhere; }
@media (max-width: 640px) {
  .cc-store-staff-list > article { grid-template-columns: minmax(0, 1fr) auto; }
}

/* Existing count controls, with a separate save for the current group's prize count. */
.cc-shell[data-active-page="overview"] .cc-prize-people-form {
  width: 100%;
  margin-top: 12px;
  grid-template-columns: minmax(0, 1fr) auto;
}
.cc-shell[data-active-page="overview"] .cc-prize-people-form input { min-height: 44px; }
.cc-shell[data-active-page="overview"] .cc-prize-people-form .cc-people-save-actions {
  grid-column: auto;
  align-items: center;
  flex-wrap: wrap;
}
.cc-shell[data-active-page="overview"] .cc-prize-people-form button { min-height: 44px; }
.cc-shell[data-active-page="overview"] #cc-prize-people-save {
  border-color: #e32745;
  color: #fff;
  background: #e32745;
}
@media (max-width: 560px) {
  .cc-shell[data-active-page="overview"] .cc-prize-people-form { grid-template-columns: 1fr; }
}

.cc-shell[data-active-page="overview"] #cc-total-stack-edit {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  max-width: 100%;
  gap: 6px;
  min-height: 44px;
  padding: 6px 8px;
  border: 1px solid #dbe4ef;
  border-radius: 8px;
  background: #fff;
  color: #293c54;
}
.cc-shell[data-active-page="overview"] #cc-total-stack-edit small { color: #738298; font-size: 11px; }
.cc-shell[data-active-page="overview"] #cc-total-stack-edit strong { min-width: 0; white-space: normal; overflow-wrap: anywhere; }
.cc-shell[data-active-page="overview"] #cc-total-stack-edit.is-long-total strong { font-size: 12px; white-space: nowrap; }
.cc-shell[data-active-page="overview"] #cc-total-stack-edit:disabled { border-color: transparent; background: transparent; padding: 0; cursor: default; }
.cc-shell[data-active-page="overview"] .cc-total-stack-form {
  width: 100%;
  margin: 12px 0 16px;
  grid-template-columns: minmax(0, 1fr) auto;
}
.cc-shell[data-active-page="overview"] .cc-total-stack-form[hidden] { display: none; }
.cc-shell[data-active-page="overview"] #cc-total-stack-form input { width: min(100%, 180px); min-height: 44px; }
.cc-shell[data-active-page="overview"] .cc-total-stack-form .cc-people-save-actions { display: flex; grid-column: auto; align-items: center; flex-wrap: wrap; }
.cc-shell[data-active-page="overview"] .cc-total-stack-form button { min-height: 44px; }
.cc-shell[data-active-page="overview"] #cc-total-stack-save { background: #e32745; color: #fff; border-color: #e32745; }
.cc-shell[data-active-page="overview"] .cc-total-stack-form p { grid-column: 1 / -1; margin: 0; font-size: 12px; color: #738298; }
@media (max-width: 560px) {
  .cc-shell[data-active-page="overview"] .cc-total-stack-form { grid-template-columns: 1fr; }
}

/* Mobile navigation reuses the existing permission-filtered sidebar. */
.cc-mobile-nav-toggle,.cc-mobile-nav-close,.cc-mobile-nav-backdrop{display:none}
@media(max-width:900px){
  .cc-mobile-nav-toggle{margin-right:auto;display:inline-flex;align-items:center;gap:7px;min-height:44px;padding:0 12px;border:1px solid #dce3ec;border-radius:10px;background:#fff;color:#172c3a;font:inherit;font-weight:600;cursor:pointer;flex-shrink:0}
  .cc-mobile-nav-toggle:focus-visible,.cc-mobile-nav-close:focus-visible{outline:2px solid #b38d49;outline-offset:2px}
  .cc-shell.is-mobile-nav-open[data-active-page] .cc-sidebar{display:flex!important;z-index:82;inset:0 auto 0 0;width:min(300px,85vw);height:100vh;height:100dvh;min-height:0;overflow:hidden;background:#0c202c;box-shadow:8px 0 28px #0003;backdrop-filter:none}
  .cc-shell.is-mobile-nav-open .cc-sidebar .cc-nav{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain}
  .cc-shell.is-mobile-nav-open .cc-sidebar .cc-brand{min-height:76px;padding:14px 18px}
  .cc-mobile-nav-close{display:block;align-self:flex-end;min-height:44px;margin:8px 12px 0;padding:0 12px;border:0;border-radius:8px;color:#f5e5bf;background:transparent;font:inherit;cursor:pointer}
  .cc-shell.is-mobile-nav-open .cc-sidebar .cc-nav-label,.cc-shell.is-mobile-nav-open .cc-sidebar .cc-brand-copy,.cc-shell.is-mobile-nav-open .cc-sidebar .cc-sidebar-footer strong{display:block}
  .cc-shell.is-mobile-nav-open .cc-sidebar .cc-nav a{justify-content:flex-start}
  .cc-shell.is-mobile-nav-open #cc-sidebar-collapse{display:none}
  .cc-mobile-nav-backdrop:not([hidden]){display:block;position:fixed;inset:0;z-index:81;border:0;background:#07131d80;cursor:pointer}
  body.cc-mobile-navigation-open{overflow:hidden}
}

/* Mushroom tournament controls use the shared control operation pipeline. */
.cc-mushroom-form { display:flex; align-items:end; gap:10px; flex-wrap:wrap; }
.cc-mushroom-form label { display:grid; gap:6px; flex:1; min-width:120px; }
.cc-mushroom-form input { width:100%; min-height:42px; border:1px solid #dce4ee; border-radius:8px; padding:8px 12px; }
.cc-mushroom-form button { min-height:42px; }

#cc-public-mushroom-controls[hidden]{display:none!important}

.cc-mushroom-form button{padding:8px 12px;border:1px solid #d6b883;border-radius:8px;background:#faf6ee;color:#8b622b;font-size:14px;cursor:pointer}
.cc-mushroom-form button[type=submit]{background:#192c3c;border-color:#192c3c;color:#ead4a6}
.cc-mushroom-form button:disabled{opacity:.45;cursor:default}
.cc-mushroom-form input:focus-visible,.cc-mushroom-form button:focus-visible{outline:2px solid #b88f49;outline-offset:2px}

/* Locked feature previews never mount the real configuration or TV controls. */
[data-cc-page].is-feature-showroom > :not(.cc-feature-showroom){display:none!important}
.cc-feature-showroom{background:#fff;border:1px solid #e0e7ef;border-radius:16px;padding:24px}
.cc-feature-showroom header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}
.cc-feature-showroom h2{margin:0 0 8px;font-size:24px}
.cc-feature-showroom p{color:#526274;margin:0;line-height:1.6}
.cc-feature-showroom iframe{display:block;border:0;width:100%;height:950px}
@media(max-width:700px){.cc-feature-showroom{padding:14px}.cc-feature-showroom header{align-items:flex-start;flex-direction:column}.cc-feature-showroom iframe{height:850px}}

.cc-feature-showroom{grid-column:1/-1;min-width:0}
.cc-feature-showroom header button{min-height:44px;flex-shrink:0;padding:10px 18px;border:1px solid #dbc391;border-radius:9px;background:#192d3a;color:#efd59b;font:inherit;cursor:pointer}
.cc-feature-showroom header button:focus-visible{outline:3px solid #3478b6;outline-offset:3px}

/* Long-press reorder shares the existing fixed group card design. */
.cc-timer-group-sort-hint{margin:8px 0;color:var(--cc-muted,#7e8ca3);font-size:12px}
.cc-timer-group-card{user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}
.cc-timer-group-card.is-dragging{opacity:.35;outline:2px dashed #c69a53;outline-offset:-3px}
.cc-timer-group-drag-ghost{position:fixed!important;z-index:10000;pointer-events:none;opacity:.94;box-shadow:0 12px 30px #15233133;transform:scale(1.025);cursor:grabbing}
.cc-timer-group-editor{margin-top:12px}
.cc-timer-group-editor summary{display:flex;align-items:center;justify-content:space-between;min-height:44px;padding:8px 12px;box-sizing:border-box;border:1px solid #d4e1f5;border-radius:10px;color:#245fa7;background:#fff;cursor:pointer;font-weight:600;list-style:none}
.cc-timer-group-editor summary::-webkit-details-marker{display:none}
.cc-timer-group-editor summary::after{content:"展开";font-size:12px;font-weight:400}
.cc-timer-group-editor[open] summary::after{content:"收起"}
.cc-timer-group-editor summary:focus-visible{outline:2px solid #245fa7;outline-offset:2px}
.cc-timer-group-editor[open] summary{margin-bottom:12px}

.cc-store-staff-feedback{grid-column:1/-1;margin:8px 0 0;padding:10px 12px;border-radius:8px;line-height:1.6;background:#edf7f1;color:#21734a}
.cc-store-staff-feedback:empty{display:none}
.cc-store-staff-feedback[data-tone="pending"]{background:#edf4ff;color:#245fa7}
.cc-store-staff-feedback[data-tone="error"]{background:#fff0f0;color:#b52a3b}

/* Group editor controls keep their layout when nested in the disclosure. */
.cc-timer-group-manage-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,310px),1fr))}
.cc-timer-group-manage-card header{flex-wrap:wrap;align-items:flex-start}
.cc-timer-group-manage-card header>strong{flex:1 1 120px;min-width:0;overflow-wrap:anywhere;line-height:1.5}
.cc-timer-group-card-tools{min-width:0;max-width:100%}
.cc-timer-group-members>span{box-sizing:border-box;overflow-wrap:anywhere;min-width:0}
.cc-timer-group-editor{min-width:0;margin-top:0}
.cc-timer-group-editor .cc-timer-group-choices{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;padding-top:12px;margin-bottom:12px}
.cc-timer-group-editor .cc-timer-group-choices label{display:grid;grid-template-columns:20px minmax(0,1fr);gap:4px 9px;min-width:0;max-width:100%;box-sizing:border-box;padding:10px 12px;min-height:44px}
.cc-timer-group-editor .cc-timer-group-choices input{grid-row:1/3;width:18px;height:18px;margin:0;align-self:center}
.cc-timer-group-editor .cc-timer-group-choices label span{min-width:0;overflow-wrap:anywhere;line-height:1.5}
.cc-timer-group-editor .cc-timer-group-choices label small{grid-column:2;min-width:0;max-width:none;white-space:normal;overflow-wrap:anywhere;line-height:1.5}
.cc-timer-group-add-button{min-height:44px;max-width:100%;padding:10px 15px;border:1px solid #c0d4f3;border-radius:9px;color:#235da9;background:#fff;font:inherit;font-size:13px;font-weight:700;cursor:pointer}
.cc-timer-group-add-button:hover:not(:disabled){background:#edf4ff}
.cc-timer-group-add-button:focus-visible{outline:2px solid #245fa7;outline-offset:2px}
.cc-timer-group-add-button:disabled{opacity:.5;cursor:not-allowed}
@media(max-width:480px){.cc-timer-group-manage-card{padding:12px}.cc-timer-group-card-tools{justify-content:flex-start}.cc-timer-group-add-button{width:100%}}
