/* Summit Freights internal workspaces
   Scope deliberately excludes the public website. */

body.tool-ui {
  --tool-bg: #f4f5f1;
  --tool-surface: #ffffff;
  --tool-surface-muted: #f8f9f5;
  --tool-surface-strong: #eef0ea;
  --tool-ink: #22251f;
  --tool-muted: #687064;
  --tool-line: #d9ddd2;
  --tool-line-strong: #c7cec0;
  --tool-nav: #171915;
  --tool-nav-hover: #242721;
  --tool-accent: #d8ff64;
  --tool-accent-hover: #c7ee53;
  --tool-accent-soft: #f3f8df;
  --tool-accent-ink: #171915;
  --tool-accent-readable: #586b18;
  --tool-green: #2d6b4f;
  --tool-green-soft: #edf6f1;
  --tool-red: #a63d45;
  --tool-red-soft: #fbf0f1;
  --tool-amber: #906515;
  --tool-amber-soft: #fbf5e8;
  --tool-radius: 7px;
  --tool-shadow: 0 2px 8px rgba(31, 41, 51, 0.07);

  margin: 0;
  background: var(--tool-bg);
  color: var(--tool-ink);
  font-family: Aptos, "Helvetica Neue", Helvetica, sans-serif;
  font-size: 14px;
  line-height: 1.45;
  -webkit-font-smoothing: antialiased;
}

body.tool-ui *,
body.tool-ui *::before,
body.tool-ui *::after {
  box-sizing: border-box;
}

body.tool-ui button,
body.tool-ui input,
body.tool-ui select,
body.tool-ui textarea {
  font: inherit;
}

body.tool-ui button,
body.tool-ui a,
body.tool-ui input,
body.tool-ui select,
body.tool-ui textarea {
  transition: color 140ms ease, background-color 140ms ease, border-color 140ms ease, box-shadow 140ms ease, opacity 140ms ease;
}

body.tool-ui button:hover {
  filter: none;
}

body.tool-ui [hidden] {
  display: none !important;
}

/* Shared application chrome */
body.tool-ui .appbar,
body.tool-ui header.appbar {
  position: sticky;
  top: 0;
  z-index: 30;
  display: flex;
  align-items: center;
  min-height: 56px;
  height: 56px;
  padding: 0 22px;
  gap: 16px;
  background: var(--tool-nav);
  color: #f7f8fa;
  border: 0;
  border-bottom: 1px solid #101318;
  box-shadow: none;
}

body.tool-ui .brand {
  display: flex;
  align-items: center;
  gap: 9px;
  color: #ffffff;
  font-size: 15px;
  font-weight: 700;
  letter-spacing: 0;
  white-space: nowrap;
}

body.tool-ui .brand-mark,
body.tool-ui .brand > span:first-child {
  display: grid;
  place-items: center;
  width: 22px;
  height: 22px;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: #aeb8c5;
  font-size: 14px;
}

body.tool-ui .source,
body.tool-ui .app-source {
  display: none;
}

body.tool-ui .appbar-actions,
body.tool-ui .links {
  display: flex;
  align-items: center;
  gap: 6px;
  margin-left: auto;
}

body.tool-ui .app-user,
body.tool-ui .header-user,
body.tool-ui .current-user {
  margin-right: 6px;
  color: #b7c0cc;
  font-size: 12px;
}

body.tool-ui .appbar a,
body.tool-ui .appbar button,
body.tool-ui header.appbar a,
body.tool-ui header.appbar button,
body.tool-ui .links a,
body.tool-ui .links button {
  min-height: 32px;
  padding: 6px 10px;
  border: 1px solid #454c57;
  border-radius: 6px;
  background: transparent;
  color: #e8ebef;
  text-decoration: none;
  font-size: 12px;
  font-weight: 600;
}

body.tool-ui .appbar a:hover,
body.tool-ui .appbar button:hover,
body.tool-ui header.appbar a:hover,
body.tool-ui header.appbar button:hover,
body.tool-ui .links a:hover,
body.tool-ui .links button:hover {
  border-color: #5a6370;
  background: var(--tool-nav-hover);
  color: #fff;
}

body.tool-ui .workspace-nav-wrap {
  position: sticky;
  top: 56px;
  z-index: 24;
  background: var(--tool-surface);
  border-bottom: 1px solid var(--tool-line);
  box-shadow: none;
}

