* { box-sizing: border-box; }
    html { min-width: 320px; background: var(--bg); }
    body {
      min-height: 100vh;
      margin: 0;
      overflow-x: hidden;
      background:
        radial-gradient(circle at 10% -10%, rgba(72, 221, 255, .13), transparent 32rem),
        radial-gradient(circle at 90% 5%, rgba(145, 124, 255, .13), transparent 30rem),
        linear-gradient(180deg, #060a14 0%, #050811 55%, #060b15 100%);
      color: var(--text);
      font: 14px/1.5 Inter, ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;
    }
    body::before {
      position: fixed;
      inset: 0;
      z-index: -1;
      background-image:
        linear-gradient(rgba(120, 166, 211, .035) 1px, transparent 1px),
        linear-gradient(90deg, rgba(120, 166, 211, .035) 1px, transparent 1px);
      background-size: 44px 44px;
      mask-image: linear-gradient(to bottom, black, transparent 86%);
      content: "";
      pointer-events: none;
    }
    button, input, select, textarea { font: inherit; }
    button, summary { -webkit-tap-highlight-color: transparent; }
    button {
      min-height: 38px;
      border: 1px solid var(--line);
      border-radius: 10px;
      padding: 9px 14px;
      background: rgba(17, 28, 47, .84);
      color: #dce9f8;
      font-weight: 680;
      cursor: pointer;
      transition: border-color .18s ease, background .18s ease, color .18s ease, transform .18s ease;
    }
    button:hover {
      border-color: rgba(72, 221, 255, .42);
      background: rgba(26, 43, 69, .94);
      color: #fff;
    }
    button:active { transform: translateY(1px); }
    button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible, summary:focus-visible {
      outline: 2px solid rgba(72, 221, 255, .72);
      outline-offset: 2px;
    }
    button.primary {
      border-color: rgba(72, 221, 255, .6);
      background: linear-gradient(135deg, #1a88c9, #3767df);
      color: #fff;
      box-shadow: 0 10px 28px rgba(38, 132, 220, .24), inset 0 1px rgba(255, 255, 255, .2);
    }
    button.primary:hover { background: linear-gradient(135deg, #20a1df, #4779ef); }
    button.danger { color: #ff91a2; }
    button.danger:hover { border-color: rgba(255, 111, 134, .42); background: rgba(105, 29, 48, .22); }
    button.ghost { background: transparent; }
    button.compact { min-height: 34px; padding: 7px 11px; font-size: 12px; }
    button.card-copy-value { min-height: 0; padding: 2px 3px; border: 0; background: transparent; color: inherit; font: inherit; cursor: pointer; }
    button.card-copy-value:hover { color: var(--accent); text-decoration: underline; }
    button:disabled { opacity: .42; cursor: not-allowed; transform: none; }

    input, select, textarea {
      border: 1px solid var(--line);
      border-radius: 10px;
      background: rgba(5, 11, 22, .82);
      color: var(--text);
    }
    input, select { min-height: 38px; padding: 8px 10px; }
    input::placeholder, textarea::placeholder { color: #52637a; }
    textarea {
      width: 100%;
      min-height: 178px;
      resize: vertical;
      padding: 14px;
      font: 12px/1.65 ui-monospace, SFMono-Regular, Consolas, monospace;
    }
    .hidden { display: none !important; }
    .shell { width: min(1600px, 100%); margin: 0 auto; padding: 24px; }
    .eyebrow {
      color: var(--cyan);
      font: 700 10px/1.2 ui-monospace, SFMono-Regular, Consolas, monospace;
      letter-spacing: .24em;
      text-transform: uppercase;
    }
    .hint { margin: 7px 0 14px; color: var(--muted); font-size: 12px; }
    .actions { display: flex; flex-wrap: wrap; align-items: center; gap: 9px; }

    .command-header {
      position: relative;
      display: grid;
      grid-template-columns: minmax(280px, 1fr) auto;
      gap: 22px;
      overflow: hidden;
      border: 1px solid var(--line);
      border-radius: 24px;
      padding: 24px;
      background: linear-gradient(135deg, rgba(14, 23, 41, .96), rgba(8, 15, 29, .88));
      box-shadow: var(--shadow);
    }
    .command-header::after {
      position: absolute;
      top: 0;
      right: 8%;
      width: 230px;
      height: 1px;
      background: linear-gradient(90deg, transparent, var(--cyan), transparent);
      content: "";
      box-shadow: 0 0 22px var(--cyan);
    }
    .brand { display: flex; align-items: center; gap: 16px; min-width: 0; }
    .brand-mark {
      position: relative;
      flex: 0 0 48px;
      width: 48px;
      height: 48px;
      border: 1px solid rgba(72, 221, 255, .42);
      border-radius: 14px;
      background:
        linear-gradient(135deg, rgba(72, 221, 255, .18), transparent 48%),
        rgba(8, 17, 31, .9);
      box-shadow: inset 0 0 18px rgba(72, 221, 255, .08), 0 0 24px rgba(72, 221, 255, .08);
    }
    .brand-mark::before, .brand-mark::after {
      position: absolute;
      border: 1px solid var(--cyan);
      content: "";
    }
    .brand-mark::before { inset: 12px; transform: rotate(45deg); }
    .brand-mark::after { inset: 18px; border-color: var(--violet); background: var(--violet); box-shadow: 0 0 14px var(--violet); }
    .brand h1 { margin: 5px 0 2px; font-size: clamp(24px, 3vw, 34px); line-height: 1.1; letter-spacing: -.035em; }
    .brand p { margin: 0; color: var(--muted); font-size: 12px; }
    .header-side { display: grid; justify-items: end; align-content: space-between; gap: 18px; }
    .system-meta { display: flex; align-items: center; gap: 8px; }
    .status-chip {
      display: inline-flex;
      align-items: center;
      gap: 7px;
      min-height: 30px;
      border: 1px solid var(--line);
      border-radius: 999px;
      padding: 5px 10px;
      background: rgba(7, 14, 27, .7);
      color: #b9c8da;
      font: 700 11px/1.2 ui-monospace, SFMono-Regular, Consolas, monospace;
    }
    .status-chip::before {
      width: 6px;
      height: 6px;
      border-radius: 50%;
      background: var(--cyan);
      box-shadow: 0 0 10px var(--cyan);
      content: "";
    }
    .command-deck { display: flex; flex-wrap: wrap; justify-content: flex-end; align-items: end; gap: 8px; }
    .control {
      display: grid;
      gap: 5px;
      color: var(--muted);
      font-size: 10px;
      letter-spacing: .08em;
      text-transform: uppercase;
    }
    .control input { width: 84px; }
    .control select { min-width: 74px; }
    .stats {
      display: grid;
      grid-template-columns: repeat(8, minmax(118px, 1fr));
      gap: 10px;
      margin: 16px 0;
    }
    .stat {
      position: relative;
      min-height: 116px;
      overflow: hidden;
      border: 1px solid var(--line);
      border-radius: 16px;
      padding: 15px;
      background: linear-gradient(145deg, rgba(15, 25, 44, .92), rgba(9, 16, 30, .76));
    }
    .stat::after {
      position: absolute;
      inset: auto -22px -42px auto;
      width: 90px;
      height: 90px;
      border-radius: 50%;
      background: var(--stat-glow, rgba(95, 140, 255, .13));
      filter: blur(7px);
      content: "";
    }
    .stat[data-tone="cyan"] { --stat-glow: rgba(72, 221, 255, .18); }
    .stat[data-tone="violet"] { --stat-glow: rgba(145, 124, 255, .18); }
    .stat[data-tone="green"] { --stat-glow: rgba(69, 230, 165, .16); }
    .stat[data-tone="amber"] { --stat-glow: rgba(255, 189, 92, .16); }
    .stat[data-tone="red"] { --stat-glow: rgba(255, 111, 134, .17); }
    @media (prefers-reduced-motion: reduce) {
    }
    .stat-top { position: relative; z-index: 1; display: flex; justify-content: space-between; gap: 8px; color: var(--muted); font-size: 11px; }
    .stat-code { font: 700 9px/1.2 ui-monospace, SFMono-Regular, Consolas, monospace; letter-spacing: .12em; opacity: .68; }
    .stat strong { position: relative; z-index: 1; display: block; margin: 8px 0 1px; font-size: 28px; line-height: 1; letter-spacing: -.04em; }
    .stat small { position: relative; z-index: 1; color: #667990; font-size: 10px; }
    .stat.actionable { cursor: pointer; }
    .stat.actionable:hover {
      border-color: var(--line-strong);
      transform: translateY(-2px);
      box-shadow: 0 12px 30px rgba(0, 0, 0, .2), inset 0 0 30px rgba(72, 221, 255, .025);
    }

    .workbench-entry {
      display: flex;
      align-items: center;
      justify-content: center;
      color: inherit;
      font-size: 16px;
      font-weight: 700;
      letter-spacing: 0;
      text-decoration: none;
    }
    .workbench-entry:focus-visible { outline: 2px solid var(--stat-accent); outline-offset: 3px; }
    body.link-workbench-active > .shell,
    body.link-workbench-active > .toast-stack { display: none; }

    .content-stack { display: grid; gap: 16px; }
    .panel {
      overflow: hidden;
      border: 1px solid var(--line);
      border-radius: 20px;
      background: var(--surface);
      box-shadow: 0 18px 50px rgba(0, 0, 0, .2);
    }
    .panel-head {
      display: flex;
      justify-content: space-between;
      align-items: center;
      gap: 16px;
      min-height: 66px;
      border-bottom: 1px solid var(--line);
      padding: 14px 18px;
    }
    .panel-title { display: flex; align-items: center; gap: 11px; min-width: 0; }
    .panel-title::before {
      width: 3px;
      height: 26px;
      border-radius: 99px;
      background: linear-gradient(var(--cyan), var(--blue));
      box-shadow: 0 0 14px rgba(72, 221, 255, .44);
      content: "";
    }
    .panel-title strong { display: block; }
    .panel-title small { display: block; color: var(--muted); font-size: 11px; font-weight: 500; }
    .panel-body { padding: 18px; }
    .panel-meta { display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: 8px; }
    .metric-chip {
      display: inline-flex;
      align-items: center;
      gap: 6px;
      border: 1px solid var(--line);
      border-radius: 999px;
      padding: 5px 9px;
      color: var(--muted);
      font-size: 10px;
    }
    .metric-chip strong { color: #dceaff; font-size: 11px; }

    .table-wrap { overflow: auto; scrollbar-color: #28415e transparent; }
    .task-matrix-scroll {
      max-height: 508px;
      overscroll-behavior: contain;
      scrollbar-gutter: stable;
    }
    .task-matrix-table {
      min-width: 1040px;
      border-collapse: separate;
      border-spacing: 0;
      table-layout: fixed;
      background: rgba(249, 253, 255, .72);
    }
    .task-matrix-table col:nth-child(1) { width: 320px; }
    .task-matrix-table col:nth-child(2) { width: 170px; }
    .task-matrix-table col:nth-child(3) { width: 190px; }
    .task-matrix-table col:nth-child(4) { width: auto; }
    .task-matrix-table col:nth-child(5) { width: 210px; }
    .task-matrix-table th {
      height: 40px;
      border-bottom: 1px solid rgba(45, 163, 211, .22);
      padding: 0 12px;
      background: linear-gradient(180deg, rgba(237, 249, 254, .98), rgba(247, 252, 255, .94));
      color: #64849a;
      font: 700 10px/1.2 ui-monospace, SFMono-Regular, Consolas, monospace;
      letter-spacing: .09em;
    }
    .task-matrix-table td {
      height: 56px;
      border-bottom: 1px solid rgba(58, 137, 181, .09);
      padding: 7px 12px;
      vertical-align: middle;
    }
    .task-matrix-table th:last-child { padding-right: 20px; text-align: right; }
    .task-matrix-table td:last-child { padding-right: 20px; }
    .task-matrix-table .mailbox-record-link {
      display: block;
      width: 100%;
      overflow: hidden;
      color: #285f7f;
      font: 600 12px/1.35 ui-monospace, SFMono-Regular, Consolas, monospace;
      letter-spacing: -.015em;
      text-align: left;
      text-decoration: none;
      text-overflow: ellipsis;
      white-space: nowrap;
    }
    .task-matrix-table .mailbox-record-link:hover { color: #087eae; text-decoration: none; }
    .task-matrix-table .badge {
      position: relative;
      min-height: 22px;
      border: 0 !important;
      border-radius: 3px;
      padding: 3px 5px 3px 15px;
      background: transparent !important;
      box-shadow: none !important;
      font: 700 10px/1.2 ui-monospace, SFMono-Regular, Consolas, monospace;
      letter-spacing: .015em;
    }
    .task-matrix-table .badge::before {
      position: absolute;
      left: 3px;
      width: 6px;
      height: 6px;
      border: 1px solid currentColor;
      background: currentColor;
      content: "";
      opacity: .72;
      transform: rotate(45deg);
    }
    .task-tag-stack { display: flex; flex-wrap: wrap; gap: 8px; white-space: normal; }
    .task-activity-cell { overflow: hidden; }
    .task-activity-content { display: flex; align-items: center; gap: 10px; min-width: 0; }
    .task-activity-content .badge { flex: 0 0 auto; }
    .task-activity-detail {
      min-width: 0;
      overflow: hidden;
      border-left: 1px solid rgba(198, 83, 105, .24);
      padding-left: 10px;
      color: #9b5260;
      font: 500 11px/1.35 "Segoe UI", "Microsoft YaHei UI", sans-serif;
      text-overflow: ellipsis;
      white-space: nowrap;
    }
    .task-actions { display: flex; flex-wrap: nowrap; justify-content: flex-end; gap: 5px; }
    .task-actions button {
      min-height: 27px;
      border-color: rgba(61, 137, 179, .18);
      border-radius: 5px;
      padding: 4px 7px;
      background: rgba(248, 252, 254, .76);
      color: #58788d;
      box-shadow: none;
      font-size: 10px;
      white-space: nowrap;
    }
    .task-actions button:hover { border-color: rgba(20, 145, 196, .38); background: #f2fbff; color: #087eae; transform: none; }
    .task-actions button.danger { color: #bd6877; }
    .task-row td:first-child { border-left: 2px solid rgba(90, 142, 170, .22); }
    .task-row.ready td:first-child, .task-row.registered td:first-child { border-left-color: #35a884; }
    .task-row.running td:first-child { border-left-color: #1aa6d2; }
    .task-row.preparing td:first-child, .task-row.unverified td:first-child { border-left-color: #d69943; }
    .task-row.failed td:first-child, .task-row.rejected td:first-child, .task-row.authorization_pending td:first-child { border-left-color: #d35f73; }
    .task-matrix-table tbody tr:hover { background: linear-gradient(90deg, rgba(34, 164, 211, .07), rgba(34, 164, 211, .015)); }
    table { width: 100%; border-collapse: collapse; }
    th, td { border-bottom: 1px solid rgba(132, 169, 214, .1); padding: 12px; text-align: left; white-space: nowrap; }
    th {
      position: sticky;
      top: 0;
      z-index: 1;
      background: #0d1728;
      color: #70839b;
      font: 700 9px/1.2 ui-monospace, SFMono-Regular, Consolas, monospace;
      letter-spacing: .12em;
      text-transform: uppercase;
    }
    tbody tr { transition: background .15s ease; }
    tbody tr:hover { background: rgba(72, 221, 255, .035); }
    td .hint { max-width: 270px; overflow: hidden; text-overflow: ellipsis; margin: 4px 0 0; }
    .empty { padding: 44px 20px; color: var(--muted); text-align: center; }
    .badge {
      display: inline-flex;
      align-items: center;
      border: 1px solid transparent;
      border-radius: 999px;
      padding: 4px 8px;
      background: rgba(112, 131, 155, .12);
      color: #9eb0c4;
      font: 700 10px/1.2 ui-monospace, SFMono-Regular, Consolas, monospace;
    }
    .badge.verified, .badge.ready { border-color: rgba(69, 230, 165, .18); background: rgba(69, 230, 165, .09); color: var(--green); }
    .badge.registered { border-color: rgba(145, 124, 255, .18); background: rgba(145, 124, 255, .09); color: var(--violet); }
    .badge.failed, .badge.rejected, .badge.scrap { border-color: rgba(255, 111, 134, .18); background: rgba(255, 111, 134, .09); color: var(--red); }
    .badge.unverified, .badge.preparing, .badge.authorization_pending { border-color: rgba(255, 189, 92, .18); background: rgba(255, 189, 92, .09); color: var(--amber); }
    .badge.running { border-color: rgba(72, 221, 255, .18); background: rgba(72, 221, 255, .09); color: var(--cyan); }
    .logs {
      height: 220px;
      overflow: auto;
      margin: 0;
      border: 1px solid rgba(72, 221, 255, .1);
      border-radius: 12px;
      padding: 15px;
      background: #050a12;
      color: #a9bfd3;
      font: 12px/1.65 ui-monospace, SFMono-Regular, Consolas, monospace;
      white-space: pre-wrap;
    }

    .modal {
      position: fixed;
      inset: 0;
      z-index: 20;
      display: grid;
      place-items: center;
      overflow: auto;
      padding: 20px;
      background: rgba(1, 5, 12, .76);
    }
    .modal-card {
      width: min(520px, 100%);
      max-height: min(92vh, 900px);
      overflow: auto;
      border: 1px solid rgba(111, 164, 214, .24);
      border-radius: 20px;
      background: linear-gradient(155deg, #101b2f, #091220 70%);
      box-shadow: 0 35px 100px rgba(0, 0, 0, .55), inset 0 1px rgba(255, 255, 255, .035);
    }
    .modal-wide { width: min(920px, 100%); }
    .account-modal-card { width: min(1040px, 100%); }
    .modal-head {
      position: sticky;
      top: 0;
      z-index: 4;
      display: flex;
      justify-content: space-between;
      align-items: center;
      gap: 16px;
      border-bottom: 1px solid var(--line);
      padding: 17px 20px;
      background: rgba(12, 22, 39, .94);
    }
    .modal-title strong { display: block; font-size: 16px; }
    .modal-title small { display: block; margin-top: 2px; color: var(--muted); font-size: 11px; }
    .modal-body { padding: 20px; }
    .resource-summary {
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 9px;
      margin-bottom: 16px;
    }
    .resource-metric {
      border: 1px solid var(--line);
      border-radius: 13px;
      padding: 12px;
      background: rgba(6, 13, 26, .55);
    }
    .resource-metric span { display: block; color: var(--muted); font-size: 10px; }
    .resource-metric strong { display: block; margin-top: 3px; font-size: 20px; }
    .mail-type-tabs {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 12px;
      margin: 0 0 14px;
    }
    .mail-type-tab {
      display: flex;
      align-items: center;
      gap: 10px;
      min-height: 66px;
      justify-content: space-between;
      padding: 12px 16px;
      border-color: rgba(53, 144, 204, .2);
      background: linear-gradient(135deg, rgba(249, 253, 255, .98), rgba(226, 245, 255, .9));
      color: #3b6e8c;
      box-shadow: 0 9px 24px rgba(72, 151, 198, .08);
    }
    .mail-type-tab span { font-size: 14px; font-weight: 800; }
    .mail-type-tab strong {
      min-width: 34px;
      border-radius: 999px;
      padding: 3px 9px;
      background: rgba(255, 255, 255, .62);
      font-size: 18px;
      line-height: 1.35;
      text-align: center;
    }
    .mail-type-tab.active {
      border-color: rgba(34, 166, 226, .55);
      background: linear-gradient(135deg, #d7f2ff, #eefaff 54%, #fff3d2);
      color: #205c80;
      box-shadow: 0 12px 28px rgba(47, 166, 224, .18), inset 0 0 0 1px rgba(255, 255, 255, .75);
    }
    .email-pool-list {
      display: grid;
      gap: 7px;
      max-height: 210px;
      overflow: auto;
      margin-bottom: 14px;
      padding-right: 3px;
    }
    .email-pool-item {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 10px;
      padding: 10px 12px;
      border: 1px solid rgba(65, 139, 187, .14);
      border-radius: 11px;
      background: linear-gradient(100deg, rgba(255, 255, 255, .98), rgba(239, 249, 255, .84));
      color: #2a526c;
      font-size: 12px;
      font-weight: 700;
    }
    .email-pool-item small { color: #6f93aa; font-size: 10px; font-weight: 700; white-space: nowrap; }
    .module-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
    .module-card {
      border: 1px solid var(--line);
      border-radius: 16px;
      padding: 16px;
      background: rgba(5, 12, 24, .46);
    }
    .module-card h3 { margin: 5px 0 4px; font-size: 15px; }
    .module-card .actions { margin-top: 12px; }
    .proxy-workspace {
      display: grid;
      grid-template-columns: minmax(0, 1fr) 280px;
      gap: 14px;
      align-items: start;
    }
    .proxy-side-stack { display: grid; gap: 14px; align-self: start; }
    .proxy-api-card { min-height: 0; }
    .proxy-api-card .selection-toggle { grid-column: 1 / -1; }
    .proxy-manual-divider { height: 1px; margin: 18px 0; background: rgba(65, 140, 188, .16); }
    .proxy-manual-bottom { display: grid; grid-template-columns: minmax(0, 1fr) minmax(220px, .9fr); gap: 18px; align-items: end; }
    .proxy-manual-bottom h4 { margin: 5px 0 4px; color: #28516c; font-size: 14px; }
    .proxy-manual-actions { display: grid; gap: 9px; }
    .proxy-manual-actions button { width: 100%; }
    #proxy-api-duration-hint, #proxy-auto-api-duration-hint { margin: 0; font-size: 10px; }
    .proxy-compact-card { padding: 15px; }
    .proxy-compact-card .hint { margin-bottom: 12px; }
    .proxy-action-buttons { display: grid; gap: 9px; }
    .proxy-action-buttons button { width: 100%; justify-content: center; }
    .proxy-import-input { min-height: 230px; }
    .extension-card { cursor: pointer; }
    .extension-card:focus-visible { outline: 3px solid rgba(39, 157, 219, .28); outline-offset: 3px; }
    .section-kicker { color: var(--cyan); font: 700 9px/1.2 ui-monospace, SFMono-Regular, Consolas, monospace; letter-spacing: .16em; }
    .field { display: grid; gap: 6px; color: var(--muted); font-size: 11px; }
    .field input, .field select { width: 100%; }
    .inline-field { display: flex; align-items: center; gap: 8px; }
    .inline-field input { width: 90px; }
    .cdk-copy[data-cdk]:not([data-cdk=""]) { cursor:pointer;text-decoration:underline;text-underline-offset:3px }
    @media (max-width:900px) { }
    .generic-channel-tag {
      display: inline-flex;
      align-items: center;
      min-height: 23px;
      margin-top: 7px;
      border: 1px solid rgba(45, 159, 218, .3);
      border-radius: 7px;
      padding: 3px 8px;
      background: rgba(45, 159, 218, .09);
      color: #1c87bc;
      font: 800 10px/1.2 ui-monospace, SFMono-Regular, Consolas, monospace;
    }
    .generic-channel-tag.oa { border-color: rgba(41, 188, 132, .3); background: rgba(41, 188, 132, .09); color: #16875f; }
    @media (max-width: 760px) {
    }
    .danger-zone {
      display: flex;
      justify-content: space-between;
      align-items: center;
      gap: 14px;
      margin-top: 14px;
      border: 1px solid rgba(255, 111, 134, .13);
      border-radius: 13px;
      padding: 12px 14px;
      background: rgba(83, 20, 39, .08);
    }
    .danger-zone strong { display: block; font-size: 12px; }
    .danger-zone small { color: var(--muted); font-size: 10px; }

    .account-view { padding: 18px 20px 20px; }
    .account-toolbar {
      display: flex;
      align-items: center;
      flex-wrap: wrap;
      gap: 8px;
      border: 1px solid var(--line);
      border-radius: 14px;
      padding: 10px;
      background: rgba(5, 12, 24, .5);
    }
    .account-recovery-panel {
      flex: 0 0 auto;
      margin-bottom: 10px;
      border: 1px solid rgba(223, 93, 115, .18);
      border-radius: 14px;
      padding: 12px;
      background: rgba(83, 20, 39, .055);
    }
    .account-recovery-modal-card { width: min(720px, 100%); }
    .account-recovery-modal-card .account-recovery-panel { margin: 0; }
    .account-recovery-form {
      display: grid;
      grid-template-columns: minmax(0, 1fr) auto;
      gap: 8px;
      align-items: stretch;
    }
    .account-recovery-heading { grid-column: 1 / -1; }
    .account-recovery-heading strong { display: block; font-size: 12px; }
    .account-recovery-heading small { display: block; margin-top: 3px; color: var(--muted); font-size: 10px; }
    .account-recovery-query { min-height: 62px; resize: vertical; }
    .account-recovery-result {
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      gap: 10px;
      margin-top: 9px;
      border: 1px solid var(--line);
      border-radius: 11px;
      padding: 10px;
      background: linear-gradient(100deg, rgba(250, 254, 255, .98), rgba(225, 244, 252, .96));
      border-color: rgba(55, 139, 187, .32);
      box-shadow: inset 0 1px rgba(255, 255, 255, .92), 0 5px 16px rgba(43, 116, 159, .09);
    }
    .account-recovery-result .account-identity { flex: 1 1 auto; }
    .account-recovery-result .account-identity strong { color: #123f59; }
    .account-recovery-result .account-identity small { color: #41677e; }
    .account-recovery-result .account-copy-actions { flex: 0 0 auto; }
    .account-recovery-result button.account-copy:not(.copied) {
      border-color: rgba(41, 116, 157, .36);
      background: rgba(246, 252, 255, .96);
      color: #245873;
      -webkit-text-fill-color: #245873;
      text-shadow: none;
    }
    .account-recovery-match-list { display: grid; width: 100%; gap: 7px; }
    .account-recovery-match { width: 100%; justify-content: space-between; text-align: left; }
    .toolbar-spacer { flex: 1 1 20px; }
    .selection-toggle {
      display: inline-flex;
      align-items: center;
      gap: 7px;
      min-height: 34px;
      color: #a8b8ca;
      font-size: 11px;
      cursor: pointer;
    }
    .selection-toggle input { min-height: 0; accent-color: var(--cyan); }
    .compact-field { display: flex; align-items: center; gap: 6px; color: var(--muted); font-size: 10px; }
    .compact-field select { min-height: 34px; padding: 6px 9px; }
    .compact-field input[type="number"] { width: 76px; min-height: 34px; padding: 6px 9px; }
    .account-list {
      display: grid;
      gap: 8px;
      max-height: 490px;
      overflow: auto;
      margin-top: 12px;
      padding-right: 3px;
    }
    .account-item {
      display: grid;
      grid-template-columns: auto minmax(0, 1fr) auto auto;
      align-items: center;
      gap: 11px;
      min-height: 55px;
      border: 1px solid var(--line);
      border-radius: 12px;
      padding: 10px 12px;
      background: rgba(10, 18, 32, .68);
      cursor: pointer;
    }
    .account-item:hover { border-color: rgba(72, 221, 255, .28); }
    .account-item input { grid-column: 1; min-height: 0; accent-color: var(--cyan); }
    .account-identity { min-width: 0; overflow: hidden; }
    .account-identity strong { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 12px; }
    .account-identity small { display: block; margin-top: 2px; color: #5e728a; font: 9px/1.2 ui-monospace, SFMono-Regular, Consolas, monospace; letter-spacing: .08em; }
    .account-copy-actions { display: inline-flex; align-items: center; gap: 5px; }
    .account-status-badges {
      display: inline-flex;
      align-items: center;
      justify-self: end;
      gap: 6px;
      white-space: nowrap;
    }
    button.account-copy {
      min-height: 25px;
      border-radius: 7px;
      padding: 4px 7px;
      background: rgba(7, 15, 28, .82);
      background-image: linear-gradient(90deg, #fedfce 0%, #fecfbd 52%, #eec4b4 100%);
      background-clip: text;
      color: transparent;
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
      font: 750 9px/1 ui-monospace, SFMono-Regular, Consolas, monospace;
      letter-spacing: .06em;
    }
    button.account-copy:hover { border-color: rgba(254, 207, 189, .45); }
    button.account-copy.copied {
      border-color: rgba(219, 247, 253, .76);
      background: linear-gradient(105deg, #dbf7fd 0%, #7be6f6 52%, #dcd388 100%);
      background-clip: border-box;
      color: #07131b;
      -webkit-background-clip: border-box;
      -webkit-text-fill-color: #07131b;
      box-shadow: 0 0 13px rgba(123, 230, 246, .38), 0 0 20px rgba(220, 211, 136, .14), inset 0 1px rgba(255, 255, 255, .68);
      filter: none;
    }
    .account-plus-indicator {
      display: inline-flex;
      align-items: center;
      min-height: 25px;
      border: 1px solid rgba(123, 230, 246, .76);
      border-radius: 7px;
      padding: 4px 8px;
      background: linear-gradient(105deg, #dbf7fd 0%, #7be6f6 52%, #dcd388 100%);
      color: #07131b;
      box-shadow: 0 0 13px rgba(123, 230, 246, .38), 0 0 20px rgba(220, 211, 136, .14), inset 0 1px rgba(255, 255, 255, .68);
      font: 750 9px/1 ui-monospace, SFMono-Regular, Consolas, monospace;
      letter-spacing: .06em;
    }
    .account-plus-indicator.dim {
      border-color: rgba(105, 122, 143, .42);
      background: #d7dde5;
      color: #718096;
      box-shadow: none;
      opacity: .62;
    }
    button.mailbox-record-link {
      min-height: 0;
      padding: 0;
      border: 0;
      background: transparent;
      box-shadow: none;
      color: #2a617f;
      font: inherit;
      text-align: left;
      text-decoration: underline;
      text-decoration-color: rgba(42, 97, 127, .3);
      text-underline-offset: 3px;
    }
    button.mailbox-record-link:hover { color: #1484bd; transform: none; }
    .mailbox-record-content { min-height: 150px; resize: vertical; font-family: ui-monospace, SFMono-Regular, Consolas, monospace; }
    .action-menu { position: relative; }
    .action-menu summary {
      display: flex;
      align-items: center;
      min-height: 38px;
      border: 1px solid var(--line);
      border-radius: 10px;
      padding: 8px 13px;
      background: rgba(17, 28, 47, .84);
      color: #dce9f8;
      font-weight: 680;
      cursor: pointer;
      list-style: none;
    }
    .action-menu summary::-webkit-details-marker { display: none; }
    .action-menu[open] summary { border-color: var(--line-strong); }
    .menu-popover {
      position: absolute;
      top: calc(100% + 8px);
      right: 0;
      z-index: 8;
      display: grid;
      width: 230px;
      border: 1px solid rgba(111, 164, 214, .25);
      border-radius: 13px;
      padding: 8px;
      background: #101b2e;
      box-shadow: 0 20px 55px rgba(0, 0, 0, .46);
    }
    .menu-popover button { width: 100%; border-color: transparent; background: transparent; text-align: left; }
    .menu-popover .compact-field { justify-content: space-between; border-bottom: 1px solid var(--line); margin-bottom: 5px; padding: 7px; }
    .menu-divider { height: 1px; margin: 5px 3px; background: var(--line); }
    .phone-settings-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
    .form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
    .form-grid label { display: grid; gap: 6px; color: var(--muted); font-size: 11px; }
    .form-grid input, .form-grid select { width: 100%; }
    .form-grid .full { grid-column: 1 / -1; }
    .settings-note {
      border: 1px solid rgba(72, 221, 255, .13);
      border-radius: 14px;
      padding: 15px;
      background: rgba(72, 221, 255, .035);
    }
    .settings-note strong { display: block; margin-bottom: 6px; }
    .settings-note p { margin: 0; color: var(--muted); font-size: 11px; }
    .settings-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 8px; margin-top: 16px; }
    .toast-stack {
      position: fixed;
      top: 18px;
      right: 18px;
      z-index: 40;
      display: grid;
      gap: 8px;
      max-width: min(420px, calc(100vw - 36px));
    }
    .toast {
      border: 1px solid rgba(72, 221, 255, .24);
      border-radius: 11px;
      padding: 11px 14px;
      background: rgba(14, 27, 46, .96);
      color: var(--text);
      box-shadow: 0 14px 42px rgba(0, 0, 0, .4);
      animation: toast-in .18s ease-out;
    }
    .toast.out { opacity: 0; transform: translateY(-5px); transition: .18s; }
    @keyframes toast-in { from { opacity: 0; transform: translateY(-5px); } }

    /* Visual system: blue-sky daylight / soft cloud */
    :root {
      color-scheme: light;
      --bg: #eaf7ff;
      --surface: rgba(255, 255, 255, .84);
      --line: rgba(64, 139, 189, .18);
      --line-strong: rgba(30, 145, 218, .48);
      --text: #20435d;
      --muted: #6c8aa0;
      --cyan: #22a8dc;
      --blue: #4c8ff2;
      --violet: #7f8ee8;
      --green: #2da77f;
      --amber: #df9233;
      --red: #df5d73;
      --shadow: 0 24px 68px rgba(70, 140, 184, .16);
    }
    html { background: #eaf7ff; }
    body {
      position: relative;
      isolation: isolate;
      background:
        radial-gradient(circle at 84% 0%, rgba(255, 255, 255, .98) 0, rgba(255, 255, 255, .56) 12rem, transparent 28rem),
        linear-gradient(180deg, #d9f1ff 0%, #e8f7ff 34%, #f7fcff 68%, #eef8ff 100%);
      color: var(--text);
      font-family: "Microsoft YaHei UI", "Segoe UI Variable Text", "PingFang SC", "Noto Sans CJK SC", sans-serif;
      font-size: 14px;
      font-weight: 500;
      letter-spacing: .004em;
    }
    body::before {
      z-index: 0;
      background-image:
        radial-gradient(circle at 82% 7%, rgba(255, 232, 158, .42) 0 3.5rem, rgba(255, 242, 199, .18) 8rem, transparent 16rem),
        linear-gradient(rgba(73, 157, 209, .04) 1px, transparent 1px),
        linear-gradient(90deg, rgba(73, 157, 209, .04) 1px, transparent 1px);
      background-size: auto, 72px 72px, 72px 72px;
      mask-image: linear-gradient(to bottom, black 0%, rgba(0, 0, 0, .38) 62%, transparent 94%);
      opacity: .7;
    }
    body::after {
      position: fixed;
      inset: 0;
      z-index: 0;
      background:
        radial-gradient(ellipse 250px 78px at 10% 12%, rgba(255, 255, 255, .76) 0 56%, transparent 59%),
        radial-gradient(ellipse 180px 72px at 22% 9%, rgba(255, 255, 255, .58) 0 55%, transparent 59%),
        radial-gradient(ellipse 270px 86px at 93% 24%, rgba(255, 255, 255, .7) 0 55%, transparent 59%),
        radial-gradient(ellipse 190px 62px at 78% 29%, rgba(255, 255, 255, .46) 0 56%, transparent 60%),
        radial-gradient(ellipse 220px 70px at 36% 62%, rgba(255, 255, 255, .34) 0 55%, transparent 60%);
      opacity: .58;
      content: "";
      pointer-events: none;
    }
    .shell, .toast-stack { position: relative; z-index: 1; }

    button {
      border-color: rgba(60, 133, 180, .2);
      border-radius: 12px;
      background: linear-gradient(180deg, rgba(255, 255, 255, .96), rgba(235, 247, 255, .96));
      color: #315f7d;
      font-weight: 700;
      box-shadow: 0 7px 18px rgba(69, 135, 176, .1), inset 0 1px rgba(255, 255, 255, .92);
      letter-spacing: .015em;
    }
    button:hover {
      border-color: rgba(31, 145, 215, .42);
      background: linear-gradient(180deg, #ffffff, #e4f5ff);
      color: #1479b2;
      box-shadow: 0 10px 24px rgba(55, 137, 190, .17), inset 0 1px #fff;
      transform: translateY(-1px);
    }
    button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible, summary:focus-visible {
      outline-color: rgba(37, 155, 222, .58);
    }
    button.primary {
      border-color: rgba(40, 143, 211, .44);
      background: linear-gradient(135deg, #52c7ed 0%, #349be2 48%, #5f86ee 100%);
      color: #fff;
      box-shadow: 0 12px 28px rgba(52, 147, 211, .28), inset 0 1px rgba(255, 255, 255, .42);
    }
    button.primary:hover {
      background: linear-gradient(135deg, #62d2f3 0%, #3ca6e9 48%, #6d94f4 100%);
      color: #fff;
      box-shadow: 0 15px 34px rgba(52, 147, 211, .34), inset 0 1px rgba(255, 255, 255, .5);
    }
    button.danger { color: #cf5269; }
    button.danger:hover { border-color: rgba(223, 93, 115, .28); background: #fff1f4; color: #bf4059; }
    button.ghost { background: rgba(255, 255, 255, .66); }
    button:disabled { opacity: .48; }
    input, select, textarea {
      border-color: rgba(67, 137, 182, .2);
      background: rgba(250, 253, 255, .9);
      color: #234963;
      box-shadow: inset 0 1px 2px rgba(62, 126, 168, .045), 0 1px rgba(255, 255, 255, .9);
    }
    input::placeholder, textarea::placeholder { color: #9ab2c3; }
    input:focus, select:focus, textarea:focus {
      border-color: rgba(38, 151, 219, .52);
      background: #fff;
      box-shadow: 0 0 0 4px rgba(70, 177, 232, .12), 0 8px 22px rgba(69, 139, 183, .08);
    }
    select option { background: #fff; color: #234963; }
    .hint, .control, .field, .compact-field { color: var(--muted); }

    .command-header {
      border-color: rgba(67, 145, 196, .2);
      background:
        radial-gradient(circle at 8% 0%, rgba(187, 232, 255, .66), transparent 17rem),
        linear-gradient(135deg, rgba(255, 255, 255, .92), rgba(239, 249, 255, .84) 68%);
      box-shadow: 0 18px 42px rgba(73, 143, 187, .13), inset 0 1px rgba(255, 255, 255, .98);
    }
    .command-header::before {
      position: absolute;
      inset: auto auto -84px -28px;
      width: 280px;
      height: 160px;
      border-radius: 50%;
      background: rgba(107, 203, 242, .13);
      filter: blur(10px);
      content: "";
      pointer-events: none;
    }
    .command-header::after {
      top: 0;
      right: 5%;
      width: 42%;
      height: 4px;
      border-radius: 0 0 99px 99px;
      background: linear-gradient(90deg, transparent, #5dcced, #6c91ef, transparent);
      box-shadow: 0 6px 20px rgba(74, 158, 218, .18);
    }
    .brand-mark {
      flex-basis: 54px;
      width: 54px;
      height: 54px;
      border-color: rgba(41, 145, 208, .28);
      border-radius: 18px;
      background: linear-gradient(145deg, #79d7f4, #55a9e9 60%, #748fec);
      box-shadow: 0 13px 26px rgba(55, 151, 211, .24), inset 0 1px rgba(255, 255, 255, .5);
    }
    .brand-mark::before {
      inset: auto auto 13px 13px;
      width: 28px;
      height: 12px;
      border: 0;
      border-radius: 999px;
      background: #fff;
      box-shadow: -5px -5px 0 -1px rgba(255, 255, 255, .96), 7px -8px 0 -2px rgba(255, 255, 255, .94);
      transform: none;
    }
    .brand-mark::after {
      inset: 9px 9px auto auto;
      width: 9px;
      height: 9px;
      border: 0;
      border-radius: 50%;
      background: #ffe08a;
      box-shadow: 0 0 0 5px rgba(255, 232, 154, .22);
    }
    .brand h1 {
      background: linear-gradient(92deg, #285878 0%, #238fc8 48%, #597fd8 100%);
      background-clip: text;
      color: transparent;
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
      font-family: "Microsoft YaHei UI", "Segoe UI Variable Display", sans-serif;
      font-weight: 820;
      letter-spacing: -.045em;
      text-shadow: none;
    }
    .brand p { color: #6c8da4; font-size: 12px; letter-spacing: .025em; }
    .eyebrow {
      display: inline-flex;
      border: 1px solid rgba(47, 154, 216, .18);
      border-radius: 999px;
      padding: 5px 9px;
      background: rgba(224, 246, 255, .78);
      color: #288bc2;
      -webkit-text-fill-color: currentColor;
      font-family: "Segoe UI", "Microsoft YaHei UI", sans-serif;
      font-weight: 800;
      letter-spacing: .16em;
    }
    .status-chip {
      border-color: rgba(62, 138, 187, .18);
      background: rgba(255, 255, 255, .72);
      color: #587b93;
      box-shadow: 0 6px 16px rgba(61, 132, 177, .08), inset 0 1px #fff;
    }
    .status-chip::before { box-shadow: 0 0 8px rgba(34, 168, 220, .24); }

    .stat {
      --stat-accent: #35a8df;
      --stat-soft: rgba(74, 180, 229, .18);
      border-color: rgba(68, 143, 191, .17);
      background: linear-gradient(145deg, rgba(255, 255, 255, .95), rgba(238, 249, 255, .9));
      box-shadow: 0 15px 36px rgba(74, 143, 187, .12), inset 0 1px #fff;
      transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
    }
    .stat::before {
      position: absolute;
      inset: 0 0 auto;
      height: 4px;
      border-radius: 16px 16px 0 0;
      background: linear-gradient(90deg, var(--stat-accent), rgba(255, 255, 255, 0));
      content: "";
    }
    .stat::after { background: var(--stat-soft); opacity: .9; filter: blur(10px); }
    .stat[data-tone="cyan"] { --stat-accent: #25a9df; --stat-soft: rgba(37, 169, 223, .2); }
    .stat[data-tone="violet"] { --stat-accent: #778be6; --stat-soft: rgba(119, 139, 230, .18); }
    .stat[data-tone="green"] { --stat-accent: #3bb48d; --stat-soft: rgba(59, 180, 141, .17); }
    .stat[data-tone="amber"] { --stat-accent: #eca449; --stat-soft: rgba(236, 164, 73, .17); }
    .stat[data-tone="red"] { --stat-accent: #e46f82; --stat-soft: rgba(228, 111, 130, .17); }
    .stat-top { color: #66869c; font-weight: 650; }
    .stat-code { color: var(--stat-accent); opacity: .9; }
    .stat strong {
      color: #234a65;
      font-family: "Segoe UI Variable Display", "Microsoft YaHei UI", sans-serif;
      font-weight: 780;
      text-shadow: none;
    }
    .stat small { color: #7f9aad; }
    .stat.actionable:hover {
      border-color: rgba(40, 150, 216, .32);
      transform: translateY(-4px);
      box-shadow: 0 20px 42px rgba(60, 137, 185, .18), inset 0 1px #fff;
    }

    .panel {
      position: relative;
      border-color: rgba(67, 142, 190, .17);
      background: rgba(255, 255, 255, .85);
      box-shadow: 0 22px 58px rgba(71, 139, 181, .13), inset 0 1px #fff;
    }
    .panel::after {
      position: absolute;
      inset: 0 10% auto;
      height: 1px;
      background: linear-gradient(90deg, transparent, rgba(65, 171, 225, .45), transparent);
      content: "";
      pointer-events: none;
    }
    .panel-head {
      border-bottom-color: rgba(72, 146, 193, .13);
      background: linear-gradient(90deg, rgba(225, 246, 255, .72), rgba(255, 255, 255, .38) 62%);
    }
    .panel-title::before {
      width: 11px;
      height: 11px;
      border: 2px solid #fff;
      border-radius: 50%;
      background: linear-gradient(145deg, #55c5eb, #638ce9);
      box-shadow: 0 0 0 5px rgba(75, 174, 226, .12);
    }
    .panel-title strong, .modal-title strong { color: #244b66; font-weight: 780; letter-spacing: -.012em; }
    .panel-title small { color: #7893a6; }
    .metric-chip {
      border-color: rgba(65, 140, 188, .15);
      background: rgba(255, 255, 255, .76);
      color: #7290a4;
      box-shadow: 0 4px 12px rgba(65, 132, 175, .06), inset 0 1px #fff;
    }
    .metric-chip strong { color: #2d5c7a; }
    .table-wrap, .account-list, .modal-card { scrollbar-color: #a5cee5 transparent; }
    *::-webkit-scrollbar { width: 8px; height: 8px; }
    *::-webkit-scrollbar-track { background: transparent; }
    *::-webkit-scrollbar-thumb { border: 2px solid transparent; border-radius: 999px; background: #add3e7; background-clip: padding-box; }
    *::-webkit-scrollbar-thumb:hover { background: #83bddc; background-clip: padding-box; }
    th {
      background: rgba(235, 248, 255, .96);
      color: #65859b;
    }
    th, td { border-bottom-color: rgba(72, 143, 189, .1); }
    td { color: #315872; }
    tbody tr:hover { background: linear-gradient(90deg, rgba(104, 199, 237, .11), rgba(229, 246, 255, .28), transparent); }
    .empty { color: #7895a9; }
    .logs {
      border-color: rgba(56, 150, 210, .15);
      background:
        linear-gradient(rgba(69, 160, 214, .055) 1px, transparent 1px),
        linear-gradient(145deg, rgba(247, 252, 255, .96), rgba(232, 247, 255, .92));
      background-size: 100% 24px, auto;
      color: #466b83;
      box-shadow: inset 0 1px 8px rgba(75, 143, 184, .06);
    }

    .modal {
      background:
        radial-gradient(circle at 50% 8%, rgba(255, 255, 255, .7), transparent 30rem),
        rgba(178, 221, 243, .78);
    }
    .modal-card {
      border-color: rgba(56, 142, 197, .2);
      background: rgba(250, 253, 255, .96);
      box-shadow: 0 34px 90px rgba(61, 124, 165, .25), inset 0 1px #fff;
    }
    .modal-head {
      border-bottom-color: rgba(66, 142, 191, .14);
      background: linear-gradient(90deg, rgba(235, 249, 255, .98), rgba(255, 255, 255, .96));
      box-shadow: 0 8px 24px rgba(69, 135, 176, .08);
    }
    .resource-metric, .module-card, .settings-note {
      border-color: rgba(65, 140, 188, .16);
      background: linear-gradient(145deg, rgba(255, 255, 255, .96), rgba(237, 249, 255, .86));
      box-shadow: 0 10px 25px rgba(69, 139, 183, .08), inset 0 1px #fff;
    }
    .resource-metric:nth-child(3n+2) { background: linear-gradient(145deg, #fff, rgba(240, 244, 255, .9)); }
    .resource-metric:nth-child(3n+3) { background: linear-gradient(145deg, #fff, rgba(238, 252, 248, .9)); }
    .resource-metric span { color: #7894a7; }
    .resource-metric strong { color: #2b5874; }
    .module-card {
      position: relative;
      overflow: hidden;
      transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
    }
    .module-card::before {
      position: absolute;
      inset: 0 0 auto;
      height: 3px;
      background: linear-gradient(90deg, #53c2e9, #7292eb, transparent 86%);
      content: "";
    }
    .module-card::after {
      position: absolute;
      right: -34px;
      bottom: -48px;
      width: 110px;
      height: 110px;
      border-radius: 50%;
      background: rgba(89, 190, 231, .1);
      content: "";
      pointer-events: none;
    }
    .module-card > * { position: relative; z-index: 1; }
    .module-card:nth-child(even)::before { background: linear-gradient(90deg, #75a0ef, #8aa4ec, transparent 86%); }
    .module-card:nth-child(even)::after { background: rgba(116, 143, 230, .09); }
    .module-card:hover {
      border-color: rgba(42, 151, 218, .3);
      box-shadow: 0 15px 32px rgba(62, 137, 183, .13), inset 0 1px #fff;
      transform: translateY(-2px);
    }
    .module-card h3, .settings-note strong { color: #28516c; }
    .section-kicker {
      color: #268fc7;
      -webkit-text-fill-color: currentColor;
      font-family: "Segoe UI", "Microsoft YaHei UI", sans-serif;
      font-weight: 800;
    }
    .danger-zone { border-color: rgba(223, 93, 115, .18); background: rgba(255, 239, 243, .72); }
    .danger-zone strong { color: #a94659; }

    .account-toolbar {
      border-color: rgba(64, 140, 189, .16);
      background: linear-gradient(180deg, rgba(239, 250, 255, .94), rgba(250, 253, 255, .94));
      box-shadow: 0 8px 22px rgba(68, 136, 178, .07), inset 0 1px #fff;
    }
    .selection-toggle { color: #5f8096; }
    .account-item {
      border-color: rgba(65, 139, 187, .14);
      background: linear-gradient(100deg, rgba(255, 255, 255, .98), rgba(239, 249, 255, .84));
      box-shadow: none;
      content-visibility: auto;
      contain-intrinsic-size: auto 55px;
      transition: none;
    }
    .account-item:hover {
      border-color: rgba(39, 151, 218, .3);
      background: linear-gradient(100deg, rgba(255, 255, 255, .98), rgba(239, 249, 255, .84));
      box-shadow: none;
      transform: none;
    }
    .account-identity strong { color: #2a526c; }
    .account-identity small { color: #849fb1; }
    button.account-copy {
      border-color: rgba(65, 142, 190, .24);
      background-color: rgba(224, 244, 252, .94);
      box-shadow: 0 4px 12px rgba(65, 132, 174, .08), inset 0 1px rgba(255, 255, 255, .9);
      text-shadow: 0 1px 1px rgba(124, 76, 66, .14);
      filter: none;
      transition: none;
    }
    button.account-copy.copied {
      border-color: rgba(122, 211, 232, .72);
      background: linear-gradient(105deg, #dbf7fd 0%, #7be6f6 52%, #dcd388 100%);
      color: #174154;
      -webkit-text-fill-color: #174154;
      box-shadow: 0 7px 18px rgba(91, 181, 213, .22), 0 0 0 3px rgba(123, 230, 246, .13), inset 0 1px rgba(255, 255, 255, .78);
      text-shadow: none;
    }
    .badge {
      background: rgba(110, 153, 180, .1);
      color: #66869b;
      box-shadow: inset 0 1px rgba(255, 255, 255, .72);
    }
    .badge.verified, .badge.ready { border-color: rgba(45, 167, 127, .22); background: rgba(45, 167, 127, .1); color: #238363; }
    .badge.registered { border-color: rgba(127, 142, 232, .2); background: rgba(127, 142, 232, .1); color: #6371c6; }
    .badge.failed, .badge.rejected, .badge.scrap { border-color: rgba(223, 93, 115, .2); background: rgba(223, 93, 115, .09); color: #c54e63; }
    .badge.unverified, .badge.preparing, .badge.authorization_pending { border-color: rgba(223, 146, 51, .22); background: rgba(223, 146, 51, .1); color: #b97728; }
    .badge.running { border-color: rgba(34, 168, 220, .22); background: rgba(34, 168, 220, .1); color: #1787b4; }
    .action-menu summary {
      border-color: rgba(60, 133, 180, .2);
      background: linear-gradient(180deg, rgba(255, 255, 255, .96), rgba(235, 247, 255, .96));
      color: #315f7d;
      box-shadow: 0 7px 18px rgba(69, 135, 176, .1), inset 0 1px #fff;
    }
    .menu-popover {
      border-color: rgba(57, 144, 199, .2);
      background: rgba(251, 254, 255, .98);
      box-shadow: 0 22px 60px rgba(63, 126, 167, .2), inset 0 1px #fff;
    }
    .menu-popover button { color: #315f7d; }
    .settings-note p, .danger-zone small { color: #718ea2; }
    .toast {
      border-color: rgba(48, 148, 210, .24);
      background: rgba(250, 254, 255, .96);
      color: #28516c;
      box-shadow: 0 16px 42px rgba(65, 131, 173, .2), inset 0 1px #fff;
    }
    .activity-chip {
      border-color: rgba(55, 153, 214, .2);
      background: rgba(255, 255, 255, .82);
      color: #2d627f;
    }
    .activity-chip.busy {
      border-color: rgba(40, 159, 219, .36);
      background: linear-gradient(100deg, rgba(215, 244, 255, .96), rgba(236, 247, 255, .98));
      color: #167eae;
    }
    .account-filterbar {
      display: grid;
      grid-template-columns: minmax(220px, 1fr) auto auto auto;
      align-items: end;
      gap: 9px;
      padding: 0 16px 10px;
    }
    .account-search-field {
      display: grid;
      gap: 4px;
      color: #6c8aa0;
      font-size: 11px;
    }
    .account-search-field input { width: 100%; }
    .account-page-summary { align-self: center; white-space: nowrap; }
    .stat { min-height: 96px; }
    .stat strong { font-size: 25px; }
    body.modal-active::before,
    body.modal-active::after,
    body.modal-active .stat::after,
    body.modal-active .command-header::before { display: none; }
    body.modal-active .modal { background: rgba(190, 226, 244, .86); }
    body.modal-active .modal-card { box-shadow: 0 22px 56px rgba(61, 124, 165, .22), inset 0 1px #fff; }
    .task-matrix-scroll tbody tr { content-visibility: auto; contain-intrinsic-size: auto 64px; }
    /* Scrolling profile: keep modal lists responsive even with software compositing. */
    .modal {
      overscroll-behavior: none;
    }
    .modal-card,
    .menu-popover {
      overscroll-behavior: contain;
    }
    .account-modal-card {
      display: flex;
      flex-direction: column;
      overflow: hidden;
    }
    .account-modal-card .account-view {
      display: flex;
      flex: 1 1 auto;
      flex-direction: column;
      min-height: 0;
      overflow: hidden;
    }
    .account-modal-card .account-toolbar {
      flex: 0 0 auto;
    }
    .account-modal-card .menu-popover {
      position: fixed;
      top: auto;
      right: auto;
      bottom: auto;
      left: auto;
      z-index: 30;
      width: min(230px, calc(100vw - 24px));
      overflow-y: auto;
      overscroll-behavior: contain;
      scrollbar-gutter: stable;
    }
    .account-list {
      flex: 1 1 auto;
      min-height: 0;
      max-height: none;
      contain: layout paint;
      overscroll-behavior: contain;
      scrollbar-gutter: stable;
    }
    button.account-copy:hover {
      transform: none;
    }
    button.account-copy:hover:not(.copied) {
      background-color: rgba(224, 244, 252, .94);
      background-image: linear-gradient(90deg, #fedfce 0%, #fecfbd 52%, #eec4b4 100%);
      background-clip: text;
      box-shadow: 0 4px 12px rgba(65, 132, 174, .08), inset 0 1px rgba(255, 255, 255, .9);
      color: transparent;
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
    }
    @media (prefers-reduced-motion: reduce) {
      *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
    }

    @media (max-width: 1180px) {
      .command-header { grid-template-columns: 1fr; }
      .header-side { justify-items: stretch; }
      .system-meta, .command-deck { justify-content: flex-start; }
      .stats { grid-template-columns: repeat(4, minmax(130px, 1fr)); }
    }
    @media (max-width: 760px) {
      .shell { padding: 12px; }
      .command-header { border-radius: 18px; padding: 18px; }
      .brand-mark { flex-basis: 42px; width: 42px; height: 42px; }
      .command-deck { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
      .control input, .control select, .command-deck button { width: 100%; }
      .stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
      .stat { min-height: 104px; }
      .account-filterbar { grid-template-columns: 1fr 1fr; }
      .account-search-field { grid-column: 1 / -1; }
      .panel-head, .modal-head { align-items: flex-start; }
      .panel-meta { justify-content: flex-start; }
      .module-grid, .phone-settings-grid, .form-grid, .proxy-workspace, .proxy-manual-bottom { grid-template-columns: 1fr; }
      .form-grid .full { grid-column: auto; }
      .resource-summary { grid-template-columns: 1fr 1fr; }
      .modal { align-items: end; padding: 8px; }
      .modal-card { width: 100%; max-height: 94vh; border-radius: 18px 18px 10px 10px; }
      .account-recovery-form { grid-template-columns: 1fr; }
      .account-toolbar { align-items: stretch; }
      .toolbar-spacer { display: none; }
      .account-toolbar > button, .account-toolbar > .action-menu { flex: 1 1 auto; }
      .account-item { grid-template-columns: auto minmax(0, 1fr) auto; }
      .account-item input { grid-row: 1 / span 2; }
      .account-copy-actions { grid-column: 2 / 4; grid-row: 2; justify-self: start; }
      .action-menu summary { justify-content: center; }
      .menu-popover { width: min(230px, calc(100vw - 24px)); }
      .danger-zone { align-items: flex-start; flex-direction: column; }
    }
      .phone-access-code-results { max-height: 320px; overflow: auto; border: 1px solid var(--line); border-radius: 13px; }
    .phone-access-code-results table { width: 100%; border-collapse: collapse; font-size: 11px; }
    .phone-access-code-results th, .phone-access-code-results td { padding: 9px 10px; border-bottom: 1px solid var(--line); text-align: left; vertical-align: middle; }

/* Payment link workbench */
.link-workbench { 
  position: relative;
  z-index: 1;
  display: none;
  width: min(1440px, 100%);
  min-height: 100vh;
  margin: 0 auto;
  padding: 24px;
}
.link-workbench { max-width: 1540px; margin: 0 auto; padding-left: 28px; padding-right: 28px; }
.workbench-stage { grid-template-columns: minmax(350px, 430px) minmax(0, 1fr); gap: 22px; }
.workbench-monitor { min-height: 780px; padding: 26px; }
.workbench-record-main span { display: block; }
.record-progress i { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg,#2aa4d7,#39ac86); }
.workbench-log-dialog { width: min(720px, 90vw); border: 1px solid #c9e1ec; border-radius: 14px; padding: 18px; color: #315c77; box-shadow: 0 20px 60px rgba(31,90,120,.25); }
.workbench-log-dialog pre { max-height: 55vh; overflow: auto; white-space: pre-wrap; font: 12px/1.6 ui-monospace,Consolas,monospace; }
.workbench-log-dialog button { float: right; border: 1px solid #b9d9e9; border-radius: 8px; padding: 6px 14px; background: #f4fbfe; color: #237da4; cursor: pointer; }
body.link-workbench-active > .link-workbench { display: block; }
.workbench-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  min-height: 106px;
  border-bottom: 1px solid rgba(59, 136, 184, .2);
  padding: 10px 4px 22px;
}
.workbench-heading { display: flex; align-items: center; gap: 20px; min-width: 0; }
.workbench-back {
  display: inline-flex;
  align-items: center;
  min-height: 42px;
  border: 1px solid rgba(56, 137, 187, .22);
  border-radius: 11px;
  padding: 9px 13px;
  background: rgba(255, 255, 255, .72);
  color: #426d87;
  font-weight: 700;
  text-decoration: none;
  box-shadow: 0 8px 20px rgba(68, 137, 178, .08);
}
.workbench-back:hover { border-color: rgba(32, 146, 213, .45); color: #147eb9; }
.workbench-back:focus-visible { outline: 2px solid rgba(37, 155, 222, .58); outline-offset: 2px; }
.workbench-heading h1 { margin: 0; color: #234f6c; font-size: clamp(24px, 3vw, 36px); line-height: 1.12; letter-spacing: 0; }
.workbench-heading p { margin: 7px 0 0; color: #4e7086; font-size: 13px; }
.workbench-status {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  flex: 0 0 auto;
  min-height: 42px;
  border: 1px solid rgba(62, 138, 187, .18);
  border-radius: 999px;
  padding: 8px 12px;
  background: rgba(255, 255, 255, .76);
  color: #53758c;
  font-weight: 750;
  box-shadow: 0 7px 18px rgba(69, 135, 176, .08);
}
.workbench-status-dot { width: 9px; height: 9px; border-radius: 50%; background: #93aaba; }
.workbench-status[data-phase="preparing"] .workbench-status-dot,
.workbench-status[data-phase="running"] .workbench-status-dot { background: #25a7dd; box-shadow: 0 0 0 5px rgba(37, 167, 221, .13); animation: workbench-pulse 1.4s ease-out infinite; }
.workbench-status[data-phase="succeeded"] .workbench-status-dot { background: #2ca57d; }
.workbench-status[data-phase="failed"] .workbench-status-dot { background: #d9556d; }
.workbench-status[data-phase="stopped"] .workbench-status-dot { background: #d89035; }
@keyframes workbench-pulse { 60%, 100% { box-shadow: 0 0 0 10px rgba(37, 167, 221, 0); } }

.workbench-stage { display: grid; grid-template-columns: minmax(310px, 390px) minmax(0, 1fr); gap: 16px; margin-top: 18px; }
.workbench-setup,
.workbench-monitor {
  min-width: 0;
  border: 1px solid rgba(67, 142, 190, .18);
  border-radius: 16px;
  background: rgba(255, 255, 255, .86);
  box-shadow: 0 18px 45px rgba(71, 139, 181, .12);
}
.workbench-setup { align-self: start; padding: 20px; }
.workbench-monitor { position: relative; min-height: 650px; overflow: hidden; padding: 20px; }
.workbench-section-heading { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; margin-bottom: 18px; }
.workbench-section-heading h2 { margin: 0; color: #2a536d; font-size: 16px; letter-spacing: 0; }
.workbench-section-heading span { color: #55758a; font-size: 11px; font-variant-numeric: tabular-nums; }
.rail-selector { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; margin: 0 0 18px; border: 0; padding: 0; }
.rail-selector legend { grid-column: 1 / -1; margin-bottom: 7px; color: #4f7187; font-size: 12px; font-weight: 650; }
.rail-selector label { position: relative; cursor: pointer; }
.rail-selector input { position: absolute; width: 1px; height: 1px; opacity: 0; }
.rail-selector label > span {
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 68px;
  border: 1px solid rgba(70, 139, 183, .2);
  border-radius: 12px;
  padding: 11px 13px;
  background: #f7fbfe;
  color: #4d7188;
  transition: border-color .18s ease, background .18s ease, box-shadow .18s ease;
}
.rail-selector label:hover > span { border-color: rgba(37, 158, 219, .4); background: #f0f9fe; }
.rail-selector input:checked + span { border-color: #2d9ed6; background: #e8f7fe; box-shadow: inset 0 0 0 1px rgba(45, 158, 214, .18); color: #176f9e; }
.rail-selector input:focus-visible + span { outline: 2px solid rgba(37, 155, 222, .58); outline-offset: 2px; }
.rail-selector strong { font-size: 14px; }
.rail-selector small { margin-top: 3px; color: #56778d; font-size: 10px; }
.workbench-field { display: grid; gap: 7px; color: #4f7187; font-size: 12px; font-weight: 650; }
.workbench-field select { width: 100%; min-height: 44px; }
.workbench-field textarea { width: 100%; min-height: 76px; resize: vertical; font: inherit; line-height: 1.45; }
.workbench-at-field em { margin-left: 4px; color: #8aa1af; font-size: 10px; font-style: normal; font-weight: 500; }
.workbench-field small { color: #56778d; font-size: 10px; font-weight: 500; line-height: 1.55; }
.route-preview { display: grid; grid-template-columns: minmax(58px, 1fr) 24px minmax(58px, 1fr) 24px minmax(58px, 1fr); align-items: center; margin: 24px 0 20px; }
.route-node { text-align: center; }
.route-node span { display: block; color: #58788d; font-size: 9px; }
.route-node strong { display: block; margin-top: 3px; color: #315c77; font-size: 11px; white-space: nowrap; }
.route-line { height: 1px; background: #b9d9e9; }
.workbench-message { min-height: 42px; border-radius: 10px; padding: 9px 11px; color: #718da0; font-size: 11px; line-height: 1.55; }
.workbench-message:empty { padding: 0; min-height: 10px; }
.workbench-message[data-kind="info"] { background: #edf8fd; color: #317697; }
.workbench-message[data-kind="success"] { background: #ebf8f3; color: #24795f; }
.workbench-message[data-kind="error"] { background: #fff0f3; color: #ac3f54; }
.workbench-actions { display: grid; grid-template-columns: 1fr auto; gap: 9px; margin-top: 14px; }
.workbench-actions button { min-height: 44px; }
.workbench-actions .primary { border-color: #1879ad; background: #1879ad; color: #fff; box-shadow: 0 10px 22px rgba(38, 117, 162, .2); }
.workbench-actions .primary:hover { background: #116d9e; color: #fff; }

.workbench-progress { display: grid; grid-template-columns: repeat(3, 1fr); margin: 8px 0 24px; padding: 0; list-style: none; }
.workbench-progress li { position: relative; display: flex; gap: 10px; min-width: 0; padding-right: 18px; }
.workbench-progress li:not(:last-child)::after { position: absolute; top: 6px; right: 6px; left: 22px; height: 1px; background: #d2e4ee; content: ""; }
.workbench-progress li > span { position: relative; z-index: 1; flex: 0 0 13px; width: 13px; height: 13px; border: 3px solid #d7e6ee; border-radius: 50%; background: #fff; }
.workbench-progress li.active > span { border-color: #36a6dc; box-shadow: 0 0 0 5px rgba(54, 166, 220, .12); }
.workbench-progress li.done > span { border-color: #39ad87; background: #39ad87; }
.workbench-progress li.failed > span { border-color: #de6077; background: #de6077; }
.workbench-progress strong { display: block; color: #385e75; font-size: 11px; }
.workbench-progress small { display: block; max-width: 180px; margin-top: 3px; color: #58788d; font-size: 9px; line-height: 1.45; }
.workbench-result { display: none; border-top: 1px solid #d7e8f0; border-bottom: 1px solid #d7e8f0; margin: 0 -20px 20px; padding: 17px 20px; background: #f4fbfe; }
.workbench-result[data-visible="true"] { display: grid; gap: 11px; }
.workbench-result > div:first-child { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; }
.workbench-result span { color: #55758a; font-size: 10px; }
.workbench-result strong { color: #267c62; font-size: 12px; }
.workbench-result a { overflow-wrap: anywhere; color: #177dad; font-size: 12px; font-weight: 650; text-decoration-thickness: 1px; text-underline-offset: 3px; }
.workbench-result pre { max-height: 120px; overflow: auto; margin: 0; white-space: pre-wrap; overflow-wrap: anywhere; color: #315c77; font: 11px/1.55 ui-monospace, SFMono-Regular, Consolas, monospace; }
.workbench-result-actions { display: flex; gap: 8px; }
.workbench-log-heading { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin: 6px 0 10px; color: #496d83; font-size: 12px; }
.workbench-log-empty { display: grid; min-height: 100%; place-items: center; padding: 24px; color: #5c7c91; font-size: 11px; text-align: center; }
.workbench-log-row { display: grid; grid-template-columns: 78px minmax(0, 1fr); gap: 10px; border-bottom: 1px solid #e3eff4; padding: 9px 11px; color: #56778d; font-size: 11px; }
.workbench-log-row:last-child { border-bottom: 0; }
.workbench-log-row time { color: #58788d; font-variant-numeric: tabular-nums; }
.workbench-log-row[data-level="success"] span { color: #287b63; font-weight: 700; }
.workbench-log-row[data-level="error"] span { color: #b2475b; }
.workbench-current-task { margin: -8px 0 16px; }
.workbench-current-task .workbench-progress-track { height: 8px; overflow: hidden; border-radius: 999px; background: #e2eff5; }
.workbench-current-task .workbench-progress-track span { display: block; width: 0; height: 100%; border-radius: inherit; background: linear-gradient(90deg,#28a6d8,#38ad87); transition: width .3s ease; }
.workbench-current-task small { display: block; margin-top: 6px; color: #56778d; font-size: 11px; }
.workbench-record:hover { border-color: #d6e8f1; background: transparent; }
.workbench-record i { color: #b2475b; font-size: 10px; font-style: normal; }
.workbench-record > span { min-width: 0; overflow-wrap: anywhere; }
::selection { background: #a8ddf3; color: #163d55; }

@media (max-width: 860px) {
  .link-workbench { padding: 14px; }
  .workbench-header { align-items: flex-start; flex-direction: column; gap: 14px; }
  .workbench-heading { align-items: flex-start; flex-direction: column; gap: 12px; }
  .workbench-status { align-self: stretch; justify-content: center; }
  .workbench-stage { grid-template-columns: 1fr; }
  .workbench-monitor { min-height: 560px; }
}
@media (max-width: 520px) {
  .link-workbench { padding: 12px; }
  .workbench-heading h1 { font-size: 25px; }
  .workbench-setup, .workbench-monitor { border-radius: 14px; padding: 16px; }
  .workbench-progress { grid-template-columns: 1fr; gap: 14px; }
  .workbench-progress li:not(:last-child)::after { top: 14px; bottom: -14px; left: 6px; width: 1px; height: auto; }
  .workbench-progress small { max-width: none; }
  .workbench-result { margin-right: -16px; margin-left: -16px; padding-right: 16px; padding-left: 16px; }
  .workbench-result > div:first-child { align-items: flex-start; flex-direction: column; }
  .workbench-actions { grid-template-columns: 1fr; }
  .workbench-log { height: 330px; }
  .workbench-log-row { grid-template-columns: 66px minmax(0, 1fr); padding: 9px; }
}

/* 提链任务记录：进度条按状态着色 —— 失败/停止不再显示成"满格绿"。 */
.workbench-record[data-state="failed"] .record-progress i,
.workbench-record[data-state="stopped"] .record-progress i { background: linear-gradient(90deg,#e28aa0,#c2506a); }
.workbench-record[data-state="queued"] .record-progress i { background: #c3d8e4; }

/* 提链工作台的提示改为右下角浮层：position:fixed 使其脱离文档流，
   “开始提链”按钮上方不再占用任何位置。任务执行状态统一由右侧展示区呈现，
   这里只承载表单校验与请求错误。 */
.workbench-message {
  position: fixed;
  right: 20px;
  bottom: 20px;
  z-index: 60;
  max-width: min(380px, calc(100vw - 40px));
  min-height: 0;
  background: #fff;
  box-shadow: 0 10px 28px rgba(20, 60, 90, .18);
}
.workbench-message:empty { display: none; }

/* 任务记录下方的一行中文状态：执行中显示当前环节，失败显示原因。 */
.record-stage[data-tone="error"] { color: #b2475b; }
/* 提链任务记录：右侧整列展示。行距留出呼吸感——早先压得太紧，账号会挤在一起。
   出链、失败后不再显示进度条：成功只留支付链接与有效期，失败只留中文原因。
   记录后的按钮是无 hover/active 动效的普通按钮。 */
.workbench-records { display: grid; grid-template-columns: minmax(0, 1fr); gap: 10px; align-content: start; min-height: 320px; max-height: max(380px, calc(100vh - 250px)); overflow-x: hidden; overflow-y: auto; margin-bottom: 0; }
.workbench-record { display: flex; align-items: center; gap: 8px; width: 100%; min-width: 0; max-width: 100%; border: 0; border-bottom: 1px solid #d6e8f1; border-radius: 0; padding: 7px 12px 7px 0; background: transparent; color: #365f76; text-align: left; cursor: default; }
.workbench-record-main { flex: 1; min-width: 0; border: 0; padding: 9px 0 9px 12px; background: transparent; color: inherit; text-align: left; }
.workbench-record-main strong, .workbench-record-main small { display: inline; }
.workbench-record strong { font-size: 12px; }
.workbench-record small { margin: 0 0 0 8px; color: #66869a; font-size: 10px; }
.workbench-record-main .record-progress { display: block; height: 5px; margin: 8px 0 6px; border-radius: 999px; background: #e2eff5; }
.workbench-record-main .record-stage { display: block; margin-top: 6px; color: #5b7d92; font-size: 10.5px; line-height: 1.45; overflow-wrap: anywhere; }
.workbench-record-main .record-outcome { display: flex; align-items: baseline; gap: 10px; margin-top: 6px; }
.workbench-record-main .record-link { flex: 1 1 auto; min-width: 0; overflow: hidden; color: #177dad; font-size: 10.5px; line-height: 1.45; text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 2px; text-overflow: ellipsis; white-space: nowrap; }
.workbench-record-main .record-link:hover { color: #0f6a97; background: transparent; }
.workbench-record-main .record-expiry { flex: 0 0 auto; margin-top: 0; white-space: nowrap; color: #24795f; font-size: 10.5px; line-height: 1.45; font-variant-numeric: tabular-nums; }
.workbench-record-main .record-expiry[data-expired="true"] { color: #b2475b; font-weight: 700; }
.workbench-record[data-link-state="expired"] .workbench-record-main strong { color: #8b5a68; }
.record-btn { flex: 0 0 auto; align-self: center; min-height: 26px; border: 1px solid #b9d9e9; border-radius: 8px; padding: 3px 9px; background: #f4fbfe; color: #237da4; font-size: 11px; font-weight: 650; line-height: 1.2; cursor: pointer; box-shadow: none; transform: none; transition: none; }
.record-btn:hover, .record-btn:active { border-color: #b9d9e9; background: #f4fbfe; color: #237da4; box-shadow: none; transform: none; transition: none; }
.record-btn-danger { border-color: #e6c6cd; background: #fff5f7; color: #b2475b; }
.record-btn-danger:hover, .record-btn-danger:active { border-color: #e6c6cd; background: #fff5f7; color: #b2475b; }
/* 工作台两栏同高：左栏拉伸到与右栏底边对齐，整体高度贴住视口底部。
   记录列表改成卡片内滚动——账号多了只出内部滑块，不再把整页撑长。
   左栏比内容高时，底部按钮用 margin-top:auto 顶到卡片下沿，中间留白而不是下沿留白。 */
.workbench-stage { align-items: stretch; }
.workbench-setup { display: flex; flex-direction: column; align-self: stretch; height: calc(100vh - 176px); min-height: 420px; overflow: auto; }
.workbench-setup .workbench-actions { margin-top: auto; }
.workbench-monitor { display: flex; flex-direction: column; height: calc(100vh - 176px); min-height: 420px; }
.workbench-records { flex: 1 1 auto; min-height: 0; max-height: none; }
@media (max-width: 860px) {
  .workbench-setup { display: block; height: auto; min-height: 0; }
  .workbench-monitor { height: auto; min-height: 480px; }
  .workbench-records { max-height: 60vh; }
}

.workbench-at-clear { justify-self: start; }
.workbench-log-actions { display: flex; align-items: center; gap: 8px; margin-left: auto; }

/* 账号库批量提链入口：与账号标签同行，保留下拉选择的完整宽度。 */
.workbench-account-heading { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.workbench-account-heading > label { color: #4f7187; font-size: 12px; font-weight: 650; }
.workbench-bulk-trigger {
  min-height: 29px;
  border-color: #b9d9e9;
  border-radius: 8px;
  padding: 5px 10px;
  background: #f4fbfe;
  color: #39718e;
  box-shadow: none;
  font-size: 11px;
  font-weight: 700;
}
.workbench-bulk-trigger:hover { border-color: #6eb8d9; background: #e8f7fe; color: #176f9e; box-shadow: none; transform: none; }
.workbench-account-field > select { width: 100%; min-height: 44px; }

/* 每条记录在账号邮箱前标出实际提链通道，便于混合通道任务快速区分。 */
.workbench-record-main .record-account-line { display: flex; align-items: center; gap: 8px; min-width: 0; }
.workbench-record-main .record-account-line strong { min-width: 0; overflow-wrap: anywhere; }
.workbench-record-main span.workbench-record-rail {
  display: inline-flex;
  align-items: center;
  flex: 0 0 auto;
  margin: 0;
  border: 1px solid transparent;
  border-radius: 999px;
  padding: 3px 7px;
  font: 800 10px/1.1 ui-monospace, SFMono-Regular, Consolas, monospace;
  letter-spacing: .02em;
  white-space: nowrap;
}
.workbench-record-rail.gopay { border-color: rgba(112, 91, 200, .28); background: #f2efff; color: #6653b7; }
.workbench-record-rail.upi { border-color: rgba(35, 139, 193, .28); background: #eaf7fd; color: #1e78a6; }
.workbench-record-rail.momo { border-color: rgba(46, 158, 119, .3); background: #eaf8f2; color: #247d61; }
.workbench-record-rail.unknown { border-color: rgba(112, 134, 147, .28); background: #f1f5f7; color: #607783; }
