.state {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  padding: 2px 8px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 650;
  line-height: 1.25;
}

.state.good {
  background: #e7f5ee;
  color: var(--ok);
}

.state.bad {
  background: #fbeceb;
  color: #9c3f3c;
}

.subline {
  display: block;
  margin-top: 3px;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.35;
}

.row-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 7px;
}

.danger-button {
  color: var(--danger);
}

.affiliate-totals {
  display: flex;
  flex-wrap: wrap;
  gap: 18px;
  color: var(--muted);
  font-size: 12px;
}

.affiliate-totals b {
  color: var(--ink);
  font-weight: 650;
}

.brand-mark img {
  display: block;
  flex: none;
  width: 40px;
  height: 40px;
  object-fit: contain;
}

.brand-mark.compact img {
  width: 32px;
  height: 32px;
}

.verification-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: end;
  gap: 10px;
}

.verification-row .button {
  white-space: nowrap;
}

.checkbox-label a {
  color: var(--accent);
  text-underline-offset: 3px;
}

.admin-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 14px 16px;
  border: 1px solid var(--line);
  background: var(--surface);
}

.admin-toolbar p,
.admin-note {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.5;
}

.settings-status {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border: 1px solid var(--line);
  background: var(--surface);
}

.settings-status > div {
  display: grid;
  gap: 6px;
  padding: 16px;
  border-right: 1px solid var(--line);
  min-width: 0;
}

.settings-status > div:last-child {
  border-right: 0;
}

.settings-status strong {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 14px;
}

.secure-dialog {
  width: min(480px, calc(100vw - 32px));
  margin: auto;
  padding: 0;
  border: 1px solid var(--line);
  border-radius: 8px;
  color: var(--ink);
  background: var(--surface);
  box-shadow: 0 18px 48px rgba(16, 33, 43, .24);
}

.secure-dialog::backdrop {
  background: rgba(11, 28, 31, .42);
}

.secure-dialog form {
  padding: 22px;
}

.dialog-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.dialog-heading h3 {
  margin: 0;
  font-size: 17px;
}

.secure-dialog .copy-line code {
  min-width: 0;
}

.secure-dialog .form-actions {
  display: flex;
  justify-content: flex-end;
}

.legal-page {
  width: min(760px, calc(100% - 32px));
  margin: 0 auto;
  padding: 44px 0 72px;
}

.legal-page .brand-mark {
  display: inline-flex;
  margin-bottom: 42px;
  color: var(--ink);
  text-decoration: none;
}

.legal-page h1 {
  margin: 0 0 8px;
  font-size: 30px;
}

.legal-page section {
  margin-top: 30px;
}

.legal-page h2 {
  margin: 0 0 8px;
  font-size: 17px;
}

.legal-page p {
  max-width: 72ch;
  margin: 0;
  color: #31515a;
  line-height: 1.8;
}

.setup-guide {
  max-width: 900px;
  margin-top: 28px;
  padding-top: 26px;
  border-top: 1px solid var(--line);
}

.guide-heading {
  display: flex;
  align-items: start;
  justify-content: space-between;
  gap: 16px;
}

.guide-heading .label {
  display: block;
  margin-bottom: 5px;
}

.guide-heading h4 {
  margin: 0;
  font-size: 18px;
}

.guide-badge {
  flex: none;
  padding: 4px 9px;
  border: 1px solid #b9ded8;
  border-radius: 999px;
  color: var(--accent);
  background: #eef8f6;
  font-size: 12px;
  font-weight: 650;
}

.guide-intro {
  max-width: 68ch;
  margin: 9px 0 18px;
  color: var(--muted);
  font-size: 13px;
}

.guide-steps {
  display: grid;
  gap: 10px;
}

.guide-step {
  display: grid;
  grid-template-columns: 30px minmax(0, 1fr);
  gap: 12px;
  padding: 16px;
  border: 1px solid var(--line);
  background: var(--surface);
}

.guide-step-marker {
  display: grid;
  place-items: center;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: var(--accent);
  color: #fff;
  font-size: 13px;
  font-weight: 750;
}

.guide-step-body {
  min-width: 0;
}

.guide-step h5 {
  margin: 1px 0 5px;
  font-size: 14px;
}

.guide-step p {
  max-width: 70ch;
  margin: 0 0 12px;
  color: var(--muted);
  font-size: 13px;
}

.guide-action {
  display: inline-flex;
  align-items: center;
  min-height: 38px;
  text-decoration: none;
}

.guide-details {
  margin-top: 10px;
  border: 1px solid var(--line);
  background: var(--surface);
}

.guide-details summary {
  padding: 13px 15px;
  color: var(--accent);
  cursor: pointer;
  font-size: 13px;
  font-weight: 650;
}

