:root {
  --bg: #f2f6fb;
  --panel: #ffffff;
  --ink: #081225;
  --muted: #63708a;
  --line: #d7e1ef;
  --line-strong: #bdcce0;
  --blue: #155cff;
  --blue-2: #0a3cc2;
  --navy: #071632;
  --green: #0c8f54;
  --orange: #d97706;
  --red: #c5221f;
  --soft: #f7faff;
  --shadow: 0 16px 42px rgba(9, 24, 54, 0.08);
  --radius: 22px;
}

* {
  box-sizing: border-box;
}

html,
body {
  margin: 0;
  min-height: 100%;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Arial, sans-serif;
  color: var(--ink);
  background: var(--bg);
}

body {
  background-image:
    linear-gradient(90deg, rgba(10, 30, 70, 0.05) 1px, transparent 1px),
    linear-gradient(180deg, rgba(10, 30, 70, 0.04) 1px, transparent 1px);
  background-size: 58px 58px;
}

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

button {
  cursor: pointer;
}

a {
  color: inherit;
}

[hidden] {
  display: none !important;
}

.asgd-main {
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 16px;
}

.asgd-open-strip {
  width: 100%;
  display: grid;
  grid-template-columns: minmax(260px, 1.2fr) repeat(5, auto) minmax(260px, 420px) auto;
  align-items: stretch;
  border-bottom: 1px solid var(--line-strong);
  background: rgba(255, 255, 255, 0.94);
  backdrop-filter: blur(12px);
  min-height: 54px;
}

.asgd-open-cell,
.asgd-open-link,
.asgd-open-select,
.asgd-open-button {
  border-right: 1px solid var(--line-strong);
  display: grid;
  align-items: center;
  padding: 8px 12px;
  min-height: 54px;
}

.asgd-open-cell strong,
.asgd-open-select span {
  display: block;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  font-size: 10px;
  font-weight: 950;
  color: #52627c;
}

.asgd-open-cell small {
  color: var(--muted);
  line-height: 1.35;
}

.asgd-open-link {
  text-decoration: none;
  font-weight: 900;
  color: #253047;
}

.asgd-open-link:hover {
  background: #eef4ff;
  color: var(--blue);
}

.asgd-open-select {
  grid-template-columns: auto 1fr;
  gap: 10px;
}

.asgd-open-select select {
  min-height: 36px;
  border: 1px solid var(--line-strong);
  border-radius: 0;
  background: #ffffff;
  padding: 0 10px;
  font-weight: 800;
}

.asgd-open-button {
  border: 0;
  border-right: 1px solid var(--line-strong);
  background: #ffffff;
  font-weight: 950;
  padding: 0 18px;
}

.asgd-gate {
  min-height: calc(100vh - 205px);
  display: grid;
  align-items: center;
}

.asgd-hero-card {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(390px, 0.65fr);
  gap: 20px;
  align-items: stretch;
}

.asgd-hero-copy,
.asgd-login-card,
.asgd-card,
.asgd-work-head,
.asgd-sidebar {
  background: rgba(255, 255, 255, 0.96);
  border: 1px solid var(--line);
  box-shadow: var(--shadow);
  border-radius: var(--radius);
}

.asgd-hero-copy {
  position: relative;
  overflow: hidden;
  padding: clamp(28px, 4vw, 54px);
}

.asgd-hero-copy::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    radial-gradient(circle at top right, rgba(21, 92, 255, 0.17), transparent 34rem),
    radial-gradient(circle at bottom left, rgba(7, 22, 50, 0.08), transparent 26rem);
}

.asgd-kicker {
  position: relative;
  display: inline-flex;
  width: max-content;
  text-transform: uppercase;
  letter-spacing: 0.14em;
  font-size: 11px;
  font-weight: 950;
  color: var(--blue);
  padding: 8px 11px;
  border: 1px solid #cfe0ff;
  border-radius: 999px;
  background: #f1f6ff;
}

.asgd-hero-copy h1 {
  position: relative;
  margin: 16px 0 12px;
  max-width: 1120px;
  font-size: clamp(42px, 5.6vw, 96px);
  line-height: 0.93;
  letter-spacing: -0.07em;
}

.asgd-hero-copy p {
  position: relative;
  margin: 0;
  max-width: 960px;
  color: var(--muted);
  line-height: 1.6;
  font-size: 18px;
}

.asgd-hero-actions,
.asgd-button-row {
  position: relative;
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  margin-top: 20px;
}

.asgd-btn,
.asgd-open-button,
.asgd-side-tabs button,
.aig-nav-link,
.aig-link-btn,
.aig-mega-cta,
.asgd-link-list a {
  transition:
    transform 120ms ease,
    box-shadow 120ms ease,
    background 120ms ease,
    border-color 120ms ease;
}

.asgd-btn:active,
.asgd-open-button:active,
.asgd-side-tabs button:active,
.aig-nav-link:active,
.aig-link-btn:active,
.aig-mega-cta:active,
.asgd-link-list a:active,
.is-clicking {
  animation: asgButtonShake 220ms ease;
}

@keyframes asgButtonShake {
  0% { transform: translateX(0) scale(1); }
  30% { transform: translateX(-2px) scale(0.985); }
  60% { transform: translateX(2px) scale(0.985); }
  100% { transform: translateX(0) scale(1); }
}

.asgd-btn {
  min-height: 43px;
  border: 1px solid var(--line);
  border-radius: 999px;
  padding: 0 17px;
  background: #ffffff;
  color: var(--ink);
  font-weight: 950;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  gap: 8px;
}

.asgd-btn:hover {
  box-shadow: 0 8px 20px rgba(9, 24, 54, 0.08);
}

.asgd-btn.primary {
  background: var(--blue);
  border-color: var(--blue);
  color: #ffffff;
}

.asgd-btn.light {
  background: #ffffff;
}

.asgd-btn.danger {
  color: var(--red);
  border-color: #f0b8b4;
  background: #fff5f5;
}

.asgd-btn.wide {
  width: 100%;
  border-radius: 15px;
}

.asgd-offer-grid {
  position: relative;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin-top: 28px;
}

.asgd-offer-grid article {
  border: 1px solid var(--line);
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.78);
  padding: 16px;
}

.asgd-offer-grid i {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  border-radius: 15px;
  background: #eef4ff;
  color: var(--blue);
  margin-bottom: 12px;
}

.asgd-offer-grid strong {
  display: block;
  font-size: 17px;
}

.asgd-offer-grid span {
  display: block;
  color: var(--muted);
  line-height: 1.45;
  margin-top: 5px;
}

.asgd-login-card {
  padding: 26px;
  display: grid;
  gap: 12px;
}

.asgd-login-head {
  display: flex;
  align-items: center;
  gap: 13px;
}

.asgd-login-logo {
  width: 54px;
  height: 54px;
  object-fit: contain;
  border: 1px solid var(--line);
  border-radius: 16px;
  padding: 7px;
  background: #ffffff;
}

.asgd-login-head span {
  display: block;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  font-size: 11px;
  font-weight: 950;
  color: var(--muted);
}

.asgd-login-head strong {
  display: block;
  font-size: 25px;
  letter-spacing: -0.04em;
}

.asgd-member-caution {
  border: 1px solid #fac5c2;
  background: #fff4f3;
  color: #84231d;
  border-radius: 16px;
  padding: 12px;
  line-height: 1.45;
  font-size: 13px;
}

label {
  display: grid;
  gap: 7px;
  color: #344054;
  font-weight: 850;
  font-size: 13px;
}

label small {
  font-weight: 650;
  color: var(--muted);
}

input,
textarea {
  width: 100%;
  border: 1px solid #b9c5d6;
  border-radius: 14px;
  background: #ffffff;
  color: var(--ink);
  outline: none;
}

input {
  height: 46px;
  padding: 0 12px;
}

textarea {
  padding: 12px;
  resize: vertical;
  line-height: 1.5;
}

input:focus,
textarea:focus,
select:focus {
  border-color: var(--blue);
  box-shadow: 0 0 0 4px rgba(21, 92, 255, 0.10);
}

.asgd-recovery-box {
  border: 1px solid var(--line);
  border-radius: 16px;
  padding: 12px;
  background: #fafcff;
}

.asgd-recovery-box summary {
  font-weight: 950;
  cursor: pointer;
}

.asgd-recovery-box p {
  margin: 8px 0;
  color: var(--muted);
  line-height: 1.45;
}

.asgd-output,
.asgd-raw {
  white-space: pre-wrap;
  overflow: auto;
  border: 1px solid var(--line);
  border-radius: 15px;
  background: #071632;
  color: #dce8ff;
  padding: 12px;
  min-height: 70px;
  font-size: 12px;
}

.asgd-dashboard {
  display: grid;
  grid-template-columns: 304px minmax(0, 1fr);
  gap: 16px;
  align-items: start;
  width: 100%;
}

.asgd-sidebar {
  position: sticky;
  top: 102px;
  padding: 14px;
  max-height: calc(100vh - 125px);
  overflow: auto;
}

.asgd-side-brand {
  display: grid;
  grid-template-columns: 48px 1fr;
  gap: 10px;
  align-items: center;
  border-bottom: 1px solid var(--line);
  padding-bottom: 14px;
  margin-bottom: 12px;
}

.asgd-side-brand > span {
  width: 48px;
  height: 48px;
  border-radius: 17px;
  background: var(--navy);
  color: #ffffff;
  display: grid;
  place-items: center;
  font-weight: 950;
}

.asgd-side-brand strong,
.asgd-side-brand small {
  display: block;
}

.asgd-side-brand small {
  color: var(--muted);
  overflow-wrap: anywhere;
}

.asgd-side-tabs {
  display: grid;
  gap: 7px;
}

.asgd-side-tabs button {
  height: 43px;
  border: 1px solid transparent;
  border-radius: 14px;
  background: transparent;
  text-align: left;
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 0 11px;
  color: #344054;
  font-weight: 900;
}

.asgd-side-tabs button:hover {
  background: #eef4ff;
  color: var(--blue);
}

.asgd-side-tabs button i {
  width: 18px;
  color: var(--blue);
}

.asgd-side-tabs button.active {
  background: #0b1426;
  color: #ffffff;
}

.asgd-side-tabs button.active i {
  color: #8db0ff;
}

.asgd-side-footer {
  border-top: 1px solid var(--line);
  margin-top: 12px;
  padding-top: 12px;
  display: flex;
  justify-content: space-between;
  gap: 8px;
}

.asgd-side-footer button {
  border: 1px solid #f0b8b4;
  background: #fff5f5;
  color: var(--red);
  border-radius: 999px;
  padding: 6px 10px;
  font-weight: 950;
}

.asgd-mini-pill {
  display: inline-flex;
  align-items: center;
  border: 1px solid #a7dfc2;
  background: #effdf5;
  color: #087344;
  border-radius: 999px;
  padding: 6px 10px;
  font-weight: 950;
  font-size: 12px;
}

.asgd-workspace {
  display: grid;
  gap: 16px;
  min-width: 0;
}

.asgd-work-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: 22px;
}

.asgd-work-head h2 {
  margin: 14px 0 5px;
  font-size: clamp(36px, 3vw, 58px);
  letter-spacing: -0.055em;
}

.asgd-work-head p {
  margin: 0;
  color: var(--muted);
  line-height: 1.55;
  max-width: 1020px;
}

.asgd-work-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 9px;
  flex-wrap: wrap;
}

.asgd-clock {
  border: 1px solid var(--line);
  border-radius: 17px;
  background: #ffffff;
  padding: 9px 12px;
  text-align: right;
}

.asgd-clock span {
  display: block;
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  font-weight: 950;
  color: var(--muted);
}

.asgd-clock strong {
  display: block;
  font-size: 21px;
}

.asgd-clock small {
  color: var(--muted);
}

.asgd-panel {
  display: none;
  gap: 16px;
  max-height: calc(100vh - 218px);
  overflow: auto;
  padding-right: 2px;
}

.asgd-panel.active {
  display: grid;
}

.asgd-proof-grid {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 12px;
}

.asgd-proof-grid a,
.asgd-kpi-grid article,
.asgd-list-item,
.asgd-route-item,
.asgd-asset,
.asgd-readonly > div,
.asgd-reward-box {
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 17px;
  padding: 14px;
  text-decoration: none;
}

.asgd-proof-grid a {
  min-height: 120px;
  display: grid;
  align-content: space-between;
}

.asgd-proof-grid a:hover,
.asgd-list-item:hover,
.asgd-route-item:hover {
  border-color: #b9cbec;
  box-shadow: 0 8px 22px rgba(9, 24, 54, 0.06);
}

.asgd-proof-grid i {
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  border-radius: 14px;
  background: #eef4ff;
  color: var(--blue);
}

.asgd-proof-grid strong {
  display: block;
  font-size: 16px;
}

.asgd-proof-grid small {
  color: var(--muted);
  overflow-wrap: anywhere;
}

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

.asgd-kpi-grid.rich {
  grid-template-columns: repeat(6, minmax(0, 1fr));
}

.asgd-kpi-grid span {
  display: block;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  font-size: 11px;
  color: var(--muted);
  font-weight: 950;
}

.asgd-kpi-grid strong {
  display: block;
  font-size: clamp(26px, 2.1vw, 42px);
  letter-spacing: -0.05em;
  margin-top: 8px;
  overflow-wrap: anywhere;
}

.asgd-kpi-grid small {
  color: var(--muted);
}

.asgd-two-col,
.asgd-three-col {
  display: grid;
  gap: 16px;
}

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

.asgd-two-col.uneven {
  grid-template-columns: 1.2fr 0.8fr;
}

.asgd-three-col {
  grid-template-columns: 1.1fr 0.9fr 0.9fr;
}

.asgd-card {
  padding: 18px;
  min-width: 0;
}

.asgd-card h3 {
  margin: 0 0 12px;
  font-size: 21px;
  letter-spacing: -0.03em;
}

.asgd-muted,
.asgd-card p.asgd-muted {
  color: var(--muted);
  line-height: 1.55;
}

.asgd-section-head {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  align-items: start;
  margin-bottom: 14px;
}

.asgd-section-head p {
  margin: 5px 0 0;
  color: var(--muted);
}

.asgd-list {
  display: grid;
  gap: 9px;
}

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

.asgd-list.capped,
.asgd-assets.capped,
.scroll-form {
  max-height: 480px;
  overflow: auto;
  padding-right: 4px;
}

.asgd-list.tall,
.asgd-assets.tall {
  max-height: 620px;
}

.asgd-list.xlong,
.asgd-assets.xlong {
  max-height: calc(100vh - 330px);
}

.asgd-list-item b {
  display: block;
  margin-bottom: 5px;
}

.asgd-list-item p {
  margin: 0;
  color: var(--muted);
  line-height: 1.45;
  overflow-wrap: anywhere;
}

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

.asgd-readonly span,
.asgd-route-item span {
  display: block;
  text-transform: uppercase;
  letter-spacing: 0.09em;
  font-size: 10px;
  color: var(--muted);
  font-weight: 950;
}

.asgd-readonly b,
.asgd-route-item b {
  display: block;
  margin-top: 5px;
  overflow-wrap: anywhere;
}

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

.asgd-form-grid {
  display: grid;
  gap: 12px;
}

.asgd-form-grid.two {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.asgd-form-grid .full {
  grid-column: 1 / -1;
}

.asgd-assets {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.asgd-asset textarea {
  min-height: 170px;
  font: 12px ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
}

.asgd-totp-box {
  display: grid;
  gap: 10px;
  margin: 12px 0;
}

.asgd-totp-qr {
  width: 210px;
  height: 210px;
  border: 1px solid var(--line);
  border-radius: 18px;
  background: #ffffff;
  object-fit: contain;
}

.asgd-totp-box input {
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  letter-spacing: 0.04em;
}

.asgd-link-list {
  display: grid;
  gap: 9px;
}

.asgd-link-list a {
  border: 1px solid var(--line);
  border-radius: 14px;
  padding: 12px;
  text-decoration: none;
  font-weight: 950;
  background: #ffffff;
}

.asgd-toast {
  position: fixed;
  right: 22px;
  bottom: 22px;
  z-index: 2000;
  border: 1px solid var(--line);
  border-radius: 16px;
  background: #ffffff;
  padding: 12px 14px;
  box-shadow: var(--shadow);
  font-weight: 900;
  max-width: min(520px, calc(100vw - 44px));
}

.asgd-toast.ok {
  border-color: #9fe0be;
  background: #f0fdf5;
  color: #087344;
}

.asgd-toast.bad {
  border-color: #f0b8b4;
  background: #fff5f5;
  color: var(--red);
}

.asgd-raw {
  max-height: calc(100vh - 260px);
  min-height: 520px;
}

.asgd-panel::-webkit-scrollbar,
.asgd-sidebar::-webkit-scrollbar,
.asgd-list::-webkit-scrollbar,
.asgd-assets::-webkit-scrollbar,
.scroll-form::-webkit-scrollbar,
.asgd-raw::-webkit-scrollbar {
  width: 10px;
  height: 10px;
}

.asgd-panel::-webkit-scrollbar-thumb,
.asgd-sidebar::-webkit-scrollbar-thumb,
.asgd-list::-webkit-scrollbar-thumb,
.asgd-assets::-webkit-scrollbar-thumb,
.scroll-form::-webkit-scrollbar-thumb,
.asgd-raw::-webkit-scrollbar-thumb {
  background: #bed0e8;
  border-radius: 999px;
}

.asgd-panel::-webkit-scrollbar-track,
.asgd-sidebar::-webkit-scrollbar-track,
.asgd-list::-webkit-scrollbar-track,
.asgd-assets::-webkit-scrollbar-track,
.scroll-form::-webkit-scrollbar-track,
.asgd-raw::-webkit-scrollbar-track {
  background: #edf3fb;
  border-radius: 999px;
}

@media (min-width: 2200px) {
  .asgd-main {
    padding: 18px 24px;
  }

  .asgd-dashboard {
    grid-template-columns: 330px minmax(0, 1fr);
  }

  .asgd-proof-grid {
    grid-template-columns: repeat(8, minmax(0, 1fr));
  }

  .asgd-kpi-grid.rich {
    grid-template-columns: repeat(8, minmax(0, 1fr));
  }
}

@media (max-width: 1450px) {
  .asgd-open-strip {
    grid-template-columns: minmax(220px, 1fr) repeat(3, auto) minmax(240px, 1fr) auto;
  }

  .asgd-open-link:nth-of-type(n + 4) {
    display: none;
  }

  .asgd-proof-grid,
  .asgd-kpi-grid.rich {
    grid-template-columns: repeat(3, 1fr);
  }

  .asgd-hero-card,
  .asgd-dashboard,
  .asgd-two-col,
  .asgd-two-col.uneven,
  .asgd-three-col {
    grid-template-columns: 1fr;
  }

  .asgd-sidebar {
    position: relative;
    top: auto;
    max-height: none;
  }

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

  .asgd-work-head {
    display: grid;
  }

  .asgd-work-actions {
    justify-content: start;
  }
}

@media (max-width: 820px) {
  .asgd-main {
    padding: 8px;
  }

  .asgd-open-strip {
    grid-template-columns: 1fr;
  }

  .asgd-open-cell,
  .asgd-open-link,
  .asgd-open-select,
  .asgd-open-button {
    border-right: 0;
    border-bottom: 1px solid var(--line-strong);
  }

  .asgd-hero-copy {
    padding: 24px;
  }

  .asgd-hero-copy h1 {
    font-size: 42px;
  }

  .asgd-offer-grid,
  .asgd-proof-grid,
  .asgd-kpi-grid,
  .asgd-kpi-grid.rich,
  .asgd-list.wide,
  .asgd-readonly,
  .asgd-route-grid,
  .asgd-assets,
  .asgd-form-grid.two,
  .asgd-side-tabs {
    grid-template-columns: 1fr;
  }

  .asgd-panel {
    max-height: none;
  }
}


/* =========================================================
   V6 client cockpit: compact premium typography + visual panels
========================================================= */
:root {
  --compact-text: 13px;
  --compact-small: 11px;
  --card-radius: 16px;
}

html,
body {
  font-size: 14px;
  letter-spacing: -0.012em;
}

.asgd-main {
  padding: 10px 10px 0;
}

.asgd-dashboard {
  grid-template-columns: 318px minmax(0, 1fr);
  gap: 10px;
}

.asgd-sidebar,
.asgd-card,
.asgd-work-head,
.asgd-hero-copy,
.asgd-login-card {
  border-radius: var(--card-radius);
}

.asgd-workspace {
  gap: 10px;
}

.asgd-work-head {
  padding: 18px 20px;
  min-height: 150px;
}

.asgd-work-head h2 {
  margin: 10px 0 5px;
  font-size: clamp(32px, 2.15vw, 46px);
  line-height: 1.02;
  letter-spacing: -0.052em;
  font-weight: 680;
}

.asgd-work-head p {
  font-size: 14px;
  line-height: 1.52;
  max-width: 1080px;
}

.asgd-btn,
.asgd-open-link,
.asgd-open-button,
.asgd-side-tabs button,
.aig-nav-link,
.aig-link-btn {
  font-weight: 730;
}

.asgd-side-tabs button {
  height: 39px;
  border-radius: 12px;
  font-size: 14px;
}

.asgd-side-brand strong,
.asgd-list-item b,
.asgd-proof-grid strong,
.asgd-route-item b,
.asgd-readonly b {
  font-weight: 700;
}

.asgd-card {
  padding: 14px;
}

.asgd-card h3 {
  font-size: 18px;
  font-weight: 720;
  letter-spacing: -0.035em;
  margin-bottom: 10px;
}

.asgd-kicker.small {
  padding: 5px 8px;
  font-size: 9px;
}

.asgd-kpi-grid,
.asgd-proof-grid,
.asgd-two-col,
.asgd-three-col,
.asgd-visual-grid,
.asgd-summary-grid {
  gap: 10px;
}

.asgd-kpi-grid.rich {
  grid-template-columns: repeat(9, minmax(142px, 1fr));
}

.asgd-kpi-grid article {
  min-height: 112px;
  padding: 12px;
}

.asgd-kpi-grid span,
.asgd-readonly span,
.asgd-route-item span,
.asgd-open-cell strong,
.asgd-open-select span {
  font-size: 9.5px;
  font-weight: 760;
  letter-spacing: 0.09em;
}

.asgd-kpi-grid strong {
  font-size: clamp(22px, 1.55vw, 34px);
  line-height: 1.05;
  font-weight: 650;
  margin-top: 7px;
  word-break: break-word;
}

.asgd-kpi-grid small,
.asgd-proof-grid small,
.asgd-list-item p,
.asgd-muted,
.asgd-card p,
.asgd-open-cell small {
  font-size: 12.5px;
  line-height: 1.43;
}

.asgd-proof-grid a {
  min-height: 104px;
  padding: 12px;
}

.asgd-proof-grid i {
  width: 32px;
  height: 32px;
  border-radius: 12px;
}

.asgd-list-item,
.asgd-route-item,
.asgd-asset,
.asgd-readonly > div,
.asgd-reward-box,
.asgd-proof-grid a,
.asgd-kpi-grid article {
  border-radius: 14px;
}

.asgd-panel {
  max-height: calc(100vh - 205px);
  padding-right: 6px;
}

.asgd-list.capped,
.asgd-assets.capped,
.scroll-form {
  max-height: 430px;
}

.asgd-list.xlong,
.asgd-assets.xlong {
  max-height: calc(100vh - 300px);
}

.asgd-window-bar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  border: 1px solid var(--line);
  border-radius: 16px;
  background: rgba(255,255,255,.96);
  padding: 10px 12px;
  box-shadow: 0 10px 28px rgba(9,24,54,.055);
}

.asgd-window-bar strong {
  display: block;
  font-size: 13px;
  font-weight: 740;
}

.asgd-window-bar small {
  color: var(--muted);
  font-size: 12px;
}

.asgd-window-buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}

.asgd-window-buttons button {
  border: 1px solid var(--line);
  border-radius: 999px;
  background: #fff;
  min-height: 34px;
  padding: 0 12px;
  font-weight: 720;
  color: #20304d;
}

.asgd-window-buttons button.active {
  background: #081225;
  color: #fff;
  border-color: #081225;
}

.asgd-summary-card {
  overflow: hidden;
}

.compact-head {
  align-items: center;
  margin-bottom: 10px;
}

.asgd-score-ring {
  width: 76px;
  height: 76px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  border: 8px solid #e5eeff;
  background: #fff;
  color: #0b3fae;
  font-size: 21px;
  font-weight: 760;
  box-shadow: inset 0 0 0 1px var(--line);
}

.asgd-summary-grid {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
}

.asgd-summary-grid article {
  border: 1px solid var(--line);
  border-radius: 14px;
  background: #fbfdff;
  padding: 11px;
}

.asgd-summary-grid span {
  display: block;
  color: var(--muted);
  text-transform: uppercase;
  letter-spacing: .09em;
  font-size: 9.5px;
  font-weight: 760;
}

.asgd-summary-grid strong {
  display: block;
  margin-top: 5px;
  font-size: 19px;
  font-weight: 700;
}

.asgd-visual-grid {
  display: grid;
  grid-template-columns: 1.2fr .8fr;
}

.asgd-bars {
  display: grid;
  gap: 10px;
}

.asgd-bar-row {
  display: grid;
  gap: 6px;
}

.asgd-bar-top {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  font-size: 12.5px;
}

.asgd-bar-track {
  height: 10px;
  border: 1px solid var(--line);
  border-radius: 999px;
  background: #eef4fb;
  overflow: hidden;
}