body.tool-ui .workspace-nav,
body.tool-ui .tabs.workspace-nav {
  display: flex;
  align-items: stretch;
  max-width: 1600px;
  min-height: 46px;
  margin: 0 auto;
  padding: 0 22px;
  gap: 24px;
  overflow-x: auto;
}

body.tool-ui .workspace-tab,
body.tool-ui .tabs.workspace-nav .tab {
  position: relative;
  display: flex;
  align-items: center;
  min-height: 46px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: #65707e;
  font-size: 13px;
  font-weight: 600;
  white-space: nowrap;
}

body.tool-ui .workspace-tab:hover,
body.tool-ui .tabs.workspace-nav .tab:hover {
  background: transparent;
  color: var(--tool-ink);
}

body.tool-ui .workspace-tab.active,
body.tool-ui .tabs.workspace-nav .tab.active {
  background: transparent;
  color: var(--tool-accent-readable);
}

body.tool-ui .workspace-tab.active::after,
body.tool-ui .tabs.workspace-nav .tab.active::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: -1px;
  left: 0;
  height: 2px;
  background: var(--tool-accent);
}

body.tool-ui .main,
body.tool-ui > main,
body.campaign-ui main {
  width: 100%;
  max-width: 1450px;
  margin: 0 auto;
  padding: 24px;
}

body.tool-ui .work-head,
body.tool-ui .process-head,
body.tool-ui .campaign-head,
body.tool-ui .head {
  display: flex;
  align-items: flex-start;
  gap: 16px;
  margin: 0 0 18px;
}

body.tool-ui .work-head h1,
body.tool-ui .process-head h1,
body.tool-ui .campaign-head h1,
body.tool-ui .head h1 {
  margin: 0;
  color: var(--tool-ink);
  font-size: 21px;
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: -0.015em;
}

body.tool-ui .work-head p,
body.tool-ui .process-head p,
body.tool-ui .campaign-head p,
body.tool-ui .head p {
  max-width: 760px;
  margin: 4px 0 0;
  color: var(--tool-muted);
  font-size: 13px;
}

/* Inputs and actions */
body.tool-ui .btn,
body.campaign-ui button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  min-height: 36px;
  padding: 7px 12px;
  border: 1px solid var(--tool-accent);
  border-radius: 6px;
  background: var(--tool-accent);
  color: var(--tool-accent-ink);
  font-weight: 650;
  line-height: 1.2;
  box-shadow: none;
}

body.tool-ui .btn:hover,
body.campaign-ui button:hover {
  border-color: var(--tool-accent-hover);
  background: var(--tool-accent-hover);
}

body.tool-ui .btn.secondary,
body.tool-ui .btn.dark,
body.campaign-ui button.ghost {
  border-color: var(--tool-line-strong);
  background: var(--tool-surface);
  color: #34404d;
}

body.tool-ui .btn.secondary:hover,
body.tool-ui .btn.dark:hover,
body.campaign-ui button.ghost:hover {
  border-color: #aeb7c2;
  background: var(--tool-surface-muted);
  color: var(--tool-ink);
}

body.tool-ui .btn.danger,
body.campaign-ui button.danger {
  border-color: #d9b7ba;
  background: var(--tool-surface);
  color: var(--tool-red);
}

body.tool-ui .btn.danger:hover,
body.campaign-ui button.danger:hover {
  border-color: #c99499;
  background: var(--tool-red-soft);
}

body.tool-ui .btn.small {
  min-height: 30px;
  padding: 5px 9px;
  font-size: 12px;
}

body.tool-ui button:disabled {
  cursor: not-allowed;
  opacity: 0.48;
}

body.tool-ui label,
body.tool-ui .label,
body.tool-ui .field label {
  color: #4f5b68;
  font-size: 12px;
  font-weight: 650;
  letter-spacing: 0;
  text-transform: none;
}

body.tool-ui input[type="text"],
body.tool-ui input[type="password"],
body.tool-ui input[type="number"],
body.tool-ui input[type="email"],
body.tool-ui input[type="search"],
body.tool-ui input[type="tel"],
body.tool-ui input[type="date"],
body.tool-ui input[type="time"],
body.tool-ui select,
body.tool-ui textarea {
  width: 100%;
  border: 1px solid var(--tool-line-strong);
  border-radius: 6px;
  background: var(--tool-surface);
  color: var(--tool-ink);
  outline: none;
  box-shadow: none;
}

