@import url("./fonts/space-grotesk/wght.css");
@import url("./fonts/noto-sans-sc/wght.css");

:root {
  --ui-font: "Space Grotesk Variable", "Noto Sans SC Variable", "Microsoft YaHei", sans-serif;
  --bg: #0e1116;
  --panel: #161b22;
  --panel-deep: #0e1116;
  --panel-dark: #0a0d11;
  --line: #2a313a;
  --line-soft: #202832;
  --text: #d8dee9;
  --muted: #6c7a89;
  --muted-2: #8fa1b3;
  --cyan: #88c0d0;
  --green: #a3be8c;
  --red: #bf616a;
  --amber: #ebcb8b;
  --orange: #d08770;
  --violet: #b48ead;
  color-scheme: dark;
}

* {
  box-sizing: border-box;
}

[hidden] {
  display: none !important;
}

html,
body {
  margin: 0;
  padding: 0;
  min-height: 100%;
}

html {
  zoom: 80%;
}

body {
  background: var(--bg);
  color: var(--text);
  font-family: var(--ui-font);
  font-size: 13px;
  user-select: text;
}

button,
input,
select,
textarea {
  font: inherit;
}

input,
textarea {
  user-select: text;
}

table,
td,
th,
.scroll,
.table-wrap,
.console,
.log,
.flow-list {
  user-select: text;
  -webkit-user-select: text;
}

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

.wrap,
.shell {
  max-width: 1500px;
  margin: 0 auto;
  padding: 14px;
}

.sub {
  margin: 4px 0 14px;
  color: var(--muted);
  font-size: 12px;
}

.workspace-banner {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 12px 0 14px;
  padding: 10px 12px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background:
    radial-gradient(circle at 12% 20%, rgba(136, 192, 208, 0.14), transparent 28%),
    linear-gradient(135deg, rgba(22, 27, 34, 0.96), rgba(10, 13, 17, 0.92));
}

.workspace-banner.is-pending {
  border-color: rgba(235, 203, 139, 0.52);
}

.workspace-banner.is-error {
  border-color: rgba(191, 97, 106, 0.72);
}

.workspace-banner b {
  display: block;
  font-size: 14px;
  color: var(--text);
}

.workspace-inventory-split {
  display: block;
  margin-top: 2px;
  color: #b9cadc;
  font-size: 11px;
  line-height: 1.45;
}

.workspace-switcher {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--muted-2);
  font-size: 12px;
  white-space: nowrap;
}

.workspace-switcher select {
  min-width: 180px;
}

.task-id-cell {
  overflow-wrap: anywhere;
  word-break: break-word;
  white-space: normal;
}

/* Task IDs are 37 unbroken characters and the queue table sits inside
   `minmax(0, 1fr)` grid columns, so the cell could collapse far below the table's
   760px min-width. `overflow-wrap: anywhere` then broke the ID after almost every
   character and each row grew into a ~37-line block. Reserving a floor keeps the
   wrap-don't-widen behaviour above while bounding it to a couple of lines. */
.task-id-cell {
  min-width: 240px;
}

@media (max-width: 900px) {
  .workspace-banner {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: start;
  }

  .workspace-banner > div {
    min-width: 0;
  }

  .workspace-inventory-split {
    white-space: normal;
    overflow-wrap: anywhere;
  }

  .workspace-banner .spacer {
    display: none;
  }

  .workspace-banner > .badge {
    grid-column: 2;
    grid-row: 1;
  }

  .workspace-switcher {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    width: 100%;
  }

  .workspace-switcher select {
    width: 100%;
    min-width: 0;
  }

  .workspace-banner > [data-workspace-purge] {
    grid-column: 1;
    grid-row: 3;
    justify-self: start;
    margin: 0;
    white-space: nowrap;
  }

  .workspace-banner > a {
    grid-column: 2;
    grid-row: 3;
    justify-self: end;
    margin: 0;
    white-space: nowrap;
  }

}

.customer-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(320px, 0.8fr);
  gap: 14px;
  align-items: start;
}

.customer-workbench-page {
  display: grid;
  gap: 14px;
}

.customer-workbench-hero {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  padding: 14px 16px;
  border: 1px solid rgba(136, 192, 208, 0.24);
  border-radius: 12px;
  background:
    radial-gradient(circle at 8% 15%, rgba(136, 192, 208, 0.16), transparent 30%),
    linear-gradient(135deg, rgba(22, 27, 34, 0.95), rgba(10, 13, 17, 0.96));
}

.customer-workbench-hero h2 {
  margin-top: 4px;
  color: var(--text);
  font-size: 20px;
}

.customer-workbench-hero p {
  max-width: 720px;
  margin: 6px 0 0;
  color: var(--muted-2);
  line-height: 1.65;
}

.customer-workbench-metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr)) minmax(400px, 1fr);
  gap: 10px;
}

.customer-metric-card {
  min-height: 88px;
  padding: 12px 14px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background:
    linear-gradient(180deg, rgba(22, 27, 34, 0.98), rgba(10, 13, 17, 0.9));
}

.customer-metric-card span,
.customer-metric-card small {
  display: block;
  color: var(--muted-2);
}

.customer-metric-card b {
  display: block;
  margin-top: 6px;
  color: var(--cyan);
  font-size: 24px;
  line-height: 1.1;
}

.customer-metric-card small {
  margin-top: 7px;
  color: var(--muted);
  font-size: 11px;
}

.customer-workbench-shell {
  display: grid;
  grid-template-columns: minmax(280px, 0.85fr) minmax(420px, 1.45fr) minmax(260px, 0.75fr);
  gap: 14px;
  align-items: start;
}

.customer-index-panel,
.customer-detail-panel,
.customer-side-panel {
  min-width: 0;
}

.customer-side-panel {
  display: grid;
  gap: 14px;
}

.customer-panel-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
}

.customer-search {
  width: 100%;
  margin-top: 12px;
}

.customer-card-list {
  display: grid;
  gap: 10px;
  max-height: 620px;
  margin-top: 12px;
  overflow: auto;
  padding-right: 4px;
}

.customer-card {
  display: grid;
  gap: 10px;
  padding: 12px;
  border: 1px solid var(--line-soft);
  border-radius: 12px;
  background: rgba(10, 13, 17, 0.5);
}

.customer-card.is-active {
  border-color: rgba(136, 192, 208, 0.68);
  box-shadow: 0 0 0 1px rgba(136, 192, 208, 0.2) inset;
}

.customer-card-main b,
.customer-card-main span,
.customer-card-foot span {
  display: block;
}

.customer-card-main b {
  color: var(--text);
  font-size: 14px;
}

.customer-card-main span {
  margin-top: 4px;
  color: var(--muted-2);
}

.customer-card-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.customer-card-badges em {
  padding: 3px 7px;
  border: 1px solid rgba(136, 192, 208, 0.18);
  border-radius: 999px;
  background: rgba(136, 192, 208, 0.08);
  color: var(--cyan);
  font-style: normal;
  font-size: 11px;
}

.customer-card-badges em.warn {
  border-color: rgba(235, 203, 139, 0.22);
  background: rgba(235, 203, 139, 0.09);
  color: var(--amber);
}

.customer-card-foot {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

.customer-empty {
  padding: 16px;
  border: 1px dashed var(--line);
  border-radius: 12px;
  color: var(--muted-2);
  background: rgba(10, 13, 17, 0.38);
}

.customer-detail-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  padding-bottom: 12px;
  border-bottom: 1px solid var(--line-soft);
}

.customer-detail-head h3 {
  margin-top: 4px;
  color: var(--text);
  font-size: 18px;
}

.customer-profile-grid,
.customer-resource-grid,
.customer-module-grid {
  display: grid;
  gap: 10px;
  margin-top: 12px;
}

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

.customer-profile-grid span,
.customer-resource-grid span {
  padding: 10px 12px;
  border: 1px solid var(--line-soft);
  border-radius: 10px;
  background: rgba(10, 13, 17, 0.34);
}

.customer-profile-grid em,
.customer-resource-grid em,
.customer-resource-grid small {
  display: block;
  color: var(--muted);
  font-style: normal;
  font-size: 11px;
}

.customer-profile-grid b,
.customer-resource-grid b {
  display: block;
  margin-top: 5px;
  color: var(--text);
}

.customer-resource-grid {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

.customer-resource-grid b {
  color: var(--green);
  font-size: 18px;
}

.customer-section-title {
  margin-top: 16px;
  color: var(--cyan);
  font-weight: 700;
}

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

.customer-module-card {
  padding: 12px;
  border: 1px solid var(--line-soft);
  border-radius: 12px;
  background: rgba(10, 13, 17, 0.45);
}

.customer-module-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

.customer-module-card p {
  margin: 8px 0 0;
  color: var(--muted-2);
  line-height: 1.55;
}

.customer-module-metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  margin-top: 10px;
}

.customer-module-metrics span {
  padding: 8px;
  border-radius: 8px;
  background: rgba(22, 27, 34, 0.72);
}

.customer-module-metrics em,
.customer-module-metrics b {
  display: block;
  font-style: normal;
}

.customer-module-metrics em {
  color: var(--muted);
  font-size: 11px;
}

.customer-module-metrics b {
  margin-top: 4px;
  color: var(--amber);
}

.customer-timeline {
  display: grid;
  gap: 8px;
  margin-top: 10px;
}

.customer-timeline span {
  display: grid;
  grid-template-columns: 130px minmax(0, 1fr);
  gap: 10px;
  padding: 9px 10px;
  border: 1px solid var(--line-soft);
  border-radius: 9px;
  background: rgba(10, 13, 17, 0.3);
}

.customer-timeline b {
  color: var(--green);
}

.customer-timeline em {
  color: var(--muted-2);
  font-style: normal;
}

.customer-action-stack {
  display: grid;
  gap: 8px;
  margin-top: 10px;
}

.customer-action-stack a {
  justify-content: center;
}

.customer-action-note {
  display: grid;
  gap: 6px;
  margin-top: 12px;
  padding: 10px;
  border: 1px solid var(--line-soft);
  border-radius: 10px;
  background: rgba(10, 13, 17, 0.4);
}

.customer-action-note b {
  color: var(--green);
}

.customer-action-note span {
  color: var(--muted-2);
  line-height: 1.55;
}

.customer-billing-toolbar-group {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--muted-2);
}

.customer-billing-toolbar-group b {
  color: var(--text);
}

.customer-page-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin: 2px 0 0;
}

.customer-page-title h2 {
  margin: 0;
  color: #f4f8ff;
  font-size: 24px;
  letter-spacing:0;
}

.customer-breadcrumb {
  margin-top: 8px;
  color: var(--muted);
  font-size: 12px;
}

.customer-summary-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.customer-stat-note {
  margin-top: 3px;
  color: var(--muted);
  font-size: 10px;
}

.customer-billing-shell {
  grid-template-columns: minmax(330px, 0.92fr) minmax(560px, 1.58fr) minmax(300px, 0.82fr);
}

.customer-list-panel,
.customer-billing-detail,
.customer-billing-side > .card {
  border-color: var(--line);
  background: var(--panel);
  box-shadow: none;
}

.customer-search-wrap {
  position: relative;
  margin-top: 10px;
}

.customer-search-wrap .customer-search {
  margin-top: 0;
  padding-right: 34px;
}

.customer-search-wrap span {
  position: absolute;
  right: 12px;
  top: 50%;
  color: var(--muted);
  transform: translateY(-50%);
}

.customer-status-tabs {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0;
  overflow: hidden;
  border: 1px solid var(--line-soft);
  border-radius: 8px;
}

.customer-status-tabs button {
  border: 0;
  border-right: 1px solid var(--line-soft);
  border-radius: 0;
  background: rgba(12, 27, 44, 0.72);
}

.customer-status-tabs button:last-child {
  border-right: 0;
}

.customer-card-list {
  max-height: 430px;
}

.customer-card {
  border-color: rgba(48, 75, 103, 0.7);
  background: linear-gradient(135deg, rgba(12, 31, 50, 0.82), rgba(8, 20, 34, 0.88));
}

.customer-card.is-active {
  border-color: #0ea5ff;
  box-shadow: 0 0 0 1px rgba(14, 165, 255, 0.74) inset, 0 16px 32px rgba(14, 165, 255, 0.1);
}

.customer-card-head {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr) max-content;
  align-items: center;
  gap: 10px;
}

.customer-status {
  color: #6ee781;
  font-style: normal;
  font-size: 12px;
}

.customer-status.is-arrears {
  color: #ff6b6b;
}

.customer-card-badges em {
  border: 0;
  border-radius: 5px;
  background: rgba(20, 184, 166, 0.15);
}

.customer-card-badges em:nth-child(2) {
  background: rgba(34, 197, 94, 0.16);
  color: #88e36b;
}

.customer-card-badges em:nth-child(3) {
  background: rgba(59, 130, 246, 0.16);
  color: #60a5fa;
}

.customer-card-badges em.warn {
  background: rgba(245, 158, 11, 0.18);
  color: #fbbf24;
}

.customer-list-footer {
  display: grid;
  grid-template-columns: minmax(70px, 1fr) 130px max-content;
  align-items: center;
  gap: 10px;
  margin-top: 14px;
  padding-top: 12px;
  border-top: 1px solid var(--line-soft);
  color: var(--muted-2);
}

.customer-table-name b,
.customer-table-name span {
  display: block;
}

.customer-table-name b {
  color: var(--text);
}

.customer-table-name span {
  margin-top: 2px;
  color: var(--muted);
  font-size: 11px;
}

.customer-table tr.is-active td {
  background: rgba(136, 192, 208, 0.06);
}

.customer-pager {
  display: inline-flex;
  gap: 6px;
}

.customer-pager .is-active {
  border-color: #0ea5ff;
  color: #8bd3ff;
}

.customer-billing-detail {
  min-height: 560px;
}

.customer-billing-topline {
  padding-bottom: 14px;
  border-bottom: 1px solid var(--line-soft);
}

.customer-billing-topline .customer-detail-head {
  justify-content: flex-start;
  border-bottom: 0;
  padding-bottom: 10px;
}

.customer-billing-topline .customer-detail-head h3 {
  margin: 0 0 5px;
  font-size: 18px;
}

.customer-profile-grid span {
  background: rgba(9, 22, 38, 0.62);
}

.customer-section-title {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  color: #f4f8ff;
}

.customer-section-title small {
  color: var(--muted);
  font-weight: 500;
}

.customer-progress {
  display: block;
  height: 7px;
  overflow: hidden;
  border-radius: 999px;
  background: rgba(56, 76, 103, 0.72);
}

.customer-progress i {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: #48d7d1;
}

.customer-progress-green i {
  background: #76df68;
}

.customer-progress-blue i {
  background: #5b9dff;
}

.customer-progress-violet i {
  background: #a56cff;
}

.customer-consumption-list {
  display: grid;
  gap: 8px;
  margin-top: 10px;
}

.customer-consumption-row {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr) 160px 150px;
  align-items: center;
  gap: 12px;
  padding: 10px 12px;
  border: 1px solid var(--line-soft);
  border-radius: 8px;
  background: rgba(8, 21, 36, 0.58);
}

.customer-consumption-row b {
  color: var(--text);
}

.customer-consumption-row time,
.customer-consumption-row em {
  color: var(--muted-2);
  font-style: normal;
}

.customer-consumption-row em {
  text-align: right;
}

.customer-consumption-green {
  background: rgba(34, 197, 94, 0.18);
  color: #75dd64;
}

.customer-detail-link {
  display: inline-flex;
  margin-top: 14px;
  color: #1e96ff;
  font-weight: 700;
  text-decoration: none;
}

.customer-rule-head {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.customer-rule-body {
  display: grid;
  gap: 10px;
  margin-top: 12px;
  padding: 12px;
  border: 1px solid var(--line-soft);
  border-radius: 9px;
  background: rgba(7, 19, 33, 0.64);
  color: var(--muted-2);
  line-height: 1.7;
}

.customer-rule-body p {
  margin: 0;
}

.customer-rule-body b {
  color: #fbbf24;
}

@media (max-width: 1180px) {
  .customer-workbench-metrics,
  .customer-workbench-shell,
  .customer-profile-grid,
  .customer-resource-grid,
  .customer-module-grid {
    grid-template-columns: 1fr;
  }

  .customer-workbench-hero,
  .customer-card-foot {
    align-items: stretch;
    flex-direction: column;
  }
}

.workspace-options {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 14px;
}

.workspace-options button.is-active,
.customer-select-button.is-active {
  border-color: var(--green);
  color: var(--green);
  box-shadow: 0 0 0 1px rgba(163, 190, 140, 0.25) inset;
}

.customer-list-scroll {
  max-height: 520px;
}

.customer-detail-section {
  margin-top: 14px;
}

.process-manager-page {
  gap: 12px;
}

#page-processes.route.is-active {
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  gap: 12px;
}

.process-manager-toolbar {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 14px;
  margin: 0;
  padding: 10px 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel);
}

.process-manager-tabs {
  display: flex;
  align-items: center;
  gap: 6px;
}

.process-manager-tabs button,
.process-manager-refresh {
  margin: 0;
  white-space: nowrap;
}

.process-manager-tabs .is-active {
  border-color: var(--cyan);
  background: var(--cyan);
  color: #1c1f24;
  font-weight: 700;
}

.process-manager-tabs button:not(.is-active) {
  background: var(--panel-deep);
  color: var(--cyan);
}

.process-manager-stats {
  display: grid;
  grid-template-columns: repeat(4, minmax(72px, 1fr));
  justify-self: center;
  width: min(100%, 520px);
  min-height: 32px;
  color: var(--muted);
}

.process-manager-stats > span {
  display: flex;
  align-items: baseline;
  justify-content: center;
  gap: 6px;
  min-width: 0;
  padding: 0 12px;
  border-left: 1px solid var(--line-soft);
  white-space: nowrap;
}

.process-manager-stats > span:first-child {
  border-left: 0;
}

.process-manager-stats b {
  color: var(--text);
  font-size: 17px;
  line-height: 1;
}

.process-manager-stats small {
  color: var(--muted-2);
  font-size: 11px;
}

/* 僵尸项计数：正常为 0 时保持普通样式，不为 0 才变红，避免平时误报。 */
.process-stale-count.is-alert,
.process-stale-count.is-alert b {
  color: var(--red, #bf616a);
}

.process-manager-workspace {
  display: grid;
  grid-template-columns: minmax(320px, 380px) minmax(0, 1fr);
  gap: 12px;
  align-items: start;
}

.process-manager-section {
  margin: 0;
  padding: 0;
  overflow: hidden;
}

.process-manager-section .panel-head {
  min-height: 44px;
  margin: 0;
  padding: 10px 12px;
  border-bottom: 1px solid var(--line);
}

.process-manager-section .panel-head h3 {
  margin: 0;
  font-size: 14px;
}

.process-manager-section-head > span {
  text-align: right;
  white-space: nowrap;
}

.process-manager-error {
  margin: 8px 12px 0;
  padding: 7px 9px;
  border: 1px solid rgba(235, 203, 139, 0.38);
  border-radius: 4px;
  background: rgba(235, 203, 139, 0.08);
  color: var(--amber, #ebcb8b);
  font-size: 11px;
  line-height: 1.45;
}

.process-manager-error[hidden] {
  display: none;
}

.process-source-summary {
  display: flex;
  flex-wrap: wrap;
  gap: 5px 16px;
  min-height: 34px;
  padding: 8px 12px;
  border-bottom: 1px solid var(--line-soft);
  color: var(--muted-2);
  font-size: 10px;
  line-height: 1.5;
}

.process-source-summary span {
  white-space: nowrap;
}

.process-source-summary b {
  color: var(--text);
  font-size: 11px;
}

.process-source-summary .is-alert,
.process-source-summary .is-alert b {
  color: var(--amber, #ebcb8b);
}

.process-runtime-diagnostics {
  display: flex;
  flex-wrap: wrap;
  gap: 5px 16px;
  padding: 7px 12px;
  border-bottom: 1px solid rgba(235, 203, 139, 0.24);
  background: rgba(235, 203, 139, 0.05);
  color: var(--muted-2);
  font-size: 10px;
  line-height: 1.5;
}

.process-runtime-diagnostics[hidden] {
  display: none;
}

.process-runtime-diagnostics strong,
.process-runtime-diagnostics b {
  color: var(--amber, #ebcb8b);
}

.process-runtime-diagnostics span {
  white-space: nowrap;
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
}

.process-manager-list,
.container-manager-list {
  display: grid;
  gap: 0;
  overflow: visible;
}

.process-manager-list {
  overflow: visible;
}

.container-manager-row {
  display: grid;
  grid-template-areas:
    "identity status"
    "identity actions";
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 6px 10px;
  min-width: 0;
  min-height: 66px;
  padding: 10px 12px;
  border-top: 1px solid rgba(136, 192, 208, 0.14);
}

.container-manager-row:first-child {
  border-top: 0;
}

.container-manager-row.is-stopped {
  background: rgba(191, 97, 106, 0.035);
}

.container-manager-identity {
  grid-area: identity;
  min-width: 0;
}

.container-manager-title {
  display: flex;
  align-items: center;
  gap: 6px;
  min-width: 0;
}

.container-manager-title b {
  overflow: hidden;
  color: var(--text);
  font-size: 13px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.container-manager-title em {
  flex: 0 0 auto;
  padding: 1px 5px;
  border: 1px solid rgba(136, 192, 208, 0.32);
  border-radius: 3px;
  color: var(--cyan);
  font-size: 9px;
  font-style: normal;
  line-height: 14px;
}

.container-manager-identity .mono {
  display: block;
  overflow: hidden;
  margin-top: 4px;
  color: var(--muted);
  font-size: 10px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.container-manager-status {
  grid-area: status;
  justify-self: end;
}

.container-manager-actions {
  grid-area: actions;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
}

.container-manager-actions button {
  min-width: 48px;
  margin: 0;
}

.container-auto-restart {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin: 0;
  color: var(--muted-2);
  font-size: 11px;
  white-space: nowrap;
  cursor: pointer;
}

.container-auto-restart input {
  position: absolute;
  width: 1px;
  height: 1px;
  opacity: 0;
  pointer-events: none;
}

.container-auto-restart-switch {
  position: relative;
  width: 30px;
  height: 16px;
  border: 1px solid #4c566a;
  border-radius: 999px;
  background: var(--panel-deep);
  transition: border-color 140ms ease, background-color 140ms ease;
}

.container-auto-restart-switch::after {
  position: absolute;
  top: 2px;
  left: 2px;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: var(--muted-2);
  content: "";
  transition: transform 140ms ease, background-color 140ms ease;
}

.container-auto-restart input:checked + .container-auto-restart-switch {
  border-color: var(--cyan);
  background: rgba(136, 192, 208, 0.2);
}

.container-auto-restart input:checked + .container-auto-restart-switch::after {
  background: var(--cyan);
  transform: translateX(14px);
}

.container-auto-restart input:focus-visible + .container-auto-restart-switch {
  outline: 2px solid rgba(136, 192, 208, 0.78);
  outline-offset: 2px;
}

.container-auto-restart:has(input:disabled) {
  cursor: not-allowed;
  opacity: 0.58;
}

.container-manager-status .status-exited,
.container-manager-status .status-created {
  background: #4c566a;
  color: var(--text);
}

.container-manager-status .status-restarting,
.container-manager-status .status-paused,
.container-manager-status .status-removing {
  background: var(--amber);
  color: #1c1f24;
}

.container-manager-status .status-dead {
  background: var(--red);
  color: #fff;
}

.process-manager-columns,
.process-manager-row {
  display: grid;
  grid-template-columns: minmax(190px, 1.4fr) 78px minmax(105px, 0.8fr) minmax(125px, 0.8fr) 142px 54px;
  align-items: center;
  gap: 8px;
  min-width: 0;
}

.process-manager-columns {
  min-height: 30px;
  padding: 6px 12px;
  background: var(--panel-deep);
  color: var(--muted);
  font-size: 10px;
}

.process-manager-row {
  min-height: 48px;
  padding: 8px 12px;
  border-top: 1px solid rgba(136, 192, 208, 0.14);
}

.process-manager-row.is-active {
  border-left: 2px solid var(--cyan);
  padding-left: 10px;
  background: rgba(136, 192, 208, 0.025);
}

.process-manager-kind {
  min-width: 0;
}

.process-manager-kind b,
.process-manager-kind span {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.process-manager-kind b {
  color: var(--text);
  font-size: 12px;
}

.process-manager-kind span {
  margin-top: 2px;
  color: var(--muted);
  font-size: 10px;
}

.process-manager-status,
.process-manager-workspace-name,
.process-manager-progress,
.process-manager-time {
  min-width: 0;
  color: var(--muted-2);
  font-size: 11px;
}

.process-manager-workspace-name,
.process-manager-progress,
.process-manager-time {
  overflow-wrap: anywhere;
}

.process-manager-row > button {
  justify-self: end;
  min-width: 48px;
  margin: 0;
}

.process-manager-list > .empty-note,
.container-manager-list > .empty-note {
  padding: 18px 12px;
}

.registration-task-progress {
  width: 100%;
  margin-top: 10px;
  padding: 10px 12px 9px;
  border-top: 1px solid var(--line);
  background: rgba(10, 13, 17, 0.42);
}

.registration-task-progress-head,
.registration-task-progress-title,
.registration-task-progress-metrics {
  display: flex;
  align-items: center;
  gap: 9px;
  flex-wrap: wrap;
}

.registration-task-progress-head {
  justify-content: space-between;
  min-height: 24px;
  font-size: 12px;
}

.registration-task-progress-title b {
  color: var(--text);
  font-size: 13px;
}

.registration-task-progress-title strong {
  color: #eaf7ff;
  font-size: 15px;
}

.registration-task-progress-bar {
  position: relative;
  width: 100%;
  height: 14px;
  margin-top: 8px;
  overflow: hidden;
  border: 1px solid rgba(136, 192, 208, 0.26);
  border-radius: 4px;
  background: #090c10;
  box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.72);
}

.registration-task-progress-fill {
  position: absolute;
  inset: 0 auto 0 0;
  display: block;
  width: var(--value);
  max-width: 100%;
  background: linear-gradient(90deg, #ff5f6d 0%, #ffc45c 16%, #f6ee79 31%, #65df9b 47%, #5fd3ef 63%, #9382ff 80%, #ff69c8 94%, #ff5f6d 100%);
  background-size: 220% 100%;
  box-shadow: 0 0 10px rgba(95, 211, 239, 0.52);
  transition: width 240ms ease;
  animation: registration-rainbow-flow 1.25s linear infinite;
}

.registration-task-progress-fill::before {
  position: absolute;
  inset: 0;
  content: "";
  background: linear-gradient(110deg, transparent 15%, rgba(255, 255, 255, 0.58) 48%, transparent 78%);
  transform: translateX(-100%);
  animation: registration-progress-flash 1.25s ease-in-out infinite;
}

.registration-task-progress-fill::after {
  position: absolute;
  top: 50%;
  right: 1px;
  content: "\26a1";
  color: #ffffff;
  font-size: 13px;
  line-height: 1;
  text-shadow: 0 0 4px #ffffff, 0 0 8px #5fd3ef;
  transform: translateY(-50%);
}

.registration-task-progress.is-terminal .registration-task-progress-fill,
.registration-task-progress.is-terminal .registration-task-progress-fill::before {
  animation-play-state: paused;
}

.registration-task-progress-metrics {
  margin-top: 7px;
  color: var(--muted-2);
  font-size: 11px;
}

.registration-task-progress-metrics span {
  white-space: nowrap;
}

.registration-task-progress-metrics b {
  color: var(--text);
}

@keyframes registration-rainbow-flow {
  from { background-position: 100% 50%; }
  to { background-position: -100% 50%; }
}

@keyframes registration-progress-flash {
  0% { transform: translateX(-100%); }
  70%,
  100% { transform: translateX(120%); }
}

@media (prefers-reduced-motion: reduce) {
  .registration-task-progress-fill,
  .registration-task-progress-fill::before {
    animation: none;
  }
}

@media (max-width: 1200px) {
  .process-manager-workspace {
    grid-template-columns: minmax(0, 1fr);
  }

  .process-manager-task-section {
    order: -1;
  }

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

  .container-manager-row:nth-child(2) {
    border-top: 0;
  }

  .container-manager-row:nth-child(even) {
    border-left: 1px solid rgba(136, 192, 208, 0.14);
  }
}

@media (max-width: 820px) {
  .process-manager-toolbar {
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 10px;
  }

  .process-manager-stats {
    grid-column: 1 / -1;
    grid-row: 2;
    justify-self: stretch;
    width: 100%;
    padding-top: 8px;
    border-top: 1px solid var(--line-soft);
  }

  .process-manager-stats > span {
    padding: 0 6px;
  }

  .container-manager-list {
    grid-template-columns: minmax(0, 1fr);
  }

  .container-manager-row:nth-child(2) {
    border-top: 1px solid rgba(136, 192, 208, 0.14);
  }

  .container-manager-row:nth-child(even) {
    border-left: 0;
  }

  .process-manager-columns {
    display: none;
  }

  .process-source-summary {
    column-gap: 12px;
  }

  .process-runtime-diagnostics span {
    white-space: normal;
    overflow-wrap: anywhere;
  }

  .process-manager-row {
    grid-template-areas:
      "kind status"
      "workspace workspace"
      "progress time"
      "action action";
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 9px 14px;
    padding: 11px 12px;
  }

  .process-manager-row.is-active {
    padding-left: 10px;
  }

  .process-manager-kind {
    grid-area: kind;
  }

  .process-manager-status {
    grid-area: status;
  }

  .process-manager-workspace-name {
    grid-area: workspace;
  }

  .process-manager-progress {
    grid-area: progress;
  }

  .process-manager-time {
    grid-area: time;
  }

  .process-manager-row > button {
    grid-area: action;
    justify-self: start;
  }

  .process-manager-row [data-label] {
    display: grid;
    gap: 3px;
    justify-items: start;
  }

  .process-manager-row [data-label]::before {
    color: var(--muted);
    font-size: 9px;
    line-height: 1;
    content: attr(data-label);
  }
}

@media (max-width: 480px) {
  .process-manager-toolbar {
    padding: 10px;
  }

  .process-manager-tabs {
    gap: 4px;
  }

  .process-manager-tabs button {
    padding-right: 9px;
    padding-left: 9px;
  }

  .process-manager-stats {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    row-gap: 8px;
  }

  .process-manager-stats > span:nth-child(3) {
    border-left: 0;
  }

  .process-manager-row {
    grid-template-areas:
      "kind status"
      "workspace workspace"
      "progress progress"
      "time time"
      "action action";
  }

  .container-manager-row {
    grid-template-areas:
      "identity status"
      "actions actions";
  }
}


.finance-status {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 56px;
  padding: 3px 7px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 700;
}

.finance-status.is-ok {
  background: rgba(163, 190, 140, 0.12);
  color: var(--green);
}

.finance-status.is-warn {
  background: rgba(235, 203, 139, 0.12);
  color: var(--amber);
}

.finance-status.is-bad {
  background: rgba(191, 97, 106, 0.14);
  color: var(--red);
}

.finance-status.is-muted {
  background: rgba(143, 161, 179, 0.1);
  color: var(--muted-2);
}


#page-after-sales .after-sales-page {
  display: grid;
  gap: 14px;
}

/* 统计文字：跟在「已选 N」后面，可收缩、不与右侧按钮重叠 */
#page-after-sales .after-sales-scope-hint {
  flex: 1 1 auto;
  min-width: 0;
  margin-right: 8px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

/* 「已选 N」不再抢占整行剩余空间，交给统计文字 */
#page-after-sales .account-pool-utilities .account-pool-selection-count {
  flex: 0 0 auto;
  margin-right: 0;
}

/* 四组操作按钮，窄屏回落为两列 */
#page-after-sales [data-account-pool-action-layout="after-sales"] {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

@media (max-width: 1280px) {
  #page-after-sales [data-account-pool-action-layout="after-sales"] {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* 分组汇总行：比明细行重，作为账号列表的分节标题 */
.after-sales-group-row > td {
  border-top: 1px solid rgba(136, 192, 208, 0.22);
  background: rgba(136, 192, 208, 0.07);
  vertical-align: middle;
}

.after-sales-group-row.is-expanded > td {
  background: rgba(136, 192, 208, 0.13);
}

.after-sales-group-toggle {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 2px 0;
  border: 0;
  color: var(--text);
  background: transparent;
  cursor: pointer;
  text-align: left;
}

.after-sales-group-toggle:hover b {
  color: var(--cyan);
}

.after-sales-group-caret {
  display: inline-block;
  width: 12px;
  color: var(--cyan);
  font-size: 11px;
}

/* 售后页签：沿用注册页的 register-mode-tab 外观 */
#page-after-sales .after-sales-view-tabs {
  margin-bottom: 12px;
}

.after-sales-tab-panel[hidden] {
  display: none !important;
}

/* 卡网库存粘贴区 */
.after-sales-card-lookup-input {
  display: grid;
  gap: 8px;
  margin-top: 10px;
}

.after-sales-card-lookup-input textarea {
  width: 100%;
  min-height: 150px;
  padding: 9px 11px;
  border: 1px solid var(--line);
  border-radius: 6px;
  color: var(--text);
  background: var(--panel-deep);
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  font-size: 12px;
  line-height: 1.6;
  resize: vertical;
}

.after-sales-card-lookup-actions {
  align-items: center;
  gap: 8px;
  margin: 0;
}

/* 未命中的行压暗，一眼区分「卖过的」和「查不到的」 */
.after-sales-card-row.is-miss > td {
  background: rgba(191, 97, 106, 0.06);
}

.after-sales-card-row > td {
  padding-top: 4px;
  padding-bottom: 4px;
  white-space: nowrap;
}

/* 明细行压成一行：状态与检测时间原本各占一行，展开 60 个账号就很难扫。
   时间移到 title 悬浮显示。 */
#page-after-sales .after-sales-account-row > td {
  padding-top: 4px;
  padding-bottom: 4px;
  white-space: nowrap;
}

#page-after-sales .after-sales-ck-cell {
  white-space: nowrap;
}

/* 汇总行 / 明细行的操作列：按钮强制单行，不许换行堆成两层 */
#page-after-sales .after-sales-group-actions,
#page-after-sales .after-sales-row-actions {
  display: flex;
  flex-wrap: nowrap;
  gap: 3px;
  align-items: center;
  white-space: nowrap;
}

/* 明细行三个按钮（验活 / 复登 / 打开CK）挤在一格里，收紧内边距和字号 */
#page-after-sales .after-sales-row-actions button {
  flex: 0 0 auto;
  padding: 2px 6px;
  font-size: 11px;
  line-height: 1.5;
}

/* 打包行下方的订单操作面板 */
.after-sales-order-panel-row > td {
  padding: 0 !important;
  background: rgba(136, 192, 208, 0.05);
}

.after-sales-order-panel {
  display: grid;
  gap: 9px;
  padding: 11px 14px;
  border-left: 2px solid rgba(136, 192, 208, 0.45);
}

.after-sales-order-panel-head {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
}

.after-sales-order-panel-head b {
  color: var(--cyan);
}

.after-sales-order-panel-locked {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  padding: 7px 9px;
  border: 1px solid rgba(235, 203, 139, 0.28);
  border-radius: 5px;
  background: rgba(235, 203, 139, 0.08);
}

.after-sales-order-panel-actions {
  flex-wrap: wrap;
  gap: 6px;
  margin: 0;
}

.after-sales-order-panel .after-sales-case-form {
  gap: 8px;
  align-items: end;
}

.after-sales-order-panel .after-sales-case-list {
  display: grid;
  gap: 5px;
}

/* 展开后的账号明细，靠缩进和左边线跟汇总行区分 */
/* 缩进只加左边线，不吃掉勾选框的位置：
   选择格固定 34px，再加 22px padding 会把 checkbox 挤出可视区。 */
.after-sales-account-row.is-nested > td:first-child {
  border-left: 2px solid rgba(136, 192, 208, 0.3);
}

/* 明细行的勾选框保证可见可点 */
#page-after-sales .account-pool-table td.account-pool-select-cell {
  padding-left: 4px;
  padding-right: 4px;
}

#page-after-sales .account-pool-table td.account-pool-select-cell input[type="checkbox"] {
  width: 15px;
  height: 15px;
  margin: 0;
  cursor: pointer;
  accent-color: var(--cyan);
}

/* 明细行第二列（账号）用缩进表达层级 */
.after-sales-account-row.is-nested > td:nth-child(2) {
  padding-left: 18px;
}

.after-sales-account-row.is-nested > td {
  background: rgba(14, 17, 22, 0.45);
}

#page-after-sales .after-sales-page {
  display: grid;
  gap: 14px;
}

#page-after-sales .after-sales-hero {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  min-height: 88px;
  overflow: hidden;
  border-color: rgba(136, 192, 208, 0.28);
  background:
    radial-gradient(circle at 7% 0%, rgba(136, 192, 208, 0.18), transparent 34%),
    radial-gradient(circle at 92% 22%, rgba(235, 203, 139, 0.13), transparent 30%),
    linear-gradient(135deg, rgba(17, 28, 38, 0.98), rgba(9, 13, 18, 0.98));
}

#page-after-sales .after-sales-hero span,
#page-after-sales .after-sales-section-head span,
#page-after-sales .after-sales-search-panel label span,
#page-after-sales .after-sales-create-form label span {
  color: var(--muted);
  font-size: 11px;
  font-weight: 800;
  letter-spacing:0;
  text-transform: uppercase;
}

#page-after-sales .after-sales-hero h2 {
  margin: 4px 0 0;
  color: var(--text);
  font-size: 24px;
  letter-spacing:0;
}

#page-after-sales .after-sales-search-panel {
  display: grid;
  grid-template-columns: minmax(220px, 1.6fr) repeat(5, minmax(120px, 1fr)) auto;
  gap: 10px;
  align-items: end;
  border-color: rgba(136, 192, 208, 0.2);
  background:
    linear-gradient(180deg, rgba(20, 29, 38, 0.98), rgba(10, 14, 20, 0.96));
}

#page-after-sales .after-sales-search-panel label,
#page-after-sales .after-sales-create-form label {
  display: grid;
  gap: 6px;
  margin: 0;
}

#page-after-sales .after-sales-search-field {
  min-width: 0;
}

#page-after-sales .after-sales-filter-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
}

#page-after-sales .after-sales-filter-actions button,
#page-after-sales .after-sales-date-tabs button {
  margin: 0;
}

#page-after-sales .after-sales-date-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

#page-after-sales .after-sales-date-tabs button {
  min-height: 30px;
  padding: 5px 12px;
  border: 1px solid rgba(136, 192, 208, 0.22);
  border-radius: 999px;
  background: rgba(9, 13, 18, 0.72);
  color: var(--muted-2);
}

#page-after-sales .after-sales-date-tabs button.is-active {
  border-color: rgba(136, 192, 208, 0.72);
  background: rgba(136, 192, 208, 0.17);
  color: #eaf7fb;
}

#page-after-sales .after-sales-create-card {
  border-color: rgba(235, 203, 139, 0.22);
  background:
    radial-gradient(circle at 94% 0%, rgba(235, 203, 139, 0.12), transparent 28%),
    linear-gradient(180deg, rgba(20, 25, 32, 0.98), rgba(10, 13, 17, 0.96));
}

#page-after-sales .after-sales-create-card:not([open]) {
  display: none;
}

#page-after-sales .after-sales-create-card summary {
  cursor: pointer;
  color: var(--amber);
  font-weight: 800;
}

#page-after-sales .after-sales-create-form {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 10px;
  margin-top: 12px;
  align-items: end;
}

#page-after-sales .after-sales-create-accounts,
#page-after-sales .after-sales-create-note {
  grid-column: span 3;
}

#page-after-sales .after-sales-metrics {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 10px;
}

#page-after-sales .after-sales-metrics article {
  display: grid;
  gap: 6px;
  min-height: 92px;
  padding: 13px 14px;
  border: 1px solid rgba(136, 192, 208, 0.2);
  border-radius: 12px;
  background:
    radial-gradient(circle at 86% 10%, rgba(136, 192, 208, 0.12), transparent 34%),
    linear-gradient(180deg, rgba(20, 27, 36, 0.98), rgba(10, 13, 17, 0.92));
}

#page-after-sales .after-sales-metrics span {
  color: var(--muted-2);
}

#page-after-sales .after-sales-metrics b {
  color: var(--text);
  font-size: clamp(18px, 1.5vw, 26px);
  letter-spacing:0;
}

#page-after-sales .after-sales-metrics em {
  color: var(--cyan);
  font-style: normal;
}

#page-after-sales .after-sales-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(340px, 0.75fr);
  gap: 14px;
  align-items: start;
}

#page-after-sales .after-sales-section-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 12px;
}

#page-after-sales .after-sales-section-head h3 {
  margin: 0;
}

#page-after-sales .after-sales-detail-panel {
  position: sticky;
  top: 12px;
  min-width: 0;
  border-color: rgba(136, 192, 208, 0.22);
  background:
    radial-gradient(circle at 100% 0%, rgba(136, 192, 208, 0.14), transparent 32%),
    linear-gradient(180deg, rgba(18, 24, 32, 0.98), rgba(8, 11, 16, 0.98));
}

#page-after-sales .after-sales-detail-title span {
  color: var(--cyan);
  font-size: 11px;
  font-weight: 800;
  letter-spacing:0;
}

#page-after-sales .after-sales-detail-title h3 {
  margin: 5px 0 0;
  font-size: 20px;
}

#page-after-sales .after-sales-detail-stats {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  margin-top: 14px;
}

#page-after-sales .after-sales-detail-stats span {
  display: grid;
  gap: 4px;
  padding: 10px;
  border: 1px solid rgba(136, 192, 208, 0.14);
  border-radius: 10px;
  background: rgba(8, 12, 18, 0.66);
}

#page-after-sales .after-sales-detail-stats em {
  color: var(--muted);
  font-style: normal;
  font-size: 11px;
}

#page-after-sales .after-sales-detail-stats b {
  color: var(--text);
}

#page-after-sales .after-sales-detail-line {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-top: 12px;
}

#page-after-sales .after-sales-note {
  margin: 12px 0 0;
  color: var(--muted-2);
  line-height: 1.6;
}

#page-after-sales .after-sales-case-form {
  display: grid;
  grid-template-columns: 86px minmax(110px, 1fr) 88px minmax(120px, 1fr) auto;
  gap: 7px;
  margin-top: 14px;
  align-items: center;
}

#page-after-sales .after-sales-case-form button {
  margin: 0;
}

#page-after-sales .after-sales-case-list {
  display: grid;
  gap: 8px;
  margin-top: 12px;
}

#page-after-sales .after-sales-case-list article {
  display: grid;
  gap: 3px;
  padding: 10px;
  border: 1px solid rgba(235, 203, 139, 0.16);
  border-radius: 9px;
  background: rgba(235, 203, 139, 0.06);
}

#page-after-sales .after-sales-case-list b {
  color: var(--amber);
}

#page-after-sales .after-sales-case-list span,
#page-after-sales .after-sales-case-list em {
  color: var(--muted-2);
  font-style: normal;
}

#page-after-sales .after-sales-secondary-grid {
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
  gap: 14px;
}

#page-after-sales .after-sales-status-pills,
#page-after-sales .after-sales-customer-cards {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

#page-after-sales .after-sales-status-pills span,
#page-after-sales .after-sales-customer-cards button {
  display: grid;
  gap: 4px;
  min-width: 128px;
  margin: 0;
  padding: 10px 12px;
  border: 1px solid rgba(136, 192, 208, 0.16);
  border-radius: 10px;
  background: rgba(8, 12, 18, 0.7);
  text-align: left;
}

#page-after-sales .after-sales-status-pills span.is-ok {
  border-color: rgba(163, 190, 140, 0.34);
}

#page-after-sales .after-sales-status-pills span.is-warn {
  border-color: rgba(235, 203, 139, 0.34);
}

#page-after-sales .after-sales-status-pills span.is-bad {
  border-color: rgba(191, 97, 106, 0.34);
}

#page-after-sales .after-sales-status-pills b,
#page-after-sales .after-sales-customer-cards b {
  color: var(--text);
}

#page-after-sales .after-sales-status-pills em,
#page-after-sales .after-sales-customer-cards span,
#page-after-sales .after-sales-customer-cards em {
  color: var(--muted-2);
  font-style: normal;
}

#page-after-sales .after-sales-customer-cards button.is-active {
  border-color: rgba(136, 192, 208, 0.68);
  background: rgba(136, 192, 208, 0.12);
}

#page-after-sales .after-sales-account-table .scroll {
  max-height: 420px;
}

@media (max-width: 1280px) {
  #page-after-sales .after-sales-search-panel,
  #page-after-sales .after-sales-create-form {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  #page-after-sales .after-sales-metrics {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  #page-after-sales .after-sales-layout,
  #page-after-sales .after-sales-secondary-grid {
    grid-template-columns: 1fr;
  }

  #page-after-sales .after-sales-detail-panel {
    position: static;
  }
}

@media (max-width: 760px) {
  #page-after-sales .after-sales-hero {
    align-items: stretch;
    flex-direction: column;
  }

  #page-after-sales .after-sales-search-panel,
  #page-after-sales .after-sales-create-form,
  #page-after-sales .after-sales-metrics,
  #page-after-sales .after-sales-case-form {
    grid-template-columns: 1fr;
  }

  #page-after-sales .after-sales-create-accounts,
  #page-after-sales .after-sales-create-note {
    grid-column: auto;
  }

  #page-after-sales .after-sales-filter-actions {
    justify-content: flex-start;
  }
}

#page-after-sales .after-sales-command-bar {
  grid-template-columns: minmax(380px, 2.4fr) repeat(5, minmax(130px, 1fr)) auto;
  padding: 14px;
}

#page-after-sales .after-sales-command-bar .after-sales-search-field input {
  min-height: 42px;
  padding-left: 32px;
  border-color: rgba(136, 192, 208, 0.32);
  border-radius: 8px;
  background:
    linear-gradient(90deg, rgba(136, 192, 208, 0.08), transparent 36%),
    var(--panel-deep);
  font-weight: 800;
}

#page-after-sales .after-sales-command-bar .after-sales-search-field {
  position: relative;
}

#page-after-sales .after-sales-command-bar .after-sales-search-field::after {
  content: "⌕";
  position: absolute;
  left: 12px;
  bottom: 10px;
  color: var(--cyan);
  font-size: 18px;
}

#page-after-sales .after-sales-command-bar input,
#page-after-sales .after-sales-command-bar select {
  min-height: 42px;
  border-radius: 7px;
}

#page-after-sales .after-sales-command-bar .after-sales-filter-actions {
  align-items: flex-end;
  min-height: 42px;
}

#page-after-sales .after-sales-date-tabs {
  margin-top: -2px;
}

#page-after-sales .after-sales-date-tabs button {
  border-radius: 999px;
  background:
    radial-gradient(circle at 20% 0%, rgba(136, 192, 208, 0.12), transparent 40%),
    #0b1118;
  font-weight: 800;
}

#page-after-sales .after-sales-date-tabs button.is-active {
  box-shadow: 0 0 0 2px rgba(136, 192, 208, 0.18);
}

#page-after-sales .after-sales-side-stack {
  display: grid;
  gap: 14px;
  min-width: 0;
}

#page-after-sales .after-sales-detail-panel {
  position: static;
  padding: 14px;
}

#page-after-sales .after-sales-detail-head,
#page-after-sales .after-sales-detail-customer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

#page-after-sales .after-sales-detail-head h3 {
  margin: 0;
}

#page-after-sales .after-sales-detail-customer {
  margin-top: 14px;
  padding: 14px;
  border: 1px solid rgba(163, 190, 140, 0.24);
  border-radius: 12px;
  background:
    radial-gradient(circle at 96% 0%, rgba(235, 203, 139, 0.14), transparent 28%),
    rgba(8, 12, 18, 0.64);
}

#page-after-sales .after-sales-detail-customer > span {
  display: grid;
  width: 48px;
  height: 48px;
  place-items: center;
  border-radius: 14px;
  background: rgba(136, 192, 208, 0.18);
  color: #eaf7fb;
  font-size: 22px;
  font-weight: 900;
}

#page-after-sales .after-sales-detail-customer b,
#page-after-sales .after-sales-detail-customer em {
  display: block;
}

#page-after-sales .after-sales-detail-customer b {
  color: var(--text);
  font-size: 18px;
}

#page-after-sales .after-sales-detail-customer em {
  margin-top: 4px;
  color: var(--cyan);
  font-style: normal;
}

#page-after-sales .after-sales-detail-customer strong {
  padding: 4px 8px;
  border-radius: 999px;
  background: rgba(235, 203, 139, 0.16);
  color: var(--amber);
}

#page-after-sales .after-sales-detail-stats {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

#page-after-sales .after-sales-detail-actions {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
  margin-top: 12px;
}

#page-after-sales .after-sales-detail-actions button {
  margin: 0;
  border: 1px solid rgba(136, 192, 208, 0.12);
  background: rgba(27, 36, 48, 0.98);
  color: #d8e8f6;
  font-weight: 800;
}

#page-after-sales .after-sales-case-form {
  grid-template-columns: 90px minmax(110px, 1fr) 92px minmax(120px, 1fr) auto;
}

#page-after-sales .after-sales-status-boxes {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

#page-after-sales .after-sales-status-boxes i {
  display: block;
  width: 18px;
  height: 18px;
  border-radius: 4px;
  background: #7f9270;
}

#page-after-sales .after-sales-status-boxes i.is-warn {
  background: #b9a66d;
}

#page-after-sales .after-sales-status-boxes i.is-bad {
  background: #a95865;
}

#page-after-sales .after-sales-status-boxes i.is-muted {
  background: #293241;
}

#page-after-sales .after-sales-status-legend {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 10px;
  color: var(--muted-2);
  font-size: 11px;
}

#page-after-sales .after-sales-status-legend span {
  display: inline-flex;
  align-items: center;
  gap: 5px;
}

#page-after-sales .after-sales-status-legend i {
  display: inline-block;
  width: 9px;
  height: 9px;
  border-radius: 2px;
  background: #7f9270;
}

#page-after-sales .after-sales-status-legend .is-warn i {
  background: #b9a66d;
}

#page-after-sales .after-sales-status-legend .is-bad i {
  background: #a95865;
}

#page-after-sales .after-sales-status-legend .is-muted i {
  background: #293241;
}

#page-after-sales .after-sales-bottom-grid {
  display: grid;
  grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.05fr);
  gap: 14px;
  align-items: start;
}

#page-after-sales .after-sales-customer-cards {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

#page-after-sales .after-sales-customer-cards button {
  grid-template-columns: 34px minmax(0, 1fr);
  min-width: 0;
  border-left: 4px solid rgba(136, 192, 208, 0.7);
}

#page-after-sales .after-sales-customer-cards strong {
  display: grid;
  width: 28px;
  height: 28px;
  place-items: center;
  border-radius: 10px;
  background: rgba(136, 192, 208, 0.18);
  color: var(--cyan);
}

#page-after-sales .after-sales-customer-cards span {
  display: grid;
  grid-column: 1 / -1;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 6px;
}

#page-after-sales .after-sales-customer-cards span em {
  display: grid;
  padding: 7px;
  border-radius: 7px;
  background: rgba(8, 12, 18, 0.55);
  color: var(--text);
  font-weight: 800;
}

#page-after-sales .after-sales-customer-cards small {
  color: var(--muted-2);
  font-size: 10px;
  font-weight: 500;
}

#page-after-sales .after-sales-account-table th {
  color: var(--muted-2);
}

@media (max-width: 1360px) {
  #page-after-sales .after-sales-command-bar {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  #page-after-sales .after-sales-command-bar .after-sales-search-field {
    grid-column: 1 / -1;
  }

  #page-after-sales .after-sales-bottom-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 860px) {
  #page-after-sales .after-sales-detail-stats,
  #page-after-sales .after-sales-detail-actions,
  #page-after-sales .after-sales-customer-cards {
    grid-template-columns: 1fr;
  }
}

#page-after-sales .after-sales-source-grid {
  align-items: start;
  grid-template-columns: minmax(0, 1.25fr) minmax(360px, 0.75fr);
}

#page-after-sales .after-sales-filter-grid label,
#page-after-sales .after-sales-create-form label,
#page-after-sales .after-sales-case-form label {
  display: block;
  margin: 0 0 4px;
  color: var(--muted-2);
  font-size: 11px;
}

#page-after-sales .after-sales-filter-actions {
  align-items: end;
  justify-content: flex-start;
}

#page-after-sales .after-sales-filter-actions button,
#page-after-sales .after-sales-range-toolbar button,
#page-after-sales .after-sales-detail-actions button,
#page-after-sales .after-sales-case-form button {
  margin: 0;
}

#page-after-sales .after-sales-range-toolbar {
  margin-top: 10px;
}

#page-after-sales .after-sales-range-toolbar button.is-active,
#page-after-sales .after-sales-orders-table tr.is-active td,
#page-after-sales .after-sales-customer-options button.is-active {
  border-color: var(--green);
  color: var(--green);
  box-shadow: 0 0 0 1px rgba(163, 190, 140, 0.22) inset;
}

#page-after-sales #afterSalesMetrics {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
}

#page-after-sales #afterSalesMetrics .stat {
  min-width: 0;
  flex-basis: auto;
}

#page-after-sales .after-sales-create-card {
  margin-top: 10px;
  border-color: var(--line);
  background: var(--panel);
}

#page-after-sales .after-sales-create-card:not([open]) {
  display: none;
}

#page-after-sales .after-sales-create-card summary {
  cursor: pointer;
  color: var(--green);
  font-weight: 700;
}

#page-after-sales .after-sales-create-form {
  display: block;
  margin-top: 10px;
}

#page-after-sales .after-sales-orders-scroll {
  max-height: 590px;
}

#page-after-sales .after-sales-orders-table tr {
  cursor: pointer;
}

#page-after-sales .after-sales-orders-table b {
  color: var(--text);
}

#page-after-sales .after-sales-detail-panel {
  position: sticky;
  top: 12px;
  border-color: var(--line);
  background: var(--panel);
}

#page-after-sales .after-sales-detail-stats {
  margin-top: 10px;
}

#page-after-sales .after-sales-detail-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 10px;
}

#page-after-sales .after-sales-case-form {
  display: grid;
  grid-template-columns: minmax(120px, 0.8fr) minmax(120px, 1fr) minmax(120px, 1fr) auto;
  gap: 8px;
  align-items: end;
  margin-top: 10px;
}

#page-after-sales .after-sales-note {
  margin: 10px 0 0;
  color: var(--muted-2);
}

#page-after-sales .after-sales-case-list {
  display: grid;
  gap: 8px;
  margin-top: 10px;
}

#page-after-sales .after-sales-case-list article {
  padding: 8px 10px;
  border: 1px solid var(--line-soft);
  border-radius: 4px;
  background: var(--panel-deep);
}

#page-after-sales .after-sales-case-list b,
#page-after-sales .after-sales-case-list span,
#page-after-sales .after-sales-case-list em {
  display: block;
}

#page-after-sales .after-sales-case-list span,
#page-after-sales .after-sales-case-list em {
  color: var(--muted-2);
  font-size: 11px;
  font-style: normal;
}

#page-after-sales .after-sales-status-boxes {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  margin-top: 10px;
}

#page-after-sales .after-sales-status-boxes i {
  display: block;
  width: 16px;
  height: 16px;
  border: 1px solid rgba(216, 222, 233, 0.08);
  border-radius: 3px;
  background: var(--green);
}

#page-after-sales .after-sales-status-boxes i.is-warn {
  background: var(--amber);
}

#page-after-sales .after-sales-status-boxes i.is-bad {
  background: var(--red);
}

#page-after-sales .after-sales-status-boxes i.is-muted {
  background: var(--line);
}

#page-after-sales .after-sales-status-legend {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 8px;
  color: var(--muted-2);
  font-size: 11px;
}

#page-after-sales .after-sales-status-legend span {
  display: inline-flex;
  align-items: center;
  gap: 5px;
}

#page-after-sales .after-sales-status-legend i {
  width: 8px;
  height: 8px;
  border-radius: 2px;
  background: var(--green);
}

#page-after-sales .after-sales-status-legend .is-warn i {
  background: var(--amber);
}

#page-after-sales .after-sales-status-legend .is-bad i {
  background: var(--red);
}

#page-after-sales .after-sales-status-legend .is-muted i {
  background: var(--line);
}

#page-after-sales .after-sales-customer-options {
  margin-top: 10px;
}

#page-after-sales .after-sales-customer-options button {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

#page-after-sales .after-sales-account-table .scroll {
  max-height: 300px;
}

@media (max-width: 1180px) {
  #page-after-sales .after-sales-source-grid,
  #page-after-sales .after-sales-filter-grid,
  #page-after-sales .after-sales-case-form {
    grid-template-columns: 1fr;
  }
}

@supports ((-webkit-background-clip: text) or (background-clip: text)) {
  .wrap > .sub {
    background: linear-gradient(90deg, #ff3b30 0%, #ff9500 7.14%, #ffd60a 14.28%, #34c759 21.42%, #32d7f0 28.57%, #0a84ff 35.71%, #bf5af2 42.85%, #ff3b30 50%, #ff9500 57.14%, #ffd60a 64.28%, #34c759 71.42%, #32d7f0 78.57%, #0a84ff 85.71%, #bf5af2 92.85%, #ff3b30 100%);
    background-size: 200% 100%;
    background-position: 0% 50%;
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    color: transparent;
    animation: rainbow-subtitle-flow 12s linear infinite;
  }
}

@keyframes rainbow-subtitle-flow {
  from {
    background-position: 0% 50%;
  }

  to {
    background-position: 100% 50%;
  }
}

@media (prefers-reduced-motion: reduce) {
  .wrap > .sub {
    animation: none;
  }
}

.sidebar {
  position: static;
  display: block;
  height: auto;
  padding: 0;
  border: 0;
  background: transparent;
}

.brand {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 7px;
}

.brand-mark {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 36px;
  height: 24px;
  padding: 0 8px;
  border: 1px solid var(--line);
  border-radius: 4px;
  background: var(--panel);
  color: var(--green);
  font-family: Consolas, "Microsoft YaHei", monospace;
  font-size: 12px;
  font-weight: 700;
}

.brand-title {
  margin: 0;
  color: var(--cyan);
  font-size: 20px;
  font-weight: 700;
  line-height: 1.2;
}

.brand-subtitle {
  margin-top: 3px;
  color: var(--muted);
  font-size: 12px;
}

.nav {
  display: flex;
  flex-wrap: nowrap;
  justify-content: flex-start;
  gap: 18px;
  padding-right: 0;
  overflow-x: auto;
  overflow-y: hidden;
  margin-bottom: 14px;
  border-bottom: 2px solid var(--line);
  scrollbar-width: none;
}
.nav::-webkit-scrollbar { display: none; }

.nav a {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  white-space: nowrap;
  min-height: 38px;
  margin-bottom: -2px;
  padding: 10px 4px;
  border: 0;
  border-bottom: 2px solid transparent;
  border-radius: 0;
  color: var(--muted-2);
  font-size: clamp(11px, 0.82vw, 13px);
  cursor: pointer;
}

.nav .badge {
  padding: 1px 3px;
}

.nav a::before {
  display: none;
}

.nav a[data-route="register"]::before {
  content: "📝";
}

.nav a[data-route="payment"]::before {
  content: "💸";
}

.nav a[data-route="full-flow"]::before {
  content: "🚀";
}

.nav a[data-route="code"]::before {
  content: "📩";
}

.nav a[data-route="mailboxes"]::before {
  content: "📧";
}

.nav a[data-route="proxies"]::before {
  content: "🌐";
}

.nav a[data-route="accounts"]::before {
  content: "📦";
}

.nav a::after {
  display: none;
}

.nav a[data-route="full-flow"]::after {
  content: none;
}

.nav a:hover,
.nav a.is-active,
.nav a.active,
.tab.active {
  border-bottom-color: var(--cyan);
  background: transparent;
  color: var(--cyan);
  font-weight: 600;
}

.sidebar-card {
  display: none;
}

.main {
  min-width: 0;
  padding: 0;
}

.topbar {
  display: none;
}

.page,
.route {
  display: none;
}

.page.active,
.route.is-active {
  display: block;
}

.profile-db-hero {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
}

.profile-db-stats .stat b {
  color: var(--green);
}

.profile-db-stats .stat {
  min-width: 176px;
  text-align: left;
}

.profile-db-grid {
  align-items: start;
}

.profile-db-scroll {
  max-height: 520px;
}

.profile-resource-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.profile-resource-tabs button {
  min-height: 32px;
  border: 1px solid var(--line);
  background: var(--panel-deep);
  color: var(--muted);
}

.profile-resource-tabs button.is-active {
  border-color: rgba(155, 198, 111, 0.56);
  background: rgba(155, 198, 111, 0.12);
  color: var(--green);
}

.profile-db-region-panel {
  display: none;
}

.profile-db-region-panel.is-active {
  display: block;
}

#profileDatabaseCardsBody .mono,
#profileDatabasePhonesBody .mono {
  white-space: nowrap;
}

h1,
h2,
h3 {
  margin: 0;
  font-weight: 700;
}

h2 {
  color: var(--green);
  font-size: 14px;
}

.eyebrow,
.label {
  display: none;
}

.grid,
.stats,
.stats-grid {
  display: grid;
  gap: 14px;
}

.grid.two {
  grid-template-columns: 1fr 1fr;
}

.grid.three {
  grid-template-columns: repeat(3, 1fr);
}

.stats,
.stats-grid {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  gap: 8px;
  margin-bottom: 10px;
}

.proxy-status-grid {
  display: flex;
  flex-wrap: wrap;
}

.proxy-broker-toolbar {
  gap: 10px;
  padding: 10px;
  border: 1px solid var(--line-soft);
  border-radius: 8px;
  background: rgba(14, 17, 22, 0.56);
}

.proxy-broker-toolbar-title {
  color: var(--green);
  font-weight: 700;
}

.proxy-broker-toolbar select {
  min-width: 150px;
}

.proxy-lease-truncated {
  color: var(--muted);
  font-size: 11px;
  text-align: center;
  font-style: italic;
  opacity: 0.8;
}

.proxy-broker-strip {
  display: grid;
  grid-template-columns: minmax(260px, 1.2fr) repeat(4, minmax(160px, 1fr));
  gap: 8px;
  margin: 10px 0 12px;
}

.proxy-broker-strip-item {
  position: relative;
  min-height: 78px;
  padding: 10px 12px;
  border: 1px solid var(--line);
  border-radius: 3px;
  background: var(--panel-deep);
}

.proxy-broker-strip-item::before {
  display: none;
}

.proxy-broker-strip-item.is-identity {
  border-color: rgba(136, 192, 208, 0.34);
}

.proxy-broker-strip-item.is-ok {
  border-color: rgba(163, 190, 140, 0.34);
}

.proxy-broker-strip-item.is-run,
.proxy-broker-strip-item.is-warn {
  border-color: rgba(235, 203, 139, 0.42);
}

.proxy-broker-strip-item.is-fail {
  border-color: rgba(191, 97, 106, 0.44);
}

.proxy-broker-strip-label {
  color: var(--muted);
  font-size: 11px;
}

.proxy-broker-strip-value {
  margin-top: 8px;
  color: var(--cyan);
  font-family: "Microsoft YaHei", "PingFang SC", Consolas, monospace;
  font-size: 20px;
  font-weight: 800;
  line-height: 1.15;
}

.proxy-broker-strip-sub {
  margin-top: 8px;
  color: var(--muted-2);
  line-height: 1.45;
}

.proxy-broker-meter {
  height: 4px;
  margin-top: 12px;
  overflow: hidden;
  border-radius: 2px;
  background: rgba(76, 86, 106, 0.42);
}

.proxy-broker-meter span {
  display: block;
  width: var(--value);
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, var(--green), var(--cyan));
}

.proxy-broker-section-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 12px;
  margin: 14px 0 8px;
}

.proxy-broker-section-head h3 {
  margin-bottom: 4px;
}

.proxy-broker-buckets-scroll {
  max-height: 280px;
}

.proxy-broker-list-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 12px;
  margin: 14px 0 8px;
}

.proxy-broker-list-head h3 {
  margin-bottom: 4px;
}

.proxy-broker-leases-scroll {
  max-height: 720px;
}

.proxy-broker-leases-table {
  min-width: 1180px;
}

.proxy-template-card {
  border-color: rgba(163, 190, 140, 0.25);
}

.proxy-template-head {
  margin-top: 0;
}

.proxy-template-toolbar,
.proxy-template-item-actions,
.proxy-template-test-row,
.proxy-template-savebar {
  display: flex;
  align-items: center;
  gap: 8px;
}

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

.proxy-template-item {
  min-width: 0;
  padding: 12px;
  border: 1px solid rgba(111, 174, 218, 0.34);
  border-radius: 8px;
  background: rgba(14, 17, 22, 0.78);
  box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.025), 0 8px 24px rgba(0, 0, 0, 0.16);
}

.proxy-template-item:focus-within {
  border-color: rgba(163, 190, 140, 0.82);
  box-shadow: 0 0 0 2px rgba(163, 190, 140, 0.13), 0 8px 24px rgba(0, 0, 0, 0.18);
}

.proxy-template-item-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 10px;
  padding-bottom: 8px;
  border-bottom: 1px solid rgba(111, 174, 218, 0.18);
}

.proxy-template-name-field {
  flex: 1 1 220px;
  min-width: 0;
}

.proxy-template-name-field > span {
  display: block;
  margin-bottom: 4px;
  color: var(--muted-2);
  font-size: 12px;
}

.proxy-template-name-field small {
  color: var(--muted);
  font-weight: 400;
}

.proxy-template-enabled {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  white-space: nowrap;
}

.proxy-template-delete {
  width: 32px;
  min-width: 32px;
  height: 32px;
  padding: 0;
  font-size: 22px;
  line-height: 1;
}

.proxy-template-fields {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  margin-top: 8px;
}

.proxy-template-pool-fields {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.proxy-template-source-list {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  margin-top: 10px;
  border-top: 1px solid var(--line-soft);
}

.proxy-template-source-item {
  min-width: 0;
  padding: 10px;
  border-bottom: 1px solid var(--line-soft);
}

.proxy-template-source-item:last-child {
  border-bottom: 0;
}

.proxy-template-source-group-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin-bottom: 8px;
}

.proxy-template-source-group-title {
  color: var(--text-strong);
  font-weight: 700;
}

.proxy-template-source-protocol {
  min-width: 0;
}

.proxy-template-protocol-switch {
  display: inline-flex;
  flex: 0 0 auto;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 5px;
}

.proxy-template-protocol-choice {
  position: relative;
  min-width: 58px;
  min-height: 28px;
  padding: 4px 9px 4px 17px;
  border: 0;
  border-right: 1px solid var(--line);
  border-radius: 0;
  background: transparent;
  color: var(--muted-2);
  font-size: 11px;
}

.proxy-template-protocol-choice:last-child {
  border-right: 0;
}

.proxy-template-protocol-choice::before {
  position: absolute;
  top: 50%;
  left: 7px;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: var(--muted);
  content: "";
  transform: translateY(-50%);
}

.proxy-template-protocol-choice.configured::before {
  background: var(--amber);
}

.proxy-template-protocol-choice.success::before {
  background: var(--green);
}

.proxy-template-protocol-choice.active {
  background: rgba(111, 174, 218, 0.18);
  color: var(--text-strong);
}

.proxy-template-source-head {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 8px;
}

.proxy-template-source-head > label {
  width: min(150px, 42%);
}

.proxy-template-source-item textarea {
  min-height: 70px;
  max-height: 150px;
  resize: vertical;
}

.proxy-template-test-row {
  justify-content: space-between;
  min-height: 32px;
  margin-top: 6px;
}

.proxy-template-test-row > [data-proxy-template-source-status] {
  min-width: 0;
}

.proxy-template-test-row > [data-test-proxy-template] {
  flex: 0 0 auto;
  min-width: 52px;
  white-space: nowrap;
}

.proxy-template-test-state {
  align-items: center;
  min-height: 26px;
  color: var(--muted-2);
  font-size: 12px;
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.proxy-template-test-state.success {
  color: var(--green);
}

.proxy-template-test-state.failed {
  color: var(--red);
}

.proxy-template-empty {
  padding: 36px 16px;
  border: 1px dashed var(--line);
  border-radius: 8px;
  color: var(--muted);
  text-align: center;
}

.proxy-template-savebar {
  justify-content: space-between;
  margin-top: 14px;
  padding-top: 12px;
  border-top: 1px solid var(--line-soft);
}

.proxy-template-savebar > span {
  max-width: 760px;
}

.proxy-line {
  max-width: 520px;
  overflow: hidden;
  text-overflow: ellipsis;
}

@media (max-width: 1050px) {
  .proxy-template-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 720px) {
  .proxy-template-head,
  .proxy-template-item-head,
  .proxy-template-savebar {
    align-items: stretch;
    flex-direction: column;
  }

  .proxy-template-toolbar,
  .proxy-template-savebar button {
    width: 100%;
  }

  .proxy-template-toolbar button {
    flex: 1 1 0;
  }

  .proxy-template-item-actions {
    justify-content: space-between;
  }

  .proxy-template-name-field {
    flex: 0 0 auto;
  }

  .proxy-template-fields {
    grid-template-columns: 1fr;
  }

  .proxy-template-grid {
    grid-template-columns: 1fr;
  }

  .proxy-template-source-head {
    align-items: stretch;
    flex-direction: column;
  }

  .proxy-template-source-head > label {
    width: 100%;
  }

  .proxy-template-source-list {
    grid-template-columns: 1fr;
  }

  .proxy-template-source-item {
    border-bottom: 1px solid var(--line-soft);
  }

  .proxy-template-source-item:last-child {
    border-bottom: 0;
  }
}

.rule-head {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  margin-bottom: 10px;
}

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

.rule-card {
  min-height: 96px;
  padding: 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel-deep);
  color: var(--muted-2);
  line-height: 1.45;
}

.rule-title {
  margin-bottom: 5px;
  color: var(--cyan);
  font-weight: 700;
}

.rule-effect {
  margin-top: 5px;
  color: var(--text);
}

.rule-alert {
  margin-top: 10px;
  padding: 9px 10px;
  border: 1px solid rgba(235, 203, 139, 0.45);
  border-radius: 8px;
  background: rgba(235, 203, 139, 0.08);
  color: var(--amber);
}

.rule-section {
  margin-top: 10px;
}

.rule-section h4 {
  margin: 0 0 6px;
  color: var(--green);
  font-size: 12px;
}

.rule-section ul {
  margin: 0;
  padding-left: 18px;
  color: var(--muted-2);
  line-height: 1.7;
}

.card,
.panel,
.stat-card,
.metric-card {
  margin-bottom: 14px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel);
  box-shadow: none;
}

.card,
.panel {
  padding: 14px;
}

.card h3 {
  margin: 0 0 10px;
  color: var(--green);
  font-size: 15px;
  letter-spacing: -0.01em;
}

.register-mode-tabs,
.account-pool-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 14px;
  padding: 8px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel-deep);
}

.register-series-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 14px;
  padding: 8px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel-deep);
}

.register-series-tab {
  flex: 0 0 auto;
  min-height: 32px;
  margin: 0;
  border: 1px solid var(--line);
  border-radius: 4px;
  background: var(--panel);
  color: var(--muted-2);
  font-size: 12px;
  font-weight: 500;
  padding: 7px 14px;
  white-space: nowrap;
}

.register-series-tab.is-active,
.register-series-tab[aria-selected="true"] {
  border-color: var(--green);
  background: rgba(163, 190, 140, .14);
  color: var(--green);
  font-weight: 700;
}

.register-product-tabs {
  margin-bottom: 14px;
}

.register-product-tabs > [data-register-category-products] {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.register-product-tabs > [data-register-category-products][hidden] {
  display: none;
}

.register-product-tabs .register-mode-tab {
  flex: 0 0 auto;
  min-width: 0;
  white-space: nowrap;
}

.register-mode-tab,
.account-pool-tab {
  min-height: 32px;
  margin: 0;
  border: 1px solid var(--line);
  background: var(--panel);
  color: var(--muted-2);
}

.register-mode-tab.is-active,
.register-mode-tab[aria-selected="true"],
.account-pool-tab.is-active,
.account-pool-tab[aria-selected="true"] {
  border-color: var(--green);
  background: rgba(163, 190, 140, 0.14);
  color: var(--green);
  font-weight: 700;
}

.account-pool-tabs .account-pool-tab {
  min-height: 40px;
  padding: 0 20px;
  border-radius: 6px;
  font-size: 13px;
  font-weight: 500;
  letter-spacing: 0;
}

.account-pool-tabs .account-pool-tab .badge {
  margin-left: 4px;
}

.register-mode-panel,
.account-pool-panel,
.sms-desk-panel {
  display: none;
}

.register-mode-panel.is-active,
.account-pool-panel.is-active,
.sms-desk-panel.is-active {
  display: block;
}

.register-engine-shell {
  --register-engine-surface: #11171b;
  --register-engine-surface-raised: #161d21;
  --register-engine-surface-recessed: #0c1115;
  --register-engine-line: rgba(145, 158, 168, 0.24);
  width: 100%;
  max-width: none;
  margin: 0 0 18px;
  margin-inline: 0;
  padding: 12px;
  border: 1px solid var(--register-engine-line);
  border-radius: 10px;
  background: var(--register-engine-surface);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.025);
}

.register-engine-shell legend {
  padding: 0 8px;
  color: var(--text);
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.08em;
}

.register-engine-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: stretch;
  gap: 12px;
}

.register-engine-card {
  --register-engine-accent: var(--green);
  --register-engine-accent-rgb: 163, 190, 140;
  --register-engine-accent-high: #d3dfc8;
  --register-engine-accent-deep: #40513f;
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 196px;
  align-items: stretch;
  gap: 16px;
  min-width: 0;
  min-height: 190px;
  padding: 16px;
  overflow: hidden;
  border: 1px solid var(--register-engine-line);
  border-radius: 12px;
  background: var(--register-engine-surface-raised);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.025), 0 16px 34px rgba(0, 0, 0, 0.2);
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.register-engine-card-python {
  --register-engine-accent: var(--cyan);
  --register-engine-accent-rgb: 136, 192, 208;
  --register-engine-accent-high: #c7dce2;
  --register-engine-accent-deep: #35505a;
}

.register-engine-card.is-selected {
  border-color: var(--register-engine-accent);
  box-shadow:
    inset 0 0 0 1px rgba(var(--register-engine-accent-rgb), 0.16),
    0 0 18px rgba(var(--register-engine-accent-rgb), 0.07),
    0 18px 36px rgba(0, 0, 0, 0.3);
}

.register-engine-choice {
  display: grid;
  grid-template-columns: 112px minmax(0, 1fr);
  align-items: center;
  gap: 16px;
  min-width: 0;
  margin: 0;
  cursor: pointer;
}

.register-engine-radio {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
}

.register-engine-check {
  position: absolute;
  top: 14px;
  right: 14px;
  z-index: 3;
  display: grid;
  place-items: center;
  width: 32px;
  height: 32px;
  border: 1px solid rgba(177, 192, 204, 0.72);
  border-radius: 50%;
  background: var(--register-engine-surface-recessed);
  color: var(--register-engine-accent);
  transition: border-color 0.2s ease, background 0.2s ease, box-shadow 0.2s ease;
}

.register-engine-check::after {
  content: "\2713";
  font-size: 18px;
  font-weight: 900;
  line-height: 1;
  opacity: 0;
  transform: scale(0.6);
  transition: opacity 0.2s ease, transform 0.2s ease;
}

.register-engine-radio:checked + .register-engine-check {
  border-color: var(--register-engine-accent);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.22),
    0 0 0 2px rgba(var(--register-engine-accent-rgb), 0.06),
    0 5px 12px rgba(0, 0, 0, 0.28);
  background: linear-gradient(145deg, var(--register-engine-accent-high), var(--register-engine-accent));
  color: #0a0f12;
}

.register-engine-radio:checked + .register-engine-check::after {
  opacity: 1;
  transform: scale(1);
}

.register-engine-radio:focus-visible + .register-engine-check {
  outline: 2px solid var(--register-engine-accent);
  outline-offset: 3px;
}

.register-engine-mark-fold {
  position: relative;
  display: grid;
  place-items: center;
  width: 112px;
  height: 112px;
  overflow: visible;
  isolation: isolate;
}

.register-engine-fold-go-tone {
  --register-engine-accent: #b7ff58;
  --register-engine-accent-rgb: 183, 255, 88;
  --register-engine-accent-high: #efffdb;
  --register-engine-accent-deep: #255c1d;
}

.register-engine-fold-python-tone {
  --register-engine-accent: #48d6ff;
  --register-engine-accent-rgb: 72, 214, 255;
  --register-engine-accent-high: #d9f7ff;
  --register-engine-accent-deep: #164d6a;
}

.register-engine-fold-svg {
  width: 100%;
  height: 100%;
  overflow: visible;
  filter: drop-shadow(0 8px 10px rgba(0, 0, 0, 0.5));
  shape-rendering: geometricPrecision;
}

.register-engine-fold-stop-metal-light {
  stop-color: #8e989f;
}

.register-engine-fold-stop-metal-mid {
  stop-color: #303a40;
}

.register-engine-fold-stop-metal-dark {
  stop-color: #090e12;
}

.register-engine-fold-stop-accent-light {
  stop-color: var(--register-engine-accent-high);
}

.register-engine-fold-stop-accent {
  stop-color: var(--register-engine-accent);
}

.register-engine-fold-stop-accent-deep {
  stop-color: var(--register-engine-accent-deep);
}

.register-engine-fold-top {
  stroke: rgba(255, 255, 255, 0.16);
  stroke-width: 0.8;
  stroke-linejoin: round;
  vector-effect: non-scaling-stroke;
}

.register-engine-fold-side {
  opacity: 0.76;
  stroke: rgba(255, 255, 255, 0.16);
  stroke-width: 0.8;
  stroke-linejoin: round;
  vector-effect: non-scaling-stroke;
}

.register-engine-fold-accent {
  opacity: 0.34;
  stroke: rgba(255, 255, 255, 0.12);
  stroke-width: 0.8;
  stroke-linejoin: round;
  filter: drop-shadow(0 0 2px rgba(var(--register-engine-accent-rgb), 0.16));
}

.register-engine-card.is-selected .register-engine-fold-accent {
  opacity: 1;
  filter: drop-shadow(0 0 7px rgba(var(--register-engine-accent-rgb), 0.52));
}

.register-engine-fold-dot {
  opacity: 0.42;
  stroke: rgba(255, 255, 255, 0.72);
  stroke-width: 0.7;
}

.register-engine-card.is-selected .register-engine-fold-dot {
  opacity: 1;
  filter: drop-shadow(0 0 5px rgba(var(--register-engine-accent-rgb), 0.58));
}

.register-engine-fold-glint {
  fill: none;
  stroke: rgba(255, 255, 255, 0.76);
  stroke-width: 0.9;
  stroke-linecap: round;
  opacity: 0.5;
  vector-effect: non-scaling-stroke;
}

.register-engine-fold-text {
  fill: var(--register-engine-accent-high);
  stroke: #040709;
  stroke-width: 2.2px;
  paint-order: stroke;
  font: 900 18px/1 Consolas, monospace;
  letter-spacing: -0.07em;
  text-shadow: 0 1px 0 #000;
}

.register-engine-copy {
  min-width: 0;
}

.register-engine-title,
.register-engine-description {
  display: block;
}

.register-engine-title {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
}

.register-engine-title strong {
  color: var(--text);
  font-size: 20px;
  line-height: 1.25;
}

.register-engine-status {
  align-self: center;
  padding: 3px 8px;
  border: 1px solid rgba(var(--register-engine-accent-rgb), 0.34);
  border-radius: 4px;
  background: var(--register-engine-surface-recessed);
  color: var(--register-engine-accent);
  font-size: 11px;
  font-weight: 800;
  line-height: 1.1;
}

.register-engine-description {
  margin-top: 8px;
  color: var(--muted-2);
  font-size: 13px;
  line-height: 1.4;
}

.register-engine-features {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  align-content: flex-start;
  gap: 8px;
  margin-top: 12px;
}

.register-engine-feature {
  display: inline-flex;
  flex: 0 1 auto;
  align-items: center;
  align-self: flex-start;
  gap: 6px;
  min-width: 0;
  min-height: 0;
  padding: 6px 9px;
  border: 1px solid rgba(var(--register-engine-accent-rgb), 0.22);
  border-radius: 4px;
  background: var(--register-engine-surface-recessed);
  color: var(--muted-2);
  font-size: 11px;
  line-height: 1.2;
}

.register-engine-feature::before {
  content: attr(data-icon);
  display: inline-grid;
  flex: 0 0 auto;
  place-items: center;
  width: 16px;
  height: 16px;
  border-radius: 3px;
  background: rgba(var(--register-engine-accent-rgb), 0.1);
  color: var(--register-engine-accent);
  font-family: Consolas, monospace;
  font-size: 10px;
  font-weight: 900;
}

.register-engine-card-go .register-engine-feature:first-child::before {
  content: "";
  border-radius: 0;
  background: var(--register-engine-accent);
  clip-path: polygon(48% 0, 12% 54%, 43% 54%, 30% 100%, 88% 40%, 57% 40%);
}

.register-engine-card-controls {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-self: stretch;
  min-width: 0;
  padding: 8px;
  border: 1px solid var(--register-engine-line);
  border-radius: 9px;
  background: var(--register-engine-surface-recessed);
}

.register-engine-card-controls > label {
  color: var(--muted-2);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.08em;
}

.register-engine-card-controls > input {
  min-height: 38px;
  margin-top: 5px;
  border-color: var(--register-engine-line);
  background: #090e12;
  color: var(--text);
  font: 800 18px/1 Consolas, monospace;
}

.register-engine-card.is-selected .register-engine-card-controls > label {
  color: var(--register-engine-accent);
}

.register-engine-card.is-selected .register-engine-card-controls > input {
  border-color: rgba(var(--register-engine-accent-rgb), 0.3);
}

.register-engine-card-controls > span {
  display: block;
  margin-top: 4px;
  color: var(--muted);
  font-size: 10px;
  line-height: 1.25;
}

.register-python-options {
  position: static;
  margin-top: 6px;
  padding-top: 6px;
  border-top: 1px solid var(--register-engine-line);
}

.register-python-options[hidden] {
  display: none;
}

.register-python-options label {
  display: block;
  margin-bottom: 2px;
  color: var(--muted-2);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.05em;
}

.register-python-options select {
  width: 100%;
  min-height: 30px;
  margin: 0;
  padding-block: 2px;
  border-color: var(--register-engine-line);
  background: #090e12;
}

.register-engine-card.is-selected .register-python-options label {
  color: var(--register-engine-accent);
}

.register-engine-card.is-selected .register-python-options select {
  border-color: rgba(var(--register-engine-accent-rgb), 0.3);
}

.register-engine-card-controls > input:focus-visible,
.register-python-options select:focus-visible {
  border-color: var(--register-engine-accent);
  outline: 1px solid rgba(var(--register-engine-accent-rgb), 0.28);
  outline-offset: 1px;
}

.protocol-task-row {
  display: grid;
  grid-template-columns: minmax(130px, 0.8fr) minmax(70px, auto) minmax(180px, 1.2fr);
  gap: 8px;
  align-items: center;
  padding: 9px 10px;
  border: 1px solid var(--line-soft);
  border-radius: 8px;
  background: var(--panel-deep);
  color: var(--muted-2);
  font-size: 12px;
}

@media (max-width: 900px) {
  .register-engine-grid {
    grid-template-columns: 1fr;
  }

  .register-engine-card {
    grid-template-columns: minmax(0, 1fr) 136px;
  }
}

@media (max-width: 560px) {
  .register-engine-shell {
    padding: 8px;
  }

  .register-engine-card {
    grid-template-columns: 1fr;
    gap: 10px;
    min-height: 0;
    padding: 12px;
  }

  .register-engine-choice {
    grid-template-columns: 52px minmax(0, 1fr);
    gap: 10px;
  }

  .register-engine-mark-fold {
    width: 52px;
    height: 52px;
  }

  .register-engine-card-controls {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    grid-template-rows: auto auto auto;
    column-gap: 10px;
    width: 100%;
  }

  .register-engine-card-controls > label,
  .register-engine-card-controls > input,
  .register-engine-card-controls > span {
    grid-column: 1;
  }

  .register-engine-card-go .register-engine-card-controls {
    grid-template-columns: 1fr;
  }

  .register-python-options {
    grid-column: 2;
    grid-row: 1 / 4;
    margin-top: 0;
    padding-top: 0;
    padding-left: 10px;
    border-top: 0;
    border-left: 1px solid var(--register-engine-line);
  }
}

@media (prefers-reduced-motion: reduce) {
  .register-engine-card,
  .register-engine-check,
  .register-engine-check::after {
    transition: none;
  }
}

.engine-selector-mount {
  width: 100%;
  margin: 0 0 18px;
}

.engine-selector-shell {
  --engine-surface: #11171b;
  --engine-raised: #151c20;
  --engine-recessed: #090f13;
  --engine-line: rgba(171, 190, 201, 0.18);
  width: 100%;
  min-width: 0;
  margin: 0;
  padding: 12px;
  border: 1px solid var(--engine-line);
  border-radius: 12px;
  background: var(--engine-surface);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.025);
}

.engine-selector-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  min-width: 0;
}

.engine-selector-card {
  --engine-accent: #e16f5c;
  --engine-accent-rgb: 225, 111, 92;
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 196px;
  gap: 16px;
  min-width: 0;
  height: 190px;
  padding: 16px;
  overflow: hidden;
  border: 1px solid var(--engine-line);
  border-radius: 13px;
  background: var(--engine-raised);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.03), 0 18px 38px rgba(0, 0, 0, 0.24);
  transition: border-color 180ms ease, box-shadow 180ms ease, background 180ms ease;
}

.engine-selector-card-python {
  --engine-accent: #45d7ff;
  --engine-accent-rgb: 69, 215, 255;
}

.engine-selector-card.is-selected {
  border-color: rgba(var(--engine-accent-rgb), 0.78);
  background: linear-gradient(110deg, rgba(var(--engine-accent-rgb), 0.055), var(--engine-raised) 42%);
  box-shadow:
    inset 0 0 0 1px rgba(var(--engine-accent-rgb), 0.12),
    0 0 28px rgba(var(--engine-accent-rgb), 0.07),
    0 22px 42px rgba(0, 0, 0, 0.32);
}

.engine-selector-card.is-disabled {
  opacity: 0.58;
  filter: saturate(0.55);
}

.engine-selector-card.is-disabled .engine-selector-choice,
.engine-selector-card.is-disabled .engine-selector-go-auth label {
  cursor: not-allowed;
}

.engine-selector-card.is-disabled .engine-selector-check {
  border-style: dashed;
}

.engine-selector-choice {
  display: block;
  min-width: 0;
  margin: 0;
  cursor: pointer;
}

.engine-selector-radio {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
}

.engine-selector-check {
  position: absolute;
  top: 14px;
  right: 14px;
  z-index: 4;
  display: grid;
  place-items: center;
  width: 32px;
  height: 32px;
  border: 1px solid #65757e;
  border-radius: 50%;
  background: #080d10;
  color: #081012;
  transition: border-color 180ms ease, background 180ms ease, box-shadow 180ms ease;
}

.engine-selector-check::after {
  content: "\2713";
  font-size: 18px;
  font-weight: 900;
  line-height: 1;
  opacity: 0;
  transform: scale(0.65);
  transition: opacity 180ms ease, transform 180ms ease;
}

.engine-selector-radio:checked + .engine-selector-check {
  border-color: var(--engine-accent);
  background: var(--engine-accent);
  box-shadow: 0 0 18px rgba(var(--engine-accent-rgb), 0.3);
}

.engine-selector-radio:checked + .engine-selector-check::after {
  opacity: 1;
  transform: scale(1);
}

.engine-selector-radio:focus-visible + .engine-selector-check {
  outline: 2px solid var(--engine-accent);
  outline-offset: 3px;
}

.engine-selector-main {
  display: grid;
  grid-template-columns: 142px minmax(0, 1fr);
  align-items: center;
  gap: 16px;
  min-width: 0;
}

.engine-selector-portrait {
  position: relative;
  display: block;
  width: 142px;
  height: 158px;
  overflow: hidden;
  isolation: isolate;
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 11px;
  background: #ecebea;
  box-shadow: 0 14px 26px rgba(0, 0, 0, 0.34);
  transition: border-color 180ms ease, box-shadow 180ms ease;
}

.engine-selector-portrait img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: saturate(0.82) contrast(1.06);
  transition: filter 180ms ease, transform 220ms ease;
}

.engine-selector-portrait-go img {
  object-position: 50% 17%;
}

.engine-selector-portrait-python img {
  object-position: 50% 17%;
  filter: saturate(0.72) contrast(1.12) brightness(0.8);
}

.engine-selector-portrait::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background:
    linear-gradient(180deg, transparent 45%, rgba(5, 9, 12, 0.16) 68%, rgba(5, 9, 12, 0.92) 100%),
    linear-gradient(90deg, rgba(var(--engine-accent-rgb), 0.08), transparent 48%);
}

.engine-selector-portrait::after {
  content: attr(data-engine-label);
  position: absolute;
  left: 9px;
  bottom: 8px;
  z-index: 2;
  padding: 4px 7px;
  border: 1px solid rgba(var(--engine-accent-rgb), 0.55);
  border-radius: 5px;
  background: rgba(5, 9, 12, 0.84);
  color: var(--engine-accent);
  font: 900 12px/1 Consolas, monospace;
  letter-spacing: 0.06em;
  box-shadow: 0 0 12px rgba(var(--engine-accent-rgb), 0.14);
}

.engine-selector-card.is-selected .engine-selector-portrait {
  border-color: rgba(var(--engine-accent-rgb), 0.72);
  box-shadow: 0 0 0 1px rgba(var(--engine-accent-rgb), 0.1), 0 16px 30px rgba(0, 0, 0, 0.4);
}

.engine-selector-card.is-selected .engine-selector-portrait img {
  filter: saturate(1) contrast(1.08);
  transform: scale(1.025);
}

.engine-selector-card-python.is-selected .engine-selector-portrait img {
  filter: saturate(0.9) contrast(1.13) brightness(0.9);
}

.engine-selector-copy,
.engine-selector-title,
.engine-selector-description,
.engine-selector-features {
  display: block;
  min-width: 0;
}

.engine-selector-title {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
}

.engine-selector-title strong {
  color: #f2f5f6;
  font-size: 20px;
  line-height: 1.2;
  letter-spacing: -0.025em;
}

.engine-selector-title > span {
  padding: 3px 8px;
  border: 1px solid rgba(var(--engine-accent-rgb), 0.34);
  border-radius: 5px;
  color: var(--engine-accent);
  font-size: 10px;
  font-weight: 800;
  line-height: 1;
}

.engine-selector-description {
  margin-top: 8px;
  color: #9caab2;
  font-size: 12px;
  line-height: 1.55;
}

.engine-selector-features {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-top: 12px;
}

.engine-selector-features > span {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 8px;
  border: 1px solid rgba(var(--engine-accent-rgb), 0.18);
  border-radius: 5px;
  background: #0b1115;
  color: #a7b4ba;
  font-size: 10px;
  line-height: 1;
  white-space: nowrap;
}

.engine-selector-features i {
  display: grid;
  place-items: center;
  width: 16px;
  height: 16px;
  border-radius: 4px;
  background: rgba(var(--engine-accent-rgb), 0.12);
  color: var(--engine-accent);
  font: normal 900 10px/1 Consolas, monospace;
}

.engine-selector-controls {
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-width: 0;
  padding: 8px;
  border: 1px solid var(--engine-line);
  border-radius: 9px;
  background: var(--engine-recessed);
}

.engine-selector-controls > label {
  color: var(--engine-accent);
  font: 800 11px/1 Consolas, monospace;
  letter-spacing: 0.08em;
}

.engine-selector-controls > input,
.engine-selector-submode select {
  width: 100%;
  border: 1px solid rgba(var(--engine-accent-rgb), 0.28);
  border-radius: 5px;
  outline: none;
  background: #05090c;
  color: #f0f4f5;
  font-family: Consolas, monospace;
}

.engine-selector-controls > input {
  min-height: 38px;
  margin-top: 6px;
  padding: 0 10px;
  font-size: 17px;
  font-weight: 900;
}

.engine-selector-controls > small {
  margin-top: 4px;
  color: #65757e;
  font: 10px/1.2 Consolas, monospace;
}

.engine-selector-go-auth {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
	min-width: 0;
  margin-top: 7px;
  padding: 2px;
	box-sizing: border-box;
  border: 1px solid var(--engine-line);
  border-radius: 5px;
  background: #05090c;
	overflow: hidden;
}

.engine-selector-go-auth label {
	position: relative;
	min-width: 0;
	cursor: pointer;
}

.engine-selector-go-auth input {
	position: absolute;
	opacity: 0;
	pointer-events: none;
}

.engine-selector-go-auth span {
	display: grid;
	place-items: center;
	min-height: 28px;
	padding: 0 5px;
	border-radius: 3px;
	color: #7f9098;
	font-size: 11px;
	font-weight: 800;
}

.engine-selector-go-auth input:checked + span {
	background: rgba(var(--engine-accent-rgb), 0.18);
	color: var(--engine-accent);
}

.engine-selector-go-auth input:focus-visible + span {
	outline: 2px solid var(--engine-accent);
	outline-offset: 1px;
}

.engine-selector-submode {
  margin-top: 6px;
  padding-top: 6px;
  border-top: 1px solid var(--engine-line);
}

.engine-selector-submode[hidden] {
  display: none;
}

.engine-selector-submode label {
  display: block;
  margin-bottom: 4px;
  color: #8799a2;
  font-size: 9px;
  font-weight: 800;
}

.engine-selector-submode-title {
  display: block;
  margin-bottom: 4px;
  color: #8799a2;
  font-size: 9px;
  font-weight: 800;
}

.engine-selector-submode select {
  min-height: 30px;
  padding: 0 8px;
  font-size: 11px;
}

.engine-selector-python-modes {
  margin-top: 0;
}

.engine-selector-submode .engine-selector-python-modes label {
  display: block;
  margin: 0;
  color: inherit;
  font-size: inherit;
}

.engine-selector-controls > input:focus-visible,
.engine-selector-submode select:focus-visible,
.engine-selector-python-modes input:focus-visible + span {
  border-color: var(--engine-accent);
  box-shadow: 0 0 0 2px rgba(var(--engine-accent-rgb), 0.1);
}

@media (max-width: 1100px) {
  .engine-selector-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 680px) {
  .engine-selector-shell {
    padding: 8px;
  }

  .engine-selector-card {
    grid-template-columns: 1fr;
    height: auto;
    min-height: 0;
    gap: 10px;
    padding: 12px;
  }

  .engine-selector-main {
    grid-template-columns: 88px minmax(0, 1fr);
    gap: 12px;
  }

  .engine-selector-portrait {
    width: 88px;
    height: 112px;
  }

  .engine-selector-title strong {
    font-size: 17px;
  }

  .engine-selector-description {
    font-size: 11px;
  }

  .engine-selector-features {
    margin-top: 8px;
  }

  .engine-selector-controls {
    min-height: 104px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .engine-selector-card,
  .engine-selector-check,
  .engine-selector-check::after,
  .engine-selector-portrait,
  .engine-selector-portrait img {
    transition: none;
  }
}

.account-pool-shell {
  min-height: 260px;
}

.account-pool-metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin-top: 14px;
}

.account-pool-metric {
  position: relative;
  min-height: 62px;
  padding: 10px 12px;
  border: 1px solid var(--line);
  border-radius: 3px;
  background: var(--panel-deep);
}

.account-pool-metric::before {
  display: none;
}

.account-pool-metric b {
  display: block;
  color: var(--cyan);
  font-size: 17px;
  line-height: 1.2;
}

.account-pool-metric span {
  display: block;
  margin-top: 5px;
  color: var(--muted);
  font-size: 12px;
}

.account-pool-empty {
  margin-top: 14px;
  padding: 18px 20px;
  border: 1px dashed var(--line);
  border-radius: 4px;
  background: rgba(10, 16, 24, 0.4);
  color: var(--muted-2);
  line-height: 1.7;
}

.account-pool-empty b,
.account-pool-empty span {
  display: block;
}

.account-pool-control-grid,
.account-pool-proxy-grid {
  display: grid;
  gap: 10px;
  margin-top: 12px;
}

.account-pool-control-grid {
  grid-template-columns: minmax(260px, 2fr) minmax(140px, 1fr) minmax(160px, 1fr);
}

.account-pool-proxy-grid {
  grid-template-columns: repeat(5, minmax(120px, 1fr));
}

.account-pool-action-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 12px;
}

.account-pool-toolbar {
	box-sizing: border-box;
	min-width: 0;
	max-width: 100%;
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 10px;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: rgba(15, 23, 34, 0.5);
}

.account-pool-utilities {
  position: relative;
  display: grid;
  min-width: 0;
  max-width: 100%;
  box-sizing: border-box;
  grid-template-columns: repeat(3, minmax(0, 1fr)) minmax(340px, 1fr);
  grid-template-rows: auto;
  align-items: start;
  justify-content: start;
  gap: 8px;
}

.account-pool-utilities .account-pool-selection-count {
  margin-right: 0;
}

.account-pool-utilities > .account-pool-selection-count {
  position: absolute;
  top: 50%;
  left: 0;
  z-index: 1;
  transform: translateY(-50%);
}

.account-pool-utility-actions {
  grid-column: 4;
  grid-row: 1;
  display: grid;
  grid-template-columns: 66px minmax(0, 1fr);
  grid-template-rows: auto auto;
  column-gap: 6px;
  row-gap: 4px;
  width: 100%;
  min-width: 0;
}

.account-pool-utility-actions-row {
  grid-column: 2;
  grid-row: 1;
  display: flex;
  min-width: 0;
  align-items: center;
  justify-content: flex-end;
  gap: 6px;
}

.account-pool-utility-actions-row > button {
  min-width: 0;
}

.account-pool-utility-actions-row .account-pool-ck-action {
  order: 1;
}

.account-pool-utility-actions-row [data-account-refresh] {
  order: 2;
}

.account-pool-utility-actions-row [data-account-pool-select-limit-clear] {
  order: 3;
}

.account-pool-utility-actions button {
  margin: 0;
  flex: 0 0 auto;
  width: auto;
}

.account-pool-ck-action {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  gap: 4px;
}

.account-pool-ck-proxy-country {
  box-sizing: border-box;
  width: 108px;
  min-width: 108px;
  height: 31px;
  min-height: 31px;
  margin: 0;
  padding: 0 5px;
  border: 1px solid rgba(136, 192, 208, 0.34);
  border-radius: 4px;
  background: var(--panel-deep);
  color: var(--text);
  font-size: 12px;
}

.account-pool-select-limit {
  grid-column: 1 / -1;
  grid-row: 2;
  display: flex;
  min-width: 0;
  align-items: center;
  gap: 6px;
  margin-left: 0;
}

.account-pool-select-limit-label {
  grid-column: 1;
  grid-row: 1;
  align-self: center;
  white-space: nowrap;
}

.account-pool-select-limit > input {
  flex: 0 0 99px;
  width: 99px;
  min-width: 0;
  margin: 0;
}

.account-pool-select-limit > button {
  flex: 0 0 auto;
  margin: 0;
  padding-inline: 7px;
  height: 31px;
  min-height: 31px;
}

.account-pool-select-limit > button[data-account-pool-select-limit-value="50"] {
  flex: 0 0 38px;
  width: 38px;
}

.account-pool-select-limit > button[data-account-pool-select-limit-value="100"] {
  flex: 0 0 44px;
  width: 44px;
}

.account-pool-select-limit > button[data-account-pool-select-limit-value="2000"] {
  flex: 0 0 56px;
  width: 56px;
}

.account-pool-select-limit > button:not([data-account-pool-select-limit-value]) {
  flex: 0 0 78px;
  width: 78px;
}

.account-pool-utility-actions-row [data-account-pool-select-limit-clear] {
  min-width: 78px;
}

.account-pool-search-row {
  display: flex;
  gap: 8px;
  align-items: center;
}

.account-pool-search {
  flex: 1;
  min-width: 200px;
  padding: 7px 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: rgba(9, 15, 24, 0.8);
  color: var(--text);
  font-size: 13px;
}

.account-pool-workbench-grid {
  display: grid;
  min-width: 0;
  max-width: 100%;
  box-sizing: border-box;
  grid-template-columns: repeat(3, minmax(0, 1fr)) minmax(0, 1fr);
  grid-template-areas:
    "actions actions actions settings"
    "actions actions actions settings"
    "search search search settings";
  gap: 8px;
  align-items: start;
}

.account-pool-filter-stack {
  grid-column: 1 / 4;
  grid-row: 1;
  width: 100%;
  min-width: 0;
  max-width: 100%;
  box-sizing: border-box;
  margin-left: 0;
  display: grid;
  grid-template-columns: repeat(9, minmax(0, 1fr));
  gap: 6px;
  padding: 7px;
  border: 1px solid rgba(136, 192, 208, 0.18);
  border-radius: 5px;
  background: rgba(9, 15, 24, 0.45);
}

[data-account-pool-toolbar="grok"] .account-pool-filter-stack {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

[data-account-pool-toolbar="grok"] .account-pool-settings-fields {
  grid-template-columns: repeat(4, minmax(90px, 1fr));
}

.account-pool-filter-stack > label,
.account-pool-settings-fields > label {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 5px;
  color: var(--muted);
  font-size: 12px;
}

.account-pool-filter-stack > label {
  overflow: hidden;
}

.account-pool-filter-stack select {
  box-sizing: border-box;
  width: 100%;
  min-width: 0;
  max-width: 100%;
}

.account-pool-filter-stack > label > span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.account-pool-operations {
  display: contents;
}

.account-pool-settings-fields {
  grid-area: settings;
  align-self: stretch;
  display: grid;
  grid-template-columns: repeat(2, minmax(90px, 1fr));
  gap: 6px;
  padding: 7px;
  border: 1px solid rgba(136, 192, 208, 0.18);
  border-radius: 5px;
  background: rgba(9, 15, 24, 0.45);
}

.account-pool-settings-fields input,
.account-pool-settings-fields select {
  width: 100%;
  min-width: 0;
  margin: 0;
  padding: 5px 7px;
  border: 1px solid var(--line);
  border-radius: 4px;
  background: rgba(9, 15, 24, 0.8);
  color: var(--text);
  font-size: 12px;
}

.account-pool-settings-fields [data-account-pool-refresh-controls][hidden] {
  display: none;
}

.account-pool-action-layout {
  grid-area: actions;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  grid-auto-rows: minmax(126px, auto);
  gap: 6px;
  align-items: stretch;
}

.account-pool-search-row {
  grid-area: search;
  display: flex;
  align-items: stretch;
  min-width: 0;
  min-height: 104px;
}

.account-pool-search-row .account-pool-search {
  min-height: 92px;
  resize: vertical;
}

.account-pool-search-row > button {
  align-self: stretch;
  min-width: 84px;
}

.account-pool-search-actions {
  display: flex;
  flex: 0 0 84px;
  min-width: 84px;
  flex-direction: column;
  gap: 6px;
}

.account-pool-search-actions > button {
  flex: 1 1 0;
  width: 100%;
  min-height: 0;
}

.account-pool-action-group {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  align-content: start;
  align-items: stretch;
  gap: 6px;
  min-width: 0;
  min-height: 0;
  padding: 7px;
  border: 1px solid rgba(136, 192, 208, 0.18);
  border-radius: 5px;
  background: rgba(9, 15, 24, 0.45);
}

.account-pool-action-group-primary {
  grid-column: auto;
}

.account-pool-action-group button {
  box-sizing: border-box;
  width: 100%;
  min-width: 0;
  height: 34px;
  min-height: 34px;
  padding: 0 12px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.account-pool-action-group > .account-pool-group-title,
.account-pool-action-group > .account-pool-sale-status-panel,
.account-pool-action-group > .account-pool-transfer-control {
  grid-column: 1 / -1;
}

.account-pool-special-placeholder {
  cursor: not-allowed;
  opacity: 0.72;
}

.account-pool-transfer-control {
  display: inline-flex;
  flex: 1 1 220px;
  align-items: center;
  gap: 6px;
  min-width: 0;
}

.account-pool-transfer-control select {
  flex: 1 1 130px;
  width: min(170px, 100%);
  min-width: 100px;
  min-height: 32px;
  margin: 0;
  border-color: rgba(136, 192, 208, 0.34);
  border-radius: 4px;
  background: var(--panel-deep);
  color: var(--text);
  font-size: 12px;
}

.account-pool-group-title {
  display: flex;
  flex: 0 0 100%;
  align-items: center;
  box-sizing: border-box;
  min-height: 25px;
  padding: 0 7px;
  border-radius: 3px;
  background: rgba(136, 192, 208, 0.12);
  color: var(--cyan);
  font-size: 12px;
  font-weight: 700;
  white-space: nowrap;
}

.account-pool-filter-select {
  width: 100%;
  min-width: 0;
  max-width: 100%;
  min-height: 34px;
  margin: 0;
  overflow: hidden;
  border-color: rgba(136, 192, 208, 0.34);
  border-radius: 6px;
  background: var(--panel-deep);
  color: var(--text);
  font-size: 12px;
  font-weight: 600;
}

.account-pool-filter-select:focus {
  border-color: var(--cyan);
  box-shadow: 0 0 0 2px rgba(136, 192, 208, 0.12);
}

.account-pool-filter-stack > label.is-filtered > span,
.account-pool-filter-select.is-filtered {
  color: #68aefb;
}

.account-pool-filter-select.is-filtered {
  border-color: #68aefb;
  background: var(--panel-deep);
  box-shadow: inset 0 0 0 1px rgba(104, 174, 251, 0.12);
}

.account-pool-chip.is-active .account-pool-chip-count {
  background: rgba(5, 34, 26, 0.25);
}

.account-pool-selection-count {
  min-width: 64px;
  color: var(--cyan);
  font-size: 12px;
  font-weight: 700;
}

.account-pool-sale-status-tools,
.account-pool-sale-status-panel {
  display: inline-flex;
  flex: 0 0 100%;
  flex-wrap: wrap;
  align-items: center;
  gap: 5px;
}

.account-pool-sale-status-panel[hidden] {
  display: none;
}

.account-pool-sale-status-panel > input[type="text"] {
  width: 92px;
}

.account-pool-sale-status-panel > select,
.account-pool-sale-status-panel > input[type="text"],
.account-pool-sale-status-panel > button,
.account-pool-sale-materials > button {
  flex: 0 0 auto;
  width: auto;
  min-width: 82px;
  height: 32px;
  min-height: 32px;
  padding: 0 10px;
}

.account-pool-sale-status-panel > input[type="text"] {
  min-width: 124px;
}

.account-pool-sale-materials {
  display: none;
  flex: 0 1 auto;
  min-width: 0;
  flex-wrap: wrap;
  align-items: center;
  gap: 5px;
  padding-top: 2px;
}

.account-pool-sale-status-panel.is-package-sale .account-pool-sale-materials {
  display: flex;
}

.account-pool-sale-status-panel.is-package-sale [data-after-sales-package-materials],
.account-pool-sale-status-panel.is-package-sale [data-after-sales-card-materials] {
  display: flex;
}

.account-pool-sale-materials label {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  min-height: 28px;
  padding: 0 7px;
  border: 1px solid rgba(136, 192, 208, 0.24);
  border-radius: 4px;
  background: rgba(9, 15, 24, 0.72);
  color: var(--text);
  font-size: 11px;
  white-space: nowrap;
}

.account-pool-sale-materials input[type="checkbox"] {
  width: 14px;
  height: 14px;
  margin: 0;
}

@media (max-width: 900px) {
  .account-pool-utilities {
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: none;
  }

  .account-pool-utilities > .account-pool-selection-count {
    position: static;
    grid-column: 1;
    grid-row: auto;
    transform: none;
  }

  .account-pool-utilities > .account-pool-selection-count,
  .account-pool-utilities > .account-pool-utility-actions,
  .account-pool-utilities > .account-pool-filter-stack {
    grid-column: 1;
    grid-row: auto;
  }

  .account-pool-filter-stack {
    width: 100%;
    margin-left: 0;
    padding-left: 7px;
  }

  .account-pool-utility-actions {
    display: flex;
    flex-direction: column;
    gap: 6px;
  }

  .account-pool-utility-actions-row {
    width: 100%;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 6px;
  }

  .account-pool-utility-actions-row .account-pool-ck-action {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 0.72fr);
    grid-column: span 2;
  }

  .account-pool-utility-actions-row .account-pool-ck-proxy-country {
    width: 100%;
    min-width: 0;
  }

  .account-pool-select-limit {
    display: grid;
    grid-template-columns: minmax(52px, 1fr) repeat(4, max-content);
    align-items: center;
    gap: 4px;
    margin-left: 0;
  }

  .account-pool-select-limit-label {
    position: static;
    grid-column: auto;
    grid-row: auto;
  }

  .account-pool-select-limit > input {
    width: 100%;
    grid-column: auto;
    grid-row: auto;
  }

  .account-pool-select-limit > button {
    grid-column: auto !important;
    grid-row: auto;
    width: auto !important;
    margin-left: 0;
  }

  .account-pool-workbench-grid {
    grid-template-columns: minmax(0, 1fr);
    grid-template-areas:
      "actions"
      "search"
      "settings";
  }

  .account-pool-filter-stack,
  [data-account-pool-toolbar="grok"] .account-pool-filter-stack {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .account-pool-settings-fields {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .account-pool-action-layout {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .account-pool-action-group {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 620px) {
  .account-pool-filter-stack,
  [data-account-pool-toolbar="grok"] .account-pool-filter-stack,
  [data-account-pool-toolbar="grok"] .account-pool-settings-fields,
  .account-pool-settings-fields,
  .account-pool-action-layout {
    grid-template-columns: minmax(0, 1fr);
  }

  .account-pool-action-group-primary {
    grid-column: auto;
  }

  .account-pool-action-group {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.account-pool-plan-button,
.account-pool-fetch-ba-button,
.account-pool-discard-button {
  border-color: transparent;
  background: #5e81ac;
  color: white;
}

.account-pool-deep-toggle {
  cursor: pointer;
  white-space: nowrap;
}

.account-pool-deep-toggle input {
  margin-right: 4px;
  vertical-align: middle;
}

.account-pool-country,
.account-pool-provider {
  width: 96px;
}

.account-pool-progress {
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding: 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: rgba(9, 15, 24, 0.6);
}

.account-pool-progress[data-account-pool-progress-domain-count="1"],
.account-pool-progress[data-account-pool-progress-domain-count="2"],
.account-pool-progress[data-account-pool-progress-domain-count="3"],
.account-pool-progress[data-account-pool-progress-domain-count="4"] {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: stretch;
}

.account-pool-progress[data-account-pool-progress-domain-count="2"],
.account-pool-progress[data-account-pool-progress-domain-count="3"],
.account-pool-progress[data-account-pool-progress-domain-count="4"] {
  height: 300px;
}

.account-pool-progress[data-account-pool-progress-domain-count="1"] {
  grid-template-columns: minmax(0, 1fr);
}

.account-pool-progress[data-account-pool-progress-domain-count="2"] {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.account-pool-progress[data-account-pool-progress-domain-count="4"] {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.account-pool-progress-domain {
  display: flex;
  min-width: 0;
  min-height: 0;
  flex-direction: column;
  gap: 8px;
  padding: 7px;
  border: 1px solid rgba(136, 192, 208, 0.18);
  border-radius: 5px;
  background: rgba(4, 7, 11, 0.34);
  overflow: hidden;
}

/* Codex on the account page is mounted inside an existing domain. Keep the
   nested view's list in the same flex layout as the verify/relogin streams. */
.account-pool-progress-codex-view {
  display: flex;
  min-width: 0;
  min-height: 0;
  flex: 1 1 auto;
  flex-direction: column;
  gap: 8px;
  overflow: hidden;
}

.account-pool-progress-domain.is-following {
  padding-top: 7px;
  border-top: 0;
}

.account-pool-progress-head {
  display: flex;
  min-width: 0;
  gap: 10px;
  align-items: baseline;
  flex-wrap: wrap;
}

.account-pool-progress-header {
  flex-direction: column;
  align-items: stretch;
  gap: 3px;
}

.account-pool-progress-header-line {
  display: flex;
  min-width: 0;
  gap: 10px;
  align-items: baseline;
  flex-wrap: wrap;
}

.account-pool-progress-header-line > b {
  flex: 0 0 auto;
}

.account-pool-progress-header-line-secondary {
  width: 100%;
}

.account-pool-progress-domain .account-pool-progress-head > .small:not(.account-pool-progress-stats) {
  flex: 0 1 auto;
  min-width: 0;
  overflow: hidden;
  overflow-wrap: normal;
  text-overflow: ellipsis;
  white-space: nowrap;
  line-height: 1.4;
}

.account-pool-progress-stats {
  display: flex;
  flex: 1 1 auto;
  min-width: 0;
  flex-wrap: wrap;
  gap: 2px 9px;
  align-items: baseline;
}

.account-pool-progress-domain .account-pool-progress-head > .account-pool-progress-stats {
  flex: 1 1 auto;
  width: 100%;
  overflow: visible;
  text-overflow: clip;
  white-space: normal;
}

.account-pool-progress-stats-text {
  display: block;
  flex: 1 1 auto !important;
  min-width: 0;
  overflow-wrap: anywhere;
}

.account-pool-progress-stats > span {
  white-space: nowrap;
}

.account-pool-progress-bar {
  position: relative;
  height: 6px;
  border-radius: 999px;
  background: rgba(143, 161, 179, 0.18);
  overflow: hidden;
}

.account-pool-progress-bar span {
  position: absolute;
  inset: 0 auto 0 0;
  display: block;
  height: 100%;
  background: var(--green);
  transition: width 0.3s ease;
}

.account-pool-progress-list {
  display: flex;
  flex: 1 1 0;
  min-height: 0;
  flex-direction: column;
  gap: 3px;
  height: 0;
  max-height: none;
  overflow-y: auto;
  overflow-anchor: none;
  font-size: 13px;
  scrollbar-color: var(--line) transparent;
  scrollbar-width: thin;
}

.account-pool-progress[data-account-pool-progress-domain-count="1"] .account-pool-progress-list {
  flex: 0 1 auto;
  height: 160px;
  max-height: 160px;
}

.account-pool-progress-list::-webkit-scrollbar {
  width: 7px;
}

.account-pool-progress-list::-webkit-scrollbar-thumb {
  border-radius: 999px;
  background: var(--line);
}

.account-pool-progress-item {
  display: flex;
  align-items: baseline;
  gap: 8px;
  flex: 0 0 auto;
  min-width: 0;
  padding: 5px 6px;
  overflow: hidden;
  border: 1px solid rgba(93, 169, 255, 0.28);
  border-radius: 4px;
  background: rgba(15, 23, 34, 0.6);
  line-height: 1.4;
  white-space: nowrap;
}

.account-pool-progress-email {
  flex: 0 1 55%;
  min-width: 0;
  overflow: hidden;
  color: var(--text);
  font-weight: 600;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.account-pool-progress-status {
  flex: 1 1 auto;
  min-width: 0;
  overflow: hidden;
  color: #68aefb;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.account-pool-progress-empty {
  padding: 7px 6px;
  color: var(--muted);
  font-size: 11px;
  text-align: center;
}

.account-pool-progress-stream {
  max-height: 260px;
  padding-top: 6px;
  border-top: 1px solid rgba(143, 161, 179, 0.12);
}

.account-pool-progress-item {
  line-height: 1.45;
}

.account-pool-progress-item.ok {
  color: #68aefb;
}

.account-pool-progress-item.warn {
  color: #68aefb;
}

.account-pool-progress-head .account-job-cancel {
  margin-left: auto;
}

.account-pool-progress-item.bad {
  color: #68aefb;
}

@media (max-width: 760px) {
  .account-pool-progress-item {
    padding-inline: 4px;
  }

  .account-pool-progress[data-account-pool-progress-domain-count="3"] {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    height: 330px;
  }

  .account-pool-progress[data-account-pool-progress-domain-count="4"] {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    height: 330px;
  }

}

@media (max-width: 560px) {
  .account-pool-progress[data-account-pool-progress-domain-count="2"],
  .account-pool-progress[data-account-pool-progress-domain-count="3"],
  .account-pool-progress[data-account-pool-progress-domain-count="4"] {
    grid-template-columns: minmax(0, 1fr);
    height: 420px;
  }


}

.account-pool-progress[data-account-pool-progress="gpt"][data-account-pool-progress-domain-count="3"] {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  grid-template-rows: minmax(0, 1fr);
  height: 300px;
}

.account-pool-select-cell {
  width: 34px;
  text-align: center;
}

.account-pool-classification-line {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
  margin-top: 12px;
  padding: 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: rgba(15, 23, 34, 0.65);
}

.account-pool-classification-line > b {
  color: var(--green);
}

.account-pool-classification-line > span {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 6px;
}

.account-pool-table {
  min-width: 900px;
}

.account-pool-table-empty {
  padding: 18px;
  color: var(--muted-2);
}

.mailbox-tool-tabs {
  margin-bottom: 20px;
}

.mailbox-tool-panel {
  display: none;
}

.mailbox-tool-panel.is-active {
  display: flex;
  flex-direction: column;
}

.mailbox-import-card {
  order: -2;
}

.mailbox-variant-card {
  order: -1;
}

.mailbox-pool-list-card {
  order: 0;
}

.mailbox-email-copy {
  max-width: 100%;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--text);
  cursor: copy;
  font-weight: 600;
  text-align: left;
  white-space: nowrap;
}

.mailbox-email-copy:hover,
.mailbox-email-copy:focus-visible {
  color: var(--cyan);
  text-decoration: underline;
}

.mailbox-email-with-copy {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  max-width: 100%;
  white-space: nowrap;
}

.mailbox-copy-button {
  flex: 0 0 auto;
}

.badge {
  display: inline-flex;
  align-items: center;
  min-height: 17px;
  padding: 1px 5px;
  border: 1px solid rgba(136, 192, 208, 0.28);
  border-radius: 3px;
  background: rgba(14, 17, 22, 0.72);
  color: var(--cyan);
  font-size: 10px;
  font-weight: 700;
  line-height: 15px;
}

.row2,
.row3,
.row4 {
  display: grid;
  gap: 10px;
}

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

.row3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.row4 {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.register-fields-grid {
  display: grid;
  gap: 10px;
}

.register-fields-six {
  grid-template-columns: repeat(6, minmax(0, 1fr));
}

.register-fields-five {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

.register-fields-four {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.register-fields-three {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.toolbar {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
  margin-bottom: 10px;
}

.spacer {
  flex: 1 1 auto;
}

.small {
  font-size: 11px;
}

.hero-panel {
  background: var(--panel);
}

.panel-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 10px;
}

.task-list-panel {
  margin-top: 12px;
}

.task-flow-panel,
.task-queue-panel,
.task-console-panel {
  margin-top: 12px;
}

.task-list-panel .table-wrap {
  margin-bottom: 0;
}

.task-console-panel .task-log {
  min-height: 360px;
  max-height: 620px;
}

.stat,
.stat-card {
  position: relative;
  flex: 0 0 142px;
  min-height: 56px;
  padding: 8px 10px;
  border: 1px solid var(--line);
  border-radius: 3px;
  text-align: left;
  background: var(--panel-deep);
}

.summary-panel {
  display: grid;
  gap: 10px;
}

.stat::before,
.stat-card::before {
  display: none;
}

.stat .v,
.stat-card .num {
  margin-top: 2px;
  color: var(--cyan);
  font-size: 17px;
  font-weight: 700;
}

.stat .l,
.stat-card .sub {
  margin-top: 2px;
  color: var(--muted);
  font-size: 10px;
}

.stat-card .label {
  display: block;
  color: var(--muted);
  font-size: 11px;
}

.stat.ok .v,
.stat.plus .v {
  color: var(--green);
}

.stat.fail .v {
  color: var(--red);
}

.stat.run .v,
.stat.pending .v {
  color: var(--amber);
}

.stat.free .v {
  color: var(--cyan);
}

.stat.banned .v {
  color: var(--violet);
}

.metric-card {
  min-height: 72px;
  padding: 12px;
  color: var(--text);
  font-size: 13px;
  font-weight: 700;
}

.metric-card span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 22px;
  height: 22px;
  margin-right: 7px;
  border-radius: 50%;
  background: var(--line);
  color: var(--green);
  font-family: Consolas, monospace;
}

.recommend-card {
  display: flex;
  align-items: stretch;
  justify-content: space-between;
  gap: 16px;
  padding: 14px;
  border: 1px solid rgba(163, 190, 140, 0.35);
  border-radius: 6px;
  background:
    radial-gradient(circle at 12% 0%, rgba(163, 190, 140, 0.16), transparent 36%),
    linear-gradient(135deg, rgba(46, 52, 64, 0.96), rgba(36, 41, 51, 0.98));
}

.recommend-title {
  color: var(--green);
  font-size: 18px;
  font-weight: 800;
}

.recommend-metrics {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  min-width: 300px;
}

.recommend-metrics span {
  display: inline-flex;
  gap: 5px;
  padding: 6px 9px;
  border-radius: 4px;
  background: rgba(76, 86, 106, 0.72);
  color: var(--muted-2);
}

.recommend-metrics b {
  color: var(--text);
}

.sms-module-brief {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  margin-bottom: 12px;
}

.sms-module-brief div {
  min-height: 72px;
  padding: 10px;
  border: 1px solid rgba(136, 192, 208, 0.28);
  border-radius: 6px;
  background:
    linear-gradient(135deg, rgba(136, 192, 208, 0.08), rgba(14, 17, 22, 0.35)),
    var(--panel-deep);
}

.sms-module-brief b {
  display: block;
  margin-bottom: 6px;
  color: var(--cyan);
}

.sms-module-brief span {
  color: var(--muted-2);
  line-height: 1.5;
}

.sms-desk-layout {
  display: grid;
  grid-template-columns: minmax(340px, 380px) minmax(0, 1fr);
  gap: 14px;
  align-items: start;
  margin: 12px 0;
}

.sms-desk-rail {
  display: grid;
  gap: 12px;
  position: sticky;
  top: 12px;
}

.sms-desk-rail-card {
  display: grid;
  gap: 12px;
  margin: 0;
}

.sms-rail-brand h2 {
  margin: 2px 0 0;
  color: #eceff4;
  font-size: 20px;
  letter-spacing: -0.02em;
}

.sms-desk-rail .sms-target-switch {
  grid-template-columns: auto minmax(0, 1fr);
}

.sms-desk-rail .sms-control-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-bottom: 0;
}

.sms-desk-rail .sms-selection-bar {
  margin-top: 4px;
}

#page-code .sms-desk-rail .sms-selection-bar {
  flex-direction: column;
  align-items: stretch;
  gap: 8px;
}

#page-code .sms-desk-rail .sms-task-actions {
  justify-content: stretch;
}

#page-code .sms-desk-rail .sms-task-actions button {
  flex: 1;
}

.sms-desk-rail-ops {
  display: grid;
  gap: 10px;
  margin: 0;
}

.sms-desk-main {
  display: grid;
  gap: 12px;
  min-width: 0;
}

.sms-market-panel-head {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 10px;
  margin-bottom: 10px;
}

.sms-market-panel-head span {
  display: block;
  color: var(--cyan);
  font-family: Consolas, monospace;
  font-size: 11px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.sms-market-panel-head h3 {
  margin: 2px 0 0;
  color: #eceff4;
  font-size: 15px;
}

.sms-market-panel-head button {
  margin: 0;
  flex: 0 0 auto;
}

.sms-desk-main .sms-market-panel .sms-market-scroll {
  max-height: calc(100vh - 300px);
}

.sms-desk-footer {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
  gap: 12px;
  align-items: start;
}

.sms-desk-footer .card {
  margin: 0;
}

@media (max-width: 1100px) {
  .sms-desk-layout {
    grid-template-columns: 1fr;
  }

  .sms-desk-rail {
    position: static;
  }

  .sms-desk-rail .sms-control-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .sms-desk-main .sms-market-panel .sms-market-scroll {
    max-height: 620px;
  }
}

.sms-market-console {
  display: grid;
  gap: 12px;
  margin: 12px 0;
  padding: 14px;
  border: 1px solid rgba(136, 192, 208, 0.32);
  border-radius: 10px;
  background:
    radial-gradient(circle at 6% 0%, rgba(136, 192, 208, 0.16), transparent 34%),
    radial-gradient(circle at 94% 22%, rgba(163, 190, 140, 0.12), transparent 32%),
    linear-gradient(135deg, #111923, #0d1117 58%, #151b22);
}

.sms-market-command {
  display: grid;
  grid-template-columns: minmax(280px, 1fr) minmax(420px, auto);
  gap: 14px;
  align-items: end;
  padding-bottom: 12px;
  border-bottom: 1px solid rgba(136, 192, 208, 0.18);
}

.sms-market-kicker {
  margin-bottom: 6px;
  color: var(--cyan);
  font-family: Consolas, monospace;
  font-size: 11px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.sms-market-copy h2 {
  margin-bottom: 6px;
  color: #eceff4;
  font-size: 24px;
  letter-spacing: -0.02em;
}

.sms-market-copy p {
  max-width: 700px;
  margin: 0;
  color: var(--muted-2);
  line-height: 1.6;
}

.sms-market-toolbar {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
}

.sms-market-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
}

.sms-market-actions button {
  margin: 0;
}

.sms-target-switch {
  display: grid;
  grid-template-columns: auto minmax(210px, 280px);
  gap: 8px;
  align-items: center;
  min-height: 40px;
  margin: 0;
  padding: 7px 8px;
  border: 1px solid rgba(136, 192, 208, 0.18);
  border-radius: 8px;
  background: rgba(17, 24, 33, 0.65);
}

.sms-target-switch label {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  white-space: nowrap;
}

.sms-market-dashboard {
  display: grid;
  grid-template-columns: minmax(420px, 0.95fr) minmax(520px, 1.35fr);
  gap: 10px;
  align-items: stretch;
}

.sms-market-stats {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 7px;
}

.sms-market-stat {
  min-height: 74px;
  padding: 9px 10px;
  border: 1px solid rgba(136, 192, 208, 0.15);
  border-radius: 8px;
  background: rgba(10, 13, 17, 0.48);
  transition: border-color 0.15s ease;
}

.sms-market-stat:hover {
  border-color: rgba(136, 192, 208, 0.42);
}

.sms-market-stat span,
.sms-market-stat em {
  display: block;
  color: var(--muted-2);
  font-size: 11.5px;
  font-style: normal;
  font-weight: 500;
}

.sms-market-stat em {
  color: var(--muted);
  font-size: 11.5px;
}

.sms-market-stat b {
  display: block;
  color: var(--text);
  font-size: 18px;
  font-weight: 700;
  letter-spacing: -0.01em;
  line-height: 1.15;
}

.sms-provider-strip {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 7px;
}

.sms-provider-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 5px 10px;
  justify-items: start;
  align-items: center;
  min-height: 74px;
  margin: 0;
  padding: 10px 11px;
  border: 1px solid rgba(136, 192, 208, 0.16);
  border-radius: 8px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.025), rgba(0, 0, 0, 0.08)),
    rgba(14, 17, 22, 0.62);
  color: var(--text);
  text-align: left;
  transition: border-color 0.15s ease, transform 0.15s ease;
}

.sms-provider-card:hover {
  border-color: rgba(136, 192, 208, 0.42);
  transform: translateY(-1px);
}

.sms-provider-card.is-orderable {
  border-color: rgba(163, 190, 140, 0.45);
}

.sms-provider-card.is-primary {
  background:
    linear-gradient(180deg, rgba(163, 190, 140, 0.1), rgba(0, 0, 0, 0.08)),
    rgba(14, 17, 22, 0.74);
}

.sms-provider-card span {
  color: var(--text);
  font-size: 13px;
  font-weight: 600;
}

.sms-provider-card b {
  justify-self: end;
  color: var(--green);
  font-family: Consolas, "Microsoft YaHei", monospace;
  font-size: 18px;
  font-weight: 700;
  letter-spacing: -0.01em;
  line-height: 1.1;
}

.sms-provider-card.is-blocked b {
  color: var(--muted);
  font-size: 13px;
  font-weight: 600;
}

.sms-provider-card.is-blocked {
  opacity: 0.85;
}

.sms-provider-card em {
  grid-column: 1 / -1;
  color: var(--muted-2);
  font-style: normal;
  font-size: 11.5px;
  line-height: 1.35;
}

.sms-provider-card .sms-provider-health {
  color: var(--muted);
}

/* Scoped metric typography for resource summary areas. */
#profileDatabaseStats > .stat-card {
  --metric-label-size: 12px;
  --metric-value-size: 15px;
  --metric-sub-size: 11.5px;
  --metric-value-weight: 600;
  display: grid;
  grid-template-columns: minmax(0, 1fr) max-content;
  grid-template-areas: "label value" "sub value";
  align-items: center;
  align-content: start;
  gap: 7px 12px;
  min-height: 78px;
  padding: 14px 16px 14px 18px;
  overflow: visible;
  border-color: rgba(136, 192, 208, 0.22);
  border-radius: 7px;
  background:
    linear-gradient(135deg, rgba(136, 192, 208, 0.06), rgba(10, 13, 17, 0) 42%),
    rgba(10, 13, 17, 0.64);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.035);
  font-family: inherit;
}

#profileDatabaseStats > .stat-card {
  flex: 0 0 265px;
}

#profileDatabaseStats > .stat-card::before {
  content: "";
  display: block;
  position: absolute;
  top: 14px;
  bottom: 14px;
  left: 0;
  width: 3px;
  border-radius: 0 3px 3px 0;
  background: linear-gradient(180deg, var(--cyan), rgba(163, 190, 140, 0.86));
  opacity: 0.8;
}

#profileDatabaseStats > .stat-card .label {
  grid-area: label;
  align-self: center;
  color: var(--muted-2);
  font-size: var(--metric-label-size);
  font-weight: 500;
  line-height: 1.35;
  letter-spacing: 0.01em;
  white-space: nowrap;
}

#profileDatabaseStats > .stat-card .num {
  grid-area: value;
  justify-self: end;
  margin-top: 0;
  padding: 0;
  border: 0;
  background: none;
  color: #cdeefb;
  font-family: inherit;
  font-size: var(--metric-value-size);
  font-weight: var(--metric-value-weight);
  letter-spacing: 0;
  line-height: 1.2;
  text-align: right;
  white-space: nowrap;
  overflow: visible;
}

#profileDatabaseStats > .stat-card .sub {
  grid-area: sub;
  margin-top: 0;
  padding-left: 10px;
  position: relative;
  color: var(--muted-2);
  font-size: var(--metric-sub-size);
  line-height: 1.35;
  overflow: visible;
  white-space: normal;
}

#profileDatabaseStats > .stat-card .sub::before {
  content: "";
  position: absolute;
  top: 0.62em;
  left: 0;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: rgba(136, 192, 208, 0.64);
}

#page-code #smsMarketStats .sms-market-stat,
.account-pool-metric {
  --metric-label-size: 12px;
  --metric-value-size: 15px;
  --metric-sub-size: 11.5px;
  --metric-value-weight: 600;
  font-family: inherit;
}

#page-code #smsMarketStats .sms-market-stat {
  position: relative;
  display: grid;
  grid-template-areas: "label" "value" "hint";
  align-content: start;
  gap: 4px;
  min-height: 78px;
  padding: 12px 14px 12px 18px;
  overflow: hidden;
  border-color: rgba(136, 192, 208, 0.2);
  border-radius: 7px;
  background:
    linear-gradient(135deg, rgba(136, 192, 208, 0.05), transparent 52%),
    rgba(10, 13, 17, 0.56);
}

#page-code #smsMarketStats .sms-market-stat::before {
  content: "";
  position: absolute;
  top: 12px;
  bottom: 12px;
  left: 0;
  width: 3px;
  border-radius: 0 3px 3px 0;
  background: linear-gradient(180deg, var(--cyan), rgba(136, 192, 208, 0.35));
  opacity: 0.7;
}

#page-code #smsMarketStats .sms-market-stat span,
#page-code #smsMarketStats .sms-market-stat em {
  color: var(--muted-2);
  font-family: inherit;
  font-size: var(--metric-label-size);
  font-weight: 500;
  line-height: 1.35;
  letter-spacing: 0.01em;
  white-space: nowrap;
  overflow: visible;
}

#page-code #smsMarketStats .sms-market-stat span {
  grid-area: label;
}

#page-code #smsMarketStats .sms-market-stat em {
  grid-area: hint;
  color: var(--muted);
  font-weight: 400;
}

#page-code #smsMarketStats .sms-market-stat b {
  grid-area: value;
  justify-self: start;
  color: #cdeefb;
  font-family: inherit;
  font-size: var(--metric-value-size);
  font-weight: var(--metric-value-weight);
  letter-spacing: 0;
  line-height: 1.25;
  white-space: nowrap;
}

#smsProviderCards .sms-provider-card {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) max-content;
  grid-template-areas:
    "name price"
    "state note"
    "meta meta"
    "health health";
  align-items: baseline;
  gap: 4px 12px;
  min-height: 96px;
  padding: 12px 14px 12px 18px;
  overflow: hidden;
  border-color: rgba(136, 192, 208, 0.2);
  border-radius: 7px;
  background:
    linear-gradient(135deg, rgba(136, 192, 208, 0.045), transparent 55%),
    rgba(10, 13, 17, 0.62);
  font-family: inherit;
}

#smsProviderCards .sms-provider-card::before {
  content: "";
  position: absolute;
  top: 12px;
  bottom: 12px;
  left: 0;
  width: 3px;
  border-radius: 0 3px 3px 0;
  background: rgba(136, 192, 208, 0.32);
}

#smsProviderCards .sms-provider-card.is-orderable::before {
  background: rgba(163, 190, 140, 0.85);
}

#smsProviderCards .sms-provider-card.is-blocked {
  opacity: 1;
}

#smsProviderCards .sms-provider-card.is-blocked::before {
  background: rgba(191, 97, 106, 0.7);
}

#smsProviderCards .sms-provider-card .sms-provider-name {
  grid-area: name;
  align-self: center;
  color: var(--text);
  font-family: inherit;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.2;
}

#smsProviderCards .sms-provider-card .sms-provider-state {
  grid-area: state;
  justify-self: start;
  padding: 2px 8px;
  border-radius: 3px;
  font-size: 11px;
  font-weight: 500;
  line-height: 1.5;
  color: var(--muted-2);
  background: rgba(136, 192, 208, 0.12);
}

#smsProviderCards .sms-provider-card.is-orderable .sms-provider-state {
  color: #bcd6a0;
  background: rgba(163, 190, 140, 0.16);
}

#smsProviderCards .sms-provider-card.is-blocked .sms-provider-state {
  color: #e8a7ac;
  background: rgba(191, 97, 106, 0.16);
}

#smsProviderCards .sms-provider-card b {
  grid-area: price;
  justify-self: end;
  align-self: center;
  color: var(--green);
  font-family: inherit;
  font-size: 16px;
  font-weight: var(--metric-value-weight);
  letter-spacing: 0;
  line-height: 1.1;
}

#smsProviderCards .sms-provider-card.is-blocked b {
  color: var(--muted);
}

#smsProviderCards .sms-provider-card .sms-provider-quote-note {
  grid-area: note;
  justify-self: end;
  color: var(--muted);
  font-family: inherit;
  font-size: 11px;
  font-weight: 400;
  line-height: 1.4;
}

#smsProviderCards .sms-provider-card .sms-provider-meta {
  grid-area: meta;
  display: flex;
  flex-wrap: wrap;
  gap: 4px 16px;
  margin-top: 4px;
  padding-top: 8px;
  border-top: 1px solid rgba(136, 192, 208, 0.12);
}

#smsProviderCards .sms-provider-card .sms-provider-meta-item {
  display: inline-flex;
  align-items: baseline;
  gap: 5px;
}

#smsProviderCards .sms-provider-card .sms-provider-meta-item em {
  font-family: inherit;
  font-size: 11px;
  font-weight: 400;
  font-style: normal;
  color: var(--muted);
  line-height: 1.4;
}

#smsProviderCards .sms-provider-card .sms-provider-meta-value {
  font-family: inherit;
  font-size: 12.5px;
  font-weight: 600;
  color: var(--text);
  line-height: 1.4;
}

#smsProviderCards .sms-provider-card .sms-provider-health {
  grid-area: health;
  color: var(--muted);
  font-family: inherit;
  font-size: 11px;
  font-style: normal;
  font-weight: 400;
  line-height: 1.4;
}

.account-pool-metric {
  display: grid;
  grid-template-columns: max-content minmax(0, 1fr);
  align-items: center;
  gap: 8px;
  min-height: 68px;
  padding: 12px 14px 12px 18px;
  overflow: visible;
  border-color: rgba(136, 192, 208, 0.22);
  border-radius: 7px;
  background:
    linear-gradient(135deg, rgba(136, 192, 208, 0.055), transparent 46%),
    rgba(10, 13, 17, 0.62);
}

.account-pool-metric::before {
  content: "";
  display: block;
  position: absolute;
  top: 14px;
  bottom: 14px;
  left: 0;
  width: 3px;
  border-radius: 0 3px 3px 0;
  background: rgba(136, 192, 208, 0.76);
}

.account-pool-metric b {
  color: var(--cyan);
  font-family: inherit;
  font-size: var(--metric-value-size);
  font-weight: var(--metric-value-weight);
  line-height: 1.35;
  white-space: nowrap;
}

.account-pool-metric span {
  margin-top: 0;
  color: var(--muted);
  font-size: var(--metric-sub-size);
  font-weight: 400;
  line-height: 1.35;
}

[data-account-pool-panel="microsoft-mail"] .account-pool-empty {
  border-color: rgba(136, 192, 208, 0.2);
  background:
    linear-gradient(135deg, rgba(136, 192, 208, 0.045), transparent 48%),
    rgba(10, 16, 24, 0.42);
  font-family: inherit;
  font-size: 12px;
  line-height: 1.55;
}

[data-account-pool-panel="microsoft-mail"] .account-pool-empty b {
  color: var(--muted-2);
  font-size: 13px;
  font-weight: 500;
}

[data-account-pool-panel="microsoft-mail"] .account-pool-empty span {
  margin-top: 4px;
  color: var(--muted-2);
  font-size: 12px;
  font-weight: 400;
}

.sms-route-panel {
  margin: 12px 0 0;
  padding: 12px;
  border: 1px solid rgba(163, 190, 140, 0.28);
  border-radius: 10px;
  background:
    radial-gradient(circle at 14% 12%, rgba(163, 190, 140, 0.12), transparent 30%),
    linear-gradient(135deg, rgba(14, 17, 22, 0.96), rgba(20, 28, 25, 0.9));
}

.sms-route-head {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: flex-start;
}

.sms-route-kicker {
  color: var(--green);
  font-family: Consolas, monospace;
  font-size: 11px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.sms-route-head h3 {
  margin-top: 4px;
  color: #eceff4;
  font-size: 16px;
}

.sms-route-head p {
  margin: 5px 0 0;
  color: var(--muted-2);
}

.sms-route-actions {
  display: flex;
  gap: 8px;
  white-space: nowrap;
}

.sms-route-rules {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 10px;
}

.sms-route-rules span {
  padding: 5px 8px;
  border: 1px solid var(--line);
  border-radius: 4px;
  background: rgba(10, 13, 17, 0.65);
  color: var(--muted-2);
}

.sms-route-rules b {
  color: var(--green);
  font-family: Consolas, monospace;
}

.sms-route-candidates {
  max-height: 340px;
  margin-top: 10px;
}

.sms-route-candidates table {
  min-width: 1180px;
}

.sms-route-candidates td b {
  display: block;
  color: var(--green);
  font-family: Consolas, monospace;
}

.sms-route-candidates td em {
  display: block;
  color: var(--muted);
  font-size: 10px;
  font-style: normal;
}

.sms-route-candidates tr.is-hot {
  background: rgba(163, 190, 140, 0.08);
}

.sms-route-candidates tr.is-cooling {
  background: rgba(191, 97, 106, 0.1);
  color: var(--muted-2);
}

.sms-route-grid,
.sms-top-grid,
.sms-market-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}

.sms-route-grid {
  margin-top: 10px;
}

.sms-top-grid {
  margin-top: 10px;
}

.sms-route-card,
.sms-market-card {
  min-width: 0;
  padding: 9px 10px;
  border: 1px solid rgba(136, 192, 208, 0.18);
  border-radius: 10px;
  background:
    linear-gradient(135deg, rgba(76, 86, 106, 0.18), rgba(10, 13, 17, 0.82)),
    var(--panel-deep);
}

.sms-route-card.is-hot {
  border-color: rgba(163, 190, 140, 0.48);
  box-shadow: inset 3px 0 0 var(--green);
}

.sms-route-card.is-cooling {
  border-color: rgba(191, 97, 106, 0.45);
  opacity: 0.82;
}

.sms-route-card-head,
.sms-route-card-actions {
  display: flex;
  align-items: center;
  gap: 7px;
}

.sms-route-card-head {
  justify-content: space-between;
  margin-bottom: 8px;
}

.sms-route-card-head span,
.sms-route-card-head em {
  color: var(--muted-2);
  font-style: normal;
}

.sms-route-card-head b,
.sms-market-line b {
  color: var(--green);
  font-family: Consolas, "Microsoft YaHei", monospace;
  font-size: 18px;
}

.sms-route-card h4 {
  margin: 0 0 4px;
  color: var(--cyan);
  font-size: 14px;
}

.sms-route-card p {
  margin: 0 0 10px;
  color: var(--text);
}

.sms-route-card-metrics,
.sms-market-card-metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 5px;
}

.sms-route-card-metrics span,
.sms-market-card-metrics span {
  min-width: 0;
  padding: 4px 6px;
  border: 1px solid rgba(76, 86, 106, 0.42);
  border-radius: 6px;
  background: rgba(10, 13, 17, 0.42);
  color: var(--muted-2);
  font-size: 11px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.sms-route-card-metrics b,
.sms-market-card-metrics b {
  color: var(--text);
  font-family: Consolas, "Microsoft YaHei", monospace;
}

.sms-route-card-actions {
  justify-content: flex-end;
  margin-top: 10px;
}

.sms-route-note {
  margin-top: 10px;
  padding: 8px 10px;
  border: 1px solid rgba(136, 192, 208, 0.18);
  border-radius: 8px;
  background: rgba(136, 192, 208, 0.06);
  color: var(--muted-2);
  font-size: 12px;
}

.sms-route-history {
  margin-top: 10px;
}

.sms-route-history summary {
  cursor: pointer;
  color: var(--cyan);
  font-size: 12px;
  font-weight: 700;
}

.sms-market-panel {
  margin-bottom: 12px;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 9px;
  background: var(--panel-deep);
}

.sms-filter-grid {
  display: grid;
  grid-template-columns: 1.4fr 0.8fr 0.8fr 0.8fr;
  gap: 10px;
  margin-bottom: 10px;
}

.sms-control-grid {
  display: grid;
  grid-template-columns: repeat(6, minmax(110px, 1fr));
  gap: 10px;
  margin-bottom: 10px;
}

.sms-range-grid {
  display: grid;
  grid-template-columns: 0.9fr 1.4fr 0.8fr 0.8fr;
  gap: 10px;
  margin-bottom: 10px;
}

.sms-top-panel {
  margin: 8px 0;
  padding: 8px 10px;
  border: 1px solid rgba(163, 190, 140, 0.24);
  border-radius: 10px;
  background:
    radial-gradient(circle at 12% 0%, rgba(163, 190, 140, 0.12), transparent 28%),
    rgba(10, 13, 17, 0.42);
}

.sms-top-head {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  align-items: flex-start;
}

.sms-top-head b {
  display: block;
  color: var(--green);
  margin-bottom: 2px;
}

.sms-top-grid .empty-note {
  grid-column: 1 / -1;
  padding: 7px 9px;
}

.sms-quick-row {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  align-items: center;
  margin-bottom: 10px;
}

.sms-quick-row .ghost {
  margin: 0;
  border: 1px solid var(--line);
  background: #242b34;
}

.sms-market-scroll {
  max-height: 620px;
}

.sms-price-table {
  display: grid;
  gap: 8px;
}

.sms-market-card {
  display: grid;
  gap: 0;
  padding: 0;
  overflow: hidden;
  border-radius: 8px;
}

.sms-market-card.is-expanded {
  grid-column: 1 / -1;
}

.sms-market-card-shell {
  display: grid;
  grid-template-columns: minmax(190px, 260px) minmax(0, 1fr);
  min-width: 0;
  font-size: 11px;
}

.sms-market-card-main {
  display: grid;
  gap: 4px;
  width: 100%;
  margin: 0;
  padding: 12px 14px;
  border: 0;
  border-right: 1px solid rgba(136, 192, 208, 0.14);
  background: transparent;
  color: inherit;
  text-align: left;
}

.sms-market-card-main:hover {
  filter: none;
}

.sms-market-country {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 6px;
  align-items: baseline;
}

.sms-market-country b {
  color: var(--cyan);
  font-family: inherit;
  font-weight: 600;
}

.sms-market-country strong {
  color: var(--text);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.sms-market-country em,
.sms-market-line em {
  color: var(--muted-2);
  font-style: normal;
}

.sms-market-line {
  display: flex;
  align-items: baseline;
  gap: 8px;
  min-width: 0;
}

.sms-market-line em {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.sms-market-provider-panel {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
  min-width: 0;
  padding: 10px 12px;
}

.sms-market-table {
  min-width: 1080px;
}

.sms-sort-head {
  min-height: 0;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  color: inherit;
  font: inherit;
  text-align: left;
}

.sms-sort-head:hover {
  color: var(--cyan);
  filter: none;
}

.sms-market-row td {
  padding-top: 8px;
  padding-bottom: 8px;
}

.sms-country-button {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 8px;
  align-items: center;
  min-width: 230px;
  margin: 0;
  padding: 8px 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #111821;
  text-align: left;
}

.sms-country-button span b {
  color: var(--text);
}

.sms-country-button em {
  color: var(--muted);
  font-style: normal;
}

.sms-flag {
  min-width: 24px;
  font-size: 18px;
}

.sms-offer-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  min-width: 320px;
}

.sms-provider-price-lanes {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  min-width: 0;
}

.sms-provider-lane {
  display: grid;
  grid-template-areas:
    "name price"
    "meta state";
  grid-template-columns: minmax(78px, 0.8fr) minmax(72px, auto);
  gap: 3px 8px;
  align-items: center;
  min-height: 46px;
  margin: 0;
  padding: 6px 8px;
  border: 1px solid rgba(136, 192, 208, 0.3);
  border-radius: 2px;
  background:
    linear-gradient(135deg, rgba(136, 192, 208, 0.045), transparent 48%),
    rgba(8, 11, 15, 0.5);
  color: var(--muted-2);
  text-align: left;
}

.sms-provider-lane span {
  grid-area: name;
  color: var(--text);
  font-size: 11px;
  font-weight: 600;
}

.sms-provider-lane b {
  grid-area: price;
  justify-self: end;
  color: var(--green);
  font-family: inherit;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.2;
}

.sms-provider-lane em {
  grid-area: meta;
  color: var(--muted-2);
  font-size: 11px;
  font-style: normal;
  line-height: 1.3;
}

.sms-provider-lane small {
  grid-area: state;
  justify-self: end;
  color: var(--muted);
  font-size: 11px;
  line-height: 1.3;
}

.sms-provider-lane.is-active {
  border-color: rgba(163, 190, 140, 0.62);
  background:
    linear-gradient(135deg, rgba(163, 190, 140, 0.08), transparent 46%),
    rgba(8, 11, 15, 0.72);
}

.sms-provider-lane.is-empty {
  opacity: 0.58;
}

.sms-offer-pill {
  display: inline-grid;
  grid-template-columns: auto auto auto;
  gap: 5px;
  align-items: center;
  min-height: 26px;
  margin: 0;
  padding: 4px 7px;
  border: 1px solid var(--line);
  border-radius: 4px;
  background: #202832;
  color: var(--muted-2);
}

.sms-offer-pill.is-orderable {
  border-color: rgba(163, 190, 140, 0.5);
  color: var(--text);
}

.sms-offer-pill b {
  color: var(--green);
  font-family: Consolas, monospace;
}

.sms-offer-pill em {
  color: var(--muted);
  font-style: normal;
}

.sms-row-actions {
  display: flex;
  flex-direction: column;
  gap: 6px;
  align-items: center;
}

.sms-market-card .sms-row-actions button {
  min-height: 27px;
  padding: 4px 9px;
}

.sms-provider-detail-row td {
  padding: 0 8px 12px;
  background: rgba(136, 192, 208, 0.025);
}

.sms-provider-detail-list {
  display: grid;
  gap: 6px;
  margin: 0 8px 8px;
  padding: 6px;
  border-top: 1px solid rgba(136, 192, 208, 0.12);
  border-radius: 3px;
  background: rgba(5, 8, 12, 0.28);
}

.sms-provider-mini {
  display: grid;
  gap: 6px;
  padding: 7px 8px 6px;
  border: 1px solid rgba(136, 192, 208, 0.26);
  border-radius: 3px;
  background: rgba(8, 11, 15, 0.55);
}

.sms-provider-mini.is-orderable {
  border-color: rgba(163, 190, 140, 0.45);
}

.sms-provider-mini-main {
  display: grid;
  grid-template-columns: auto auto minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
  justify-items: start;
  min-height: 0;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--muted-2);
  text-align: left;
}

.sms-provider-mini-main:hover {
  filter: none;
}

.sms-provider-mini-main b {
  color: var(--text);
  font-size: 12px;
  font-weight: 600;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.sms-provider-mini-main span {
  color: var(--green);
}

.sms-provider-mini-main span strong {
  font-weight: 600;
}

.sms-provider-mini-main em,
.sms-provider-mini-main small,
.sms-provider-mini-main i {
  color: var(--muted-2);
  font-style: normal;
  white-space: nowrap;
}

.sms-provider-mini-main em {
  justify-self: start;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
}

.sms-provider-mini-main i {
  justify-self: end;
  padding: 2px 7px;
  border-radius: 3px;
  background: rgba(235, 203, 139, 0.12);
  color: var(--amber);
  font-size: 10px;
}

.sms-provider-mini.is-orderable .sms-provider-mini-main i {
  background: rgba(163, 190, 140, 0.12);
  color: var(--green);
}

.sms-tier-mini-list {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
}

.sms-tier-mini-list span {
  padding: 2px 5px;
  border-radius: 3px;
  background: rgba(94, 129, 172, 0.14);
  color: var(--cyan);
  font-size: 10px;
}

.sms-tier-mini-list em {
  color: var(--muted-2);
  font-style: normal;
}

.sms-provider-detail-card {
  padding: 14px;
  border: 1px solid rgba(136, 192, 208, 0.18);
  border-radius: 12px;
  background:
    linear-gradient(135deg, rgba(76, 86, 106, 0.22), rgba(10, 13, 17, 0.82)),
    var(--panel-deep);
}

.sms-provider-detail-card.is-orderable {
  border-color: rgba(163, 190, 140, 0.45);
}

.sms-provider-detail-head,
.sms-provider-detail-stats {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.sms-provider-detail-head {
  margin-bottom: 12px;
}

.sms-provider-detail-head h4 {
  margin: 0 0 3px;
  color: var(--text);
  font-size: 14px;
}

.sms-provider-detail-head p {
  margin: 0;
  color: var(--muted-2);
}

.sms-provider-detail-stats {
  justify-content: flex-start;
  margin-bottom: 10px;
}

.sms-provider-detail-stats div {
  min-width: 160px;
}

.sms-provider-detail-stats span,
.sms-provider-detail-stats em {
  display: block;
  color: var(--muted-2);
  font-style: normal;
}

.sms-provider-detail-stats b {
  display: block;
  margin: 3px 0;
  color: var(--green);
  font-family: Consolas, "Microsoft YaHei", monospace;
  font-size: 16px;
}

.sms-tier-list {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(248px, 1fr));
  gap: 5px;
  font-size: 11px;
}

.sms-tier-chip {
  display: grid;
  grid-template-columns: 48px 82px 46px auto;
  align-items: center;
  gap: 4px 8px;
  min-height: 28px;
  padding: 3px 8px;
  border: 1px solid rgba(136, 192, 208, 0.28);
  border-radius: 2px;
  background: rgba(8, 11, 15, 0.55);
  color: var(--muted-2);
  font: inherit;
  white-space: nowrap;
}

.sms-tier-cny {
  color: var(--amber);
  font-style: normal;
  font-size: 11px;
  overflow: hidden;
  text-overflow: ellipsis;
}

.sms-tier-chip.is-orderable {
  border-color: rgba(163, 190, 140, 0.45);
}

.sms-tier-chip.is-selected {
  border-color: rgba(136, 192, 208, 0.85);
  background: rgba(136, 192, 208, 0.14);
  color: var(--cyan);
}

.sms-tier-chip b {
  color: var(--green);
  font-size: 11px;
  font-weight: 500;
  overflow: hidden;
  text-overflow: ellipsis;
}

.sms-tier-chip span {
  color: var(--text);
  font-weight: 500;
  overflow: hidden;
  text-overflow: ellipsis;
}

.sms-tier-chip .sms-tier-action {
  justify-self: end;
  min-width: 38px;
  min-height: 22px;
  padding: 2px 10px;
  border: 0;
  border-radius: 4px;
  background: #5e81ac;
  color: #fff;
  font: inherit;
  font-style: normal;
  font-weight: 500;
  text-align: center;
  cursor: pointer;
  transition: background 0.12s ease;
}

.sms-tier-chip .sms-tier-action:hover {
  background: #6b8fbb;
}

.sms-tier-chip .sms-tier-action.is-selected {
  background: transparent;
  border: 1px solid rgba(136, 192, 208, 0.55);
  padding: 2px 10px;
  color: var(--cyan);
}

.sms-tier-chip .sms-tier-action.is-selected:hover {
  background: rgba(136, 192, 208, 0.12);
}

.sms-tier-chip .sms-tier-action:disabled {
  background: rgba(76, 86, 106, 0.5);
  color: var(--muted-2);
  cursor: not-allowed;
}

.sms-tier-chip em,
.sms-tier-chip small {
  color: var(--muted-2);
  font-style: normal;
}

.sms-selected-route {
  padding: 9px 10px;
  border: 1px solid rgba(235, 203, 139, 0.42);
  border-radius: 8px;
  background: rgba(235, 203, 139, 0.07);
  color: var(--amber);
}

.sms-advanced-card {
  padding: 0;
  overflow: hidden;
}

.sms-advanced-card summary {
  padding: 13px 14px;
  color: var(--green);
  cursor: pointer;
  font-weight: 700;
}

.sms-advanced-card form {
  padding: 0 14px 14px;
}

.empty-note {
  padding: 12px;
  border: 1px dashed var(--line);
  border-radius: 4px;
  color: var(--muted);
}

.form-panel form,
.task-form {
  display: grid;
  gap: 10px;
}

.form-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 10px;
}

.form-grid.four {
  grid-template-columns: repeat(4, 1fr);
}

label {
  display: block;
  margin-bottom: 4px;
  color: var(--muted-2);
  font-size: 12px;
}

input,
select,
textarea {
  width: 100%;
  min-height: 31px;
  padding: 6px 8px;
  border: 1px solid var(--line);
  border-radius: 4px;
  background: var(--panel-deep);
  color: var(--text);
  font-family: Consolas, "Microsoft YaHei", monospace;
  font-size: 12px;
  outline: none;
}

textarea {
  resize: vertical;
  line-height: 1.45;
}

input:focus,
select:focus,
textarea:focus {
  border-color: var(--cyan);
}

.sms-country-field {
  position: relative;
}

.sms-country-lock {
  display: grid;
  gap: 6px;
}

.sms-country-lock-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.sms-country-lock-grid.compact {
  gap: 4px;
}

.sms-lock-country {
  display: inline-grid;
  grid-template-columns: auto auto auto;
  align-items: center;
  gap: 5px;
  width: auto;
  min-height: 30px;
  padding: 5px 8px;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: var(--panel-deep);
  color: var(--muted-2);
}

.sms-lock-country b {
  color: var(--cyan);
  font-family: Consolas, monospace;
}

.sms-lock-country span {
  color: var(--text);
}

.sms-lock-country em {
  color: var(--muted);
  font-style: normal;
  font-family: Consolas, monospace;
}

.sms-lock-country:hover,
.sms-lock-country:focus {
  border-color: rgba(136, 192, 208, 0.7);
  background: rgba(136, 192, 208, 0.08);
}

.sms-lock-country.is-active {
  border-color: rgba(163, 190, 140, 0.9);
  background: rgba(163, 190, 140, 0.18);
}

.sms-lock-country.is-active b,
.sms-lock-country.is-active span {
  color: var(--green);
}

.sms-country-picker {
  position: absolute;
  top: calc(100% + 4px);
  left: 0;
  right: 0;
  z-index: 35;
  display: none;
  max-height: 260px;
  padding: 6px;
  overflow: auto;
  border: 1px solid rgba(136, 192, 208, 0.45);
  border-radius: 8px;
  background: #0b0f15;
  box-shadow: 0 18px 44px rgba(0, 0, 0, 0.45);
}

.sms-country-picker.is-open {
  display: grid;
  gap: 4px;
}

.sms-country-choice {
  display: grid;
  grid-template-columns: 44px 58px minmax(0, 1fr);
  gap: 8px;
  align-items: center;
  width: 100%;
  min-height: 42px;
  margin: 0;
  padding: 7px 8px;
  border: 1px solid transparent;
  border-radius: 6px;
  background: transparent;
  color: var(--text);
  text-align: left;
}

.sms-country-choice:hover,
.sms-country-choice:focus {
  border-color: rgba(136, 192, 208, 0.5);
  background: rgba(136, 192, 208, 0.1);
}

.sms-country-choice-iso {
  color: var(--green);
  font-family: Consolas, monospace;
  font-weight: 800;
}

.sms-country-choice-dial {
  color: var(--cyan);
  font-family: Consolas, monospace;
  font-weight: 700;
}

.sms-country-choice-name {
  min-width: 0;
}

.sms-country-choice-name b,
.sms-country-choice-name em {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.sms-country-choice-name b {
  color: var(--text);
  font-weight: 700;
}

.sms-country-choice-name em {
  color: var(--muted-2);
  font-style: normal;
  font-size: 11px;
}

.sms-country-choice-empty {
  padding: 10px;
  color: var(--muted-2);
}

button,
.primary,
.ghost {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 30px;
  margin: 0 6px 6px 0;
  padding: 7px 14px;
  border: 0;
  border-radius: 4px;
  background: #5e81ac;
  color: white;
  cursor: pointer;
  font-size: 12px;
  font-weight: 500;
}

.primary {
  background: var(--green);
  color: #1c1f24;
  font-weight: 700;
}

.primary.large {
  min-height: 34px;
}

.ghost {
  background: #5e81ac;
  color: white;
}

.ghost.danger {
  background: var(--red);
}

.ghost:hover,
button:hover,
.primary:hover {
  filter: brightness(1.06);
}

button:disabled,
button:disabled:hover {
  cursor: not-allowed;
  opacity: 0.62;
  filter: none;
}

.compact {
  min-height: 26px;
  padding: 5px 10px;
  font-size: 11px;
}

.table-wrap,
.scroll {
  max-height: 560px;
  overflow: auto;
  border: 1px solid var(--line);
  border-radius: 4px;
}

table {
  width: 100%;
  min-width: 760px;
  border-collapse: collapse;
  font-size: 12px;
}

th,
td {
  padding: 5px 8px;
  border-bottom: 1px solid var(--line);
  text-align: left;
  vertical-align: middle;
  white-space: nowrap;
}

th {
  position: sticky;
  top: 0;
  z-index: 1;
  background: var(--panel-deep);
  color: var(--muted-2);
  font-weight: 400;
}

tr:hover td {
  background: rgba(136, 192, 208, 0.035);
}

td.path-cell {
  max-width: 260px;
  overflow: hidden;
  color: var(--muted);
  text-overflow: ellipsis;
}

td.code-cell {
  color: var(--green);
  font-family: Consolas, "Microsoft YaHei", monospace;
  font-weight: 700;
}

td.code-cell-waiting {
  color: var(--amber);
  white-space: nowrap;
}

.inline-spinner {
  display: inline-block;
  width: 12px;
  height: 12px;
  margin-right: 6px;
  border: 2px solid rgba(235, 203, 139, 0.3);
  border-top-color: var(--amber);
  border-radius: 50%;
  vertical-align: -2px;
  animation: inline-spin 0.8s linear infinite;
}

.code-fetch-btn.is-loading {
  background: #4f5665;
  color: var(--amber);
}

@keyframes inline-spin {
  to {
    transform: rotate(360deg);
  }
}

td.profile-cell {
  max-width: 280px;
  overflow: hidden;
  color: var(--muted-2);
  text-overflow: ellipsis;
}

.chip,
.mode-pill {
  display: inline-block;
  min-height: 17px;
  padding: 1px 6px;
  border: 0;
  border-radius: 3px;
  background: var(--line);
  color: var(--text);
  font-size: 10px;
  line-height: 15px;
  white-space: nowrap;
}

.status-success,
.status-active,
.status-registering,
.chip.ok {
  background: var(--green);
  color: #1c1f24;
}

.status-failed,
.status-giveup,
.status-banned,
.status-cancelled,
.chip.bad {
  background: var(--red);
  color: white;
}

.status-running,
.status-partial,
.status-attempt_failed,
.status-queued,
.status-stopping,
.status-cooling,
.status-pending_stability,
.status-needs_check,
.chip.warn {
  background: var(--amber);
  color: #1c1f24;
}

.status-unused,
.status-registered,
.chip.info {
  background: #4c566a;
  color: var(--text);
}

.status-register_failed,
.status-discarded,
.status-expired,
.status-risk_locked,
.status-stability_check_failed,
.status-check_failed {
  background: var(--orange);
  color: #1c1f24;
}

.chip.neutral {
  background: #3a4148;
  color: var(--muted-2);
}

.progress {
  width: 110px;
  height: 8px;
  overflow: hidden;
  border-radius: 4px;
  background: var(--line);
}

.progress-wrap {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-width: 190px;
}

.progress span {
  display: block;
  width: var(--value, 0%);
  height: 100%;
  background: linear-gradient(90deg, var(--green), var(--cyan));
  transition: width 0.25s;
}

.progress-label {
  min-width: 58px;
  color: var(--muted-2);
  font-family: Consolas, monospace;
  font-size: 11px;
  font-weight: 700;
  white-space: nowrap;
}

.task-action-cell {
  min-width: 76px;
  white-space: nowrap;
}

.console {
  display: block;
  width: 100%;
  min-height: 360px;
  max-height: 620px;
  overflow: auto;
  padding: 8px;
  border: 1px solid var(--line);
  border-radius: 4px;
  background: var(--panel-dark);
  color: #9aa9b9;
  font-family: Consolas, monospace;
  font-size: 11px;
  line-height: 1.45;
  white-space: pre-wrap;
  cursor: text;
  resize: none;
  user-select: text;
  -webkit-user-select: text;
}

.copy-buffer {
  position: fixed;
  left: -9999px;
  top: -9999px;
  width: 1px;
  height: 1px;
  opacity: 0;
}

.log {
  max-height: 360px;
  overflow: auto;
  padding: 8px;
  border: 1px solid var(--line);
  border-radius: 4px;
  background: var(--panel-dark);
  color: #9aa9b9;
  font-family: Consolas, monospace;
  font-size: 11px;
  line-height: 1.45;
  white-space: pre-wrap;
  cursor: text;
  user-select: text;
  -webkit-user-select: text;
}

a.is-disabled {
  pointer-events: none;
  opacity: 0.45;
}

.mailbox-rt-log {
  min-height: 220px;
}

.mailbox-rt-results {
  min-height: 220px;
  max-height: 360px;
}

.register-exec-panel {
  border-color: rgba(235, 203, 139, 0.38);
}

.exec-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 8px;
  margin-bottom: 10px;
}

.exec-card {
  padding: 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel-deep);
  box-shadow: inset 3px 0 0 var(--line);
}

.exec-card.exec-running {
  border-color: rgba(235, 203, 139, 0.65);
  box-shadow: inset 3px 0 0 var(--amber);
}

.exec-card.exec-ok {
  border-color: rgba(163, 190, 140, 0.65);
  box-shadow: inset 3px 0 0 var(--green);
}

.exec-card.exec-fail {
  border-color: rgba(191, 97, 106, 0.72);
  box-shadow: inset 3px 0 0 var(--red);
}

.exec-title {
  color: var(--muted-2);
  font-size: 11px;
}

.exec-value {
  margin-top: 4px;
  color: var(--text);
  font-family: Consolas, "Microsoft YaHei", monospace;
  font-size: 14px;
  font-weight: 700;
}

.ms-risk-panel {
  border-color: rgba(136, 192, 208, 0.36);
}

.ms-risk-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  margin-bottom: 10px;
}

.ms-risk-table {
  max-height: 360px;
  overflow: auto;
}

.ms-risk-table table {
  min-width: 1180px;
}

.ms-risk-table th,
.ms-risk-table td {
  white-space: nowrap;
  font-family: Consolas, "Microsoft YaHei", monospace;
  font-size: 11px;
}

.ms-risk-table tr.ms-risk-rejected td {
  background: rgba(191, 97, 106, 0.1);
}

.ms-risk-table tr.ms-risk-ok td {
  background: rgba(163, 190, 140, 0.08);
}

.proxy-progress-row {
  display: grid;
  grid-template-columns: minmax(170px, 260px) minmax(130px, 190px) minmax(0, 1fr);
  gap: 10px;
  align-items: center;
  padding: 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel-deep);
}

.proxy-progress-title {
  color: var(--cyan);
  font-weight: 700;
}

.proxy-last-error {
  margin-top: 8px;
  padding: 8px 10px;
  max-height: 36px;
  overflow: hidden;
  border: 1px solid rgba(191, 97, 106, 0.45);
  border-radius: 8px;
  background: rgba(191, 97, 106, 0.08);
  color: #e6a0a7;
  font-family: Consolas, "Microsoft YaHei", monospace;
  font-size: 11px;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.flow-cards {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 10px;
}

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

.slot {
  min-height: 96px;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel-deep);
}

.slot .slot-title {
  margin-bottom: 5px;
  color: #eceff4;
  font-weight: 700;
}

.slot .slot-email {
  color: #9aa9b9;
  font-family: Consolas, monospace;
  font-size: 12px;
  word-break: break-all;
}

.task-section-title {
  margin: 12px 0 8px;
  color: var(--muted);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.08em;
}

.task-log-tools {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

.task-slot-progress {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 12px;
  margin-top: 10px;
}

.task-slot-step {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  min-width: 54px;
  color: var(--muted-2);
  font-size: 12px;
  line-height: 1;
}

.task-slot-step .step-dot {
  width: 13px;
  height: 13px;
  flex: 0 0 auto;
  border-radius: 50%;
  background: var(--line);
  box-shadow: inset 0 0 0 2px rgba(255, 255, 255, 0.04);
}

.task-slot-step .step-label {
  white-space: nowrap;
}

.task-slot-step.is-on .step-dot {
  background: #1d9bf0;
}

.task-slot-step.is-done .step-dot {
  background: #00c781;
}

.task-slot-step.is-fail .step-dot {
  background: var(--red);
}

.task-slot-step.is-on .step-label,
.task-slot-step.is-done .step-label,
.task-slot-step.is-fail .step-label {
  color: #d9e8f7;
}

.slot .steps {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  margin: 8px 0;
}

.slot .step {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 19px;
  height: 19px;
  border-radius: 50%;
  background: var(--line);
  color: #aab;
  font-size: 10px;
}

.slot .step.is-on {
  background: var(--cyan);
  color: #061018;
}

.slot.running {
  border-color: var(--amber);
}

.slot.ok {
  border-color: var(--green);
}

.slot.fail {
  border-color: var(--red);
}

.slot.running .step:nth-child(-n+3) {
  background: #1d9bf0;
  color: white;
}

.slot.ok .step {
  background: #00c781;
  color: #001b10;
}

.slot.fail .step:nth-child(1) {
  background: var(--red);
  color: white;
}

.live-flow-panel {
  border-color: rgba(136, 192, 208, 0.34);
}

.flow-summary {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  justify-content: flex-end;
}

.flow-step-legend {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-bottom: 10px;
  color: var(--muted-2);
  font-size: 11px;
}

.flow-step-legend span {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 3px 7px;
  border: 1px solid var(--line);
  border-radius: 4px;
  background: var(--panel-deep);
}

.flow-step-legend b {
  color: var(--cyan);
}

.flow-list {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(360px, 1fr));
  gap: 12px;
  max-height: none;
  overflow: visible;
  padding-right: 4px;
  user-select: text;
  -webkit-user-select: text;
}

.flow-queue-note {
  margin-top: 10px;
  padding: 9px 12px;
  border: 1px dashed rgba(136, 192, 208, 0.35);
  border-radius: 10px;
  color: var(--muted-2);
  background: rgba(136, 192, 208, 0.06);
  font-size: 12px;
}

.flow-row {
  display: grid;
  gap: 10px;
  align-content: start;
  min-height: 150px;
  padding: 14px;
  border: 1px solid var(--line);
  border-radius: 9px;
  background: var(--panel-deep);
}

.flow-row.flow-running {
  border-color: rgba(235, 203, 139, 0.72);
}

.flow-row.flow-success {
  border-color: rgba(163, 190, 140, 0.72);
}

.flow-row.flow-registered {
  border-color: rgba(136, 192, 208, 0.62);
}

.flow-row.flow-failed,
.flow-row.flow-giveup {
  border-color: rgba(191, 97, 106, 0.78);
}

.flow-row.flow-attempt_failed {
  border-color: rgba(191, 97, 106, 0.78);
}

.flow-slot-title {
  color: var(--text);
  font-size: 16px;
  font-weight: 700;
}

.flow-email {
  color: var(--muted-2);
  font-family: Consolas, monospace;
  font-size: 11px;
  font-weight: 700;
  word-break: break-all;
}

.flow-step-dots {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}

.flow-dot {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  background: #222b35;
  color: var(--muted-2);
  font-family: Consolas, monospace;
  font-size: 10px;
  font-weight: 700;
}

.flow-dot.done,
.flow-dot.active {
  background: #1d9bf0;
  color: #eef7ff;
}

.flow-row.flow-success .flow-dot.done,
.flow-row.flow-success .flow-dot.active {
  background: var(--green);
  color: #13200f;
}

.flow-row.flow-giveup .flow-dot.active,
.flow-row.flow-attempt_failed .flow-dot.active,
.flow-row.flow-failed .flow-dot.active {
  background: var(--red);
  color: white;
}

.flow-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  color: var(--muted);
  font-family: Consolas, monospace;
  font-size: 10px;
}

.flow-run-text {
  overflow: hidden;
  color: var(--text);
  font-size: 12px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.flow-empty {
  padding: 14px;
  border: 1px dashed var(--line);
  border-radius: 8px;
  color: var(--muted);
  background: var(--panel-deep);
}

.tag {
  display: inline-block;
  margin-right: 4px;
  padding: 1px 6px;
  border-radius: 3px;
  font-size: 10px;
}

.tag.pending {
  background: var(--amber);
  color: #1c1f24;
}

.tag.free {
  background: #4c566a;
  color: var(--text);
}

.tag.plus {
  background: var(--green);
  color: #1c1f24;
}

.tag.unknown {
  background: #3a4148;
  color: var(--muted-2);
}

.tag.fail {
  background: var(--red);
  color: white;
}

.mono {
  font-family: Consolas, "Microsoft YaHei", monospace;
}

.flow-cards div {
  min-height: 55px;
  padding: 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel-deep);
  color: var(--text);
  font-size: 12px;
  font-weight: 700;
}

.steps {
  margin: 0;
  padding-left: 18px;
  color: #9aa9b9;
  font-family: Consolas, monospace;
  font-size: 12px;
  line-height: 1.8;
}

.muted,
.hint-list p {
  color: var(--muted);
  font-size: 11px;
  line-height: 1.55;
}

.hint-list p {
  margin: 0 0 8px;
}

.status-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.code-block {
  margin: 0;
  padding: 8px;
  overflow: auto;
  border: 1px solid var(--line);
  border-radius: 4px;
  background: var(--panel-dark);
  color: #9aa9b9;
  font-family: Consolas, monospace;
  font-size: 11px;
  line-height: 1.45;
}

.quick-links {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 10px;
}

.quick-links .ghost {
  margin: 0;
  background: var(--panel-deep);
  color: var(--cyan);
  border: 1px solid var(--line);
}

.toast {
  position: fixed;
  right: 18px;
  bottom: 18px;
  z-index: 20;
  box-sizing: border-box;
  max-width: min(360px, calc(100vw - 36px));
  max-height: min(320px, calc(100vh - 36px));
  overflow-y: auto;
  overflow-wrap: anywhere;
  padding: 9px 12px;
  border: 1px solid var(--line);
  border-radius: 4px;
  background: var(--panel);
  color: var(--text);
  opacity: 0;
  pointer-events: none;
  transform: translateY(6px);
  transition: 0.15s ease;
}

.toast.is-visible {
  opacity: 1;
  transform: translateY(0);
}

/* 缺目标工作台时闪一下下拉框：它离按钮有距离，光靠文字提示容易找不到。 */
.needs-attention {
  outline: 2px solid var(--cyan, #4dd0e1);
  outline-offset: 1px;
}

/* 常驻提示要能读完、能选中复制，所以放开 pointer-events 并放宽宽度。 */
.toast.is-sticky {
  max-width: min(520px, calc(100vw - 36px));
  cursor: pointer;
  pointer-events: auto;
  white-space: pre-wrap;
  border-color: var(--cyan, #4dd0e1);
}

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

.row-actions select {
  min-height: 28px;
  max-width: 126px;
}

.account-toolbar {
  --account-toolbar-action-width: 118px;
  display: grid;
  grid-template-columns: minmax(260px, 1.35fr) minmax(150px, 0.55fr) minmax(150px, 0.55fr) minmax(0, 2.5fr);
  gap: 8px;
  align-items: center;
}

.account-toolbar > input,
.account-toolbar > select {
  width: 100%;
  min-width: 0;
  margin: 0;
}

.account-toolbar-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: flex-end;
  align-items: center;
  min-width: 0;
}

.account-toolbar-actions button {
  flex: 0 0 var(--account-toolbar-action-width);
  width: var(--account-toolbar-action-width);
  margin: 0;
  padding-left: 8px;
  padding-right: 8px;
  white-space: nowrap;
}

.account-toolbar-summary {
  grid-column: 1 / -1;
  justify-self: center;
}

.mailbox-toolbar {
  --mailbox-toolbar-action-width: 96px;
  display: grid;
  grid-template-columns: minmax(280px, 1.35fr) minmax(250px, 0.65fr) minmax(220px, 0.55fr) minmax(0, 2.7fr);
  gap: 8px;
  align-items: center;
}

.mailbox-toolbar > input,
.mailbox-toolbar > select {
  width: 100%;
  min-width: 0;
  margin: 0;
}

.mailbox-search {
  min-width: 0;
}

.mailbox-toolbar-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: flex-end;
  align-items: center;
  min-width: 0;
}

.mailbox-toolbar-actions button {
  flex: 0 0 var(--mailbox-toolbar-action-width);
  width: var(--mailbox-toolbar-action-width);
  margin: 0;
  padding-left: 8px;
  padding-right: 8px;
  white-space: nowrap;
}

.mailbox-toolbar-summary {
  grid-column: 1 / -1;
  justify-self: center;
}

.account-run-settings {
  display: grid;
  grid-template-columns: repeat(5, minmax(120px, 1fr));
  gap: 10px;
  margin: 8px 0 6px;
  padding: 10px;
  border: 1px solid rgba(143, 161, 179, 0.16);
  border-radius: 10px;
  background: rgba(19, 25, 33, 0.48);
}

.account-run-settings label {
  color: var(--muted);
  font-size: 11px;
}

.account-run-settings select,
.account-run-settings input {
  width: 100%;
  margin-top: 4px;
}

.account-proxy-hint {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
  margin: 8px 0 4px;
}

.account-pool-scroll {
  margin-top: 10px;
}

.account-pool-pagination {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 10px;
  margin-top: 10px;
}

.account-pool-pagination [data-account-pool-page-info] {
  min-width: 150px;
  text-align: center;
}

.account-action-progress {
  margin-top: 10px;
  padding: 10px 12px;
  border: 1px solid rgba(136, 192, 208, 0.34);
  border-radius: 8px;
  background: rgba(10, 13, 17, 0.72);
}

.account-progress-head,
.account-progress-foot {
  display: flex;
  align-items: center;
  gap: 10px;
  color: var(--muted-2);
  font-size: 12px;
}

.account-progress-head strong {
  color: var(--cyan);
  font-size: 13px;
}

.account-progress-head b {
  margin-left: auto;
  color: var(--green);
  font-family: Consolas, "Microsoft YaHei", monospace;
}

.account-progress-bar {
  height: 7px;
  margin: 8px 0;
  overflow: hidden;
  border-radius: 2px;
  background: rgba(76, 86, 106, 0.45);
}

.account-progress-bar i {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, var(--cyan), var(--green));
  transition: width 0.2s ease;
}

.account-progress-metrics {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(110px, 1fr));
  gap: 6px;
  margin-top: 10px;
}

.account-progress-metrics span {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 7px 9px;
  border: 1px solid rgba(143, 161, 179, 0.16);
  border-radius: 8px;
  background: rgba(19, 25, 33, 0.76);
}

.account-progress-metrics em {
  color: var(--muted);
  font-size: 11px;
  font-style: normal;
}

.account-progress-metrics b {
  color: var(--text);
  font-size: 12px;
  font-family: Consolas, "Microsoft YaHei", monospace;
}

.account-progress-active {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 8px;
  color: var(--muted-2);
  font-size: 11px;
}

.account-progress-active b,
.account-progress-active span {
  padding: 4px 7px;
  border: 1px solid rgba(136, 192, 208, 0.24);
  border-radius: 4px;
  background: rgba(136, 192, 208, 0.08);
}

.account-progress-active b {
  color: var(--cyan);
}

.account-progress-log {
  display: grid;
  gap: 3px;
  max-height: 172px;
  margin-top: 8px;
  padding: 8px;
  overflow: auto;
  border: 1px solid rgba(143, 161, 179, 0.16);
  border-radius: 8px;
  background: rgba(4, 7, 11, 0.58);
  font: 11px/1.45 Consolas, "Microsoft YaHei", monospace;
}

.account-progress-log div {
  display: grid;
  grid-template-columns: 58px 1fr;
  gap: 8px;
  color: var(--muted-2);
}

.account-progress-log time {
  color: var(--cyan);
}

.account-pool-table {
  min-width: 1340px;
  table-layout: auto;
}

#page-accounts .account-pool-scroll {
  overflow-x: auto;
}

#page-accounts .account-pool-table {
  width: 100%;
  min-width: 0;
  table-layout: fixed;
}

/* 「展开全部」会一次放进 3800+ 行。table-layout: fixed 已经让列宽不依赖
   内容，所以视口外的行可以完全跳过排版和绘制；contain-intrinsic-size 给出
   占位高度（实测行高 ~29px），滚动条长度和滚动位置因此保持正确。 */
#page-accounts .account-pool-table tbody tr {
  content-visibility: auto;
  contain-intrinsic-size: auto 46px;
}

.account-pool-table th,
.account-pool-table td {
  padding: 6px 12px;
  font-size: 12px;
  line-height: normal;
  text-align: left;
  vertical-align: middle;
}

.account-pool-table th:not(:last-child),
.account-pool-table td:not(:last-child) {
  border-right: 1px solid rgba(143, 161, 179, 0.1);
}

.account-pool-table thead th {
  color: var(--muted);
  font-weight: 600;
  letter-spacing: 0.02em;
}

.account-pool-table th:nth-child(2),
.account-pool-table td:nth-child(2) {
  min-width: 260px;
  text-align: left;
}

#page-accounts .account-pool-table th,
#page-accounts .account-pool-table td {
  overflow: hidden;
  padding-right: 5px;
  padding-left: 5px;
  text-align: center;
}

#page-accounts .account-pool-table tbody td {
  padding-top: 2px;
  padding-bottom: 2px;
  vertical-align: middle;
}

#page-accounts .account-pool-table th:nth-child(2),
#page-accounts .account-pool-table td:nth-child(2) {
  width: 24%;
  min-width: 0;
  text-align: left;
}

.account-pool-table th.account-pool-select-cell,
.account-pool-table td.account-pool-select-cell {
  min-width: 34px;
  width: 34px;
  text-align: center;
}

.account-pool-table td:nth-child(2) b {
  display: block;
  color: var(--text);
  font-size: 12px;
  font-weight: 700;
  line-height: normal;
}

.account-pool-table .muted.small {
  font-size: 11px;
}

.account-pool-table .mono {
  font-family: inherit;
}

.account-chip-row {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: flex-start;
  gap: 3px;
}

#page-accounts .account-chip-row {
  justify-content: center;
}

.account-identity {
  color: var(--text);
  font-family: inherit;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0;
  white-space: nowrap;
}

.link-extract-progress-wrap {
  display: flex;
  width: 100%;
}

.link-extract-progress {
  flex: 1;
  width: auto;
  height: 10px;
}

.link-extract-log {
  min-height: 150px;
  max-height: 280px;
  margin-top: 8px;
  white-space: pre-wrap;
}

.account-material-cell {
  width: 76px;
  min-width: 0;
}

.account-material-stack {
  display: grid;
  justify-items: center;
  gap: 1px;
}

.account-material-stack > div {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 3px;
  min-height: 16px;
}

.account-sale-cell {
  width: 78px;
  min-width: 0;
  white-space: nowrap;
}

.account-identity-wrap {
  display: flex;
  flex-direction: column;
  justify-content: center;
  max-width: 100%;
  align-items: flex-start;
  gap: 1px;
}

.account-identity-wrap .account-identity {
  display: block;
  width: 100%;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
}

.account-identity-badges {
  display: flex;
  min-height: 16px;
  align-items: center;
  gap: 5px;
}

.account-identity-badges .account-identity-import {
  margin-left: 0;
}

.account-identity-kind {
  display: inline-flex;
  min-height: 17px;
  align-items: center;
  padding: 0 5px;
  border: 1px solid rgba(136, 192, 208, 0.34);
  border-radius: 3px;
  color: var(--cyan);
  font-size: 10px;
  line-height: 15px;
}

.account-identity-2fa {
  display: inline-flex;
  min-height: 17px;
  align-items: center;
  padding: 0 4px;
  border: 1px solid rgba(163, 190, 140, 0.52);
  border-radius: 3px;
  background: rgba(163, 190, 140, 0.12);
  color: var(--green);
  font-size: 9px;
  font-weight: 700;
  line-height: 15px;
  white-space: nowrap;
}

.account-identity-phone {
  display: inline-flex;
  align-items: center;
  color: var(--green);
  white-space: nowrap;
}

.account-identity-phone-icon {
  width: 14px;
  height: 14px;
  fill: none;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 1.8;
}

.account-reg-cell {
  width: 78px;
  color: var(--muted);
  font-size: 11px;
  line-height: 1.35;
  white-space: nowrap;
}

.account-workspace-cell {
  width: 104px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.account-row {
  transition: background 0.15s ease, box-shadow 0.15s ease;
}

.account-row-bad {
  background: rgba(191, 97, 106, 0.14);
  box-shadow: inset 4px 0 0 var(--red);
}

.account-row-bad:hover {
  background: rgba(191, 97, 106, 0.2);
}

.account-row-bad td {
  border-bottom-color: rgba(191, 97, 106, 0.32);
}

.account-row-bad .account-identity,
.account-info-bad .account-identity {
  color: #ff7b86;
  font-weight: 800;
}

.account-row-bad .muted.small,
.account-info-bad .muted.small {
  color: #e9a2a8;
}

.account-row-warn {
  background: rgba(235, 203, 139, 0.08);
  box-shadow: inset 4px 0 0 rgba(235, 203, 139, 0.82);
}

.account-row-warn:hover {
  background: rgba(235, 203, 139, 0.13);
}

.account-row-warn td {
  border-bottom-color: rgba(235, 203, 139, 0.18);
}

.account-ip-cell {
  box-sizing: border-box;
  width: 118px;
  min-width: 118px;
  max-width: 118px;
  color: var(--muted-2);
  line-height: 1.35;
}

.account-country-cell {
  box-sizing: border-box;
  width: 64px;
  min-width: 0;
  max-width: 64px;
  color: var(--muted-2);
  text-align: center !important;
  white-space: nowrap;
}

.account-qualification-cell {
  box-sizing: border-box;
  width: 104px;
  min-width: 0;
  max-width: 104px;
  text-align: center !important;
  white-space: nowrap;
}

.account-ba-cell {
  box-sizing: border-box;
  width: 76px;
  min-width: 76px;
  max-width: 76px;
  overflow: hidden;
  white-space: nowrap;
}

.account-ba-record {
  display: inline-flex;
  align-items: center;
  gap: 3px;
}

.account-ba-record .mono {
  display: none;
}

.account-pool-row-discarded > td {
  background: rgba(191, 97, 106, 0.11);
  border-top-color: rgba(191, 97, 106, 0.3);
  border-bottom-color: rgba(191, 97, 106, 0.3);
}

.account-pool-row-discarded > td:first-child {
  box-shadow: inset 4px 0 0 var(--red);
}

.account-pool-row-discarded .account-identity {
  color: var(--red);
}

.account-registration-address {
  display: inline-block;
  max-width: 106px;
  overflow: hidden;
  color: var(--muted-2);
  font-size: 10px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.account-plan {
  justify-content: center;
  min-width: 48px;
  border: 1px solid transparent;
  font-weight: 600;
}

.account-plan-plus {
  background: #d9b45b;
  color: #17130a;
}

.account-plan-free {
  background: #9ec27f;
  color: #14200f;
}

.account-plan-not-free {
  background: #d08770;
  color: #21110c;
}

.account-special-cell {
  box-sizing: border-box;
  width: 120px;
  min-width: 0;
  max-width: 120px;
  text-align: center !important;
  white-space: nowrap;
}

.account-special-status-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  grid-template-rows: repeat(2, 16px);
  gap: 1px;
  width: 100%;
}

.account-special-status {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 0;
  overflow: hidden;
  border: 1px solid rgba(143, 161, 179, 0.35);
  border-radius: 3px;
  background: rgba(143, 161, 179, 0.08);
  color: var(--muted-2);
  font-size: 9px;
  font-weight: 700;
  line-height: 1;
}

.account-special-status-yes {
  border-color: #8fbc8f;
  background: rgba(158, 194, 127, 0.28);
  color: #c8edb3;
}

.account-special-status-no {
  border-color: #e08a78;
  background: rgba(208, 135, 112, 0.22);
  color: #ffaaa0;
}

.account-special-momo-yes {
  border-color: #8fbc8f;
  background: #9ec27f;
  color: #14200f;
}

.account-special-momo-no {
  border-color: #e08a78;
  background: #d08770;
  color: #21110c;
}

.account-special-checkout-yes {
  border-color: #8fbc8f;
  background: #9ec27f;
  color: #14200f;
}

.account-special-checkout-copy {
  cursor: pointer;
}

.account-special-checkout-copy:hover,
.account-special-checkout-copy:focus-visible {
  border-color: #b7d9a3;
  background: #b0cf91;
}

.account-special-checkout-no {
  border-color: #e08a78;
  background: #d08770;
  color: #21110c;
}

.account-plan-pending {
  background: #ebcb8b;
  color: #241d0e;
}

.account-plan-credentials {
  border-color: #ff8d96;
  background: rgba(239, 107, 115, 0.18);
  color: #ff8d96;
}

.account-plan-banned {
  background: #05070a;
  border-color: var(--red);
  color: #ff8d96;
}

.account-plan-expired {
  background: #4c566a;
  border-color: #6b778e;
  color: #eceff4;
}

.account-plan-discarded {
  background: var(--red);
  border-color: #ff8d96;
  color: white;
}

.account-quota-cell {
  width: 175px;
  min-width: 175px;
  max-width: 175px;
  vertical-align: middle;
}

.account-quota {
  display: grid;
  align-content: center;
  gap: 0;
  min-width: 0;
}

#page-accounts .account-quota {
  justify-content: center;
  justify-items: center;
}

.account-quota-window {
  display: grid;
  grid-template-columns: 21px 43px 26px 44px;
  align-items: center;
  justify-content: center;
  gap: 3px;
  color: var(--muted-2);
  font-size: 10px;
  line-height: 12px;
}

.account-quota-window b {
  color: var(--text);
  font-size: 10px;
  font-weight: 600;
  text-align: right;
}

.account-quota-reset {
  color: var(--muted-2);
  font-size: 10px;
  white-space: nowrap;
}

.account-quota-actions {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  margin-top: 0;
  white-space: nowrap;
}

.account-quota-action {
  appearance: none;
  border: 0;
  padding: 0;
  background: transparent;
  color: var(--cyan);
  font: inherit;
  font-size: 11px;
  line-height: 1.25;
  cursor: pointer;
}

.account-quota-action:hover:not(:disabled) {
  color: var(--text);
  text-decoration: underline;
}

.account-quota-action:disabled {
  color: var(--muted-2);
  cursor: not-allowed;
  opacity: 0.62;
}

.account-quota-action.is-reset {
  color: var(--orange, #f97316);
}

.account-quota-toolbar-group {
  position: relative;
}

.account-quota-toolbar-menu {
  position: absolute;
  z-index: 8;
  top: calc(100% + 4px);
  left: 0;
  display: flex;
  gap: 2px;
  padding: 4px;
  border: 1px solid var(--line);
  border-radius: 4px;
  background: var(--panel-deep);
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.28);
}

.account-quota-toolbar-menu button {
  border: 0;
  padding: 3px 7px;
  background: transparent;
  color: var(--cyan);
  font-size: 11px;
  white-space: nowrap;
  cursor: pointer;
}

.account-quota-toolbar-menu button:hover:not(:disabled) {
  background: rgba(136, 192, 208, 0.14);
}

.account-quota-toolbar-menu button:last-child {
  color: var(--orange);
}

.account-quota-label {
  color: var(--cyan);
  font-weight: 600;
}

.account-quota-bar {
  display: block;
  width: 43px;
  height: 4px;
  overflow: hidden;
  border-radius: 999px;
  background: rgba(143, 161, 179, 0.18);
}

.account-quota-bar i {
  display: block;
  min-width: 2px;
  height: 100%;
  border-radius: inherit;
}

.account-quota-bar i.ok {
  background: var(--green);
}

.account-quota-bar i.warn {
  background: var(--amber);
}

.account-quota-bar i.bad {
  background: var(--red);
}

.account-quota-state,
.account-quota-stale {
  display: inline-flex;
  width: max-content;
  align-items: center;
  padding: 2px 6px;
  border: 1px solid rgba(143, 161, 179, 0.24);
  border-radius: 3px;
  color: var(--muted-2);
  font-size: 10px;
  white-space: nowrap;
}

.account-quota-state.is-error,
.account-quota-stale {
  border-color: rgba(191, 97, 106, 0.42);
  color: var(--red);
}

.account-chip {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  min-height: 17px;
  max-width: 260px;
  padding: 1px 6px;
  border: 1px solid var(--line);
  border-radius: 3px;
  font-size: 10px;
  font-weight: 400;
  line-height: 15px;
  white-space: nowrap;
}

.account-chip-ok {
  border-color: rgba(163, 190, 140, 0.5);
  background: rgba(163, 190, 140, 0.14);
  color: var(--green);
}

.account-chip-warn {
  border-color: rgba(235, 203, 139, 0.5);
  background: rgba(235, 203, 139, 0.12);
  color: var(--amber);
}

.account-chip-bad {
  border-color: rgba(191, 97, 106, 0.5);
  background: rgba(191, 97, 106, 0.12);
  color: var(--red);
}

.account-chip-neutral {
  border-color: rgba(143, 161, 179, 0.35);
  background: rgba(143, 161, 179, 0.1);
  color: var(--muted-2);
}

.account-row-actions {
  width: 320px;
  min-width: 320px;
  white-space: nowrap;
}

#page-accounts .account-pool-table .account-row-actions {
  overflow: visible;
}

@media (max-width: 1360px) {
  #page-accounts .account-special-cell,
  #page-accounts .account-sale-cell {
    display: none;
  }
}

@media (max-width: 1180px) {
  #page-accounts .account-reg-cell,
  #page-accounts .account-country-cell,
  #page-accounts .account-qualification-cell {
    display: none;
  }
}

@media (max-width: 980px) {
  #page-accounts .account-quota-cell {
    display: none;
  }
}

@media (max-width: 760px) {
  #page-accounts .account-workspace-cell {
    display: none;
  }
}

@media (max-width: 620px) {
  #page-accounts .account-material-cell {
    display: none;
  }
}

.account-totp-button,
.account-email-code-button {
  width: 60px;
  height: 32px;
  padding: 0 6px;
  line-height: 30px;
  text-align: center;
}

.account-sms-group {
  display: inline-flex;
  flex-direction: column;
  align-items: stretch;
}

.account-sms-menu {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 2px;
  margin-top: 3px;
}

.account-sms-menu[hidden] {
  display: none;
}

.account-sms-menu > button {
  width: 60px;
  min-height: 28px;
  margin: 0;
  padding: 3px 4px;
  border-radius: 4px;
  text-align: center;
}

.account-ck-proxy-country {
  box-sizing: border-box;
  width: 108px;
  height: 32px;
  min-width: 108px;
  padding: 0 5px;
  border: 1px solid rgba(136, 192, 208, 0.34);
  border-radius: 4px;
  background: var(--panel-deep);
  color: var(--text);
  font-size: 12px;
  line-height: 30px;
}

.account-totp-button {
  font-variant-numeric: tabular-nums;
}

.account-row-action-bar {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  gap: 4px;
}

.account-row-action-button {
  box-sizing: border-box;
  width: 54px;
  height: 32px;
  margin-right: 0;
  padding: 0 5px;
  line-height: 30px;
}

#page-accounts .account-row-action-button,
#page-accounts .account-ck-proxy-country {
  height: 28px;
  line-height: 26px;
}

.account-copy-group {
  display: inline-flex;
  flex-direction: column;
  align-items: stretch;
}

.account-copy-menu {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 2px;
  margin-top: 3px;
}

.account-copy-menu[hidden] {
  display: none;
}

.account-copy-menu > button {
  width: 60px;
  min-height: 28px;
  margin: 0;
  padding: 3px 4px;
  border-radius: 4px;
  text-align: center;
}

.account-totp-button,
.account-email-code-button,
.account-row-actions button {
  min-width: 0;
  padding-right: 7px;
  padding-left: 7px;
}

.account-action-group {
  display: inline-flex;
  vertical-align: middle;
  margin-right: 5px;
}

.account-action-group button {
  margin: 0;
}

.mailbox-toolbar .mailbox-filter-select {
  min-height: 42px;
  font-size: 12px;
}

.mailbox-toolbar .mailbox-filter-select:focus {
  border-color: var(--cyan);
  box-shadow: 0 0 0 2px rgba(136, 192, 208, 0.12);
}

.account-copy-actions,
.account-export-actions,
.account-sale-status-actions {
  display: inline-flex;
  align-items: center;
}

.account-copy-actions[hidden],
.account-export-actions[hidden],
.account-sale-status-actions[hidden] {
  display: none;
}

.account-copy-group.is-open > button:first-child,
.account-export-group.is-open > button:first-child,
.account-sale-status-group.is-open > button:first-child {
  border-radius: 4px 0 0 4px;
}

.account-copy-actions > button,
.account-export-actions > button,
.account-sale-status-actions > button {
  margin-left: -1px;
  border-radius: 0;
}

.account-copy-actions > button:last-child,
.account-export-actions > button:last-child,
.account-sale-status-actions > button:last-child {
  border-radius: 0 4px 4px 0;
}

.account-sale-status {
  display: inline-flex;
  max-width: 120px;
  flex-direction: column;
  gap: 1px;
  padding: 2px 6px;
  border: 1px solid rgba(143, 161, 179, 0.28);
  border-radius: 4px;
  background: rgba(143, 161, 179, 0.08);
  color: var(--muted-2);
  font-size: 11px;
  line-height: 1.25;
}

.account-sale-status span,
.account-sale-status small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.account-sale-status small {
  max-width: 108px;
  color: var(--text);
  font-size: 10px;
}

.account-sale-status-self_use {
  border-color: rgba(136, 192, 208, 0.42);
  background: rgba(136, 192, 208, 0.1);
  color: var(--cyan);
}

.account-sale-status-unmarked {
  border-color: rgba(143, 161, 179, 0.3);
  background: rgba(143, 161, 179, 0.08);
  color: var(--muted-2);
}

.account-sale-status-for_sale {
  border-color: rgba(235, 203, 139, 0.48);
  background: rgba(235, 203, 139, 0.12);
  color: var(--amber);
}

.account-sale-status-sold {
  border-color: rgba(163, 190, 140, 0.5);
  background: rgba(163, 190, 140, 0.12);
  color: var(--green);
}

.account-sale-status-image_pack {
  border-color: rgba(180, 142, 173, 0.55);
  background: rgba(180, 142, 173, 0.14);
  color: #d9b4d0;
}

.account-sale-status-actions input {
  width: 68px;
  margin-left: -1px;
  padding: 5px 6px;
  border: 1px solid var(--line);
  border-radius: 0;
  background: rgba(9, 15, 24, 0.92);
  color: var(--text);
  font-size: 12px;
}

.account-sale-status-actions .is-active {
  border-color: rgba(136, 192, 208, 0.72);
  background: rgba(136, 192, 208, 0.18);
  color: var(--cyan);
}

.account-row-progress {
  margin-top: 4px;
  color: var(--muted-2);
  font-size: 11px;
  white-space: normal;
}

.account-row-progress-running,
.account-row-progress-queued {
  color: var(--cyan);
}

.account-row-progress-ok {
  color: var(--green);
}

.account-row-progress-warn {
  color: var(--amber);
}

.account-row-progress-bad {
  color: var(--red);
}

.account-row-progress-credentials {
  color: var(--red);
  font-weight: 700;
}

.top-actions,
.inline-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}

.br-pool-summary {
  margin-top: 10px;
  padding: 10px;
  border: 1px solid var(--line-soft);
  border-radius: 8px;
  background: var(--panel-deep);
  color: var(--muted-2);
}

.protocol-kicker {
  margin-bottom: 6px;
  color: var(--cyan);
  font-family: Consolas, "Microsoft YaHei", monospace;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.protocol-chip-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 12px;
}

.protocol-chip {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  padding: 4px 9px;
  border: 1px solid rgba(136, 192, 208, 0.28);
  border-radius: 4px;
  background: rgba(14, 17, 22, 0.56);
  color: var(--muted-2);
  font-family: Consolas, monospace;
  font-size: 11px;
}

.protocol-status-card {
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: rgba(14, 17, 22, 0.72);
}

.protocol-state {
  margin-bottom: 8px;
  color: var(--muted-2);
  font-size: 20px;
  font-weight: 800;
}

.protocol-state.running {
  color: var(--amber);
}

.protocol-state.ok {
  color: var(--green);
}

.protocol-state.bad {
  color: var(--red);
}

.protocol-meta {
  display: grid;
  gap: 5px;
  margin-bottom: 8px;
  color: var(--muted-2);
  font-family: Consolas, monospace;
}

.protocol-task-row {
  display: grid;
  grid-template-columns: minmax(130px, 0.8fr) minmax(70px, auto) minmax(180px, 1.2fr);
  gap: 8px;
  align-items: center;
  padding: 9px 10px;
  border: 1px solid var(--line-soft);
  border-radius: 8px;
  background: var(--panel-deep);
  color: var(--muted-2);
  font-size: 12px;
}

@media (max-width: 760px) {
  .protocol-task-row {
    grid-template-columns: 1fr;
  }
}

#page-code #smsProviderCards [data-sms-provider-tone="hero-sms"],
#page-code .sms-market-card [data-sms-provider-tone="hero-sms"],
#page-code .sms-key-strip [data-sms-provider-tone="hero-sms"],
#page-code .sms-restock-list [data-sms-provider-tone="hero-sms"],
#page-code .sms-orders-list [data-sms-provider-tone="hero-sms"] {
  --sms-tone: #67c7dc;
  --sms-tone-rgb: 103, 199, 220;
}

#page-code #smsProviderCards [data-sms-provider-tone="5sim"],
#page-code .sms-market-card [data-sms-provider-tone="5sim"],
#page-code .sms-key-strip [data-sms-provider-tone="5sim"],
#page-code .sms-restock-list [data-sms-provider-tone="5sim"],
#page-code .sms-orders-list [data-sms-provider-tone="5sim"] {
  --sms-tone: #e4a45c;
  --sms-tone-rgb: 228, 164, 92;
}

#page-code #smsProviderCards [data-sms-provider-tone="smsbower"],
#page-code .sms-market-card [data-sms-provider-tone="smsbower"],
#page-code .sms-key-strip [data-sms-provider-tone="smsbower"],
#page-code .sms-restock-list [data-sms-provider-tone="smsbower"],
#page-code .sms-orders-list [data-sms-provider-tone="smsbower"] {
  --sms-tone: #9bc66f;
  --sms-tone-rgb: 155, 198, 111;
}

.paypal-probe-market-evidence {
  display: grid;
  grid-template-columns: minmax(240px, 0.75fr) minmax(420px, 1.25fr);
  gap: 16px;
  align-items: center;
  margin: 0 0 14px;
  padding: 16px 18px;
  border: 1px solid rgba(91, 193, 214, 0.26);
  border-radius: 10px;
  background:
    linear-gradient(115deg, rgba(91, 193, 214, 0.12), transparent 45%),
    repeating-linear-gradient(90deg, transparent 0 31px, rgba(255, 255, 255, 0.018) 31px 32px),
    #0b1117;
  box-shadow: inset 3px 0 0 #5bc1d6;
}

.paypal-probe-market-copy {
  display: grid;
  gap: 5px;
}

.paypal-probe-market-copy > span,
.paypal-probe-head > div > span {
  color: #70d0df;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.18em;
}

.paypal-probe-market-copy > b {
  color: #eef8fa;
  font-size: 20px;
}

.paypal-probe-market-copy > em {
  color: var(--muted-2);
  font-size: 11px;
  font-style: normal;
  line-height: 1.6;
}

.paypal-probe-market-stats {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

.paypal-probe-market-stats > span {
  display: grid;
  gap: 3px;
  padding: 9px 11px;
  border: 1px solid rgba(112, 208, 223, 0.15);
  border-radius: 7px;
  background: rgba(5, 10, 14, 0.6);
}

.paypal-probe-market-stats em {
  color: var(--muted-2);
  font-size: 10px;
  font-style: normal;
}

.paypal-probe-market-stats b {
  color: #dff7fa;
  font-size: 15px;
}

.paypal-probe-panel {
  position: relative;
  overflow: hidden;
  border-color: rgba(91, 193, 214, 0.3);
  background:
    radial-gradient(circle at 92% 0, rgba(91, 193, 214, 0.12), transparent 30%),
    linear-gradient(180deg, rgba(12, 21, 28, 0.98), rgba(7, 12, 17, 0.98));
}

.paypal-probe-panel::before {
  position: absolute;
  inset: 0 0 auto;
  height: 2px;
  background: linear-gradient(90deg, #5bc1d6, #d6a854 58%, transparent);
  content: "";
}

.paypal-probe-head {
  display: flex;
  gap: 20px;
  align-items: flex-start;
  justify-content: space-between;
}

.paypal-probe-head h2 {
  margin: 5px 0 7px;
  color: #f3f7f8;
  font-size: clamp(20px, 2.3vw, 30px);
  letter-spacing: -0.03em;
}

.paypal-probe-head p {
  max-width: 780px;
  margin: 0;
  color: var(--muted-2);
  font-size: 12px;
  line-height: 1.65;
}

.paypal-probe-status {
  flex: 0 0 auto;
  padding: 8px 11px;
  border: 1px solid rgba(91, 193, 214, 0.24);
  border-radius: 999px;
  background: rgba(91, 193, 214, 0.08);
  color: #9fe4ef;
  font-size: 11px;
  font-weight: 700;
}

.paypal-probe-controls {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 0.7fr 0.7fr;
  gap: 10px;
  margin-top: 18px;
}

.paypal-probe-controls label {
  display: grid;
  gap: 6px;
  color: #9fb0ba;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.04em;
}

.paypal-probe-controls input[readonly] {
  color: #d6a854;
  font-weight: 800;
}

.paypal-probe-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 12px;
}

.paypal-probe-summary {
  margin-top: 14px;
  padding: 10px 12px;
  border-left: 2px solid #d6a854;
  background: rgba(214, 168, 84, 0.07);
  color: #afbdc4;
  font-size: 11px;
}

.paypal-probe-summary b {
  color: #f0c879;
}

.paypal-probe-country-list {
  display: grid;
  gap: 7px;
  max-height: 680px;
  margin-top: 12px;
  overflow: auto;
}

.paypal-probe-country-row {
  display: grid;
  grid-template-columns: minmax(150px, 0.75fr) minmax(420px, 2fr) minmax(180px, 0.8fr) minmax(110px, 0.55fr);
  gap: 10px;
  align-items: stretch;
  padding: 9px;
  border: 1px solid rgba(133, 160, 175, 0.13);
  border-radius: 8px;
  background: rgba(3, 8, 12, 0.58);
}

.paypal-probe-country-identity {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 2px 8px;
  align-content: center;
}

.paypal-probe-country-identity > b {
  grid-row: 1 / 3;
  color: #edf8fa;
  font-size: 24px;
  line-height: 1;
}

.paypal-probe-country-identity > span {
  color: #a9bac2;
  font-size: 11px;
}

.paypal-probe-country-identity > em {
  color: #70d0df;
  font-size: 10px;
  font-style: normal;
}

.paypal-probe-attempts {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 6px;
}

.paypal-probe-attempt {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 2px 7px;
  align-content: center;
  min-width: 0;
  padding: 7px 8px;
  border: 1px solid rgba(133, 160, 175, 0.14);
  border-radius: 6px;
  background: rgba(12, 18, 23, 0.86);
}

.paypal-probe-attempt > b {
  grid-row: 1 / 4;
  color: #607681;
  font-size: 18px;
}

.paypal-probe-attempt > span,
.paypal-probe-attempt > em,
.paypal-probe-attempt > strong {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.paypal-probe-attempt > span {
  color: #afbdc4;
  font-size: 10px;
}

.paypal-probe-attempt > em {
  color: #6f858f;
  font-size: 9px;
  font-style: normal;
}

.paypal-probe-attempt > strong {
  color: #d2dce0;
  font-size: 10px;
}

.paypal-probe-attempt.is-success {
  border-color: rgba(104, 198, 133, 0.32);
  background: rgba(57, 145, 88, 0.1);
}

.paypal-probe-attempt.is-success > b,
.paypal-probe-attempt.is-success > strong {
  color: #7ed59a;
}

.paypal-probe-attempt.is-unavailable {
  border-color: rgba(214, 168, 84, 0.28);
  background: rgba(214, 168, 84, 0.08);
}

.paypal-probe-attempt.is-unavailable > strong {
  color: #e2bb6e;
}

.paypal-probe-attempt.is-failed {
  border-color: rgba(211, 100, 94, 0.25);
}

.paypal-probe-attempt.is-failed > strong {
  color: #df8d88;
}

.paypal-probe-country-metrics {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 5px;
  align-items: stretch;
}

.paypal-probe-country-metrics > span {
  display: grid;
  place-content: center;
  text-align: center;
  border: 1px solid rgba(133, 160, 175, 0.12);
  border-radius: 6px;
  color: #748892;
  font-size: 9px;
}

.paypal-probe-country-metrics b {
  color: #dce7eb;
  font-size: 12px;
}

.paypal-probe-classification {
  display: grid;
  place-content: center;
  min-height: 42px;
  border: 1px solid rgba(133, 160, 175, 0.14);
  border-radius: 6px;
  color: #8da0aa;
  font-size: 10px;
  font-weight: 800;
  text-align: center;
}

.paypal-probe-classification.is-stable {
  border-color: rgba(104, 198, 133, 0.35);
  background: rgba(57, 145, 88, 0.11);
  color: #82daa0;
}

.paypal-probe-classification.is-partial {
  border-color: rgba(91, 193, 214, 0.35);
  background: rgba(91, 193, 214, 0.09);
  color: #89d9e6;
}

.paypal-probe-classification.is-unavailable {
  border-color: rgba(214, 168, 84, 0.35);
  background: rgba(214, 168, 84, 0.09);
  color: #e7bf71;
}

.paypal-probe-log {
  max-height: 180px;
  margin-top: 12px;
  white-space: pre-wrap;
}

@media (max-width: 1180px) {
  .paypal-probe-country-row {
    grid-template-columns: minmax(130px, 0.7fr) minmax(390px, 2fr) minmax(110px, 0.55fr);
  }

  .paypal-probe-country-metrics {
    display: none;
  }
}

@media (max-width: 900px) {
  .paypal-probe-market-evidence,
  .paypal-probe-country-row {
    grid-template-columns: 1fr;
  }

  .paypal-probe-controls {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .paypal-probe-country-metrics {
    display: grid;
  }
}

@media (max-width: 620px) {
  .paypal-probe-head {
    flex-direction: column;
  }

  .paypal-probe-market-stats,
  .paypal-probe-controls,
  .paypal-probe-attempts {
    grid-template-columns: 1fr;
  }
}

.local-api-panel {
  border-color: rgba(103, 199, 220, 0.28);
  background: rgba(8, 12, 17, 0.96);
}

.local-api-toolbar {
  display: grid;
  grid-template-columns: minmax(260px, 1.7fr) minmax(210px, 0.8fr);
  gap: 12px;
  margin-top: 14px;
  padding: 12px 0;
  border-top: 1px solid rgba(119, 144, 160, 0.18);
  border-bottom: 1px solid rgba(119, 144, 160, 0.18);
}

.local-api-toolbar label {
  display: grid;
  gap: 6px;
  min-width: 0;
}

.local-api-toolbar label > span {
  color: var(--muted-2);
  font-size: 11px;
  letter-spacing: 0;
}

.local-api-toolbar input,
.local-api-toolbar select {
  width: 100%;
  min-width: 0;
}

.local-api-catalog {
  display: grid;
  gap: 14px;
  margin-top: 14px;
}

.local-api-error {
  padding: 9px 11px;
  border: 1px solid rgba(222, 112, 112, 0.42);
  border-radius: 6px;
  color: #efaaaa;
  background: rgba(222, 112, 112, 0.08);
  font-size: 11px;
  line-height: 1.5;
}

.local-api-metrics {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  margin: 0;
  padding: 10px 0;
  border-top: 1px solid rgba(103, 199, 220, 0.2);
  border-bottom: 1px solid rgba(103, 199, 220, 0.2);
}

.local-api-metrics > div {
  min-width: 0;
  padding: 0 14px;
  border-left: 1px solid rgba(119, 144, 160, 0.18);
}

.local-api-metrics > div:first-child {
  border-left: 0;
}

.local-api-metrics dt {
  color: var(--muted-2);
  font-size: 11px;
}

.local-api-metrics dd {
  margin: 3px 0 0;
  color: #e7eef3;
  font-size: 20px;
  font-weight: 700;
}

.local-api-boundary {
  border: 1px solid rgba(216, 199, 159, 0.28);
  border-radius: 8px;
  background: rgba(216, 199, 159, 0.05);
}

.local-api-boundary > summary {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto 16px;
  align-items: center;
  gap: 12px;
  padding: 10px 12px;
  color: #e7eef3;
  cursor: pointer;
  list-style: none;
}

.local-api-boundary > summary::-webkit-details-marker,
.local-api-module > summary::-webkit-details-marker {
  display: none;
}

.local-api-boundary > summary b {
  color: #d8c79f;
  font-size: 12px;
}

.local-api-boundary > summary::after {
  content: "+";
  color: #d8c79f;
  font-size: 14px;
  text-align: center;
}

.local-api-boundary[open] > summary::after {
  content: "-";
}

.local-api-boundary ul {
  display: grid;
  gap: 7px;
  margin: 0;
  padding: 0 28px 12px 32px;
  color: var(--muted-2);
  font-size: 12px;
  line-height: 1.55;
}

.local-api-modules {
  display: grid;
}

.local-api-module {
  min-width: 0;
  border-top: 1px solid rgba(119, 144, 160, 0.22);
}

.local-api-module:last-child {
  border-bottom: 1px solid rgba(119, 144, 160, 0.22);
}

.local-api-module > summary {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto 16px;
  gap: 12px;
  align-items: center;
  padding: 13px 4px;
  cursor: pointer;
  list-style: none;
}

.local-api-module > summary > span {
  display: grid;
  grid-template-columns: minmax(150px, 0.42fr) minmax(180px, 0.55fr) minmax(280px, 1fr);
  gap: 12px;
  align-items: baseline;
  min-width: 0;
}

.local-api-module > summary small {
  color: #67c7dc;
  font-size: 10px;
  letter-spacing: 0;
  overflow-wrap: anywhere;
}

.local-api-module > summary strong {
  color: #e7eef3;
  font-size: 14px;
}

.local-api-module > summary em {
  min-width: 0;
  color: var(--muted-2);
  font-size: 12px;
  font-style: normal;
  line-height: 1.4;
}

.local-api-module > summary > b {
  color: #9bc66f;
  font-size: 12px;
  white-space: nowrap;
}

.local-api-module > summary::after {
  content: "+";
  grid-column: 3;
  grid-row: 1;
  color: #67c7dc;
  font-size: 14px;
  text-align: center;
}

.local-api-module[open] > summary::after {
  content: "-";
}

.local-api-table-scroll {
  margin: 0 0 14px;
  border: 1px solid rgba(119, 144, 160, 0.18);
  border-radius: 8px;
}

.local-api-table {
  min-width: 1380px;
  table-layout: fixed;
}

.local-api-table th:nth-child(1) { width: 116px; }
.local-api-table th:nth-child(2) { width: 255px; }
.local-api-table th:nth-child(3) { width: 205px; }
.local-api-table th:nth-child(4) { width: 285px; }
.local-api-table th:nth-child(5) { width: 300px; }
.local-api-table th:nth-child(6) { width: 220px; }

.local-api-table td {
  vertical-align: top;
  line-height: 1.5;
  overflow-wrap: anywhere;
  white-space: normal;
}

.local-api-methods {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
}

.local-api-methods span {
  display: inline-grid;
  place-items: center;
  min-width: 46px;
  height: 22px;
  padding: 0 6px;
  border: 1px solid rgba(103, 199, 220, 0.35);
  border-radius: 4px;
  color: #9ee5f2;
  background: rgba(103, 199, 220, 0.08);
  font-size: 10px;
  font-weight: 700;
}

.local-api-methods [data-api-method="post"] {
  border-color: rgba(155, 198, 111, 0.38);
  color: #bde691;
  background: rgba(155, 198, 111, 0.08);
}

.local-api-methods [data-api-method="delete"] {
  border-color: rgba(222, 112, 112, 0.42);
  color: #efaaaa;
  background: rgba(222, 112, 112, 0.08);
}

.local-api-methods [data-api-method="patch"],
.local-api-methods [data-api-method="put"] {
  border-color: rgba(228, 164, 92, 0.42);
  color: #efbd82;
  background: rgba(228, 164, 92, 0.08);
}

.local-api-path {
  color: #d9e2e8;
}

.local-api-contract {
  color: var(--muted-2);
  font-size: 11px;
}

.local-api-contract strong,
.local-api-contract span,
.local-api-scope span,
.local-api-scope code {
  display: block;
}

.local-api-contract strong {
  color: #d9e2e8;
  font-size: 11px;
  font-weight: 600;
}

.local-api-contract span {
  margin-top: 6px;
}

.local-api-scope b,
.protocol-reference-availability {
  display: inline-flex;
  align-items: center;
  min-height: 22px;
  padding: 2px 7px;
  border: 1px solid rgba(155, 198, 111, 0.36);
  border-radius: 4px;
  color: #bde691;
  background: rgba(155, 198, 111, 0.08);
  font-size: 10px;
  font-weight: 700;
  white-space: nowrap;
}

.local-api-scope [data-api-availability="internal"],
.protocol-reference-availability[data-api-availability="external"] {
  border-color: rgba(103, 199, 220, 0.36);
  color: #9ee5f2;
  background: rgba(103, 199, 220, 0.08);
}

.local-api-scope [data-api-availability="maintenance"],
.local-api-scope [data-api-availability="reserved"],
.protocol-reference-availability[data-api-availability="optional"],
.protocol-reference-availability[data-api-availability="format"] {
  border-color: rgba(228, 164, 92, 0.4);
  color: #efbd82;
  background: rgba(228, 164, 92, 0.08);
}

.local-api-scope [data-api-availability="blocked"] {
  border-color: rgba(222, 112, 112, 0.42);
  color: #efaaaa;
  background: rgba(222, 112, 112, 0.08);
}

.local-api-scope [data-api-availability="unprotected"] {
  border-color: rgba(222, 112, 112, 0.58);
  color: #ffb0b0;
  background: rgba(222, 112, 112, 0.13);
}

.local-api-scope span {
  margin-top: 7px;
  color: var(--muted-2);
  font-size: 11px;
  line-height: 1.45;
}

.local-api-scope code {
  margin-top: 7px;
  color: #d8c79f;
  font-size: 10px;
  overflow-wrap: anywhere;
}

.local-api-operation-id {
  display: block;
  margin-top: 5px;
  color: #67c7dc;
  font-size: 9px;
  line-height: 1.4;
  overflow-wrap: anywhere;
}

.protocol-reference-category th {
  position: static;
  padding-top: 14px;
  padding-bottom: 8px;
  border-top: 1px solid rgba(103, 199, 220, 0.28);
  color: #e7eef3;
  background: rgba(103, 199, 220, 0.05);
  text-align: left;
}

.protocol-reference-category th span,
.protocol-reference-category th b {
  display: inline-block;
}

.protocol-reference-category th b {
  margin-left: 8px;
  color: #67c7dc;
  font-size: 11px;
}

@media (max-width: 980px) {
  .local-api-metrics {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .local-api-metrics > div:nth-child(4) {
    border-left: 0;
  }

  .local-api-module > summary > span {
    grid-template-columns: minmax(130px, 0.5fr) minmax(170px, 0.7fr) minmax(240px, 1fr);
  }
}

@media (max-width: 760px) {
  .local-api-toolbar {
    grid-template-columns: 1fr;
  }

  .local-api-metrics {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .local-api-metrics > div,
  .local-api-metrics > div:nth-child(4) {
    border-left: 0;
    border-top: 1px solid rgba(119, 144, 160, 0.14);
    padding: 9px 10px;
  }

  .local-api-module > summary {
    grid-template-columns: minmax(0, 1fr) auto 16px;
    align-items: start;
  }

  .local-api-module > summary > span {
    grid-template-columns: 1fr;
    gap: 4px;
  }

  .local-api-module > summary > b {
    padding-right: 0;
  }
}

.reference-materials-panel {
  background:
    radial-gradient(circle at 14% 0%, rgba(103, 199, 220, 0.12), transparent 30%),
    radial-gradient(circle at 84% 8%, rgba(216, 199, 159, 0.1), transparent 34%),
    var(--panel);
}

.reference-materials-summary {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
  gap: 10px;
  margin-top: 12px;
}

.reference-materials-summary article {
  padding: 12px;
  border: 1px solid rgba(119, 144, 160, 0.24);
  border-radius: 10px;
  background: rgba(7, 11, 16, 0.62);
}

.reference-materials-summary span,
.reference-materials-section > header span,
.reference-material-card header span {
  color: var(--muted-2);
  font-size: 11px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.reference-materials-summary b {
  display: block;
  margin: 4px 0;
  color: #e7eef3;
  font-size: 22px;
}

.reference-materials-summary p {
  margin: 0;
  color: var(--muted-2);
  font-size: 12px;
  line-height: 1.5;
}

.reference-materials-sections {
  display: grid;
  gap: 14px;
  margin-top: 14px;
}

.reference-materials-section {
  padding: 14px;
  border: 1px solid rgba(216, 199, 159, 0.2);
  border-radius: 12px;
  background: rgba(9, 13, 18, 0.7);
}

.reference-materials-section > header,
.reference-material-card header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.reference-materials-section > header {
  margin-bottom: 12px;
}

.reference-materials-section > header h4,
.reference-material-card h5 {
  margin: 2px 0 0;
}

.reference-materials-section > header em,
.reference-material-card header em {
  flex: 0 0 auto;
  color: #d8c79f;
  font-size: 12px;
  font-style: normal;
}

.reference-materials-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 10px;
}

.reference-material-card {
  display: grid;
  gap: 10px;
  padding: 12px;
  border: 1px solid rgba(103, 199, 220, 0.22);
  border-radius: 10px;
  background: linear-gradient(145deg, rgba(103, 199, 220, 0.09), transparent 46%), rgba(7, 11, 16, 0.7);
}

.reference-material-card[data-reference-product="GROK"] {
  border-color: rgba(155, 198, 111, 0.28);
  background: linear-gradient(145deg, rgba(155, 198, 111, 0.09), transparent 46%), rgba(7, 11, 16, 0.7);
}

.reference-material-card[data-reference-product="通用"] {
  border-color: rgba(216, 199, 159, 0.3);
  background: linear-gradient(145deg, rgba(216, 199, 159, 0.08), transparent 46%), rgba(7, 11, 16, 0.7);
}

.reference-material-card dl {
  display: grid;
  gap: 7px;
  margin: 0;
}

.reference-material-card dl div {
  display: grid;
  grid-template-columns: 72px minmax(0, 1fr);
  gap: 10px;
}

.reference-material-card dt {
  color: #d9e2e8;
  font-size: 12px;
}

.reference-material-card dd {
  margin: 0;
  color: var(--muted-2);
  font-size: 12px;
  line-height: 1.5;
  overflow-wrap: anywhere;
}

.reference-material-card code {
  color: #d8c79f;
  font-size: 11px;
}

.reference-material-components {
  border: 1px solid rgba(155, 198, 111, 0.25);
  border-radius: 8px;
  background: rgba(155, 198, 111, 0.05);
}

.reference-material-components summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 8px 10px;
  color: #d9e2e8;
  cursor: pointer;
  list-style: none;
}

.reference-material-components summary::-webkit-details-marker {
  display: none;
}

.reference-material-components summary::after {
  content: ">";
  order: -1;
  color: #9bc66f;
  font-size: 12px;
}

.reference-material-components[open] summary::after {
  content: "v";
}

.reference-material-components summary span {
  flex: 1;
  font-size: 12px;
}

.reference-material-components summary b {
  color: #9bc66f;
  font-size: 12px;
}

.reference-material-component-list {
  display: grid;
  gap: 8px;
  padding: 0 10px 10px;
}

.reference-material-component {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 14px;
  padding-top: 8px;
  border-top: 1px solid rgba(155, 198, 111, 0.16);
}

.reference-material-component strong,
.reference-material-component code {
  display: block;
}

.reference-material-component strong {
  color: #e7eef3;
  font-size: 12px;
}

.reference-material-component code {
  margin-top: 3px;
  color: #d8c79f;
  font-size: 11px;
  overflow-wrap: anywhere;
}

.reference-material-component p {
  margin: 0;
  color: var(--muted-2);
  font-size: 12px;
  line-height: 1.5;
  overflow-wrap: anywhere;
}

.sms-reference-archive {
  background:
    radial-gradient(circle at 8% 0%, rgba(216, 199, 159, 0.09), transparent 34%),
    var(--panel);
}

.sms-reference-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(310px, 1fr));
  gap: 12px;
  margin-top: 12px;
}

.sms-reference-card {
  --sms-tone: #8fa7b8;
  --sms-tone-rgb: 143, 167, 184;
  display: grid;
  gap: 8px;
  padding: 14px;
  border: 1px solid rgba(var(--sms-tone-rgb), 0.4);
  border-radius: 10px;
  background: linear-gradient(145deg, rgba(var(--sms-tone-rgb), 0.1), transparent 42%), rgba(7, 11, 16, 0.78);
}

.sms-reference-card[data-sms-provider-tone="hero-sms"] {
  --sms-tone: #67c7dc;
  --sms-tone-rgb: 103, 199, 220;
}

.sms-reference-card[data-sms-provider-tone="5sim"] {
  --sms-tone: #e4a45c;
  --sms-tone-rgb: 228, 164, 92;
}

.sms-reference-card[data-sms-provider-tone="smsbower"] {
  --sms-tone: #9bc66f;
  --sms-tone-rgb: 155, 198, 111;
}

.sms-reference-card header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  padding-bottom: 9px;
  border-bottom: 1px solid rgba(var(--sms-tone-rgb), 0.24);
}

.sms-reference-card header span,
.sms-local-api-reference > div > span {
  color: var(--sms-tone);
  font-size: 11px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.sms-reference-card h4,
.sms-local-api-reference h4 {
  margin: 2px 0 0;
}

.sms-reference-card header code {
  max-width: 55%;
  color: var(--muted-2);
  font-size: 11px;
  overflow-wrap: anywhere;
  text-align: right;
}

.sms-reference-card section {
  display: grid;
  grid-template-columns: 118px minmax(0, 1fr);
  gap: 10px;
  padding: 7px 0;
  border-bottom: 1px solid rgba(119, 144, 160, 0.12);
}

.sms-reference-card section:last-child {
  border-bottom: 0;
}

.sms-reference-card section b {
  color: #d9e2e8;
  font-size: 12px;
}

.sms-reference-card section p {
  margin: 0;
  color: var(--muted-2);
  font-size: 12px;
  line-height: 1.55;
  overflow-wrap: anywhere;
}

.sms-reference-card section.is-market-data {
  margin: 2px 0;
  padding: 10px;
  border: 1px solid rgba(var(--sms-tone-rgb), 0.3);
  border-radius: 8px;
  background: rgba(var(--sms-tone-rgb), 0.08);
}

.sms-reference-card section.is-market-data b {
  color: var(--sms-tone);
}

.sms-reference-links a {
  color: var(--sms-tone);
  text-decoration: none;
}

.sms-reference-links a:hover {
  text-decoration: underline;
}

.sms-local-api-reference {
  --sms-tone: #d8c79f;
  margin-top: 14px;
  padding: 14px;
  border: 1px solid rgba(216, 199, 159, 0.26);
  border-radius: 10px;
  background: rgba(9, 13, 18, 0.76);
}

.sms-local-api-reference > div:first-child {
  margin-bottom: 10px;
}

.sms-local-market-scope {
  display: grid;
  grid-template-columns: 150px minmax(0, 1fr);
  gap: 12px;
  margin: 0 0 12px;
  padding: 10px;
  border: 1px solid rgba(216, 199, 159, 0.28);
  border-radius: 8px;
  background: rgba(216, 199, 159, 0.07);
}

.sms-local-market-scope b {
  color: #d8c79f;
  font-size: 12px;
}

.sms-local-market-scope p {
  margin: 0;
  color: var(--muted-2);
  font-size: 12px;
  line-height: 1.55;
}

@media (max-width: 760px) {
  .reference-materials-summary,
  .reference-materials-grid {
    grid-template-columns: 1fr;
  }

  .reference-material-card dl div {
    grid-template-columns: 1fr;
    gap: 3px;
  }

  .reference-material-component {
    grid-template-columns: 1fr;
    gap: 5px;
  }

  .sms-reference-grid {
    grid-template-columns: 1fr;
  }

  .sms-reference-card section {
    grid-template-columns: 1fr;
    gap: 4px;
  }

  .sms-local-market-scope {
    grid-template-columns: 1fr;
    gap: 4px;
  }
}

.coord-field textarea {
  min-height: 82px;
}

.prep-block {
  margin-top: 12px;
  padding: 12px;
  border: 1px solid var(--line-soft);
  border-radius: 8px;
  background: rgba(14, 17, 22, 0.48);
}

.prep-title {
  margin-bottom: 8px;
  color: var(--cyan);
  font-weight: 800;
}

.pool-details {
  margin-top: 10px;
  padding: 10px;
  border: 1px solid var(--line-soft);
  border-radius: 8px;
  background: rgba(14, 17, 22, 0.36);
}

.pool-details summary {
  color: var(--cyan);
  cursor: pointer;
  font-weight: 800;
}

.protocol-advanced {
  margin-top: 10px;
  padding: 10px;
  border: 1px solid var(--line-soft);
  border-radius: 6px;
  background: var(--panel-deep);
}

.protocol-advanced summary {
  color: var(--cyan);
  cursor: pointer;
  font-weight: 700;
}

.protocol-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 12px;
}

.protocol-result {
  min-height: 120px;
  padding: 10px;
  border: 1px solid var(--line-soft);
  border-radius: 6px;
  background: var(--panel-deep);
  line-height: 1.6;
  word-break: break-all;
}

.protocol-result p {
  margin: 0 0 10px;
}

.protocol-result a {
  color: var(--cyan);
  text-decoration: underline;
}

.protocol-log {
  min-height: 220px;
  max-height: 560px;
  overflow: auto;
  margin: 0;
  padding: 12px;
  border: 1px solid var(--line-soft);
  border-radius: 6px;
  background: #070a0f;
  color: #d8dee9;
  font: 12px/1.55 Consolas, "Microsoft YaHei", monospace;
  white-space: pre-wrap;
  word-break: break-word;
}

.ppboom-shell {
  --ppboom-bg: var(--bg);
  --ppboom-panel: var(--panel);
  --ppboom-ink: var(--text);
  --ppboom-muted: var(--muted-2);
  --ppboom-line: var(--line);
  --ppboom-accent: var(--green);
  --ppboom-bad: var(--red);
  --ppboom-good: var(--green);
  max-width: 980px;
  margin: 0 auto;
  padding: 32px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel);
  color: var(--ppboom-ink);
}

.ppboom-hero {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 24px;
}

.ppboom-hero h2 {
  margin: 0 0 10px;
  color: var(--ppboom-ink);
  font-family: Georgia, Cambria, "Times New Roman", serif;
  font-size: clamp(38px, 8vw, 76px);
  letter-spacing: -0.05em;
  line-height: 0.92;
}

.ppboom-hero p {
  margin: 0;
  color: var(--ppboom-muted);
  font: 16px/1.55 "Microsoft YaHei", "PingFang SC", sans-serif;
}

.ppboom-pill {
  flex: none;
  margin-top: 8px;
  padding: 8px 12px;
  border: 1px solid var(--line);
  border-radius: 4px;
  background: var(--line);
  color: var(--cyan);
  font: 800 12px/1 "Microsoft YaHei", "PingFang SC", sans-serif;
}

.ppboom-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 360px;
  gap: 18px;
}

.ppboom-card {
  padding: 22px;
  border: 1px solid var(--ppboom-line);
  border-radius: 8px;
  background: var(--ppboom-panel);
  box-shadow: none;
}

.ppboom-card h3 {
  margin: 0 0 10px;
  color: var(--ppboom-ink);
  font: 900 18px/1.2 "Microsoft YaHei", "PingFang SC", sans-serif;
}

.ppboom-help {
  margin: 0 0 12px;
  color: var(--ppboom-muted);
  font: 13px/1.5 "Microsoft YaHei", "PingFang SC", sans-serif;
}

.ppboom-divider {
  height: 1px;
  margin: 24px 0;
  background: var(--ppboom-line);
}

.ppboom-inline {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.ppboom-check {
  display: flex !important;
  align-items: center;
  gap: 8px;
  text-transform: none !important;
}

.ppboom-check input {
  width: auto;
  min-height: auto;
}

.ppboom-selected {
  margin-top: 12px;
  color: var(--ppboom-muted);
  font: 13px/1.45 "Microsoft YaHei", "PingFang SC", sans-serif;
}

.ppboom-card label {
  display: block;
  margin: 15px 0 8px;
  color: var(--ppboom-muted);
  font: 800 13px/1 "Microsoft YaHei", "PingFang SC", sans-serif;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.ppboom-card textarea,
.ppboom-card input,
.ppboom-card select {
  width: 100%;
  min-height: 46px;
  padding: 13px 14px;
  border: 1px solid var(--ppboom-line);
  border-radius: 4px;
  outline: none;
  background: var(--panel-dark);
  color: var(--ppboom-ink);
  font: 14px/1.45 Consolas, monospace;
}

.ppboom-card textarea {
  min-height: 220px;
  resize: vertical;
}

.ppboom-card textarea:focus,
.ppboom-card input:focus,
.ppboom-card select:focus {
  border-color: var(--ppboom-accent);
  box-shadow: 0 0 0 2px rgba(163, 190, 140, 0.16);
}

.ppboom-card button {
  width: 100%;
  margin-top: 18px;
  padding: 15px 20px;
  border: 0;
  border-radius: 4px;
  background: var(--ppboom-accent);
  color: #fff;
  cursor: pointer;
  font: 900 15px/1 "Microsoft YaHei", "PingFang SC", sans-serif;
}

.ppboom-card button:disabled {
  opacity: 0.65;
  cursor: wait;
}

.ppboom-card .ghost {
  width: auto;
  margin-top: 0;
  padding: 8px 12px;
  border: 1px solid var(--ppboom-line);
  background: var(--panel-dark);
  color: var(--ppboom-ink);
}

.ppboom-status {
  color: #a16207;
  font: 900 14px/1 "Microsoft YaHei", "PingFang SC", sans-serif;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.ppboom-status.ok {
  color: var(--ppboom-good);
}

.ppboom-status.fail {
  color: var(--ppboom-bad);
}

.ppboom-url {
  display: block;
  margin-top: 14px;
  padding: 13px;
  border: 1px solid var(--line);
  border-radius: 4px;
  background: var(--panel-dark);
  color: var(--cyan);
  font: 13px/1.45 Consolas, monospace;
  overflow-wrap: anywhere;
  text-decoration: none;
}

.ppboom-card pre {
  max-height: 520px;
  margin-top: 14px;
  overflow: auto;
  padding: 14px;
  border-radius: 4px;
  background: var(--panel-dark);
  color: #9aa9b9;
  font: 12px/1.45 Consolas, monospace;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}

.ppboom-batch-links {
  margin-top: 14px;
}

.ppboom-batch-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 10px;
  color: var(--text);
  font: 13px/1.3 "Microsoft YaHei", "PingFang SC", sans-serif;
}

.ppboom-batch-list {
  display: grid;
  gap: 8px;
}

.ppboom-batch-link {
  display: grid;
  gap: 3px;
  padding: 10px 12px;
  border: 1px solid var(--line);
  border-radius: 4px;
  background: var(--panel-dark);
  color: var(--cyan);
  font: 12px/1.35 Consolas, monospace;
  overflow-wrap: anywhere;
  text-decoration: none;
}

.ppboom-batch-link span {
  color: var(--muted-2);
}

.link-extract-result-panel {
  border-color: var(--line);
}

@media (max-width: 1100px) {
  .grid.two,
  .grid.three,
  .form-grid.four,
  .row3,
  .row4,
  .register-fields-six,
  .register-fields-five,
  .register-fields-four,
  .register-fields-three,
  .sms-module-brief,
  .sms-market-command,
  .sms-market-dashboard,
  .sms-market-stats,
  .sms-provider-strip,
  .sms-filter-grid,
  .sms-control-grid,
  .sms-range-grid,
  .sms-route-grid,
  .sms-top-grid,
  .account-run-settings,
  .account-pool-metrics,
  .account-pool-control-grid,
  .account-pool-proxy-grid,
  .sms-market-grid {
    grid-template-columns: 1fr 1fr;
  }

  .sms-market-card.is-expanded {
    grid-column: span 2;
  }

  .flow-cards {
    grid-template-columns: repeat(2, 1fr);
  }

  .slotgrid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 760px) {
  .shell {
    padding: 10px;
  }

  .nav a {
    padding: 9px 12px;
  }

  .grid.two,
  .grid.three,
  .form-grid,
  .form-grid.four,
  .row2,
  .row3,
  .row4,
  .register-fields-six,
  .register-fields-five,
  .register-fields-four,
  .register-fields-three,
  .sms-module-brief,
  .sms-market-command,
  .sms-market-dashboard,
  .sms-market-stats,
  .sms-provider-strip,
  .sms-market-stats,
  .sms-filter-grid,
  .sms-control-grid,
  .sms-range-grid,
  .sms-route-grid,
  .sms-top-grid,
  .account-run-settings,
  .account-pool-metrics,
  .account-pool-control-grid,
  .account-pool-proxy-grid,
  .sms-market-grid {
    grid-template-columns: 1fr;
  }

  .account-toolbar,
  .mailbox-toolbar {
    grid-template-columns: 1fr;
  }

  .account-toolbar-actions,
  .mailbox-toolbar-actions {
    justify-content: stretch;
  }

  .account-toolbar-actions button,
  .mailbox-toolbar-actions button {
    flex: 1 1 var(--account-toolbar-action-width, var(--mailbox-toolbar-action-width));
  }

  .account-toolbar-summary,
  .mailbox-toolbar-summary {
    justify-self: start;
  }

  .sms-market-card.is-expanded {
    grid-column: span 1;
  }

  .sms-top-head,
  .sms-route-head {
    display: grid;
  }

  .sms-market-copy h2 {
    font-size: 20px;
  }

  .sms-market-console {
    padding: 12px;
  }

  .sms-country-button {
    min-width: 190px;
  }

  .stat,
  .stat-card {
    flex-basis: 140px;
  }

  .slotgrid {
    grid-template-columns: 1fr;
  }

  .flow-row {
    grid-template-columns: 28px minmax(0, 1fr);
  }

  .exec-grid,
  .proxy-progress-row {
    grid-template-columns: 1fr;
  }

  .flow-result {
    grid-column: 1 / -1;
    text-align: left;
  }

  .ppboom-shell {
    padding: 18px;
  }

  .ppboom-hero {
    display: block;
  }

  .ppboom-grid,
  .ppboom-inline {
    grid-template-columns: 1fr;
  }
}

.task-slotgrid-compact {
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 5px;
}

.task-slot-compact {
  min-height: 54px;
  padding: 7px 9px 8px;
  border-color: rgba(111, 139, 83, 0.44);
  border-radius: 4px;
  background: #070b0c;
  box-shadow: none;
}

.task-slot-compact.running,
.task-slot-compact.ok,
.task-slot-compact.fail {
  border-color: rgba(111, 139, 83, 0.44);
}

.task-slot-compact.running {
  border-color: rgba(142, 164, 94, 0.5);
  background: #080d0d;
}

.task-slot-compact.ok {
  border-color: rgba(95, 151, 83, 0.5);
  background: #07100c;
}

.task-slot-compact.fail {
  border-color: rgba(151, 104, 91, 0.5);
  background: #0d0909;
}

.task-slot-empty {
  grid-column: 1 / -1;
  padding: 9px 10px;
  border: 1px dashed var(--line);
  border-radius: 8px;
  color: var(--muted-2);
  font-size: 12px;
}

.task-slot-compact .slot-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 5px;
}

.task-slot-compact .slot-title {
  margin: 0;
  color: #d8e8d1;
  font-size: 11px;
  font-weight: 700;
  line-height: 1;
}

.task-slot-compact .slot-state {
  min-width: 0;
  overflow: hidden;
  color: var(--muted-2);
  font-size: 10px;
  line-height: 1;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.task-slot-compact .slot-line {
  display: grid;
  align-items: center;
  gap: 6px;
}

.task-slot-compact .slot-main {
  grid-template-columns: auto minmax(0, 1fr) auto;
  margin-top: 0;
}

.task-slot-compact .slot-email {
  min-width: 0;
  overflow: hidden;
  overflow-wrap: normal;
  color: #aebcc8;
  font-size: 11px;
  font-weight: 500;
  line-height: 1.35;
  text-overflow: ellipsis;
  white-space: nowrap;
  word-break: normal;
}

.task-slot-compact .slot-log {
  margin-top: 4px;
  overflow: hidden;
  color: #72876f;
  font-size: 10px;
  font-weight: 500;
  line-height: 1.35;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.task-slot-compact.fail .slot-log {
  color: #a87474;
}

.task-slot-compact.ok .slot-log {
  color: #86a978;
}

.slot-meta {
  display: block;
  margin-top: 3px;
  color: var(--muted-2);
  font-size: 9px;
  line-height: 1;
}

.slot-meta span:first-child {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.slot-completion {
  color: #d8c775;
  font-size: 11px;
  font-weight: 650;
  line-height: 1.25;
  white-space: nowrap;
}

.link-extract-card-grid {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 5px;
  margin-top: 8px;
}

.link-extract-card {
  background: #070b0c;
}

.link-extract-result-card {
  display: grid;
  gap: 4px;
  min-width: 360px;
}

.link-extract-result-email {
  color: var(--cyan);
  font-weight: 700;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.link-extract-result-url {
  color: var(--text);
  line-height: 1.35;
  overflow-wrap: anywhere;
  word-break: break-all;
}

.link-extract-status-head {
  display: flex;
  align-items: baseline;
  gap: 18px;
  min-width: 0;
}

.link-extract-status-head h3 {
  flex: 0 0 auto;
  margin: 0;
}

.link-extract-super-card {
  padding: 16px;
}

.link-extract-super-frame {
  width: 100%;
  min-height: 82vh;
  margin-top: 12px;
  border: 1px solid var(--border);
  border-radius: 12px;
  background: #080d13;
}

.link-extract-status-text {
  min-width: 0;
  overflow: hidden;
  color: #7f98b5;
  font-size: 12px;
  line-height: 1.35;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.momo-gray-card {
  padding: 18px;
}

.momo-gray-head {
  justify-content: space-between;
}

.momo-gray-guardrails {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.momo-gray-guardrails span {
  padding: 4px 8px;
  border: 1px solid color-mix(in srgb, var(--border) 70%, #9ac46f 30%);
  border-radius: 6px;
  color: var(--muted);
  font-size: 12px;
  font-weight: 700;
}

.momo-gray-form {
  display: grid;
  grid-template-columns: minmax(0, 1.65fr) minmax(280px, 0.75fr);
  gap: 18px;
  margin-top: 16px;
  align-items: stretch;
}

.momo-gray-target {
  min-width: 0;
}

.momo-gray-target textarea {
  min-height: 260px;
  resize: vertical;
}

.momo-gray-controls {
  display: grid;
  gap: 12px;
  align-content: start;
  min-width: 0;
}

.momo-gray-run {
  width: 100%;
  min-height: 44px;
}

.momo-gray-result {
  margin-top: 18px;
  padding-top: 16px;
  border-top: 1px solid var(--border);
}

.momo-gray-result-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 16px;
  padding: 10px 12px;
  border-left: 3px solid var(--muted);
  background: color-mix(in srgb, var(--panel) 88%, #ffffff 12%);
}

.momo-gray-result-head span {
  min-width: 0;
  color: var(--muted);
  overflow-wrap: anywhere;
}

.momo-gray-result-head.is-transfer_candidate,
.momo-gray-result-head.is-target_already_qualified {
  border-left-color: #9ac46f;
}

.momo-gray-result-head.is-not_transferred,
.momo-gray-result-head.is-inconclusive {
  border-left-color: #d6a84f;
}

.momo-gray-result-head.is-update_rejected,
.momo-gray-result-head.is-failed {
  border-left-color: #d36a6a;
}

.momo-gray-evidence {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1px;
  margin-top: 1px;
  background: var(--border);
}

.momo-gray-evidence span {
  display: grid;
  gap: 5px;
  min-width: 0;
  padding: 12px;
  background: var(--panel);
}

.momo-gray-evidence small {
  color: var(--muted);
}

.momo-gray-evidence b {
  overflow-wrap: anywhere;
}

.momo-gray-diagnostics,
.momo-gray-attempts {
  grid-column: 1 / -1;
}

@media (max-width: 900px) {
  .momo-gray-form,
  .momo-gray-evidence {
    grid-template-columns: minmax(0, 1fr);
  }

  .momo-gray-head,
  .momo-gray-result-head {
    align-items: flex-start;
    flex-direction: column;
  }

  .momo-gray-target textarea {
    min-height: 190px;
  }
}

.slot-progressbar {
  height: 2px;
  margin-top: 5px;
  overflow: hidden;
  border-radius: 999px;
  background: transparent;
}

.slot-progressbar span {
  display: block;
  width: var(--slot-completion, 0%);
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #8bbf63, #d0d67c);
}

.task-slot-compact.fail .slot-progressbar span {
  background: linear-gradient(90deg, #a95757, #df9a82);
}

.task-slot-compact.ok .slot-progressbar span {
  background: linear-gradient(90deg, #7dbf5b, #b9d982);
}

@media (max-width: 1180px) {
  .task-slotgrid-compact,
  .link-extract-card-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

@media (max-width: 980px) {
  .task-slotgrid-compact,
  .link-extract-card-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 820px) {
  .task-slotgrid-compact,
  .link-extract-card-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 560px) {
  .task-slotgrid-compact,
  .link-extract-card-grid {
    grid-template-columns: 1fr;
  }
}

.email-code-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 12px;
  align-items: start;
  margin-top: 14px;
}

.email-code-source-card {
  border-color: rgba(136, 192, 208, 0.28);
  background:
    radial-gradient(circle at 16% 0%, rgba(136, 192, 208, 0.14), transparent 34%),
    linear-gradient(135deg, rgba(22, 27, 34, 0.98), rgba(12, 17, 23, 0.98));
}

.email-code-source-card code,
#page-email-codes code {
  color: #bae6fd;
}

@media (max-width: 980px) {
  .email-code-grid {
    grid-template-columns: 1fr;
  }
}

#page-email-codes {
  gap: 12px;
}

body:has(#page-email-codes.active) .wrap,
body:has(#page-email-codes.active) .shell {
  max-width: 1500px;
}

.api-helper-card {
  padding: 18px;
}

.api-helper-head {
  justify-content: space-between;
}

.api-helper-warning {
  margin-top: 12px;
  padding: 9px 11px;
  border-left: 3px solid #d6a84f;
  background: color-mix(in srgb, var(--panel) 86%, #d6a84f 14%);
  color: var(--muted);
  line-height: 1.5;
}

.api-helper-form {
  margin-top: 16px;
}

.api-helper-fields {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 14px;
}

.api-helper-key-field {
  grid-column: 1 / -1;
}

.api-helper-key-field textarea {
  min-height: 88px;
  resize: vertical;
}

.api-helper-actions,
.api-helper-result-actions {
  margin-top: 14px;
}

.api-helper-stock {
  margin-top: 14px;
  padding: 9px 11px;
  border: 1px solid var(--border);
  color: var(--muted);
  font-size: 12px;
}

.api-helper-result {
  margin-top: 14px;
  padding-top: 14px;
  border-top: 1px solid var(--border);
}

.api-helper-result-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
  padding: 10px 12px;
  border-left: 3px solid var(--muted);
  background: color-mix(in srgb, var(--panel) 88%, #ffffff 12%);
}

.api-helper-result-head span {
  color: var(--muted);
  overflow-wrap: anywhere;
}

.api-helper-card-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1px;
  margin-top: 1px;
  background: var(--border);
}

.api-helper-card-grid div {
  display: grid;
  gap: 5px;
  min-width: 0;
  padding: 12px;
  background: var(--panel);
}

.api-helper-card-grid small {
  color: var(--muted);
}

.api-helper-card-grid strong {
  overflow-wrap: anywhere;
  font-variant-numeric: tabular-nums;
}

@media (max-width: 720px) {
  .api-helper-fields,
  .api-helper-card-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .api-helper-key-field {
    grid-column: auto;
  }

  .api-helper-result-head {
    align-items: flex-start;
    flex-direction: column;
  }
}

.omakse-mail-query-card {
  margin-bottom: 12px;
  padding: 12px 14px;
  border-color: rgba(136, 192, 208, 0.38);
  border-radius: 8px;
  background: var(--panel);
}

.omakse-mail-query-head,
.omakse-mail-query-actions,
.omakse-mail-server-line,
.omakse-mail-pane > header,
.omakse-mail-message-meta {
  display: flex;
  align-items: center;
}

.omakse-mail-query-head,
.omakse-mail-pane > header {
  justify-content: space-between;
}

.omakse-mail-query-head {
  gap: 16px;
}

.omakse-mail-query-head h2 {
  margin: 2px 0 0;
  font-size: 22px;
  letter-spacing: 0;
}

.omakse-mail-query-actions {
  gap: 8px;
  flex: 0 0 auto;
}

.omakse-mail-query-form {
  display: grid;
  grid-template-columns: minmax(200px, 1fr) 95px auto auto;
  gap: 7px;
  margin-top: 12px;
}

.omakse-mail-query-form .sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.omakse-mail-query-form > input,
.omakse-mail-query-form > button,
.omakse-mail-wait-field {
  min-height: 40px;
}

.omakse-mail-wait-field {
  display: grid;
  grid-template-columns: auto minmax(42px, 1fr) auto;
  align-items: center;
  gap: 5px;
  margin: 0;
  padding: 0 9px;
  border: 1px solid var(--line);
  border-radius: 6px;
  color: var(--muted-2);
  background: var(--panel-deep);
}

.omakse-mail-wait-field input {
  min-width: 0;
  padding: 0;
  border: 0;
  text-align: right;
  background: transparent;
}

.omakse-mail-server-line {
  justify-content: space-between;
  gap: 12px;
  margin-top: 9px;
  color: var(--muted-2);
  font-size: 12px;
}

#omakseMailServerUrl {
  color: var(--cyan);
}

.omakse-mail-workspace {
  display: grid;
  grid-template-columns: minmax(240px, 20fr) minmax(320px, 30fr) minmax(400px, 50fr);
  width: 100%;
  max-width: 1400px;
  height: clamp(640px, calc(100vh - 238px), 900px);
  min-width: 0;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel-deep);
}

.omakse-mail-pane {
  display: grid;
  grid-template-rows: 76px auto minmax(0, 1fr);
  min-width: 0;
  min-height: 0;
  overflow: hidden;
  background: var(--panel);
}

.omakse-mail-pane + .omakse-mail-pane {
  border-left: 1px solid var(--line);
}

.omakse-mail-pane > header {
  min-width: 0;
  padding: 14px 16px;
  border-bottom: 1px solid var(--line);
  background: rgba(136, 192, 208, 0.07);
}

.omakse-mail-pane > header span,
.omakse-mail-query-head .eyebrow {
  display: block;
  color: var(--cyan);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0;
}

.omakse-mail-pane > header h3 {
  min-width: 0;
  margin: 4px 0 0;
  overflow: hidden;
  color: var(--text);
  font-size: 17px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.omakse-mail-pane > header b {
  color: var(--muted-2);
  font-size: 12px;
  font-weight: 600;
}

.omakse-mail-pane-tools {
  padding: 10px 12px;
  border-bottom: 1px solid var(--line);
  background: var(--panel);
}

.omakse-mail-pane-tools input {
  width: 100%;
  min-height: 38px;
}

.omakse-mail-account-list,
.omakse-mail-message-list,
.omakse-mail-message-body {
  min-width: 0;
  min-height: 0;
  overflow: auto;
}

.omakse-mail-account-row,
.omakse-mail-message-row {
  display: block;
  width: 100%;
  border: 0;
  border-bottom: 1px solid var(--line-soft);
  border-radius: 0;
  color: var(--text);
  text-align: left;
  background: transparent;
}

.omakse-mail-account-row {
  min-height: 68px;
  padding: 12px 14px;
}

.omakse-mail-account-row b,
.omakse-mail-account-row span,
.omakse-mail-message-row b,
.omakse-mail-message-row p {
  display: block;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
}

.omakse-mail-account-row b {
  white-space: nowrap;
}

.omakse-mail-account-row span {
  margin-top: 5px;
  color: var(--muted-2);
  font-size: 11px;
}

.omakse-mail-account-row:hover,
.omakse-mail-message-row:hover {
  background: rgba(136, 192, 208, 0.07);
}

.omakse-mail-account-row.is-selected,
.omakse-mail-message-row.is-selected {
  box-shadow: inset 4px 0 0 var(--amber);
  background: rgba(136, 192, 208, 0.15);
}

.omakse-mail-message-row {
  min-height: 104px;
  padding: 11px 14px 12px;
}

.omakse-mail-message-meta {
  gap: 7px;
  min-width: 0;
  overflow: hidden;
  color: var(--muted-2);
  font-size: 11px;
  white-space: nowrap;
}

.omakse-mail-message-meta i {
  width: 6px;
  height: 6px;
  flex: 0 0 6px;
  border-radius: 50%;
  background: var(--amber);
}

.omakse-mail-message-meta time {
  margin-left: auto;
}

.omakse-mail-message-row b {
  margin-top: 8px;
  font-size: 14px;
  white-space: nowrap;
}

.omakse-mail-message-row p {
  display: -webkit-box;
  margin: 6px 0 0;
  color: var(--muted-2);
  font-size: 12px;
  line-height: 1.45;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.omakse-mail-detail-pane {
  grid-template-rows: auto auto minmax(0, 1fr);
}

.omakse-mail-detail-head {
  min-height: 104px;
  align-items: flex-start !important;
}

.omakse-mail-detail-head p {
  margin: 7px 0 0;
  overflow-wrap: anywhere;
  color: var(--muted-2);
  font-size: 12px;
}

.omakse-mail-view-tabs {
  padding: 12px 16px 0;
}

.omakse-mail-view-tabs button {
  border-radius: 0;
}

.omakse-mail-message-body {
  padding: 18px;
  background: var(--panel-deep);
}

.omakse-mail-message-body pre {
  margin: 0;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  color: var(--text);
  font: inherit;
  font-size: 14px;
  line-height: 1.75;
}

.omakse-mail-message-body.is-html {
  padding: 12px;
}

.omakse-mail-message-body iframe {
  width: 100%;
  height: 100%;
  border: 1px solid var(--line);
  background: #fff;
}

.omakse-mail-empty {
  display: grid;
  min-height: 140px;
  padding: 24px;
  place-items: center;
  color: var(--muted-2);
  text-align: center;
}

.email-code-secondary-tools {
  margin-top: 12px;
  border-radius: 8px;
}

.email-code-secondary-tools > summary {
  cursor: pointer;
  font-size: 14px;
  font-weight: 700;
}

.email-code-checks {
  margin-top: 12px;
}

@media (max-width: 980px) {
  .omakse-mail-query-form {
    grid-template-columns: minmax(0, 1fr) 110px;
  }

  .omakse-mail-workspace {
    grid-template-columns: minmax(250px, 35fr) minmax(0, 65fr);
    grid-template-rows: 560px minmax(520px, 1fr);
    height: auto;
  }

  .omakse-mail-detail-pane {
    grid-column: 1 / -1;
    min-height: 520px;
    border-top: 1px solid var(--line);
    border-left: 0 !important;
  }
}

@media (max-width: 680px) {
  .omakse-mail-query-head,
  .omakse-mail-server-line {
    align-items: flex-start;
    flex-direction: column;
  }

  .omakse-mail-query-form,
  .omakse-mail-workspace {
    grid-template-columns: 1fr;
  }

  .omakse-mail-workspace {
    grid-template-rows: 420px 520px 560px;
  }

  .omakse-mail-pane,
  .omakse-mail-detail-pane {
    grid-column: 1;
    border-top: 1px solid var(--line);
    border-left: 0 !important;
  }
}

/* SMS routing desk: country rows stay neutral; provider surfaces own their color. */
#page-code [data-sms-provider-tone="hero-sms"] {
  --sms-tone: #67c7dc;
  --sms-tone-rgb: 103, 199, 220;
}

#page-code [data-sms-provider-tone="5sim"] {
  --sms-tone: #e4a45c;
  --sms-tone-rgb: 228, 164, 92;
}

#page-code [data-sms-provider-tone="smsbower"] {
  --sms-tone: #9bc66f;
  --sms-tone-rgb: 155, 198, 111;
}

#page-code [data-sms-provider-tone="all"] {
  --sms-tone: #d4777f;
  --sms-tone-rgb: 212, 119, 127;
}

#page-code .sms-workbench {
  padding: 14px;
  border-color: rgba(111, 144, 163, 0.3);
  background:
    linear-gradient(145deg, rgba(21, 28, 36, 0.98), rgba(10, 14, 19, 0.98) 62%),
    var(--panel);
}

#page-code .sms-market-console {
  margin: 0 0 12px;
  padding: 14px;
  border-color: rgba(104, 151, 175, 0.32);
  background:
    radial-gradient(circle at 12% 0%, rgba(103, 199, 220, 0.12), transparent 28%),
    radial-gradient(circle at 90% 16%, rgba(228, 164, 92, 0.08), transparent 24%),
    linear-gradient(135deg, #111923, #0b1016 64%, #121820);
}

#page-code .sms-market-overview {
  display: grid;
  grid-template-columns: minmax(540px, 1.25fr) minmax(330px, 0.75fr);
  gap: 10px;
  align-items: stretch;
}

#page-code .sms-provider-rail {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

#page-code .sms-desk-rail .sms-provider-rail {
  grid-template-columns: 1fr;
}

#page-code #smsProviderCards .sms-provider-card {
  --sms-tone: #8fa7b8;
  --sms-tone-rgb: 143, 167, 184;
  grid-template-areas:
    "name price"
    "state note"
    "meta meta";
  min-height: 82px;
  padding: 10px 11px 10px 15px;
  border-color: rgba(var(--sms-tone-rgb), 0.42);
  background:
    linear-gradient(145deg, rgba(var(--sms-tone-rgb), 0.12), transparent 50%),
    rgba(7, 11, 16, 0.76);
}

#page-code #smsProviderCards .sms-provider-card::before {
  top: 10px;
  bottom: 10px;
  background: var(--sms-tone);
}

#page-code #smsProviderCards .sms-provider-card:hover,
#page-code #smsProviderCards .sms-provider-card.is-primary {
  border-color: rgba(var(--sms-tone-rgb), 0.78);
  background:
    linear-gradient(145deg, rgba(var(--sms-tone-rgb), 0.2), transparent 54%),
    rgba(7, 11, 16, 0.88);
}

#page-code #smsProviderCards .sms-provider-card b,
#page-code #smsProviderCards .sms-provider-card .sms-provider-state {
  color: var(--sms-tone);
}

#page-code #smsProviderCards .sms-provider-health {
  display: none;
}

#page-code #smsProviderCards .sms-provider-meta {
  gap: 5px;
  margin-top: 2px;
}

#page-code #smsProviderCards .sms-provider-meta-item {
  min-width: 0;
  padding: 3px 5px;
  border-color: rgba(var(--sms-tone-rgb), 0.16);
  background: rgba(var(--sms-tone-rgb), 0.055);
}

#page-code .sms-ops-panel {
  display: grid;
  gap: 8px;
  min-width: 0;
  padding: 11px;
  border: 1px solid rgba(143, 167, 184, 0.24);
  border-radius: 8px;
  background:
    linear-gradient(150deg, rgba(143, 167, 184, 0.08), transparent 48%),
    rgba(7, 11, 16, 0.72);
}

#page-code .sms-ops-head,
#page-code .sms-section-head,
#page-code .sms-selection-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

#page-code .sms-ops-head span,
#page-code .sms-section-head > div > span {
  color: #8fb8ca;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.09em;
}

#page-code .sms-ops-head em,
#page-code .sms-section-head > em {
  color: var(--muted);
  font-size: 11px;
  font-style: normal;
}

#page-code .sms-ops-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 6px;
}

#page-code .sms-ops-grid section {
  min-width: 0;
  padding: 7px 8px;
  border: 1px solid rgba(143, 167, 184, 0.16);
  border-radius: 6px;
  background: rgba(10, 15, 21, 0.7);
}

#page-code .sms-ops-grid span,
#page-code .sms-ops-grid b,
#page-code .sms-ops-grid em {
  display: block;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

#page-code .sms-ops-grid span {
  color: var(--muted-2);
  font-size: 10px;
}

#page-code .sms-ops-grid b {
  margin: 3px 0 2px;
  color: #dbe7ed;
  font-size: 12px;
}

#page-code .sms-ops-grid em {
  color: var(--muted);
  font-size: 10px;
  font-style: normal;
}

#page-code .sms-blocked-countries {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 9px;
  align-items: start;
  padding-top: 7px;
  border-top: 1px solid rgba(143, 167, 184, 0.14);
}

#page-code .sms-blocked-countries > div:first-child span,
#page-code .sms-blocked-countries > div:first-child b {
  display: block;
}

#page-code .sms-blocked-countries > div:first-child span {
  color: var(--muted-2);
  font-size: 10px;
}

#page-code .sms-blocked-countries > div:first-child b {
  color: #d4777f;
  font-size: 18px;
}

#page-code .sms-blocked-list {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
}

#page-code .sms-blocked-item {
  display: inline-flex;
  align-items: center;
  gap: 4px;
}

#page-code .sms-blocked-item button {
  min-height: 22px;
  margin: 0;
  padding: 2px 6px;
}

#page-code .sms-blocked-list span {
  --sms-tone: #d4777f;
  --sms-tone-rgb: 212, 119, 127;
  padding: 3px 6px;
  border: 1px solid rgba(var(--sms-tone-rgb), 0.34);
  border-radius: 999px;
  background: rgba(var(--sms-tone-rgb), 0.08);
  color: var(--sms-tone);
  font-size: 10px;
}

#page-code .sms-blocked-list > em {
  color: var(--muted);
  font-size: 11px;
  font-style: normal;
}

#page-code .sms-market-panel {
  margin: 0;
  padding: 11px;
  border-color: rgba(104, 151, 175, 0.2);
  background: rgba(6, 10, 14, 0.62);
}

#page-code .sms-control-grid {
  grid-template-columns: 0.65fr 0.65fr 1fr 0.85fr 0.85fr;
  gap: 8px;
  margin-bottom: 8px;
}

#page-code .sms-selection-bar {
  margin-bottom: 9px;
  padding: 8px;
  border: 1px solid rgba(143, 167, 184, 0.18);
  border-radius: 7px;
  background: rgba(15, 21, 28, 0.68);
}

#page-code .sms-selected-route {
  flex: 1;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--muted-2);
}

#page-code .sms-selected-route.is-confirmed {
  color: #dce9ef;
}

#page-code .sms-selected-route.is-confirmed b {
  color: var(--green);
}

#page-code .sms-selected-route button,
#page-code .sms-task-actions button {
  margin: 0;
}

#page-code .sms-task-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 7px;
}

#page-code .sms-filter-grid {
  grid-template-columns: minmax(220px, 1.25fr) minmax(120px, 0.55fr) minmax(120px, 0.58fr) minmax(112px, 0.48fr) minmax(112px, 0.48fr) auto;
  gap: 8px;
  align-items: end;
  margin-bottom: 8px;
}

#page-code .sms-filter-summary {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  min-height: 39px;
  color: var(--muted-2);
  white-space: nowrap;
}

#page-code .sms-market-scroll {
  width: 100%;
  max-width: 1180px;
  margin-inline: auto;
  max-height: 650px;
  padding-right: 3px;
}

#page-code .sms-market-card {
  --sms-country-accent: #d8c79f;
  border-color: rgba(104, 151, 175, 0.22);
  background:
    linear-gradient(90deg, rgba(96, 126, 145, 0.08), transparent 28%),
    rgba(10, 15, 21, 0.86);
}

#page-code .sms-market-card.is-expanded {
  border-color: rgba(113, 169, 194, 0.5);
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.22);
}

#page-code .sms-market-card-main {
  border-right-color: rgba(104, 151, 175, 0.18);
  background: rgba(119, 151, 168, 0.045);
}

#page-code .sms-market-country b {
  color: var(--sms-country-accent);
}

#page-code .sms-market-card-main .sms-market-line b {
  color: var(--sms-country-accent);
}

#page-code .sms-provider-lane,
#page-code .sms-provider-mini {
  --sms-tone: #8fa7b8;
  --sms-tone-rgb: 143, 167, 184;
  border-color: rgba(var(--sms-tone-rgb), 0.34);
  background:
    linear-gradient(140deg, rgba(var(--sms-tone-rgb), 0.11), transparent 46%),
    rgba(7, 11, 16, 0.74);
}

#page-code .sms-provider-lane:hover,
#page-code .sms-provider-lane.is-active,
#page-code .sms-provider-mini.is-orderable {
  border-color: rgba(var(--sms-tone-rgb), 0.72);
  background:
    linear-gradient(140deg, rgba(var(--sms-tone-rgb), 0.2), transparent 50%),
    rgba(7, 11, 16, 0.86);
}

#page-code .sms-provider-lane b,
#page-code .sms-provider-mini-main span,
#page-code .sms-provider-mini-main i {
  color: var(--sms-tone);
}

#page-code .sms-provider-detail-list {
  gap: 8px;
  margin: 0;
  padding: 9px;
  border-top: 1px solid rgba(113, 169, 194, 0.22);
  background: rgba(4, 8, 12, 0.68);
}

#page-code .sms-tier-chip.is-selected {
  border-color: var(--sms-tone, var(--green));
  background: rgba(var(--sms-tone-rgb, 155, 198, 111), 0.12);
}

#page-code .sms-advanced-card summary {
  color: #a9c5d2;
}

#page-code .sms-key-strip {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 9px;
  margin-top: 12px;
}

#page-code .sms-key-strip > section {
  --sms-tone: #8fa7b8;
  --sms-tone-rgb: 143, 167, 184;
  display: grid;
  gap: 6px;
  padding: 10px;
  border: 1px solid rgba(var(--sms-tone-rgb), 0.38);
  border-radius: 8px;
  background:
    linear-gradient(145deg, rgba(var(--sms-tone-rgb), 0.11), transparent 46%),
    rgba(7, 11, 16, 0.68);
}

#page-code .sms-key-strip > section > b {
  color: var(--sms-tone);
}

#page-code .sms-inline-fields,
#page-code .sms-settings-row {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 7px;
}

#page-code .sms-inline-fields.sms-inline-fields-three {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

#page-code .sms-settings-row {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin-top: 10px;
}

#page-code .sms-settings-row.sms-settings-row-paypal {
  grid-template-columns: minmax(240px, 420px);
}

#page-code .sms-restock-card,
#page-code .sms-orders-card,
#page-code .sms-batch-card {
  border-color: rgba(104, 151, 175, 0.22);
  background: rgba(13, 18, 24, 0.92);
}

#page-code .sms-section-head {
  margin-bottom: 9px;
}

#page-code .sms-section-head h3 {
  margin: 2px 0 0;
}

#page-code .sms-orders-list {
  display: grid;
  gap: 6px;
}

#page-code .sms-restock-list {
  display: grid;
  gap: 6px;
}

#page-code .sms-restock-item {
  display: grid;
  grid-template-columns: minmax(165px, 0.6fr) minmax(90px, auto) minmax(320px, 1.8fr);
  gap: 12px;
  align-items: center;
  padding: 9px 11px;
  border: 1px solid rgba(109, 181, 134, 0.2);
  border-left: 3px solid rgba(109, 181, 134, 0.72);
  border-radius: 7px;
  background: rgba(7, 15, 12, 0.62);
}

#page-code .sms-restock-time span,
#page-code .sms-restock-time em {
  display: block;
}

#page-code .sms-restock-time span {
  color: var(--text);
  font-size: 12px;
  font-weight: 700;
}

#page-code .sms-restock-time em {
  margin-top: 2px;
  color: var(--muted);
  font-size: 10px;
  font-style: normal;
}

#page-code .sms-restock-item > strong {
  color: var(--green);
  font-size: 20px;
}

#page-code .sms-restock-changes {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 5px;
}

#page-code .sms-restock-changes > span {
  --sms-tone: #8fa7b8;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-width: 0;
  padding: 5px 7px;
  border: 1px solid color-mix(in srgb, var(--sms-tone) 30%, transparent);
  border-radius: 5px;
  background: color-mix(in srgb, var(--sms-tone) 7%, transparent);
}

#page-code .sms-restock-changes b,
#page-code .sms-restock-changes em {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

#page-code .sms-restock-changes b {
  color: var(--text);
  font-size: 10px;
}

#page-code .sms-restock-changes em {
  color: var(--sms-tone);
  font-size: 10px;
  font-style: normal;
  font-weight: 700;
}

/* Number library + monitor panels */
#page-code .sms-number-library-card,
#page-code .sms-number-monitor-card {
  border-color: rgba(104, 151, 175, 0.22);
  background: rgba(13, 18, 24, 0.92);
}

#page-code .sms-monitor-controls {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  gap: 7px;
}

#page-code .sms-monitor-controls label {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: var(--muted-2);
  font-size: 11px;
}

#page-code .sms-monitor-controls select,
#page-code .sms-monitor-threshold input {
  width: 82px;
  padding: 3px 6px;
  border: 1px solid rgba(143, 167, 184, 0.24);
  border-radius: 4px;
  background: rgba(7, 11, 16, 0.72);
  color: var(--text);
  font-family: inherit;
  font-size: 12px;
}

#page-code .sms-monitor-controls select {
  width: 116px;
}

#page-code .sms-monitor-status {
  display: grid;
  grid-template-columns: auto auto minmax(0, 1fr) auto;
  gap: 8px;
  align-items: center;
  margin-bottom: 8px;
  padding: 7px 9px;
  border: 1px solid rgba(143, 167, 184, 0.18);
  border-radius: 5px;
  background: rgba(7, 11, 16, 0.62);
}

#page-code .sms-monitor-status-dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #d8c79f;
}

#page-code .sms-monitor-status.is-ready .sms-monitor-status-dot {
  background: #a3be8c;
  box-shadow: 0 0 0 3px rgba(163, 190, 140, 0.12);
}

#page-code .sms-monitor-status.is-error .sms-monitor-status-dot {
  background: #bf616a;
  box-shadow: 0 0 0 3px rgba(191, 97, 106, 0.12);
}

#page-code .sms-monitor-status b {
  color: var(--text);
  font-size: 11px;
}

#page-code .sms-monitor-status span,
#page-code .sms-monitor-status em {
  min-width: 0;
  color: var(--muted);
  font-size: 10px;
  font-style: normal;
}

#page-code .sms-monitor-status em {
  white-space: nowrap;
}

#page-code .sms-monitor-current-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 6px;
  margin-bottom: 10px;
}

#page-code .sms-monitor-current-grid section {
  min-width: 0;
  padding: 8px 9px;
  border-top: 2px solid rgba(136, 192, 208, 0.48);
  background: rgba(10, 15, 21, 0.7);
}

#page-code .sms-monitor-current-grid span,
#page-code .sms-monitor-current-grid b,
#page-code .sms-monitor-current-grid em {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
}

#page-code .sms-monitor-current-grid span {
  color: var(--muted-2);
  font-size: 10px;
  white-space: nowrap;
}

#page-code .sms-monitor-current-grid b {
  margin: 3px 0 2px;
  color: #cdeefb;
  font-size: 16px;
  font-weight: 600;
  white-space: nowrap;
}

#page-code .sms-monitor-current-grid em {
  color: var(--muted);
  font-size: 10px;
  font-style: normal;
  white-space: nowrap;
}

#page-code .sms-monitor-watchlist {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 5px;
  margin-bottom: 12px;
}

#page-code .sms-monitor-watch-row {
  --sms-tone: #8fa7b8;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto minmax(220px, 0.8fr);
  gap: 10px;
  align-items: center;
  min-width: 0;
  padding: 7px 9px;
  border: 1px solid rgba(143, 167, 184, 0.18);
  border-left: 3px solid var(--sms-tone);
  border-radius: 5px;
  background: rgba(7, 11, 16, 0.62);
}

#page-code .sms-monitor-watch-row.is-selected {
  border-color: rgba(var(--sms-tone-rgb), 0.54);
  background: rgba(var(--sms-tone-rgb), 0.09);
}

#page-code .sms-monitor-watch-row > div {
  display: flex;
  align-items: baseline;
  gap: 6px;
  min-width: 0;
}

#page-code .sms-monitor-watch-row > div:last-child {
  justify-content: flex-end;
  white-space: nowrap;
}

#page-code .sms-monitor-watch-row > div:last-child button {
  margin: 0 0 0 4px;
}

#page-code .sms-monitor-watch-row b {
  color: var(--text);
  font-size: 12px;
}

#page-code .sms-monitor-watch-row strong {
  color: #bcd6a0;
  font-size: 13px;
  font-weight: 600;
}

#page-code .sms-monitor-watch-row span {
  overflow: hidden;
  color: var(--muted-2);
  font-size: 10px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

#page-code .sms-monitor-watch-row em {
  color: var(--sms-tone);
  font-size: 10px;
  font-style: normal;
  white-space: nowrap;
}

#page-code .sms-monitor-price-events {
  display: grid;
  gap: 5px;
  margin-bottom: 12px;
}

#page-code .sms-monitor-price-event {
  --sms-tone: #8fa7b8;
  --sms-tone-rgb: 143, 167, 184;
  display: grid;
  grid-template-columns: minmax(220px, 1fr) minmax(180px, auto) minmax(240px, auto);
  gap: 12px;
  align-items: center;
  min-width: 0;
  padding: 8px 10px;
  border: 1px solid rgba(var(--sms-tone-rgb), 0.22);
  border-left: 3px solid #d4777f;
  border-radius: 5px;
  background: rgba(212, 119, 127, 0.075);
}

#page-code .sms-monitor-price-event > div {
  display: flex;
  align-items: baseline;
  gap: 7px;
  min-width: 0;
}

#page-code .sms-monitor-price-event > div:not(:first-child) {
  justify-content: flex-end;
  white-space: nowrap;
}

#page-code .sms-monitor-price-event b {
  color: var(--text);
  font-size: 12px;
}

#page-code .sms-monitor-price-event > div:nth-child(2) b,
#page-code .sms-monitor-price-event > div:nth-child(2) em {
  color: #e8a7ac;
}

#page-code .sms-monitor-price-event span,
#page-code .sms-monitor-price-event em {
  overflow: hidden;
  color: var(--muted-2);
  font-size: 10px;
  font-style: normal;
  text-overflow: ellipsis;
  white-space: nowrap;
}

#page-code .sms-monitor-history-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 5px;
  padding: 7px 9px;
  border: 1px solid rgba(143, 167, 184, 0.18);
  border-radius: 5px 5px 0 0;
  background: rgba(7, 11, 16, 0.68);
}

#page-code .sms-monitor-history-head > div {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 7px;
  min-width: 0;
}

#page-code .sms-monitor-history-head b {
  color: var(--text);
  font-size: 12px;
}

#page-code .sms-monitor-history-head span,
#page-code .sms-monitor-history-head em {
  color: var(--muted-2);
  font-size: 10px;
  font-style: normal;
}

#page-code .sms-monitor-history {
  max-height: 330px;
  margin-bottom: 12px;
  overflow: auto;
  border: 1px solid rgba(143, 167, 184, 0.16);
  border-top: 0;
}

#page-code .sms-monitor-history-row {
  display: grid;
  grid-template-columns: minmax(160px, 1.3fr) repeat(3, minmax(100px, 0.7fr));
  gap: 10px;
  align-items: center;
  min-width: 600px;
  padding: 7px 10px;
  border-top: 1px solid rgba(143, 167, 184, 0.1);
  background: rgba(7, 11, 16, 0.5);
}

#page-code .sms-monitor-history-row.is-head {
  position: sticky;
  top: 0;
  z-index: 1;
  border-top: 0;
  background: #10171e;
}

#page-code .sms-monitor-history-row span,
#page-code .sms-monitor-history-row em,
#page-code .sms-monitor-history-row b,
#page-code .sms-monitor-history-row strong {
  overflow: hidden;
  font-size: 11px;
  font-style: normal;
  text-overflow: ellipsis;
  white-space: nowrap;
}

#page-code .sms-monitor-history-row span,
#page-code .sms-monitor-history-row em {
  color: var(--muted-2);
}

#page-code .sms-monitor-history-row b,
#page-code .sms-monitor-history-row strong {
  color: var(--text);
}

#page-code .sms-monitor-history-row .is-rise {
  color: #e8a7ac;
}

#page-code .sms-monitor-history-row .is-fall {
  color: #bcd6a0;
}

@media (max-width: 760px) {
  #page-code .sms-number-monitor-card .sms-section-head {
    align-items: flex-start;
  }

  #page-code .sms-monitor-controls {
    width: 100%;
    justify-content: flex-start;
  }

  #page-code .sms-monitor-status {
    grid-template-columns: auto minmax(0, 1fr);
  }

  #page-code .sms-monitor-status span,
  #page-code .sms-monitor-status em {
    grid-column: 2;
    white-space: normal;
  }

  #page-code .sms-monitor-current-grid,
  #page-code .sms-monitor-watchlist {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  #page-code .sms-monitor-watch-row {
    grid-template-columns: minmax(0, 1fr);
  }

  #page-code .sms-monitor-watch-row > div:last-child {
    justify-content: flex-start;
  }

  #page-code .sms-monitor-price-event {
    grid-template-columns: minmax(0, 1fr);
  }

  #page-code .sms-monitor-price-event > div:not(:first-child) {
    justify-content: flex-start;
  }

  #page-code .sms-monitor-history-head {
    align-items: flex-start;
    flex-direction: column;
  }
}

#page-code .sms-number-overview,
#page-code .sms-monitor-windows {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 6px;
  margin-bottom: 10px;
}

#page-code .sms-number-overview section,
#page-code .sms-monitor-windows section {
  min-width: 0;
  padding: 7px 8px;
  border: 1px solid rgba(143, 167, 184, 0.16);
  border-left: 3px solid rgba(136, 192, 208, 0.32);
  border-radius: 6px;
  background: rgba(10, 15, 21, 0.7);
}

#page-code .sms-monitor-windows section.is-hot {
  border-left-color: rgba(163, 190, 140, 0.8);
  background: rgba(163, 190, 140, 0.08);
}

#page-code .sms-number-overview span,
#page-code .sms-monitor-windows span {
  display: block;
  color: var(--muted-2);
  font-size: 10px;
}

#page-code .sms-number-overview b,
#page-code .sms-monitor-windows b {
  display: block;
  margin: 3px 0 2px;
  color: #cdeefb;
  font-size: 15px;
  font-weight: 600;
  font-family: inherit;
}

#page-code .sms-monitor-windows section.is-hot b {
  color: #bcd6a0;
}

#page-code .sms-number-overview em,
#page-code .sms-monitor-windows em {
  display: block;
  color: var(--muted);
  font-size: 10px;
  font-style: normal;
  white-space: normal;
}

#page-code .sms-number-leaders-head,
#page-code .sms-monitor-alerts-head {
  margin-bottom: 6px;
  color: #8fb8ca;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.06em;
}

#page-code .sms-number-leaders,
#page-code .sms-monitor-alerts {
  display: grid;
  gap: 5px;
}

#page-code .sms-number-leader,
#page-code .sms-monitor-alert {
  --sms-tone: #8fa7b8;
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) minmax(0, auto);
  gap: 10px;
  align-items: center;
  padding: 7px 10px;
  border: 1px solid rgba(143, 167, 184, 0.18);
  border-left: 3px solid rgba(143, 167, 184, 0.55);
  border-radius: 6px;
  background: rgba(7, 11, 16, 0.62);
}

#page-code .sms-number-leader.is-hot,
#page-code .sms-monitor-alert.is-cheap {
  border-left-color: rgba(163, 190, 140, 0.82);
  background: rgba(163, 190, 140, 0.08);
}

#page-code .sms-monitor-alert.is-surge {
  border-left-color: rgba(191, 97, 106, 0.7);
  background: rgba(191, 97, 106, 0.1);
}

#page-code .sms-monitor-alert.is-new {
  border-left-color: rgba(136, 192, 208, 0.6);
  background: rgba(136, 192, 208, 0.08);
}

#page-code .sms-number-leader-main,
#page-code .sms-monitor-alert-main {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 6px;
  min-width: 0;
}

#page-code .sms-number-leader-main b,
#page-code .sms-monitor-alert-main b {
  color: var(--text);
  font-size: 13px;
  font-weight: 600;
}

#page-code .sms-number-leader-main span,
#page-code .sms-monitor-alert-main span {
  color: var(--muted-2);
  font-size: 11px;
}

#page-code .sms-number-leader-main em,
#page-code .sms-monitor-alert-main .sms-monitor-tags {
  color: var(--muted);
  font-size: 10px;
  font-style: normal;
}

#page-code .sms-monitor-alert.is-cheap .sms-monitor-tags {
  color: #bcd6a0;
}

#page-code .sms-monitor-alert.is-surge .sms-monitor-tags {
  color: #e8a7ac;
}

#page-code .sms-number-leader-meta,
#page-code .sms-monitor-alert-meta {
  display: flex;
  align-items: baseline;
  justify-content: flex-end;
  gap: 8px;
  white-space: nowrap;
}

#page-code .sms-number-leader-meta strong,
#page-code .sms-monitor-alert-meta strong {
  color: var(--green);
  font-size: 14px;
  font-weight: 600;
}

#page-code .sms-monitor-alert-meta strong {
  color: #bcd6a0;
}

#page-code .sms-number-leader-meta span,
#page-code .sms-monitor-alert-meta span {
  color: var(--muted-2);
  font-size: 11px;
}

#page-code .sms-number-leader-meta em,
#page-code .sms-monitor-alert-meta em {
  color: var(--muted);
  font-size: 10px;
  font-style: normal;
}

#page-code .sms-order-item {
  --sms-tone: #8fa7b8;
  --sms-tone-rgb: 143, 167, 184;
  display: grid;
  grid-template-columns: minmax(170px, 0.8fr) minmax(260px, 1.2fr) auto auto;
  gap: 10px;
  align-items: center;
  padding: 8px 10px 8px 13px;
  border: 1px solid rgba(var(--sms-tone-rgb), 0.2);
  border-left: 3px solid rgba(var(--sms-tone-rgb), 0.68);
  border-radius: 7px;
  background: rgba(7, 11, 16, 0.64);
}

#page-code .sms-order-item.is-active {
  border-color: rgba(var(--sms-tone-rgb), 0.5);
  background:
    linear-gradient(90deg, rgba(var(--sms-tone-rgb), 0.1), transparent 34%),
    rgba(7, 11, 16, 0.76);
}

#page-code .sms-order-route span,
#page-code .sms-order-route b,
#page-code .sms-order-route em,
#page-code .sms-order-number span,
#page-code .sms-order-number b,
#page-code .sms-order-number em {
  display: block;
}

#page-code .sms-order-route span {
  color: var(--sms-tone);
  font-size: 11px;
  font-weight: 700;
}

#page-code .sms-order-route b,
#page-code .sms-order-number span {
  color: var(--text);
}

#page-code .sms-order-route em,
#page-code .sms-order-number em {
  color: var(--muted);
  font-size: 10px;
  font-style: normal;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

#page-code .sms-order-number b {
  color: var(--green);
  font-size: 15px;
}

#page-code .sms-order-actions,
#page-code .sms-batch-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 5px;
}

#page-code .sms-order-actions button,
#page-code .sms-batch-actions button {
  margin: 0;
}

#page-code .sms-batch-body {
  display: grid;
  grid-template-columns: minmax(260px, 0.7fr) minmax(380px, 1.3fr);
  gap: 12px;
  align-items: center;
}

#page-code .sms-batch-body p {
  margin: 6px 0 0;
  color: var(--muted-2);
  font-size: 11px;
}

#page-code .sms-batch-body pre {
  max-height: 74px;
  margin: 0;
  padding: 8px 10px;
  overflow: auto;
  border: 1px solid rgba(104, 151, 175, 0.16);
  border-radius: 6px;
  background: #080c11;
  color: #9db1bd;
  font-size: 10px;
  line-height: 1.45;
  white-space: pre-wrap;
}

@media (max-width: 1180px) {
  #page-code .sms-market-overview,
  #page-code .sms-restock-item,
  #page-code .sms-batch-body {
    grid-template-columns: 1fr;
  }

  #page-code .sms-control-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  #page-code .sms-filter-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  #page-code .sms-order-item {
    grid-template-columns: minmax(150px, 0.8fr) minmax(230px, 1.2fr) auto;
  }

  #page-code .sms-order-actions {
    grid-column: 1 / -1;
    justify-content: flex-start;
  }

  #page-code .sms-restock-changes {
    justify-content: flex-start;
  }
}

@media (max-width: 760px) {
  #page-code .sms-market-command,
  #page-code .sms-provider-rail,
  #page-code .sms-ops-grid,
  #page-code .sms-control-grid,
  #page-code .sms-filter-grid,
  #page-code .sms-key-strip,
  #page-code .sms-inline-fields,
  #page-code .sms-settings-row,
  #page-code .sms-market-card-shell,
  #page-code .sms-provider-price-lanes,
  #page-code .sms-order-item {
    grid-template-columns: 1fr;
  }

  #page-code .sms-market-toolbar,
  #page-code .sms-market-actions,
  #page-code .sms-task-actions,
  #page-code .sms-filter-summary {
    justify-content: flex-start;
  }

  #page-code .sms-selection-bar,
  #page-code .sms-section-head {
    align-items: flex-start;
    flex-direction: column;
  }

  #page-code .sms-target-switch {
    grid-template-columns: 1fr;
    width: 100%;
  }

  #page-code .sms-market-card-main {
    border-right: 0;
    border-bottom: 1px solid rgba(104, 151, 175, 0.16);
  }

  #page-code .sms-market-provider-panel,
  #page-code .sms-provider-mini-main {
    grid-template-columns: 1fr;
  }

  #page-code .sms-row-actions,
  #page-code .sms-order-actions {
    align-items: stretch;
    justify-content: flex-start;
  }
}

/* Final provider-tone override must follow the neutral component defaults. */
#page-code #smsProviderCards [data-sms-provider-tone="hero-sms"],
#page-code .sms-market-card [data-sms-provider-tone="hero-sms"],
#page-code .sms-key-strip [data-sms-provider-tone="hero-sms"],
#page-code .sms-orders-list [data-sms-provider-tone="hero-sms"] {
  --sms-tone: #67c7dc;
  --sms-tone-rgb: 103, 199, 220;
}

#page-code #smsProviderCards [data-sms-provider-tone="5sim"],
#page-code .sms-market-card [data-sms-provider-tone="5sim"],
#page-code .sms-key-strip [data-sms-provider-tone="5sim"],
#page-code .sms-orders-list [data-sms-provider-tone="5sim"] {
  --sms-tone: #e4a45c;
  --sms-tone-rgb: 228, 164, 92;
}

#page-code #smsProviderCards [data-sms-provider-tone="smsbower"],
#page-code .sms-market-card [data-sms-provider-tone="smsbower"],
#page-code .sms-key-strip [data-sms-provider-tone="smsbower"],
#page-code .sms-orders-list [data-sms-provider-tone="smsbower"] {
  --sms-tone: #9bc66f;
  --sms-tone-rgb: 155, 198, 111;
}
.nation-probe-card { border-color: color-mix(in srgb, var(--border) 78%, #3b82f6 22%); }
.nation-probe-fixed-axis { display:flex; flex-wrap:wrap; gap:10px; align-items:center; padding:10px 12px; border:1px solid var(--border); border-radius:10px; background:rgba(59,130,246,.06); }
.nation-probe-summary { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:10px; margin-top:12px; }
.nation-probe-summary > div { padding:10px 12px; border:1px solid var(--border); border-radius:10px; background:var(--surface, rgba(255,255,255,.02)); }
.nation-probe-summary span { display:block; color:var(--muted); font-size:12px; }
.nation-probe-summary strong { display:block; margin-top:4px; }
.nation-probe-health { display:flex; flex-wrap:wrap; gap:8px; margin-top:12px; }
@media (max-width:900px) { .nation-probe-summary { grid-template-columns:repeat(2,minmax(0,1fr)); } }

/* Final management workspace contract: customer, processes and after-sales. */
.management-page {
  min-width: 0;
  max-width: 100%;
  overflow-x: clip;
  font-family: var(--ui-font);
  letter-spacing:0;
}

#page-customers,
#page-processes,
#page-after-sales {
  min-width: 0;
  max-width: 100%;
  overflow-x: clip;
  font-family: var(--ui-font);
  letter-spacing:0;
}

.management-page *,
.management-page *::before,
.management-page *::after,
#page-customers *,
#page-customers *::before,
#page-customers *::after,
#page-processes *,
#page-processes *::before,
#page-processes *::after,
#page-after-sales *,
#page-after-sales *::before,
#page-after-sales *::after {
  box-sizing: border-box;
  min-width: 0;
  font-family: var(--ui-font);
  letter-spacing:0;
}

.management-page input,
.management-page select,
.management-page textarea,
.management-page button,
.management-page .mono,
#page-customers input,
#page-customers select,
#page-customers textarea,
#page-customers button,
#page-customers .mono,
#page-processes input,
#page-processes select,
#page-processes textarea,
#page-processes button,
#page-processes .mono,
#page-after-sales input,
#page-after-sales select,
#page-after-sales textarea,
#page-after-sales button,
#page-after-sales .mono {
  font-family: var(--ui-font);
  letter-spacing:0;
}

html,
body {
  max-width: 100%;
  overflow-x: hidden;
  scrollbar-width: none;
  -ms-overflow-style: none;
}

html::-webkit-scrollbar,
body::-webkit-scrollbar,
.management-page *::-webkit-scrollbar {
  display: none;
  width: 0;
  height: 0;
}

.management-scroll {
  max-width: 100%;
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-width: none;
  -ms-overflow-style: none;
}

.management-scroll::-webkit-scrollbar {
  display: none;
  width: 0;
  height: 0;
}

.account-pool-scroll {
  scrollbar-width: none;
  -ms-overflow-style: none;
}

.account-pool-scroll::-webkit-scrollbar {
  display: none;
  width: 0;
  height: 0;
}

.management-page .scroll,
.management-page .table-wrap,
.management-page .customer-card-list,
#page-customers .scroll,
#page-customers .table-wrap,
#page-customers .customer-card-list,
#page-processes .scroll,
#page-processes .table-wrap,
#page-after-sales .scroll,
#page-after-sales .table-wrap {
  max-width: 100%;
  overflow-x: hidden;
  overflow-y: auto;
  scrollbar-width: none;
  -ms-overflow-style: none;
}

.management-page .scroll::-webkit-scrollbar,
.management-page .table-wrap::-webkit-scrollbar,
.management-page .customer-card-list::-webkit-scrollbar,
#page-customers .scroll::-webkit-scrollbar,
#page-customers .table-wrap::-webkit-scrollbar,
#page-customers .customer-card-list::-webkit-scrollbar,
#page-processes .scroll::-webkit-scrollbar,
#page-processes .table-wrap::-webkit-scrollbar,
#page-after-sales .scroll::-webkit-scrollbar,
#page-after-sales .table-wrap::-webkit-scrollbar {
  display: none;
  width: 0;
  height: 0;
}

.management-table {
  width: 100%;
  min-width: 0;
  max-width: 100%;
  table-layout: fixed;
}

#page-customers table,
#page-after-sales table,
#page-customers .customer-table,
#page-after-sales .after-sales-orders-table,
#page-after-sales .after-sales-account-table table,
#page-after-sales .management-table {
  width: 100%;
  min-width: 0;
  max-width: 100%;
  table-layout: fixed;
}

.management-table th,
.management-table td,
#page-customers th,
#page-customers td,
#page-after-sales th,
#page-after-sales td {
  min-width: 0;
  white-space: normal;
  overflow-wrap: anywhere;
  word-break: break-word;
  vertical-align: middle;
}

.operation-button {
  display: inline-flex;
  width: 63px;
  height: 40px;
  min-height: 40px;
  padding: 0;
  align-items: center;
  justify-content: center;
  border: 1px solid #5e81ac;
  border-radius: 6px;
  background: #5e81ac;
  color: #fff;
  font-family: var(--ui-font);
  font-size: 16px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0;
  white-space: nowrap;
}

.management-operation-button {
  display: inline-flex;
  min-width: 63px;
  height: 40px;
  min-height: 40px;
  padding: 0 12px;
  align-items: center;
  justify-content: center;
  border: 1px solid #5e81ac;
  border-radius: 6px;
  background: #5e81ac;
  color: #fff;
  font-family: var(--ui-font);
  font-size: 16px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0;
  white-space: nowrap;
}

.operation-button:hover,
.management-operation-button:hover {
  border-color: #7296c2;
  background: #7296c2;
  color: #fff;
}

.operation-button:focus-visible,
.management-operation-button:focus-visible {
  outline: 2px solid rgba(136, 192, 208, 0.85);
  outline-offset: 2px;
}

.operation-button:disabled,
.management-operation-button:disabled {
  opacity: 0.55;
  cursor: not-allowed;
}

#page-accounts button.operation-button,
#page-customers button.operation-button,
#page-after-sales button.operation-button {
  width: 63px;
  height: 40px;
  min-height: 40px;
  padding: 0;
  border-color: #5e81ac;
  border-radius: 6px;
  background: #5e81ac;
  color: #fff;
  font-family: var(--ui-font);
  font-size: 16px;
  font-weight: 700;
  line-height: 1;
}

#page-accounts button.operation-button:hover,
#page-customers button.operation-button:hover,
#page-after-sales button.operation-button:hover {
  border-color: #7296c2;
  background: #7296c2;
  color: #fff;
}

#page-customers .customer-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.3fr) minmax(280px, 0.7fr);
  gap: 14px;
  align-items: start;
  min-width: 0;
}

#page-customers .customer-side-column {
  display: grid;
  gap: 14px;
  align-content: start;
  min-width: 0;
}

#page-customers .customer-search-field {
  margin-top: 10px;
}

#page-customers .customer-context-actions {
  margin-top: 14px;
  padding-top: 14px;
  border-top: 1px solid var(--line-soft);
}

#page-customers .customer-context-actions.is-pending .quick-links {
  opacity: 0.55;
  pointer-events: none;
}

#page-customers .customer-create-form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin-top: 10px;
}

#page-customers .customer-create-name,
#page-customers .customer-create-footer {
  grid-column: 1 / -1;
}

#page-customers .customer-policy-note {
  margin-top: 16px;
  padding-top: 14px;
  border-top: 1px solid var(--line-soft);
  color: var(--muted-2);
}

#page-customers .customer-policy-note p {
  margin: 8px 0 0;
}

#page-customers .customer-workspace-row {
  cursor: pointer;
  transition: background-color 140ms ease, box-shadow 140ms ease;
}

#page-customers .customer-workspace-row:hover,
#page-customers .customer-workspace-row:focus-visible {
  background: rgba(94, 129, 172, 0.1);
  box-shadow: 0 0 0 1px rgba(94, 129, 172, 0.45) inset;
  outline: none;
}

#page-customers .customer-workspace-row.is-active {
  background: rgba(163, 190, 140, 0.08);
}

#page-customers .customer-workspace-row.is-pending {
  cursor: progress;
  opacity: 0.72;
}

.customer-workspace-table th:last-child,
.customer-workspace-table td:last-child {
  width: 180px;
}

#page-customers .customer-row-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: center;
  gap: 6px;
  width: 100%;
  min-width: 0;
  max-width: 100%;
}

#page-customers .customer-row-actions button {
  width: 100%;
  max-width: 100%;
  margin: 0;
}

#page-customers .customer-row-actions select,
#page-customers .customer-row-actions [data-customer-merge] {
  grid-column: 1 / -1;
  width: 100%;
  max-width: 100%;
}

#page-customers .customer-row-actions select {
  min-height: 32px;
  margin: 0;
  border-radius: 4px;
  background: var(--panel-deep);
  color: var(--text);
  font-size: 12px;
}

#page-customers .customer-workbench-shell,
#page-customers .customer-billing-shell {
  display: grid;
  grid-template-columns: minmax(220px, 0.75fr) minmax(0, 1.5fr) minmax(220px, 0.75fr);
  gap: 14px;
  align-items: start;
  min-width: 0;
}

#page-customers .customer-grid > *,
#page-customers .customer-workbench-shell > *,
#page-customers .customer-billing-shell > *,
#page-processes > *,
#page-after-sales .after-sales-page > *,
#page-after-sales .after-sales-source-grid > *,
#page-after-sales .after-sales-bottom-grid > * {
  min-width: 0;
  max-width: 100%;
}

#page-customers .customer-workbench-metrics,
#page-customers .customer-summary-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

#page-after-sales .after-sales-source-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(280px, 0.65fr);
  gap: 14px;
  align-items: start;
  min-width: 0;
}

#page-after-sales .after-sales-bottom-grid,
#page-after-sales .after-sales-secondary-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  align-items: start;
}

#page-after-sales .after-sales-filter-grid,
#page-after-sales .after-sales-command-bar {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

#page-after-sales .after-sales-search-field {
  grid-column: 1 / -1;
}

#page-after-sales #afterSalesMetrics,
#page-after-sales .after-sales-metrics {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

@media (max-width: 1100px) {
  #page-customers .customer-grid,
  #page-customers .customer-workbench-shell,
  #page-customers .customer-billing-shell,
  #page-after-sales .after-sales-source-grid,
  #page-after-sales .after-sales-bottom-grid,
  #page-after-sales .after-sales-secondary-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  #page-customers .customer-workbench-metrics,
  #page-customers .customer-summary-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 1360px) {
  #page-after-sales .after-sales-source-grid {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (max-width: 760px) {
  #page-customers .customer-create-form-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  #page-customers .customer-create-name,
  #page-customers .customer-create-footer {
    grid-column: auto;
  }

  #page-customers .customer-workbench-metrics,
  #page-customers .customer-summary-grid,
  #page-after-sales .after-sales-filter-grid,
  #page-after-sales .after-sales-command-bar,
  #page-after-sales #afterSalesMetrics,
  #page-after-sales .after-sales-metrics,
  #page-after-sales .after-sales-case-form,
  #page-after-sales .after-sales-detail-stats {
    grid-template-columns: minmax(0, 1fr);
  }

  #page-after-sales .after-sales-search-field {
    grid-column: auto;
  }

  .account-pool-transfer-control,
  #page-customers .customer-row-actions {
    width: 100%;
    min-width: 0;
  }

  .management-table,
  #page-customers table,
  #page-after-sales table {
    display: block;
  }

  .management-table thead,
  #page-customers table thead,
  #page-after-sales table thead {
    display: none;
  }

  .management-table tbody,
  #page-customers table tbody,
  #page-after-sales table tbody {
    display: grid;
    gap: 10px;
    width: 100%;
  }

  .management-table tr,
  #page-customers table tr,
  #page-after-sales table tr {
    display: grid;
    width: 100%;
    overflow: hidden;
    border: 1px solid var(--line);
    border-radius: 6px;
    background: var(--panel-deep);
  }

  .management-table td,
  #page-customers table td,
  #page-after-sales table td {
    display: grid;
    grid-template-columns: minmax(88px, 0.4fr) minmax(0, 1fr);
    gap: 10px;
    width: 100%;
    border-bottom: 1px solid var(--line-soft);
  }

  .management-table td:last-child,
  #page-customers table td:last-child,
  #page-after-sales table td:last-child {
    border-bottom: 0;
  }

  .management-table td[data-label]::before,
  #page-customers table td[data-label]::before,
  #page-after-sales table td[data-label]::before {
    content: attr(data-label);
    color: var(--muted);
    font-weight: 700;
  }

  #page-customers .customer-workbench-hero,
  #page-customers .customer-page-title,
  #page-after-sales .after-sales-hero,
  #page-after-sales .after-sales-section-head,
  #page-after-sales .after-sales-detail-head,
  #page-after-sales .after-sales-detail-customer {
    align-items: stretch;
    flex-direction: column;
  }
}

/* ===== 工作流积木调度台 ===== */
.dispatch-group {
  border: 1px solid var(--line);
  border-radius: 10px;
  padding: 12px;
  margin-bottom: 8px;
  background: var(--panel-deep);
}
.dispatch-group.is-parallel {
  border-color: #3a7bd5;
  background: rgba(58, 123, 213, 0.05);
}
.dispatch-group-head {
  margin-bottom: 8px;
}
.dispatch-group-label {
  font-weight: 600;
  font-size: 0.92em;
}
.dispatch-group-blocks {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.dispatch-group-arrow {
  text-align: center;
  margin: 6px 0 2px;
}
.dispatch-block-card {
  border: 1px solid var(--line-soft);
  border-radius: 8px;
  padding: 10px 12px;
  background: var(--panel);
  min-width: 210px;
  max-width: 320px;
  flex: 1;
}
.dispatch-block-head {
  display: flex;
  align-items: center;
  gap: 6px;
  flex-wrap: wrap;
}
.dispatch-block-title {
  font-weight: 600;
  font-size: 0.9em;
}
.dispatch-block-summary {
  margin-top: 4px;
}
.dispatch-modal-backdrop {
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.55);
  z-index: 9000;
  display: flex;
  align-items: center;
  justify-content: center;
}
.dispatch-modal-backdrop[hidden] {
  display: none;
}
.dispatch-modal-card {
  background: var(--panel);
  border: 1px solid var(--line);
  border-radius: 12px;
  padding: 20px 24px;
  width: 90%;
  max-width: 680px;
  max-height: 80vh;
  overflow: auto;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.4);
}

/* Workspace confirmations live at the document root; keep them viewport-bound. */
.modal-backdrop {
  position: fixed;
  inset: 0;
  z-index: 9200;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px;
  background: rgba(0, 0, 0, 0.58);
}
.modal-backdrop[hidden] {
  display: none;
}
.modal-card {
  width: min(100%, 560px);
  max-height: min(80vh, 620px);
  overflow: auto;
  padding: 22px 24px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel);
  box-shadow: 0 12px 36px rgba(0, 0, 0, 0.45);
}
.workspace-purge-dialog-card {
  border-color: rgba(231, 111, 81, 0.65);
}
.workspace-purge-dialog-actions {
  justify-content: flex-end;
  margin-top: 18px;
}
.workspace-merge-dialog-card {
  width: min(100%, 720px);
}
@media (max-width: 640px) {
  .modal-backdrop {
    padding: 12px;
  }
  .modal-card {
    padding: 18px;
  }
}

.dispatch-inline-form .row3 {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
}
.dispatch-inline-form label {
  display: block;
  font-size: 0.82em;
  color: var(--fg-muted, #888);
  margin-bottom: 2px;
}

/* 流程预设保留在编辑器标题区；执行工作区由各组单独设置。 */
.dispatch-workflow-settings {
  display: flex;
  align-items: end;
  justify-content: flex-end;
  gap: 8px;
  flex-wrap: wrap;
}
.dispatch-workflow-settings label {
  display: grid;
  gap: 3px;
  min-width: 180px;
}
.dispatch-workflow-settings label > span {
  color: var(--muted);
  font-size: 0.78em;
}
.dispatch-workflow-settings select {
  width: 100%;
}

/* 类型调色板：按业务域组织，点一个类型往选中的组加积木。 */
.dispatch-palette {
  display: block;
  padding: 10px 12px;
  margin-bottom: 4px;
  border: 1px dashed var(--line);
  border-radius: 10px;
  background: var(--panel-deep);
}
.dispatch-palette-heading {
  display: flex;
  align-items: baseline;
  gap: 8px;
  margin-bottom: 8px;
}
.dispatch-palette-groups {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}
.dispatch-palette-group {
  min-width: 0;
  border-left: 2px solid var(--line);
  padding-left: 8px;
}
.dispatch-palette-group-label {
  display: block;
  color: var(--muted);
  font-size: 0.78em;
  margin-bottom: 5px;
}
.dispatch-palette-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
}
.dispatch-palette button {
  max-width: 100%;
  white-space: nowrap;
}

/* 组头：标题左、操作右，稳定不错位 */
.dispatch-group-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin-bottom: 8px;
}
.dispatch-group-actions {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  justify-content: flex-end;
}
.dispatch-group-workspace {
  display: flex;
  align-items: center;
  gap: 6px;
  color: var(--muted);
  font-size: 0.78em;
}
.dispatch-group-workspace span {
  white-space: nowrap;
}
.dispatch-group-workspace select {
  width: 190px;
  min-width: 0;
}
.dispatch-parallel-toggle {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  white-space: nowrap;
}
.dispatch-parallel-toggle input {
  margin: 0;
}

/* 选中的组：可见高亮，提示"新积木会加到这" */
.dispatch-group {
  cursor: pointer;
}
.dispatch-group.is-selected {
  border-color: #6c9; /* fallback accent */
  box-shadow: inset 0 0 0 1px #6c9;
}
.dispatch-group.is-parallel.is-selected {
  box-shadow: inset 0 0 0 1px #3a7bd5;
}
.dispatch-group-empty {
  padding: 8px 4px;
}

/* 积木上的实时存量数字 */
.dispatch-block-live {
  margin-top: 4px;
  font-size: 0.78em;
  color: #7fb2ff;
}

/* 积木编辑弹层：注册积木额外显示产品和执行版本。 */
.dispatch-editor-head {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
  gap: 10px;
  padding-bottom: 12px;
  margin-bottom: 12px;
  border-bottom: 1px solid var(--line-soft);
}
.dispatch-editor-head label {
  display: block;
  font-size: 0.82em;
  color: var(--muted);
  margin-bottom: 3px;
}
.dispatch-editor-head input,
.dispatch-editor-head select {
  width: 100%;
}
/* 克隆进弹层的原生表单：撑开间距，去掉页面里的外边距 */
.dispatch-cloned-form {
  margin-top: 0 !important;
}
.dispatch-cloned-form label {
  display: block;
  font-size: 0.82em;
  color: var(--muted);
  margin-bottom: 3px;
}
.dispatch-cloned-form input,
.dispatch-cloned-form select {
  width: 100%;
}
.dispatch-cloned-form .register-fields-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 10px;
}
.dispatch-registration-runtime-row {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 10px;
}
.dispatch-inline-form input,
.dispatch-inline-form select {
  width: 100%;
}

@media (max-width: 900px) {
  .dispatch-palette-groups {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 620px) {
  .dispatch-workflow-settings,
  .dispatch-workflow-settings label,
  .dispatch-workflow-settings button {
    width: 100%;
  }
  .dispatch-palette-groups {
    grid-template-columns: 1fr;
  }
  .dispatch-palette-heading {
    align-items: flex-start;
    flex-direction: column;
  }
  .dispatch-inline-form .row2,
  .dispatch-inline-form .row3,
  .dispatch-registration-runtime-row {
    grid-template-columns: 1fr;
  }
  .dispatch-group-head {
    align-items: flex-start;
    flex-direction: column;
  }
  .dispatch-group-actions,
  .dispatch-group-workspace,
  .dispatch-group-workspace select {
    width: 100%;
  }
}

/* Readable low-price SMS monitor */
#page-code .sms-monitor-toolbar {
  display: grid;
  grid-template-columns: minmax(230px, auto) minmax(0, 1fr);
  gap: 20px;
  align-items: end;
  padding-bottom: 14px;
  border-bottom: 1px solid rgba(143, 167, 184, 0.18);
}

#page-code .sms-monitor-title h3 {
  margin-top: 3px;
  font-size: 18px;
  letter-spacing: 0;
}

#page-code .sms-monitor-title > span {
  color: #88c0d0;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0;
}

#page-code .sms-monitor-title > em {
  display: block;
  margin-top: 5px;
  color: var(--muted-2);
  font-size: 12px;
  font-style: normal;
  line-height: 1.45;
}

#page-code .sms-monitor-controls {
  display: grid;
  grid-template-columns: 140px minmax(340px, auto) 130px auto;
  gap: 10px;
  align-items: end;
  justify-content: end;
}

#page-code .sms-monitor-control {
  display: grid;
  gap: 5px;
  min-width: 0;
  color: var(--muted-2);
  font-size: 12px;
}

#page-code .sms-monitor-controls > label.sms-monitor-control {
  display: grid;
  align-items: stretch;
  gap: 5px;
  font-size: 12px;
}

#page-code .sms-monitor-control > span:first-child,
#page-code .sms-monitor-price-range > span {
  color: var(--muted-2);
  font-size: 11px;
  font-weight: 600;
  line-height: 1;
}

#page-code .sms-monitor-controls select,
#page-code .sms-monitor-controls input {
  height: 36px;
  border: 1px solid rgba(143, 167, 184, 0.32);
  border-radius: 5px;
  background: #090e14;
  color: var(--text);
  font-size: 13px;
}

#page-code .sms-monitor-controls select {
  width: 140px;
  padding: 0 10px;
}

#page-code .sms-monitor-price-range > div {
  display: grid;
  grid-template-columns: auto 90px auto 90px;
  gap: 7px;
  align-items: center;
}

#page-code .sms-monitor-price-range label {
  color: var(--muted);
  font-size: 11px;
}

#page-code .sms-monitor-price-range input {
  width: 90px;
  padding: 0 9px;
}

#page-code .sms-monitor-price-range i,
#page-code .sms-monitor-unit-input i {
  color: var(--muted);
  font-size: 11px;
  font-style: normal;
}

#page-code .sms-monitor-unit-input {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  min-width: 0;
}

#page-code .sms-monitor-unit-input b,
#page-code .sms-monitor-unit-input i {
  height: 36px;
  padding: 9px 7px;
  border: 1px solid rgba(143, 167, 184, 0.32);
  background: rgba(9, 14, 20, 0.8);
  color: var(--muted-2);
  font-size: 12px;
  font-weight: 600;
}

#page-code .sms-monitor-unit-input b {
  border-right: 0;
  border-radius: 5px 0 0 5px;
}

#page-code .sms-monitor-unit-input i {
  border-left: 0;
  border-radius: 0 5px 5px 0;
}

#page-code .sms-monitor-unit-input input {
  width: 92px;
  min-width: 0;
  padding: 0 7px;
  border-radius: 5px 0 0 5px;
  text-align: center;
}

#page-code .sms-monitor-controls > button {
  min-width: 92px;
  height: 36px;
  padding: 0 13px;
  white-space: nowrap;
}

#page-code .sms-number-monitor-body {
  padding-top: 12px;
}

#page-code .sms-monitor-status {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 12px;
  padding: 9px 11px;
  border: 1px solid rgba(143, 167, 184, 0.2);
  border-radius: 5px;
  background: rgba(7, 11, 16, 0.72);
}

#page-code .sms-monitor-status > div,
#page-code .sms-monitor-status-meta {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}

#page-code .sms-monitor-status b {
  color: var(--text);
  font-size: 13px;
}

#page-code .sms-monitor-status span {
  color: var(--muted-2);
  font-size: 11px;
}

#page-code .sms-monitor-status-meta span {
  padding-left: 8px;
  border-left: 1px solid rgba(143, 167, 184, 0.2);
  white-space: nowrap;
}

#page-code .sms-monitor-current-grid {
  gap: 0;
  margin-bottom: 16px;
  border-top: 1px solid rgba(136, 192, 208, 0.42);
  border-bottom: 1px solid rgba(136, 192, 208, 0.28);
}

#page-code .sms-monitor-current-grid section {
  min-height: 94px;
  padding: 13px 15px;
  border-top: 0;
  border-right: 1px solid rgba(143, 167, 184, 0.14);
  background: rgba(10, 15, 21, 0.58);
}

#page-code .sms-monitor-current-grid section:last-child {
  border-right: 0;
}

#page-code .sms-monitor-current-grid section.is-alert b {
  color: #e8a7ac;
}

#page-code .sms-monitor-current-grid span {
  font-size: 12px;
}

#page-code .sms-monitor-current-grid b {
  margin: 6px 0 4px;
  font-size: 22px;
}

#page-code .sms-monitor-current-grid b i {
  margin-left: 5px;
  color: var(--muted-2);
  font-size: 11px;
  font-style: normal;
  font-weight: 500;
}

#page-code .sms-monitor-current-grid em {
  font-size: 11px;
}

#page-code .sms-monitor-primary-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.65fr) minmax(360px, 0.75fr);
  gap: 20px;
  align-items: start;
}

#page-code .sms-monitor-section {
  min-width: 0;
  padding-top: 14px;
  border-top: 1px solid rgba(143, 167, 184, 0.22);
}

#page-code .sms-monitor-section-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 10px;
}

#page-code .sms-monitor-section-head span {
  display: block;
  color: #88c0d0;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0;
}

#page-code .sms-monitor-section-head h4 {
  margin: 3px 0 0;
  color: var(--text);
  font-size: 16px;
  letter-spacing: 0;
}

#page-code .sms-monitor-section-head p {
  margin: 4px 0 0;
  color: var(--muted-2);
  font-size: 11px;
  line-height: 1.4;
}

#page-code .sms-monitor-section-head > strong {
  color: var(--muted-2);
  font-size: 12px;
  font-weight: 600;
}

#page-code .sms-monitor-offer-table {
  width: 100%;
  overflow-x: auto;
  border-top: 1px solid rgba(143, 167, 184, 0.18);
  border-bottom: 1px solid rgba(143, 167, 184, 0.18);
}

#page-code .sms-monitor-offer-head,
#page-code .sms-monitor-offer-row {
  display: grid;
  grid-template-columns: minmax(120px, 0.85fr) minmax(145px, 1fr) minmax(145px, 0.95fr) minmax(80px, 0.55fr) minmax(165px, 1fr) 92px;
  gap: 10px;
  align-items: center;
  min-width: 780px;
}

#page-code .sms-monitor-offer-head {
  min-height: 38px;
  padding: 0 11px;
  background: #10171e;
  color: var(--muted-2);
  font-size: 11px;
  font-weight: 600;
}

#page-code .sms-monitor-offer-row {
  min-height: 64px;
  padding: 8px 11px;
  border-top: 1px solid rgba(143, 167, 184, 0.12);
  border-left: 3px solid var(--sms-tone, #8fa7b8);
  background: rgba(7, 11, 16, 0.58);
}

#page-code .sms-monitor-offer-row.is-selected {
  background: rgba(var(--sms-tone-rgb), 0.1);
}

#page-code .sms-monitor-offer-row > div {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 5px;
  min-width: 0;
}

#page-code .sms-monitor-offer-row b,
#page-code .sms-monitor-offer-row strong {
  color: var(--text);
  font-size: 13px;
  font-weight: 650;
}

#page-code .sms-monitor-offer-row strong {
  color: #bcd6a0;
  font-size: 15px;
}

#page-code .sms-monitor-offer-row span,
#page-code .sms-monitor-offer-row time {
  color: var(--muted-2);
  font-size: 11px;
  font-style: normal;
}

#page-code .sms-monitor-best-badge {
  padding: 2px 5px;
  border: 1px solid rgba(163, 190, 140, 0.38);
  border-radius: 4px;
  background: rgba(163, 190, 140, 0.1);
  color: #bcd6a0;
  font-size: 10px;
  font-style: normal;
  white-space: nowrap;
}

#page-code .sms-monitor-alert-list {
  display: grid;
  gap: 8px;
  max-height: 500px;
  overflow-y: auto;
  padding-right: 3px;
}

#page-code .sms-monitor-alert-event {
  padding: 11px 12px;
  border: 1px solid rgba(212, 119, 127, 0.3);
  border-left: 3px solid #d4777f;
  border-radius: 6px;
  background: rgba(212, 119, 127, 0.075);
}

#page-code .sms-monitor-alert-event header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
}

#page-code .sms-monitor-alert-event header div {
  min-width: 0;
}

#page-code .sms-monitor-alert-event header b,
#page-code .sms-monitor-alert-event header span {
  display: block;
}

#page-code .sms-monitor-alert-event header b {
  color: var(--text);
  font-size: 14px;
}

#page-code .sms-monitor-alert-event header span {
  margin-top: 2px;
  color: var(--muted-2);
  font-size: 11px;
}

#page-code .sms-monitor-alert-event header > em {
  padding: 3px 6px;
  border: 1px solid rgba(212, 119, 127, 0.35);
  border-radius: 4px;
  color: #e8a7ac;
  font-size: 10px;
  font-style: normal;
  white-space: nowrap;
}

#page-code .sms-monitor-alert-event:not(.is-outside) header > em {
  border-color: rgba(235, 203, 139, 0.3);
  color: #ebcb8b;
}

#page-code .sms-monitor-alert-price {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) auto;
  gap: 8px;
  align-items: end;
  margin-top: 11px;
  padding: 9px 0;
  border-top: 1px solid rgba(212, 119, 127, 0.16);
  border-bottom: 1px solid rgba(212, 119, 127, 0.16);
}

#page-code .sms-monitor-alert-price span,
#page-code .sms-monitor-alert-price small,
#page-code .sms-monitor-alert-price b,
#page-code .sms-monitor-alert-price strong {
  display: block;
}

#page-code .sms-monitor-alert-price small {
  margin-bottom: 2px;
  color: var(--muted);
  font-size: 10px;
}

#page-code .sms-monitor-alert-price b,
#page-code .sms-monitor-alert-price strong {
  font-size: 15px;
}

#page-code .sms-monitor-alert-price strong,
#page-code .sms-monitor-alert-price > em {
  color: #f0aab0;
}

#page-code .sms-monitor-alert-price > i {
  color: var(--muted);
  font-style: normal;
}

#page-code .sms-monitor-alert-price > em {
  font-size: 12px;
  font-style: normal;
  font-weight: 700;
  white-space: nowrap;
}

#page-code .sms-monitor-alert-facts {
  display: grid;
  gap: 6px;
  margin-top: 9px;
}

#page-code .sms-monitor-alert-facts span {
  color: var(--muted-2);
  font-size: 11px;
  line-height: 1.45;
}

#page-code .sms-monitor-alert-facts small {
  display: inline-block;
  min-width: 64px;
  color: var(--muted);
  font-size: 10px;
}

#page-code .sms-monitor-alert-facts b {
  color: var(--text);
  font-size: 12px;
}

#page-code .sms-monitor-alert-story {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  gap: 10px;
  align-items: center;
  margin-top: 11px;
  padding: 10px 0;
  border-top: 1px solid rgba(212, 119, 127, 0.16);
  border-bottom: 1px solid rgba(212, 119, 127, 0.16);
}

#page-code .sms-monitor-alert-story > div {
  display: grid;
  gap: 3px;
}

#page-code .sms-monitor-alert-story span {
  color: var(--muted-2);
  font-size: 11px;
  font-weight: 700;
}

#page-code .sms-monitor-alert-story time {
  color: var(--muted);
  font-size: 10px;
}

#page-code .sms-monitor-alert-story b,
#page-code .sms-monitor-alert-story strong {
  color: var(--text);
  font-size: 13px;
}

#page-code .sms-monitor-alert-story strong {
  color: #f0aab0;
}

#page-code .sms-monitor-alert-story em {
  color: var(--muted-2);
  font-size: 11px;
  font-style: normal;
}

#page-code .sms-monitor-alert-story > i {
  color: var(--muted);
  font-style: normal;
}

#page-code .sms-monitor-alert-result {
  margin-top: 9px;
  color: #f0aab0;
  font-size: 13px;
  font-weight: 700;
}

#page-code .sms-monitor-history-section {
  margin-top: 20px;
}

#page-code .sms-monitor-history-head {
  margin-bottom: 0;
  padding: 10px 11px;
  border-radius: 5px 5px 0 0;
}

#page-code .sms-monitor-history-head b {
  font-size: 13px;
}

#page-code .sms-monitor-history-head span,
#page-code .sms-monitor-history-head em {
  font-size: 11px;
}

#page-code .sms-monitor-history {
  max-height: 360px;
  margin-bottom: 0;
}

#page-code .sms-monitor-history-row {
  grid-template-columns: minmax(180px, 1.2fr) minmax(160px, 0.9fr) minmax(140px, 0.7fr);
  min-width: 560px;
  min-height: 42px;
  font-size: 12px;
}

#page-code .sms-monitor-history-row span,
#page-code .sms-monitor-history-row em,
#page-code .sms-monitor-history-row b,
#page-code .sms-monitor-history-row strong {
  font-size: 12px;
}

#page-code .sms-monitor-empty {
  display: grid;
  gap: 4px;
  min-height: 88px;
  place-content: center;
  padding: 16px;
  border: 1px dashed rgba(143, 167, 184, 0.24);
  color: var(--muted-2);
  text-align: center;
}

#page-code .sms-monitor-empty b {
  color: var(--text);
  font-size: 13px;
}

#page-code .sms-monitor-empty span {
  font-size: 11px;
}

#page-code .sms-monitor-empty.is-error b {
  color: #e8a7ac;
}

#page-code .sms-monitor-advanced {
  margin-top: 18px;
  border-top: 1px solid rgba(143, 167, 184, 0.22);
  border-bottom: 1px solid rgba(143, 167, 184, 0.18);
}

#page-code .sms-monitor-advanced summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-height: 48px;
  padding: 0 4px;
  cursor: pointer;
  list-style: none;
}

#page-code .sms-monitor-advanced summary::-webkit-details-marker {
  display: none;
}

#page-code .sms-monitor-advanced summary span {
  display: flex;
  align-items: baseline;
  gap: 8px;
}

#page-code .sms-monitor-advanced summary b {
  color: var(--text);
  font-size: 13px;
}

#page-code .sms-monitor-advanced summary em,
#page-code .sms-monitor-advanced summary strong {
  color: var(--muted-2);
  font-size: 11px;
  font-style: normal;
  font-weight: 500;
}

#page-code .sms-monitor-advanced summary::after {
  content: "+";
  color: var(--muted-2);
  font-size: 18px;
}

#page-code .sms-monitor-advanced[open] summary::after {
  content: "−";
}

#page-code .sms-monitor-advanced-body {
  padding: 12px 0 16px;
}

#page-code .sms-monitor-subhead {
  margin: 12px 0 7px;
  color: #8fb8ca;
  font-size: 11px;
  font-weight: 700;
}

@media (max-width: 1180px) {
  #page-code .sms-monitor-toolbar {
    grid-template-columns: minmax(0, 1fr);
  }

  #page-code .sms-monitor-controls {
    justify-content: start;
  }

  #page-code .sms-monitor-primary-grid {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (max-width: 760px) {
  #page-code .sms-monitor-toolbar {
    gap: 14px;
  }

  #page-code .sms-monitor-controls {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    width: 100%;
  }

  #page-code .sms-monitor-price-range {
    grid-column: 1 / -1;
  }

  #page-code .sms-monitor-price-range > div {
    grid-template-columns: auto minmax(0, 1fr) auto minmax(0, 1fr);
  }

  #page-code .sms-monitor-price-range input,
  #page-code .sms-monitor-controls select {
    width: 100%;
  }

  #page-code .sms-monitor-controls > button {
    width: 100%;
  }

  #page-code .sms-monitor-status,
  #page-code .sms-monitor-status > div,
  #page-code .sms-monitor-status-meta {
    align-items: flex-start;
    flex-wrap: wrap;
  }

  #page-code .sms-monitor-status {
    flex-direction: column;
  }

  #page-code .sms-monitor-status-meta span {
    padding-left: 0;
    border-left: 0;
  }

  #page-code .sms-monitor-current-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  #page-code .sms-monitor-current-grid section:nth-child(2) {
    border-right: 0;
  }

  #page-code .sms-monitor-current-grid section:nth-child(n + 3) {
    border-top: 1px solid rgba(143, 167, 184, 0.14);
  }

  #page-code .sms-monitor-offer-table {
    overflow: visible;
    border: 0;
  }

  #page-code .sms-monitor-offer-head {
    display: none;
  }

  #page-code .sms-monitor-offer-row {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 11px 14px;
    min-width: 0;
    margin-bottom: 8px;
    padding: 12px;
    border: 1px solid rgba(143, 167, 184, 0.18);
    border-left: 3px solid var(--sms-tone, #8fa7b8);
    border-radius: 5px;
  }

  #page-code .sms-monitor-offer-row > div {
    display: block;
  }

  #page-code .sms-monitor-offer-row > div::before {
    content: attr(data-label);
    display: block;
    margin-bottom: 3px;
    color: var(--muted);
    font-size: 10px;
  }

  #page-code .sms-monitor-offer-row > div:nth-child(5),
  #page-code .sms-monitor-offer-row > div:last-child {
    grid-column: 1 / -1;
  }

  #page-code .sms-monitor-offer-row > div:last-child button {
    width: 100%;
  }

  #page-code .sms-monitor-alert-price {
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  }

  #page-code .sms-monitor-alert-price > em {
    grid-column: 1 / -1;
  }

  #page-code .sms-monitor-alert-story {
    grid-template-columns: minmax(0, 1fr);
  }

  #page-code .sms-monitor-alert-story > i {
    transform: rotate(90deg);
  }

  #page-code .sms-monitor-history {
    overflow-x: hidden;
  }

  #page-code .sms-monitor-history-row {
    grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr) minmax(0, 0.65fr);
    min-width: 0;
    gap: 6px;
    padding-inline: 8px;
  }

  #page-code .sms-monitor-history-row span,
  #page-code .sms-monitor-history-row b,
  #page-code .sms-monitor-history-row strong {
    min-width: 0;
    white-space: normal;
    overflow-wrap: anywhere;
  }

  #page-code .sms-monitor-history-row strong {
    text-align: right;
  }
}

@media (max-width: 460px) {
  #page-code .sms-monitor-controls {
    grid-template-columns: minmax(0, 1fr);
  }

  #page-code .sms-monitor-price-range,
  #page-code .sms-monitor-controls > button {
    grid-column: 1;
  }

  #page-code .sms-monitor-unit-input {
    width: 132px;
  }

  #page-code .sms-monitor-current-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  #page-code .sms-monitor-current-grid section {
    min-height: 92px;
    border-right: 1px solid rgba(143, 167, 184, 0.14);
    border-top: 0;
  }

  #page-code .sms-monitor-current-grid section:nth-child(2n) {
    border-right: 0;
  }

  #page-code .sms-monitor-current-grid section:nth-child(n + 3) {
    border-top: 1px solid rgba(143, 167, 184, 0.14);
  }

  #page-code .sms-monitor-offer-row {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  #page-code .sms-monitor-offer-row > div:nth-child(5),
  #page-code .sms-monitor-offer-row > div:last-child {
    grid-column: 1 / -1;
  }

  #page-code .sms-monitor-alert-event header {
    flex-direction: column;
  }
}

/* ---- Token 导入 ---- */
.token-import-card {
  border-color: rgba(136, 192, 208, 0.38);
}

.token-import-head h2 {
  margin: 2px 0 6px;
  font-size: 22px;
  letter-spacing: 0;
}

.token-import-form {
  display: flex;
  flex-direction: column;
  gap: 12px;
  margin-top: 12px;
}

.token-import-target-row {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  gap: 12px;
}

.token-import-target-row label,
.token-import-textarea-field {
  display: flex;
  flex-direction: column;
  gap: 4px;
  font-size: 12px;
  color: var(--muted);
}

.token-import-textarea-field {
  width: 100%;
}

.token-import-textarea-field textarea {
  width: 100%;
  font-family: var(--mono, monospace);
  font-size: 12px;
  resize: vertical;
}

.token-import-actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px;
}

.token-import-summary {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 12px;
}

.token-import-chip {
  padding: 4px 10px;
  border-radius: 999px;
  background: rgba(136, 192, 208, 0.14);
  border: 1px solid rgba(136, 192, 208, 0.3);
  font-size: 12px;
}

.token-import-chip b {
  font-size: 13px;
}

.token-import-preview {
  margin-top: 12px;
  max-height: 360px;
}

.token-import-errors {
  margin-top: 10px;
  font-size: 12px;
  color: var(--danger, #d9534f);
}

.token-import-login-logs {
  margin-top: 10px;
  border: 1px solid rgba(136, 192, 208, 0.22);
  background: rgba(8, 12, 18, 0.64);
  border-radius: 6px;
  overflow: hidden;
}

.token-import-login-logs-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 7px 10px;
  border-bottom: 1px solid rgba(136, 192, 208, 0.16);
  color: var(--muted);
  font-size: 12px;
}

.token-import-login-logs-head strong {
  color: var(--text, #e7edf3);
}

.token-import-login-logs pre {
  max-height: 300px;
  overflow: auto;
  margin: 0;
  padding: 9px 10px;
  color: var(--text, #e7edf3);
  font: 11px/1.55 var(--mono, Consolas, monospace);
  white-space: pre-wrap;
  word-break: break-word;
}

.token-import-error-list {
  margin: 4px 0;
  padding-left: 18px;
}

.token-import-ledger-card {
  margin-top: 12px;
}

.token-import-overwrite {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-size: 12px;
  color: var(--muted);
}

.token-import-chip-danger {
  background: rgba(217, 83, 79, 0.16);
  border-color: rgba(217, 83, 79, 0.4);
}

.token-import-row-collision {
  background: rgba(217, 83, 79, 0.08);
}

.token-import-collision-tag {
  color: var(--danger, #d9534f);
  font-size: 11px;
  white-space: nowrap;
}

.account-identity-import {
  display: inline-block;
  margin-left: 4px;
  padding: 0 5px;
  border-radius: 4px;
  font-size: 10px;
  line-height: 16px;
  background: rgba(136, 192, 208, 0.18);
  border: 1px solid rgba(136, 192, 208, 0.4);
  color: var(--accent, #88c0d0);
}

/* ---------- Roxy 绑卡：左配置 / 右实时流程 ---------- */
.roxy-bind-split {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 20px;
  margin-top: 16px;
  align-items: stretch;
}
@media (max-width: 1180px) {
  .roxy-bind-split { grid-template-columns: minmax(0, 1fr); }
}

/* 配置列：字段之间给足呼吸，不要挤成一坨 */
.roxy-bind-config form { display: flex; flex-direction: column; gap: 16px; }
.roxy-bind-row { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.roxy-bind-field { display: block; }
.roxy-bind-config label { display: block; }
.roxy-bind-config label > span.muted { display: block; margin-top: 4px; line-height: 1.5; }
.roxy-bind-spec-field { min-width: 0; }
.roxy-bind-spec-title { display: block; margin-bottom: 4px; }
.roxy-bind-spec-controls {
  display: grid;
  grid-template-columns: minmax(72px, 1fr) auto minmax(72px, 1fr);
  gap: 6px 8px;
  align-items: end;
}
.roxy-bind-spec-controls label > span {
  display: block;
  margin-bottom: 4px;
  color: var(--muted);
  font-size: 12px;
}
.roxy-bind-spec-controls input { width: 100%; min-width: 0; }
.roxy-bind-spec-times { padding-bottom: 9px; color: var(--muted); }
.roxy-bind-spec-total {
  grid-column: 1 / -1;
  justify-self: end;
  color: var(--muted);
  font-size: 12px;
}
.roxy-bind-spec-total[data-invalid="1"],
.roxy-bind-plan[data-invalid="1"] { color: var(--red); }
.roxy-bind-config textarea { width: 100%; resize: vertical; font-family: inherit; line-height: 1.5; }
.roxy-bind-proxy-fallback { display: flex; flex-direction: column; gap: 10px; padding: 10px 0; border-top: 1px solid var(--border); border-bottom: 1px solid var(--border); }
.roxy-bind-config .roxy-bind-toggle { display: flex; align-items: center; gap: 8px; }
.roxy-bind-config .roxy-bind-toggle input { width: 16px; height: 16px; margin: 0; flex: none; }
.roxy-bind-config .actions { margin-top: 4px; }
.roxy-bind-plan {
  padding: 8px 10px;
  border-radius: 6px;
  background: rgba(127, 127, 127, 0.08);
  line-height: 1.6;
}

/* 实时列保持在右侧网格内，列表自己滚动，不能撑宽页面。 */
.roxy-bind-live { display: flex; flex-direction: column; gap: 14px; min-width: 0; }
.roxy-bind-live-head { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; }

.roxy-bind-cards { display: flex; flex-wrap: wrap; gap: 8px; min-height: 24px; }
.roxy-bind-card-chip {
  border: 1px solid var(--border, #333);
  border-radius: 6px;
  padding: 4px 10px;
  font-size: 12px;
  font-variant-numeric: tabular-nums;
}
.roxy-bind-card-chip[data-source="paste"] { border-style: dashed; }

.roxy-bind-table-scroll {
  min-width: 0;
  max-width: 100%;
  max-height: 560px;
  overflow: auto;
  border: 1px solid var(--border, #2a2a2a);
}
.roxy-bind-table { width: 100%; min-width: 620px; table-layout: fixed; border-collapse: collapse; font-size: 13px; }
.roxy-bind-table th,
.roxy-bind-table td {
  text-align: left;
  padding: 9px 10px;
  border-bottom: 1px solid var(--border, #2a2a2a);
  vertical-align: middle;
  line-height: 1.5;
}
.roxy-bind-table th { position: sticky; top: 0; z-index: 1; font-weight: 600; white-space: nowrap; background: var(--panel); }
.roxy-bind-table th:nth-child(1), .roxy-bind-table td:nth-child(1) { width: 52px; }
.roxy-bind-table th:nth-child(2), .roxy-bind-table td:nth-child(2) { width: 31%; }
.roxy-bind-table th:nth-child(3), .roxy-bind-table td:nth-child(3) { width: 132px; white-space: nowrap; }
.roxy-bind-table td:nth-child(2) { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.roxy-bind-table tr[data-stage="succeeded"] td:nth-child(3) { color: #46c46a; }
.roxy-bind-table tr[data-stage="failed"] td:nth-child(3) { color: #e0575b; }
.roxy-bind-table tr[data-stage="ready"] td:nth-child(3) { color: #d8a83a; }
.roxy-bind-table tr[data-stage="submitting"] td:nth-child(3) { color: #4a9de0; }
.roxy-bind-table tr[data-stage="skipped"] td { opacity: 0.5; }
.roxy-bind-detail-cell { min-width: 0; }
.roxy-bind-detail { max-width: 100%; }
.roxy-bind-detail summary {
  display: block;
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  cursor: pointer;
}
.roxy-bind-detail summary::-webkit-details-marker { display: none; }
.roxy-bind-detail[open] summary { margin-bottom: 6px; color: var(--text, #e5e7eb); }
.roxy-bind-detail div { overflow-wrap: anywhere; white-space: normal; }

.roxy-bind-raw pre { max-height: 240px; overflow: auto; overflow-wrap: anywhere; white-space: pre-wrap; margin: 8px 0 0; line-height: 1.6; }

@media (max-width: 720px) {
  .roxy-bind-row { grid-template-columns: minmax(0, 1fr); }
  .roxy-bind-live-head { align-items: flex-start; flex-direction: column; }
  .roxy-bind-table-scroll { max-height: 480px; }
}

/* 自动值守状态条 */
.roxy-bind-watch {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 12px;
  border: 1px solid var(--border, #333);
  border-radius: 8px;
  line-height: 1.5;
}
.roxy-bind-watch[data-on="1"] { border-color: #46c46a; }
.roxy-bind-watch-dot { width: 8px; height: 8px; border-radius: 50%; background: #666; flex: none; }
.roxy-bind-watch[data-on="1"] .roxy-bind-watch-dot { background: #46c46a; }

/* Token 导入页：三种来源共用一套邮箱换绑工作区。 */
.token-rebind-shell { border-color: #354b5c; }
.token-rebind-shell .token-import-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; }
.token-rebind-shell .token-import-head .muted { max-width: 780px; line-height: 1.7; text-align: right; }
.token-rebind-mode-tabs { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; margin: 16px 0 18px; padding: 5px; border: 1px solid var(--line); background: var(--panel-dark); border-radius: 6px; }
.token-rebind-mode { border: 1px solid transparent; background: #141a21; color: var(--muted-2); min-height: 44px; border-radius: 4px; font-weight: 700; cursor: pointer; }
.token-rebind-mode:hover { color: var(--text); border-color: #456174; }
.token-rebind-mode.active { color: var(--green); border-color: var(--green); background: #202b25; }
.token-rebind-form { display: grid; gap: 16px; }
.token-rebind-grid { display: grid; grid-template-columns: minmax(180px, 1.2fr) repeat(4, minmax(130px, 1fr)); gap: 12px; }
.token-rebind-grid label, .token-rebind-input-panel label { display: grid; gap: 7px; color: var(--muted-2); }
.token-rebind-grid input, .token-rebind-grid select, .token-rebind-input-panel textarea { width: 100%; border: 1px solid var(--line); background: var(--panel-dark); color: var(--text); border-radius: 4px; padding: 10px 11px; }
.token-rebind-input-panel textarea { min-height: 142px; resize: vertical; line-height: 1.55; }
.token-rebind-auto-panel, .token-rebind-input-panel { border: 1px solid var(--line-soft); background: rgba(10, 13, 17, .42); border-radius: 5px; padding: 13px; }
.token-rebind-selection-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; color: var(--cyan); font-weight: 700; }
.token-rebind-check { display: inline-flex; align-items: center; gap: 8px; color: var(--muted-2); line-height: 1.5; }
.token-rebind-check input { accent-color: var(--green); }
.token-rebind-auto-panel > .token-rebind-check { margin-top: 12px; }
.token-rebind-account-list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 7px; max-height: 240px; overflow: auto; margin-top: 12px; padding-right: 3px; }
.token-rebind-account-row { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: 7px; min-width: 0; padding: 8px 9px; border: 1px solid var(--line); border-radius: 4px; background: #11161c; }
.token-rebind-account-row span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: var(--text); }
.token-rebind-account-row small { color: var(--muted); white-space: nowrap; }
.token-rebind-file { display: inline-grid; gap: 7px; margin-top: 12px; color: var(--muted-2); }
.token-rebind-file input { color: var(--muted-2); }
.token-rebind-options { display: flex; flex-wrap: wrap; align-items: center; gap: 16px; padding-top: 2px; }
.token-rebind-actions { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.token-rebind-actions [data-rebind-status] { min-height: 22px; }
.token-rebind-actions [data-rebind-stop] { background: var(--red); color: #fff; }
.token-rebind-actions [data-rebind-stop]:disabled { opacity: .55; }
.token-rebind-actions [data-rebind-status].error, .token-rebind-progress-error { color: var(--red); }
.token-rebind-progress { border-top: 1px solid var(--line); margin-top: 14px; padding-top: 14px; }
.token-rebind-progress-head { display: flex; justify-content: space-between; gap: 12px; color: var(--muted-2); }
.token-rebind-progress-track { height: 8px; margin: 9px 0 12px; overflow: hidden; border-radius: 4px; background: #0b0f14; }
.token-rebind-progress-track i { display: block; height: 100%; background: var(--green); transition: width .2s ease; }
.token-rebind-result-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px; max-height: 250px; overflow: auto; }
.token-rebind-result { display: flex; justify-content: space-between; gap: 10px; padding: 7px 9px; border: 1px solid var(--line); border-radius: 4px; background: #11161c; }
.token-rebind-result.success { border-color: #506d55; }
.token-rebind-result.failed { border-color: #6b3c43; }
.token-rebind-result span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.token-rebind-result small { color: var(--muted-2); overflow-wrap: anywhere; text-align: right; }
@media (max-width: 980px) {
  .token-rebind-shell .token-import-head { align-items: flex-start; flex-direction: column; }
  .token-rebind-shell .token-import-head .muted { max-width: none; text-align: left; }
  .token-rebind-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .token-rebind-account-list, .token-rebind-result-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 620px) {
  .token-rebind-mode-tabs, .token-rebind-grid, .token-rebind-account-list, .token-rebind-result-list { grid-template-columns: minmax(0, 1fr); }
  .token-rebind-selection-head, .token-rebind-progress-head { align-items: flex-start; flex-direction: column; }
}

.token-import-module-tabs { display: flex; width: max-content; max-width: 100%; align-items: center; gap: 6px; margin-bottom: 14px; padding: 5px; overflow-x: auto; border: 1px solid var(--line); border-radius: 7px; background: var(--panel-dark); }
.token-rebind-source-badge { margin: 12px 0; color: var(--muted-2); font-size: 12px; }
.token-import-module-tab { display: inline-flex; flex: 0 0 auto; min-width: 132px; min-height: 36px; align-items: center; justify-content: center; gap: 7px; padding: 6px 12px; border: 1px solid transparent; border-radius: 4px; background: #141a21; color: var(--muted-2); font-weight: 700; cursor: pointer; }
.token-module-icon { display: inline-flex; width: 18px; justify-content: center; font-size: 14px; line-height: 1; }
.token-import-module-tab:hover, .token-import-module-tab.active { border-color: var(--green); color: var(--green); background: #202b25; }
.token-import-workbench { display: grid; grid-template-columns: minmax(0, 1fr); gap: 16px; align-items: start; }
.token-import-workbench .token-import-card, .token-import-workbench .token-rebind-side { margin: 0; min-width: 0; }
.token-import-workbench > [hidden] { display: none !important; }
.token-import-primary .token-import-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 18px; }
.token-import-primary .token-import-head .muted { max-width: 640px; line-height: 1.55; text-align: right; }
.token-import-primary { border-color: rgba(103, 199, 220, .38); }
.token-import-inline-check, .token-rebind-inline-check { display: inline-flex; align-items: center; gap: 6px; width: auto; margin: 0; color: var(--muted-2); white-space: nowrap; }
.token-import-inline-check input[type="checkbox"], .token-rebind-inline-check input[type="checkbox"] { width: 15px; min-width: 15px; height: 15px; min-height: 15px; margin: 0; padding: 0; accent-color: var(--green); }
.token-rebind-side { border-color: rgba(119, 144, 160, .32); background: #151a21; }
.token-rebind-layout { display: grid; grid-template-columns: minmax(0, 1fr) minmax(360px, 420px); gap: 16px; align-items: start; }
.token-rebind-main { min-width: 0; }
.token-rebind-domain-panel { min-width: 0; padding: 14px; border: 1px solid rgba(103, 199, 220, .28); border-radius: 6px; background: #11171e; }
.token-rebind-domain-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 10px; }
.token-rebind-domain-head h3 { margin: 2px 0 4px; font-size: 18px; }
.token-rebind-domain-badge { padding: 4px 7px; border: 1px solid rgba(163, 190, 140, .45); border-radius: 4px; color: var(--green); font-size: 11px; }
.token-rebind-domain-note { margin: 4px 0 12px; color: var(--muted-2); font-size: 12px; line-height: 1.5; }
.token-rebind-domain-field { display: grid; gap: 5px; margin-top: 10px; color: var(--muted-2); font-size: 12px; }
.token-rebind-domain-field input, .token-rebind-domain-field select { width: 100%; min-width: 0; }
.token-rebind-domain-actions { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 6px; margin-top: 7px; }
.token-rebind-domain-actions input { min-width: 0; }
.token-rebind-material-list { display: grid; gap: 0; margin-top: 14px; border: 1px solid var(--line); border-radius: 4px; overflow: hidden; }
.token-rebind-material-list div { display: grid; gap: 4px; padding: 8px 9px; border-bottom: 1px solid var(--line); }
.token-rebind-material-list div:last-child { border-bottom: 0; }
.token-rebind-material-list span { color: var(--muted-2); font-size: 11px; }
.token-rebind-material-list b { color: var(--text); font-size: 12px; overflow-wrap: anywhere; }
.token-rebind-domain-check { display: flex; align-items: center; gap: 7px; margin-top: 12px; color: var(--muted-2); font-size: 12px; }
.token-rebind-domain-check input { position: absolute; width: 1px; height: 1px; opacity: 0; pointer-events: none; }
.token-rebind-switch { position: relative; flex: 0 0 30px; width: 30px; height: 17px; border: 1px solid var(--line-strong); border-radius: 9px; background: #10161d; transition: background .16s ease, border-color .16s ease; }
.token-rebind-switch::after { content: ""; position: absolute; top: 2px; left: 2px; width: 11px; height: 11px; border-radius: 50%; background: var(--muted-2); transition: transform .16s ease, background .16s ease; }
.token-rebind-domain-check input:checked + .token-rebind-switch { border-color: rgba(163, 190, 140, .8); background: #263529; }
.token-rebind-domain-check input:checked + .token-rebind-switch::after { transform: translateX(13px); background: var(--green); }
.token-rebind-domain-check input:focus-visible + .token-rebind-switch { outline: 2px solid var(--cyan); outline-offset: 2px; }
.token-rebind-domain-save { width: 100%; margin-top: 12px; }
.token-rebind-workspace-tools { display: grid; justify-items: end; gap: 9px; min-width: 0; }
.token-rebind-category-switch { display: grid; grid-template-columns: repeat(3, minmax(80px, 1fr)); gap: 3px; padding: 3px; border: 1px solid var(--line); border-radius: 5px; background: #11171e; }
.token-rebind-category-switch button { min-height: 30px; padding: 5px 10px; border: 1px solid transparent; border-radius: 3px; background: transparent; color: var(--muted-2); font-size: 12px; font-weight: 700; cursor: pointer; }
.token-rebind-category-switch button.active { border-color: rgba(163, 190, 140, .58); background: #263029; color: var(--green); }
.token-rebind-mark-switch { grid-template-columns: repeat(4, minmax(60px, 1fr)); }
.token-rebind-account-list { margin-top: 12px; border: 1px solid var(--line); border-radius: 5px; background: #0f151c; }
.token-rebind-account-list[hidden] { display: none; }
.token-rebind-account-head { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 9px 11px; border-bottom: 1px solid var(--line); }
.token-rebind-account-all { display: inline-flex; align-items: center; gap: 8px; color: var(--text); font-size: 12px; font-weight: 700; cursor: pointer; }
.token-rebind-account-all input { width: 15px; min-width: 15px; height: 15px; margin: 0; accent-color: var(--green); }
.token-rebind-check-clear { min-height: 30px; padding: 5px 11px; border: 1px solid var(--line); border-radius: 4px; background: transparent; color: var(--muted-2); font-size: 12px; font-weight: 700; cursor: pointer; }
.token-rebind-check-clear:disabled { opacity: .45; cursor: default; }
.token-rebind-account-rows { max-height: 360px; overflow-y: auto; padding: 6px; display: grid; gap: 5px; }
.token-rebind-account-row { display: grid; grid-template-columns: 16px minmax(0, 1fr) auto; align-items: center; gap: 10px; padding: 8px 10px; border: 1px solid transparent; border-radius: 4px; background: #131b23; cursor: pointer; }
.token-rebind-account-row:hover { border-color: rgba(103, 199, 220, .32); }
.token-rebind-account-row.is-checked { border-color: rgba(163, 190, 140, .58); background: #1a241d; }
.token-rebind-account-row input { width: 15px; min-width: 15px; height: 15px; margin: 0; accent-color: var(--green); }
.token-rebind-account-email { overflow: hidden; color: var(--text); font-size: 12px; font-weight: 700; text-overflow: ellipsis; white-space: nowrap; }
.token-rebind-account-meta { display: inline-flex; align-items: center; gap: 6px; justify-content: flex-end; flex-wrap: wrap; }
.token-rebind-badge { padding: 2px 8px; border-radius: 999px; font-size: 10px; font-weight: 800; white-space: nowrap; }
.token-rebind-badge.is-success { background: #1f3324; color: #a8e6a1; }
.token-rebind-badge.is-failure { background: #3a2020; color: #f2a6a6; }
.token-rebind-badge.is-unmarked { background: #222c35; color: var(--muted-2); }
.token-rebind-batch-tag, .token-rebind-plan-tag { padding: 2px 8px; border-radius: 999px; background: #182029; color: var(--muted-2); font-size: 10px; font-weight: 700; white-space: nowrap; }
.token-rebind-account-empty { margin: 0; padding: 18px 12px; color: var(--muted-2); font-size: 12px; text-align: center; }
.token-rebind-domain-picker { margin-top: 10px; border: 1px solid var(--line); border-radius: 5px; background: #0f151c; }
.token-rebind-domain-picker > summary { display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: center; gap: 10px; min-height: 42px; padding: 8px 10px; cursor: pointer; list-style: none; }
.token-rebind-domain-picker > summary::-webkit-details-marker { display: none; }
.token-rebind-domain-picker > summary::after { content: "+"; grid-column: 3; color: var(--muted-2); font-size: 16px; }
.token-rebind-domain-picker[open] > summary::after { content: "-"; }
.token-rebind-domain-picker > summary span { color: var(--muted-2); font-size: 12px; }
.token-rebind-domain-picker > summary b { min-width: 0; overflow: hidden; color: var(--text); font-size: 12px; text-overflow: ellipsis; white-space: nowrap; }
.token-rebind-domain-options { max-height: 310px; padding: 0 8px 8px; overflow-y: auto; border-top: 1px solid var(--line); }
.token-rebind-domain-level { padding-top: 8px; }
.token-rebind-domain-level + .token-rebind-domain-level { margin-top: 6px; border-top: 1px solid var(--line); }
.token-rebind-domain-level-head { display: flex; align-items: center; justify-content: space-between; min-height: 28px; color: var(--muted-2); font-size: 11px; }
.token-rebind-domain-level-head label { display: inline-flex; align-items: center; gap: 7px; color: var(--text); }
.token-rebind-generated-levels { padding: 8px 0 10px; border-bottom: 1px solid var(--line); }
.token-rebind-generated-level { display: inline-flex; align-items: center; gap: 7px; min-width: 31%; min-height: 38px; padding: 5px 6px; color: var(--text); }
.token-rebind-generated-level input { width: 14px; min-width: 14px; height: 14px; min-height: 14px; margin: 0; accent-color: var(--green); }
.token-rebind-generated-level span { display: grid; gap: 2px; min-width: 0; }
.token-rebind-generated-level b { font-size: 12px; }
.token-rebind-generated-level small { color: var(--muted-2); font-size: 10px; white-space: nowrap; }
.token-rebind-domain-level-head input,
.token-rebind-domain-option input { width: 14px; min-width: 14px; height: 14px; min-height: 14px; margin: 0; padding: 0; accent-color: var(--green); }
.token-rebind-domain-option { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 8px; min-height: 42px; padding: 5px 6px; border: 1px solid transparent; border-radius: 4px; }
.token-rebind-domain-option:hover,
.token-rebind-domain-option.is-editing { border-color: rgba(103, 199, 220, .32); background: #172029; }
.token-rebind-domain-option label { display: grid; grid-template-columns: 14px minmax(0, 1fr); align-items: center; gap: 8px; min-width: 0; }
.token-rebind-domain-option label span { display: grid; min-width: 0; }
.token-rebind-domain-option label b { overflow: hidden; color: var(--text); font-size: 12px; text-overflow: ellipsis; white-space: nowrap; }
.token-rebind-domain-option label small { color: var(--muted-2); font-size: 10px; }
.token-rebind-domain-option button { min-height: 26px; padding: 3px 7px; font-size: 10px; }
.token-rebind-domain-imports { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: end; gap: 7px; margin-top: 10px; }
.token-rebind-domain-imports .token-rebind-domain-field { margin: 0; }
.token-rebind-domain-imports textarea { width: 100%; min-width: 0; min-height: 54px; resize: vertical; }
.token-rebind-domain-imports button { min-height: 34px; }
.token-rebind-domain-editor-title { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-top: 14px; padding-top: 12px; border-top: 1px solid var(--line); }
.token-rebind-domain-editor-title b { color: var(--text); font-size: 13px; }
.token-rebind-domain-editor-title span { min-width: 0; overflow: hidden; color: var(--cyan); font-size: 12px; text-overflow: ellipsis; white-space: nowrap; }
.token-rebind-live-badge { padding: 5px 9px; border: 1px solid rgba(103, 199, 220, .35); border-radius: 4px; color: #8ad5e2; font-size: 11px; font-weight: 700; }
.token-rebind-side-head { display: flex; align-items: baseline; justify-content: space-between; gap: 10px; }
.token-rebind-side-head h2 { margin: 2px 0 6px; font-size: 24px; }
.token-rebind-side-note { margin: 2px 0 12px; color: var(--muted-2); line-height: 1.55; }
.token-rebind-side .token-rebind-mode-tabs { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; margin: 10px 0 12px; }
.token-rebind-side .token-rebind-mode { min-height: 38px; padding: 7px 5px; font-size: 12px; line-height: 1.25; }
.token-rebind-side-fields { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; margin-bottom: 10px; }
.token-rebind-side-fields label, .token-rebind-legacy-actions label { display: grid; gap: 5px; color: var(--muted-2); font-size: 12px; }
.token-rebind-side-fields input, .token-rebind-side-fields select, .token-rebind-legacy-actions input { width: 100%; }
.token-rebind-side-fields small { color: var(--muted-2); font-size: 10px; line-height: 1.35; }
.token-rebind-side .token-rebind-auto-panel, .token-rebind-side .token-rebind-input-panel { padding: 11px; }
.token-rebind-side .token-rebind-input-panel textarea { min-height: 168px; }
.token-rebind-input-label { display: flex; align-items: baseline; justify-content: space-between; gap: 10px; color: var(--muted-2); font-size: 12px; }
.token-rebind-input-label b { color: var(--text); }
.token-rebind-input-label small, .token-rebind-line-count { color: var(--muted-2); font-size: 11px; font-weight: 400; }
.token-rebind-line-count { display: block; margin-top: 5px; }
.token-rebind-line-count.is-over-limit { color: var(--red); }
.token-rebind-import-summary { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 10px; }
.token-rebind-import-summary .token-import-chip { padding: 4px 7px; border: 1px solid var(--line); border-radius: 4px; background: #11161c; color: var(--muted-2); font-size: 11px; }
.token-rebind-import-summary .token-import-chip b { color: var(--cyan); margin-right: 3px; }
.token-rebind-side .token-rebind-auto-note { margin-top: 9px; color: var(--muted-2); line-height: 1.55; }
.token-rebind-legacy-actions { display: flex; align-items: end; flex-wrap: wrap; gap: 9px; margin-top: 10px; }
.token-rebind-legacy-actions label { width: 130px; }
.token-rebind-side .token-rebind-options { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 10px; }
.token-rebind-side .token-rebind-actions { margin-top: 12px; }
.token-rebind-side .token-rebind-progress { max-height: none; overflow: visible; }
.token-rebind-workspace-copy p, .token-rebind-runner-head p { margin: 5px 0 0; color: var(--muted-2); font-size: 12px; }
.token-rebind-selection-action { display: flex; align-items: center; justify-content: flex-end; gap: 10px; }
.token-rebind-runner, .token-rebind-config { margin-top: 14px; padding: 14px; border: 1px solid rgba(119, 144, 160, .2); border-radius: 6px; background: rgba(8, 12, 17, .52); }
.token-rebind-runner-head { display: flex; align-items: center; justify-content: space-between; gap: 14px; }
.token-rebind-status-line { min-height: 22px; margin-top: 11px; color: var(--muted-2); }
.token-rebind-status-line.error { color: var(--red); }
.token-rebind-config-title { display: flex; justify-content: space-between; gap: 10px; margin-bottom: 12px; color: var(--muted-2); }
.token-rebind-config-title strong { color: var(--text); }
.token-rebind-inbox-line { margin-top: 4px; color: var(--muted-2); font-size: 12px; }
.token-rebind-inbox-line span { color: #8ad5e2; }

/* 换绑工作台：直接复用 GO 提链 Mode2 的紧凑逐条运行表。 */
.token-rebind-progress-track i { background: #6ea8fe; box-shadow: 0 0 12px rgba(110, 168, 254, .34); }
.token-rebind-task-list {
  display: grid;
  gap: 5px;
  max-height: 280px;
  margin-top: 10px;
  overflow-y: auto;
  padding-right: 4px;
}
.token-rebind-task-row {
  display: grid;
  grid-template-columns: 48px minmax(120px, .75fr) minmax(240px, 1.35fr) minmax(120px, auto);
  align-items: center;
  gap: 8px;
  min-width: 0;
  min-height: 34px;
  padding: 6px 9px;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: var(--surface, #151b22);
  font-size: 12px;
  transition: border-color .18s ease, background-color .18s ease;
}
.token-rebind-task-row.is-running { border-color: rgba(9, 105, 218, .35); }
.token-rebind-task-row.is-running .token-rebind-task-state { color: #6ea8fe; }
.token-rebind-task-row.is-success { border-color: rgba(26, 127, 55, .32); background: rgba(26, 127, 55, .08); }
.token-rebind-task-row.is-success .token-rebind-task-state { color: #67c78c; }
.token-rebind-task-row.is-failed, .token-rebind-task-row.is-error { border-color: rgba(207, 34, 46, .28); background: rgba(207, 34, 46, .08); }
.token-rebind-task-row.is-failed .token-rebind-task-state, .token-rebind-task-row.is-error .token-rebind-task-state { color: #ef6b73; }
.token-rebind-task-row.is-cancelled { border-color: rgba(138, 146, 155, .35); opacity: .82; }
.token-rebind-task-row.is-live { border-color: rgba(110, 168, 254, .48); }
.token-rebind-task-index { color: var(--muted-2); font-family: "SF Mono", "Cascadia Code", "Menlo", monospace; font-variant-numeric: tabular-nums; }
.token-rebind-task-identity { grid-column: 2; min-width: 0; overflow: hidden; color: var(--text); font-weight: 600; text-overflow: ellipsis; white-space: nowrap; }
.token-rebind-task-flow { grid-column: 3; display: flex; align-items: center; min-width: 0; gap: 7px; overflow: hidden; }
.token-rebind-stage-count { color: #6ea8fe; font-size: 12px; font-weight: 800; font-variant-numeric: tabular-nums; }
.token-rebind-task-log { min-width: 0; overflow: hidden; color: var(--muted-2); text-overflow: ellipsis; white-space: nowrap; }
.token-rebind-task-state { grid-column: 4; min-width: 0; overflow: hidden; color: var(--muted-2); text-align: right; text-overflow: ellipsis; white-space: nowrap; }
.token-rebind-task-status { display: inline-flex; align-items: center; justify-content: flex-end; gap: 6px; padding: 3px 10px; border-radius: 999px; font-size: 11px; font-weight: 700; white-space: nowrap; }
.token-rebind-task-status.is-running { color: #6ea8fe; background: rgba(110, 168, 254, .12); }
.token-rebind-task-status.is-success { color: #67c78c; background: rgba(103, 199, 140, .12); }
.token-rebind-task-status.is-failed, .token-rebind-task-status.is-error { color: #ef6b73; background: rgba(239, 107, 115, .12); }
.token-rebind-task-status.is-cancelled { color: #c3c8ce; background: rgba(138, 146, 155, .12); }
.token-rebind-live-dot { width: 7px; height: 7px; border-radius: 50%; background: #6ea8fe; box-shadow: 0 0 0 0 rgba(110, 168, 254, .65); animation: token-rebind-live-pulse 1.15s ease-out infinite; }
@keyframes token-rebind-live-pulse { 0% { transform: scale(.82); box-shadow: 0 0 0 0 rgba(110, 168, 254, .7); } 65% { transform: scale(1.16); box-shadow: 0 0 0 7px rgba(110, 168, 254, 0); } 100% { transform: scale(.82); box-shadow: 0 0 0 0 rgba(110, 168, 254, 0); } }
.token-rebind-task-error { max-width: 100%; color: #ff9da3; font-size: 11px; text-align: left; }
.token-rebind-task-error summary { cursor: pointer; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.token-rebind-task-error div { max-width: 360px; margin-top: 4px; color: #ffc5c9; overflow-wrap: anywhere; line-height: 1.45; }

/* 换绑任务工作台：左侧是受并发限制的活动窗口，右侧只累计成功/失败结果。 */
.token-rebind-progress-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: start;
  gap: 14px;
}
.token-rebind-progress-metrics {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 6px 12px;
  color: var(--muted-2);
  font-size: 12px;
  font-variant-numeric: tabular-nums;
  text-align: right;
}
.token-rebind-progress-metrics span { white-space: nowrap; }
.token-rebind-progress-metrics b { color: var(--text); }
.token-rebind-progress-metrics .is-success, .token-rebind-progress-metrics .is-success b { color: #67c78c; }
.token-rebind-progress-metrics .is-failed, .token-rebind-progress-metrics .is-failed b { color: #ef6b73; }
.token-rebind-flow-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin-top: 10px;
}
.token-rebind-flow-column {
  display: grid;
  align-content: start;
  gap: 5px;
  min-width: 0;
  max-height: 320px;
  overflow-y: auto;
  padding: 0 4px 2px 0;
  scrollbar-gutter: stable;
  scrollbar-color: #30363d transparent;
  scrollbar-width: thin;
}
.token-rebind-flow-column::-webkit-scrollbar { width: 8px; }
.token-rebind-flow-column::-webkit-scrollbar-track { background: transparent; }
.token-rebind-flow-column::-webkit-scrollbar-thumb {
  border: 2px solid transparent;
  border-radius: 999px;
  background: #30363d;
  background-clip: padding-box;
}
.token-rebind-flow-column-head {
  position: sticky;
  top: 0;
  z-index: 1;
  min-height: 26px;
  padding: 4px 8px;
  border-bottom: 1px solid var(--line);
  background: #11171e;
  color: var(--text);
  font-size: 12px;
  font-variant-numeric: tabular-nums;
}
.token-rebind-flow-column-head b { font-weight: 700; }
.token-rebind-flow-empty {
  min-height: 34px;
  padding: 10px;
  border: 1px dashed var(--line);
  color: var(--muted-2);
  font-size: 12px;
  text-align: center;
}
.token-rebind-flow-column .token-rebind-task-row { min-height: 38px; }
@media (max-width: 900px) {
  .token-rebind-progress-metrics { justify-content: flex-start; text-align: left; }
  .token-rebind-flow-grid { grid-template-columns: minmax(0, 1fr); }
  .token-rebind-task-row { grid-template-columns: 42px minmax(0, 1fr) auto; }
  .token-rebind-task-identity { grid-column: 2; }
  .token-rebind-task-flow { grid-column: 2 / 4; grid-row: 2; }
  .token-rebind-task-state { grid-column: 3; grid-row: 1; }
}
@media (max-width: 620px) {
  .token-rebind-progress-metrics { gap: 5px 9px; }
  .token-rebind-flow-column { max-height: 300px; }
  .token-rebind-task-row { grid-template-columns: 30px minmax(0, 1fr); align-items: start; }
  .token-rebind-task-flow, .token-rebind-task-state { grid-column: 2; }
  .token-rebind-task-flow { grid-row: auto; }
  .token-rebind-task-log { white-space: normal; }
  .token-rebind-task-state { grid-row: auto; text-align: left; }
}
@media (max-width: 1080px) {
  .token-import-workbench { grid-template-columns: minmax(0, 1fr); }
  .token-rebind-layout { grid-template-columns: minmax(0, 1fr); }
  .token-import-primary .token-import-head { align-items: flex-start; flex-direction: column; }
  .token-import-primary .token-import-head .muted { max-width: none; text-align: left; }
  .token-rebind-side .token-rebind-mode-tabs { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 620px) {
  .token-import-module-tabs { width: 100%; }
  .token-import-module-tab { min-width: 124px; }
  .token-rebind-side .token-rebind-mode-tabs, .token-rebind-side-fields { grid-template-columns: minmax(0, 1fr); }
  .token-rebind-legacy-actions { align-items: stretch; flex-direction: column; }
  .token-rebind-legacy-actions label { width: 100%; }
  .token-rebind-runner-head, .token-rebind-config-title { align-items: flex-start; flex-direction: column; }
  .token-rebind-result { grid-template-columns: 34px minmax(0, 1fr); }
  .token-rebind-result small { grid-column: 2; text-align: left; }
  .token-rebind-result em { grid-column: 2; }
}

/* Token 换绑采用 GO 提链 Mode2 的宽双栏工作台；日志独立放在双栏下方。 */
.token-rebind-paypal-shell {
  padding: 0;
  margin-bottom: 0;
  overflow: visible;
  border: 0;
  background: transparent;
}
.token-rebind-paypal-shell > .token-rebind-side-head,
.token-rebind-paypal-shell > .token-rebind-side-note {
  display: none;
}
.token-rebind-paypal-shell .token-rebind-layout {
  grid-template-columns: minmax(0, 1fr) minmax(360px, 420px);
  gap: 20px;
  align-items: stretch;
  margin-top: 0;
}
.token-rebind-paypal-shell .token-rebind-main {
  min-width: 0;
  height: 100%;
  margin-bottom: 0;
  padding: 24px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel);
}
.token-rebind-paypal-header {
  align-items: center;
  margin-bottom: 18px;
}
.token-rebind-paypal-header h1 { margin: 0; }
.token-rebind-paypal-subtitle {
  margin: -8px 0 14px;
  color: var(--muted-2);
  font-size: 13px;
  line-height: 1.5;
}
.token-rebind-paypal-shell .token-rebind-domain-panel {
  align-self: stretch;
  height: 100%;
  margin-bottom: 0;
  padding: 16px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel);
}
.token-rebind-paypal-shell .token-rebind-domain-head h2 { margin: 0; font-size: 24px; font-weight: 700; }
.token-rebind-paypal-shell .token-rebind-domain-field { margin-top: 12px; }
.token-rebind-paypal-shell .token-rebind-domain-field input,
.token-rebind-paypal-shell .token-rebind-domain-field select { height: 40px; }
.token-rebind-paypal-shell .token-rebind-material-list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1px;
  margin: 14px 0 12px;
  padding: 0;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: var(--line);
  overflow: hidden;
}
.token-rebind-paypal-shell .token-rebind-material-list .jp-cell {
  display: grid;
  gap: 4px;
  min-width: 0;
  padding: 9px;
  border: 0;
  background: var(--panel);
}
.token-rebind-paypal-shell .token-rebind-material-list .jp-cell.full { grid-column: 1 / -1; }
.token-rebind-paypal-shell .token-rebind-material-list .jp-field-label { margin: 0; color: var(--muted-2); font-size: 12px; font-weight: 600; }
.token-rebind-paypal-shell .token-rebind-material-list .jp-field-value { color: var(--text); font-size: 13px; line-height: 1.4; font-weight: 600; overflow-wrap: anywhere; }
.token-rebind-paypal-shell .token-rebind-runner {
  margin-top: 18px;
  padding: 16px;
}
.token-rebind-paypal-shell .token-rebind-config {
  margin-top: 18px;
  padding: 16px;
}
.token-rebind-log-bottom {
  margin: 16px 0 0;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel);
}
.token-rebind-log-bottom .token-rebind-progress { margin-top: 0; padding-top: 0; border-top: 0; }
.token-rebind-progress-metrics-only { justify-content: flex-start; margin: 0; text-align: left; }
.token-rebind-log-bottom .token-rebind-flow-grid { gap: 16px; }
.token-rebind-log-bottom .token-rebind-flow-column {
  max-height: 460px;
  min-height: 160px;
  padding-right: 6px;
}
.token-rebind-log-bottom .token-rebind-task-row {
  min-height: 48px;
  padding: 8px 10px;
}
.token-rebind-log-bottom .registration-task-flow-label {
  color: #6ea8fe;
  font-weight: 800;
  white-space: nowrap;
}
.token-rebind-log-bottom .registration-task-flow-value { min-width: 0; }
.token-rebind-paypal-shell .token-rebind-main > .mode7-batch-panel,
.token-rebind-paypal-shell .token-rebind-main > .token-rebind-auto-panel,
.token-rebind-paypal-shell .token-rebind-runner {
  margin: 0 0 18px;
  padding: 14px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #202832;
}
.token-rebind-paypal-shell .token-rebind-runner {
  margin-top: 0;
}
.token-rebind-paypal-shell .mode7-batch-head,
.token-rebind-paypal-shell .token-rebind-workspace-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
  margin-bottom: 12px;
}
.token-rebind-paypal-shell .mode7-batch-title { color: var(--text); font-size: 15px; font-weight: 700; }
.token-rebind-paypal-shell .mode7-batch-help,
.token-rebind-paypal-shell .token-rebind-runner-head p { margin-top: 4px; color: var(--muted-2); font-size: 12px; line-height: 1.5; }
.token-rebind-paypal-shell .token-rebind-selection-action { display: flex; align-items: center; justify-content: flex-end; gap: 10px; color: var(--text); }
.token-rebind-paypal-shell .token-rebind-selection-action b { white-space: nowrap; }
.token-rebind-paypal-shell .token-rebind-config {
  margin-top: 0;
  padding: 14px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel-deep);
}
.token-rebind-reference-grid {
  display: grid;
  gap: 14px;
  margin-top: 14px;
}
.token-rebind-config-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  margin-top: 12px;
}
.token-rebind-config-grid label {
  display: grid;
  gap: 5px;
  min-width: 0;
  color: var(--text);
  font-size: 13px;
  font-weight: 600;
}
.token-rebind-config-grid input,
.token-rebind-config-grid select {
  width: 100%;
  min-width: 0;
  height: 40px;
}
.token-rebind-config-grid small {
  color: var(--muted-2);
  font-size: 11px;
  line-height: 1.4;
  font-weight: 400;
}
.token-rebind-concurrency-field input { border-color: rgba(163, 190, 140, .7); }
.token-rebind-reference-grid-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.token-rebind-reference-grid-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.token-rebind-reference-grid-6 { grid-template-columns: repeat(6, minmax(0, 1fr)); }
.token-rebind-reference-grid label,
.token-rebind-rebind-only-fields label {
  display: grid;
  gap: 5px;
  min-width: 0;
  color: var(--text);
  font-size: 13px;
  font-weight: 600;
}
.token-rebind-reference-grid small,
.token-rebind-rebind-only-fields small { color: var(--muted-2); font-size: 11px; line-height: 1.4; font-weight: 400; }
.token-rebind-reference-grid input,
.token-rebind-reference-grid select,
.token-rebind-rebind-only-fields input { width: 100%; min-width: 0; height: 40px; }
.token-rebind-rebind-only-fields {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  margin-top: 14px;
}
@media (max-width: 1100px) {
  .token-rebind-paypal-shell .token-rebind-layout { grid-template-columns: minmax(0, 1fr) 400px; gap: 16px; }
  .token-rebind-reference-grid-6 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .token-rebind-config-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 900px) {
  .token-rebind-paypal-shell { padding: 0; }
  .token-rebind-paypal-shell .token-rebind-layout { grid-template-columns: minmax(0, 1fr); }
  .token-rebind-paypal-shell .token-rebind-main { padding: 16px; }
  .token-rebind-paypal-shell .token-rebind-workspace-head,
  .token-rebind-paypal-shell .token-rebind-runner-head { flex-direction: column; }
  .token-rebind-paypal-shell .token-rebind-selection-action { justify-content: space-between; width: 100%; flex-wrap: wrap; }
  .token-rebind-paypal-shell .token-rebind-selection-action b { white-space: normal; }
  .token-rebind-log-bottom .token-rebind-flow-column { max-height: 360px; }
  .token-rebind-reference-grid-2,
  .token-rebind-reference-grid-3,
  .token-rebind-reference-grid-6,
  .token-rebind-rebind-only-fields,
  .token-rebind-config-grid { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 620px) {
  .token-rebind-log-bottom .token-rebind-flow-column { min-height: 120px; max-height: 300px; }
}

/* Token rebind rows: keep long stage text inside its cell and make copying
   an explicit, non-dragging action. The ancestor selector wins over the
   shared registration monitor stylesheet loaded after this file. */
.token-rebind-log-bottom .registration-task-workbench,
.token-rebind-log-bottom .registration-task-flow-grid,
.token-rebind-log-bottom .registration-task-flow-column,
.token-rebind-log-bottom .registration-task-row {
  min-width: 0;
}
.token-rebind-log-bottom .registration-task-workbench { overflow: hidden; }
.token-rebind-log-bottom .registration-task-flow-column {
  overflow-x: hidden;
  overscroll-behavior: contain;
}
.token-rebind-log-bottom .registration-task-row {
  overflow: hidden;
  user-select: none;
  -webkit-user-select: none;
  -webkit-user-drag: none;
}
.token-rebind-log-bottom .registration-task-identity-cell {
  position: relative;
  display: flex;
  grid-column: 2;
  align-items: center;
  min-width: 0;
  overflow: hidden;
}
.token-rebind-log-bottom .registration-task-identity {
  flex: 1 1 auto;
  min-width: 0;
  padding-right: 24px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  user-select: text;
  -webkit-user-select: text;
  -webkit-user-drag: none;
}
.token-rebind-log-bottom .registration-task-copy-account {
  position: absolute;
  top: 50%;
  right: 0;
  width: 22px;
  height: 22px;
  padding: 0;
  border: 1px solid transparent;
  border-radius: 4px;
  background: transparent;
  color: #8b949e;
  cursor: pointer;
  opacity: 0;
  transform: translateY(-50%);
  transition: opacity .15s ease, border-color .15s ease, color .15s ease, background-color .15s ease;
  user-select: none;
  -webkit-user-select: none;
  -webkit-user-drag: none;
  touch-action: manipulation;
  pointer-events: none;
}
.token-rebind-log-bottom .registration-task-copy-account::before,
.token-rebind-log-bottom .registration-task-copy-account::after {
  position: absolute;
  width: 8px;
  height: 8px;
  border: 1px solid currentColor;
  border-radius: 2px;
  content: "";
}
.token-rebind-log-bottom .registration-task-copy-account::before { top: 5px; left: 6px; }
.token-rebind-log-bottom .registration-task-copy-account::after { top: 8px; left: 9px; background: var(--panel); }
.token-rebind-log-bottom .registration-task-row:hover .registration-task-copy-account,
.token-rebind-log-bottom .registration-task-row:focus-within .registration-task-copy-account,
.token-rebind-log-bottom .registration-task-copy-account:focus-visible,
.token-rebind-log-bottom .registration-task-copy-account.is-copied { opacity: 1; }
.token-rebind-log-bottom .registration-task-row:hover .registration-task-copy-account,
.token-rebind-log-bottom .registration-task-row:focus-within .registration-task-copy-account,
.token-rebind-log-bottom .registration-task-copy-account:focus-visible,
.token-rebind-log-bottom .registration-task-copy-account.is-copied { pointer-events: auto; }
.token-rebind-log-bottom .registration-task-copy-account:hover,
.token-rebind-log-bottom .registration-task-copy-account:focus-visible {
  border-color: rgba(88, 166, 255, .55);
  background: rgba(88, 166, 255, .12);
  color: #58a6ff;
  outline: none;
}
.token-rebind-log-bottom .registration-task-copy-account.is-copied {
  border-color: rgba(63, 185, 80, .55);
  color: #3fb950;
}
.token-rebind-log-bottom .registration-task-flow {
  min-width: 0;
  gap: 6px;
}
.token-rebind-log-bottom .registration-task-flow-label {
  flex: 0 1 auto;
  min-width: 0;
  max-width: 42%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.token-rebind-log-bottom .registration-task-flow-value {
  flex: 1 1 auto;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.token-rebind-log-bottom .registration-task-state {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.token-rebind-log-bottom .registration-task-state .token-rebind-task-error,
.token-rebind-log-bottom .registration-task-state .token-rebind-task-error summary {
  min-width: 0;
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
