@font-face {
  font-family: "GM Display";
  src: url("theme/_next/static/media/1326f4d1dd23f46b-s.p.otf") format("opentype");
  font-weight: 300 800;
  font-display: swap;
}

.app-toast[data-tone="webhook-success"] {
  color: #fff;
  background: #07883f;
  border: 2px solid #38d978;
  box-shadow: 0 14px 38px rgba(7, 136, 63, .48);
  font-weight: 700;
}

.app-toast[data-tone="webhook-error"] {
  color: #fff;
  background: #d52222;
  border: 2px solid #ff6b6b;
  box-shadow: 0 14px 38px rgba(213, 34, 34, .5);
  font-weight: 700;
}

@font-face {
  font-family: "GM Sans";
  src: url("theme/_next/static/media/3e0ebcfaed0722f5-s.p.otf") format("opentype");
  font-weight: 300 800;
  font-display: swap;
}

:root {
  color-scheme: dark;
  --ink: #f4f6fa;
  --muted: #9aa4b5;
  --faint: #677286;
  --line: rgba(255, 255, 255, .11);
  --line-soft: rgba(255, 255, 255, .075);
  --paper: #0e1119;
  --wash: #06070b;
  --surface-alt: #141923;
  --tint: rgba(47, 124, 255, .12);
  --accent: #397fff;
  --accent-dark: #286de8;
  --danger: #ff7889;
  --success: #5ce0aa;
  --product-display: "GM Display", "Segoe UI", sans-serif;
  --product-sans: "GM Sans", "Segoe UI", sans-serif;
}

body.portal,
body.app-portal {
  color: var(--ink);
  background:
    radial-gradient(circle at 78% -12%, rgba(47, 124, 255, .15), transparent 32rem),
    radial-gradient(circle at -20% 85%, rgba(57, 127, 255, .06), transparent 38rem),
    #06070b;
  font-family: var(--product-sans);
  -webkit-font-smoothing: antialiased;
}

body.portal::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: -1;
  opacity: .45;
  pointer-events: none;
  background-image:
    linear-gradient(rgba(255,255,255,.018) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.018) 1px, transparent 1px);
  background-size: 64px 64px;
}