body.tool-ui input:focus,
body.tool-ui select:focus,
body.tool-ui textarea:focus {
  border-color: #6f8fbd;
  box-shadow: 0 0 0 3px rgba(36, 79, 158, 0.12);
}

body.tool-ui input::placeholder,
body.tool-ui textarea::placeholder {
  color: #98a1ac;
}

body.tool-ui input[type="checkbox"],
body.tool-ui input[type="radio"] {
  accent-color: var(--tool-accent);
}

body.tool-ui .toolbar {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}

/* Surfaces, tables, and status */
body.tool-ui .card,
body.tool-ui .panel,
body.tool-ui .results,
body.tool-ui .process-panel {
  border: 1px solid var(--tool-line);
  border-radius: var(--tool-radius);
  background: var(--tool-surface);
  box-shadow: none;
}

body.tool-ui .card {
  padding: 18px;
}

body.tool-ui .card h2,
body.tool-ui .card h3,
body.tool-ui .panel h2,
body.tool-ui .results h2 {
  color: var(--tool-ink);
  font-weight: 700;
  letter-spacing: -0.01em;
}

body.tool-ui .help,
body.tool-ui .hint {
  color: var(--tool-muted);
}

body.tool-ui .official,
body.tool-ui .badge,
body.tool-ui .status-pill,
body.tool-ui .priority-pill,
body.tool-ui .extraction-state,
body.tool-ui .history-status {
  display: inline-flex;
  align-items: center;
  width: auto;
  min-height: 25px;
  margin-left: auto;
  padding: 3px 8px;
  border: 1px solid var(--tool-line-strong);
  border-radius: 6px;
  background: var(--tool-surface-muted);
  color: #53606e;
  font-size: 11px;
  font-weight: 650;
  line-height: 1.2;
  white-space: nowrap;
}

body.tool-ui .official {
  border-color: #b8d3c5;
  background: var(--tool-green-soft);
  color: var(--tool-green);
}

body.tool-ui .table-wrap,
body.tool-ui .table-scroll,
body.tool-ui .process-table-wrap {
  border-color: var(--tool-line);
  background: var(--tool-surface);
}

body.tool-ui table {
  width: 100%;
  border-collapse: collapse;
  color: var(--tool-ink);
}

body.tool-ui th,
body.tool-ui td {
  padding: 10px 12px;
  border-bottom: 1px solid #e7eaee;
  text-align: left;
  vertical-align: middle;
  font-size: 12px;
}

body.tool-ui th {
  background: var(--tool-surface-muted);
  color: #596572;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0;
  text-transform: none;
}

body.tool-ui tbody tr:hover,
body.tool-ui .process-table tbody tr:hover {
  background: #f5f7fa;
}

body.tool-ui .empty {
  padding: 42px 24px;
  color: var(--tool-muted);
  text-align: center;
}

body.tool-ui .empty b {
  color: #44505e;
}

body.tool-ui .progress {
  overflow: hidden;
  border: 0;
  border-radius: 3px;
  background: #e4e8ed;
}

body.tool-ui .progress i,
body.tool-ui .progress > div {
  background: var(--tool-accent);
}

/* Authentication gates */
body.tool-ui .gate,
body.tool-ui #gate {
  position: fixed;
  inset: 0;
  z-index: 100;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px;
  background: rgba(25, 30, 37, 0.96);
}

body.tool-ui .gate-box,
body.tool-ui #gate .box {
  width: min(390px, 100%);
  padding: 24px;
  border: 1px solid #3c444f;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.24);
}

body.tool-ui .gate-box h2,
body.tool-ui #gate .box h2 {
  margin: 0 0 6px;
  color: var(--tool-ink);
  font-size: 19px;
  font-weight: 700;
}

body.tool-ui .gate-box p,
body.tool-ui #gate .box .hint {
  margin: 0 0 16px;
  color: var(--tool-muted);
  font-size: 12px;
}

body.tool-ui .gate-box input,
body.tool-ui #gate .box input {
  min-height: 40px;
  margin-bottom: 10px;
  padding: 9px 10px;
}