.guide-details summary:focus-visible {
  outline: 3px solid rgba(11, 122, 117, .28);
  outline-offset: -3px;
}

.manual-config {
  display: grid;
  gap: 0;
  border-top: 1px solid var(--line);
}

.manual-row {
  display: grid;
  grid-template-columns: 150px minmax(0, 1fr);
  align-items: center;
  gap: 16px;
  padding: 12px 15px;
  border-bottom: 1px solid #e8edef;
  font-size: 13px;
}

.manual-row:last-child {
  border-bottom: 0;
}

.manual-row > span {
  color: var(--muted);
}

.manual-row strong {
  min-width: 0;
  font-weight: 600;
}

.manual-row .copy-line {
  min-width: 0;
}

.guide-faq {
  display: grid;
  gap: 8px;
  margin: 0;
  padding: 13px 28px 16px;
  border-top: 1px solid var(--line);
  color: var(--muted);
  font-size: 13px;
}

.guide-faq strong {
  color: var(--ink);
}

.guide-faq code,
.manual-row code {
  color: #31515a;
  font-size: 12px;
}

@media (max-width: 800px) {
  .verification-row,
  .settings-status {
    grid-template-columns: 1fr;
  }

  .settings-status > div {
    border-right: 0;
    border-bottom: 1px solid var(--line);
  }

  .settings-status > div:last-child {
    border-bottom: 0;
  }

  .admin-toolbar {
    align-items: stretch;
    flex-direction: column;
  }

  .guide-heading {
    align-items: stretch;
    flex-direction: column;
  }

  .guide-badge {
    align-self: flex-start;
  }

  .manual-row {
    grid-template-columns: 1fr;
    gap: 5px;
  }
}