.impersonation-banner {
  position: sticky;
  top: 0;
  z-index: 100;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 22px;
  min-height: 54px;
  padding: 9px 18px;
  color: #fff4d6;
  background: #7a3d08;
  border-bottom: 1px solid #d68a35;
  box-shadow: 0 10px 30px rgba(0, 0, 0, .32);
}
.impersonation-banner-copy { display: grid; gap: 2px; }
.impersonation-banner-copy strong { font-size: 12px; letter-spacing: .04em; text-transform: uppercase; }
.impersonation-banner-copy span { color: #ffddb0; font-size: 12px; }
.impersonation-banner-copy b { color: #fff; }
.impersonation-exit {
  min-height: 34px;
  padding: 0 13px;
  color: #492000;
  background: #fff3df;
  border: 1px solid #fff;
  border-radius: 8px;
  cursor: pointer;
  font-size: 12px;
  font-weight: 800;
  white-space: nowrap;
}
.impersonation-exit:disabled { cursor: wait; opacity: .7; }
.impersonating .dashboard-shell { min-height: calc(100vh - 54px); }

.impersonation-dialog {
  width: min(520px, calc(100% - 28px));
  padding: 0;
  color: #f4f7fb;
  background: transparent;
  border: 0;
}
.impersonation-dialog::backdrop { background: rgba(1, 3, 8, .86); backdrop-filter: blur(8px); }
.impersonation-dialog-card {
  display: grid;
  padding: 34px;
  background: #0d121c;
  border: 1px solid rgba(255, 122, 141, .28);
  border-radius: 18px;
  box-shadow: 0 35px 110px rgba(0, 0, 0, .72);
}
.impersonation-dialog-mark {
  display: grid;
  place-items: center;
  width: 48px;
  height: 48px;
  margin-bottom: 18px;
  color: #ffacb8;
  background: rgba(224, 63, 85, .1);
  border: 1px solid rgba(255, 112, 132, .25);
  border-radius: 13px;
  font-size: 24px;
  font-weight: 800;
}
.impersonation-dialog-card h2 { margin: 8px 0; color: #fff; font-size: 28px; }
.impersonation-dialog-card > p { margin: 0 0 18px; color: #a8b3c4; font-size: 14px; line-height: 1.55; }
.impersonation-dialog-card > p strong,
.impersonation-dialog-card > p span { color: #fff; overflow-wrap: anywhere; }
.impersonation-warning {
  margin-bottom: 18px;
  padding: 12px 13px;
  color: #ffc5ce;
  background: rgba(224, 63, 85, .07);
  border: 1px solid rgba(255, 112, 132, .18);
  border-radius: 9px;
  font-size: 12px;
  line-height: 1.55;
}
.impersonation-dialog-card .field-input { margin-top: 7px; letter-spacing: .08em; text-transform: uppercase; }
.impersonation-dialog-card .dialog-status { margin-bottom: 0; }
.impersonation-dialog-card .portal-button-danger { color: #fff; background: #b4233b; border-color: #d6475b; }

@media (max-width: 620px) {
  .impersonation-banner { align-items: stretch; flex-direction: column; gap: 8px; }
  .impersonation-exit { width: 100%; }
  .impersonation-dialog-card { padding: 28px 22px; }
}

button,
input,
textarea,
select { font-family: var(--product-sans); }

h1,
h2,
h3,
.workspace-kicker,
.portal-brand { font-family: var(--product-display); }

*:focus-visible {
  outline: 2px solid #72a7ff;
  outline-offset: 2px;
}

/* Authentication ------------------------------------------------------- */

.portal-shell { width: min(1180px, calc(100% - 40px)); }
.portal-nav { min-height: 78px; }
.portal-brand { color: #f5f7fb; font-weight: 650; letter-spacing: -.02em; }
.portal-brand img { display: none; }
.portal-brand img.product-brand-logo {
  display: block;
  width: 142px;
  height: auto;
  border-radius: 0;
}
.portal-card {
  color: var(--ink);
  background: rgba(12, 15, 23, .92);
  border-color: rgba(255,255,255,.14);
  border-radius: 16px;
  box-shadow: 0 32px 100px rgba(0,0,0,.5), inset 0 1px rgba(255,255,255,.035);
}
.auth-layout { min-height: calc(100vh - 78px); }
.auth-card { position: relative; overflow: hidden; width: min(500px, 100%); padding: 44px; }
.auth-card::before { content: ""; position: absolute; width: 280px; height: 280px; top: -190px; right: -120px; background: #397fff; border-radius: 50%; filter: blur(70px); opacity: .25; }
.auth-card > * { position: relative; }
.auth-card h1 { color: #fff; font-size: clamp(34px, 6vw, 46px); font-weight: 520; letter-spacing: -.045em; }
.auth-card > p { color: var(--muted); }
.field-label { color: #dce2ec; font-size: 12px; }
.field-input,
select,
textarea,
.compact-search,
.group-list-tools input,
.group-list-tools select,
.mentions-control input,
.mentions-control select,
.filter-combobox input,
.admin-request-toolbar select,
.admin-request-decision select,
.admin-request-decision input,
#time-zone-select {
  color: #eef2f8;
  background-color: #090c12;
  border-color: rgba(255,255,255,.15);
  border-radius: 8px;
}
.field-input::placeholder,
textarea::placeholder,
input::placeholder { color: #596477; }
.field-input:focus,
select:focus,
textarea:focus,
.compact-search:focus,
.filter-combobox input:focus {
  border-color: #4d8fff;
  box-shadow: 0 0 0 3px rgba(47,124,255,.14);
}
.portal-button {
  min-height: 44px;
  color: #fff;
  background: #397fff;
  border: 1px solid #397fff;
  border-radius: 8px;
  font-size: 15px;
  font-weight: 650;
  box-shadow: 0 10px 28px rgba(47,124,255,.16);
}
.portal-button:hover { background: #4b8bff; border-color: #4b8bff; }
.portal-button-secondary {
  color: #dce2ec;
  background: rgba(255,255,255,.035);
  border-color: rgba(255,255,255,.14);
  box-shadow: none;
}
.portal-button-secondary:hover { color: #fff; background: rgba(255,255,255,.075); }
.portal-button-danger { color: #ff9aa7; background: rgba(255,91,111,.06); border-color: rgba(255,91,111,.24); }
.auth-divider { color: #596477; }
.auth-divider::before, .auth-divider::after { background: var(--line); }
.confirm-icon { color: #8db8ff; background: rgba(57,127,255,.12); border: 1px solid rgba(57,127,255,.22); }

/* Product shell -------------------------------------------------------- */

.preview-banner { color: #dce7fb; background: #162645; border-color: rgba(93,151,255,.28); }
.preview-dot { background: #6fa8ff; box-shadow: 0 0 0 3px rgba(111,168,255,.14); }
.dashboard-shell { grid-template-columns: 240px minmax(0, 1fr); transition: grid-template-columns .2s ease; }
.app-sidebar {
  padding: 20px 14px 16px;
  color: var(--ink);
  background: rgba(7, 9, 14, .96);
  border-right: 1px solid var(--line);
  box-shadow: 18px 0 70px rgba(0,0,0,.12);
}
.sidebar-brand-row { position: relative; border-bottom: 1px solid var(--line); }
.sidebar-brand { position: relative; display: flex; justify-content: center; align-items: center; width: 100%; min-height: 66px; padding: 3px 10px 18px; border-bottom: 0; }
.sidebar-brand .product-brand-logo { width: 154px; }
.sidebar-brand::after {
  content: "";
  position: absolute;
  left: calc(50% + 12px);
  bottom: 29px;
  width: 20px;
  height: 4px;
  border-radius: 999px;
  background: #ed7b45;
  box-shadow: 0 0 14px rgba(237, 123, 69, .28);
}
.sidebar-collapse {
  position: absolute;
  top: 18px;
  right: -27px;
  z-index: 3;
  display: grid;
  place-items: center;
  width: 27px;
  height: 31px;
  padding: 0;
  color: #92a0b5;
  background: #0a0d14;
  border: 1px solid var(--line);
  border-left: 0;
  border-radius: 0 8px 8px 0;
  cursor: pointer;
}
.sidebar-collapse:hover { color: #fff; background: #111722; }
.sidebar-collapse svg { width: 17px; height: 17px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; transition: transform .2s ease; }
.sidebar-nav { gap: 4px; margin-top: 17px; }
.sidebar-link {
  grid-template-columns: 30px minmax(0, 1fr) auto;
  column-gap: 14px;
  min-height: 48px;
  padding: 0 12px;
  color: #8993a5;
  border: 1px solid transparent;
  border-radius: 8px;
  font-size: 15px;
  font-weight: 600;
}
.sidebar-link:hover { color: #e7ebf2; background: rgba(255,255,255,.035); }
.sidebar-link.is-active {
  color: #fff;
  background: rgba(57,127,255,.13);
  border-color: rgba(75,141,255,.18);
  box-shadow: inset 2px 0 #4a8cff;
}
.sidebar-icon {
  width: 28px;
  height: 28px;
  color: #6d7789;
  background: transparent;
  border: 0;
  border-radius: 6px;
}
.sidebar-icon svg,
.settings-tab svg,
.button-icon {
  display: block;
  width: 20px;
  height: 20px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.sidebar-link.is-active .sidebar-icon { color: #8eb8ff; }
.sidebar-count { color: #a9c7ff; background: rgba(57,127,255,.12); }
.security-disclosure { color: #98a3b6; background: rgba(255,255,255,.025); border-color: var(--line); }
.security-disclosure summary, .sidebar-text-button { color: #c9d0dc; }
.sidebar-user { padding: 13px 8px 0; border-top: 1px solid var(--line); }
.user-avatar { color: #d8e7ff; background: rgba(57,127,255,.22); border: 1px solid rgba(96,150,255,.3); }
.sidebar-user-copy strong { color: #e9edf4; font-size: 13px; font-weight: 600; }
.sidebar-user-copy span { color: #7d889a; font-size: 12px; font-weight: 500; }
.icon-button { color: #7f8a9d; border-radius: 7px; }
.icon-button:hover { color: #fff; background: rgba(255,255,255,.06); }
.icon-button.bordered { color: #9aa5b7; background: rgba(255,255,255,.025); border-color: var(--line); }

body.sidebar-collapsed .dashboard-shell { grid-template-columns: 84px minmax(0, 1fr); }
body.sidebar-collapsed .app-sidebar { padding-inline: 10px; }
body.sidebar-collapsed .sidebar-brand { padding-inline: 0; }
body.sidebar-collapsed .sidebar-brand .product-brand-logo { display: none; }
body.sidebar-collapsed .sidebar-brand::after { display: none; }
body.sidebar-collapsed .sidebar-link {
  grid-template-columns: 30px;
  justify-content: center;
  padding-inline: 0;
}
body.sidebar-collapsed .sidebar-label,
body.sidebar-collapsed .sidebar-count,
body.sidebar-collapsed .sidebar-user-copy { display: none; }
body.sidebar-collapsed .security-disclosure { display: none; }
body.sidebar-collapsed .sidebar-user {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 8px;
  padding-inline: 0;
}
body.sidebar-collapsed .sidebar-collapse svg { transform: rotate(180deg); }

.app-workspace { background: transparent; }
.workspace-header {
  min-height: 68px;
  padding: 0 28px;
  background: rgba(6, 7, 11, .8);
  border-bottom-color: var(--line);
  backdrop-filter: blur(16px);
}
.workspace-kicker { color: #f0f3f8; font-size: 17px; font-weight: 650; letter-spacing: -.02em; }
.workspace-date { color: #a1aabb; font-size: 14px; font-weight: 600; }
.workspace-main { width: min(1480px, calc(100% - 48px)); padding: 32px 0 70px; }

.workspace-hero {
  min-height: 150px;
  padding: 27px 32px;
  overflow: hidden;
  background:
    radial-gradient(circle at 82% 20%, rgba(57,127,255,.2), transparent 24rem),
    rgba(12,15,23,.78);
  border: 1px solid var(--line);
  border-radius: 14px 14px 0 0;
}
.workspace-hero h1 { color: #fff; font-size: clamp(32px, 3vw, 42px); font-weight: 620; letter-spacing: -.04em; }
.workspace-hero > div > p:last-child { color: #a8b1c0; font-size: 16px; font-weight: 500; line-height: 1.55; }
.section-eyebrow, .card-kicker { color: #79aaff; font-size: 12px; font-weight: 700; letter-spacing: .11em; }
.hero-updated {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 190px;
  padding: 13px 15px;
  color: #dbe4f4;
  background: rgba(255,255,255,.025);
  border: 1px solid var(--line);
  border-radius: 10px;
  text-align: left;
}
.hero-updated-icon {
  display: grid !important;
  place-items: center;
  width: 36px;
  height: 36px;
  color: #82afff !important;
  background: rgba(57,127,255,.11);
  border: 1px solid rgba(57,127,255,.22);
  border-radius: 9px;
}
.hero-updated-icon svg { width: 19px; height: 19px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.hero-updated > div > span { color: #9ca6b7; font-size: 12px; font-weight: 600; }
.hero-updated strong { margin-top: 3px; font-size: 15px; font-weight: 650; }

.metric-strip {
  min-height: 82px;
  overflow: hidden;
  background: rgba(10,13,20,.86);
  border: 1px solid var(--line);
  border-radius: 10px;
  box-shadow: 0 16px 40px rgba(0,0,0,.12);
}
.workspace-hero + .metric-strip { border-top: 0; border-radius: 0 0 14px 14px; }
.metric-item { min-height: 82px; padding: 15px 22px; border-right-color: var(--line); }
.metric-item span:not(.metric-mark) { color: #98a3b5; font-size: 12px; font-weight: 600; letter-spacing: .04em; text-transform: uppercase; }
.metric-item strong { margin-top: 6px; color: #f4f7fb; font: 650 30px/1 var(--product-display); }
.metric-item small { margin-top: 7px; color: #919caf; font-size: 12px; font-weight: 750; }
.metric-mark { width: 3px; height: 27px; border-radius: 4px; box-shadow: 0 0 16px currentColor; }
.metric-mark-blue { color: #397fff; background: currentColor; }
.metric-mark-slate { color: #75829a; background: currentColor; }
.metric-mark-green { color: #397fff; background: currentColor; }

.app-toast:not(:empty) { background: #171d29; border: 1px solid var(--line); box-shadow: 0 12px 38px rgba(0,0,0,.3); }
.workspace-grid { grid-template-columns: minmax(0, 1fr) 330px; gap: 18px; margin-top: 18px; }
.workspace-secondary { gap: 18px; }
body[data-workspace-view="overview"] .workspace-grid,
body[data-workspace-view="groups"] .workspace-grid,
body[data-workspace-view="prompts"] .workspace-grid { grid-template-columns: minmax(0, 1fr); }
body[data-workspace-view="groups"] .workspace-secondary,
body[data-workspace-view="prompts"] .workspace-secondary { width: 100%; }
.product-card {
  color: var(--ink);
  background: rgba(11,14,21,.88);
  border-color: var(--line);
  border-radius: 12px;
  box-shadow: 0 18px 50px rgba(0,0,0,.16), inset 0 1px rgba(255,255,255,.018);
}
.card-heading { padding: 21px 22px 17px; border-bottom: 1px solid var(--line-soft); }
.card-heading h2 { color: #f1f4f8; font-size: 23px; font-weight: 650; letter-spacing: -.02em; }
.compact-heading { padding: 18px 19px 14px; }

/* Prompts -------------------------------------------------------------- */

.brief-summary { border-bottom: 0; }
.brief-summary p { color: #98a3b5; font-size: 14px; font-weight: 500; }
.brief-summary-action { color: #aecbff; background: rgba(57,127,255,.1); border-color: rgba(57,127,255,.2); }
.brief-card[open] .brief-summary-action::after { font-size: 12px; }
.brief-card[open] .brief-summary { border-bottom-color: var(--line); }
.brief-card form > .field-label:first-child { display: block; padding-top: 18px; }
.brief-card .prompt-title-input { display: block; width: 100%; height: 48px; margin-top: 8px; padding: 0 14px; color: #eef2f8; background: #080b11; border-color: rgba(255,255,255,.14); font-size: 16px; font-weight: 550; }
.prompt-field-hint { margin: 7px 0 0; color: #7f8a9c; font-size: 13px; font-weight: 500; }
.prompt-instructions-label { display: block; margin-top: 20px; }
.brief-card #brief-input { margin-top: 8px; }
.brief-card textarea { min-height: 180px; color: #eef2f8 !important; background: #080b11 !important; border-color: rgba(255,255,255,.14); font-size: 16px; font-weight: 500; line-height: 1.6; }
.brief-meta { color: #8d98aa; font-size: 13px; font-weight: 500; }
.group-picker { background: rgba(255,255,255,.015); border-color: var(--line); }
.group-picker legend { color: #7b8799; background: #0b0e15; }
.scope-option { background: rgba(255,255,255,.02); border-color: var(--line); }
.scope-option:has(input:checked) { background: rgba(57,127,255,.09); border-color: rgba(57,127,255,.35); box-shadow: inset 0 0 0 1px rgba(57,127,255,.08); }
.scope-option strong { color: #e8ecf3; font-size: 15px; font-weight: 600; }
.scope-option small { color: #929dae; font-size: 13px; font-weight: 500; }
.specific-scope { background: rgba(255,255,255,.018); border-color: var(--line); }
.picker-results { color: var(--ink); background: #0d1119; border-color: rgba(255,255,255,.14); box-shadow: 0 20px 55px rgba(0,0,0,.46); }
.picker-result { color: #d7dce5; background: transparent; border-bottom-color: var(--line-soft); }
.picker-result:hover:not(:disabled) { background: rgba(57,127,255,.1); }
.selected-group-chip, .brief-group-tags span { color: #b8d1ff; background: rgba(57,127,255,.1); border-color: rgba(57,127,255,.22); }
.selected-group-chip button { color: #8eabe0; }
.brief-history { border-top-color: var(--line); }
.saved-brief { border-bottom-color: var(--line); }
.prompt-row-copy { flex: 1; min-width: 0; }
.prompt-row-title { display: block; color: #f2f5fa; font-size: 17px; font-weight: 650; line-height: 1.35; }
.prompt-row-copy p { margin-top: 5px; }
.saved-brief p { color: #dfe4ec; font-size: 15px; font-weight: 500; line-height: 1.55; }
.saved-brief.is-paused { background: rgba(255,255,255,.015); }
.prompt-row-actions button { min-height: 36px; color: #a9bddf; background: rgba(255,255,255,.025); border-color: var(--line); font-size: 13px; font-weight: 600; }
.prompt-row-actions button:hover:not(:disabled) { color: #fff; background: rgba(57,127,255,.1); }
.prompt-row-actions .prompt-delete-action { color: #ff98a5; }
.prompt-row-actions .prompt-delete-action:hover:not(:disabled) { color: #ffb0ba; background: rgba(255,91,111,.08); border-color: rgba(255,91,111,.22); }

/* Identified posts ----------------------------------------------------- */

.mentions-commandbar {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto auto;
  align-items: center;
  gap: 12px;
  padding: 11px 14px;
  background: rgba(255,255,255,.012);
  border-bottom: 1px solid var(--line);
}
.mentions-heading { min-width: 135px; }
.mentions-heading h2 { margin: 0; color: #f1f4f8; font-size: 18px; font-weight: 650; letter-spacing: -.015em; white-space: nowrap; }
.mentions-toolbar {
  grid-template-columns: minmax(190px, 1.35fr) minmax(145px, .9fr) minmax(155px, 1fr) 125px;
  gap: 7px;
  padding: 0;
  background: transparent;
  border: 0;
}
.mentions-control { color: #929dae; font-size: 12px; font-weight: 650; letter-spacing: .045em; text-transform: uppercase; }
.mentions-control input, .mentions-control select { height: 38px; color: #e4e9f1; background: #080b11; border-color: var(--line); border-radius: 7px; font-size: 13px; font-weight: 500; text-transform: none; }
.mentions-note { min-width: 92px; padding: 0; color: #8f9aad; background: transparent; border: 0; font-size: 11px; font-weight: 600; white-space: nowrap; }
.mentions-note[data-state="reconnecting"] { color: #ffc978; background: transparent; }
.mentions-commandbar .mentions-actions { gap: 6px; }
.mentions-commandbar .filter-reset-button { min-height: 34px; padding-inline: 9px; white-space: nowrap; }
.mentions-commandbar .icon-button { width: 36px; height: 36px; }
.mentions-commandbar .mentions-group-control input { padding-right: 34px; }
.mentions-commandbar .mentions-group-control .text-clear-button { display: grid; place-items: center; top: 4px; right: 4px; width: 28px; height: 30px; padding: 0; font-size: 0; z-index: 2; }
.mentions-commandbar .mentions-group-control .text-clear-button::after { content: "×"; font-size: 16px; line-height: 1; }
.post-row { position: relative; padding: 22px; border-bottom-color: var(--line); transition: background .18s ease; }
.post-row:hover { background: rgba(255,255,255,.018); }
.post-context { margin-bottom: 15px; }
.post-group {
  color: #9fc2ff;
  background: rgba(57,127,255,.1);
  border: 1px solid rgba(57,127,255,.18);
  border-radius: 5px;
  font-size: 13px;
  font-weight: 650;
  letter-spacing: .02em;
}
.post-prompt {
  color: #b5c2d6;
  background: rgba(255,255,255,.035);
  border: 1px solid var(--line);
  border-radius: 5px;
  font-size: 13px;
  font-weight: 550;
}
.post-prompt::before { color: #79aaff; background: transparent; box-shadow: none; }
.post-prompt:hover { color: #fff; background: rgba(57,127,255,.1); border-color: rgba(57,127,255,.24); }
.post-avatar { color: #a8c6ff; background: rgba(57,127,255,.11); border: 1px solid rgba(57,127,255,.16); }
.post-author { color: #edf1f6; font-size: 15px; font-weight: 650; }
.post-meta { color: #adb6c5; font-size: 14px; font-weight: 600; }
.post-text { max-width: 980px; color: #dce1e9; font-size: 16px; font-weight: 500; line-height: 1.65; }
.post-link { color: #b8d3ff; background: rgba(57,127,255,.07); border-color: rgba(57,127,255,.19); border-radius: 7px; font-size: 13px; font-weight: 650; }
.post-link:hover { color: #fff; background: rgba(57,127,255,.14); }
a.post-group:hover { color: #dce9ff; background: rgba(57,127,255,.16); }

.card-pager { background: rgba(255,255,255,.01); border-top-color: var(--line); }
.card-pager button { min-height: 36px; color: #aac0e4; background: rgba(255,255,255,.025); border-color: var(--line); font-size: 13px; font-weight: 600; }
.card-pager button:hover:not(:disabled) { color: #fff; background: rgba(57,127,255,.1); }
.card-pager button:disabled { color: #464f5e; }
.card-pager span { color: #929dae; font-size: 13px; font-weight: 500; }
.empty-state { color: #929dae; font-size: 15px; font-weight: 500; }

/* Groups --------------------------------------------------------------- */

.group-list-tools {
  background: rgba(255,255,255,.015);
  border-block-color: var(--line);
}
.group-row { border-bottom-color: var(--line); }
.group-initial { color: #a8c6ff; background: rgba(57,127,255,.1); border: 1px solid rgba(57,127,255,.17); }
.group-copy a { color: #e5e9f0; font-size: 15px; font-weight: 650; }
.group-copy span { color: #929dae; font-size: 13px; font-weight: 500; }
.group-swap-note {
  color: #9da8b9;
  background: rgba(57,127,255,.035);
  border-bottom-color: var(--line);
  font-size: 12px;
}
.group-swap-note strong { color: #dbe7fb; }
.group-archive-button {
  color: #ff9aaa;
  background: rgba(255,91,111,.09);
  border-color: rgba(255,91,111,.24);
  font-size: 12px;
}
.group-archive-button:hover,
.group-archive-button:focus-visible {
  color: #ffc0c8;
  background: rgba(255,91,111,.16);
  border-color: rgba(255,91,111,.4);
}
.group-unarchive-button {
  color: #9fc2ff;
  background: rgba(57,127,255,.1);
  border-color: rgba(57,127,255,.25);
}
.group-unarchive-button:hover,
.group-unarchive-button:focus-visible {
  color: #d3e3ff;
  background: rgba(57,127,255,.17);
  border-color: rgba(57,127,255,.42);
}
.status-chip { border: 1px solid transparent; }
.status-chip::before { box-shadow: 0 0 8px currentColor; }
.status-monitoring { color: #71d8b0; background: rgba(52,190,137,.08); border-color: rgba(52,190,137,.16); }
.status-pending { color: #ffc875; background: rgba(255,179,64,.07); border-color: rgba(255,179,64,.15); }
.status-rejected { color: #ff8b99; background: rgba(255,91,111,.07); border-color: rgba(255,91,111,.15); }
.status-archived { color: #aab4c3; background: rgba(148,163,184,.08); border-color: rgba(148,163,184,.16); }
.small-add-button { color: #b8d2ff; background: rgba(57,127,255,.1); border-color: rgba(57,127,255,.22); }
.card-footer-action { color: #9dbdff; background: rgba(255,255,255,.012); border-top-color: var(--line); }
.card-footer-action:hover { color: #fff; background: rgba(57,127,255,.08); }

/* Settings and billing ------------------------------------------------- */

.settings-dialog, .group-dialog { color: var(--ink); background: #0c1018; border-color: rgba(255,255,255,.15); box-shadow: 0 35px 120px rgba(0,0,0,.62); }
.settings-dialog::backdrop, .group-dialog::backdrop { background: rgba(1,2,4,.77); backdrop-filter: blur(8px); }
.settings-dialog-shell { grid-template-columns: 210px minmax(0, 1fr); background: #0c1018; }
.settings-dialog-sidebar { background: #080b11; border-right-color: var(--line); }
.settings-dialog-brand span { color: #657185; }
.settings-dialog-brand .settings-brand-logo { display: block; width: 126px; height: auto; margin: 0 0 7px; }
.settings-dialog-brand strong { color: #f1f4f8; font-family: var(--product-display); font-weight: 540; }
.settings-tab { color: #7f8a9c; }
.settings-tab > span { color: #6e798c; background: rgba(255,255,255,.025); border-color: var(--line); }
.settings-tab:hover { color: #e7eaf0; background: rgba(255,255,255,.035); }
.settings-tab.is-active { color: #fff; background: rgba(57,127,255,.11); box-shadow: inset 2px 0 #4c8cff; }
.settings-tab.is-active > span { color: #9fc2ff; background: rgba(57,127,255,.08); border-color: rgba(57,127,255,.28); }
.settings-dialog-content { background: #0d1119; }
.settings-panel-heading h2 { color: #fff; font-family: var(--product-display); font-weight: 520; letter-spacing: -.035em; }
.settings-panel-heading p, .time-zone-preview, .account-footnote { color: #7e899b; }
.settings-dialog-section { background: rgba(255,255,255,.018); border-color: var(--line); }
.settings-dialog-title strong { color: #e9edf3; }
.settings-dialog-title > div > span { color: #747f91; }
.settings-dialog-actions { background: rgba(8,11,17,.92); border-top-color: var(--line); backdrop-filter: blur(12px); }
.settings-billing-card { background: transparent; border: 0; box-shadow: none; }
.account-card-heading h3 { color: #f4f6fa; }
.status-pill { color: #73d9b1; background: rgba(52,190,137,.08); border-color: rgba(52,190,137,.17); }
.status-pill[data-tone="warning"] { color: #ffc875; background: rgba(255,179,64,.07); border-color: rgba(255,179,64,.16); }
.status-pill[data-tone="muted"] { color: #9aa5b7; background: rgba(255,255,255,.035); border-color: var(--line); }
.billing-price strong { color: #fff; font-family: var(--product-display); }
.account-detail-list { border-color: var(--line); }
.account-detail-list div { background: rgba(255,255,255,.018); border-color: var(--line); }
.account-detail-list dt { color: #667185; }
.account-detail-list dd { color: #e4e8ef; }
.usage-block { color: #8a95a7; background: rgba(255,255,255,.018); border-color: var(--line); }
.usage-block strong { color: #e9edf3; }
.usage-track { background: rgba(255,255,255,.07); }
.usage-track span { background: #397fff; }
.billing-plan-choice { color: #dbe1ea; background: rgba(255,255,255,.018); border-color: var(--line); }
.billing-plan-choice:hover:not(:disabled) { background: rgba(57,127,255,.08); border-color: rgba(57,127,255,.28); }
.billing-plan-choice small { color: #6f7b8e; }
.billing-promo-form button {
  color: #fff;
  -webkit-text-fill-color: #fff;
  background: #397fff;
  border: 1px solid #397fff;
}
.billing-promo-form button:hover:not(:disabled) {
  color: #fff;
  background: #4b8bff;
  border-color: #4b8bff;
}

.professional-welcome-dialog {
  width: min(520px, calc(100% - 28px));
  padding: 0;
  overflow: visible;
  color: #f4f7fb;
  background: transparent;
  border: 0;
}
.professional-welcome-dialog::backdrop {
  background: rgba(1, 3, 8, .82);
  backdrop-filter: blur(9px);
}
.professional-welcome-card {
  position: relative;
  overflow: hidden;
  padding: 44px 38px 36px;
  text-align: center;
  background: radial-gradient(circle at 50% 0, rgba(57,127,255,.2), transparent 48%), #0d121c;
  border: 1px solid rgba(111,160,255,.3);
  border-radius: 22px;
  box-shadow: 0 35px 110px rgba(0,0,0,.7), 0 0 55px rgba(57,127,255,.13);
  animation: professional-welcome-in .46s cubic-bezier(.2,.82,.24,1.08) both;
}
.professional-welcome-mark {
  display: grid;
  place-items: center;
  width: 68px;
  height: 68px;
  margin: 0 auto 22px;
  color: #fff;
  background: linear-gradient(145deg, #5795ff, #2769e8);
  border: 1px solid rgba(255,255,255,.28);
  border-radius: 50%;
  box-shadow: 0 14px 38px rgba(57,127,255,.35);
  font-size: 30px;
  font-weight: 800;
  animation: professional-mark-in .58s .14s cubic-bezier(.2,.9,.2,1.25) both;
}
.professional-welcome-card .card-kicker { color: #8fb8ff; }
.professional-welcome-card h2 {
  margin: 10px 0 8px;
  color: #fff;
  font-family: var(--product-display);
  font-size: clamp(29px, 5vw, 40px);
  font-weight: 560;
  letter-spacing: -.045em;
}
.professional-welcome-card > p { margin: 0; color: #a8b3c4; font-size: 15px; }
.professional-welcome-card .professional-welcome-end { min-height: 20px; margin-top: 7px; color: #7f8da2; font-size: 12px; }
.professional-welcome-features {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 7px;
  margin: 24px 0;
}
.professional-welcome-features span {
  padding: 7px 10px;
  color: #c6d8f8;
  background: rgba(57,127,255,.08);
  border: 1px solid rgba(90,145,255,.17);
  border-radius: 999px;
  font-size: 11px;
  font-weight: 650;
}
.professional-welcome-card .portal-button { min-width: 180px; min-height: 46px; }
.professional-confetti { position: absolute; inset: 0; pointer-events: none; }
.professional-confetti span {
  position: absolute;
  top: 16%;
  left: 50%;
  width: 7px;
  height: 13px;
  opacity: 0;
  background: var(--confetti-color);
  border-radius: 2px;
  animation: professional-confetti-pop 1.65s var(--confetti-delay) cubic-bezier(.15,.7,.25,1) forwards;
}
@keyframes professional-welcome-in {
  from { opacity: 0; transform: translateY(14px) scale(.96); }
  to { opacity: 1; transform: translateY(0) scale(1); }
}
@keyframes professional-mark-in {
  from { opacity: 0; transform: scale(.45) rotate(-18deg); }
  to { opacity: 1; transform: scale(1) rotate(0); }
}
@keyframes professional-confetti-pop {
  0% { opacity: 0; transform: translate(-50%, 0) rotate(0); }
  12% { opacity: 1; }
  100% { opacity: 0; transform: translate(calc(-50% + var(--confetti-x)), var(--confetti-y)) rotate(var(--confetti-rotation)); }
}
@media (prefers-reduced-motion: reduce) {
  .professional-welcome-card, .professional-welcome-mark, .professional-confetti span { animation: none; }
  .professional-confetti { display: none; }
}

.settings-billing-action { color: #a9c9ff; background: rgba(57,127,255,.07); border-color: rgba(57,127,255,.19); }
.settings-billing-action:hover:not(:disabled) { color: #fff; background: rgba(57,127,255,.13); }

/* Administration ------------------------------------------------------- */

.security-card { color: #ffd692; background: rgba(255,179,64,.07); border-color: rgba(255,179,64,.2); }
.security-card p { color: #c49d60; }
.settings-section { color: var(--ink); background: transparent; }
.settings-heading { border-bottom-color: var(--line); }
.settings-heading h2 { color: #fff; font-family: var(--product-display); font-weight: 520; }
.settings-heading p { color: #7d889a; }
.admin-lock { color: #b8d2ff; background: rgba(57,127,255,.09); border-color: rgba(57,127,255,.2); }
.admin-metrics { border-color: var(--line); border-radius: 12px; overflow: hidden; }
.admin-metrics article { background: rgba(11,14,21,.86); border-color: var(--line); }
.admin-metrics span { color: #687487; }
.admin-metrics strong { color: #f2f5f9; font-family: var(--product-display); }
.admin-request-note { color: #748094; background: rgba(255,255,255,.012); border-block-color: var(--line); }
.admin-request-row { border-bottom-color: var(--line); }
.admin-request-title strong { color: #e8ecf2; }
.admin-request-meta { color: #6d788b; }
.admin-request-save { color: #fff; background: #397fff; }
.role-badge { color: #b8d2ff; background: rgba(57,127,255,.09); border-color: rgba(57,127,255,.18); }

/* Dialogs -------------------------------------------------------------- */

.group-dialog { width: min(780px, calc(100% - 28px)); }
.dialog-panel { background: #0d1119; }
.dialog-heading { border-bottom-color: var(--line); }
.dialog-heading h2 { color: #fff; font-family: var(--product-display); font-size: 24px; font-weight: 650; }
.dialog-heading p { color: #9ca6b7; font-size: 14px; font-weight: 500; line-height: 1.5; }
.dialog-actions { background: rgba(8,11,17,.9); border-top-color: var(--line); }
.group-entry-labels { display: grid; grid-template-columns: minmax(150px, .7fr) minmax(0, 1fr) 150px 36px; gap: 9px; margin-bottom: 7px; color: #cbd2dd; font-size: 13px; font-weight: 600; }
.group-entry-list { display: grid; gap: 9px; max-height: min(46vh, 390px); overflow-y: auto; padding-right: 3px; }
.group-entry { display: grid; grid-template-columns: minmax(150px, .7fr) minmax(0, 1fr) 150px 36px; gap: 9px; align-items: center; }
.group-entry .field-input { width: 100%; height: 44px; min-width: 0; }
.group-entry-remove { display: grid; place-items: center; width: 36px; height: 36px; padding: 0; color: #ff9ca8; background: rgba(255,91,111,.06); border: 1px solid rgba(255,91,111,.16); border-radius: 7px; font-size: 20px; cursor: pointer; }
.group-entry-remove:hover { color: #ffc1c8; background: rgba(255,91,111,.11); }
.add-group-entry { margin-top: 11px; padding: 7px 0; color: #9fc2ff; background: transparent; border: 0; font-size: 13px; font-weight: 650; cursor: pointer; }
.add-group-entry:hover:not(:disabled) { color: #c3d8ff; }
.add-group-entry:disabled { color: #586375; cursor: not-allowed; }
.group-entry-hint { margin: 4px 0 0; color: #7d889a; }

/* Dashboard legibility and interaction -------------------------------- */

.app-portal { font-size: 16px; font-weight: 500; }
.app-portal button,
.app-portal input,
.app-portal textarea,
.app-portal select { font-weight: 500; }

.app-portal input,
.app-portal textarea,
.app-portal select,
.app-portal option {
  color: #eef2f8;
  color-scheme: dark;
  background-color: #080b11;
}
.app-portal input:-webkit-autofill,
.app-portal textarea:-webkit-autofill,
.app-portal select:-webkit-autofill {
  -webkit-text-fill-color: #eef2f8;
  box-shadow: 0 0 0 1000px #080b11 inset;
}
.app-portal .field-label,
.group-picker legend { color: #cbd2dd; font-size: 14px; font-weight: 600; }
.compact-search,
.group-list-tools input,
.group-list-tools select,
.filter-combobox input,
.admin-request-toolbar select,
.admin-request-decision select,
.admin-request-decision input,
#time-zone-select {
  min-height: 40px;
  font-size: 14px;
  font-weight: 500;
}

.sidebar-count { font-size: 12px; font-weight: 650; }
.button-icon { width: 19px; height: 19px; }
.filter-reset-button {
  min-height: 34px;
  padding: 0 10px;
  color: #aecaFA;
  background: transparent;
  border: 1px solid rgba(57,127,255,.24);
  border-radius: 7px;
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
}
.filter-reset-button:hover:not(:disabled) { color: #fff; background: rgba(57,127,255,.1); }
.filter-reset-button:disabled { cursor: wait; opacity: .55; }

.brief-summary-action,
.status-pill,
.status-chip { font-size: 12px; font-weight: 650; }
.group-picker legend { background: #0b0e15; }
.picker-result strong { font-size: 14px; font-weight: 650; }
.picker-result small { color: #929dae; font-size: 12px; font-weight: 500; }
.picker-result > span:last-child { font-size: 13px; font-weight: 650; }
.brief-group-tags span { font-size: 12px; font-weight: 550; }
.settings-tab { min-height: 46px; font-size: 15px; font-weight: 600; }
.settings-tab > span { width: 26px; height: 26px; }
.settings-tab svg { width: 17px; height: 17px; }
.settings-panel-heading h2,
.settings-heading h2 { font-size: 28px; font-weight: 650; }
.settings-panel-heading p,
.settings-heading p { color: #9ca6b7; font-size: 15px; font-weight: 500; line-height: 1.55; }
.settings-dialog-title strong { font-size: 15px; font-weight: 650; }
.settings-dialog-title > div > span,
.time-zone-preview,
.account-footnote { color: #929dae; font-size: 12px; font-weight: 500; }
#time-zone-select { height: 46px; font-size: 14px; }
.account-card-heading h3 { font-size: 21px; font-weight: 650; }
.account-detail-list dt { color: #8f99aa; font-size: 11px; font-weight: 600; }
.account-detail-list dd { font-size: 14px; font-weight: 650; }
.usage-block { font-size: 13px; font-weight: 500; }
.billing-plan-choice { min-height: 64px; font-size: 14px; font-weight: 600; }
.billing-plan-choice small { font-size: 12px; font-weight: 500; }
.settings-billing-action { min-height: 38px; font-size: 12px; font-weight: 650; }
.admin-metrics span { font-size: 11px; font-weight: 600; }
.admin-metrics strong { font-size: 27px; font-weight: 650; }
.admin-request-note { color: #929dae; font-size: 12px; font-weight: 500; }
.admin-request-title a,
.admin-request-title strong { color: #e8ecf2; font-size: 14px; font-weight: 650; }
.admin-request-meta { color: #929dae; font-size: 11px; font-weight: 500; }
.group-type-pill { display: inline-flex; align-items: center; min-height: 25px; padding: 3px 8px; border: 1px solid var(--line); border-radius: 999px; font-size: 11px; font-weight: 650; white-space: nowrap; }
.group-type-public { color: #8fc0ff; background: rgba(57,127,255,.09); border-color: rgba(57,127,255,.2); }
.group-type-private { color: #d1d7e1; background: rgba(255,255,255,.045); }
.group-type-unspecified { color: #ffc978; background: rgba(255,179,64,.06); border-color: rgba(255,179,64,.16); }

.workspace-error {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr) auto;
  align-items: center;
  gap: 16px;
  margin: 18px 0;
  padding: 20px;
  color: #e9edf4;
  background: rgba(18,24,35,.96);
  border: 1px solid rgba(57,127,255,.26);
  border-radius: 12px;
  box-shadow: 0 18px 50px rgba(0,0,0,.2);
}
.workspace-error-mark {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  color: #bcd4ff;
  background: rgba(57,127,255,.13);
  border: 1px solid rgba(57,127,255,.25);
  border-radius: 10px;
  font-size: 20px;
  font-weight: 700;
}
.workspace-error h2 { margin: 2px 0 4px; font-size: 19px; font-weight: 650; }
.workspace-error p { margin: 0; color: #9ca6b7; font-size: 14px; }

.sidebar-scrim { display: none; }

/* Notification channels ------------------------------------------------ */

.notification-workspace {
  width: 100%;
  display: grid;
  gap: 24px;
}

.notification-page-heading {
  padding: 30px 34px;
  background: #0d1119;
  border: 1px solid var(--line);
  border-radius: 16px;
}

.notification-page-heading .section-eyebrow { margin: 0 0 10px; }
.notification-page-heading h1 {
  margin: 0;
  color: #f7f9fc;
  font-size: clamp(32px, 4vw, 46px);
  font-weight: 590;
  letter-spacing: -.035em;
}
.notification-page-heading > p:last-child {
  max-width: 850px;
  margin: 10px 0 0;
  color: #aeb7c6;
  font-size: 16px;
  line-height: 1.65;
}

.notification-channel-grid { display: grid; gap: 18px; }
.notification-channel-card {
  position: relative;
  overflow: hidden;
  padding: 26px 28px;
  background: #0d1119;
  border: 1px solid var(--line);
  border-radius: 16px;
}
.channel-card-heading {
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr) auto;
  align-items: center;
  gap: 16px;
  padding-bottom: 22px;
  border-bottom: 1px solid var(--line-soft);
}
.channel-card-heading h2 { margin: 0; color: #f5f7fb; font-size: 23px; font-weight: 650; }
.channel-card-heading p { margin: 5px 0 0; color: #9ea8b9; font-size: 15px; line-height: 1.5; }
.channel-card-heading .webhook-doc-link {
  display: inline-flex;
  margin-top: 7px;
  color: #8cb6ff;
  font-size: 14px;
  font-weight: 650;
  text-decoration: none;
}
.channel-card-heading .webhook-doc-link:hover { color: #c7dcff; text-decoration: underline; }
.channel-icon {
  display: grid;
  place-items: center;
  width: 48px;
  height: 48px;
  color: #83afff;
  background: rgba(57, 127, 255, .12);
  border: 1px solid rgba(57, 127, 255, .25);
  border-radius: 12px;
}
.channel-icon svg { width: 25px; height: 25px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.channel-switch { display: flex; align-items: center; gap: 10px; color: #d9dfE9; font-size: 14px; cursor: pointer; }
.channel-switch input { position: absolute; opacity: 0; pointer-events: none; }
.channel-switch span {
  position: relative;
  width: 42px;
  height: 24px;
  background: #242b38;
  border: 1px solid #394252;
  border-radius: 999px;
  transition: .18s ease;
}
.channel-switch span::after {
  content: "";
  position: absolute;
  top: 3px;
  left: 3px;
  width: 16px;
  height: 16px;
  background: #a9b2c0;
  border-radius: 50%;
  transition: .18s ease;
}
.channel-switch input:checked + span { background: #397fff; border-color: #397fff; }
.channel-switch input:checked + span::after { transform: translateX(18px); background: #fff; }
.channel-switch input:focus-visible + span { outline: 2px solid #72a7ff; outline-offset: 2px; }
.channel-switch b { font-weight: 600; }
.channel-form { display: grid; gap: 10px; padding: 22px 0; }
.channel-form .field-label { font-size: 14px; font-weight: 600; }
.channel-form .field-input,
.channel-verification .field-input {
  width: min(760px, 100%);
  min-height: 48px;
  color: #eef2f8;
  background: #090c12;
  border: 1px solid #2a3240;
  border-radius: 10px;
  font-size: 15px;
}
.channel-form select.field-input { padding-right: 38px; color-scheme: dark; }
.webhook-secret { display: grid; gap: 8px; max-width: 760px; margin-top: 4px; padding: 14px; background: rgba(57, 127, 255, .08); border: 1px solid rgba(57, 127, 255, .22); border-radius: 10px; }
.webhook-secret.hidden { display: none; }
.webhook-prompt-scope { display: grid; gap: 10px; max-width: 760px; margin: 2px 0 4px; padding: 15px; border: 1px solid #2a3240; border-radius: 10px; }
.webhook-prompt-scope.hidden { display: none; }
.webhook-prompt-scope legend { padding: 0 6px; color: #eef2f8; font-size: 14px; font-weight: 600; }
.webhook-prompt-options { display: grid; gap: 8px; margin: 2px 0 0 25px; padding: 12px; background: #090c12; border-radius: 8px; }
.webhook-prompt-options.hidden { display: none; }
.webhook-prompt-option { display: flex; gap: 9px; align-items: flex-start; color: #c7cfdb; font-size: 14px; line-height: 1.4; }
.webhook-prompt-option input { margin-top: 3px; accent-color: #397fff; }
.webhook-prompt-option small { display: block; margin-top: 2px; color: #7f8a9c; }
.webhook-security-help { max-width: 760px; padding: 13px 15px; color: #9ea8b9; background: #090c12; border: 1px solid #2a3240; border-radius: 10px; font-size: 13px; line-height: 1.5; }
.webhook-security-help summary { color: #dce3ed; font-weight: 600; cursor: pointer; }
.webhook-security-help p { margin: 10px 0; }
.webhook-security-help .portal-button { margin-top: 3px; }
.webhook-authorization-field { display: flex; width: min(760px, 100%); gap: 10px; align-items: center; }
.webhook-authorization-field .field-input { flex: 1 1 auto; width: auto; }
.webhook-authorization-field .portal-button { flex: 0 0 auto; min-width: 76px; min-height: 48px; }
.channel-form .form-hint { margin: 0; color: #7f8a9c; font-size: 13px; }
.channel-form-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin-top: 8px; }
.channel-form-actions .portal-button { min-height: 42px; }
.channel-verification { padding: 0 0 22px; }
.channel-verification > div { display: flex; gap: 10px; margin-top: 8px; }
.channel-verification .field-input { max-width: 210px; }
.channel-consent { display: flex; max-width: 820px; gap: 10px; align-items: flex-start; color: #aeb7c6; font-size: 13px; line-height: 1.5; }
.channel-consent input { margin-top: 3px; accent-color: #397fff; }
.channel-usage { display: grid; gap: 9px; padding-top: 20px; border-top: 1px solid var(--line-soft); }
.channel-usage > div:first-child { display: flex; justify-content: space-between; gap: 20px; color: #9da7b7; font-size: 14px; }
.channel-usage strong { color: #eef2f8; font-weight: 650; }
.channel-usage-track { overflow: hidden; height: 7px; background: #202734; border-radius: 999px; }
.channel-usage-track > span { display: block; width: 0; height: 100%; background: #397fff; border-radius: inherit; transition: width .25s ease; }
.channel-usage-track.unlimited > span { width: 100%; background: #526078; }
@media (max-width: 720px) {
  .notification-page-heading,
  .notification-channel-card { padding: 22px 18px; }
  .channel-card-heading { grid-template-columns: 42px minmax(0, 1fr); }
  .channel-switch { grid-column: 1 / -1; }
  .channel-form-actions { align-items: stretch; }
  .channel-form-actions .portal-button { flex: 1 1 180px; }
}

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

@media (max-width: 980px) {
  .dashboard-shell { display: block; }
  .app-sidebar {
    position: fixed;
    inset: 0 auto 0 0;
    width: min(284px, 86vw);
    transform: translateX(-105%);
    transition: transform .2s ease;
    box-shadow: 24px 0 70px rgba(0,0,0,.45);
    z-index: 40;
  }
  .app-sidebar.is-open { transform: translateX(0); }
  .sidebar-collapse { display: none; }
  body.sidebar-collapsed .app-sidebar { padding: 20px 14px 16px; }
  body.sidebar-collapsed .sidebar-brand { padding: 3px 10px 18px; }
  body.sidebar-collapsed .sidebar-brand .product-brand-logo { display: block; }
  body.sidebar-collapsed .sidebar-brand::after { display: block; }
  body.sidebar-collapsed .sidebar-link {
    grid-template-columns: 30px minmax(0, 1fr) auto;
    justify-content: initial;
    padding: 0 12px;
  }
  body.sidebar-collapsed .sidebar-label,
  body.sidebar-collapsed .sidebar-count,
  body.sidebar-collapsed .sidebar-user-copy { display: block; }
  body.sidebar-collapsed .security-disclosure { display: block; }
  body.sidebar-collapsed .sidebar-user {
    display: grid;
    grid-template-columns: 32px minmax(0, 1fr) 32px;
    justify-content: initial;
    gap: 9px;
    padding: 13px 8px 0;
  }
  .mobile-menu { display: inline-grid; }
  body.navigation-open { overflow: hidden; }
  body.navigation-open .sidebar-scrim {
    position: fixed;
    inset: 0;
    display: block;
    width: 100%;
    height: 100%;
    padding: 0;
    background: rgba(1,2,4,.68);
    border: 0;
    backdrop-filter: blur(4px);
    cursor: pointer;
    z-index: 30;
  }
  .workspace-grid { grid-template-columns: 1fr; }
  .workspace-secondary { grid-template-columns: 1fr; }
}

@media (max-width: 820px) {
  .mentions-commandbar { grid-template-columns: minmax(0, 1fr) auto auto; }
  .mentions-commandbar .mentions-toolbar { grid-column: 1 / -1; grid-row: 2; }
  .mentions-toolbar { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 720px) {
  .portal-shell { width: min(100% - 24px, 1180px); }
  .auth-card { padding: 30px 24px; }
  .workspace-main { width: min(100% - 24px, 1480px); padding-top: 20px; }
  .workspace-header { padding-inline: 14px; }
  .workspace-actions .portal-button { min-width: 0; padding-inline: 10px; }
  .workspace-hero { padding: 24px; }
  .metric-strip { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .metric-item { min-height: 88px; padding: 12px 10px; border-right: 1px solid var(--line); border-bottom: 0; }
  .metric-item:last-child { border-right: 0; }
  .metric-item span:not(.metric-mark) { font-size: 11px; }
  .metric-item strong { font-size: 23px; }
  .metric-mark { display: none; }
  .post-row { padding: 18px 16px; }
  .settings-dialog-shell { grid-template-columns: 1fr; }
  .settings-dialog-sidebar { border-right: 0; border-bottom: 1px solid var(--line); }
  .settings-dialog-nav { grid-template-columns: repeat(2, 1fr); }
  .workspace-error { grid-template-columns: 38px minmax(0, 1fr); }
  .workspace-error .portal-button { grid-column: 1 / -1; width: 100%; }
}

@media (max-width: 560px) {
  .mentions-commandbar { grid-template-columns: minmax(0, 1fr) auto; gap: 9px; }
  .mentions-commandbar .mentions-note { grid-column: 1; grid-row: 2; }
  .mentions-commandbar .mentions-toolbar { grid-column: 1 / -1; grid-row: 3; }
  .mentions-commandbar .mentions-actions { grid-column: 2; grid-row: 1 / 3; }
  .mentions-toolbar { grid-template-columns: 1fr; }
  .group-entry-labels { display: none; }
  .group-entry { grid-template-columns: minmax(0, 1fr) 36px; }
  .group-entry-name,
  .group-entry-url,
  .group-entry-type { grid-column: 1; }
  .group-entry-remove { grid-column: 2; grid-row: 1 / 4; }
  .workspace-actions { gap: 6px; }
  .workspace-actions .portal-button { min-height: 40px; padding-inline: 9px; font-size: 13px; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; }
}
/* Administrator SEO publishing */
.admin-blog-card {
  margin-top: 24px;
  overflow: hidden;
}

.admin-blog-heading p {
  max-width: 680px;
  margin: 5px 0 0;
  color: var(--portal-muted, #9aa5b5);
}

.admin-blog-layout {
  display: grid;
  grid-template-columns: minmax(260px, .62fr) minmax(0, 1.6fr);
  min-height: 720px;
  border-top: 1px solid var(--portal-line, #252c36);
}

.admin-blog-list-panel {
  border-right: 1px solid var(--portal-line, #252c36);
  background: rgba(5, 8, 13, .46);
}

.admin-blog-list {
  display: grid;
  align-content: start;
}

.admin-blog-list-item {
  width: 100%;
  border: 0;
  border-bottom: 1px solid var(--portal-line, #252c36);
  padding: 19px 20px;
  background: transparent;
  color: inherit;
  text-align: left;
  cursor: pointer;
}

.admin-blog-list-item:hover,
.admin-blog-list-item.is-active {
  background: rgba(67, 133, 245, .1);
}

.admin-blog-list-item.is-active {
  box-shadow: inset 3px 0 #4385f5;
}

.admin-blog-list-item strong {
  display: block;
  margin-bottom: 8px;
  color: #eef3fb;
  font-size: 1rem;
  line-height: 1.35;
}

.admin-blog-list-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 7px 10px;
  color: #8995a6;
  font-size: .8rem;
}

.admin-blog-status-pill {
  border: 1px solid #354154;
  border-radius: 999px;
  padding: 2px 8px;
  color: #a8b4c5;
  font-size: .72rem;
  font-weight: 750;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.admin-blog-status-pill[data-status="published"] {
  border-color: #266947;
  background: rgba(25, 126, 75, .13);
  color: #70d49e;
}

.admin-blog-editor {
  min-width: 0;
  padding: 26px;
}

.admin-blog-editor-heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 24px;
}

.admin-blog-editor-heading h3 {
  margin: 4px 0 0;
  color: #f3f6fb;
  font-size: 1.45rem;
}

.admin-blog-preview {
  color: #83b2ff;
  font-weight: 700;
  text-decoration: none;
}

.admin-blog-field-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.admin-blog-field {
  display: grid;
  gap: 7px;
  min-width: 0;
}

.admin-blog-field > span {
  color: #bcc6d4;
  font-size: .87rem;
  font-weight: 700;
}

.admin-blog-field-wide { grid-column: 1 / -1; }
.admin-blog-summary { min-height: 88px; resize: vertical; }
.admin-blog-meta { min-height: 78px; resize: vertical; }
.admin-blog-body {
  min-height: 440px;
  resize: vertical;
  font-family: "SFMono-Regular", Consolas, "Liberation Mono", monospace;
  font-size: .93rem;
  line-height: 1.6;
}

.admin-blog-actions {
  display: grid;
  grid-template-columns: auto 1fr auto auto;
  align-items: center;
  gap: 10px;
  position: sticky;
  bottom: 0;
  margin: 22px -26px -26px;
  border-top: 1px solid var(--portal-line, #252c36);
  padding: 16px 26px;
  background: rgba(8, 11, 17, .96);
  backdrop-filter: blur(14px);
}

.portal-button-danger {
  border-color: #71343b !important;
  background: transparent !important;
  color: #f1929d !important;
}

.portal-button-danger:hover { background: rgba(158, 49, 63, .16) !important; }

@media (max-width: 1040px) {
  .admin-blog-layout { grid-template-columns: 1fr; }
  .admin-blog-list-panel { border-right: 0; border-bottom: 1px solid var(--portal-line, #252c36); }
}

@media (max-width: 700px) {
  .admin-blog-field-grid { grid-template-columns: 1fr; }
  .admin-blog-field-wide { grid-column: auto; }
  .admin-blog-editor { padding: 20px; }
  .admin-blog-actions { grid-template-columns: 1fr 1fr; margin: 20px -20px -20px; padding: 14px 20px; }
  .admin-blog-actions span { display: none; }
  .admin-blog-actions .portal-button-danger { grid-column: 1 / -1; }
}

/* Administrator customer email */
.admin-email-card { overflow: hidden; }
.admin-email-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(280px, .65fr);
  border-top: 1px solid var(--portal-line, #252c36);
}
.admin-email-form { min-width: 0; padding: 26px; }
.admin-email-field-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}
.admin-email-field { display: grid; gap: 7px; min-width: 0; }
.admin-email-field > span { font-size: .87rem; font-weight: 700; }
.admin-email-field input,
.admin-email-field select,
.admin-email-field textarea {
  width: 100%;
  min-height: 46px;
  border: 1px solid var(--portal-line, #252c36);
  border-radius: 8px;
  padding: 11px 13px;
  font: inherit;
}
.admin-email-field textarea { min-height: 260px; resize: vertical; line-height: 1.55; }
.admin-email-field-wide { grid-column: 1 / -1; }
.admin-email-customer-picker {
  display: grid;
  grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr);
  gap: 18px;
  border: 1px solid var(--portal-line, #252c36);
  border-radius: 9px;
  padding: 15px;
}
.admin-email-customer-picker.hidden { display: none; }
.admin-email-customer-picker select { min-height: 142px; }
.admin-email-template-note {
  grid-column: 1 / -1;
  border: 1px solid rgba(245, 171, 53, .28);
  border-radius: 8px;
  padding: 11px 13px;
  background: rgba(245, 171, 53, .08);
  font-size: .84rem;
  font-weight: 650;
  line-height: 1.45;
}
.admin-email-recipient-summary {
  margin-top: 18px;
  border: 1px solid rgba(67, 133, 245, .26);
  border-radius: 8px;
  padding: 12px 14px;
  background: rgba(67, 133, 245, .08);
  font-size: .9rem;
  font-weight: 700;
}
.admin-email-confirm {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  margin-top: 16px;
  font-size: .87rem;
  line-height: 1.45;
}
.admin-email-confirm input { width: 18px; height: 18px; margin-top: 1px; accent-color: #397fff; }
.admin-email-actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-top: 18px;
}
.admin-email-actions > span { max-width: 420px; font-size: .82rem; line-height: 1.45; }
.admin-email-history-panel {
  min-width: 0;
  border-left: 1px solid var(--portal-line, #252c36);
}
.admin-email-history-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  border-bottom: 1px solid var(--portal-line, #252c36);
  padding: 22px;
}
.admin-email-history-heading h3 { margin: 4px 0 0; font-size: 1.2rem; }
.admin-email-history { display: grid; }
.admin-email-history-row {
  display: grid;
  gap: 7px;
  border-bottom: 1px solid var(--portal-line, #252c36);
  padding: 17px 22px;
}
.admin-email-history-row:last-child { border-bottom: 0; }
.admin-email-history-row > strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.admin-email-history-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px 10px;
  font-size: .78rem;
}

@media (max-width: 980px) {
  .admin-email-layout { grid-template-columns: 1fr; }
  .admin-email-history-panel { border-top: 1px solid var(--portal-line, #252c36); border-left: 0; }
}

@media (max-width: 640px) {
  .admin-email-form { padding: 20px; }
  .admin-email-field-grid { grid-template-columns: 1fr; }
  .admin-email-field-wide { grid-column: auto; }
  .admin-email-customer-picker { grid-template-columns: 1fr; }
  .admin-email-actions { align-items: stretch; flex-direction: column; }
  .admin-email-actions .portal-button { width: 100%; }
}