/* WebHarvy */
body.webharvy-ui {
  --ink: var(--tool-ink);
  --muted: var(--tool-muted);
  --line: var(--tool-line);
  --soft: var(--tool-surface-muted);
  --panel: var(--tool-surface);
  --nav: var(--tool-nav);
  --nav2: var(--tool-nav-hover);
  --blue: var(--tool-accent);
  --blue2: var(--tool-accent-soft);
  --green: var(--tool-green);
  --red: var(--tool-red);
  --shadow: none;
}

body.webharvy-ui .shell {
  min-height: calc(100vh - 102px);
}

body.webharvy-ui .input-card {
  box-shadow: none;
}

#extract-workspace .input-card-icon,
#extract-workspace .results-title-icon {
  display: none;
}

#extract-workspace .help {
  padding-left: 0;
}

#extract-workspace .input-card,
#extract-workspace .results {
  border-color: var(--tool-line);
  border-radius: var(--tool-radius);
  box-shadow: none;
}

#extract-workspace #run {
  box-shadow: none;
}

body.webharvy-ui .runbar {
  gap: 12px;
  margin-top: 16px;
  padding: 12px;
  border: 1px solid var(--tool-line);
  border-radius: 6px;
  background: var(--tool-surface-muted);
}

body.webharvy-ui .summary {
  display: flex;
  gap: 0;
  border: 1px solid var(--tool-line);
  border-radius: 6px;
  background: #fff;
}

body.webharvy-ui .summary > div {
  min-width: 72px;
  padding: 7px 10px;
}

body.webharvy-ui .summary > div + div {
  border-left: 1px solid var(--tool-line);
}

body.webharvy-ui .summary b {
  font-size: 16px;
}

body.webharvy-ui .summary span {
  color: var(--tool-muted);
  font-size: 10px;
  letter-spacing: 0;
}

body.webharvy-ui .notice,
body.webharvy-ui .extraction-stats,
body.webharvy-ui .team-run-summary,
body.webharvy-ui .process-operations,
body.webharvy-ui .process-team-panel,
body.webharvy-ui .process-target,
body.webharvy-ui .process-pending-banner {
  border-radius: 6px;
  box-shadow: none;
}

body.webharvy-ui .extraction-stats {
  border-color: var(--tool-line);
  background: #fff;
}

body.webharvy-ui .extraction-state::before {
  display: none;
}

body.webharvy-ui .team-run-summary {
  border: 1px solid var(--tool-line);
  background: var(--tool-surface-muted);
}

body.webharvy-ui .team-run-summary-grid,
body.webharvy-ui .extraction-stats-grid,
body.webharvy-ui .process-summary,
body.webharvy-ui .process-mode-summary-grid {
  gap: 0;
  overflow: hidden;
  border: 1px solid var(--tool-line);
  border-radius: 6px;
  background: #fff;
}

body.webharvy-ui .team-run-item,
body.webharvy-ui .extraction-stat,
body.webharvy-ui .summary-card,
body.webharvy-ui .process-mode-summary-card {
  min-height: 70px;
  padding: 12px;
  border: 0;
  border-right: 1px solid var(--tool-line);
  border-radius: 0;
  background: #fff;
  box-shadow: none;
}

body.webharvy-ui .summary-card:hover {
  border-color: var(--tool-line);
  box-shadow: none;
}

body.webharvy-ui .results {
  margin-top: 16px;
  overflow: hidden;
}

body.webharvy-ui .results-head {
  min-height: 58px;
  padding: 12px 14px;
  border-bottom: 1px solid var(--tool-line);
  background: #fff;
}

body.webharvy-ui .results-head h2 {
  font-size: 15px;
}

body.webharvy-ui .filter {
  min-height: 32px;
}

body.webharvy-ui .process-toolbar {
  padding: 12px;
  border: 1px solid var(--tool-line);
  border-radius: 6px 6px 0 0;
  background: var(--tool-surface-muted);
}

body.webharvy-ui .process-panel {
  overflow: hidden;
}

body.webharvy-ui .process-target-track,
body.webharvy-ui .user-target-mini {
  border-radius: 2px;
  background: #e1e5ea;
}

body.webharvy-ui .process-target-track i,
body.webharvy-ui .user-target-mini i {
  background: var(--tool-accent);
}

body.webharvy-ui .status-pill,
body.webharvy-ui .priority-pill {
  margin-left: 0;
}

body.webharvy-ui .modal,
body.admin-ui .modal {
  background: rgba(25, 30, 37, 0.68);
  backdrop-filter: none;
}