/* Operations console: dense, calm, and easy to scan on desktop. */
.view#view-admin { padding-top: 28px; }
.view#view-admin .section-heading { margin: 0 0 22px; }
.view#view-admin .section-heading h3 { font-size: 28px; letter-spacing: 0; }
.admin-tabs { gap: 0; margin: 0 -2px 24px; padding: 0 2px; overflow-x: auto; flex-wrap: nowrap; }
.admin-tabs .tab { min-height: 48px; padding: 0 18px; border-bottom: 3px solid transparent; white-space: nowrap; font-size: 14px; font-weight: 600; }
.admin-tabs .tab:hover { color: var(--ink); background: #f0f5f4; }
.admin-tabs .tab.active { color: var(--accent); border-bottom-color: var(--accent); background: transparent; }
.admin-content { gap: 18px; }
.admin-content > .table-wrap { box-shadow: 0 8px 22px rgba(19,39,46,.045); }
.admin-content table { min-width: 860px; }
.admin-content th { position: sticky; top: 0; z-index: 1; padding: 15px 18px; background: #f2f6f5; color: #53656b; font-size: 11px; }
.admin-content td { padding: 16px 18px; font-size: 14px; }
.admin-content tbody tr:hover td { background: #f6fbfa; }
.admin-form { padding: 22px; gap: 16px; background: var(--surface); box-shadow: 0 8px 22px rgba(19,39,46,.045); }
.admin-form label { color: #52636a; font-weight: 600; }
.admin-form input, .admin-form select { min-height: 44px; border-color: #cdd9db; }
.admin-form input:focus, .admin-form select:focus { border-color: var(--accent); box-shadow: 0 0 0 3px rgba(11,122,117,.1); }
.admin-toolbar { box-shadow: 0 8px 22px rgba(19,39,46,.045); }
.summary-strip { background: var(--surface); box-shadow: 0 8px 22px rgba(19,39,46,.045); padding: 18px 20px; gap: 0; }
.summary-strip span { flex: 1 1 140px; padding: 0 18px; border-right: 1px solid var(--line); }
.summary-strip span:first-child { padding-left: 0; }
.summary-strip span:last-child { border-right: 0; }
.summary-strip strong { display: block; margin: 4px 0 0; color: var(--ink); font-size: 19px; }
td.admin-action-cell { display: table-cell; vertical-align: middle; }
.admin-action-cell .small-button { min-height: 32px; padding: 5px 11px; font-weight: 650; }
.admin-user-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 7px; min-width: 154px; }
.inline-discount { display: grid; grid-template-columns: 96px auto; align-items: center; gap: 7px; min-width: 150px; }
.inline-discount .discount-input { position: relative; }
.inline-discount .discount-input input { width: 96px; padding-right: 24px; text-align: right; }
.inline-discount .discount-input span { position: absolute; right: 9px; top: 50%; transform: translateY(-50%); color: var(--muted); pointer-events: none; }
.inline-discount .subline { grid-column: 1 / -1; margin-top: -2px; white-space: nowrap; }
.plan-progress { margin: 18px 0 24px; padding: 18px 20px; border: 1px solid var(--line); background: var(--surface); }
.plan-progress.compact { min-width: 240px; margin: 0; padding: 11px 12px; }
.topup-credit-hint { margin: 0; padding: 10px 12px; border: 1px solid #e4c889; border-radius: 6px; background: #fffaf0; color: #7a4c08; font-size: 13px; font-weight: 650; }
.plan-option { align-items: flex-start; }
.plan-option small { display: block; margin-top: 3px; }
.plan-option .plan-price { color: var(--ink); font-weight: 650; }
.progress-heading, .progress-meta, .progress-submeta { display: flex; justify-content: space-between; align-items: center; gap: 12px; }
.progress-heading { margin-bottom: 10px; font-size: 14px; }
.progress-heading span, .progress-meta, .progress-submeta { color: var(--muted); font-size: 12px; }
.progress-track { height: 8px; overflow: hidden; border-radius: 99px; background: #e8efee; }
.progress-track i { display: block; height: 100%; border-radius: inherit; background: var(--accent); }
.progress-meta { margin-top: 9px; color: var(--ink); }
.progress-submeta { margin-top: 5px; font-size: 11px; }
.progress-submeta .warn { color: var(--danger); }
.empty-progress { display: flex; justify-content: space-between; }
.empty-progress div { display: flex; justify-content: space-between; width: 100%; gap: 16px; }
.empty-progress span { color: var(--muted); font-size: 12px; }
.button, .small-button, .icon-button, .tab, .nav-item { transition: background-color .14s ease, border-color .14s ease, color .14s ease, transform .14s ease, box-shadow .14s ease; }
.button:active, .small-button:active, .icon-button:active, .tab:active, .nav-item:active { transform: translateY(1px); }
.button:focus-visible, .small-button:focus-visible, .icon-button:focus-visible, .tab:focus-visible, .nav-item:focus-visible { box-shadow: 0 0 0 3px rgba(11,122,117,.15); }
.admin-content > .table-wrap, .admin-form { box-shadow: none; }
@media (max-width: 800px) {
  .view#view-admin .section-heading h3 { font-size: 23px; }
  .admin-tabs .tab { padding: 0 14px; }
  .summary-strip span { flex-basis: 50%; padding: 10px 12px; border-right: 0; border-bottom: 1px solid var(--line); }
  .summary-strip span:first-child { padding-left: 12px; }
  .summary-strip span:nth-last-child(-n+2) { border-bottom: 0; }
  .inline-discount { grid-template-columns: 96px auto; }
  .plan-progress { padding: 16px; }
  .plan-progress.compact { min-width: 220px; }
}

.channel-actions { min-width: 140px; }
#channel-action-description { overflow-wrap: anywhere; line-height: 1.65; }
#channel-action-dialog { max-height: calc(100dvh - 32px); overflow-y: auto; }
#channel-action-dialog .button { min-width: 100px; }
@media (max-width: 600px) {
  .channel-actions .small-button, #channel-action-dialog .button { min-height: 44px; }
}

#media-form .form-actions { display:flex; flex-wrap:wrap; gap:12px; }
#media-form { margin-bottom:24px; }
#media-form textarea { font:inherit; width:100%; min-height:80px; }
.media-choice-field { min-width:0; margin:0; padding:0; border:0; }
.media-choice-field legend { margin-bottom:8px; color:var(--muted); font-size:13px; }
.media-choice-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
.media-choice-grid-three { grid-template-columns:repeat(3,minmax(0,1fr)); }
.media-choice-grid-four { grid-template-columns:repeat(4,minmax(0,1fr)); }
.media-choice-grid-six { grid-template-columns:repeat(6,minmax(0,1fr)); }
.media-choice-grid.media-art-ratios { grid-template-columns:repeat(3,minmax(0,1fr)); }
.media-art-ratios small { font-size:12px; font-weight:400; color:inherit; }
@media (max-width:600px) { .media-choice-grid.media-art-ratios { grid-template-columns:repeat(2,minmax(0,1fr)); } }
.media-choice-grid label { position:relative; min-width:0; cursor:pointer; }
.media-choice-grid input { position:absolute; width:1px; height:1px; min-height:0; margin:-1px; overflow:hidden; opacity:0; pointer-events:none; }
.media-choice-grid span { display:grid; place-items:center; min-height:44px; padding:9px 12px; border:1px solid var(--line); border-radius:6px; background:var(--surface); color:var(--ink); font-size:13px; font-weight:650; text-align:center; transition:background-color .14s ease,border-color .14s ease,color .14s ease,transform .14s ease,box-shadow .14s ease; }
.media-choice-grid label:hover span { border-color:#91bdb9; background:#f7fbfa; color:var(--accent-dark); }
.media-choice-grid input:checked + span { border-color:var(--accent); background:#eaf7f4; color:var(--accent-dark); box-shadow:inset 0 0 0 1px var(--accent); }
.media-choice-grid input:focus-visible + span { outline:3px solid rgba(11,122,117,.28); outline-offset:2px; }
.media-choice-grid label:active span { transform:translateY(1px); }
.media-choice-grid input:disabled + span { cursor:not-allowed; opacity:.55; transform:none; }
.media-prompt-tools { display:flex; align-items:center; flex-wrap:wrap; gap:10px; }
.media-prompt-tools > span { margin-right:auto; font-weight:600; }
.media-prompt-tools .button { min-height:44px; }
#media-quote { padding:14px 16px; border:1px solid #b9ded4; border-radius:6px; background:#f0faf6; font-variant-numeric:tabular-nums; }
.media-upload { padding:14px 0; border-top:1px solid var(--line); }
.media-upload input[type=file] { max-width:100%; min-height:44px; }
.media-upload-item { display:flex; align-items:center; gap:12px; flex-wrap:wrap; margin:10px 0; }
.media-upload-item img { width:80px; height:64px; object-fit:cover; border-radius:6px; }
.media-upload-item audio { max-width:100%; }
.media-upload-item span { overflow-wrap:anywhere; flex:1; min-width:100px; }
.gallery-intro { margin:6px 0 0; font-size:13px; }
.gallery-filters { display:flex; gap:2px; margin-bottom:18px; border-bottom:1px solid var(--line); }
.gallery-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.gallery-item { min-width:0; margin:0; background:var(--surface); border:1px solid var(--line); }
.gallery-item > a { display:block; color:inherit; }
.gallery-item img,.gallery-item video { display:block; width:100%; aspect-ratio:16/10; object-fit:cover; background:#e8eeee; }
.gallery-caption { display:flex; justify-content:space-between; align-items:start; gap:12px; padding:14px 15px; }
.gallery-caption strong { min-width:0; overflow-wrap:anywhere; font-size:14px; }
.gallery-caption span { flex:none; color:var(--muted); font-size:12px; }
.gallery-empty { grid-column:1/-1; padding:56px 20px; text-align:center; border:1px solid var(--line); background:var(--surface); }
.gallery-empty strong { font-size:18px; }
.gallery-empty p { color:var(--muted); }
.admin-media-preview { width:120px; height:76px; display:grid; place-items:center; overflow:hidden; background:#edf1f1; color:var(--muted); }
.admin-media-preview img,.admin-media-preview video { width:100%; height:100%; object-fit:cover; }
.gallery-title-input { min-width:180px; }
.upstream-balance { display:grid; gap:2px; min-width:150px; font-variant-numeric:tabular-nums; }
.upstream-balance strong { color:var(--ok); font-size:15px; }
.upstream-balance small { color:var(--muted); white-space:normal; line-height:1.35; }
.upstream-balance.unavailable strong { color:var(--muted); }
@media (max-width:1000px) { .gallery-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:600px) { .gallery-grid { grid-template-columns:1fr; } .gallery-caption { align-items:center; } }
@media (max-width:600px) {
  .media-choice-grid-three,.media-choice-grid-four,.media-choice-grid-six { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .media-choice-grid span { min-height:46px; padding:10px 8px; }
}
@media (prefers-reduced-motion:reduce) { .media-choice-grid span { transition:none; } }

/* Sidebar navigation: compact labels and consistent outline icons. */
.sidebar { padding:24px 12px 18px; }
.sidebar .brand-mark.compact { margin:0 8px 30px; gap:10px; }
.sidebar #main-nav { gap:5px; }
#main-nav .nav-item { display:flex; align-items:center; gap:11px; min-height:46px; padding:11px 12px; border:1px solid transparent; border-radius:6px; color:#b7c9cc; font-size:14px; font-weight:500; line-height:1.5; }
#main-nav .nav-icon { flex:none; width:19px; height:19px; color:#8eaeb2; }
#main-nav .nav-item span { min-width:0; }
#main-nav .nav-item:hover { background:#1b333d; color:#f1f8f8; }
#main-nav .nav-item:hover .nav-icon { color:#c3e8e2; }
#main-nav .nav-item.active { background:#d9efeb; border-color:#c0e2dc; color:#123c3a; font-weight:650; }
#main-nav .nav-item.active .nav-icon { color:#096e66; }
#main-nav .nav-item:focus-visible { outline:2px solid #80d5c6; outline-offset:2px; box-shadow:none; }
#main-nav .nav-item[data-view="keys"], #main-nav .nav-item[data-view="downloads"] { margin-top:13px; }
.sidebar-foot { margin-top:auto; padding:18px 8px 0; border-top-color:#2a414a; }
.sidebar-foot #user-label { overflow:hidden; text-overflow:ellipsis; }
@media (min-width:801px) { .sidebar { position:sticky; top:0; height:100dvh; min-height:0; overflow-y:auto; } }
@media (max-width:800px) { .sidebar { width:252px; height:100dvh; min-height:0; overflow-y:auto; } }
@media (prefers-reduced-motion:reduce) { #main-nav .nav-item:active { transform:none; } }
.sidebar-foot { flex-wrap:wrap; gap:10px; }
.sidebar-actions { display:flex; align-items:center; flex-wrap:wrap; gap:14px; }
.sidebar-actions .text-button { min-height:36px; }

.gallery-admin-actions { padding:0 15px 14px; display:flex; justify-content:flex-end; }
.gallery-admin-actions button { min-height:44px; min-width:96px; }

/* Wallet, creation flow, and operations grouping. */
.section-intro { margin: 6px 0 0; font-size: 13px; }
.wallet-topup-grid { display: grid; grid-template-columns: minmax(280px, .82fr) minmax(400px, 1.18fr); gap: 18px; align-items: stretch; }
.wallet-topup-grid > .panel { min-width: 0; }
.wallet-topup-grid .payment-result { margin: 0; min-height: 100%; display: grid; align-items: center; }
.wallet-topup-grid .payment-result.hidden { display: none; }
.wallet-topup-grid + .recharge-layout { grid-template-columns: 1fr; margin-top: 18px; }
.payment-result { border-color: #9ccdc4; background: #f0faf7; }
.enterprise-recharge > .payment-result { margin-top: 18px; }
.payment-layout { min-width: 0; }
.payment-details { overflow-wrap: anywhere; }
.payment-order-label { display: block; margin-bottom: 3px; color: var(--muted); font-size: 11px; font-weight: 700; }
.media-flow-guide { display: flex; align-items: center; gap: 10px; margin: 0 0 16px; padding: 11px 14px; border: 1px solid var(--line); background: #f7fafa; color: var(--muted); font-size: 12px; }
.media-flow-guide span { display: inline-flex; align-items: center; gap: 7px; white-space: nowrap; }
.media-flow-guide b { display: grid; place-items: center; width: 22px; height: 22px; border-radius: 50%; background: #dcefeb; color: var(--accent-dark); font-size: 11px; }
.media-flow-guide i { color: #8ca9a8; font-style: normal; }
.media-task-state { display: inline-flex; align-items: center; gap: 5px; font-weight: 650; }
.media-task-state::before { content: ''; width: 7px; height: 7px; border-radius: 50%; background: #8ba4a5; }
.media-task-state.good { color: var(--ok); }
.media-task-state.good::before { background: var(--ok); }
.media-task-state.bad { color: var(--danger); }
.media-task-state.bad::before { background: var(--danger); }
#media-tasks progress { display: block; width: min(160px, 100%); height: 7px; margin-top: 6px; accent-color: var(--accent); }
.recovery-actions { display: flex; flex-wrap: wrap; gap: 8px; }
.recovery-status { display: flex; align-items: center; flex-wrap: wrap; gap: 12px; margin-block: 12px; }
.recovery-status p:empty { display: none; }
#media-submission p { margin-block: 0 12px; }
#session-expired a { display: inline-flex; align-items: center; min-height: 44px; margin-inline-start: 12px; color: inherit; font-weight: 700; }
#view-media button, #view-media td a, #view-usage .request-copy { min-height: 44px; }
#view-media td a { display: inline-flex; align-items: center; }
#view-media td { white-space: normal; overflow-wrap: anywhere; }
#view-media td:nth-child(4) { min-width: 180px; max-width: 32ch; }
.request-copy { display: block; margin-top: 4px; }
.usage-advice { max-width: 36ch; white-space: normal; overflow-wrap: anywhere; }
@media (max-width: 600px) {
  #view-media td:nth-child(4) { min-width: 0; max-width: none; }
}
.admin-tabs { align-items: stretch; gap: 14px; padding-bottom: 8px; }
.admin-tab-group { display: inline-flex; align-items: center; gap: 2px; padding: 4px; border: 1px solid var(--line); background: #f8fbfa; flex: none; }
.admin-tab-label { padding: 0 8px; color: var(--muted); font-size: 11px; font-weight: 700; letter-spacing: .04em; white-space: nowrap; }
.admin-tab-group .tab { min-height: 40px; padding: 0 12px; border-bottom-width: 2px; }
.video-channel-summary { margin-bottom: 0; }
.video-key-quota { min-width: 150px; display: grid; gap: 5px; }
.video-key-quota progress { width: 100%; height: 7px; accent-color: var(--accent); }
.video-key-quota small { color: var(--muted); font-variant-numeric: tabular-nums; }
.video-key-actions { min-width: 250px; max-width: 360px; }
.video-key-more-actions { min-width: 66px; }
.video-key-more-actions summary { cursor: pointer; color: var(--muted); font-size: 12px; padding: 6px 4px; }
.video-key-more-actions[open] { padding: 4px; border: 1px solid var(--line); background: var(--surface); }
.video-price-panel { display: grid; grid-template-columns: minmax(200px, .8fr) minmax(320px, 1.2fr); gap: 18px; padding: 18px 20px; border: 1px solid var(--line); background: var(--surface); }
.video-price-panel > div { min-width: 0; }
.video-price-panel strong { display: block; margin: 2px 0 4px; font-size: 21px; }
.video-price-panel .admin-note { margin: 0; }
#chat-quota { display: inline-flex; align-items: center; gap: 6px; width: fit-content; padding: 3px 8px; border-radius: 999px; background: #edf5f3; color: #356761; }
#chat-quota[data-state="warning"] { background: #fff7e6; color: #7a4c08; }
#chat-quota[data-state="blocked"] { background: #fcefed; color: var(--danger); }
#view-chat .chat-history-item { display: grid; gap: 3px; }
#view-chat .chat-history-item span { overflow: hidden; text-overflow: ellipsis; }
#view-chat .chat-history-item small { color: var(--muted); font-size: 11px; font-weight: 400; }
#view-chat .chat-suggestion { text-align: left; }

@media (max-width: 920px) {
  .wallet-topup-grid { grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); }
  .admin-tabs { gap: 8px; }
  .admin-tab-label { display: none; }
}

@media (min-width: 1001px) {
  .admin-tabs { flex-wrap: wrap; overflow-x: visible; gap: 8px; }
}

@media (max-width: 800px) {
  .wallet-topup-grid { grid-template-columns: 1fr; }
  .wallet-topup-grid .payment-result { min-height: 0; }
  .media-flow-guide { overflow-x: auto; }
  .media-flow-guide i { flex: none; }
  .admin-tabs { display: flex; overflow-x: auto; flex-wrap: nowrap; margin-right: -16px; padding-right: 16px; }
  .admin-tab-group { flex: none; }
  .video-price-panel { grid-template-columns: 1fr; }
}

@media (max-width: 600px) {
  #view-media #media-tasks .table-wrap { overflow: visible; border: 0; background: transparent; }
  #view-media #media-tasks table { display: block; min-width: 0; }
  #view-media #media-tasks thead { display: none; }
  #view-media #media-tasks tbody { display: grid; gap: 10px; }
  #view-media #media-tasks tr { display: grid; gap: 8px; padding: 14px; border: 1px solid var(--line); background: var(--surface); }
  #view-media #media-tasks td { display: grid; grid-template-columns: 92px minmax(0, 1fr); gap: 8px; padding: 0; border: 0; white-space: normal; }
  #view-media #media-tasks td::before { content: attr(data-label); color: var(--muted); font-size: 11px; font-weight: 700; }
  #view-media #media-tasks td > * { min-width: 0; }
  #view-chat .chat-toolbar { display: grid; grid-template-columns: minmax(0, 1fr) auto; }
  #view-chat .chat-tools { grid-column: 1 / -1; }
  #view-chat .chat-tools button { flex: 1; }
}

.operations-toolbar label { display: flex; align-items: center; gap: 10px; color: var(--ink); font-size: 13px; }
.operations-toolbar select { width: auto; min-width: 126px; }
#admin-content { min-width: 0; }
#admin-content .summary-strip strong { font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
@media (max-width: 600px) { .operations-toolbar { align-items: stretch; flex-direction: column; } .operations-toolbar label { justify-content: space-between; } }

#media-tasks [data-media-download] { min-height: 44px; min-width: 96px; }

/* Agnes subscription extends the existing compact account surfaces. */
.agnes-plan-panel { margin-block: 24px; }
.agnes-plan-panel p { max-width: 75ch; line-height: 1.65; }
.agnes-plan-heading { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin-block: 12px; }
.agnes-plan-heading > strong { font-size: 24px; font-variant-numeric: tabular-nums; }
.agnes-plan-heading small { font-size: 14px; font-weight: 400; }
.agnes-model-list { overflow-wrap: anywhere; }
.agnes-plan-panel button, [data-agnes-form] button, [data-agnes-action] { min-height: 44px; }
[data-agnes-form] fieldset { min-width: 0; display: flex; flex-wrap: wrap; gap: 12px; }
[data-agnes-form] input:not([type=checkbox]) { max-width: 100%; }

/* Unified account overview: distinct money and request entitlements. */
.account-summary{display:grid;grid-template-columns:1.15fr 1fr 1fr;border:1px solid var(--line);border-radius:8px;background:var(--surface)}
.account-summary>section{min-width:0;padding:22px}
.account-summary>section+section{border-left:1px solid var(--line)}
.account-summary h3{margin:0 0 14px;font-size:16px}
.account-summary p{margin:8px 0;font-size:13px}
.account-amount{display:block;font-size:30px;line-height:1.3;font-variant-numeric:tabular-nums;color:var(--ink)}
.account-subscription-state{display:block;font-size:20px}
.account-facts{margin:12px 0;font-size:13px}
.account-facts div{display:flex;gap:12px;justify-content:space-between;margin:7px 0}
.account-facts dt{color:var(--muted)}
.account-facts dd{margin:0;text-align:right;overflow-wrap:anywhere}
.account-summary .balance-actions{display:flex;flex-wrap:wrap;gap:8px}
.account-summary .balance-history{display:grid;gap:5px}
.account-meta{display:flex;flex-wrap:wrap;align-items:center;gap:14px 24px;padding:18px 0;font-size:12px}
.account-meta .token-discount-summary{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px}
.account-meta #token-discount{font-size:24px;color:#075b58}
.account-meta .copy-line{min-width:0;max-width:100%}
.account-meta code{overflow-wrap:anywhere;white-space:normal}
.account-tabs{display:flex;gap:6px;border-bottom:1px solid var(--line);margin:8px 0 20px}
.account-tabs button{flex:1;max-width:200px;min-height:48px;border:0;border-bottom:2px solid transparent;background:transparent;color:var(--muted);font:inherit;cursor:pointer;padding:10px 12px}
.account-tabs button[aria-selected=true]{border-bottom-color:#075b58;color:#075b58;font-weight:750;background:#eaf4f1}
.account-tabs button:hover{background:#edf2ef}
.account-tabs button:focus-visible,.account-details>summary:focus-visible{outline:2px solid #075b58;outline-offset:3px}
#view-overview [role=tabpanel][hidden]{display:none!important}
.account-intro{max-width:72ch;color:var(--muted);font-size:13px;margin:0 0 18px}
.account-details{margin-top:24px;border-top:1px solid var(--line)}
.account-details>summary{padding:15px 0;min-height:48px;cursor:pointer;font-weight:650}
.account-details .price-comparison{margin-top:0}
.account-details .enterprise-offer{margin-bottom:16px}
.enterprise-lead-details #enterprise-lead-form{max-width:720px}
#account-panel-wallet .enterprise-recharge-grid{grid-template-columns:minmax(0,720px)}
#account-panel-orders .small-button,#account-panel-subscriptions .button,#account-panel-wallet .button,.account-summary .button,.account-summary .text-button{min-height:44px}
#account-orders td{vertical-align:top}
#account-order-detail{margin-top:18px;overflow-wrap:anywhere}

@media(max-width:600px){.account-summary{grid-template-columns:1fr}.account-summary>section{padding:18px}.account-summary>section+section{border-left:0;border-top:1px solid var(--line)}.account-meta{display:grid;gap:12px}.account-tabs button{padding:10px 6px;font-size:14px}.account-facts{max-width:320px}.account-summary .balance-history{font-size:12px}}

/* Purchase comparison: one place to choose, details only when requested. */
.account-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px}
.account-heading h3{margin:0;font-size:20px}.account-heading p{margin:6px 0 0;font-size:13px}
.account-heading .text-button{min-height:44px;flex-shrink:0}
.account-summary{grid-template-columns:1fr 1fr 1fr;border-radius:8px}
.account-summary>section{padding:16px 20px}
.account-summary-wallet{grid-column:auto}
.account-summary h3{margin-bottom:8px;font-size:13px;color:var(--muted)}
.account-summary .account-amount{font-size:24px}.account-summary .account-subscription-state{font-size:18px}
.account-summary .balance-actions{gap:8px;margin-top:8px}
.account-summary .button{padding:5px 10px;font-size:12px}
.account-summary p{margin:5px 0;font-size:12px}
.account-summary small{font-size:12px;color:var(--muted)}
.account-summary .account-facts{margin:6px 0}.account-summary .account-facts div{margin:4px 0;display:block}.account-summary .account-facts dd{display:inline;margin-left:6px}.account-summary .account-facts dt{display:inline}
.account-summary>section+section{border-left:1px solid var(--line);border-top:0}
.account-tabs{margin-top:20px;margin-bottom:24px}
.purchase-heading h3{margin:0 0 8px;font-size:20px}.purchase-heading p{margin:0 0 20px;font-size:13px;line-height:1.65;max-width:72ch}
.offer-comparison{border-top:1px solid var(--line)}
.offer-row{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr) auto;align-items:center;gap:20px;padding:20px 0;border-bottom:1px solid var(--line)}
.offer-row h4{margin:0 0 6px;font-size:16px}.offer-row p{margin:0;font-size:12px;color:var(--muted);line-height:1.6}
.offer-row .button{min-width:120px;min-height:44px}
.offer-price strong{display:block;font-size:18px;font-variant-numeric:tabular-nums}.offer-price small{display:block;color:var(--muted);font-size:12px;margin-top:6px}
.offer-row.is-selected .button,.wallet-choice [aria-pressed=true]{background:var(--ink);color:var(--surface);border-color:var(--ink)}
.purchase-note{font-size:12px;color:var(--muted);line-height:1.65;margin:14px 0 0}
.purchase-detail{margin:28px 0 0;padding:24px 0 0;border-top:1px solid var(--line);scroll-margin-top:20px}
.purchase-detail>h4{font-size:18px;margin:0 0 12px}.purchase-detail p{font-size:13px;line-height:1.65;max-width:75ch}
.purchase-detail:focus{outline:none}.purchase-detail:focus-visible{outline:2px solid var(--ink);outline-offset:6px}
#view-overview [hidden]{display:none!important}
.purchase-rules{margin:12px 0 16px}.purchase-rules summary{cursor:pointer;min-height:44px;display:flex;align-items:center;text-decoration:underline;text-underline-offset:4px;font-size:13px}
.wallet-choice{display:flex;gap:8px;margin-bottom:20px}.wallet-choice .button{min-height:44px}
#account-panel-wallet .wallet-topup-grid{grid-template-columns:minmax(0,540px) minmax(0,1fr)}
#account-panel-wallet .form-stack.panel{padding:20px;background:transparent;border:1px solid var(--line);box-shadow:none}
#account-panel-wallet .enterprise-recharge{margin:0;padding:0;border:0}
#account-panel-wallet .enterprise-recharge-heading{margin-bottom:16px}
#account-panel-wallet .enterprise-recharge-heading h3{font-size:18px}
#account-panel-wallet .enterprise-recharge-heading p{font-size:13px;line-height:1.65}
#account-panel-wallet .enterprise-formula{background:transparent;color:var(--ink);padding:0;text-align:left}
#account-panel-wallet .enterprise-formula strong{font-size:22px}
.account-connection .account-meta{padding-top:0;gap:10px 24px}
.account-connection .balance-history{display:flex;flex-wrap:wrap;gap:8px 24px;font-size:12px;color:var(--muted);padding-bottom:16px}
.offer-comparison button:focus-visible,.wallet-choice button:focus-visible,.purchase-rules summary:focus-visible{outline:2px solid var(--ink);outline-offset:3px}
@media(max-width:1000px){.account-summary{grid-template-columns:1fr 1fr 1fr}.account-summary-wallet{grid-column:auto}.offer-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px 16px}.offer-row>.button{grid-column:2;justify-self:start}.offer-price{grid-column:2;grid-row:1}}
@media(max-width:600px){.account-heading{margin-bottom:12px}.account-heading h3{font-size:18px}.account-heading p{font-size:12px}.account-summary{grid-template-columns:1fr}.account-summary>section{padding:14px 16px}.account-summary>section+section{border-left:0;border-top:1px solid var(--line)}.account-summary>section{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 12px;align-items:center}.account-summary h3{margin:0}.account-summary .account-amount{font-size:22px}.account-summary p,.account-summary .account-facts,.account-summary #agnes-account-summary{grid-column:1/-1}.account-summary .balance-actions{grid-column:1/-1;margin-top:4px}.account-summary .account-facts div{display:inline-block;margin:0 12px 0 0}.account-summary>section>.text-button{grid-column:2;grid-row:1;font-size:12px}.account-summary #agnes-account-summary{font-size:12px;display:flex;gap:6px 12px;flex-wrap:wrap;align-items:center}.account-summary .account-subscription-state{font-size:16px}.account-summary #agnes-account-summary p{margin:0}.account-tabs{margin-top:16px}.purchase-heading h3{font-size:18px}.offer-row{padding:18px 0;grid-template-columns:minmax(0,1fr) auto;column-gap:12px}.offer-row>div:first-child{grid-column:1/-1}.offer-row .offer-price{grid-column:1;grid-row:2}.offer-row>.button{grid-column:2;grid-row:2;min-width:100px;padding:8px 10px;font-size:12px}.offer-price strong{font-size:17px}.offer-row h4{font-size:16px}.offer-price small{max-width:23ch;line-height:1.6}.offer-row p{font-size:12px}.purchase-detail{padding-top:20px}.wallet-choice .button{flex:1}#account-panel-wallet .wallet-topup-grid{grid-template-columns:minmax(0,1fr)}#account-panel-wallet .form-stack.panel{padding:16px}.account-connection .account-meta #token-discount{font-size:24px}}

@media(min-width:601px) and (max-width:1000px){#account-panel-wallet .wallet-topup-grid{grid-template-columns:minmax(0,1fr)}}

.agnes-key-actions{width:100%;margin-top:8px}.agnes-key-actions button{min-height:44px}