.asgd-bar-fill {
  height: 100%;
  width: var(--bar, 0%);
  border-radius: inherit;
  background: linear-gradient(90deg, #155cff, #67a3ff);
}

.asgd-mini-chart {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 8px;
  min-height: 180px;
  align-items: end;
  padding-top: 8px;
}

.asgd-mini-chart span {
  display: grid;
  align-items: end;
  justify-items: center;
  gap: 6px;
  font-size: 10px;
  color: var(--muted);
}

.asgd-mini-chart i {
  display: block;
  width: 100%;
  min-height: 8px;
  height: var(--h, 8px);
  border-radius: 10px 10px 3px 3px;
  background: linear-gradient(180deg, #155cff, #8db5ff);
}

.asgd-billing-note {
  border: 1px dashed #b8c8de;
  border-radius: 14px;
  padding: 12px;
  background: #fbfdff;
  color: var(--muted);
  font-size: 12.5px;
  line-height: 1.45;
}

@media (min-width: 2200px) {
  .asgd-main { padding: 8px 10px 0; }
  .asgd-dashboard { grid-template-columns: 330px minmax(0, 1fr); }
  .asgd-kpi-grid.rich { grid-template-columns: repeat(12, minmax(136px, 1fr)); }
  .asgd-summary-grid { grid-template-columns: repeat(8, minmax(0, 1fr)); }
}

@media (max-width: 1450px) {
  .asgd-kpi-grid.rich,
  .asgd-summary-grid { grid-template-columns: repeat(3, 1fr); }
  .asgd-visual-grid { grid-template-columns: 1fr; }
}




/* =========================================================
   V8 CLIENT COCKPIT HERO + BIG SCREEN VALUE SECTIONS
   Uses dashboard activity data; empty states stay clear.
========================================================= */
body.asg-unlocked {
  min-height: 100vh;
  display: flex;
  flex-direction: column;
}

body.asg-unlocked .asgd-main {
  flex: 1 0 auto;
}


.asgd-main {
  min-height: calc(100vh - 1px);
}

.asgd-workspace {
  min-height: calc(100vh - 92px);
}

.asgd-work-head {
  padding: 16px 18px;
  border-radius: 18px;
  box-shadow: 0 10px 26px rgba(9, 24, 54, 0.055);
}

.asgd-work-head h2 {
  font-size: clamp(24px, 1.6vw, 42px);
  letter-spacing: -0.045em;
  line-height: 1;
  margin: 8px 0 4px;
  font-weight: 820;
}

.asgd-work-head p,
.asgd-card p,
.asgd-muted {
  font-size: 12.5px;
  line-height: 1.55;
}

.asgd-cockpit-hero {
  position: relative;
  overflow: hidden;
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(420px, 0.85fr);
  gap: 14px;
  border: 1px solid rgba(24, 58, 118, 0.14);
  border-radius: 24px;
  background:
    radial-gradient(circle at 10% 0%, rgba(21, 92, 255, 0.18), transparent 32rem),
    radial-gradient(circle at 90% 18%, rgba(37, 99, 235, 0.12), transparent 28rem),
    linear-gradient(135deg, rgba(255,255,255,0.96), rgba(240,246,255,0.94));
  box-shadow: 0 18px 52px rgba(7, 22, 50, 0.08);
  padding: 18px;
  min-height: 250px;
}

.asgd-cockpit-hero-bg {
  position: absolute;
  inset: 0;
  pointer-events: none;
  background-image:
    linear-gradient(90deg, rgba(8, 18, 37, 0.045) 1px, transparent 1px),
    linear-gradient(180deg, rgba(8, 18, 37, 0.035) 1px, transparent 1px);
  background-size: 42px 42px;
  mask-image: linear-gradient(90deg, #000, transparent 88%);
}

.asgd-cockpit-hero-copy,
.asgd-cockpit-hero-metrics {
  position: relative;
  z-index: 1;
}

.asgd-cockpit-brandline {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  border: 1px solid rgba(21, 92, 255, 0.18);
  border-radius: 999px;
  background: rgba(255,255,255,0.78);
  padding: 6px 10px 6px 7px;
  color: #155cff;
  font-size: 10.5px;
  font-weight: 860;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.asgd-cockpit-brandline img {
  width: 28px;
  height: 28px;
  object-fit: contain;
}

.asgd-cockpit-hero h2 {
  max-width: 1000px;
  margin: 14px 0 10px;
  color: #071632;
  font-size: clamp(28px, 2.65vw, 62px);
  line-height: 0.98;
  letter-spacing: -0.058em;
  font-weight: 860;
}

.asgd-cockpit-hero p {
  max-width: 1000px;
  margin: 0;
  color: #41506a;
  font-size: clamp(13px, 0.78vw, 16px);
  line-height: 1.6;
}

.asgd-cockpit-hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 14px;
}

.asgd-cockpit-hero-metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  align-self: stretch;
}

.asgd-cockpit-hero-metrics article {
  display: grid;
  align-content: space-between;
  min-height: 104px;
  border: 1px solid rgba(124, 144, 172, 0.22);
  border-radius: 18px;
  background: rgba(255,255,255,0.78);
  padding: 12px;
  box-shadow: 0 10px 24px rgba(9, 24, 54, 0.045);
}

.asgd-cockpit-hero-metrics i {
  width: 30px;
  height: 30px;
  display: grid;
  place-items: center;
  border-radius: 11px;
  background: #edf4ff;
  color: #155cff;
  font-size: 13px;
}

.asgd-cockpit-hero-metrics span {
  color: #68758b;
  font-size: 10px;
  font-weight: 820;
  letter-spacing: 0.11em;
  text-transform: uppercase;
}

.asgd-cockpit-hero-metrics strong {
  color: #071632;
  font-size: clamp(18px, 1.2vw, 30px);
  line-height: 1.05;
  letter-spacing: -0.04em;
  font-weight: 780;
  overflow-wrap: anywhere;
}

.asgd-kpi-grid article,
.asgd-proof-grid a,
.asgd-card,
.asgd-list-item,
.asgd-route-item,
.asgd-asset,
.asgd-readonly > div,
.asgd-reward-box {
  border-radius: 14px;
}

.asgd-kpi-grid span,
.asgd-summary-grid span,
.asgd-readonly span {
  font-size: 9.5px;
  letter-spacing: 0.105em;
  font-weight: 760;
}

.asgd-kpi-grid strong {
  font-size: clamp(17px, 0.95vw, 26px);
  line-height: 1.08;
  font-weight: 780;
  letter-spacing: -0.035em;
}

.asgd-summary-grid strong {
  font-size: clamp(15px, 0.86vw, 23px);
  font-weight: 760;
}

.asgd-card h3 {
  font-size: clamp(16px, 0.95vw, 22px);
  font-weight: 760;
  letter-spacing: -0.025em;
}

.asgd-list-item {
  position: relative;
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 10px;
  padding: 11px;
}

.asgd-list-item > b,
.asgd-list-item > p {
  grid-column: 2;
}

.asgd-list-item:not(.with-icon)::before {
  content: "i";
  grid-column: 1;
  grid-row: 1 / span 2;
  width: 26px;
  height: 26px;
  border-radius: 9px;
  display: grid;
  place-items: center;
  background: #edf4ff;
  color: #155cff;
  font-size: 11px;
  font-weight: 850;
  font-style: normal;
}

.asgd-list-item.with-icon .asgd-item-icon {
  grid-column: 1;
  grid-row: 1 / span 2;
  width: 31px;
  height: 31px;
  display: grid;
  place-items: center;
  border-radius: 11px;
  background: #edf4ff;
  color: #155cff;
  font-size: 13px;
}

.asgd-list-item.with-icon.is-known .asgd-item-icon {
  background: #edfdf5;
  color: #0c8f54;
}

.asgd-list-item.with-icon.is-unknown .asgd-item-icon {
  background: #fff7ed;
  color: #d97706;
}

.asgd-list-item b {
  font-size: 12.5px;
  font-weight: 760;
  letter-spacing: -0.01em;
  overflow-wrap: anywhere;
}

.asgd-list-item p,
.asgd-list-item small {
  font-size: 11.6px;
  line-height: 1.42;
}

.asgd-registry-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  margin-top: 6px;
}

.asgd-registry-badges span {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 4px 7px;
  border: 1px solid #d7e1ef;
  border-radius: 999px;
  background: #ffffff;
  color: #55627a;
  font-size: 10.5px;
  font-weight: 700;
}

.asgd-credit-summary-card {
  background:
    linear-gradient(135deg, rgba(255,255,255,0.98), rgba(244,248,255,0.96));
}

.asgd-value-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 14px;
}

.asgd-guidance-card,
.asgd-worth-card {
  min-height: 250px;
}

.asgd-guidance-list {
  display: grid;
  gap: 9px;
  margin-top: 12px;
}

.asgd-guidance-list div {
  display: grid;
  grid-template-columns: 32px 1fr;
  gap: 9px;
  align-items: start;
  padding: 10px;
  border: 1px solid #dfe8f5;
  border-radius: 14px;
  background: #fbfdff;
  color: #3d4e68;
  font-size: 12.4px;
  line-height: 1.45;
}

.asgd-guidance-list i {
  width: 32px;
  height: 32px;
  display: grid;
  place-items: center;
  border-radius: 11px;
  background: #eef4ff;
  color: #155cff;
}

.asgd-worth-card p {
  color: #43536a;
  font-size: 13px;
  line-height: 1.65;
}

.asgd-worth-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-top: 14px;
}

.asgd-worth-pills span {
  display: inline-flex;
  border: 1px solid #d7e1ef;
  border-radius: 999px;
  padding: 7px 10px;
  background: #ffffff;
  color: #344054;
  font-size: 11px;
  font-weight: 760;
}

.asgd-billing-note {
  margin-top: 12px;
  padding: 11px;
  border: 1px solid #d7e1ef;
  border-radius: 14px;
  background: #f8fbff;
  color: #536178;
  font-size: 12px;
  line-height: 1.5;
}

@media (min-width: 2200px) {
  .asgd-main { padding: 14px 16px; }
  .asgd-dashboard { grid-template-columns: 320px minmax(0, 1fr); }
  .asgd-proof-grid { grid-template-columns: repeat(12, minmax(150px, 1fr)); }
  .asgd-kpi-grid.rich { grid-template-columns: repeat(10, minmax(132px, 1fr)); }
  .asgd-visual-grid { grid-template-columns: 0.9fr 1.1fr; }
  .asgd-panel { max-height: none; overflow: visible; }
  .asgd-list.capped,
  .asgd-assets.capped { max-height: 520px; overflow: auto; }
}

@media (max-width: 1280px) {
  .asgd-cockpit-hero { grid-template-columns: 1fr; }
  .asgd-cockpit-hero-metrics { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .asgd-value-grid { grid-template-columns: 1fr; }
}

@media (max-width: 760px) {
  .asgd-cockpit-hero { padding: 14px; border-radius: 18px; }
  .asgd-cockpit-hero h2 { font-size: 30px; }
  .asgd-cockpit-hero-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .asgd-list-item { grid-template-columns: 1fr; }
  .asgd-list-item > b,
  .asgd-list-item > p { grid-column: 1; }
  .asgd-list-item::before,
  .asgd-list-item.with-icon .asgd-item-icon { display: none; }
}


/* V8.1 traffic icon correction */
.asgd-list-item.with-icon.is-normal .asgd-item-icon {
  background: #edf4ff;
  color: #155cff;
}

.asgd-list-item.with-icon.is-message .asgd-item-icon {
  background: #eef4ff;
  color: #155cff;
}

.asgd-list-item.with-icon.is-route .asgd-item-icon {
  background: #f2f7ff;
  color: #0a3cc2;
}

/* =========================================================
   V8.3 security restore: profile gate + mobile OTP controls
========================================================= */
.asgd-edit-requirements {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 10px;
  margin: 12px 0;
}

.asgd-edit-requirements span {
  display: flex;
  align-items: center;
  gap: 8px;
  border: 1px solid var(--line);
  border-radius: 999px;
  padding: 8px 11px;
  background: #f8fbff;
  color: #4f5f7a;
  font-size: 12px;
  font-weight: 850;
}

.asgd-edit-requirements span.ok {
  color: #087344;
  background: #effdf5;
  border-color: #a7dfc2;
}

.asgd-edit-requirements span.bad {
  color: #a1241e;
  background: #fff4f3;
  border-color: #fac5c2;
}

.asgd-edit-otp-row {
  max-width: 520px;
  margin-bottom: 12px;
}

.asgd-edit-gate-card.locked .scroll-form,
.asgd-edit-gate-card.locked #saveProfileDraftBtn {
  opacity: 0.52;
}

.asgd-edit-gate-card.locked .scroll-form input,
.asgd-edit-gate-card.locked .scroll-form textarea,
.asgd-edit-gate-card.locked #saveProfileDraftBtn {
  pointer-events: none;
}

.asgd-mobile-verify-box {
  display: grid;
  gap: 10px;
  margin-top: 10px;
}

.asgd-button-row.compact {
  margin-top: 0;
  align-items: center;
}

.asgd-muted.small {
  font-size: 12px;
  margin: 0;
}

.asgd-readonly b {
  font-weight: 760;
  font-size: 14px;
}

/* =========================================================
   V8.7 premium client cockpit cleanup
   - compact SaaS typography
   - light footer restore
   - client logo avatar support
========================================================= */
body.asg-unlocked {
  min-height: 100vh;
  display: flex;
  flex-direction: column;
}

body.asg-unlocked .asgd-main {
  flex: 1 0 auto;
}

body.asg-unlocked .aig-footer,
.aig-footer.aig-footer-light {
  display: block;
  flex: 0 0 auto;
  margin-top: 14px;
  border-top: 1px solid rgba(196, 210, 231, 0.9);
  background: linear-gradient(135deg, #f8fbff 0%, #eef6ff 58%, #f7fdff 100%);
  color: #20304d;
}

body.asg-unlocked .aig-footer-inner {
  min-height: 118px;
  padding: 24px 34px;
  align-items: start;
}

body.asg-unlocked .aig-footer strong,
body.asg-unlocked .aig-footer a,
body.asg-unlocked .aig-footer p,
body.asg-unlocked .aig-footer span,
body.asg-unlocked .aig-footer small {
  color: #20304d;
}

body.asg-unlocked .aig-footer strong {
  font-size: 13px;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

body.asg-unlocked .aig-footer p,
body.asg-unlocked .aig-footer a {
  font-size: 12px;
  line-height: 1.55;
}

body.asg-unlocked .aig-footer-bottom {
  border-top: 1px solid rgba(196, 210, 231, 0.75);
  color: #52627c;
}

.asgd-dashboard {
  grid-template-columns: 292px minmax(0, 1fr);
  gap: 12px;
}

.asgd-sidebar {
  top: 92px;
  padding: 12px;
  border-radius: 18px;
}

.asgd-side-brand {
  grid-template-columns: 44px 1fr;
  gap: 10px;
  padding-bottom: 12px;
}

.asgd-client-avatar {
  width: 44px;
  height: 44px;
  border-radius: 15px;
  background: #071632;
  color: #ffffff;
  display: grid;
  place-items: center;
  overflow: hidden;
  border: 1px solid rgba(15, 35, 70, 0.12);
  box-shadow: 0 8px 20px rgba(7, 22, 50, 0.10);
}

.asgd-client-avatar img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  background: #ffffff;
  padding: 5px;
}

.asgd-client-avatar span {
  font-size: 15px;
  font-weight: 850;
}

.asgd-side-brand strong {
  font-size: 13px;
  line-height: 1.2;
}

.asgd-side-brand small,
.asgd-side-tabs button,
.asgd-side-footer button,
.asgd-mini-pill {
  font-size: 12px;
}

.asgd-side-tabs {
  gap: 6px;
}

.asgd-side-tabs button {
  height: 36px;
  border-radius: 11px;
  padding: 0 10px;
  font-weight: 760;
}

.asgd-workspace {
  gap: 12px;
}

.asgd-work-head,
.asgd-cockpit-hero,
.asgd-window-bar,
.asgd-card,
.asgd-kpi-grid article,
.asgd-proof-grid a,
.asgd-summary-grid article,
.asgd-list-item,
.asgd-route-item,
.asgd-asset,
.asgd-readonly > div,
.asgd-reward-box {
  box-shadow: 0 10px 28px rgba(9, 24, 54, 0.055);
}

.asgd-work-head {
  min-height: auto;
  padding: 16px 18px;
}

.asgd-work-head h2 {
  font-size: clamp(22px, 1.45vw, 34px);
  line-height: 1.06;
  letter-spacing: -0.04em;
}

.asgd-work-head p {
  font-size: 12.5px;
  max-width: 980px;
}

.asgd-cockpit-hero {
  grid-template-columns: minmax(0, 1.08fr) minmax(380px, 0.92fr);
  min-height: 220px;
  padding: 16px;
  border-radius: 20px;
}

.asgd-cockpit-brandline {
  font-size: 9.5px;
  padding: 5px 9px 5px 6px;
}

.asgd-cockpit-brandline img {
  width: 24px;
  height: 24px;
}

.asgd-cockpit-hero h2 {
  max-width: 900px;
  margin: 12px 0 8px;
  font-size: clamp(25px, 2.05vw, 46px);
  line-height: 1.02;
  letter-spacing: -0.052em;
  font-weight: 820;
}

.asgd-cockpit-hero p {
  font-size: clamp(12px, 0.7vw, 14px);
  line-height: 1.55;
}

.asgd-cockpit-hero-metrics {
  gap: 9px;
}

.asgd-cockpit-hero-metrics article {
  min-height: 92px;
  padding: 10px;
  border-radius: 15px;
}

.asgd-cockpit-hero-metrics i {
  width: 26px;
  height: 26px;
  border-radius: 10px;
  font-size: 12px;
}

.asgd-cockpit-hero-metrics span,
.asgd-kpi-grid span,
.asgd-summary-grid span,
.asgd-readonly span,
.asgd-route-item span {
  font-size: 8.8px;
  letter-spacing: 0.095em;
}

.asgd-cockpit-hero-metrics strong {
  font-size: clamp(16px, 0.95vw, 24px);
}

.asgd-window-bar {
  padding: 9px 11px;
}

.asgd-window-buttons button {
  min-height: 30px;
  padding: 0 10px;
  font-size: 12px;
}

.asgd-card {
  padding: 13px;
  border-radius: 15px;
}

.asgd-card h3 {
  font-size: clamp(15px, 0.82vw, 18px);
  line-height: 1.2;
}

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

.asgd-kpi-grid.rich {
  grid-template-columns: repeat(10, minmax(126px, 1fr));
}

.asgd-proof-grid {
  grid-template-columns: repeat(6, minmax(142px, 1fr));
}

.asgd-proof-grid a,
.asgd-kpi-grid article,
.asgd-summary-grid article {
  min-height: 96px;
  padding: 10px;
}

.asgd-kpi-grid strong {
  font-size: clamp(16px, 0.85vw, 22px);
}

.asgd-summary-grid strong {
  font-size: clamp(14px, 0.78vw, 19px);
}

.asgd-proof-grid strong,
.asgd-list-item b,
.asgd-route-item b,
.asgd-readonly b {
  font-size: 13px;
}

.asgd-proof-grid small,
.asgd-list-item p,
.asgd-card p,
.asgd-muted,
.asgd-readonly b,
.asgd-route-item b,
.asgd-kpi-grid small,
.asgd-summary-grid small {
  font-size: 11.5px;
  line-height: 1.45;
}

.asgd-logo-editor-card {
  display: grid;
  grid-template-columns: 74px 1fr;
  gap: 12px;
  align-items: center;
  border: 1px solid var(--line);
  border-radius: 15px;
  background: #fbfdff;
  padding: 12px;
}

.asgd-logo-preview {
  width: 64px;
  height: 64px;
  border-radius: 17px;
  border: 1px solid #cfdced;
  background: #ffffff;
  display: grid;
  place-items: center;
  overflow: hidden;
  color: #52627c;
  font-size: 11px;
  font-weight: 800;
}

.asgd-logo-preview img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  padding: 6px;
}

.asgd-logo-editor-card p {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
}

@media (min-width: 2200px) {
  .asgd-dashboard { grid-template-columns: 300px minmax(0, 1fr); }
  .asgd-cockpit-hero h2 { font-size: clamp(30px, 1.8vw, 54px); }
  .asgd-kpi-grid.rich { grid-template-columns: repeat(12, minmax(126px, 1fr)); }
  .asgd-proof-grid { grid-template-columns: repeat(8, minmax(142px, 1fr)); }
  .asgd-summary-grid { grid-template-columns: repeat(8, minmax(0, 1fr)); }
}

@media (max-width: 1450px) {
  .asgd-dashboard { grid-template-columns: 1fr; }
  .asgd-side-tabs { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .asgd-cockpit-hero { grid-template-columns: 1fr; }
  .asgd-summary-grid,
  .asgd-kpi-grid.rich,
  .asgd-proof-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 760px) {
  .asgd-side-tabs,
  .asgd-summary-grid,
  .asgd-kpi-grid.rich,
  .asgd-proof-grid,
  .asgd-cockpit-hero-metrics { grid-template-columns: 1fr; }
  .asgd-logo-editor-card { grid-template-columns: 1fr; }
  .asgd-cockpit-hero h2 { font-size: 28px; }
}



/* =========================================================
   V8.8 R2 client logo upload controls
========================================================= */
.asgd-logo-uploader {
  display: grid;
  gap: 7px;
  min-width: 0;
}

.asgd-logo-uploader strong {
  display: block;
  font-size: 13px;
  font-weight: 760;
  color: #10213f;
}

.asgd-logo-uploader p {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
}

.asgd-logo-upload-row {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}

.asgd-logo-upload-row input[type="file"] {
  height: auto;
  max-width: 360px;
  padding: 8px;
  border-radius: 13px;
  background: #fff;
  font-size: 12px;
}

.asgd-logo-uploader small {
  color: var(--muted);
  font-size: 11.5px;
  line-height: 1.4;
}

.asgd-logo-uploader small.ok {
  color: var(--green);
  font-weight: 720;
}

.asgd-logo-uploader small.bad {
  color: var(--red);
  font-weight: 720;
}


/* =========================================================
   V8.9 public profile manage CTA
   Public Profile stays read-only; edits move through secure Profile Editor.
========================================================= */
.asgd-profile-manage-card {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 16px 18px;
  background:
    radial-gradient(circle at top left, rgba(21, 92, 255, 0.08), transparent 34rem),
    rgba(255, 255, 255, 0.97);
}

.asgd-profile-manage-card h3 {
  margin: 8px 0 5px;
  font-size: 20px;
}

.asgd-profile-manage-card p {
  max-width: 980px;
  margin: 0;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.45;
}

.asgd-profile-manage-actions {
  display: flex;
  justify-content: flex-end;
  gap: 9px;
  flex-wrap: wrap;
  min-width: 310px;
}

.asgd-profile-manage-actions .asgd-btn {
  min-height: 38px;
  padding: 0 14px;
}

.asgd-logo-editor-card {
  scroll-margin-top: 140px;
}

@media (max-width: 960px) {
  .asgd-profile-manage-card {
    display: grid;
  }
  .asgd-profile-manage-actions {
    justify-content: start;
    min-width: 0;
  }
}


/* =========================================================
   V8.10 mobile / WhatsApp delivery status message
========================================================= */
#recoveryMobileHelp {
  display: block;
  margin-top: 10px;
  border: 1px solid var(--line);
  border-radius: 14px;
  padding: 10px 12px;
  background: #f8fbff;
  color: #4b5872;
  font-weight: 680;
}

#recoveryMobileHelp.ok {
  border-color: #9fe0be;
  background: #effdf5;
  color: #087344;
}

#recoveryMobileHelp.warn {
  border-color: #f3cf8e;
  background: #fff9e8;
  color: #8a5a05;
}

#recoveryMobileHelp.bad {
  border-color: #f0b8b4;
  background: #fff5f5;
  color: #b42318;
}

#recoveryMobileHelp.info {
  border-color: #cfe0ff;
  background: #f1f6ff;
  color: #1748b5;
}


/* =========================================================
   V8.14 ASG LLM usage proof
========================================================= */
.asgd-llm-usage-card {
  border-color: #bfd3ff;
  background:
    radial-gradient(circle at top right, rgba(21, 92, 255, 0.08), transparent 32rem),
    rgba(255, 255, 255, 0.96);
}

.asgd-llm-summary {
  margin-bottom: 12px;
}

.asgd-llm-warning {
  margin-top: 8px;
  border: 1px solid #ffd08a;
  background: #fff8eb;
  color: #8a4b00;
  border-radius: 999px;
  padding: 5px 9px;
  display: inline-flex;
  font-size: 11px;
  font-weight: 760;
}


/* =========================================================
   v8.16 ASG top-up dropdown + exact fractional credit display
========================================================= */
.asgd-topup-card,
.asgd-topup-wide-card {
  overflow: hidden;
}

.asgd-topup-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin-top: 12px;
}

.asgd-topup-grid.wide {
  grid-template-columns: repeat(5, minmax(150px, 1fr));
}