body.webharvy-ui .modal-card,
body.admin-ui .modal-card {
  border: 1px solid var(--tool-line-strong);
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 8px 24px rgba(31, 41, 51, 0.16);
}

body.webharvy-ui .process-modal-head,
body.webharvy-ui .process-email-head,
body.webharvy-ui .modal-head,
body.admin-ui .modal-head {
  border-color: var(--tool-line);
  background: #fff;
}

/* Mailbox */
body.campaign-ui {
  --bg: var(--tool-bg);
  --card: var(--tool-surface);
  --ink: var(--tool-ink);
  --muted: var(--tool-muted);
  --line: var(--tool-line);
  --primary: var(--tool-accent);
  --primary2: var(--tool-accent-hover);
  --nav: var(--tool-nav);
  --nav2: var(--tool-nav-hover);
  --err: var(--tool-red);
}

body.campaign-ui > main {
  min-height: calc(100vh - 102px);
}

body.campaign-ui .view > .card + .card {
  margin-top: 14px;
}

body.campaign-ui .recipient-source-row,
body.campaign-ui .recipient-panel,
body.campaign-ui .setup-guide,
body.campaign-ui .mc-patches,
body.campaign-ui .mc-available-patches,
body.campaign-ui .mc-history-controls {
  border-color: var(--tool-line);
  border-radius: 6px;
  background: var(--tool-surface-muted);
  box-shadow: none;
}

body.campaign-ui .stats {
  display: grid;
  gap: 0;
  overflow: hidden;
  border: 1px solid var(--tool-line);
  border-radius: 6px;
  background: #fff;
}

body.campaign-ui .stat {
  min-height: 76px;
  padding: 13px;
  border: 0;
  border-right: 1px solid var(--tool-line);
  border-radius: 0;
  background: #fff;
  box-shadow: none;
}

body.campaign-ui .stat b {
  color: var(--tool-ink);
  font-size: 20px;
}

body.campaign-ui .stat span {
  color: var(--tool-muted);
}

body.campaign-ui .tmpl-list li,
body.campaign-ui .mc-patch-card,
body.campaign-ui button.mc-available-patch {
  border-color: var(--tool-line);
  border-radius: 6px;
  background: #fff;
  box-shadow: none;
}

body.campaign-ui .tmpl-list li:hover,
body.campaign-ui button.mc-available-patch:hover {
  border-color: var(--tool-line-strong);
  background: var(--tool-surface-muted);
}

body.campaign-ui .tmpl-list li.active,
body.campaign-ui .mc-patch-card:has(input:checked) {
  border-color: #95acce;
  background: var(--tool-accent-soft);
  box-shadow: inset 3px 0 var(--tool-accent);
}

body.campaign-ui .mailbox-shell {
  overflow: hidden;
  border: 1px solid var(--tool-line);
  border-radius: 7px;
  background: #fff;
  box-shadow: none;
}

body.campaign-ui .mailbox-sidebar {
  border-color: var(--tool-line);
  background: #f3f5f7;
}

body.campaign-ui .mailbox-compose {
  border-radius: 6px;
  background: var(--tool-accent);
  color: var(--tool-accent-ink);
}

body.campaign-ui .mailbox-compose:hover {
  background: var(--tool-accent-hover);
  color: var(--tool-accent-ink);
}

body.campaign-ui .mailbox-folder {
  min-height: 38px;
  border: 0;
  border-radius: 5px;
  background: transparent;
  color: #4f5b68;
}

body.campaign-ui .mailbox-folder:hover {
  background: #e7eaee;
}

body.campaign-ui .mailbox-folder.active {
  background: #dde4ee;
  color: #263f68;
  box-shadow: inset 3px 0 var(--tool-accent);
}

body.campaign-ui .mailbox-toolbar,
body.campaign-ui .mailbox-list-head,
body.campaign-ui .mailbox-filter-bar,
body.campaign-ui .mailbox-detail-toolbar,
body.campaign-ui .mailbox-detail-head {
  border-color: var(--tool-line);
  background: #fff;
}

body.campaign-ui .mailbox-search input {
  background: var(--tool-surface-muted);
}

body.campaign-ui .mailbox-filter {
  min-height: 29px;
  padding: 5px 10px;
  border: 1px solid var(--tool-line);
  border-radius: 5px;
  background: #fff;
  color: #4e5b68;
  font-size: 11px;
}

body.campaign-ui .mailbox-filter.active {
  border-color: #a9b6c6;
  background: #e8edf3;
  color: #26384e;
}

body.campaign-ui .mailbox-list {
  background: #fff;
}

body.campaign-ui .mailbox-row,
body.campaign-ui .mailbox-row.unread {
  border: 0;
  border-bottom: 1px solid #e8ebef;
  background: #fff;
  box-shadow: none;
}

body.campaign-ui .mailbox-row:hover,
body.campaign-ui .mailbox-row.unread:hover {
  background: #f4f6f8;
  box-shadow: inset 3px 0 #98a9bd;
}

body.campaign-ui .mailbox-row.unread {
  box-shadow: inset 3px 0 var(--tool-accent);
}

body.campaign-ui .mailbox-row-star,
body.campaign-ui .mailbox-compose-tool,
body.campaign-ui .mailbox-compose-head-button,
body.campaign-ui .mailbox-attachment-download,
body.campaign-ui .mailbox-compose-file-remove,
body.campaign-ui .mailbox-cc-toggle,
body.campaign-ui .mailbox-save-draft,
body.campaign-ui .mailbox-format-toolbar button {
  min-height: 28px;
  border: 0;
  background: transparent;
  color: #465362;
}

body.campaign-ui .mailbox-row-star:hover,
body.campaign-ui .mailbox-compose-tool:hover,
body.campaign-ui .mailbox-compose-head-button:hover,
body.campaign-ui .mailbox-attachment-download:hover,
body.campaign-ui .mailbox-compose-file-remove:hover,
body.campaign-ui .mailbox-cc-toggle:hover,
body.campaign-ui .mailbox-save-draft:hover,
body.campaign-ui .mailbox-format-toolbar button:hover {
  border: 0;
  background: #e8ecf1;
  color: #26384e;
}

body.campaign-ui .mailbox-settings-menu,
body.campaign-ui .campaign-modal-card {
  border: 1px solid var(--tool-line-strong);
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 8px 24px rgba(31, 41, 51, 0.15);
}

body.campaign-ui .campaign-modal {
  background: rgba(25, 30, 37, 0.68);
  backdrop-filter: none;
}

body.campaign-ui .campaign-modal-head,
body.campaign-ui .campaign-modal-foot,
body.campaign-ui .mailbox-compose-head,
body.campaign-ui .mailbox-compose-foot {
  border-color: var(--tool-line);
  background: var(--tool-surface-muted);
}

body.campaign-ui .mailbox-compose-card {
  border-radius: 8px;
}

body.campaign-ui .start-review-hero,
body.campaign-ui .start-review-section,
body.campaign-ui .start-review-item,
body.campaign-ui .history-detail-item {
  border-color: var(--tool-line);
  border-radius: 6px;
  background: var(--tool-surface-muted);
  box-shadow: none;
}

/* User administration */
body.admin-ui {
  --nav: var(--tool-nav);
  --nav2: var(--tool-nav-hover);
  --blue: var(--tool-accent);
  --blue2: var(--tool-accent-soft);
  --ink: var(--tool-ink);
  --muted: var(--tool-muted);
  --line: var(--tool-line);
  --soft: var(--tool-surface-muted);
  --red: var(--tool-red);
  --green: var(--tool-green);
  --shadow: none;
}

body.admin-ui .main {
  max-width: 1320px;
}

body.admin-ui .company-switch {
  width: min(220px, 28vw);
  min-height: 32px;
  padding: 5px 28px 5px 9px;
  border: 1px solid #4a535f;
  border-radius: 6px;
  background: #252b33;
  color: #eef1f4;
  font-size: 12px;
}

body.admin-ui .company-switch:focus {
  border-color: #798594;
  box-shadow: 0 0 0 3px rgba(255, 255, 255, 0.08);
}

body.admin-ui .company-management {
  margin-bottom: 30px;
  padding-bottom: 28px;
  border-bottom: 1px solid var(--tool-line);
}

body.admin-ui .company-head {
  margin-bottom: 12px;
}

body.admin-ui .company-panel table {
  min-width: 820px;
}

body.admin-ui .company-modal-card {
  width: min(620px, 100%);
}

body.admin-ui .head .btn {
  margin-left: auto;
}

body.admin-ui .stats {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0;
  overflow: hidden;
  margin-bottom: 16px;
  border: 1px solid var(--tool-line);
  border-radius: 7px;
  background: #fff;
}