.asgd-topup-pack {
  border: 1px solid var(--line);
  border-radius: 15px;
  background: linear-gradient(180deg, #ffffff, #f7fbff);
  padding: 12px;
  display: grid;
  gap: 8px;
  min-height: 145px;
}

.asgd-topup-pack span {
  text-transform: uppercase;
  letter-spacing: .09em;
  font-size: 9.5px;
  font-weight: 800;
  color: var(--blue);
}

.asgd-topup-pack strong {
  font-size: 18px;
  line-height: 1.05;
  letter-spacing: -0.035em;
}

.asgd-topup-pack small {
  color: var(--muted);
  line-height: 1.35;
}

.asgd-mini-status {
  min-height: 26px;
  margin-top: 10px;
  color: var(--muted);
  font-size: 12.5px;
  line-height: 1.45;
}

.asgd-mini-status .bad {
  color: var(--red);
  font-weight: 800;
}

@media (max-width: 1450px) {
  .asgd-topup-grid.wide { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 820px) {
  .asgd-topup-grid,
  .asgd-topup-grid.wide { grid-template-columns: 1fr; }
}


/* v8.16 compact top-up dropdown controls */
.asgd-topup-form {
  display: grid;
  gap: 10px;
  margin-top: 12px;
}

.asgd-topup-form.compact {
  grid-template-columns: minmax(220px, 1fr) minmax(180px, 260px) minmax(260px, 1fr) auto;
  align-items: end;
}

.asgd-topup-form select {
  width: 100%;
  min-height: 43px;
  border: 1px solid #b9c5d6;
  border-radius: 14px;
  background: #ffffff;
  color: var(--ink);
  padding: 0 12px;
  outline: none;
  font-weight: 800;
}

.asgd-topup-summary {
  border: 1px solid var(--line);
  border-radius: 15px;
  background: linear-gradient(180deg, #ffffff, #f7fbff);
  padding: 12px;
  display: grid;
  gap: 4px;
  min-height: 72px;
}

.asgd-topup-summary b {
  font-size: 16px;
  letter-spacing: -0.025em;
}

.asgd-topup-summary span,
.asgd-topup-summary small {
  color: var(--muted);
  font-size: 12.5px;
  line-height: 1.35;
}

@media (max-width: 1450px) {
  .asgd-topup-form.compact {
    grid-template-columns: 1fr 1fr;
  }
  .asgd-topup-form.compact .asgd-topup-summary,
  .asgd-topup-form.compact button {
    grid-column: 1 / -1;
  }
}

@media (max-width: 820px) {
  .asgd-topup-form.compact {
    grid-template-columns: 1fr;
  }
}


/* =========================================================
   v8.17 layout rescue: analytics strip, compact registry, vertical usage chart, copy buttons
========================================================= */
.asgd-open-strip { display: none !important; }
.asgd-insight-strip {
  width: 100%;
  display: grid;
  grid-template-columns: minmax(260px, 1.25fr) repeat(3, minmax(150px, .55fr)) minmax(340px, 1.45fr);
  gap: 10px;
  align-items: stretch;
  padding: 12px 16px;
  border-bottom: 1px solid var(--line-strong);
  background: linear-gradient(90deg, rgba(255,255,255,.95), rgba(238,246,255,.92));
  backdrop-filter: blur(12px);
}
.asgd-insight-card,
.asgd-insight-ad {
  border: 1px solid var(--line);
  border-radius: 16px;
  background: rgba(255,255,255,.92);
  box-shadow: 0 10px 26px rgba(9,24,54,.045);
  padding: 12px 14px;
  min-width: 0;
}
.asgd-insight-card span {
  display:block;
  text-transform: uppercase;
  letter-spacing: .11em;
  color: var(--muted);
  font-size: 9.5px;
  font-weight: 900;
}
.asgd-insight-card strong {
  display:block;
  margin-top: 4px;
  font-size: clamp(18px, 1.2vw, 26px);
  letter-spacing: -.04em;
}
.asgd-insight-card small,
.asgd-insight-ad span { color: var(--muted); font-size: 12px; line-height: 1.35; }
.asgd-insight-card.live { background: linear-gradient(135deg, #ffffff, #edf5ff); }
.asgd-insight-ad { display:grid; grid-template-columns: 1fr auto; align-content:center; gap: 4px 12px; }
.asgd-insight-ad b { font-size: 15px; letter-spacing: -.015em; }
.asgd-insight-ad a { grid-row: 1 / span 2; align-self:center; text-decoration:none; border-radius:999px; background: var(--blue); color:#fff; font-weight:850; padding:10px 14px; white-space:nowrap; }

.asgd-panel.active { display: grid; max-height: none; overflow: visible; }
.asgd-list.wide { grid-template-columns: repeat(auto-fit, minmax(360px, 1fr)); }
.asgd-list-item { grid-template-columns: 34px minmax(0, 1fr) !important; align-items: start; min-width:0; }
.asgd-list-item > b,
.asgd-list-item > p { grid-column: 2 !important; min-width:0; }
.asgd-list-item p,
.asgd-list-item small { overflow-wrap: break-word; word-break: normal; }
.asgd-list-item.with-icon .asgd-item-icon { grid-column: 1; grid-row: 1 / span 2; }

.asgd-compact-table { display:grid; gap:8px; width:100%; }
.asgd-compact-row {
  display:grid;
  grid-template-columns: 42px minmax(260px, 1.8fr) repeat(4, minmax(86px, .55fr)) minmax(180px, .9fr);
  gap: 10px;
  align-items:center;
  border:1px solid var(--line);
  border-radius:14px;
  background:rgba(255,255,255,.95);
  padding:10px 12px;
  min-width:0;
}
.asgd-compact-row.known { border-left: 4px solid #13a66b; }
.asgd-compact-row.unknown { border-left: 4px solid #f59e0b; }
.asgd-compact-row .rank,
.asgd-row-icon {
  width:30px; height:30px; border-radius:10px; display:grid; place-items:center;
  background:#edf4ff; color: var(--blue); font-weight:900; font-size:12px;
}
.asgd-compact-row .identity b,
.asgd-compact-row .path b { display:block; font-size:13px; overflow-wrap:break-word; }
.asgd-compact-row span b { display:block; font-size:13px; }
.asgd-compact-row small { display:block; color: var(--muted); font-size:10.8px; line-height:1.3; overflow-wrap: break-word; }
.asgd-compact-row .path { min-width:0; }
.registry-table .asgd-compact-row { grid-template-columns: 34px minmax(240px, 1.8fr) repeat(3, minmax(74px, .45fr)) minmax(210px, 1.15fr); }
.asgd-registry-diagnostics { display:flex; flex-wrap:wrap; gap:7px; margin-bottom:10px; }
.asgd-registry-diagnostics span { border:1px solid var(--line); background:#f8fbff; border-radius:999px; padding:6px 9px; color:var(--muted); font-size:11px; }
.asgd-registry-diagnostics b { color:var(--ink); margin-right:5px; }

.asgd-credit-vertical-chart { display:grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap:12px; align-items:end; min-height: 210px; }
.asgd-credit-vertical-chart article { border:1px solid var(--line); border-radius:16px; background:#fff; padding:12px; display:grid; gap:6px; justify-items:center; }
.asgd-vbar-track { width:100%; height:130px; border-radius:14px; background:#edf4fb; border:1px solid #d7e1ef; display:flex; align-items:end; overflow:hidden; }
.asgd-vbar-track i { display:block; width:100%; height:var(--h,0%); min-height:4px; border-radius:14px 14px 0 0; background:linear-gradient(180deg,#155cff,#8db5ff); }
.asgd-credit-vertical-chart .used .asgd-vbar-track i { background:linear-gradient(180deg,#ef4444,#fca5a5); }
.asgd-credit-vertical-chart .available .asgd-vbar-track i { background:linear-gradient(180deg,#12a66a,#86efac); }
.asgd-credit-vertical-chart .bonus .asgd-vbar-track i { background:linear-gradient(180deg,#f59e0b,#fcd34d); }
.asgd-credit-vertical-chart .included .asgd-vbar-track i { background:linear-gradient(180deg,#155cff,#93c5fd); }
.asgd-credit-vertical-chart b { font-size:12px; }
.asgd-credit-vertical-chart strong { font-size:22px; line-height:1; }
.asgd-credit-vertical-chart small { color:var(--muted); font-size:11px; text-align:center; }

.asgd-asset.with-copy { display:grid; gap:10px; }
.asgd-asset-head { display:flex; justify-content:space-between; gap:12px; align-items:start; }
.asgd-asset-head span { display:grid; gap:3px; min-width:0; }
.asgd-copy-btn { border:1px solid var(--line); border-radius:999px; background:#fff; color:var(--blue); padding:8px 10px; font-weight:850; white-space:nowrap; }
.asgd-copy-btn:hover { background:#eef4ff; }
.asgd-asset textarea { width:100%; min-height:120px; resize:vertical; }

.asgd-topup-wide-card { order: -1; }
.asgd-topup-form.compact { grid-template-columns: minmax(220px, 1fr) minmax(190px, 270px) minmax(260px, 1fr) auto; }

@media (max-width: 1180px) {
  .asgd-insight-strip { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .asgd-insight-ad { grid-column: 1 / -1; }
  .asgd-compact-row,
  .registry-table .asgd-compact-row { grid-template-columns: 34px minmax(0,1fr) repeat(2, minmax(70px,.45fr)); }
  .asgd-compact-row .last,
  .asgd-compact-row .path { grid-column: 2 / -1; }
}
@media (max-width: 760px) {
  .asgd-insight-strip { grid-template-columns: 1fr; padding:8px; }
  .asgd-insight-ad { grid-template-columns: 1fr; }
  .asgd-insight-ad a { grid-row:auto; justify-self:start; }
  .asgd-list.wide { grid-template-columns: 1fr; }
  .asgd-credit-vertical-chart { grid-template-columns: repeat(2, minmax(0,1fr)); }
}


/* =========================================================
   v8.18 login step security + registry row fit
========================================================= */
.asgd-login-step {
  border: 1px solid rgba(37, 99, 235, .28);
  background: linear-gradient(135deg, rgba(239,246,255,.92), rgba(255,255,255,.98));
  border-radius: 18px;
  padding: 12px;
  display: grid;
  gap: 10px;
}
.asgd-login-step[hidden] { display: none !important; }
.asgd-login-step-head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
}
.asgd-login-step-head span {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  border-radius: 999px;
  padding: 6px 10px;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: #1148c6;
  background: #eaf2ff;
  border: 1px solid #cfe0ff;
}
.asgd-link-action {
  border: 0;
  background: transparent;
  color: var(--blue);
  font-weight: 850;
  cursor: pointer;
  padding: 4px 0;
}
.asgd-login-card label small {
  display: block;
  margin: 4px 0 8px;
  color: var(--muted);
  font-size: 11px;
  line-height: 1.35;
}

.asgd-traffic-table {
  display: grid;
  gap: 8px;
  width: 100%;
  min-width: 0;
}
.asgd-traffic-row {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr) minmax(120px, .45fr);
  gap: 10px;
  align-items: center;
  border: 1px solid var(--line);
  border-left: 4px solid #f59e0b;
  background: rgba(255,255,255,.96);
  border-radius: 14px;
  padding: 10px 12px;
  min-width: 0;
  overflow: hidden;
}
.asgd-traffic-row.known { border-left-color: #13a66b; }
.asgd-traffic-row .identity,
.asgd-traffic-row .path { min-width: 0; }
.asgd-traffic-row .identity b,
.asgd-traffic-row .path b {
  display: block;
  font-size: 13px;
  overflow-wrap: anywhere;
}
.asgd-traffic-row small {
  display: block;
  color: var(--muted);
  font-size: 10.8px;
  line-height: 1.35;
  overflow-wrap: anywhere;
}
.asgd-traffic-row .traffic-stats {
  display: grid;
  grid-template-columns: repeat(3, auto);
  grid-auto-rows: auto;
  gap: 2px 8px;
  align-items: end;
  justify-content: end;
  text-align: right;
  white-space: nowrap;
}
.asgd-traffic-row .traffic-stats b { font-size: 14px; line-height: 1; }
.asgd-traffic-row .traffic-stats small { font-size: 9.5px; }
.asgd-traffic-row .path { grid-column: 2 / -1; border-top: 1px dashed rgba(196,210,231,.9); padding-top: 7px; }
#registry .asgd-card { overflow: hidden; }
#unknownRegistryList,
#registryList { min-width: 0; overflow-x: hidden; }
@media (max-width: 980px) {
  .asgd-traffic-row { grid-template-columns: 34px minmax(0,1fr); }
  .asgd-traffic-row .traffic-stats,
  .asgd-traffic-row .path { grid-column: 2 / -1; justify-content: start; text-align: left; }
}


/* =========================================================
   v8.19 analytics polish: traffic line, vertical credit graph, premium billing/topup
========================================================= */
.asgd-insight-strip.v19 {
  grid-template-columns: minmax(220px, .9fr) minmax(320px, 1.35fr) repeat(3, minmax(120px, .48fr)) minmax(310px, 1.1fr);
  align-items: stretch;
}
.asgd-traffic-card { display:grid; gap:6px; padding-bottom:8px; overflow:hidden; }
.asgd-traffic-head { display:flex; align-items:end; justify-content:space-between; gap:12px; }
.asgd-traffic-head span { display:block; text-transform:uppercase; letter-spacing:.11em; color:var(--muted); font-size:9.5px; font-weight:900; }
.asgd-traffic-head small { color:var(--muted); font-size:11px; }
.asgd-sparkline { min-height:58px; width:100%; overflow:hidden; border-radius:13px; background:linear-gradient(180deg, rgba(238,245,255,.85), rgba(255,255,255,.65)); border:1px solid rgba(189,208,235,.72); }
.asgd-sparkline svg { width:100%; height:100%; display:block; }
.asgd-sparkline .bars rect { fill:rgba(21,92,255,.14); }
.asgd-sparkline polyline { fill:none; stroke:#155cff; stroke-width:3.5; stroke-linecap:round; stroke-linejoin:round; filter: drop-shadow(0 5px 8px rgba(21,92,255,.16)); }
.asgd-sparkline circle { fill:#155cff; stroke:#fff; stroke-width:3; }
.asgd-sparkline.compact { min-height:62px; background:rgba(255,255,255,.82); }
.asgd-work-head { grid-template-columns: minmax(280px, .9fr) minmax(280px, .85fr) auto; align-items:center; gap:16px; }
.asgd-work-title h2 { font-size: clamp(23px, 2vw, 33px); }
.asgd-work-title p { max-width: 760px; }
.asgd-work-pulse {
  border:1px solid var(--line);
  border-radius:18px;
  background:linear-gradient(135deg, rgba(255,255,255,.94), rgba(239,246,255,.82));
  box-shadow:0 14px 34px rgba(9,24,54,.055);
  padding:12px;
  display:grid;
  grid-template-columns:minmax(130px,.7fr) minmax(170px,1fr);
  gap:12px;
  align-items:center;
  min-width:0;
}
.asgd-work-pulse span { display:block; text-transform:uppercase; letter-spacing:.12em; color:var(--blue); font-size:9px; font-weight:900; }
.asgd-work-pulse strong { display:block; margin-top:3px; font-size:15px; letter-spacing:-.02em; }
.asgd-work-pulse small { display:block; margin-top:3px; color:var(--muted); font-size:11px; line-height:1.25; }
.asgd-capacity-card .asgd-credit-vertical-chart { min-height:235px; }
.asgd-credit-vertical-chart.premium {
  grid-template-columns: repeat(5, minmax(120px,1fr));
  gap:14px;
  align-items:end;
  min-height:230px;
}
.asgd-credit-vertical-chart.premium article {
  position:relative;
  overflow:hidden;
  border-radius:20px;
  background:linear-gradient(180deg,#ffffff,#f7fbff);
  border:1px solid rgba(186,205,232,.9);
  box-shadow:0 16px 38px rgba(9,24,54,.06);
  padding:14px 12px;
}
.asgd-credit-vertical-chart.premium article:before {
  content:"";
  position:absolute;
  inset:auto -20% -35% -20%;
  height:70%;
  background:radial-gradient(circle, rgba(21,92,255,.10), transparent 62%);
  pointer-events:none;
}
.asgd-credit-vertical-chart.premium .asgd-vbar-track {
  width:62px;
  height:150px;
  border-radius:18px;
  background:linear-gradient(180deg,#eef5ff,#f8fbff);
  margin:0 auto 6px;
}
.asgd-credit-vertical-chart.premium .used .asgd-vbar-track i { background:linear-gradient(180deg,#ef4444,#fb7185); }
.asgd-credit-vertical-chart.premium .available .asgd-vbar-track i { background:linear-gradient(180deg,#0ea66a,#60d394); }
.asgd-credit-vertical-chart.premium .bonus .asgd-vbar-track i { background:linear-gradient(180deg,#f59e0b,#fbbf24); }
.asgd-credit-vertical-chart.premium .included .asgd-vbar-track i { background:linear-gradient(180deg,#155cff,#7fb0ff); }
.asgd-credit-vertical-chart.premium .known .asgd-vbar-track i { background:linear-gradient(180deg,#7c3aed,#a78bfa); }
.asgd-credit-vertical-chart.premium .review .asgd-vbar-track i { background:linear-gradient(180deg,#f97316,#fdba74); }
.asgd-credit-vertical-chart.premium strong { font-size:24px; }
.asgd-traffic-analytics-card { overflow:hidden; }
.asgd-big-sparkline {
  min-height:160px;
  border:1px solid var(--line);
  border-radius:20px;
  background:linear-gradient(180deg,rgba(238,245,255,.7),rgba(255,255,255,.95));
  overflow:hidden;
  margin:12px 0;
}
.asgd-big-sparkline svg { width:100%; height:160px; display:block; }
.asgd-big-sparkline .bars rect { fill:rgba(21,92,255,.12); }
.asgd-big-sparkline polyline { fill:none; stroke:#155cff; stroke-width:4; stroke-linecap:round; stroke-linejoin:round; }
.asgd-big-sparkline circle { fill:#155cff; stroke:#fff; stroke-width:4; }
.asgd-mini-chart.premium { min-height:120px; grid-template-columns: repeat(6, minmax(60px, 1fr)); }
.asgd-mini-chart.premium i { border-radius:12px 12px 4px 4px; box-shadow:0 12px 20px rgba(21,92,255,.16); }
.asgd-topup-wide-card {
  border:1px solid rgba(21,92,255,.20);
  background:linear-gradient(135deg, #ffffff 0%, #eef5ff 100%);
  box-shadow:0 20px 46px rgba(9,24,54,.07);
}
.asgd-topup-wide-card .asgd-topup-form.compact {
  grid-template-columns: minmax(220px,1fr) minmax(250px,1fr) minmax(220px,1.2fr) auto;
  align-items:end;
}
.asgd-topup-summary {
  border:1px solid rgba(21,92,255,.18);
  background:rgba(255,255,255,.82);
  border-radius:16px;
}
.asgd-billing-note.premium {
  margin-top:12px;
  border-style:solid;
  border-color:rgba(21,92,255,.18);
  background:linear-gradient(90deg,#f6faff,#ffffff);
}
.asgd-bars:has(.asgd-credit-vertical-chart) { gap:0; }
@media (max-width: 1320px) {
  .asgd-insight-strip.v19 { grid-template-columns: repeat(3, minmax(0,1fr)); }
  .asgd-insight-ad, .asgd-traffic-card { grid-column: span 2; }
  .asgd-work-head { grid-template-columns: 1fr; }
  .asgd-work-actions { justify-content:start; }
}
@media (max-width: 760px) {
  .asgd-insight-strip.v19 { grid-template-columns: 1fr; }
  .asgd-insight-ad, .asgd-traffic-card { grid-column:auto; }
  .asgd-work-pulse { grid-template-columns:1fr; }
  .asgd-credit-vertical-chart.premium { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .asgd-topup-wide-card .asgd-topup-form.compact { grid-template-columns:1fr; }
}


/* =========================================================
   v8.21 public wording clean: graph note, fixed clock, calm actions, top-up highlight, registry fit
========================================================= */
.asgd-clock {
  width: 148px;
  min-width: 148px;
  height: 72px;
  box-sizing: border-box;
  border-radius: 20px;
  padding: 10px 12px;
  text-align: center;
  background:
    linear-gradient(180deg, rgba(255,255,255,.97), rgba(243,248,255,.94));
  border: 1px solid rgba(185,204,234,.92);
  box-shadow: 0 14px 30px rgba(9,24,54,.06);
  overflow: hidden;
  flex: 0 0 148px;
}
.asgd-clock span {
  font-size: 9px;
  line-height: 1;
  letter-spacing: .14em;
}
.asgd-clock strong {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  font-variant-numeric: tabular-nums;
  font-size: 19px;
  line-height: 1.08;
  letter-spacing: -.04em;
  white-space: nowrap;
  min-height: 22px;
}
.asgd-clock small {
  display: block;
  font-size: 10px;
  line-height: 1.15;
  white-space: nowrap;
}
.asgd-work-actions {
  gap: 11px;
  align-items: center;
}
.asgd-work-actions .asgd-btn {
  min-height: 46px;
  padding: 0 20px;
  font-size: 14px;
  letter-spacing: -.01em;
  will-change: opacity, transform;
}
.asgd-btn:active,
.asgd-open-button:active,
.asgd-side-tabs button:active,
.aig-nav-link:active,
.aig-link-btn:active,
.aig-mega-cta:active,
.asgd-link-list a:active,
.is-clicking {
  animation: none !important;
  transform: none !important;
}
#refreshBtn.is-processing,
#gatewayLink.is-processing,
#pulseLink.is-processing,
#askPreviewLink.is-processing,
#quickOpenBtn.is-processing,
[data-topup-checkout].is-processing {
  animation: asgdActionPulse 540ms ease-in-out infinite;
  opacity: .72;
}
@keyframes asgdActionPulse {
  0%, 100% { transform: translateY(0); filter: saturate(1); }
  45% { transform: translateY(-1px); filter: saturate(1.12); }
  70% { transform: translateY(1px); filter: saturate(.92); }
}
.asgd-side-tabs button {
  font-size: 13.2px;
  letter-spacing: -.01em;
}
.asgd-side-tabs button i {
  font-size: 14px;
}
#registryList,
#unknownRegistryList {
  display: block !important;
  overflow-x: hidden;
}
#registryList .asgd-registry-diagnostics,
#unknownRegistryList .asgd-registry-diagnostics {
  grid-column: 1 / -1 !important;
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center;
  gap: 8px;
  margin: 0 0 12px;
  min-width: 0;
}
#registryList .asgd-registry-diagnostics span,
#unknownRegistryList .asgd-registry-diagnostics span {
  width: auto !important;
  height: auto !important;
  min-width: 0 !important;
  min-height: 0 !important;
  aspect-ratio: auto !important;
  display: inline-flex !important;
  align-items: center;
  gap: 4px;
  border-radius: 999px !important;
  padding: 7px 10px !important;
  font-size: 11px !important;
  line-height: 1 !important;
  white-space: nowrap;
}
#registryList .asgd-traffic-table,
#unknownRegistryList .asgd-traffic-table {
  display: grid;
  gap: 9px;
}
#registry .asgd-card {
  padding: 16px;
}
#registry .asgd-two-col.uneven {
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  align-items: start;
}
.asgd-traffic-row {
  grid-template-columns: 34px minmax(0, 1fr) minmax(145px, .42fr);
  padding: 11px 13px;
}
.asgd-traffic-row .path b {
  font-size: 12.5px;
  line-height: 1.25;
}
.asgd-traffic-row .traffic-stats {
  min-width: 142px;
}
.asgd-topup-wide-card,
.asgd-topup-card {
  border: 1px solid rgba(21,92,255,.26) !important;
  background:
    radial-gradient(circle at top right, rgba(21,92,255,.13), transparent 34%),
    linear-gradient(135deg, #ffffff 0%, #eef5ff 100%) !important;
  box-shadow: 0 22px 54px rgba(9,24,54,.085) !important;
}
.asgd-topup-wide-card h3,
.asgd-topup-card h3 {
  font-size: 23px;
  letter-spacing: -.035em;
}
.asgd-topup-wide-card label,
.asgd-topup-card label {
  font-size: 12.8px;
  font-weight: 900;
  color: #1a2a44;
}
.asgd-topup-form input,
.asgd-topup-form select {
  min-height: 48px;
  font-size: 14px;
  font-weight: 850;
  border-radius: 15px;
  background: #fff;
}
.asgd-topup-summary {
  min-height: 48px;
  padding: 12px 14px;
}
.asgd-topup-summary b {
  font-size: 15px;
  color: #071632;
}
.asgd-topup-summary span,
.asgd-topup-summary small {
  font-size: 12px;
}
.asgd-traffic-card .asgd-sparkline,
.asgd-work-pulse .asgd-sparkline {
  position: relative;
}
.asgd-traffic-card .asgd-sparkline::after,
.asgd-work-pulse .asgd-sparkline::after {
  content: none;
  position: absolute;
  right: 8px;
  top: 6px;
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: rgba(21,92,255,.70);
  background: rgba(255,255,255,.74);
  border: 1px solid rgba(199,215,240,.9);
  border-radius: 999px;
  padding: 3px 6px;
}
@media (max-width: 1180px) {
  #registry .asgd-two-col.uneven { grid-template-columns: 1fr; }
  .asgd-clock { width: 140px; min-width: 140px; flex-basis: 140px; }
}



/* =========================================================
   v8.22 business analytics: leads, products, page visit summaries
========================================================= */
.asgd-side-tabs button { font-size: 13.25px; }
.asgd-analytics-hero-card { overflow: hidden; }
.asgd-summary-grid.analytics { grid-template-columns: repeat(6, minmax(120px, 1fr)); }
.asgd-summary-grid.analytics article strong { font-size: clamp(18px, 1.5vw, 25px); white-space: normal; line-height: 1.05; }
.asgd-analytics-grid { display:grid; grid-template-columns: 1.1fr .9fr; gap:12px; align-items:stretch; }
.asgd-analytics-grid.three { grid-template-columns: repeat(3, minmax(0,1fr)); }
.asgd-analytics-chart-card { min-width:0; }
.asgd-big-sparkline.analytics { min-height: 190px; border:1px solid var(--line); border-radius:18px; background:linear-gradient(180deg, rgba(239,246,255,.92), rgba(255,255,255,.72)); overflow:hidden; }
.asgd-big-sparkline.analytics .asgd-sparkline { border:0; min-height: 190px; background:transparent; }
.asgd-funnel-bars, .asgd-page-bars { display:grid; gap:9px; margin-top:12px; }
.asgd-analytics-bar-row {
  display:grid;
  grid-template-columns:minmax(130px,.72fr) minmax(120px,1fr) 58px;
  gap:10px;
  align-items:center;
  border:1px solid rgba(196,210,231,.86);
  background:rgba(255,255,255,.82);
  border-radius:14px;
  padding:9px 10px;
  min-width:0;
}
.asgd-analytics-bar-row b { display:block; font-size:13px; letter-spacing:-.015em; color:var(--ink); overflow-wrap:anywhere; }
.asgd-analytics-bar-row small { display:block; margin-top:2px; font-size:11px; color:var(--muted); }
.asgd-analytics-bar-row strong { text-align:right; font-size:15px; color:var(--ink); }
.asgd-analytics-bar { display:block; height:11px; border-radius:999px; background:#eaf2ff; overflow:hidden; border:1px solid rgba(197,214,239,.92); }
.asgd-analytics-bar i { display:block; height:100%; width:var(--w,0%); border-radius:inherit; background:linear-gradient(90deg, #155cff, #44b3ff); box-shadow:0 6px 14px rgba(21,92,255,.18); }
.compact-list.asgd-list { display:grid; grid-template-columns:1fr; gap:8px; }
#analytics .asgd-list-item { min-height:auto; }
#analytics .asgd-list-item b { font-size:13px; }
#analytics .asgd-list-item p { font-size:12px; }
@media (max-width: 1180px) {
  .asgd-summary-grid.analytics { grid-template-columns: repeat(3, minmax(0,1fr)); }
  .asgd-analytics-grid, .asgd-analytics-grid.three { grid-template-columns:1fr; }
}
@media (max-width: 680px) {
  .asgd-summary-grid.analytics { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .asgd-analytics-bar-row { grid-template-columns:1fr; }
  .asgd-analytics-bar-row strong { text-align:left; }
}


/* =========================================================
   v8.23 abuse report + dashboard guide polish
========================================================= */
.asgd-btn.guide {
  font-weight: 900;
  letter-spacing: .01em;
}

.asgd-abuse-report-card {
  overflow: hidden;
  border-color: rgba(189, 204, 224, .95);
}

.asgd-abuse-report {
  display: grid;
  gap: 14px;
}

.asgd-abuse-report-top {
  display: grid;
  grid-template-columns: 48px 1fr;
  gap: 14px;
  align-items: start;
}

.asgd-report-icon {
  width: 46px;
  height: 46px;
  border-radius: 16px;
  display: grid;
  place-items: center;
  background: #eef6ff;
  color: var(--blue);
  box-shadow: inset 0 0 0 1px rgba(21, 92, 255, .14);
}

.asgd-abuse-report.watch .asgd-report-icon {
  background: #fff7ed;
  color: var(--orange);
  box-shadow: inset 0 0 0 1px rgba(217, 119, 6, .18);
}

.asgd-abuse-report.clear .asgd-report-icon {
  background: #ecfdf5;
  color: var(--green);
  box-shadow: inset 0 0 0 1px rgba(12, 143, 84, .18);
}

.asgd-abuse-report h3 {
  margin: 2px 0 6px;
  font-size: clamp(18px, 1.5vw, 24px);
  letter-spacing: -.035em;
}

.asgd-abuse-report p {
  margin: 0;
  color: var(--muted);
  line-height: 1.55;
}

.asgd-abuse-report-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 10px;
}

.asgd-abuse-report-grid span {
  min-width: 0;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 16px;
  background: linear-gradient(180deg, #fff, #f8fbff);
}

.asgd-abuse-report-grid b {
  display: block;
  font-size: 15px;
  letter-spacing: -.02em;
  color: var(--ink);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.asgd-abuse-report-grid small {
  display: block;
  margin-top: 4px;
  color: var(--muted);
  font-weight: 800;
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: .05em;
}

.asgd-abuse-report-note {
  display: flex;
  gap: 8px;
  align-items: flex-start;
  padding: 12px 14px;
  border-radius: 16px;
  background: #f7fbff;
  border: 1px solid var(--line);
  color: var(--muted);
}

.asgd-abuse-report-note b {
  color: var(--ink);
  white-space: nowrap;
}

.asgd-guide-modal[hidden] { display: none !important; }
.asgd-guide-modal {
  position: fixed;
  inset: 0;
  z-index: 9999;
  display: grid;
  place-items: center;
  padding: 22px;
}
.asgd-guide-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(7, 22, 50, .46);
  backdrop-filter: blur(8px);
}
.asgd-guide-shell {
  position: relative;
  width: min(1080px, 96vw);
  max-height: 88vh;
  overflow: auto;
  background: linear-gradient(180deg, #ffffff, #f7fbff);
  border: 1px solid rgba(189, 204, 224, .96);
  border-radius: 26px;
  box-shadow: 0 28px 90px rgba(7, 22, 50, .26);
  padding: 20px;
  outline: none;
}
.asgd-guide-shell header {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  align-items: flex-start;
  padding-bottom: 16px;
  border-bottom: 1px solid var(--line);
}
.asgd-guide-shell h2 {
  margin: 4px 0 6px;
  font-size: clamp(24px, 2.2vw, 34px);
  letter-spacing: -.045em;
}
.asgd-guide-shell header p {
  margin: 0;
  color: var(--muted);
  line-height: 1.5;
}
.asgd-guide-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin-top: 16px;
}
.asgd-guide-grid article {
  padding: 16px;
  border: 1px solid var(--line);
  border-radius: 20px;
  background: #fff;
  box-shadow: 0 10px 24px rgba(9, 24, 54, .05);
}
.asgd-guide-grid i {
  width: 36px;
  height: 36px;
  display: grid;
  place-items: center;
  border-radius: 13px;
  color: var(--blue);
  background: #edf4ff;
}
.asgd-guide-grid h3 {
  margin: 12px 0 6px;
  font-size: 16px;
}
.asgd-guide-grid p,
.asgd-guide-troubleshoot li {
  color: var(--muted);
  line-height: 1.5;
  font-size: 13px;
}
.asgd-guide-troubleshoot {
  margin-top: 14px;
  border: 1px solid var(--line);
  background: #f8fbff;
  border-radius: 20px;
  padding: 16px 18px;
}
.asgd-guide-troubleshoot h3 { margin: 0 0 8px; }
.asgd-guide-troubleshoot ul { margin: 0; padding-left: 18px; }
.asgd-guide-troubleshoot li + li { margin-top: 6px; }
body.asgd-guide-open { overflow: hidden; }

@media (max-width: 920px) {
  .asgd-abuse-report-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .asgd-guide-grid { grid-template-columns: 1fr; }
  .asgd-guide-shell header { flex-direction: column; }
}

@media (max-width: 560px) {
  .asgd-abuse-report-top { grid-template-columns: 1fr; }
  .asgd-abuse-report-grid { grid-template-columns: 1fr; }
  .asgd-abuse-report-note { flex-direction: column; }
}


/* =========================================================
   V8.25 security status polish + recovery country selector
========================================================= */
.asgd-security-tile {
  position: relative;
  min-height: 74px;
  border: 1px solid rgba(158, 186, 226, 0.62);
  border-radius: 18px;
  padding: 14px 14px 12px;
  background:
    radial-gradient(circle at 95% 10%, rgba(37, 99, 235, 0.08), transparent 34%),
    linear-gradient(180deg, rgba(255,255,255,0.96), rgba(247,250,255,0.92));
  box-shadow: 0 14px 32px rgba(15, 35, 70, 0.06);
}

.asgd-security-tile b {
  display: block;
  margin: 7px 0 10px;
  font-size: 14px;
  font-weight: 850;
  line-height: 1.35;
  color: var(--ink);
  overflow-wrap: anywhere;
}

.asgd-status-badge {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  width: fit-content;
  max-width: 100%;
  padding: 6px 10px;
  border-radius: 999px;
  font-size: 11px;
  line-height: 1;
  font-weight: 950;
  white-space: nowrap;
  border: 1px solid rgba(185, 201, 228, 0.86);
  background: #f7faff;
  color: #435575;
}

.asgd-status-badge i {
  font-size: 11px;
}

.asgd-status-badge.verified {
  background: #ecfdf5;
  color: #057a47;
  border-color: #a7f3d0;
}

.asgd-status-badge.unverified {
  background: #fff1f2;
  color: #be123c;
  border-color: #fecdd3;
}

.asgd-status-badge.pending {
  background: #fff7ed;
  color: #b45309;
  border-color: #fed7aa;
}

.asgd-status-badge.neutral,
.asgd-status-badge.info {
  background: #eff6ff;
  color: #1d4ed8;
  border-color: #bfdbfe;
}

.asgd-mobile-country-row {
  display: grid;
  grid-template-columns: minmax(210px, 0.42fr) minmax(240px, 1fr);
  gap: 10px;
  align-items: end;
}

.asgd-mobile-country-row select,
.asgd-mobile-country-row input {
  min-height: 48px;
  font-size: 14px;
  font-weight: 780;
}

.asgd-mobile-preview {
  display: flex;
  align-items: center;
  min-height: 38px;
  width: fit-content;
  max-width: 100%;
  padding: 9px 13px;
  border-radius: 999px;
  border: 1px solid rgba(191, 219, 254, 0.94);
  background: linear-gradient(135deg, #eff6ff, #ffffff);
  color: #1d4ed8;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 0.01em;
}

.asgd-security-help {
  padding: 14px 15px;
  border-radius: 18px;
  border: 1px solid rgba(191, 219, 254, 0.9);
  background: linear-gradient(135deg, #f8fbff, #ffffff);
  color: #415271;
  font-weight: 720;
  line-height: 1.5;
}

.asgd-security-help.ok {
  background: #ecfdf5;
  border-color: #a7f3d0;
  color: #047857;
}

.asgd-security-help.warn {
  background: #fff7ed;
  border-color: #fed7aa;
  color: #9a3412;
}

.asgd-security-help.bad {
  background: #fff1f2;
  border-color: #fecdd3;
  color: #be123c;
}

.asgd-security-help.info {
  background: #eff6ff;
  border-color: #bfdbfe;
  color: #1d4ed8;
}

@media (max-width: 760px) {
  .asgd-mobile-country-row {
    grid-template-columns: 1fr;
  }
}


/* =========================================================
   V8.26 dashboard simplification: window bar, subscription,
   AI activity sub-tabs, multi-signal graph, top-up split
========================================================= */
.asgd-dashboard > .asgd-window-bar.global {
  grid-column: 1 / -1;
  position: sticky;
  top: 76px;
  z-index: 25;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 14px;
  min-height: 62px;
  border-radius: 18px;
  padding: 10px 12px;
  background: rgba(255,255,255,.96);
  backdrop-filter: blur(14px);
}
.asgd-window-copy strong { display:block; font-size:14px; font-weight:850; }
.asgd-window-copy small { display:block; color:var(--muted); font-size:12px; }
.asgd-window-right { display:flex; align-items:center; justify-content:flex-end; gap:12px; flex-wrap:wrap; }
.asgd-window-bar.global .asgd-clock.compact {
  width: 140px;
  min-width: 140px;
  height: 48px;
  padding: 6px 10px;
  border-radius: 16px;
  flex: 0 0 140px;
}
.asgd-window-bar.global .asgd-clock span { font-size:8px; }
.asgd-window-bar.global .asgd-clock strong { font-size:16px; line-height:1; }
.asgd-window-bar.global .asgd-clock small { font-size:9px; }
.asgd-window-bar.global .asgd-window-buttons { justify-content:flex-end; }
.asgd-window-bar.global .asgd-window-buttons button { min-height:32px; padding:0 11px; }
.asgd-work-head { grid-template-columns: minmax(0,1fr) minmax(360px,520px) auto; }
.asgd-work-actions { align-self:center; }

.asgd-subtab-row {
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  margin: 14px 0;
}
.asgd-subtab-row button {
  min-height:38px;
  border:1px solid var(--line);
  background:#fff;
  border-radius:999px;
  padding:0 13px;
  font-weight:850;
  color:#24344f;
  display:inline-flex;
  align-items:center;
  gap:7px;
}
.asgd-subtab-row button.active {
  background:#081225;
  color:#fff;
  border-color:#081225;
}
.asgd-activity-view { display:none; }
.asgd-activity-view.active { display:block; }
.asgd-card.inner { box-shadow:none; background:rgba(255,255,255,.78); }
.asgd-activity-master { overflow:hidden; }
.asgd-activity-spectrum { margin-top: 12px; }
.asgd-traffic-spectrum-box {
  border:1px solid rgba(185,204,234,.92);
  border-radius:20px;
  background:
    radial-gradient(circle at top left, rgba(21,92,255,.12), transparent 28rem),
    linear-gradient(180deg, rgba(248,251,255,.98), rgba(255,255,255,.78));
  overflow:hidden;
  padding:12px;
}
.asgd-traffic-spectrum-box svg { width:100%; min-height:150px; display:block; }
.asgd-traffic-spectrum-box .grid line { stroke:rgba(124,144,172,.28); stroke-width:1; }
.asgd-traffic-spectrum-box polyline { fill:none; stroke-width:4.5; stroke-linecap:round; stroke-linejoin:round; filter:drop-shadow(0 7px 10px rgba(9,24,54,.12)); }
.asgd-traffic-spectrum-box polyline.reads { stroke:#155cff; }
.asgd-traffic-spectrum-box polyline.questions { stroke:#10b981; }
.asgd-traffic-spectrum-box polyline.requests { stroke:#f59e0b; }
.asgd-traffic-spectrum-box polyline.visitors { stroke:#a855f7; }
.asgd-spectrum-legend,
.asgd-activity-legend {
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:10px;
}
.asgd-spectrum-legend span,
.asgd-activity-legend span {
  display:inline-flex;
  align-items:center;
  gap:7px;
  border:1px solid rgba(185,204,234,.8);
  background:#fff;
  border-radius:999px;
  padding:7px 10px;
  font-size:12px;
  font-weight:800;
  color:#24344f;
}
.asgd-spectrum-legend i,
.asgd-activity-legend i { width:10px; height:10px; border-radius:999px; display:inline-block; }
.asgd-spectrum-legend .reads i,
.asgd-activity-legend .reads i { background:#155cff; }
.asgd-spectrum-legend .questions i,
.asgd-activity-legend .questions i { background:#10b981; }
.asgd-spectrum-legend .requests i,
.asgd-activity-legend .requests i { background:#f59e0b; }
.asgd-spectrum-legend .visitors i,
.asgd-activity-legend .visitors i { background:#a855f7; }
.asgd-activity-legend span b { font-size:15px; color:#071632; }
.asgd-traffic-card .asgd-traffic-spectrum-box,
.asgd-work-pulse .asgd-traffic-spectrum-box { padding:6px; border-radius:14px; }
.asgd-traffic-card .asgd-traffic-spectrum-box svg { min-height:100px; }
.asgd-work-pulse .asgd-traffic-spectrum-box svg { min-height:82px; }
.asgd-traffic-card .asgd-spectrum-legend,
.asgd-work-pulse .asgd-spectrum-legend { display:none; }
.asgd-traffic-card { min-height:170px; }
.asgd-work-pulse { align-self:center; }

.asgd-kpi-grid.credits-split { grid-template-columns: repeat(5, minmax(0,1fr)); }
.asgd-credit-vertical-chart.premium .topup .asgd-vbar-track i { background:linear-gradient(180deg,#06b6d4,#67e8f9); }
.asgd-subscription-manage-card .asgd-readonly { margin-top: 10px; }
.asgd-subscription-actions { display:flex; gap:9px; flex-wrap:wrap; margin-top:14px; }
.asgd-mini-status .bad, .bad { color: var(--red); font-weight: 850; }

@media (max-width:1450px) {
  .asgd-dashboard > .asgd-window-bar.global { position:relative; top:auto; }
  .asgd-window-right { justify-content:flex-start; }
  .asgd-work-head { grid-template-columns: 1fr; }
  .asgd-kpi-grid.credits-split { grid-template-columns: repeat(3, minmax(0,1fr)); }
}
@media (max-width:760px) {
  .asgd-window-bar.global,
  .asgd-window-right { align-items:stretch; }
  .asgd-window-bar.global { display:grid; }
  .asgd-window-bar.global .asgd-clock.compact { width:100%; min-width:0; }
  .asgd-kpi-grid.credits-split { grid-template-columns: 1fr; }
}


/* =========================================================
   V8.27 clean tabs + compact activity rows
   - old separate AI visitor tabs removed from HTML
   - hides any stale old-tab buttons if cached HTML survives briefly
   - removes "activity rows" bubble text from graphs
========================================================= */
.asgd-side-tabs button[data-panel="aiVisitors"],
.asgd-side-tabs button[data-panel="aiConversations"],
.asgd-side-tabs button[data-panel="topAiVisitors"] {
  display: none !important;
}

.asgd-side-tabs button[data-panel="subscription"] {
  order: 6;
  background: rgba(21, 92, 255, 0.06);
  border-color: rgba(21, 92, 255, 0.12);
}

.asgd-side-tabs button[data-panel="subscription"].active {
  background: #0b1426;
  color: #ffffff;
  border-color: #0b1426;
}

.asgd-traffic-card .asgd-sparkline::after,
.asgd-work-pulse .asgd-sparkline::after {
  content: none !important;
  display: none !important;
}

.asgd-activity-shell .asgd-muted.clean {
  margin-top: 3px;
  font-size: 12px;
  line-height: 1.35;
}

.asgd-row-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 5px;
}

.asgd-row-chips em {
  display: inline-flex;
  align-items: center;
  min-height: 22px;
  max-width: 100%;
  border: 1px solid rgba(196, 210, 231, 0.9);
  border-radius: 999px;
  background: rgba(245, 249, 255, 0.92);
  color: #40516f;
  padding: 3px 8px;
  font-size: 11px;
  font-style: normal;
  font-weight: 780;
  line-height: 1.15;
}

.asgd-list-item.with-icon p {
  margin-top: 5px;
}

.asgd-list-item.with-icon p br,
.asgd-list-item.with-icon p small {
  display: none !important;
}

.asgd-activity-spectrum {
  min-height: 245px;
}

.asgd-traffic-spectrum-box svg {
  min-height: 185px;
}

.asgd-activity-legend span.visitors {
  color: #9333ea;
}

.asgd-spectrum-legend span.visitors i,
.asgd-activity-legend span.visitors i {
  background: #9333ea;
}

.asgd-spectrum-legend span.reads i,
.asgd-activity-legend span.reads i {
  background: #155cff;
}

.asgd-spectrum-legend span.questions i,
.asgd-activity-legend span.questions i {
  background: #10b981;
}

.asgd-spectrum-legend span.requests i,
.asgd-activity-legend span.requests i {
  background: #f59e0b;
}


/* =========================================================
   V8.28 portal fix + cleaner timeline/list rows
========================================================= */
.asgd-traffic-card .asgd-sparkline::after,
.asgd-work-pulse .asgd-sparkline::after {
  content: none !important;
  display: none !important;
}

.asgd-mini-status {
  min-height: 24px;
  font-weight: 780;
}

.asgd-mini-status .bad {
  display: inline-flex;
  align-items: center;
  border: 1px solid #f0b8b4;
  background: #fff5f5;
  border-radius: 999px;
  padding: 7px 10px;
}

.asgd-subscription-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  margin: 12px 0 10px;
}

.asgd-subscription-actions .asgd-btn {
  min-height: 42px;
}

.asgd-list-item.with-icon p {
  margin-top: 4px;
}

.asgd-row-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
}

.asgd-row-chips em {
  max-width: 100%;
  white-space: normal;
}

#subscriptionEventsList .asgd-list-item p,
#billingEventsList .asgd-list-item p,
#activityList .asgd-list-item p,
#messageList .asgd-list-item p,
#aiVisitorsList .asgd-list-item p,
#aiConversationsList .asgd-list-item p,
#topAiVisitorsList .asgd-list-item p {
  font-size: 0;
  line-height: 1;
}

#subscriptionEventsList .asgd-row-chips,
#billingEventsList .asgd-row-chips,
#activityList .asgd-row-chips,
#messageList .asgd-row-chips,
#aiVisitorsList .asgd-row-chips,
#aiConversationsList .asgd-row-chips,
#topAiVisitorsList .asgd-row-chips {
  font-size: 11px;
}
/* =========================================================
   v9.0 PUBLISH — ASG Client Portal
   Sharp medium typography, left clock, inline subscriptions,
   Billing Core timeline, and real static SVG credit chart.
========================================================= */
:root {
  --asgd-font:
    "Segoe UI Variable Text",
    "Segoe UI Variable",
    Aptos,
    Inter,
    ui-sans-serif,
    system-ui,
    -apple-system,
    BlinkMacSystemFont,
    "Helvetica Neue",
    Arial,
    sans-serif;
}

html,
body,
button,
input,
textarea,
select {
  font-family: var(--asgd-font);
}

html,
body {
  font-weight: 500;
  text-rendering: geometricPrecision;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-synthesis: none;
}

.asgd-card h3,
.asgd-work-head h2,
.asgd-side-brand strong,
.asgd-login-head strong,
.asgd-kpi-grid strong,
.asgd-summary-grid strong {
  font-weight: 650;
}

.asgd-btn,
.asgd-side-tabs button,
.asgd-window-buttons button,
.asgd-readonly b,
.asgd-list-item b,
label {
  font-weight: 600;
}

.asgd-window-bar.global {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}

.asgd-window-left {
  display: flex;
  align-items: center;
  gap: 14px;
  min-width: 0;
}

.asgd-window-left .asgd-clock {
  order: -1;
  text-align: left;
  flex: 0 0 auto;
  background:
    radial-gradient(circle at 0 0, rgba(21, 92, 255, 0.12), transparent 72%),
    #ffffff;
}

.asgd-window-copy {
  min-width: 0;
}

.asgd-window-right {
  display: flex;
  align-items: center;
  justify-content: flex-end;
}

.asgd-btn.small {
  min-height: 35px;
  padding: 0 12px;
  font-size: 12px;
}

.asgd-subscription-layout {
  align-items: start;
}

.asgd-subscription-manage-card {
  display: grid;
  gap: 14px;
}

.asgd-subscription-request-box {
  display: grid;
  gap: 13px;
  border: 1px solid #c9d8ed;
  border-radius: 18px;
  padding: 14px;
  background:
    linear-gradient(135deg, rgba(246, 250, 255, 0.98), rgba(255, 255, 255, 0.98));
}

.asgd-request-state {
  display: grid;
  gap: 4px;
  border: 1px solid #d4e1f2;
  border-radius: 14px;
  padding: 11px 12px;
  background: #ffffff;
}

.asgd-request-state b {
  font-size: 14px;
  font-weight: 650;
  color: #0b1f42;
}

.asgd-request-state span {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
}

.asgd-request-state.processing {
  border-color: #bfd1ff;
  background: #f4f7ff;
}

.asgd-request-state.applied,
.asgd-request-state.confirmed {
  border-color: #a9dfc2;
  background: #f2fcf6;
}

.asgd-request-state.failed {
  border-color: #efb3ae;
  background: #fff5f4;
}

.asgd-subscription-request-form select {
  width: 100%;
  min-height: 46px;
  border: 1px solid #b9c5d6;
  border-radius: 14px;
  background: #ffffff;
  color: var(--ink);
  padding: 0 12px;
  outline: none;
}

.asgd-subscription-warning {
  display: flex;
  align-items: flex-start;
  gap: 9px;
  border: 1px solid #efc37e;
  border-radius: 14px;
  padding: 11px 12px;
  background: #fff9eb;
  color: #8a4b05;
  font-size: 12.5px;
  line-height: 1.45;
}

.asgd-subscription-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  margin-top: 2px;
}

.asgd-status-badge.info {
  border-color: #bdd1ff;
  background: #f2f6ff;
  color: #164fba;
}

.asgd-mini-status:empty {
  display: none;
}

.asgd-mini-status {
  border: 1px solid #d5e1ef;
  border-radius: 13px;
  background: #ffffff;
  padding: 10px 11px;
  color: #33435e;
  font-size: 12.5px;
  line-height: 1.45;
}

.asgd-mini-status .bad {
  color: var(--red);
}

.asgd-timeline-entry {
  position: relative;
}

.asgd-timeline-entry .asgd-timeline-amount {
  display: inline-flex;
  margin-top: 7px;
  border: 1px solid #cbdaf0;
  border-radius: 999px;
  background: #f5f9ff;
  padding: 4px 8px;
  color: #184a9f;
  font-size: 11px;
  font-weight: 650;
}

.asgd-credit-static-chart {
  width: 100%;
  overflow-x: auto;
  border: 1px solid #d5e1ef;
  border-radius: 18px;
  background:
    linear-gradient(180deg, rgba(239, 246, 255, 0.76), rgba(255, 255, 255, 0.98));
  padding: 10px;
}

.asgd-credit-static-chart svg {
  display: block;
  width: 100%;
  min-width: 620px;
  height: auto;
}

.asgd-credit-static-chart .grid-line {
  stroke: #dfe8f4;
  stroke-width: 1;
}

.asgd-credit-static-chart .axis-label,
.asgd-credit-static-chart .bar-label,
.asgd-credit-static-chart .bar-note {
  fill: #61708b;
  font-family: var(--asgd-font);
}

.asgd-credit-static-chart .axis-label {
  font-size: 10px;
}

.asgd-credit-static-chart .bar-label {
  font-size: 11px;
  font-weight: 650;
  fill: #14213b;
}

.asgd-credit-static-chart .bar-value {
  font-size: 14px;
  font-weight: 700;
  fill: #081225;
  font-family: var(--asgd-font);
}

.asgd-credit-static-chart .bar-note {
  font-size: 9px;
}

.asgd-credit-static-chart .bar {
  fill: #2d6cff;
}

.asgd-credit-static-chart .bar.used {
  fill: #e35b62;
}

.asgd-credit-static-chart .bar.available {
  fill: #24a66d;
}

.asgd-credit-static-chart .bar.topup {
  fill: #7458d6;
}

.asgd-credit-static-chart .bar.bonus {
  fill: #d89420;
}

.asgd-credit-static-chart .bar.included {
  fill: #2d6cff;
}

@media (max-width: 900px) {
  .asgd-window-bar.global,
  .asgd-window-left,
  .asgd-window-right {
    align-items: stretch;
  }

  .asgd-window-bar.global {
    display: grid;
  }

  .asgd-window-left {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
  }

  .asgd-window-buttons {
    justify-content: flex-start;
  }

  .asgd-subscription-actions .asgd-btn {
    width: 100%;
  }
}

@media (max-width: 560px) {
  .asgd-window-left {
    grid-template-columns: 1fr;
  }

  .asgd-window-left .asgd-clock {
    width: 100%;
    min-width: 0;
  }
}


/* =========================================================
   V9.2 plan-value proof + 12-hour hard session indicator
========================================================= */
.asgd-side-footer {
  align-items: center;
}

.asgd-session-status {
  min-width: 92px;
  display: grid;
  justify-items: center;
  gap: 2px;
  border: 1px solid var(--line);
  border-radius: 12px;
  padding: 5px 8px;
  background: #f8fbff;
  color: #344054;
}

.asgd-session-status span {
  font-size: 8.5px;
  line-height: 1;
  text-transform: uppercase;
  letter-spacing: .11em;
  font-weight: 850;
  color: var(--muted);
}

.asgd-session-status strong {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  font-size: 11px;
  line-height: 1.1;
  font-variant-numeric: tabular-nums;
}

.asgd-session-status.active {
  border-color: #b9d2ff;
  background: #f2f7ff;
  color: #1247b8;
}

.asgd-session-status.warning {
  border-color: #fdba74;
  background: #fff7ed;
  color: #9a3412;
}

.asgd-session-status.locked {
  color: #667085;
  background: #f8fafc;
}

.asgd-plan-value-card {
  overflow: hidden;
  background:
    radial-gradient(circle at top right, rgba(21,92,255,.10), transparent 28rem),
    linear-gradient(135deg, rgba(255,255,255,.98), rgba(244,248,255,.96));
}

.asgd-plan-fit-badge {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  border: 1px solid #bfdbfe;
  border-radius: 999px;
  padding: 8px 11px;
  background: #eff6ff;
  color: #1d4ed8;
  font-size: 11px;
  font-weight: 850;
  white-space: nowrap;
}

.asgd-plan-fit-badge.good {
  border-color: #a7f3d0;
  background: #ecfdf5;
  color: #047857;
}

.asgd-plan-fit-badge.steady {
  border-color: #bfdbfe;
  background: #eff6ff;
  color: #1d4ed8;
}

.asgd-plan-fit-badge.watch {
  border-color: #fed7aa;
  background: #fff7ed;
  color: #9a3412;
}

.asgd-plan-fit-summary {
  display: grid;
  grid-template-columns: repeat(5, minmax(120px, 1fr));
  gap: 9px;
  margin-bottom: 12px;
}

.asgd-plan-fit-summary > div {
  border: 1px solid var(--line);
  border-radius: 14px;
  padding: 10px 11px;
  background: rgba(255,255,255,.88);
}

.asgd-plan-fit-summary span {
  display: block;
  color: var(--muted);
  font-size: 9px;
  font-weight: 850;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.asgd-plan-fit-summary b {
  display: block;
  margin-top: 5px;
  font-size: 18px;
}

.asgd-plan-fit-summary p {
  grid-column: 1 / -1;
  margin: 0;
  border-left: 3px solid #155cff;
  border-radius: 0 12px 12px 0;
  padding: 10px 12px;
  background: rgba(238,245,255,.76);
  color: #40516e;
}

.asgd-plan-comparison-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 10px;
}

.asgd-plan-compare-card {
  border: 1px solid var(--line);
  border-radius: 16px;
  padding: 14px;
  background: rgba(255,255,255,.92);
}

.asgd-plan-compare-card.current {
  border-color: rgba(21,92,255,.45);
  box-shadow: inset 0 0 0 1px rgba(21,92,255,.10), 0 12px 28px rgba(21,92,255,.07);
}

.asgd-plan-compare-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.asgd-plan-compare-head span {
  display: block;
  color: var(--muted);
  font-size: 9px;
  font-weight: 850;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.asgd-plan-compare-head h4 {
  margin: 3px 0 0;
  font-size: 22px;
  letter-spacing: -.035em;
}

.asgd-current-plan-pill {
  border: 1px solid #a7f3d0;
  border-radius: 999px;
  padding: 6px 9px;
  background: #ecfdf5;
  color: #047857;
  font-size: 10px;
}

.asgd-plan-compare-card > p {
  min-height: 40px;
  margin: 10px 0;
  color: var(--muted);
}

.asgd-plan-compare-card > strong {
  display: block;
  margin-bottom: 8px;
  font-size: 14px;
}

.asgd-plan-compare-card ul {
  margin: 8px 0 14px 18px;
  padding: 0;
  color: #40516e;
}

.asgd-plan-compare-card li {
  margin: 6px 0;
  line-height: 1.4;
  font-size: 12px;
}

@media (max-width: 900px) {
  .asgd-plan-fit-summary { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .asgd-plan-comparison-grid { grid-template-columns: 1fr; }
}

@media (max-width: 520px) {
  .asgd-side-footer { flex-wrap: wrap; }
  .asgd-session-status { order: 3; width: 100%; }
  .asgd-plan-fit-summary { grid-template-columns: 1fr; }
}


/* v9.3 overview lift + calmer live activity graphs + color coded mini cards */
.asgd-work-head {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: start;
}

.asgd-live-activity-band {
  margin: 14px 0 10px;
}

.asgd-live-activity-card {
  display: grid;
  grid-template-columns: minmax(260px, 0.78fr) minmax(400px, 1.22fr);
  gap: 16px;
  align-items: stretch;
  border: 1px solid rgba(24,58,118,.14);
  background: linear-gradient(135deg, rgba(255,255,255,.98), rgba(242,247,255,.96));
}

.asgd-live-activity-copy {
  display: grid;
  align-content: start;
  gap: 10px;
}

.asgd-live-activity-copy h3 {
  margin: 0;
  font-size: clamp(22px, 1.65vw, 32px);
  line-height: 1.04;
  letter-spacing: -0.045em;
}

.asgd-live-activity-copy p { margin: 0; color: #4a5a74; }

.asgd-live-activity-visual {
  border: 1px solid rgba(185,204,234,.92);
  border-radius: 18px;
  background: radial-gradient(circle at top left, rgba(21,92,255,.11), transparent 26rem), linear-gradient(180deg, rgba(248,251,255,.98), rgba(255,255,255,.88));
  padding: 12px;
  min-width: 0;
}

.asgd-live-activity-visual-head {
  display: grid;
  gap: 3px;
  margin-bottom: 6px;
}

.asgd-live-activity-visual-head span {
  text-transform: uppercase;
  letter-spacing: .11em;
  color: var(--muted);
  font-size: 9.5px;
  font-weight: 900;
}

.asgd-live-activity-visual-head strong {
  font-size: 18px;
  line-height: 1.08;
  letter-spacing: -.035em;
  color: #081225;
}

.asgd-live-activity-visual-head small { color: #68758b; font-size: 12px; }

.asgd-live-activity-card .asgd-sparkline.compact .asgd-traffic-spectrum-box {
  padding: 8px;
  border-radius: 16px;
}

.asgd-live-activity-card .asgd-sparkline.compact .asgd-traffic-spectrum-box svg { min-height: 120px; }
.asgd-live-activity-card .asgd-sparkline.compact .asgd-spectrum-legend { display: none; }

.asgd-cockpit-hero-metrics article.tone-window { background: linear-gradient(180deg, rgba(245,248,255,.98), rgba(238,244,255,.86)); }
.asgd-cockpit-hero-metrics article.tone-window i { background:#edf4ff; color:#155cff; }
.asgd-cockpit-hero-metrics article.tone-reads { background: linear-gradient(180deg, rgba(239,247,255,.98), rgba(230,242,255,.9)); }
.asgd-cockpit-hero-metrics article.tone-reads i { background:#e6f0ff; color:#0f5ae5; }
.asgd-cockpit-hero-metrics article.tone-known { background: linear-gradient(180deg, rgba(239,251,246,.98), rgba(226,246,237,.9)); }
.asgd-cockpit-hero-metrics article.tone-known i { background:#ddf8eb; color:#119765; }
.asgd-cockpit-hero-metrics article.tone-credits { background: linear-gradient(180deg, rgba(255,251,236,.98), rgba(255,246,213,.9)); }
.asgd-cockpit-hero-metrics article.tone-credits i { background:#fff1c2; color:#b7791f; }
.asgd-cockpit-hero-metrics article.tone-requests { background: linear-gradient(180deg, rgba(243,240,255,.98), rgba(236,231,255,.9)); }
.asgd-cockpit-hero-metrics article.tone-requests i { background:#ece5ff; color:#6d3ef0; }
.asgd-cockpit-hero-metrics article.tone-owner { background: linear-gradient(180deg, rgba(247,249,252,.98), rgba(239,244,250,.92)); }
.asgd-cockpit-hero-metrics article.tone-owner i { background:#eaf0f8; color:#4f6382; }

.asgd-summary-grid article { position: relative; overflow: hidden; }
.asgd-summary-grid article.tone-reads { background: linear-gradient(180deg, rgba(242,247,255,.98), rgba(255,255,255,.92)); border-color: rgba(85,132,255,.22); }
.asgd-summary-grid article.tone-reads::before { background:#155cff; }
.asgd-summary-grid article.tone-asks { background: linear-gradient(180deg, rgba(242,255,249,.98), rgba(255,255,255,.92)); border-color: rgba(24,170,110,.22); }
.asgd-summary-grid article.tone-asks::before { background:#10b981; }
.asgd-summary-grid article.tone-requests { background: linear-gradient(180deg, rgba(248,243,255,.98), rgba(255,255,255,.92)); border-color: rgba(114,81,255,.22); }
.asgd-summary-grid article.tone-requests::before { background:#7c3aed; }
.asgd-summary-grid article.tone-known { background: linear-gradient(180deg, rgba(240,252,247,.98), rgba(255,255,255,.92)); border-color: rgba(19,166,107,.2); }
.asgd-summary-grid article.tone-known::before { background:#13a66b; }
.asgd-summary-grid article.tone-unknown { background: linear-gradient(180deg, rgba(255,250,240,.98), rgba(255,255,255,.92)); border-color: rgba(245,158,11,.22); }
.asgd-summary-grid article.tone-unknown::before { background:#f59e0b; }
.asgd-summary-grid article.tone-review { background: linear-gradient(180deg, rgba(255,244,244,.98), rgba(255,255,255,.92)); border-color: rgba(225,84,84,.2); }
.asgd-summary-grid article.tone-review::before { background:#ef4444; }
.asgd-summary-grid article.tone-credits { background: linear-gradient(180deg, rgba(255,251,239,.98), rgba(255,255,255,.92)); border-color: rgba(211,154,18,.22); }
.asgd-summary-grid article.tone-credits::before { background:#d4a017; }
.asgd-summary-grid article.tone-window { background: linear-gradient(180deg, rgba(244,247,252,.98), rgba(255,255,255,.92)); border-color: rgba(107,123,150,.18); }
.asgd-summary-grid article.tone-window::before { background:#6b7b96; }
.asgd-summary-grid article.tone-billing { background: linear-gradient(180deg, rgba(240,249,255,.98), rgba(255,255,255,.92)); border-color: rgba(14,116,144,.18); }
.asgd-summary-grid article.tone-billing::before { background:#0891b2; }
.asgd-summary-grid article.tone-default::before,
.asgd-summary-grid article[class*="tone-"]::before { content:""; position:absolute; inset:0 auto 0 0; width:4px; }

@media (max-width: 1180px) {
  .asgd-live-activity-card { grid-template-columns: 1fr; }
}

@media (max-width: 980px) {
  .asgd-work-head { grid-template-columns: 1fr; }
  .asgd-work-actions { justify-content: flex-start; }
}


/* v9.4 final polish: remove duplicate white header, move actions to window strip, clearer AI tabs */
.asgd-dashboard > .asgd-window-bar.global {
  gap: 18px;
  min-height: 78px;
  padding: 14px 16px;
  border-radius: 22px;
}

.asgd-window-left { gap: 16px; }

.asgd-window-bar.global .asgd-clock.compact {
  width: 154px;
  min-width: 154px;
  height: 62px;
  padding: 10px 14px;
  border-radius: 18px;
  flex: 0 0 154px;
  border: 1px solid rgba(137,163,203,.45);
  box-shadow: 0 8px 18px rgba(13, 33, 71, .06);
}
.asgd-window-bar.global .asgd-clock span { font-size:9px; letter-spacing:.16em; }
.asgd-window-bar.global .asgd-clock strong { font-size:24px; line-height:1.05; }
.asgd-window-bar.global .asgd-clock small { font-size:10.5px; margin-top:4px; }
.asgd-window-copy strong { font-size:15px; }
.asgd-window-copy small { font-size:12.5px; }

.asgd-window-right {
  display: grid;
  justify-items: end;
  align-items: center;
  gap: 10px;
}

.asgd-window-actions {
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:10px;
}
.asgd-window-actions .asgd-btn { min-height: 38px; }
.asgd-window-actions .asgd-btn.primary { box-shadow: 0 8px 16px rgba(21,92,255,.18); }

.asgd-workspace { align-content: start; }
.asgd-cockpit-hero { margin-top: 10px; }

.asgd-activity-master {
  padding-top: 16px;
}
.asgd-activity-navband {
  display:grid;
  gap:8px;
  margin: 10px 0 12px;
  padding: 12px 14px;
  border: 1px solid rgba(195,212,238,.8);
  border-radius: 18px;
  background: linear-gradient(180deg, rgba(247,250,255,.95), rgba(255,255,255,.96));
}
.asgd-tab-note { margin:0; font-size:12px; }
.asgd-subtab-row.prominent { margin:0; gap:10px; }
.asgd-subtab-row.prominent button {
  min-height: 42px;
  padding: 0 15px;
  border-width: 1px;
  font-size: 13px;
  box-shadow: 0 4px 10px rgba(9,24,54,.03);
}
.asgd-subtab-row.prominent button.active {
  background: linear-gradient(180deg, #0d1f43, #081225);
  border-color: #081225;
  box-shadow: 0 10px 18px rgba(8,18,37,.18);
}
.asgd-activity-strip-label {
  margin-top: 10px;
  font-size: 11px;
  font-weight: 850;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: #6a7b96;
}
.asgd-activity-spectrum { margin-top: 8px; }
.asgd-activity-legend { margin-top: 12px; }
.asgd-activity-legend span {
  padding: 8px 12px;
  border-radius: 999px;
  border: 1px solid rgba(182,201,228,.85);
  background: #fff;
  font-size: 13px;
}
.asgd-activity-legend span b { font-size: 16px; }

@media (max-width: 1320px) {
  .asgd-window-right { justify-items: stretch; }
  .asgd-window-actions, .asgd-window-bar.global .asgd-window-buttons { justify-content: flex-start; }
}

@media (max-width: 980px) {
  .asgd-dashboard > .asgd-window-bar.global { padding: 14px; }
  .asgd-window-left { width: 100%; }
  .asgd-window-right { width: 100%; justify-items: stretch; }
  .asgd-window-actions { justify-content: flex-start; }
}


/* =========================================================
   V9.5 premium cockpit layout + client-safe LLM transcripts
========================================================= */
.asgd-insight-strip.v20 {
  grid-template-columns: minmax(330px, 1.35fr) minmax(380px, 1.45fr) repeat(3, minmax(150px, .7fr)) minmax(420px, 1.45fr);
  gap: 10px;
  padding: 10px 12px;
  align-items: stretch;
}

.asgd-overall-insight {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 14px;
  align-items: center;
}

.asgd-overall-insight-copy {
  min-width: 0;
}

.asgd-overall-insight-copy > span,
.asgd-overall-insight-copy > strong,
.asgd-overall-insight-copy > small {
  display: block;
}

.asgd-insight-card .insight-clock,
.asgd-clock.insight-clock {
  min-width: 126px;
  padding: 8px 10px;
  border-radius: 14px;
  background: linear-gradient(180deg, rgba(255,255,255,.96), rgba(241,246,255,.92));
  border: 1px solid rgba(153,178,218,.42);
  text-align: right;
  box-shadow: 0 7px 18px rgba(9,24,54,.05);
}

.asgd-clock.insight-clock span {
  font-size: 8px;
  letter-spacing: .13em;
}

.asgd-clock.insight-clock strong {
  margin-top: 2px;
  font-size: 19px;
  line-height: 1;
}

.asgd-clock.insight-clock small {
  margin-top: 3px;
  font-size: 9px;
}

.asgd-insight-command {
  display: grid;
  gap: 9px;
  align-content: center;
}

.asgd-insight-command-copy {
  display: grid;
  gap: 4px;
}

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

.asgd-insight-actions .asgd-btn {
  min-height: 32px;
  padding: 0 11px;
  font-size: 11px;
}

body.asg-locked .asgd-member-action {
  display: none !important;
}

.asgd-dashboard {
  grid-template-areas: "sidebar workspace";
}

.asgd-sidebar {
  grid-area: sidebar;
}

.asgd-workspace {
  grid-area: workspace;
}

.asgd-window-bar.workspace-window {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  min-height: 58px;
  margin: -2px 0 2px;
  padding: 10px 12px;
  border: 1px solid rgba(177,198,229,.76);
  border-radius: 18px;
  background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(246,249,255,.94));
  box-shadow: 0 9px 24px rgba(9,24,54,.045);
}

.asgd-window-bar.workspace-window .asgd-window-copy {
  min-width: 250px;
}

.asgd-workspace-window-controls {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 9px;
  flex-wrap: wrap;
}

.asgd-window-bar.workspace-window .asgd-window-buttons {
  justify-content: flex-end;
}

.asgd-window-bar.workspace-window .asgd-window-buttons button {
  min-height: 31px;
  padding: 0 10px;
  font-size: 10.5px;
}

/* Premium, lighter analytics */
.asgd-traffic-spectrum-box polyline {
  stroke-width: 2.15;
  filter: none;
}

.asgd-sparkline polyline,
.asgd-big-sparkline polyline {
  stroke-width: 2.1;
  filter: none;
}

.asgd-sparkline circle,
.asgd-big-sparkline circle {
  r: 2.5;
  stroke-width: 1.5;
}

.asgd-traffic-spectrum-box .grid line {
  stroke: rgba(111,132,164,.18);
  stroke-width: .75;
}

.asgd-traffic-card .asgd-traffic-spectrum-box svg {
  min-height: 78px;
}

.asgd-live-activity-band {
  margin: 6px 0 4px;
}

.asgd-live-activity-card {
  grid-template-columns: minmax(250px, .72fr) minmax(380px, 1.28fr);
  gap: 12px;
  padding: 13px;
  border-radius: 18px;
  box-shadow: 0 10px 26px rgba(9,24,54,.045);
}

.asgd-live-activity-copy {
  gap: 6px;
}

.asgd-live-activity-copy h3 {
  font-size: clamp(19px, 1.25vw, 25px);
}

.asgd-live-activity-copy p {
  font-size: 12px;
  line-height: 1.45;
}

.asgd-live-activity-visual {
  padding: 9px;
  border-radius: 15px;
}

.asgd-live-activity-visual-head {
  margin-bottom: 3px;
}

.asgd-live-activity-visual-head strong {
  font-size: 15px;
}

.asgd-live-activity-visual-head small {
  font-size: 10.5px;
}

.asgd-live-activity-card .asgd-sparkline.compact,
.asgd-live-activity-card .asgd-sparkline.compact .asgd-traffic-spectrum-box svg {
  min-height: 78px;
  max-height: 92px;
}

.asgd-live-activity-card .asgd-activity-legend.compact {
  gap: 5px;
}

.asgd-live-activity-card .asgd-activity-legend.compact span {
  padding: 5px 8px;
  font-size: 10.5px;
}

.asgd-live-activity-card .asgd-activity-legend.compact span b {
  font-size: 12px;
}

/* Equal overview geometry */
#windowSummaryCards,
#overviewCards,
#gatewayProof {
  grid-auto-rows: 1fr;
  align-items: stretch;
}

#windowSummaryCards article,
#overviewCards article,
#gatewayProof a {
  height: 100%;
  min-height: 82px;
  align-content: start;
}

#overviewCards article {
  display: grid;
  grid-template-rows: auto auto 1fr;
}

#overviewCards article strong,
#windowSummaryCards article strong {
  line-height: 1.08;
}

.asgd-three-col > .asgd-card {
  height: 100%;
}

/* Compact operations panels */
.asgd-compact-three {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  align-items: stretch;
}

.asgd-compact-three > .asgd-card {
  min-width: 0;
  height: 100%;
}

.asgd-compact-operations-panel .asgd-card {
  padding: 14px;
}

.asgd-compact-operations-panel .asgd-card h3 {
  margin-bottom: 7px;
  font-size: 18px;
}

.asgd-kpi-grid.credits-split,
.asgd-kpi-grid.compact-panel-kpis {
  gap: 8px;
}

.asgd-kpi-grid.credits-split article,
.asgd-kpi-grid.compact-panel-kpis article {
  min-height: 76px;
  padding: 10px 11px;
}

.asgd-kpi-grid.credits-split strong,
.asgd-kpi-grid.compact-panel-kpis strong {
  margin-top: 4px;
  font-size: clamp(18px, 1.35vw, 25px);
}

.asgd-review-snapshot-card .asgd-kpi-grid.compact-inside {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 7px;
}

.asgd-review-snapshot-card .asgd-kpi-grid.compact-inside article {
  min-height: 68px;
  padding: 9px;
  box-shadow: none;
}

.asgd-review-snapshot-card .asgd-kpi-grid.compact-inside strong {
  margin-top: 4px;
  font-size: 18px;
}

.asgd-credit-static-chart svg {
  max-height: 220px;
}

.asgd-bars.compact .asgd-credit-static-chart svg {
  max-height: 190px;
}

.asgd-compact-allocation-card {
  padding-top: 12px !important;
  padding-bottom: 9px !important;
}

.asgd-credit-operations-row .asgd-list,
.asgd-review-operations-row .asgd-list,
.asgd-billing-operations-row .asgd-list {
  max-height: 380px;
}

/* LLM transcript timeline */
.asgd-llm-usage-card {
  overflow: hidden;
}

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

.asgd-llm-summary article {
  min-height: 76px;
  padding: 10px 11px;
}

.asgd-llm-summary article strong {
  margin-top: 4px;
  font-size: clamp(16px, 1.25vw, 23px);
  line-height: 1.08;
}

.asgd-llm-timeline-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin: 13px 0 9px;
  padding: 10px 12px;
  border: 1px solid rgba(186,205,233,.72);
  border-radius: 15px;
  background: linear-gradient(180deg, rgba(248,251,255,.98), rgba(255,255,255,.94));
}

.asgd-llm-timeline-head span,
.asgd-llm-timeline-head strong {
  display: block;
}

.asgd-llm-timeline-head span {
  color: var(--muted);
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.asgd-llm-timeline-head strong {
  margin-top: 3px;
  font-size: 14px;
}

.asgd-llm-timeline-head small {
  color: #49617f;
  font-size: 11px;
  text-align: right;
}

.asgd-llm-transcript-list {
  display: grid;
  gap: 9px;
  max-height: calc(100vh - 340px);
  min-height: 280px;
  overflow-y: auto;
  padding-right: 5px;
  scrollbar-width: thin;
  scrollbar-color: #b9cbe4 #edf3fb;
}

.asgd-llm-transcript-list::-webkit-scrollbar {
  width: 9px;
}

.asgd-llm-transcript-list::-webkit-scrollbar-thumb {
  border-radius: 999px;
  background: #b9cbe4;
}

.asgd-llm-transcript-list::-webkit-scrollbar-track {
  border-radius: 999px;
  background: #edf3fb;
}

.asgd-llm-conversation {
  border: 1px solid rgba(183,202,231,.78);
  border-radius: 17px;
  padding: 12px;
  background:
    radial-gradient(circle at top right, rgba(21,92,255,.065), transparent 24rem),
    linear-gradient(180deg, rgba(255,255,255,.99), rgba(248,251,255,.96));
  box-shadow: 0 8px 20px rgba(9,24,54,.045);
}

.asgd-llm-conversation.charged {
  border-left: 4px solid #155cff;
}

.asgd-llm-conversation.free {
  border-left: 4px solid #0e9f6e;
}

.asgd-llm-conversation.bad {
  border-left: 4px solid #d44848;
}

.asgd-llm-conversation-head {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  align-items: flex-start;
}

.asgd-llm-brand {
  display: grid;
  grid-template-columns: 36px minmax(0, 1fr);
  gap: 10px;
  align-items: start;
  min-width: 0;
}

.asgd-llm-brand-icon {
  width: 36px;
  height: 36px;
  display: grid;
  place-items: center;
  border-radius: 12px;
  color: #0e6f4f;
  background: #e7f8f1;
  border: 1px solid #c9efdf;
}

.asgd-llm-brand span {
  display: block;
  color: #0e6f4f;
  font-size: 9px;
  font-weight: 950;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.asgd-llm-brand strong {
  display: -webkit-box;
  margin-top: 4px;
  overflow: hidden;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  font-size: 14px;
  line-height: 1.35;
  color: #13223b;
}

.asgd-llm-usage-stamp {
  min-width: 150px;
  text-align: right;
}

.asgd-llm-usage-stamp strong,
.asgd-llm-usage-stamp small {
  display: block;
}

.asgd-llm-usage-stamp strong {
  margin-top: 5px;
  font-size: 11px;
}

.asgd-llm-usage-stamp small {
  margin-top: 3px;
  color: var(--muted);
  font-size: 10px;
}

.asgd-llm-state {
  display: inline-flex;
  border: 1px solid #b9d2ff;
  border-radius: 999px;
  padding: 4px 7px;
  background: #eff5ff;
  color: #174db8;
  font-size: 9px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .08em;
}

.asgd-llm-state.free {
  border-color: #a7e2c6;
  background: #effcf5;
  color: #087344;
}

.asgd-llm-state.bad {
  border-color: #f0b8b4;
  background: #fff5f5;
  color: #b42318;
}

.asgd-llm-metrics {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 6px;
  margin: 10px 0;
}

.asgd-llm-metrics span {
  min-width: 0;
  padding: 7px 8px;
  border: 1px solid rgba(201,214,234,.8);
  border-radius: 11px;
  background: rgba(255,255,255,.82);
}

.asgd-llm-metrics b,
.asgd-llm-metrics small {
  display: block;
}

.asgd-llm-metrics b {
  font-size: 13px;
  overflow-wrap: anywhere;
}

.asgd-llm-metrics small {
  margin-top: 2px;
  color: var(--muted);
  font-size: 9px;
  text-transform: uppercase;
  letter-spacing: .08em;
}

.asgd-llm-transcript {
  border-top: 1px solid rgba(201,214,234,.75);
  padding-top: 8px;
}

.asgd-llm-transcript summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  list-style: none;
  cursor: pointer;
  color: #174db8;
  font-size: 11.5px;
  font-weight: 850;
}

.asgd-llm-transcript summary::-webkit-details-marker {
  display: none;
}

.asgd-llm-transcript[open] summary > i:last-child {
  transform: rotate(180deg);
}

.asgd-llm-transcript-body {
  display: grid;
  grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr);
  gap: 9px;
  margin-top: 9px;
}

.asgd-llm-transcript-body section {
  min-width: 0;
  border: 1px solid rgba(196,211,232,.82);
  border-radius: 13px;
  padding: 10px;
  background: rgba(255,255,255,.94);
}

.asgd-llm-transcript-body section > span {
  display: block;
  color: var(--muted);
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .11em;
  text-transform: uppercase;
}

.asgd-llm-transcript-body p {
  max-height: 260px;
  margin: 6px 0 0;
  overflow: auto;
  color: #263650;
  font-size: 12px;
  line-height: 1.55;
}

.asgd-llm-technical {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
  margin-top: 8px;
}

.asgd-llm-technical span {
  border: 1px solid rgba(201,214,234,.8);
  border-radius: 999px;
  padding: 5px 8px;
  background: #f8fbff;
  color: #52627c;
  font-size: 9.5px;
  overflow-wrap: anywhere;
}

.asgd-llm-technical b {
  color: #24344e;
}

/* Small button variant */
.asgd-btn.small {
  min-height: 32px;
  padding: 0 11px;
  font-size: 11px;
}

/* Responsive */
@media (max-width: 1500px) {
  .asgd-insight-strip.v20 {
    grid-template-columns: minmax(320px, 1.25fr) minmax(360px, 1.3fr) repeat(3, minmax(145px, .7fr));
  }

  .asgd-insight-command {
    grid-column: 1 / -1;
    grid-template-columns: minmax(260px, 1fr) auto;
    align-items: center;
  }
}

@media (max-width: 1180px) {
  .asgd-insight-strip.v20 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .asgd-overall-insight,
  .asgd-traffic-card,
  .asgd-insight-command {
    grid-column: 1 / -1;
  }

  .asgd-compact-three {
    grid-template-columns: 1fr;
  }

  .asgd-live-activity-card {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 900px) {
  .asgd-window-bar.workspace-window,
  .asgd-workspace-window-controls {
    align-items: stretch;
  }

  .asgd-window-bar.workspace-window {
    display: grid;
  }

  .asgd-workspace-window-controls {
    display: grid;
  }

  .asgd-window-bar.workspace-window .asgd-window-buttons {
    justify-content: flex-start;
  }

  .asgd-llm-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .asgd-llm-transcript-body {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 620px) {
  .asgd-insight-strip.v20,
  .asgd-llm-summary,
  .asgd-llm-metrics {
    grid-template-columns: 1fr;
  }

  .asgd-overall-insight {
    grid-template-columns: 1fr;
  }

  .asgd-clock.insight-clock {
    width: 100%;
    text-align: left;
  }

  .asgd-insight-command {
    grid-template-columns: 1fr;
  }

  .asgd-llm-conversation-head {
    display: grid;
  }

  .asgd-llm-usage-stamp {
    text-align: left;
  }
}


/* =========================================================
   V9.6 compact premium header, Pulse health, billing cycle,
   and main-level AI activity tabs
========================================================= */

/* Full-width 12-column header prevents the command card from collapsing. */
.asgd-insight-strip.v21 {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: 10px;
  padding: 9px 12px;
  align-items: stretch;
}

.asgd-insight-strip.v21 > * {
  min-width: 0;
}

.asgd-insight-strip.v21 .asgd-overall-insight {
  grid-column: span 2;
}

.asgd-insight-strip.v21 .asgd-traffic-card {
  grid-column: span 3;
}

.asgd-insight-strip.v21 .asgd-number-insight {
  grid-column: span 1;
}

.asgd-insight-strip.v21 .asgd-insight-command {
  grid-column: span 4;
}

.asgd-insight-strip.v21 .asgd-insight-card,
.asgd-insight-strip.v21 .asgd-insight-ad {
  min-height: 138px;
  padding: 13px 14px;
  border-radius: 18px;
}

/* Clock now sits below Overall ASG analytics. */
.asgd-insight-strip.v21 .asgd-overall-insight {
  display: grid;
  grid-template-columns: 1fr;
  gap: 10px;
  align-content: space-between;
}

.asgd-insight-strip.v21 .asgd-clock.insight-clock {
  width: 100%;
  min-width: 0;
  display: grid;
  grid-template-columns: auto 1fr;
  grid-template-areas:
    "label time"
    "date date";
  align-items: center;
  text-align: left;
  padding: 7px 9px;
}

.asgd-insight-strip.v21 .asgd-clock.insight-clock span {
  grid-area: label;
}

.asgd-insight-strip.v21 .asgd-clock.insight-clock strong {
  grid-area: time;
  justify-self: end;
  margin: 0;
  font-size: 18px;
}

.asgd-insight-strip.v21 .asgd-clock.insight-clock small {
  grid-area: date;
  margin-top: 3px;
}

.asgd-insight-strip.v21 .asgd-traffic-card .asgd-sparkline,
.asgd-insight-strip.v21 .asgd-traffic-card .asgd-traffic-spectrum-box svg {
  min-height: 68px;
  max-height: 76px;
}

.asgd-insight-strip.v21 .asgd-number-insight {
  display: grid;
  align-content: center;
}

.asgd-insight-strip.v21 .asgd-number-insight strong {
  font-size: clamp(24px, 1.65vw, 34px);
  line-height: 1;
}

/* Command card: copy, health bar, then colored buttons below. */
.asgd-insight-strip.v21 .asgd-insight-command {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 8px;
  align-content: center;
}

.asgd-insight-strip.v21 .asgd-insight-command-copy b {
  font-size: 15px;
  line-height: 1.25;
}

.asgd-insight-strip.v21 .asgd-insight-command-copy span {
  font-size: 10.5px;
  line-height: 1.4;
}

.asgd-pulse-health {
  display: grid;
  gap: 5px;
  padding: 7px 9px;
  border: 1px solid #cbd8ea;
  border-radius: 12px;
  background: rgba(255,255,255,.76);
}

.asgd-pulse-health-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

.asgd-pulse-health-head span,
.asgd-pulse-health-head strong {
  font-size: 9.5px;
  font-weight: 900;
}

.asgd-pulse-health-head span {
  color: #5b6b84;
  text-transform: uppercase;
  letter-spacing: .08em;
}

.asgd-pulse-track {
  height: 7px;
  overflow: hidden;
  border-radius: 999px;
  background: #e8eef7;
}

.asgd-pulse-track i {
  display: block;
  width: 0;
  height: 100%;
  border-radius: inherit;
  transition: width .35s ease, background .2s ease;
  background: #6b7d98;
}

.asgd-pulse-health small {
  color: #65738a;
  font-size: 9px;
}

.asgd-pulse-health[data-state="good"] {
  border-color: #9fddbf;
  background: #f0fbf5;
}

.asgd-pulse-health[data-state="good"] .asgd-pulse-health-head strong {
  color: #087344;
}

.asgd-pulse-health[data-state="good"] .asgd-pulse-track i {
  background: linear-gradient(90deg, #0d9660, #38c989);
}

.asgd-pulse-health[data-state="warn"] {
  border-color: #f1cf88;
  background: #fff9eb;
}

.asgd-pulse-health[data-state="warn"] .asgd-pulse-health-head strong {
  color: #9a5c00;
}

.asgd-pulse-health[data-state="warn"] .asgd-pulse-track i {
  background: linear-gradient(90deg, #e99a16, #f7c35b);
}

.asgd-pulse-health[data-state="bad"] {
  border-color: #efb0ae;
  background: #fff4f3;
}

.asgd-pulse-health[data-state="bad"] .asgd-pulse-health-head strong {
  color: #b42318;
}

.asgd-pulse-health[data-state="bad"] .asgd-pulse-track i {
  background: linear-gradient(90deg, #d64343, #ef6b67);
}

.asgd-insight-strip.v21 .asgd-insight-actions {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 6px;
}

.asgd-insight-strip.v21 .asgd-insight-actions .asgd-btn {
  width: 100%;
  min-width: 0;
  min-height: 31px;
  padding: 0 7px;
  border-radius: 10px;
  font-size: 9.5px;
  white-space: nowrap;
}

.asgd-insight-actions .action-plans {
  color: #174db8;
  border-color: #b9d2ff;
  background: #eff5ff;
}

.asgd-insight-actions .action-gateway {
  color: #fff;
  border-color: #155cff;
  background: #155cff;
}

.asgd-insight-actions .action-pulse {
  color: #087344;
  border-color: #a7dfc2;
  background: #effcf5;
}

.asgd-insight-actions .action-preview {
  color: #6333bd;
  border-color: #d4c2f5;
  background: #f5f0ff;
}

/* Billing: compact five-column KPI grid and equal 3-card operations row. */
#billingCards.asgd-kpi-grid,
#billingCards {
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 8px;
}

#billingCards article {
  min-height: 70px;
  padding: 9px 10px;
}

#billingCards strong {
  font-size: clamp(17px, 1.15vw, 23px);
}

.asgd-billing-operations-row {
  grid-template-columns: minmax(0, .95fr) minmax(0, .8fr) minmax(0, 1.25fr);
  align-items: stretch;
}

.asgd-topup-card-compact {
  min-width: 0;
  overflow: hidden;
  border: 1px solid rgba(21,92,255,.22);
  background:
    radial-gradient(circle at top right, rgba(21,92,255,.11), transparent 36%),
    linear-gradient(135deg, #ffffff 0%, #f1f6ff 100%);
}

.asgd-topup-card-compact .asgd-topup-form.compact {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 9px;
  align-items: end;
}

.asgd-topup-card-compact .asgd-topup-summary,
.asgd-topup-card-compact .asgd-mini-status,
.asgd-topup-card-compact button {
  grid-column: 1 / -1;
}

.asgd-topup-card-compact input,
.asgd-topup-card-compact select {
  min-height: 40px;
}

.asgd-topup-card-compact .asgd-topup-summary {
  min-height: 58px;
  padding: 9px 10px;
  border-radius: 12px;
  font-size: 11px;
}

.asgd-billing-operations-row > .asgd-card {
  min-height: 300px;
}

/* Activity sub-tabs are now at the main panel level. */
.asgd-activity-main-tabs {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 9px;
  padding: 9px;
  border: 1px solid rgba(177,198,229,.78);
  border-radius: 17px;
  background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(244,248,255,.95));
  box-shadow: 0 9px 24px rgba(9,24,54,.045);
}

.asgd-activity-main-tabs button {
  min-height: 58px;
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  gap: 9px;
  align-items: center;
  padding: 8px 10px;
  text-align: left;
  border: 1px solid #d4dfed;
  border-radius: 13px;
  background: #fff;
  color: #263650;
}

.asgd-activity-main-tabs button i {
  width: 34px;
  height: 34px;
  display: grid;
  place-items: center;
  border-radius: 11px;
  color: #155cff;
  background: #eef4ff;
}

.asgd-activity-main-tabs button span,
.asgd-activity-main-tabs button b,
.asgd-activity-main-tabs button small {
  display: block;
  min-width: 0;
}

.asgd-activity-main-tabs button b {
  font-size: 12px;
}

.asgd-activity-main-tabs button small {
  margin-top: 2px;
  color: #6b7890;
  font-size: 9.5px;
}

.asgd-activity-main-tabs button.active {
  border-color: #0b1c3b;
  background: #0b1426;
  color: #fff;
  box-shadow: 0 9px 22px rgba(11,20,38,.16);
}

.asgd-activity-main-tabs button.active i {
  color: #fff;
  background: #155cff;
}

.asgd-activity-main-tabs button.active small {
  color: #b8c7df;
}

/* Activity analytics is deliberately shorter and visually different. */
.asgd-activity-master {
  padding: 14px;
  background:
    radial-gradient(circle at top right, rgba(21,92,255,.07), transparent 28rem),
    linear-gradient(180deg, #fff, #f8fbff);
}

.asgd-activity-master > .asgd-section-head {
  margin-bottom: 7px;
}

.asgd-activity-spectrum {
  min-height: 132px;
  max-height: 150px;
  overflow: hidden;
  margin-top: 5px;
  border: 1px solid #cbd9ea;
  border-radius: 16px;
  background:
    radial-gradient(circle at 14% 22%, rgba(21,92,255,.08), transparent 16rem),
    linear-gradient(180deg, #edf4ff, #fbfdff);
}

.asgd-activity-spectrum .asgd-traffic-spectrum-box svg {
  min-height: 112px;
  max-height: 126px;
}

.asgd-activity-spectrum polyline {
  stroke-width: 2 !important;
}

.asgd-activity-spectrum .grid line {
  stroke: rgba(91,113,146,.16);
  stroke-width: .65;
}

.asgd-activity-legend {
  gap: 6px;
  margin-top: 7px;
}

.asgd-activity-legend span {
  padding: 5px 8px;
  font-size: 10px;
}

.asgd-activity-legend span b {
  font-size: 12px;
}

@media (max-width: 1500px) {
  .asgd-insight-strip.v21 .asgd-overall-insight { grid-column: span 3; }
  .asgd-insight-strip.v21 .asgd-traffic-card { grid-column: span 4; }
  .asgd-insight-strip.v21 .asgd-number-insight { grid-column: span 1; }
  .asgd-insight-strip.v21 .asgd-insight-command {
    grid-column: 1 / -1;
    grid-template-columns: minmax(220px, .8fr) minmax(260px, 1fr) minmax(420px, 1.4fr);
    align-items: center;
  }
}

@media (max-width: 1180px) {
  .asgd-insight-strip.v21 {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }

  .asgd-insight-strip.v21 .asgd-overall-insight,
  .asgd-insight-strip.v21 .asgd-traffic-card {
    grid-column: span 3;
  }

  .asgd-insight-strip.v21 .asgd-number-insight {
    grid-column: span 2;
  }

  .asgd-insight-strip.v21 .asgd-insight-command {
    grid-column: 1 / -1;
    grid-template-columns: 1fr;
  }

  #billingCards.asgd-kpi-grid,
  #billingCards {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .asgd-billing-operations-row {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 820px) {
  .asgd-insight-strip.v21,
  .asgd-activity-main-tabs {
    grid-template-columns: 1fr 1fr;
  }

  .asgd-insight-strip.v21 > * {
    grid-column: auto !important;
  }

  .asgd-insight-strip.v21 .asgd-insight-command {
    grid-column: 1 / -1 !important;
  }

  .asgd-insight-strip.v21 .asgd-insight-actions {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  #billingCards.asgd-kpi-grid,
  #billingCards {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 560px) {
  .asgd-insight-strip.v21,
  .asgd-activity-main-tabs,
  #billingCards.asgd-kpi-grid,
  #billingCards,
  .asgd-topup-card-compact .asgd-topup-form.compact {
    grid-template-columns: 1fr;
  }

  .asgd-insight-strip.v21 .asgd-insight-actions {
    grid-template-columns: 1fr;
  }
}


/* =========================================================
   V9.7 complete profile editor + clear processing feedback
========================================================= */

.asgd-btn.is-busy {
  opacity: .58 !important;
  filter: saturate(.7);
  pointer-events: none;
  cursor: wait;
  box-shadow: none !important;
}

.asgd-btn.is-busy i {
  opacity: 1;
}

.asgd-profile-action-row .asgd-btn {
  min-width: 190px;
}

.asgd-edit-otp-row {
  display: grid;
  grid-template-columns: minmax(240px, 420px) minmax(260px, 1fr);
  gap: 12px;
  align-items: end;
}

.asgd-inline-process-status {
  min-height: 46px;
  display: flex;
  align-items: center;
  padding: 10px 13px;
  border: 1px solid #cfdae9;
  border-radius: 13px;
  background: #f7faff;
  color: #53627a;
  font-size: 12px;
  font-weight: 750;
}

.asgd-inline-process-status.processing {
  border-color: #b8d0ff;
  background: #eef4ff;
  color: #174db8;
}

.asgd-inline-process-status.ok {
  border-color: #a7dfc2;
  background: #effcf5;
  color: #087344;
}

.asgd-inline-process-status.bad {
  border-color: #efb0ae;
  background: #fff4f3;
  color: #b42318;
}

.asgd-profile-editor-note {
  display: grid;
  grid-template-columns: 22px 1fr;
  gap: 9px;
  align-items: start;
  margin: 12px 0;
  padding: 11px 13px;
  border: 1px solid #c9d9ef;
  border-radius: 14px;
  background: linear-gradient(135deg, #f8fbff, #eef5ff);
  color: #4a5d79;
  line-height: 1.45;
  font-size: 12px;
}

.asgd-profile-editor-note i {
  color: #155cff;
  margin-top: 2px;
}

.asgd-profile-editor-groups {
  display: grid;
  gap: 11px;
  max-height: calc(100vh - 350px);
  overflow: auto;
  padding-right: 4px;
}

.asgd-editor-section {
  border: 1px solid #cfdaea;
  border-radius: 17px;
  background: rgba(255,255,255,.96);
  overflow: clip;
}

.asgd-editor-section[open] {
  box-shadow: 0 10px 28px rgba(9,24,54,.055);
}

.asgd-editor-section summary {
  list-style: none;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  padding: 13px 15px;
  cursor: pointer;
  background: linear-gradient(180deg, #fff, #f6f9fe);
  border-bottom: 1px solid transparent;
}

.asgd-editor-section[open] summary {
  border-bottom-color: #d9e3f0;
}

.asgd-editor-section summary::-webkit-details-marker {
  display: none;
}

.asgd-editor-section summary > span {
  display: flex;
  align-items: center;
  gap: 9px;
  min-width: 0;
}

.asgd-editor-section summary i {
  width: 31px;
  height: 31px;
  display: grid;
  place-items: center;
  border-radius: 10px;
  color: #155cff;
  background: #edf3ff;
}

.asgd-editor-section summary b {
  font-size: 14px;
}

.asgd-editor-section summary small {
  color: #6b7890;
  font-size: 10px;
  text-align: right;
}

.asgd-editor-section-body {
  padding: 14px;
}

.asgd-checkbox-label {
  min-height: 46px;
  display: flex !important;
  flex-direction: row !important;
  align-items: center;
  gap: 10px !important;
  padding: 9px 12px;
  border: 1px solid #b9c5d6;
  border-radius: 14px;
  background: #fff;
}

.asgd-checkbox-label input {
  width: 18px;
  height: 18px;
  flex: 0 0 auto;
}

.asgd-checkbox-label span {
  color: #344054;
  font-size: 12px;
  font-weight: 800;
}

#editLogoUploadStatus.processing {
  color: #174db8;
}

@media (max-width: 820px) {
  .asgd-edit-otp-row {
    grid-template-columns: 1fr;
  }

  .asgd-profile-action-row .asgd-btn {
    min-width: 0;
    width: 100%;
  }

  .asgd-editor-section summary {
    grid-template-columns: 1fr;
  }

  .asgd-editor-section summary small {
    text-align: left;
  }
}
/* =========================================================
   V9.9 COMPACT OVERVIEW + BALANCED 6-COLUMN GRIDS + AGREEMENT
========================================================= */

/* Live activity now lives inside the existing top analytics strip. */
.asgd-insight-strip.v21 .asgd-traffic-card {
  grid-column: span 4;
}

.asgd-insight-strip.v21 .asgd-insight-command {
  grid-column: span 3;
}

.asgd-insight-strip.v21 .asgd-insight-card,
.asgd-insight-strip.v21 .asgd-insight-ad {
  min-height: 158px;
}

.asgd-top-live-activity {
  display: grid;
  grid-template-rows: auto auto minmax(48px, 1fr) auto;
  gap: 4px;
  align-content: stretch;
}

.asgd-top-live-activity .asgd-traffic-head {
  align-items: start;
}

.asgd-top-live-activity .asgd-traffic-head > div {
  min-width: 0;
}

.asgd-top-live-activity .asgd-traffic-head span,
.asgd-top-live-activity .asgd-traffic-head strong {
  display: block;
}

.asgd-top-live-activity .asgd-traffic-head strong {
  margin-top: 2px;
  color: #071632;
  font-size: 13px;
  line-height: 1.15;
  letter-spacing: -0.02em;
}

.asgd-top-live-copy {
  margin: 0;
  color: #64728a;
  font-size: 9.5px;
  line-height: 1.35;
}

.asgd-insight-strip.v21 .asgd-top-live-activity .asgd-sparkline,
.asgd-insight-strip.v21 .asgd-top-live-activity .asgd-traffic-spectrum-box svg {
  min-height: 48px;
  max-height: 56px;
}

.asgd-top-live-activity .asgd-activity-legend.compact.top {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 4px;
  margin: 0;
}

.asgd-top-live-activity .asgd-activity-legend.compact.top span {
  min-width: 0;
  justify-content: center;
  padding: 4px 5px;
  font-size: 8.5px;
  line-height: 1;
  white-space: nowrap;
}

.asgd-top-live-activity .asgd-activity-legend.compact.top span b {
  font-size: 10px;
}

/* Remove any cached copy of the old large standalone live activity block. */
.asgd-live-activity-band {
  display: none !important;
}

/* Twelve executive cards = two balanced rows of six. */
#windowSummaryCards.asgd-summary-grid,
#windowSummaryCards {
  grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
}

/* Eighteen overview cards = three balanced rows of six. */
#overviewCards.asgd-kpi-grid.rich,
#overviewCards {
  grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
}

#windowSummaryCards article,
#overviewCards article {
  min-width: 0;
}

/* Agreement tab status mark. */
.asgd-agreement-nav-state {
  width: 22px;
  height: 22px;
  margin-left: auto;
  display: inline-grid;
  place-items: center;
  border-radius: 999px;
  border: 1px solid #d5dfed;
  background: #f4f7fb;
  color: #6b7890;
  font-size: 12px;
  font-style: normal;
  font-weight: 950;
}

.asgd-agreement-nav-state.complete {
  color: #087344;
  border-color: #9fddbf;
  background: #effbf5;
}

.asgd-agreement-nav-state.pending {
  color: #9a5c00;
  border-color: #efd08f;
  background: #fff8e8;
}

.asgd-agreement-nav-state.failed {
  color: #b42318;
  border-color: #efb0ae;
  background: #fff3f2;
}

.asgd-agreement-nav-state.unavailable,
.asgd-agreement-nav-state.missing {
  color: #58677f;
  border-color: #cbd6e6;
  background: #f5f8fc;
}

/* Agreement workspace. */
.asgd-agreement-card {
  display: grid;
  gap: 14px;
  overflow: hidden;
}

.asgd-agreement-head {
  margin-bottom: 0;
  align-items: center;
}

.asgd-agreement-badge {
  min-width: 170px;
  min-height: 38px;
  padding: 8px 12px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  border: 1px solid #efd08f;
  border-radius: 999px;
  background: #fff8e8;
  color: #9a5c00;
  font-size: 12px;
  font-weight: 900;
  white-space: nowrap;
}

.asgd-agreement-badge.complete {
  border-color: #9fddbf;
  background: #effbf5;
  color: #087344;
}

.asgd-agreement-badge.failed {
  border-color: #efb0ae;
  background: #fff3f2;
  color: #b42318;
}

.asgd-agreement-badge.unavailable,
.asgd-agreement-badge.missing {
  border-color: #cbd6e6;
  background: #f5f8fc;
  color: #58677f;
}

.asgd-agreement-status {
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr);
  gap: 12px;
  align-items: center;
  min-height: 88px;
  padding: 14px;
  border: 1px solid #efd08f;
  border-radius: 17px;
  background: linear-gradient(135deg, #fffdf7, #fff8e8);
}

.asgd-agreement-status > i {
  width: 48px;
  height: 48px;
  display: grid;
  place-items: center;
  border-radius: 15px;
  background: #fff1c8;
  color: #9a5c00;
  font-size: 20px;
}

.asgd-agreement-status strong {
  display: block;
  color: #172033;
  font-size: 17px;
}

.asgd-agreement-status p {
  margin: 4px 0 0;
  color: #66748a;
  font-size: 12.5px;
  line-height: 1.45;
}

.asgd-agreement-status.complete {
  border-color: #9fddbf;
  background: linear-gradient(135deg, #f7fdf9, #effbf5);
}

.asgd-agreement-status.complete > i {
  color: #087344;
  background: #dff7ea;
}

.asgd-agreement-status.failed {
  border-color: #efb0ae;
  background: linear-gradient(135deg, #fff8f7, #fff3f2);
}

.asgd-agreement-status.failed > i {
  color: #b42318;
  background: #ffe3e1;
}

.asgd-agreement-status.unavailable,
.asgd-agreement-status.missing {
  border-color: #cbd6e6;
  background: linear-gradient(135deg, #fbfcfe, #f4f7fb);
}

.asgd-agreement-status.unavailable > i,
.asgd-agreement-status.missing > i {
  color: #58677f;
  background: #e9eef6;
}

.asgd-agreement-summary {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 10px;
}

.asgd-agreement-summary article {
  min-width: 0;
  min-height: 90px;
  padding: 11px;
  border: 1px solid var(--line);
  border-radius: 14px;
  background: #fbfdff;
}

.asgd-agreement-summary span {
  display: block;
  color: var(--muted);
  text-transform: uppercase;
  letter-spacing: .09em;
  font-size: 9px;
  font-weight: 800;
}

.asgd-agreement-summary strong {
  display: block;
  margin-top: 7px;
  color: #071632;
  font-size: 15px;
  line-height: 1.2;
  overflow-wrap: anywhere;
}

.asgd-agreement-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
}

.asgd-agreement-actions .asgd-btn.disabled,
.asgd-agreement-actions .asgd-btn[aria-disabled="true"] {
  opacity: .48;
  pointer-events: none;
  cursor: not-allowed;
}

.asgd-agreement-foot {
  display: flex;
  align-items: center;
  gap: 9px;
  padding: 11px 12px;
  border: 1px dashed #b9c8dc;
  border-radius: 14px;
  background: #f8fbff;
  color: #5e6d85;
  font-size: 11.5px;
  line-height: 1.45;
}

.asgd-agreement-foot i {
  color: #155cff;
}

@media (max-width: 1450px) {
  #windowSummaryCards.asgd-summary-grid,
  #windowSummaryCards,
  #overviewCards.asgd-kpi-grid.rich,
  #overviewCards,
  .asgd-agreement-summary {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 1180px) {
  .asgd-insight-strip.v21 .asgd-top-live-activity {
    grid-column: span 3;
  }
}

@media (max-width: 820px) {
  .asgd-insight-strip.v21 .asgd-overall-insight,
  .asgd-insight-strip.v21 .asgd-top-live-activity {
    grid-column: 1 / -1 !important;
  }

  .asgd-top-live-activity .asgd-activity-legend.compact.top {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  #windowSummaryCards.asgd-summary-grid,
  #windowSummaryCards,
  #overviewCards.asgd-kpi-grid.rich,
  #overviewCards,
  .asgd-agreement-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .asgd-agreement-head {
    display: grid;
  }

  .asgd-agreement-badge {
    width: max-content;
    min-width: 0;
  }
}

@media (max-width: 560px) {
  #windowSummaryCards.asgd-summary-grid,
  #windowSummaryCards,
  #overviewCards.asgd-kpi-grid.rich,
  #overviewCards,
  .asgd-agreement-summary,
  .asgd-top-live-activity .asgd-activity-legend.compact.top {
    grid-template-columns: 1fr !important;
  }

  .asgd-agreement-status {
    grid-template-columns: 1fr;
  }

  .asgd-agreement-actions .asgd-btn {
    width: 100%;
  }
}



/* =========================================================
   v10.2 previous comparison, retention and report export
========================================================= */
.asgd-activity-list-card{display:grid;grid-template-columns:42px minmax(0,1fr);gap:12px;align-items:start;padding:14px;border:1px solid var(--asgd-line);border-radius:16px;background:#fff}
.asgd-activity-list-card+.asgd-activity-list-card{margin-top:9px}
.asgd-activity-list-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:13px;background:#edf4ff;color:var(--asgd-blue)}
.asgd-activity-list-card strong{display:block;color:var(--asgd-ink);margin-bottom:7px}
.asgd-billing-caution{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:16px;border-left:6px solid #7d8ba4;background:linear-gradient(180deg,#fff,#f7f9fd)}
.asgd-billing-caution[data-level="info"]{border-left-color:#2962ff;background:#f5f9ff}
.asgd-billing-caution[data-level="warning"]{border-left-color:#f4a21d;background:#fffaf1}
.asgd-billing-caution[data-level="urgent"]{border-left-color:#ef5b52;background:#fff6f5}
.asgd-billing-caution h3{margin:5px 0 6px}.asgd-billing-caution p{margin:0;color:var(--asgd-soft-ink)}
.asgd-billing-caution-actions{display:flex;flex-wrap:wrap;gap:9px;justify-content:flex-end}
.asgd-retention-report-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(320px,.7fr);gap:16px;margin:16px 0}
.asgd-retention-components{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:14px 0 18px}
.asgd-retention-components article{padding:13px;border:1px solid var(--asgd-line);border-radius:15px;background:#f8fbff}
.asgd-retention-components span{display:block;color:var(--asgd-soft-ink);font-size:11px;font-weight:900;text-transform:uppercase}.asgd-retention-components strong{display:block;margin-top:6px;color:var(--asgd-ink);font-size:24px}
.asgd-report-control-card{display:flex;flex-direction:column;justify-content:center}.asgd-report-actions{display:grid;gap:10px;margin-top:18px}
.asgd-business-report{margin:16px 0;background:#fff}.asgd-report-header{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;padding-bottom:18px;border-bottom:2px solid var(--asgd-line)}
.asgd-report-header span{color:var(--asgd-blue);font-weight:900;text-transform:uppercase;font-size:11px;letter-spacing:.08em}.asgd-report-header h2{margin:7px 0 4px;color:var(--asgd-ink);font-size:34px}.asgd-report-header p{margin:0;color:var(--asgd-soft-ink)}.asgd-report-header>strong{font-size:30px;color:var(--asgd-green)}
.asgd-report-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:18px 0}.asgd-report-metrics article{padding:15px;border:1px solid var(--asgd-line);border-radius:16px;background:#f8fbff}.asgd-report-metrics span,.asgd-report-metrics small{display:block;color:var(--asgd-soft-ink)}.asgd-report-metrics strong{display:block;margin:7px 0 4px;font-size:28px;color:var(--asgd-ink)}
.asgd-report-columns{display:grid;grid-template-columns:1fr 1fr;gap:18px}.asgd-business-report footer{margin-top:20px;padding-top:12px;border-top:1px solid var(--asgd-line);color:var(--asgd-soft-ink);font-size:12px}
@media(max-width:1100px){.asgd-retention-report-grid{grid-template-columns:1fr}.asgd-retention-components,.asgd-report-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.asgd-billing-caution{align-items:flex-start;flex-direction:column}.asgd-retention-components,.asgd-report-metrics,.asgd-report-columns{grid-template-columns:1fr}}
@media print{
  body.asgd-print-business-report *{visibility:hidden!important}
  body.asgd-print-business-report #businessSummaryReport,
  body.asgd-print-business-report #businessSummaryReport *{visibility:visible!important}
  body.asgd-print-business-report #businessSummaryReport{position:absolute;inset:0;width:100%;margin:0;padding:24px;border:0;box-shadow:none;background:#fff}
  body.asgd-print-business-report .aig-nav,body.asgd-print-business-report .asgd-sidebar,body.asgd-print-business-report button{display:none!important}
}


/* =========================================================
   V11 CLEAN COCKPIT — final single-file presentation authority
========================================================= */
body.asg-page{overflow-x:hidden}
.asgd-cockpit-v11{width:100%;display:grid;grid-template-columns:minmax(300px,.78fr) minmax(520px,1.38fr) minmax(500px,1.05fr);border:1px solid #cfdbec;border-radius:0 0 26px 26px;overflow:hidden;background:#fff;box-shadow:0 14px 38px rgba(9,24,54,.07)}
.asgd-cockpit-v11>*{min-width:0;padding:16px 18px;border-right:1px solid #d9e3f0}
.asgd-cockpit-v11>*:last-child{border-right:0}
.asgd-cockpit-summary-v11{display:grid;gap:12px;background:linear-gradient(180deg,#f6f9ff,#edf4ff)}
.asgd-cockpit-title-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:start}
.asgd-overall-insight-copy>span,.asgd-traffic-head span,.asgd-cockpit-metrics-v11 article>span{display:block;color:#5f7190;font-size:10px;font-weight:950;letter-spacing:.12em;text-transform:uppercase}
.asgd-overall-insight-copy>strong{display:block;margin:5px 0 5px;color:#0a1730;font-size:clamp(24px,1.65vw,36px);line-height:1;letter-spacing:-.055em}
.asgd-overall-insight-copy>small{display:block;color:#637593;line-height:1.4}
.asgd-clock.insight-clock{min-width:150px;padding:8px 10px;border-radius:14px;background:rgba(255,255,255,.8);box-shadow:none}
.asgd-clock.insight-clock strong{font-size:18px}
.asgd-pulse-health{margin:0;padding:10px 12px;border:1px solid #bde8d1;border-radius:14px;background:#f3fff8}
.asgd-pulse-health-head{display:flex;justify-content:space-between;gap:10px;align-items:center}.asgd-pulse-health-head span{font-size:10px;font-weight:950;text-transform:uppercase;letter-spacing:.09em;color:#486a5b}.asgd-pulse-health-head strong{font-size:11px;color:#087344}.asgd-pulse-track{height:7px;margin:7px 0;background:#dcefe4;border-radius:999px;overflow:hidden}.asgd-pulse-track i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#0c8f54,#36c98b)}.asgd-pulse-health small{display:block;color:#60776d;font-size:10px}
.asgd-insight-actions.compact-v11{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.asgd-insight-actions.compact-v11 .asgd-btn{min-height:34px;padding:0 9px;font-size:11px}
.asgd-cockpit-graph-v11{background:linear-gradient(180deg,#e8f5ff,#f7fbff)}
.asgd-traffic-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:8px}.asgd-traffic-head b{display:block;margin-top:4px;color:#0e203e;font-size:15px}.asgd-traffic-head small{color:#627592;font-size:11px;white-space:nowrap}
#globalTrafficGraph{height:190px;border:1px solid #bcd2eb;border-radius:18px;background:linear-gradient(180deg,rgba(255,255,255,.58),rgba(239,247,255,.55));overflow:hidden}#globalTrafficGraph svg{width:100%;height:100%;display:block}.v11-grid line{stroke:#d6e2f0;stroke-width:1}.v11-area.reads{fill:rgba(41,98,255,.09)}.v11-line{fill:none;stroke-width:4;stroke-linecap:round;stroke-linejoin:round}.v11-line.reads{stroke:#2962ff}.v11-line.questions{stroke:#16b981}.v11-line.requests{stroke:#f4a21d}.v11-line.visitors{stroke:#9455ff}
.asgd-top-graph-legend{display:flex;flex-wrap:wrap;gap:8px;margin-top:9px}.asgd-top-graph-legend span{display:inline-flex;align-items:center;gap:6px;padding:6px 9px;border:1px solid #d7e2ef;border-radius:999px;background:#fff;color:#63718b;font-size:10px;font-weight:850}.asgd-top-graph-legend i{width:8px;height:8px;border-radius:50%}.asgd-top-graph-legend .reads i{background:#2962ff}.asgd-top-graph-legend .questions i{background:#16b981}.asgd-top-graph-legend .requests i{background:#f4a21d}.asgd-top-graph-legend .visitors i{background:#9455ff}.asgd-top-graph-legend b{color:#0d1b34}
.asgd-cockpit-metrics-v11{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:0!important;background:#fff}
.asgd-cockpit-metrics-v11 article{min-height:128px;padding:16px;border-right:1px solid #dce5f0;border-bottom:1px solid #dce5f0}.asgd-cockpit-metrics-v11 article:nth-child(3n){border-right:0}.asgd-cockpit-metrics-v11 article:nth-last-child(-n+3){border-bottom:0}.asgd-cockpit-metrics-v11 article strong{display:block;margin:8px 0 8px;color:#0a1730;font-size:30px;line-height:1;letter-spacing:-.04em}.asgd-cockpit-metrics-v11 article small{display:block;margin-top:6px;color:#73819a;font-size:10.5px;line-height:1.35}.asgd-cockpit-metrics-v11 .asgd-metric-meta{font-size:10px;line-height:1.35}
.asgd-main{width:100%;max-width:none;padding:12px 14px 0}.asgd-dashboard{grid-template-columns:280px minmax(0,1fr);gap:12px}.asgd-sidebar{top:86px}.asgd-workspace{min-width:0}.asgd-panel{max-height:none;overflow:visible}.asgd-cockpit-hero{min-height:210px}.asgd-visual-grid,#overviewGraphs{width:100%}
@media(max-width:1700px){.asgd-cockpit-v11{grid-template-columns:minmax(300px,.85fr) minmax(480px,1.25fr)}.asgd-cockpit-metrics-v11{grid-column:1/-1;grid-template-columns:repeat(6,minmax(0,1fr))}.asgd-cockpit-metrics-v11 article{border-bottom:0}.asgd-cockpit-metrics-v11 article:nth-child(3n){border-right:1px solid #dce5f0}.asgd-cockpit-metrics-v11 article:last-child{border-right:0}}
@media(max-width:1250px){.asgd-cockpit-v11{grid-template-columns:1fr}.asgd-cockpit-v11>*{border-right:0;border-bottom:1px solid #d9e3f0}.asgd-cockpit-metrics-v11{grid-template-columns:repeat(3,minmax(0,1fr))}.asgd-dashboard{grid-template-columns:1fr}.asgd-sidebar{position:relative;top:auto}}
@media(max-width:760px){.asgd-cockpit-title-row{grid-template-columns:1fr}.asgd-clock.insight-clock{text-align:left}.asgd-cockpit-metrics-v11{grid-template-columns:repeat(2,minmax(0,1fr))}.asgd-cockpit-metrics-v11 article:nth-child(3n){border-right:1px solid #dce5f0}.asgd-cockpit-metrics-v11 article:nth-child(2n){border-right:0}.asgd-insight-actions.compact-v11{grid-template-columns:repeat(2,minmax(0,1fr))}.asgd-main{padding:8px}}


/* =========================================================
   V12 MEMBERSHIP RECOVERY MODE
   Authentication stays open; Billing controls capabilities.
========================================================= */
.asgd-recovery-banner {
  display: grid;
  grid-template-columns: auto minmax(0,1fr) auto;
  align-items: center;
  gap: 16px;
  padding: 18px;
  border: 1px solid #f2c27b;
  border-radius: 20px;
  background:
    radial-gradient(circle at 100% 0%, rgba(255,193,7,.18), transparent 22rem),
    linear-gradient(135deg, #fff9ea, #fffdf7);
  box-shadow: 0 14px 34px rgba(109,72,13,.09);
}
.asgd-recovery-banner[hidden] { display: none !important; }
.asgd-recovery-banner-icon {
  width: 52px;
  height: 52px;
  display: grid;
  place-items: center;
  border-radius: 17px;
  background: #fff0c7;
  color: #a86100;
  font-size: 21px;
}
.asgd-recovery-banner-copy { min-width: 0; }
.asgd-recovery-banner-copy span {
  display: block;
  color: #9a5a00;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .13em;
  text-transform: uppercase;
}
.asgd-recovery-banner-copy strong {
  display: block;
  margin-top: 4px;
  color: #422600;
  font-size: clamp(20px,1.45vw,30px);
  letter-spacing: -.035em;
}
.asgd-recovery-banner-copy p {
  margin: 5px 0 0;
  color: #76552a;
  line-height: 1.5;
}
.asgd-recovery-banner-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
}
body.asg-recovery-mode [data-requires-capability].is-membership-locked,
body.asg-recovery-mode .asgd-member-action.is-membership-locked {
  opacity: .48;
  filter: grayscale(.35);
  cursor: not-allowed !important;
}
body.asg-recovery-mode .asgd-panel[data-section="profileEditor"],
body.asg-recovery-mode .asgd-panel[data-section="requests"],
body.asg-recovery-mode .asgd-panel[data-section="install"] {
  position: relative;
}
body.asg-recovery-mode .asgd-panel[data-section="profileEditor"]::before,
body.asg-recovery-mode .asgd-panel[data-section="requests"]::before,
body.asg-recovery-mode .asgd-panel[data-section="install"]::before {
  content: "Membership recovery mode · editing and live commercial actions are paused";
  display: block;
  margin-bottom: 10px;
  padding: 11px 13px;
  border: 1px solid #f2c27b;
  border-radius: 14px;
  background: #fff9ea;
  color: #7b4b08;
  font-weight: 800;
}
@media (max-width: 1000px) {
  .asgd-recovery-banner { grid-template-columns: auto 1fr; }
  .asgd-recovery-banner-actions { grid-column: 1 / -1; justify-content: flex-start; }
}
@media (max-width: 640px) {
  .asgd-recovery-banner { grid-template-columns: 1fr; }
  .asgd-recovery-banner-icon { width: 44px; height: 44px; }
}


/* =========================================================
   V12 — Exact SaaS analytics + client protocol operations
========================================================= */
.asgd-saas-chart-wrap { width:100%; min-height:220px; }
.asgd-saas-chart-wrap svg { display:block; width:100%; height:auto; overflow:visible; }
.v11-grid line { stroke:rgba(99,112,138,.18); stroke-width:1; }
.v11-grid text, .v11-x-axis text { fill:#7a879b; font-size:11px; font-weight:700; }
.v11-line { fill:none; stroke-width:3; stroke-linecap:round; stroke-linejoin:round; }
.v11-point { stroke:#fff; stroke-width:2; }
.v11-line.reads, .v11-point.reads { stroke:#155cff; fill:#155cff; }
.v11-line.questions, .v11-point.questions { stroke:#6d28d9; fill:#6d28d9; }
.v11-line.requests, .v11-point.requests { stroke:#d97706; fill:#d97706; }
.v11-line.visitors, .v11-point.visitors { stroke:#0c8f54; fill:#0c8f54; }
.asgd-chart-empty { min-height:220px; display:grid; place-items:center; align-content:center; gap:8px; text-align:center; border:1px dashed var(--line-strong); background:#fbfdff; color:var(--muted); }
.asgd-chart-empty i { font-size:28px; color:var(--blue); }
.asgd-chart-empty strong { color:var(--ink); font-size:16px; }
.asgd-chart-empty span { max-width:620px; font-size:12px; line-height:1.5; }
.asgd-top-graph-legend { display:flex; flex-wrap:wrap; gap:8px 16px; margin-top:10px; }
.asgd-top-graph-legend span { display:inline-flex; align-items:center; gap:7px; color:var(--muted); font-size:12px; }
.asgd-top-graph-legend span i { width:9px; height:9px; border-radius:50%; }
.asgd-top-graph-legend span.reads i { background:#155cff; }
.asgd-top-graph-legend span.questions i { background:#6d28d9; }
.asgd-top-graph-legend span.requests i { background:#d97706; }
.asgd-top-graph-legend span.visitors i { background:#0c8f54; }
.asgd-top-graph-legend b { color:var(--ink); }

.asgd-protocol-shell { display:grid; gap:16px; }
.asgd-protocol-status-grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); border:1px solid var(--line); background:#fff; }
.asgd-protocol-status-grid article { padding:16px; border-right:1px solid var(--line); min-height:112px; }
.asgd-protocol-status-grid article:last-child { border-right:0; }
.asgd-protocol-status-grid span { display:block; color:var(--muted); text-transform:uppercase; letter-spacing:.09em; font-size:10px; font-weight:850; }
.asgd-protocol-status-grid strong { display:block; margin-top:9px; font-size:21px; letter-spacing:-.035em; }
.asgd-protocol-status-grid small { display:block; margin-top:6px; color:var(--muted); }
.asgd-protocol-boundary { border:1px solid var(--line); background:#fbfdff; padding:16px; }
.asgd-protocol-boundary h3 { margin:0 0 12px; }
.asgd-protocol-endpoint-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border:1px solid var(--line); }
.asgd-protocol-endpoint { min-width:0; padding:14px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); }
.asgd-protocol-endpoint span { display:block; color:var(--muted); text-transform:uppercase; letter-spacing:.08em; font-size:10px; font-weight:850; }
.asgd-protocol-endpoint code { display:block; margin:8px 0 12px; padding:9px; background:#f5f8fc; border:1px solid var(--line); overflow:auto; white-space:nowrap; font-size:11px; }
.asgd-protocol-endpoint > div { display:flex; gap:8px; }
.asgd-protocol-endpoint .asgd-btn { min-height:34px; padding:0 11px; font-size:12px; }
.asgd-protocol-raw { min-height:240px; max-height:520px; }
@media (max-width:1450px) {
  .asgd-protocol-status-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .asgd-protocol-endpoint-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:820px) {
  .asgd-protocol-status-grid, .asgd-protocol-endpoint-grid { grid-template-columns:1fr; }
  .asgd-protocol-status-grid article, .asgd-protocol-endpoint { border-right:0; }
}


/* =========================================================
   V12 COMPLETE ASG WORKSPACE
   Password login, role UI, team, branding, domains,
   website health, support mailbox, global processing
========================================================= */

.asgd-auth-choice {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
  padding: 5px;
  border: 1px solid var(--line);
  border-radius: 16px;
  background: #f6f9fe;
}
.asgd-auth-choice button {
  min-height: 40px;
  border: 0;
  border-radius: 12px;
  background: transparent;
  color: var(--muted);
  font-weight: 900;
}
.asgd-auth-choice button.active {
  background: #fff;
  color: var(--blue);
  box-shadow: 0 5px 14px rgba(9,24,54,.08);
}
.asgd-login-method { display: grid; gap: 12px; }
.asgd-legacy-note,
.asgd-invitation-box {
  padding: 13px 14px;
  border: 1px solid #cad8eb;
  border-radius: 15px;
  background: #f6f9ff;
  color: #42526e;
  line-height: 1.5;
  font-size: 13px;
}
.asgd-invitation-box { display: grid; gap: 11px; border-color: #9fd9bc; background: #f0fcf5; }
.asgd-invitation-box strong { font-size: 17px; }
.asgd-invitation-box p { margin: 0; color: var(--muted); }
.asgd-login-card select,
.asgd-card select,
.asgd-workspace-switcher select {
  width: 100%;
  min-height: 44px;
  padding: 0 12px;
  border: 1px solid #b9c5d6;
  border-radius: 14px;
  background: #fff;
  color: var(--ink);
  font-weight: 750;
}
.asgd-side-brand { grid-template-columns: 48px minmax(0,1fr); }
.asgd-side-brand > div { min-width: 0; }
.asgd-role-pill {
  display: inline-flex;
  width: max-content;
  align-items: center;
  margin-top: 6px;
  padding: 4px 8px;
  border: 1px solid #c8d8ef;
  border-radius: 999px;
  background: #f3f7ff;
  color: #365c96;
  font-size: 10px;
  font-weight: 950;
  text-transform: uppercase;
  letter-spacing: .08em;
}
.asgd-workspace-switcher {
  grid-column: 1 / -1;
  margin-top: 8px;
}
.asgd-workspace-switcher span {
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: .09em;
  color: var(--muted);
}
.asgd-side-tabs button[hidden] { display: none !important; }
.asgd-side-tabs button { min-height: 43px; height: auto; padding-top: 9px; padding-bottom: 9px; }

.asgd-workspace-loader {
  position: fixed;
  inset: 0;
  z-index: 1000000;
  display: grid;
  place-content: center;
  justify-items: center;
  gap: 12px;
  padding: 24px;
  background: rgba(7,22,50,.74);
  color: #fff;
  backdrop-filter: blur(5px);
}
.asgd-workspace-loader[hidden] { display: none !important; }
.asgd-workspace-loader strong { font-size: 20px; }
.asgd-workspace-loader span { color: #d9e5f8; text-align: center; }
.asgd-loader-ring {
  width: 62px;
  height: 62px;
  border: 2px solid rgba(255,255,255,.22);
  border-top-color: #fff;
  border-radius: 50%;
  animation: asgdThinSpin .72s linear infinite;
}
@keyframes asgdThinSpin { to { transform: rotate(360deg); } }
body.asgd-busy { overflow: hidden; }
.asgd-btn.is-busy,
.asgd-btn.is-processing {
  pointer-events: none;
  cursor: wait;
  opacity: .78;
}
.asgd-btn.is-busy i.fa-spinner { animation: asgdThinSpin .72s linear infinite; }

.asgd-modal {
  position: fixed;
  inset: 0;
  z-index: 1000001;
  display: grid;
  place-items: center;
  padding: 18px;
}
.asgd-modal[hidden] { display: none !important; }
.asgd-modal-backdrop {
  position: absolute;
  inset: 0;
  border: 0;
  background: rgba(7,22,50,.74);
  backdrop-filter: blur(5px);
}
.asgd-modal-card {
  position: relative;
  z-index: 1;
  width: min(520px, 100%);
  display: grid;
  gap: 14px;
  padding: 28px;
  border: 1px solid var(--line);
  border-radius: 22px;
  background: #fff;
  box-shadow: 0 28px 80px rgba(3,12,30,.3);
}
.asgd-modal-card h2 { margin: 0; font-size: 30px; letter-spacing: -.04em; }
.asgd-modal-card p { margin: 0; color: var(--muted); line-height: 1.55; }
.asgd-modal-close {
  position: absolute;
  top: 12px;
  right: 12px;
  width: 38px;
  height: 38px;
  border: 1px solid var(--line);
  border-radius: 50%;
  background: #fff;
}

.asgd-premium-command { display: grid; gap: 16px; }
.asgd-premium-summary {
  background:
    radial-gradient(circle at top right, rgba(41,98,255,.13), transparent 32rem),
    linear-gradient(180deg,#fff,#f7faff);
}
.asgd-premium-kpi-grid {
  display: grid;
  grid-template-columns: repeat(6,minmax(0,1fr));
  gap: 10px;
}
.asgd-premium-kpi-grid article {
  min-width: 0;
  padding: 15px;
  border: 1px solid var(--line);
  border-radius: 17px;
  background: rgba(255,255,255,.88);
}
.asgd-premium-kpi-grid i {
  width: 34px; height: 34px; display: grid; place-items: center;
  border-radius: 12px; background: #edf3ff; color: var(--blue); margin-bottom: 10px;
}
.asgd-premium-kpi-grid span,
.asgd-premium-kpi-grid small { display: block; color: var(--muted); }
.asgd-premium-kpi-grid span { font-size: 10px; font-weight: 950; text-transform: uppercase; letter-spacing: .08em; }
.asgd-premium-kpi-grid strong { display: block; margin: 7px 0 5px; font-size: 25px; overflow-wrap: anywhere; }
.asgd-premium-grid { display: grid; grid-template-columns: 1.1fr .9fr; gap: 16px; }

.asgd-table-list { display: grid; gap: 9px; }
.asgd-table-row {
  width: 100%;
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  gap: 16px;
  align-items: center;
  padding: 14px;
  border: 1px solid var(--line);
  border-radius: 16px;
  background: #fff;
  color: var(--ink);
  text-align: left;
}
button.asgd-table-row:hover { border-color: #a9bee0; box-shadow: 0 8px 22px rgba(9,24,54,.06); }
.asgd-table-main { min-width: 0; }
.asgd-table-main strong,
.asgd-table-main span,
.asgd-table-main small { display: block; overflow-wrap: anywhere; }
.asgd-table-main span { margin-top: 4px; color: #42526e; }
.asgd-table-main small { margin-top: 5px; color: var(--muted); }
.asgd-table-actions { display: flex; align-items: center; justify-content: flex-end; gap: 8px; flex-wrap: wrap; }
.asgd-table-actions select { min-width: 140px; min-height: 38px; }
.asgd-btn.small { min-height: 36px; padding: 0 12px; font-size: 12px; }
.asgd-output.compact { min-height: 54px; max-height: 150px; }
.asgd-empty-state {
  min-height: 220px;
  display: grid;
  place-content: center;
  justify-items: center;
  gap: 9px;
  text-align: center;
  color: var(--muted);
}
.asgd-empty-state.compact { min-height: 90px; }
.asgd-empty-state i { font-size: 28px; color: #8aa8d6; }
.asgd-empty-state strong { color: var(--ink); }

.asgd-branding-intro,
.asgd-health-hero,
.asgd-support-head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 24px;
}
.asgd-branding-intro h3,
.asgd-health-hero h3,
.asgd-support-head h3 { margin: 8px 0; font-size: 28px; }
.asgd-branding-intro p,
.asgd-health-hero p,
.asgd-support-head p { margin: 0; color: var(--muted); line-height: 1.55; }
.asgd-stepup-status {
  min-width: 250px;
  display: grid;
  gap: 7px;
  padding: 15px;
  border: 1px solid #c9d8eb;
  border-radius: 17px;
  background: #f7faff;
}
.asgd-stepup-status span { color: var(--muted); font-size: 10px; font-weight: 950; text-transform: uppercase; letter-spacing: .08em; }
.asgd-branding-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.asgd-branding-card { display: grid; gap: 12px; }
.asgd-branding-preview {
  overflow: hidden;
  display: grid;
  place-items: center;
  border: 1px dashed #9db2d0;
  border-radius: 18px;
  background:
    linear-gradient(45deg,#eef3f9 25%,transparent 25%),
    linear-gradient(-45deg,#eef3f9 25%,transparent 25%),
    linear-gradient(45deg,transparent 75%,#eef3f9 75%),
    linear-gradient(-45deg,transparent 75%,#eef3f9 75%),
    #fff;
  background-size: 18px 18px;
  background-position: 0 0,0 9px,9px -9px,-9px 0;
}
.asgd-branding-preview.logo { min-height: 230px; }
.asgd-branding-preview.banner { min-height: 230px; }
.asgd-branding-preview img { display: block; max-width: 100%; max-height: 300px; object-fit: contain; }
.asgd-branding-preview.banner img { width: 100%; max-height: 230px; object-fit: cover; }
.asgd-branding-preview span { color: var(--muted); font-weight: 900; }
.asgd-file-field { padding: 12px; border: 1px dashed #aebed5; border-radius: 15px; background: #f9fbff; }
.asgd-file-field input { margin-top: 8px; height: auto; padding: 9px; }
.asgd-owner-website-card { border-left: 5px solid var(--blue); }
.asgd-check-row { display: flex; grid-template-columns: none; align-items: center; gap: 9px; }
.asgd-check-row input { width: 18px; height: 18px; min-height: 0; flex: 0 0 auto; }
.asgd-status-badge.info { border-color: #c7d8f1; background: #f3f7ff; color: #365c96; }
.asgd-status-badge.warn { border-color: #f1d49c; background: #fff8e9; color: #8b5a00; }
.asgd-status-badge.ok { border-color: #a7dfc2; background: #effdf5; color: #087344; }

.asgd-health-hero {
  background:
    radial-gradient(circle at right,rgba(25,185,122,.16),transparent 24rem),
    linear-gradient(180deg,#fff,#f5fff9);
}
.asgd-health-score {
  width: 100px; height: 100px; flex: 0 0 auto;
  display: grid; place-items: center;
  border: 8px solid #bcebd6; border-top-color: var(--green);
  border-radius: 50%; color: #087344; font-size: 32px; font-weight: 950;
}
.asgd-audit-report { overflow: hidden; }
.asgd-audit-report-head {
  display: flex; justify-content: space-between; align-items: center; gap: 20px;
  padding-bottom: 16px; margin-bottom: 16px; border-bottom: 1px solid var(--line);
}
.asgd-audit-report-head span { color: var(--muted); text-transform: uppercase; font-size: 10px; font-weight: 950; letter-spacing: .09em; }
.asgd-audit-report-head h3 { margin: 7px 0 4px; }
.asgd-audit-report-head p { margin: 0; color: var(--muted); overflow-wrap: anywhere; }
.asgd-audit-report-head > strong {
  min-width: 72px; height: 72px; display: grid; place-items: center;
  border-radius: 20px; background: #0b1426; color: #fff; font-size: 28px;
}
.asgd-score-bars { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 10px; margin-bottom: 18px; }
.asgd-score-bars > div { padding: 12px; border: 1px solid var(--line); border-radius: 15px; background: #f9fbff; }
.asgd-score-bars span { text-transform: capitalize; font-size: 12px; font-weight: 900; }
.asgd-score-bars b { float: right; }
.asgd-score-bars i { display: block; height: 8px; margin-top: 10px; border-radius: 999px; background: #e4ebf5; overflow: hidden; }
.asgd-score-bars em { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg,#ef5b52,#f4a21d,#19b97a); }
.asgd-audit-report-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.asgd-audit-report-grid > article { min-width: 0; padding: 15px; border: 1px solid var(--line); border-radius: 17px; background: #fbfdff; }
.asgd-audit-report-grid h4 { margin: 0 0 10px; font-size: 16px; }
.asgd-raw-details { margin-top: 16px; }
.asgd-raw-details summary { cursor: pointer; font-weight: 900; }
.asgd-raw-details .asgd-raw { margin-top: 10px; min-height: 220px; max-height: 600px; }
.asgd-audit-history-row { cursor: pointer; }
.asgd-audit-score {
  width: 48px; height: 48px; display: grid; place-items: center;
  border-radius: 15px; background: #edf4ff; color: var(--blue); font-weight: 950;
}

.asgd-support-layout {
  display: grid;
  grid-template-columns: 340px minmax(0,1fr);
  gap: 16px;
  min-height: 620px;
}
.asgd-mailbox-nav { padding: 12px; align-content: start; }
.asgd-mailbox-nav > button {
  width: 100%; min-height: 42px; display: flex; align-items: center; gap: 9px;
  padding: 0 11px; border: 1px solid transparent; border-radius: 13px;
  background: transparent; color: #344054; font-weight: 900; text-align: left;
}
.asgd-mailbox-nav > button.active { background: #0b1426; color: #fff; }
.asgd-mail-list { display: grid; gap: 7px; margin-top: 12px; max-height: 500px; overflow: auto; }
.asgd-mail-item {
  display: block; width: 100%; padding: 12px;
  border: 1px solid var(--line); border-radius: 14px; background: #fff; text-align: left; color: var(--ink);
}
.asgd-mail-item.active { border-color: var(--blue); background: #f2f6ff; }
.asgd-mail-item strong,
.asgd-mail-item span,
.asgd-mail-item small,
.asgd-mail-item time { display: block; overflow-wrap: anywhere; }
.asgd-mail-item span { margin-top: 4px; color: #44536d; }
.asgd-mail-item small { margin-top: 5px; color: var(--muted); line-height: 1.35; }
.asgd-mail-item time { margin-top: 7px; color: #8190a8; font-size: 10px; }
.asgd-message-view { min-height: 620px; }
.asgd-message-meta { display: grid; gap: 5px; padding-bottom: 15px; border-bottom: 1px solid var(--line); }
.asgd-message-meta > span { color: var(--blue); text-transform: uppercase; letter-spacing: .09em; font-size: 10px; font-weight: 950; }
.asgd-message-meta > strong { font-size: 25px; }
.asgd-message-meta > small { color: var(--muted); }
.asgd-message-body {
  min-height: 220px; padding: 20px 0; white-space: pre-wrap; overflow-wrap: anywhere;
  line-height: 1.65; color: #29364d;
}
#supportReplyBox { display: grid; gap: 10px; padding-top: 15px; border-top: 1px solid var(--line); }
.asgd-compose-form { display: grid; gap: 13px; }
.asgd-compose-form[hidden] { display: none !important; }

@media (max-width: 1450px) {
  .asgd-premium-kpi-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .asgd-premium-grid,
  .asgd-branding-grid,
  .asgd-support-layout { grid-template-columns: 1fr; }
  .asgd-mail-list { max-height: 360px; }
}
@media (max-width: 820px) {
  .asgd-auth-choice,
  .asgd-premium-kpi-grid,
  .asgd-score-bars,
  .asgd-audit-report-grid { grid-template-columns: 1fr; }
  .asgd-branding-intro,
  .asgd-health-hero,
  .asgd-support-head,
  .asgd-audit-report-head { align-items: stretch; display: grid; }
  .asgd-table-row { grid-template-columns: 1fr; }
  .asgd-table-actions { justify-content: flex-start; }
  .asgd-stepup-status { min-width: 0; }
}

@media print {
  body.asgd-print-audit-report * { visibility: hidden !important; }
  body.asgd-print-audit-report #websiteAuditReport,
  body.asgd-print-audit-report #websiteAuditReport * { visibility: visible !important; }
  body.asgd-print-audit-report #websiteAuditReport {
    position: absolute; inset: 0; width: 100%; border: 0; box-shadow: none; overflow: visible;
  }
  body.asgd-print-audit-report .asgd-raw-details { display: none !important; }
}


/* =========================================================
   V13 — EMAIL-ONLY AUTH, MULTI-COMPANY PICKER, PASSWORD RESET
========================================================= */
.asgd-email-only-login {
  display: grid;
  gap: 13px;
}

.asgd-resolved-email {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  border: 1px solid #cfe0ff;
  border-radius: 16px;
  padding: 12px 14px;
  background: linear-gradient(180deg, #f7faff, #eef5ff);
}

.asgd-resolved-email span {
  min-width: 0;
}

.asgd-resolved-email small,
.asgd-resolved-email strong {
  display: block;
}

.asgd-resolved-email small {
  color: var(--muted);
  text-transform: uppercase;
  letter-spacing: .1em;
  font-size: 10px;
  font-weight: 950;
}

.asgd-resolved-email strong {
  margin-top: 4px;
  overflow-wrap: anywhere;
}

.asgd-account-stage,
.asgd-password-reset-box {
  display: grid;
  gap: 12px;
  border: 1px solid var(--line);
  border-radius: 18px;
  background: linear-gradient(180deg, #ffffff, #f7faff);
  padding: 15px;
}

.asgd-account-stage > strong,
.asgd-password-reset-box > strong {
  font-size: 18px;
  letter-spacing: -.03em;
}

.asgd-account-stage > p,
.asgd-password-reset-box > p {
  margin: 0;
  color: var(--muted);
  line-height: 1.5;
  font-size: 13px;
}

.asgd-login-account-cards {
  display: grid;
  gap: 9px;
}

.asgd-login-account-card {
  width: 100%;
  min-height: 72px;
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr) 20px;
  gap: 12px;
  align-items: center;
  border: 1px solid var(--line);
  border-radius: 16px;
  background: #ffffff;
  color: var(--ink);
  padding: 11px 12px;
  text-align: left;
}

.asgd-login-account-card:hover,
.asgd-login-account-card.selected {
  border-color: #8fb1ef;
  background: #eef5ff;
  box-shadow: 0 8px 22px rgba(9, 24, 54, .07);
}

.asgd-login-account-icon {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  border-radius: 14px;
  background: #071632;
  color: #ffffff;
}

.asgd-login-account-card strong,
.asgd-login-account-card small {
  display: block;
}

.asgd-login-account-card strong {
  font-size: 14px;
}

.asgd-login-account-card small {
  margin-top: 4px;
  color: var(--muted);
  line-height: 1.35;
}

.asgd-password-reset-box {
  border-color: #b7caeb;
  background:
    radial-gradient(circle at top right, rgba(21, 92, 255, .11), transparent 18rem),
    linear-gradient(180deg, #ffffff, #f5f9ff);
}

.asgd-password-reset-box .asgd-btn {
  margin-top: 3px;
}

#forgotPasswordBox summary {
  color: var(--blue);
}

#loginBtn:disabled {
  opacity: .62;
  cursor: not-allowed;
}

@media (max-width: 620px) {
  .asgd-resolved-email {
    align-items: flex-start;
    display: grid;
  }

  .asgd-login-account-card {
    grid-template-columns: 38px minmax(0, 1fr) 16px;
  }
}


/* v13.1 email OTP resend controls */
.asgd-otp-resend-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:9px;padding:10px 12px;border:1px solid var(--line);border-radius:14px;background:#f7faff}
.asgd-otp-resend-row[hidden]{display:none!important}
.asgd-otp-resend-row small{color:var(--muted);line-height:1.4;text-align:right}
.asgd-otp-resend-row .asgd-link-action:disabled{opacity:.55;cursor:not-allowed;text-decoration:none}
@media(max-width:820px){.asgd-otp-resend-row{align-items:flex-start;flex-direction:column}.asgd-otp-resend-row small{text-align:left}}


/* =========================================================
   v13.3 uniform workspace layout, thin scrollbars and sidebar resize
========================================================= */
.asgd-dashboard {
  --asgd-sidebar-width: 280px;
  grid-template-columns: var(--asgd-sidebar-width) 10px minmax(0, 1fr) !important;
  position: relative;
  column-gap: 0 !important;
}

.asgd-sidebar {
  min-width: 0;
  width: 100%;
  max-height: calc(100vh - 96px);
  overflow-x: hidden;
  overflow-y: auto;
  scrollbar-width: thin;
  scrollbar-color: #9fb3d2 transparent;
}

.asgd-sidebar::-webkit-scrollbar,
.asgd-uniform-card::-webkit-scrollbar,
#overviewGraphs > .asgd-card::-webkit-scrollbar,
#overviewCards > article::-webkit-scrollbar {
  width: 5px;
  height: 5px;
}

.asgd-sidebar::-webkit-scrollbar-track,
.asgd-uniform-card::-webkit-scrollbar-track,
#overviewGraphs > .asgd-card::-webkit-scrollbar-track,
#overviewCards > article::-webkit-scrollbar-track {
  background: transparent;
}

.asgd-sidebar::-webkit-scrollbar-thumb,
.asgd-uniform-card::-webkit-scrollbar-thumb,
#overviewGraphs > .asgd-card::-webkit-scrollbar-thumb,
#overviewCards > article::-webkit-scrollbar-thumb {
  background: #9fb3d2;
  border-radius: 999px;
  border: 1px solid transparent;
  background-clip: padding-box;
}

.asgd-sidebar-resizer {
  position: sticky;
  top: 86px;
  align-self: start;
  z-index: 45;
  grid-column: 2;
  width: 10px;
  height: calc(100vh - 104px);
  margin: 0;
  cursor: col-resize;
  touch-action: none;
  outline: none;
}

.asgd-sidebar-resizer::before {
  content: "";
  position: absolute;
  top: 8px;
  bottom: 8px;
  left: 4px;
  width: 2px;
  border-radius: 999px;
  background: transparent;
  transition: background .18s ease, box-shadow .18s ease;
}

.asgd-sidebar-resizer:hover::before,
.asgd-sidebar-resizer:focus-visible::before,
body.asgd-sidebar-resizing .asgd-sidebar-resizer::before {
  background: #2466f2;
  box-shadow: 0 0 0 3px rgba(36, 102, 242, .12);
}

body.asgd-sidebar-resizing {
  cursor: col-resize !important;
  user-select: none !important;
}

.asgd-dashboard > .asgd-workspace {
  grid-column: 3;
  padding-left: 12px;
}

.asgd-workspace,
.asgd-panel,
.asgd-panel > *,
.asgd-card,
.asgd-uniform-grid > * {
  min-width: 0;
  box-sizing: border-box;
}

.asgd-panel.active {
  width: 100%;
  align-content: start;
}

.asgd-uniform-grid {
  display: grid !important;
  gap: 14px !important;
  align-items: stretch !important;
  width: 100%;
}

.asgd-uniform-grid-3 {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

.asgd-uniform-grid-2 {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

.asgd-uniform-card {
  height: 380px;
  min-height: 380px;
  max-height: 380px;
  overflow: auto;
  scrollbar-width: thin;
  scrollbar-color: #afc1dc transparent;
}

#windowSummaryCards,
#overviewCards {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 12px !important;
}

#windowSummaryCards > article {
  min-height: 132px;
  height: 132px;
  overflow: auto;
  align-content: start;
  scrollbar-width: thin;
}

#windowSummaryCards > article small {
  display: block;
  margin-top: 8px;
  line-height: 1.45;
  color: var(--muted);
}

#overviewCards > article {
  min-height: 190px;
  height: 190px;
  max-height: 190px;
  overflow: auto;
  scrollbar-width: thin;
  border-top: 4px solid #9fb3d2;
}

#overviewCards > article.tone-good { border-top-color: #1aa878; }
#overviewCards > article.tone-warn { border-top-color: #f2a51a; }
#overviewCards > article.tone-focus { border-top-color: #2865f4; background: linear-gradient(180deg, #f7faff, #eef4ff); }
#overviewCards > article strong { font-size: clamp(20px, 1.5vw, 28px); line-height: 1.18; overflow-wrap: anywhere; }
#overviewCards > article small { line-height: 1.55; }

.asgd-billing-agreement-zone {
  width: 100%;
  margin: 0 0 14px;
}

.asgd-billing-agreement-zone .asgd-agreement-card {
  width: 100%;
  max-height: 440px;
  overflow: auto;
  scrollbar-width: thin;
}

@media (max-width: 1500px) {
  .asgd-uniform-grid-3,
  #windowSummaryCards,
  #overviewCards {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 1250px) {
  .asgd-dashboard {
    grid-template-columns: minmax(0, 1fr) !important;
  }
  .asgd-dashboard > .asgd-workspace {
    grid-column: auto;
    padding-left: 0;
  }
  .asgd-sidebar-resizer { display: none !important; }
  .asgd-sidebar {
    max-height: none;
    overflow: visible;
  }
}

@media (max-width: 820px) {
  .asgd-uniform-grid-3,
  .asgd-uniform-grid-2,
  #windowSummaryCards,
  #overviewCards {
    grid-template-columns: minmax(0, 1fr) !important;
  }
  .asgd-uniform-card,
  #windowSummaryCards > article,
  #overviewCards > article,
  .asgd-billing-agreement-zone .asgd-agreement-card {
    height: auto;
    min-height: 0;
    max-height: none;
    overflow: visible;
  }
}


/* =========================================================
   v13.4 sidebar brand, full-height navigation and audit intelligence
========================================================= */
.asgd-dashboard {
  align-items: stretch;
}

.asgd-sidebar {
  position: sticky;
  top: 70px;
  align-self: start;
  height: calc(100vh - 76px);
  height: calc(100dvh - 76px);
  max-height: calc(100vh - 76px);
  max-height: calc(100dvh - 76px);
  min-height: 690px;
}

.asgd-side-brand {
  position: sticky;
  top: 0;
  z-index: 5;
  background: linear-gradient(180deg, #ffffff 78%, rgba(255,255,255,.94));
}

.asgd-side-footer {
  position: sticky;
  bottom: 0;
  z-index: 5;
  background: rgba(255,255,255,.97);
  backdrop-filter: blur(12px);
}

.asgd-client-avatar img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  padding: 3px;
  border-radius: inherit;
  background: #fff;
}

/* Branding and Security should expand naturally without internal card scrollbars. */
.asgd-panel[data-section="branding"] .asgd-card,
.asgd-panel[data-section="branding"] .asgd-uniform-card,
.asgd-panel[data-section="security"] .asgd-card,
.asgd-panel[data-section="security"] .asgd-uniform-card {
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  overflow: visible !important;
  scrollbar-width: none !important;
}

.asgd-panel[data-section="branding"] .asgd-card::-webkit-scrollbar,
.asgd-panel[data-section="security"] .asgd-card::-webkit-scrollbar {
  display: none !important;
}

.asgd-panel[data-section="branding"] .asgd-branding-grid,
.asgd-panel[data-section="security"] .asgd-two-col {
  align-items: stretch;
}

#websiteHealthSummaryCards {
  display: grid !important;
  grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
  gap: 10px !important;
}

#websiteHealthSummaryCards > article {
  min-width: 0;
  min-height: 112px;
  height: 112px;
  padding: 14px;
  overflow: hidden;
  align-content: start;
}

#websiteHealthSummaryCards > article strong {
  font-size: clamp(24px, 1.8vw, 34px);
  line-height: 1;
  overflow-wrap: anywhere;
}

#websiteHealthSummaryCards > article small {
  margin-top: 8px;
  line-height: 1.35;
}

.asgd-health-meter {
  --health-score: 0;
  --health-angle: -135deg;
  --health-tone: #8aa0bf;
  position: relative;
  width: 152px;
  height: 152px;
  flex: 0 0 152px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background:
    radial-gradient(circle at center, #ffffff 0 48%, transparent 49%),
    conic-gradient(from 225deg, var(--health-tone) 0 calc(var(--health-score) * 2.7deg), #dce8f5 calc(var(--health-score) * 2.7deg) 270deg, transparent 270deg 360deg);
  box-shadow: inset 0 0 0 1px #c9d9eb, 0 12px 28px rgba(13, 52, 95, .11);
}

.asgd-health-meter::before {
  content: "";
  position: absolute;
  inset: 11px;
  border-radius: 50%;
  border: 1px solid rgba(83, 112, 151, .18);
  pointer-events: none;
}

.asgd-health-meter-dial {
  position: absolute;
  inset: 0;
  border-radius: 50%;
}

.asgd-health-meter-needle {
  position: absolute;
  left: 50%;
  bottom: 50%;
  width: 3px;
  height: 42px;
  border-radius: 999px;
  background: #0b1426;
  transform: translateX(-50%) rotate(var(--health-angle));
  transform-origin: 50% 100%;
  transition: transform .65s cubic-bezier(.2,.8,.2,1);
  box-shadow: 0 0 0 1px rgba(255,255,255,.35);
}

.asgd-health-meter-knob {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 18px;
  height: 18px;
  transform: translate(-50%, -50%);
  border: 5px solid #ffffff;
  border-radius: 50%;
  background: #0b1426;
  box-shadow: 0 3px 10px rgba(10,26,51,.2);
}

.asgd-health-meter-value {
  position: relative;
  z-index: 2;
  display: grid;
  justify-items: center;
  margin-top: 42px;
}

.asgd-health-meter-value strong {
  color: var(--health-tone);
  font-size: 31px;
  line-height: 1;
  font-weight: 950;
}

.asgd-health-meter-value small {
  margin-top: 6px;
  color: #55657d;
  font-size: 10px;
  font-weight: 950;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.asgd-audit-analytics {
  overflow: visible;
}

.asgd-audit-analytics-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.65fr) minmax(340px, .85fr);
  gap: 14px;
  align-items: stretch;
}

.asgd-audit-chart-card,
.asgd-audit-insights-card {
  min-width: 0;
  border: 1px solid var(--line);
  border-radius: 18px;
  background: linear-gradient(180deg, #ffffff, #f7faff);
  padding: 15px;
}

.asgd-mini-head-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 10px;
}

.asgd-mini-head-row strong { font-size: 15px; }
.asgd-mini-head-row small { color: var(--muted); }

.asgd-audit-trend-chart {
  width: 100%;
  height: 250px;
  min-height: 250px;
  border-radius: 16px;
  background: #f9fbff;
  overflow: hidden;
}

.asgd-audit-trend-chart svg {
  display: block;
  width: 100%;
  height: 100%;
}

.asgd-audit-grid-line { stroke: #dbe5f2; stroke-width: 1; }
.asgd-audit-axis-label { fill: #71819a; font-size: 11px; font-family: inherit; }
.asgd-audit-trend-line { fill: none; stroke: #2466f2; stroke-width: 5; stroke-linecap: round; stroke-linejoin: round; }
.asgd-audit-point { fill: #ffffff; stroke: #0d59e8; stroke-width: 4; }

.asgd-audit-trend-legend {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 18px;
  align-items: center;
  margin-top: 11px;
  color: #55657d;
  font-size: 11px;
}

.asgd-audit-trend-legend span { display: inline-flex; align-items: center; gap: 6px; }
.asgd-audit-trend-legend i.score { width: 22px; height: 4px; border-radius: 99px; background: #2466f2; }

.asgd-audit-analytics-cards {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 9px;
}

.asgd-audit-analytics-cards > div {
  min-width: 0;
  min-height: 94px;
  display: grid;
  align-content: start;
  gap: 5px;
  padding: 12px;
  border: 1px solid #d8e4f2;
  border-radius: 14px;
  background: #fff;
}

.asgd-audit-analytics-cards span {
  color: #71819a;
  font-size: 9px;
  font-weight: 950;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.asgd-audit-analytics-cards strong {
  overflow-wrap: anywhere;
  font-size: 22px;
  line-height: 1.05;
}

.asgd-audit-analytics-cards small {
  color: var(--muted);
  line-height: 1.35;
}

.asgd-audit-analytics-insight {
  margin-top: 10px;
  padding: 13px 14px;
  border-left: 4px solid #2466f2;
  border-radius: 13px;
  background: #eef5ff;
  color: #294365;
  line-height: 1.55;
  font-weight: 750;
}

#websiteAuditTrendDirection[data-trend="up"] { color: #087344; background: #effdf5; border-color: #a7dfc2; }
#websiteAuditTrendDirection[data-trend="down"] { color: #a23b32; background: #fff1ef; border-color: #f0b3ac; }
#websiteAuditTrendDirection[data-trend="neutral"] { color: #365c96; background: #f3f7ff; border-color: #c7d8f1; }

@media (max-width: 1700px) {
  #websiteHealthSummaryCards { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
}

@media (max-width: 1250px) {
  .asgd-sidebar {
    position: relative;
    top: auto;
    height: auto;
    min-height: 0;
    max-height: none;
  }
  .asgd-side-brand,
  .asgd-side-footer { position: relative; top: auto; bottom: auto; }
  .asgd-audit-analytics-grid { grid-template-columns: 1fr; }
}

@media (max-width: 820px) {
  #websiteHealthSummaryCards { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  #websiteHealthSummaryCards > article { height: auto; min-height: 104px; }
  .asgd-health-meter { width: 130px; height: 130px; flex-basis: 130px; }
  .asgd-audit-analytics-cards { grid-template-columns: 1fr; }
}

@media (max-width: 520px) {
  #websiteHealthSummaryCards { grid-template-columns: 1fr !important; }
}


/* =========================================================
   v13.5 private company workspace banner
   Uses the signed private banner URL supplied by Dashboard Worker v19.2+.
========================================================= */
.asgd-workspace-branding-banner {
  position: relative;
  min-width: 0;
  height: clamp(150px, 15vw, 190px);
  overflow: hidden;
  border: 1px solid rgba(121, 148, 190, 0.28);
  border-radius: 22px;
  background:
    radial-gradient(circle at 78% 18%, rgba(69, 126, 255, 0.38), transparent 38%),
    linear-gradient(135deg, #06152f 0%, #123b78 54%, #2464d8 100%);
  box-shadow: 0 18px 44px rgba(7, 24, 55, 0.15);
  isolation: isolate;
}

.asgd-workspace-branding-banner[hidden] {
  display: none !important;
}

.asgd-workspace-branding-banner-image {
  position: absolute;
  inset: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  transform: scale(1.002);
}

.asgd-workspace-branding-shade {
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    linear-gradient(90deg, rgba(4, 14, 35, 0.88) 0%, rgba(4, 14, 35, 0.58) 43%, rgba(4, 14, 35, 0.12) 78%),
    linear-gradient(0deg, rgba(4, 14, 35, 0.72) 0%, rgba(4, 14, 35, 0.04) 72%);
  pointer-events: none;
}

.asgd-workspace-branding-content {
  position: absolute;
  left: clamp(18px, 2.2vw, 34px);
  right: clamp(18px, 2.2vw, 34px);
  bottom: clamp(16px, 2vw, 28px);
  z-index: 2;
  display: flex;
  align-items: flex-end;
  gap: 15px;
  min-width: 0;
  color: #fff;
}

.asgd-workspace-branding-logo {
  flex: 0 0 auto;
  width: clamp(58px, 5vw, 76px);
  height: clamp(58px, 5vw, 76px);
  display: grid;
  place-items: center;
  overflow: hidden;
  border: 2px solid rgba(255, 255, 255, 0.78);
  border-radius: 20px;
  background: rgba(255, 255, 255, 0.96);
  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.24);
  color: #0a1d40;
  font-size: 24px;
  font-weight: 900;
}

.asgd-workspace-branding-logo img {
  width: 100%;
  height: 100%;
  padding: 6px;
  object-fit: contain;
  background: #fff;
}

.asgd-workspace-branding-copy {
  min-width: 0;
  padding-bottom: 2px;
  text-shadow: 0 2px 14px rgba(0, 0, 0, 0.42);
}

.asgd-workspace-branding-copy .asgd-kicker {
  display: block;
  margin-bottom: 4px;
  color: rgba(255, 255, 255, 0.82);
  letter-spacing: 0.13em;
}

.asgd-workspace-branding-copy h2 {
  margin: 0;
  max-width: min(760px, 72vw);
  overflow: hidden;
  color: #fff;
  font-size: clamp(24px, 3vw, 42px);
  line-height: 1.03;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.asgd-workspace-branding-copy p {
  margin: 7px 0 0;
  overflow: hidden;
  color: rgba(255, 255, 255, 0.88);
  font-size: 12px;
  font-weight: 720;
  letter-spacing: 0.03em;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.asgd-workspace-branding-banner.is-loading::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 3;
  background: linear-gradient(100deg, transparent 20%, rgba(255, 255, 255, 0.15) 42%, transparent 64%);
  transform: translateX(-100%);
  animation: asgd-banner-loading 1.4s linear infinite;
  pointer-events: none;
}

@keyframes asgd-banner-loading {
  to { transform: translateX(100%); }
}

@media (max-width: 760px) {
  .asgd-workspace-branding-banner {
    height: 140px;
    border-radius: 17px;
  }
  .asgd-workspace-branding-content {
    left: 14px;
    right: 14px;
    bottom: 14px;
    gap: 11px;
  }
  .asgd-workspace-branding-logo {
    width: 54px;
    height: 54px;
    border-radius: 16px;
  }
  .asgd-workspace-branding-copy h2 {
    max-width: calc(100vw - 140px);
    font-size: 22px;
  }
  .asgd-workspace-branding-copy p {
    max-width: calc(100vw - 140px);
  }
}

@media (prefers-reduced-motion: reduce) {
  .asgd-workspace-branding-banner.is-loading::before {
    animation: none;
  }
}


/* =========================================================
   V13.6 — CANONICAL AUDIT CARDS + GATEWAY TRANSCRIPTS
========================================================= */

.asgd-latest-detail {
  display: block;
  margin-top: 7px;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
}

.asgd-sample-question-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin-top: 14px;
}

.asgd-sample-question-grid > a {
  min-width: 0;
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr);
  gap: 3px 9px;
  align-items: start;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 14px;
  background: linear-gradient(145deg, #ffffff, #f5f8ff);
  color: var(--ink);
  text-decoration: none;
  transition: border-color .18s ease, transform .18s ease, box-shadow .18s ease;
}

.asgd-sample-question-grid > a:hover {
  transform: translateY(-1px);
  border-color: rgba(36, 102, 242, .42);
  box-shadow: 0 10px 24px rgba(36, 102, 242, .1);
}

.asgd-sample-question-grid i {
  grid-row: span 2;
  width: 28px;
  height: 28px;
  display: grid;
  place-items: center;
  border-radius: 10px;
  color: var(--blue);
  background: rgba(36, 102, 242, .1);
}

.asgd-sample-question-grid span {
  min-width: 0;
  font-weight: 800;
  line-height: 1.35;
}

.asgd-sample-question-grid small {
  color: var(--muted);
  font-size: 11px;
}

.asgd-filter-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  justify-content: flex-end;
}

.asgd-filter-pills button {
  border: 1px solid var(--line);
  border-radius: 999px;
  background: #fff;
  color: var(--muted);
  padding: 7px 11px;
  font: inherit;
  font-size: 11px;
  font-weight: 850;
  cursor: pointer;
}

.asgd-filter-pills button.active {
  background: var(--ink);
  border-color: var(--ink);
  color: #fff;
}

.asgd-chat-history-card {
  margin-top: 14px;
}

.asgd-chat-room-list {
  display: grid;
  gap: 12px;
}

.asgd-chat-room {
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 17px;
  background: #fbfdff;
}

.asgd-chat-room > summary {
  list-style: none;
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr) 22px;
  gap: 10px;
  align-items: center;
  padding: 13px 15px;
  cursor: pointer;
  background: #fff;
}

.asgd-chat-room > summary::-webkit-details-marker {
  display: none;
}

.asgd-chat-room > summary > span:nth-child(2) {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.asgd-chat-room > summary b {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.asgd-chat-room > summary small {
  color: var(--muted);
  font-size: 11px;
}

.asgd-chat-room[open] > summary {
  border-bottom: 1px solid var(--line);
}

.asgd-chat-room[open] > summary > i {
  transform: rotate(180deg);
}

.asgd-chat-room-icon {
  width: 36px;
  height: 36px;
  display: grid;
  place-items: center;
  border-radius: 12px;
  color: var(--blue);
  background: rgba(36, 102, 242, .1);
}

.asgd-chat-room-body {
  display: grid;
  gap: 14px;
  padding: 15px;
}

.asgd-chat-turn {
  display: grid;
  gap: 8px;
}

.asgd-chat-turn-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.asgd-chat-bubble {
  max-width: min(900px, 92%);
  padding: 12px 14px;
  border-radius: 16px;
}

.asgd-chat-bubble span,
.asgd-transcript-turn span {
  display: block;
  margin-bottom: 5px;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.asgd-chat-bubble p,
.asgd-transcript-turn p {
  margin: 0;
  line-height: 1.55;
  overflow-wrap: anywhere;
}

.asgd-chat-bubble.question {
  justify-self: start;
  background: #edf3ff;
  border: 1px solid #cad9fb;
}

.asgd-chat-bubble.answer {
  justify-self: end;
  background: #eaf9f2;
  border: 1px solid #bfe7d3;
}

.asgd-transcript-card {
  display: grid;
  gap: 10px;
  padding: 13px;
  border: 1px solid var(--line);
  border-radius: 15px;
  background: #fff;
}

.asgd-transcript-card > header {
  display: grid;
  grid-template-columns: 36px minmax(0, 1fr);
  gap: 9px;
  align-items: center;
}

.asgd-transcript-turn {
  padding: 10px 12px;
  border-radius: 13px;
}

.asgd-transcript-turn.question {
  background: #f1f5ff;
}

.asgd-transcript-turn.answer {
  background: #eefaf4;
}

.asgd-audit-report-head {
  align-items: center;
}

.asgd-report-meter {
  --report-angle: -135deg;
  --report-tone: #8aa0bf;
  position: relative;
  flex: 0 0 104px;
  width: 104px;
  height: 74px;
  display: grid;
  place-items: end center;
  overflow: hidden;
}

.asgd-report-meter::before {
  content: "";
  position: absolute;
  inset: 0 0 -30px;
  border: 10px solid #e5edf8;
  border-bottom-color: transparent;
  border-radius: 999px;
  background:
    conic-gradient(from 225deg, var(--report-tone) calc(var(--report-score) * 1.8deg), transparent 0 180deg, transparent 0);
  mask: radial-gradient(circle at center 72%, transparent 0 43%, #000 44%);
}

.asgd-report-meter .needle {
  position: absolute;
  left: 50%;
  bottom: 16px;
  width: 36px;
  height: 3px;
  border-radius: 999px;
  background: #071632;
  transform-origin: 0 50%;
  transform: rotate(var(--report-angle));
  transition: transform .45s ease;
}

.asgd-report-meter .knob {
  position: absolute;
  left: calc(50% - 6px);
  bottom: 11px;
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: #071632;
  border: 3px solid #fff;
  box-shadow: 0 0 0 1px rgba(7, 22, 50, .2);
}

.asgd-report-meter strong {
  position: relative;
  z-index: 2;
  margin-bottom: 10px;
  font-size: 21px;
}

.asgd-report-meter small {
  position: absolute;
  z-index: 2;
  bottom: 0;
  font-size: 9px;
  font-weight: 900;
  text-transform: uppercase;
}

.asgd-audit-six-grid,
.asgd-audit-card-grid.six,
.asgd-score-bars {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 9px;
}

.asgd-audit-six-grid {
  margin: 15px 0;
}

.asgd-audit-six-grid > article {
  min-width: 0;
  min-height: 92px;
  display: grid;
  align-content: start;
  gap: 5px;
  padding: 11px;
  border: 1px solid var(--line);
  border-radius: 14px;
  background: linear-gradient(145deg, #fff, #f7faff);
}

.asgd-audit-six-grid span,
.asgd-audit-six-grid small {
  color: var(--muted);
  font-size: 10px;
}

.asgd-audit-six-grid span {
  font-weight: 900;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.asgd-audit-six-grid strong {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  font-size: 17px;
}

.asgd-audit-mix {
  display: grid;
  gap: 8px;
  margin: 12px 0 15px;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 15px;
  background: #fbfdff;
}

.asgd-audit-mix-head,
.asgd-audit-mix-legend {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 8px 14px;
}

.asgd-audit-mix-head span,
.asgd-audit-mix-legend span {
  color: var(--muted);
  font-size: 11px;
}

.asgd-audit-mix-track {
  height: 10px;
  display: flex;
  overflow: hidden;
  border-radius: 999px;
  background: #e7edf6;
}

.asgd-audit-mix-track i {
  min-width: 0;
  height: 100%;
}

.asgd-audit-mix .good { background: #18aa70; }
.asgd-audit-mix .warning { background: #eda51f; }
.asgd-audit-mix .issue { background: #e95c52; }

.asgd-audit-mix-legend span {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.asgd-audit-mix-legend i {
  width: 9px;
  height: 9px;
  border-radius: 50%;
}

.asgd-score-bars {
  margin-bottom: 16px;
}

.asgd-score-bars > div {
  min-width: 0;
  min-height: 105px;
  display: grid;
  grid-template-columns: 1fr auto;
  align-content: start;
  gap: 5px 8px;
  padding: 11px;
}

.asgd-score-bars > div small {
  grid-column: 1 / -1;
  color: var(--muted);
  font-size: 10px;
}

.asgd-score-bars > div > i {
  grid-column: 1 / -1;
}

.asgd-audit-report-grid {
  grid-template-columns: 1fr !important;
}

.asgd-audit-report-grid > article {
  overflow: visible;
}

.asgd-audit-card-grid.six {
  align-items: stretch;
}

.asgd-audit-data-card {
  min-width: 0;
  min-height: 160px;
  display: grid;
  align-content: start;
  gap: 8px;
  padding: 11px;
  border: 1px solid var(--line);
  border-radius: 14px;
  background: #fff;
}

.asgd-audit-data-card > header {
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr);
  gap: 7px;
  align-items: start;
}

.asgd-audit-data-card > header i {
  width: 24px;
  height: 24px;
  display: grid;
  place-items: center;
  border-radius: 8px;
  background: #eef3ff;
  color: var(--blue);
}

.asgd-audit-data-card > header strong {
  min-width: 0;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.asgd-audit-data-card p {
  margin: 0;
  color: #334b6d;
  font-size: 12px;
  line-height: 1.5;
}

.asgd-audit-data-card.tone-good {
  border-color: #bfe7d3;
  background: #f6fdf9;
}

.asgd-audit-data-card.tone-warning {
  border-color: #f1d7a5;
  background: #fffaf0;
}

.asgd-audit-data-card.tone-risk {
  border-color: #f0c0bc;
  background: #fff7f6;
}

.asgd-audit-data-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
}

.asgd-audit-data-chips span {
  max-width: 100%;
  padding: 4px 6px;
  border-radius: 999px;
  background: #eef3fb;
  color: #49617f;
  font-size: 9px;
  font-weight: 800;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.asgd-audit-fix {
  display: grid;
  gap: 4px;
  margin-top: auto;
  padding-top: 8px;
  border-top: 1px dashed var(--line);
  font-size: 11px;
  line-height: 1.45;
}

.asgd-audit-fix b {
  color: var(--blue);
}

@media (max-width: 1650px) {
  .asgd-audit-six-grid,
  .asgd-audit-card-grid.six,
  .asgd-score-bars {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 980px) {
  .asgd-sample-question-grid {
    grid-template-columns: 1fr;
  }

  .asgd-audit-six-grid,
  .asgd-audit-card-grid.six,
  .asgd-score-bars {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .asgd-filter-pills {
    justify-content: flex-start;
  }
}

@media (max-width: 620px) {
  .asgd-audit-six-grid,
  .asgd-audit-card-grid.six,
  .asgd-score-bars {
    grid-template-columns: 1fr;
  }

  .asgd-chat-bubble {
    max-width: 100%;
  }

  .asgd-report-meter {
    flex-basis: 88px;
    width: 88px;
  }
}


/* =========================================================
   v13.7 remembered email + OTP action placement
========================================================= */
.asgd-remember-email-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
  margin: -2px 0 2px;
  padding: 10px 12px;
  border: 1px solid rgba(37, 99, 235, .14);
  border-radius: 14px;
  background: rgba(239, 246, 255, .72);
}

.asgd-remember-email-choice {
  display: inline-flex !important;
  grid-template-columns: none !important;
  align-items: center;
  gap: 9px;
  margin: 0 !important;
  color: #334155;
  font-size: 13px;
  font-weight: 800;
  cursor: pointer;
}

.asgd-remember-email-choice input {
  width: 17px !important;
  height: 17px !important;
  min-height: 0 !important;
  margin: 0;
  accent-color: #16a34a;
}

.asgd-email-saved-status {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: #15803d;
  font-size: 12px;
  font-weight: 900;
}

.asgd-email-saved-status[hidden] { display: none !important; }
.asgd-email-saved-status i { color: #16a34a; }

.asgd-login-action-slot {
  display: block;
  width: 100%;
}

.asgd-login-action-slot:empty { display: none; }
.asgd-factor-action-slot { margin-top: 12px; }
.asgd-factor-action-slot .asgd-btn { margin: 0; }

#loginSecondFactorBox {
  display: grid;
  gap: 12px;
}

#loginSecondFactorBox[hidden] { display: none !important; }
#loginSecondFactorBox > label { margin: 0; }
#loginOtpResendRow { margin-top: 0; }

@media (max-width: 640px) {
  .asgd-remember-email-row { align-items: flex-start; }
  .asgd-email-saved-status { width: 100%; }
}


/* =========================================================
   V13.8 global recovery country directory + email fallback
========================================================= */
.asgd-mobile-verify-box {
  display: grid;
  gap: 12px;
}
.asgd-recovery-policy-note {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 12px 14px;
  border: 1px solid #cfe0ff;
  border-radius: 14px;
  background: #f3f7ff;
  color: #24416f;
  line-height: 1.45;
}
.asgd-recovery-policy-note i {
  color: var(--blue);
  margin-top: 2px;
}
.asgd-mobile-country-row select {
  width: 100%;
  min-height: 46px;
  border: 1px solid #b9c5d6;
  border-radius: 14px;
  background: #fff;
  color: var(--ink);
  padding: 0 12px;
}
.asgd-recovery-channel {
  display: inline-flex;
  width: max-content;
  max-width: 100%;
  align-items: center;
  gap: 8px;
  border-radius: 999px;
  padding: 8px 11px;
  font-size: 12px;
  font-weight: 900;
}
.asgd-recovery-channel.sms {
  color: #0a3cc2;
  border: 1px solid #bcd1ff;
  background: #eef4ff;
}
.asgd-recovery-channel.email {
  color: #087344;
  border: 1px solid #9fe0be;
  background: #effdf5;
}
.asgd-recovery-email-target {
  margin: 0;
  padding: 10px 12px;
  border-radius: 12px;
  border: 1px dashed #9fe0be;
  background: #f4fff8;
  color: #087344;
  font-weight: 750;
}
.asgd-security-help.ok { color: #087344; }
.asgd-security-help.warn { color: #9a5b00; }
.asgd-security-help.bad { color: var(--red); }
.asgd-security-help.info { color: var(--muted); }
@media (max-width: 820px) {
  .asgd-mobile-country-row { grid-template-columns: 1fr; }
}