body.admin-ui .stat {
  padding: 13px 15px;
  border: 0;
  border-right: 1px solid var(--tool-line);
  border-radius: 0;
  background: #fff;
  box-shadow: none;
}

body.admin-ui .stat:last-child {
  border-right: 0;
}

body.admin-ui .stat b {
  color: var(--tool-ink);
  font-size: 20px;
  line-height: 1.2;
}

body.admin-ui .stat span {
  color: var(--tool-muted);
  font-size: 11px;
}

body.admin-ui .panel {
  overflow: hidden;
}

body.admin-ui .panel-head {
  min-height: 48px;
  padding: 12px 15px;
  border-color: var(--tool-line);
  background: #fff;
}

body.admin-ui .badge {
  min-height: 22px;
  margin: 0;
  padding: 3px 7px;
  border-color: #ccd5e1;
  border-radius: 5px;
  background: #f2f5f8;
  color: #42536a;
  font-size: 10px;
}

body.admin-ui .badge.admin {
  border-color: #dccda9;
  background: var(--tool-amber-soft);
  color: #74520f;
}

body.admin-ui .status {
  color: var(--tool-green);
}

body.admin-ui .status.off {
  color: var(--tool-red);
}

body.admin-ui .modal-body {
  background: var(--tool-surface-muted);
}

body.admin-ui .permission-title {
  color: #394552;
  font-size: 13px;
}

body.admin-ui .permission,
body.admin-ui .sender-access-item {
  border-color: var(--tool-line);
  border-radius: 6px;
  background: #fff;
}

body.admin-ui .permission:hover,
body.admin-ui .sender-access-item:hover {
  border-color: var(--tool-line-strong);
}

body.admin-ui .permission b,
body.admin-ui .sender-access-item b {
  color: #34404d;
}

body.admin-ui .modal-foot {
  border-color: var(--tool-line);
  background: #fff;
}

body.tool-ui .toast {
  right: 18px;
  bottom: 18px;
  padding: 10px 13px;
  border: 1px solid #3a424d;
  border-radius: 6px;
  background: #252b33;
  color: #fff;
  box-shadow: var(--tool-shadow);
}

@media (max-width: 900px) {
  body.tool-ui .appbar,
  body.tool-ui header.appbar {
    min-height: 56px;
    height: auto;
    padding: 8px 12px;
    flex-wrap: wrap;
  }

  body.tool-ui .appbar-actions,
  body.tool-ui .links {
    max-width: 100%;
    overflow-x: auto;
  }

  body.tool-ui .workspace-nav-wrap {
    top: 56px;
  }

  body.tool-ui .workspace-nav,
  body.tool-ui .tabs.workspace-nav {
    gap: 18px;
    padding: 0 14px;
  }

  body.tool-ui .main,
  body.tool-ui > main,
  body.campaign-ui main {
    padding: 16px;
  }
}

@media (max-width: 720px) {
  body.tool-ui .app-user,
  body.tool-ui .header-user,
  body.tool-ui .current-user {
    display: none;
  }

  body.tool-ui .work-head,
  body.tool-ui .process-head,
  body.tool-ui .campaign-head,
  body.tool-ui .head {
    display: block;
  }

  body.tool-ui .work-head .official,
  body.tool-ui .process-head .official,
  body.tool-ui .campaign-head .official,
  body.tool-ui .head .btn {
    margin: 10px 0 0;
  }

  body.admin-ui .stats,
  body.webharvy-ui .form-row,
  body.admin-ui .grid,
  body.admin-ui .permissions,
  body.admin-ui .sender-access-list {
    grid-template-columns: 1fr;
  }

  body.admin-ui .stat {
    border-right: 0;
    border-bottom: 1px solid var(--tool-line);
  }

  body.admin-ui .stat:last-child {
    border-bottom: 0;
  }

  body.tool-ui .card {
    padding: 14px;
  }

  body.webharvy-ui .results-head,
  body.webharvy-ui .process-toolbar,
  body.campaign-ui .toolbar {
    align-items: stretch;
  }

  body.webharvy-ui .results-head .filter,
  body.webharvy-ui .process-toolbar input,
  body.webharvy-ui .process-toolbar select {
    flex-basis: 100%;
  }

  body.campaign-ui .mailbox-shell {
    border-radius: 0;
  }
}

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