:root {
  --dg-accent: #14b8a6;
  --dg-accent-dark: #0f766e;
  --dg-ink: #0f172a;
  --dg-muted: #64748b;
  --dg-line: #d7e0ea;
  --dg-bg: #eef2f7;
  --dg-card: rgba(255, 255, 255, 0.96);
  --dg-danger: #be123c;
  --dg-success: #047857;
  --dg-warning: #a16207;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color: var(--dg-ink);
  background: var(--dg-bg);
}

* { box-sizing: border-box; }
[hidden] { display: none !important; }
html { min-height: 100%; background: var(--dg-bg); }
body { min-height: 100vh; margin: 0; background: var(--dg-bg); color: var(--dg-ink); }
button, input, select, textarea { font: inherit; }
a { color: var(--dg-accent-dark); }

.dg-auth-page {
  min-height: 100vh;
  display: grid;
  grid-template-columns: minmax(300px, 0.9fr) minmax(420px, 1.1fr);
  background:
    radial-gradient(circle at 15% 15%, rgba(20, 184, 166, 0.22), transparent 30%),
    linear-gradient(135deg, #0f172a 0%, #172554 48%, #0f766e 100%);
}

.dg-auth-brand {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-height: 100vh;
  padding: clamp(30px, 5vw, 76px);
  color: #fff;
}

.dg-brand-wordmark {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  color: #fff;
  text-decoration: none;
  font-size: 24px;
  font-weight: 850;
  letter-spacing: -0.04em;
}

.dg-brand-mark {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(255,255,255,.28);
  border-radius: 14px;
  background: rgba(255,255,255,.10);
  box-shadow: 0 14px 38px rgba(15, 23, 42, .24);
}

.dg-brand-accent { color: #2dd4bf; }
.dg-auth-copy { max-width: 590px; }
.dg-auth-copy h1 { margin: 0; font-size: clamp(34px, 5vw, 64px); line-height: 1.04; letter-spacing: -0.055em; }
.dg-auth-copy p { max-width: 580px; margin: 20px 0 0; color: #dbeafe; font-size: clamp(16px, 2vw, 21px); line-height: 1.6; }
.dg-auth-points { display: grid; gap: 12px; margin-top: 30px; padding: 0; list-style: none; }
.dg-auth-points li { display: flex; align-items: center; gap: 11px; color: #e2e8f0; font-weight: 650; }
.dg-auth-points span { width: 24px; height: 24px; display: grid; place-items: center; border-radius: 999px; background: rgba(45,212,191,.18); color: #5eead4; font-size: 13px; }
.dg-auth-foot { color: #94a3b8; font-size: 13px; }

.dg-auth-panel {
  display: grid;
  place-items: center;
  min-height: 100vh;
  padding: 34px;
  background: rgba(248, 250, 252, .97);
}

.dg-auth-card {
  width: min(100%, 520px);
  border: 1px solid var(--dg-line);
  border-radius: 28px;
  background: var(--dg-card);
  padding: clamp(24px, 5vw, 46px);
  box-shadow: 0 28px 80px rgba(15, 23, 42, .14);
}

.dg-auth-card--wide { width: min(100%, 720px); }
.dg-eyebrow { margin: 0 0 10px; color: var(--dg-accent-dark); font-size: 12px; font-weight: 850; letter-spacing: .12em; text-transform: uppercase; }
.dg-auth-card h2, .dg-page-title { margin: 0; color: var(--dg-ink); font-size: clamp(27px, 4vw, 38px); line-height: 1.15; letter-spacing: -.04em; }
.dg-subtitle { margin: 12px 0 0; color: var(--dg-muted); line-height: 1.65; }

.dg-form { display: grid; gap: 18px; margin-top: 28px; }
.dg-form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 15px; }
.dg-field { display: grid; gap: 8px; }
.dg-field label { color: #334155; font-size: 13px; font-weight: 800; }
.dg-field input, .dg-field select, .dg-field textarea {
  width: 100%;
  min-height: 48px;
  border: 1px solid #cbd5e1;
  border-radius: 14px;
  background: #fff;
  color: var(--dg-ink);
  padding: 11px 13px;
  outline: none;
  transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}
.dg-field textarea { min-height: 105px; resize: vertical; }
.dg-field input:focus, .dg-field select:focus, .dg-field textarea:focus { border-color: var(--dg-accent); box-shadow: 0 0 0 4px rgba(20,184,166,.14); }
.dg-field-help { margin: -1px 0 0; color: var(--dg-muted); font-size: 12px; line-height: 1.45; }

.dg-password-wrap { position: relative; }
.dg-password-wrap input { padding-right: 72px; }
.dg-password-toggle { position: absolute; right: 9px; top: 50%; transform: translateY(-50%); border: 0; background: transparent; color: var(--dg-accent-dark); font-size: 12px; font-weight: 850; cursor: pointer; padding: 7px; }

.dg-checkbox { display: flex; align-items: flex-start; gap: 10px; color: #475569; font-size: 13px; line-height: 1.5; }
.dg-checkbox input { width: 17px; height: 17px; margin-top: 2px; accent-color: var(--dg-accent-dark); }

.dg-button {
  min-height: 49px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  border: 1px solid transparent;
  border-radius: 14px;
  padding: 11px 17px;
  font-weight: 850;
  cursor: pointer;
  text-decoration: none;
  transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease, background .16s ease;
}
.dg-button:hover:not(:disabled) { transform: translateY(-1px); }
.dg-button:disabled { opacity: .58; cursor: wait; }
.dg-button--primary { background: var(--dg-ink); color: #fff; box-shadow: 0 14px 28px rgba(15,23,42,.18); }
.dg-button--primary:hover:not(:disabled) { background: #1e293b; }
.dg-button--secondary { border-color: #cbd5e1; background: #fff; color: #1e293b; }
.dg-button--secondary:hover:not(:disabled) { border-color: #94a3b8; box-shadow: 0 10px 25px rgba(15,23,42,.08); }
.dg-button--danger { border-color: #fecdd3; background: #fff1f2; color: var(--dg-danger); }
.dg-button--small { min-height: 36px; border-radius: 10px; padding: 7px 11px; font-size: 12px; }
.dg-button--full { width: 100%; }
.dg-google-icon { width: 19px; height: 19px; flex: 0 0 auto; }

.dg-divider { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 13px; margin: 22px 0; color: #94a3b8; font-size: 12px; font-weight: 750; }
.dg-divider::before, .dg-divider::after { content: ''; height: 1px; background: #e2e8f0; }
.dg-links { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-top: 18px; color: var(--dg-muted); font-size: 13px; }
.dg-links a { font-weight: 800; text-decoration: none; }
.dg-links a:hover { text-decoration: underline; }

.dg-message { display: none; border: 1px solid; border-radius: 13px; padding: 11px 13px; font-size: 13px; line-height: 1.5; }
.dg-message.is-visible { display: block; }
.dg-message--info { border-color: #bae6fd; background: #f0f9ff; color: #075985; }
.dg-message--success { border-color: #a7f3d0; background: #ecfdf5; color: #065f46; }
.dg-message--error { border-color: #fecdd3; background: #fff1f2; color: #9f1239; }
.dg-message--warning { border-color: #fde68a; background: #fffbeb; color: #854d0e; }

.dg-app-shell { min-height: 100vh; background: var(--dg-bg); }
/* Step 8A.7 — one approved dark DebitGuard header across authenticated pages */
.dg-app-header { position: sticky; top: 0; z-index: 30; border-bottom: 1px solid rgba(148,163,184,.22); background: rgba(15,23,42,.97); -webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px); transition: box-shadow .18s ease, background-color .18s ease; }
.dg-app-header.is-scrolled { background: rgba(15,23,42,.992); box-shadow: 0 12px 30px rgba(2,6,23,.30); }
.dg-app-header-inner { width: min(1180px, calc(100% - 32px)); min-height: 68px; display: flex; align-items: center; justify-content: space-between; gap: 24px; margin: 0 auto; }
.dg-app-brand { flex: 0 0 auto; color: #fff; font-size: 22px; font-weight: 900; }
.dg-app-brand .dg-brand-mark { width: 38px; height: 38px; border-color: rgba(255,255,255,.24); border-radius: 12px; background: rgba(255,255,255,.10); color: #fff; box-shadow: 0 12px 28px rgba(0,0,0,.22); font-size: 13px; }
.dg-app-nav { display: flex; align-items: center; gap: 6px; }
.dg-app-nav a, .dg-app-nav button { min-height: 36px; border: 0; border-radius: 10px; background: transparent; color: #cbd5e1; padding: 9px 12px; font-size: 13px; font-weight: 800; text-decoration: none; cursor: pointer; transition: background .15s ease, color .15s ease, border-color .15s ease; }
.dg-app-nav a:hover, .dg-app-nav a.is-active, .dg-app-nav button:hover { background: rgba(255,255,255,.09); color: #fff; }
.dg-app-header .dg-header-user-avatar { border-color: rgba(255,255,255,.30); background: rgba(255,255,255,.10); color: #5eead4; box-shadow: 0 6px 16px rgba(0,0,0,.22); }
.dg-app-header .dg-header-user-role { color: #94a3b8; }
.dg-app-main { width: min(1180px, calc(100% - 32px)); margin: 0 auto; padding: 38px 0 60px; }
.dg-page-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 20px; margin-bottom: 24px; }
.dg-page-heading p { max-width: 720px; margin: 10px 0 0; color: var(--dg-muted); line-height: 1.65; }
.dg-stack { display: grid; gap: 20px; }
.dg-grid-2 { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 20px; }
.dg-grid-sidebar { display: grid; grid-template-columns: minmax(250px,.72fr) minmax(0,1.28fr); gap: 20px; align-items: start; }
.dg-card { border: 1px solid var(--dg-line); border-radius: 22px; background: #fff; box-shadow: 0 12px 34px rgba(15,23,42,.06); }
.dg-card-head { padding: 22px 24px 14px; }
.dg-card-head h3 { margin: 0; font-size: 19px; letter-spacing: -.025em; }
.dg-card-head p { margin: 7px 0 0; color: var(--dg-muted); font-size: 13px; line-height: 1.55; }
.dg-card-body { padding: 10px 24px 24px; }

/* Step 7C.22 — compact, height-balanced account/workspace overview */
.dg-grid-sidebar { align-items: stretch; }
.dg-grid-sidebar > aside { display: flex; min-width: 0; }
.dg-grid-sidebar > aside > .dg-account-overview-card { width: 100%; height: 100%; }
.dg-account-overview-head { padding: 18px 20px 7px; }
.dg-account-overview-body { display: grid; gap: 0; padding: 5px 20px 17px; }
.dg-account-overview-section { display: grid; gap: 8px; }
.dg-account-overview-section h4 { margin: 0; color: var(--dg-ink); font-size: 14px; letter-spacing: -.01em; }
.dg-account-overview-section--identity {
  grid-template-columns: minmax(0,1fr) auto;
  grid-template-areas: 'heading action' 'meta meta';
  align-items: center;
}
.dg-account-overview-section--identity h4 { grid-area: heading; }
.dg-account-overview-section--identity > .dg-button { grid-area: action; margin: 0; white-space: nowrap; }
.dg-account-overview-section--identity > .dg-meta-list {
  grid-area: meta;
  grid-template-columns: minmax(0,1fr) auto;
  gap: 10px;
}
.dg-account-overview-section--identity .dg-meta-item { border-bottom: 0; padding-bottom: 0; }
.dg-account-overview-divider { height: 1px; margin: 12px 0; background: #e2e8f0; }
.dg-account-overview-card .dg-meta-list { gap: 8px; }
.dg-account-overview-card .dg-meta-item { padding-bottom: 8px; }
.dg-account-overview-card .dg-meta-item:last-child { padding-bottom: 0; }
.dg-account-overview-card .dg-meta-item dt { font-size: 11px; }
.dg-account-overview-card .dg-meta-item dd { font-size: 12px; }
.dg-account-overview-card .dg-role-badge { padding: 4px 8px; font-size: 10px; }
.dg-account-overview-section--subscription { gap: 7px; }
.dg-subscription-summary--compact {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  align-items: center;
  gap: 9px;
}
.dg-account-overview-card .dg-subscription-summary--compact .dg-subscription-state {
  gap: 2px;
  min-width: 0;
  margin: 0;
  padding: 9px 10px;
  border-radius: 11px;
  font-size: 11px;
  line-height: 1.35;
}
.dg-account-overview-card .dg-subscription-summary--compact .dg-subscription-state strong { font-size: 12px; }
.dg-account-overview-card .dg-subscription-summary--compact .dg-button {
  min-height: 35px;
  margin: 0;
  padding: 7px 11px;
  border-radius: 10px;
  box-shadow: none;
  white-space: nowrap;
}
.dg-account-overview-card .dg-subscription-help { margin: 0; }
.dg-account-overview-section--signin { gap: 7px; }
.dg-account-overview-section--signin .dg-meta-list { gap: 0; }
.dg-account-overview-section--signin .dg-meta-item { border-bottom: 0; padding-bottom: 0; }
@media (max-width: 880px) {
  .dg-grid-sidebar { align-items: start; }
  .dg-grid-sidebar > aside > .dg-account-overview-card { height: auto; }
}
@media (max-width: 640px) {
  .dg-account-overview-head { padding: 18px 18px 7px; }
  .dg-account-overview-body { padding: 5px 18px 18px; }
  .dg-account-overview-section--identity { grid-template-columns: 1fr; grid-template-areas: 'heading' 'meta' 'action'; }
  .dg-account-overview-section--identity > .dg-button { width: 100%; }
  .dg-account-overview-section--identity > .dg-meta-list { grid-template-columns: 1fr; }
  .dg-subscription-summary--compact { grid-template-columns: 1fr; }
  .dg-account-overview-card .dg-subscription-summary--compact .dg-button { width: 100%; }
}
.dg-meta-list { display: grid; gap: 13px; margin: 0; }
.dg-meta-item { display: flex; justify-content: space-between; gap: 20px; border-bottom: 1px solid #edf2f7; padding-bottom: 13px; }
.dg-meta-item:last-child { border-bottom: 0; padding-bottom: 0; }
.dg-meta-item dt { color: var(--dg-muted); font-size: 12px; font-weight: 750; }
.dg-meta-item dd { margin: 0; color: var(--dg-ink); font-size: 13px; font-weight: 850; text-align: right; }
.dg-role-badge { display: inline-flex; align-items: center; border: 1px solid #99f6e4; border-radius: 999px; background: #f0fdfa; color: #0f766e; padding: 5px 9px; font-size: 11px; font-weight: 900; text-transform: capitalize; }
.dg-empty { display: grid; place-items: center; min-height: 260px; border: 1px dashed #cbd5e1; border-radius: 18px; background: #f8fafc; padding: 30px; text-align: center; }
.dg-empty-icon { width: 54px; height: 54px; display: grid; place-items: center; border-radius: 17px; background: #ccfbf1; color: #0f766e; font-size: 24px; }
.dg-empty h3 { margin: 16px 0 0; font-size: 19px; }
.dg-empty p { max-width: 560px; margin: 9px 0 0; color: var(--dg-muted); line-height: 1.6; }
.dg-table-wrap { overflow-x: auto; border: 1px solid var(--dg-line); border-radius: 16px; }
.dg-table { width: 100%; border-collapse: collapse; min-width: 680px; }
.dg-table th { background: #f8fafc; color: #64748b; padding: 12px 14px; font-size: 11px; letter-spacing: .06em; text-align: left; text-transform: uppercase; }
.dg-table td { border-top: 1px solid #e2e8f0; padding: 13px 14px; color: #334155; font-size: 13px; vertical-align: middle; }
.dg-table-actions { display: flex; justify-content: flex-end; gap: 7px; }
.dg-watchlist-table .dg-table-actions-heading { text-align: center; }
.dg-inline-select { min-height: 36px; border: 1px solid #cbd5e1; border-radius: 10px; background: #fff; padding: 6px 9px; color: #334155; font-size: 12px; font-weight: 750; }
.dg-loading { position: fixed; inset: 0; z-index: 1000; display: grid; place-items: center; padding: 24px; background: var(--dg-bg); color: #475569; }
.dg-loading-panel { width: min(100%, 360px); display: grid; justify-items: center; gap: 10px; border: 1px solid var(--dg-line); border-radius: 20px; background: rgba(255,255,255,.96); padding: 26px 24px; text-align: center; box-shadow: 0 20px 60px rgba(15,23,42,.12); }
.dg-loading-panel strong { color: var(--dg-ink); font-size: 16px; }
.dg-loading-panel span { color: var(--dg-muted); font-size: 13px; }
.dg-spinner { width: 28px; height: 28px; border: 3px solid #cbd5e1; border-top-color: var(--dg-accent-dark); border-radius: 50%; animation: dg-spin .8s linear infinite; }
@keyframes dg-spin { to { transform: rotate(360deg); } }

@media (max-width: 880px) {
  .dg-auth-page { grid-template-columns: 1fr; }
  .dg-auth-brand { min-height: auto; padding: 34px 24px; }
  .dg-auth-copy { margin-top: 55px; }
  .dg-auth-copy h1 { font-size: 38px; }
  .dg-auth-foot { display: none; }
  .dg-auth-panel { min-height: auto; padding: 28px 16px 42px; }
  .dg-grid-2, .dg-grid-sidebar { grid-template-columns: 1fr; }
}

@media (max-width: 640px) {
  .dg-form-row { grid-template-columns: 1fr; }
  .dg-auth-card { border-radius: 22px; padding: 24px 19px; }
  .dg-links { align-items: flex-start; flex-direction: column; }
  .dg-app-header-inner { width: min(100% - 20px, 1180px); min-height: 62px; gap: 10px; }
  .dg-app-main { width: min(100% - 20px, 1180px); padding-top: 24px; }
  .dg-app-brand > span:last-child { display: none; }
  .dg-app-nav a, .dg-app-nav button { min-height: 34px; padding: 8px 9px; font-size: 12px; }
  .dg-page-heading { flex-direction: column; }
}


/* Step 2 — organisation watchlist */
.dg-button--danger {
  border: 1px solid #fecaca;
  background: #fff1f2;
  color: #be123c;
}
.dg-button--danger:hover {
  border-color: #fda4af;
  background: #ffe4e6;
  color: #9f1239;
}
@media (max-width: 720px) {
  .dg-table-actions {
    align-items: stretch;
    flex-direction: column;
  }
  .dg-table-actions .dg-button {
    width: 100%;
  }
}


/* Step 3 — monitoring configuration and material-change history */
.dg-back-link { display:inline-flex; margin-bottom:18px; color:#475569; font-size:13px; font-weight:800; text-decoration:none; }
.dg-back-link:hover { color:var(--dg-ink); }
.dg-monitoring-heading { align-items:center; }
.dg-monitoring-summary { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; margin-bottom:20px; }
.dg-summary-tile { display:grid; gap:8px; min-height:106px; border:1px solid var(--dg-line); border-radius:19px; background:#fff; padding:18px; box-shadow:0 10px 26px rgba(15,23,42,.05); }
.dg-summary-tile span { color:var(--dg-muted); font-size:11px; font-weight:850; letter-spacing:.06em; text-transform:uppercase; }
.dg-summary-tile strong { align-self:end; color:var(--dg-ink); font-size:16px; }
.dg-monitoring-layout { display:grid; grid-template-columns:minmax(0,1.55fr) minmax(310px,.75fr); gap:20px; align-items:start; }
.dg-option-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.dg-option-grid--four { grid-template-columns:repeat(4,minmax(0,1fr)); }
.dg-option-card { position:relative; display:flex; gap:11px; min-height:112px; border:1px solid #cbd5e1; border-radius:16px; background:#f8fafc; padding:15px; cursor:pointer; }
.dg-option-card:has(input:checked) { border-color:#0f766e; background:#f0fdfa; box-shadow:0 0 0 3px rgba(20,184,166,.10); }
.dg-option-card input { width:17px; height:17px; margin-top:2px; accent-color:var(--dg-accent-dark); }
.dg-option-card span { display:grid; align-content:start; gap:6px; }
.dg-option-card strong { font-size:13px; line-height:1.35; }
.dg-option-card small { color:var(--dg-muted); font-size:11px; line-height:1.5; }
.dg-monitoring-check-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:11px; }
.dg-monitoring-check { display:flex; gap:11px; border:1px solid #e2e8f0; border-radius:14px; background:#fff; padding:13px; }
.dg-monitoring-check:has(input:checked) { border-color:#99f6e4; background:#f0fdfa; }
.dg-monitoring-check input { width:17px; height:17px; margin-top:2px; accent-color:var(--dg-accent-dark); }
.dg-monitoring-check span { display:grid; gap:4px; }
.dg-monitoring-check strong { font-size:13px; line-height:1.35; }
.dg-monitoring-check small { color:var(--dg-muted); font-size:11px; line-height:1.45; }
.dg-section-divider { height:1px; margin:22px 0; background:#e2e8f0; }
.dg-subheading { margin:0; font-size:15px; }
.dg-help-copy { margin:7px 0 14px; color:var(--dg-muted); font-size:12px; line-height:1.6; }
.dg-scope-options { border:1px solid #dbe4ee; border-radius:16px; background:#f8fafc; padding:15px; }
.dg-scope-title { margin:0 0 11px; color:#475569; font-size:11px; font-weight:850; letter-spacing:.06em; text-transform:uppercase; }
.dg-scope-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; max-height:330px; overflow:auto; }
.dg-scope-grid label { display:flex; align-items:flex-start; gap:8px; border:1px solid #e2e8f0; border-radius:11px; background:#fff; padding:9px; font-size:12px; line-height:1.4; }
.dg-scope-grid input { margin-top:2px; accent-color:var(--dg-accent-dark); }
.dg-scope-grid label span { display:grid; gap:2px; }
.dg-scope-grid label small { color:var(--dg-muted); }
.dg-advanced-card > summary { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:20px 24px; cursor:pointer; list-style:none; }
.dg-advanced-card > summary span:first-child { display:grid; gap:5px; }
.dg-advanced-card > summary small { color:var(--dg-muted); font-size:12px; font-weight:500; }
.dg-threshold-table-wrap { overflow:auto; border:1px solid var(--dg-line); border-radius:14px; }
.dg-threshold-table { width:100%; min-width:680px; border-collapse:collapse; }
.dg-threshold-table th { background:#f8fafc; color:#64748b; padding:11px; font-size:10px; letter-spacing:.06em; text-align:left; text-transform:uppercase; }
.dg-threshold-table td { border-top:1px solid #e2e8f0; padding:9px 11px; color:#475569; font-size:12px; }
.dg-threshold-table input { width:100px; min-height:36px; border:1px solid #cbd5e1; border-radius:9px; padding:6px 8px; }
.dg-form-actions { display:flex; align-items:center; justify-content:space-between; gap:18px; padding-top:22px; }
.dg-analysis-status { border:1px solid #bae6fd; border-radius:13px; background:#f0f9ff; color:#075985; padding:12px; font-size:12px; line-height:1.55; }
.dg-compact-empty { display:grid; gap:6px; border:1px dashed #cbd5e1; border-radius:14px; background:#f8fafc; padding:18px; text-align:center; }
.dg-compact-empty strong { font-size:13px; }
.dg-compact-empty span { color:var(--dg-muted); font-size:11px; line-height:1.5; }
.dg-timeline { display:grid; gap:0; }
.dg-timeline-item { display:grid; grid-template-columns:16px 1fr; gap:10px; padding:11px 0; border-bottom:1px solid #edf2f7; }
.dg-timeline-item:last-child { border-bottom:0; }
.dg-timeline-item > span { width:9px; height:9px; margin-top:4px; border:2px solid #0f766e; border-radius:50%; background:#ccfbf1; }
.dg-timeline-item div { display:grid; gap:4px; }
.dg-timeline-item strong { font-size:12px; }
.dg-timeline-item small { color:var(--dg-muted); font-size:10px; line-height:1.45; }
.dg-alert-list { display:grid; gap:12px; }
.dg-alert-card { border:1px solid #cbd5e1; border-left:4px solid #64748b; border-radius:15px; background:#fff; padding:14px; }
.dg-alert-card--high { border-left-color:#d97706; }
.dg-alert-card--critical { border-left-color:#be123c; }
.dg-alert-card--low { border-left-color:#0f766e; }
.dg-alert-card-head { display:flex; align-items:center; justify-content:space-between; gap:10px; color:var(--dg-muted); font-size:10px; }
.dg-alert-card h4 { margin:10px 0 0; font-size:14px; line-height:1.4; }
.dg-alert-card > p { margin:8px 0 0; color:#475569; font-size:12px; line-height:1.6; }
.dg-alert-interpretation { display:grid; gap:4px; margin-top:10px; border-radius:11px; background:#f8fafc; padding:10px; }
.dg-alert-interpretation strong { color:#334155; font-size:10px; text-transform:uppercase; letter-spacing:.05em; }
.dg-alert-interpretation span { color:#475569; font-size:11px; line-height:1.55; }
.dg-alert-actions { display:flex; gap:8px; margin-top:10px; }
.dg-alert-actions button { border:1px solid #cbd5e1; border-radius:9px; background:#fff; color:#334155; padding:6px 9px; font-size:10px; font-weight:800; cursor:pointer; }
.dg-status-badge { display:inline-flex; align-items:center; border:1px solid #cbd5e1; border-radius:999px; background:#f8fafc; color:#475569; padding:4px 8px; font-size:9px; font-weight:900; text-transform:capitalize; }
.dg-status-badge--success { border-color:#a7f3d0; background:#ecfdf5; color:#047857; }
.dg-status-badge--warning { border-color:#fde68a; background:#fffbeb; color:#a16207; }
.dg-status-badge--danger { border-color:#fecdd3; background:#fff1f2; color:#be123c; }
@media(max-width:1050px){.dg-monitoring-layout{grid-template-columns:1fr}.dg-monitoring-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.dg-option-grid--four{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.dg-monitoring-summary,.dg-option-grid,.dg-option-grid--four,.dg-monitoring-check-grid,.dg-scope-grid{grid-template-columns:1fr}.dg-form-actions{align-items:stretch;flex-direction:column}.dg-form-actions .dg-button{width:100%}.dg-monitoring-heading{align-items:flex-start}.dg-monitoring-heading .dg-button{width:100%}}


/* Step 3 refinement — preserve explanatory cards, simplify monitoring selection */
.dg-monitoring-selection-status {
  border:1px solid #cbd5e1;
  border-radius:12px;
  background:#f8fafc;
  padding:11px 13px;
  color:#475569;
  font-size:12px;
  font-weight:700;
}
.dg-monitoring-selection-status--recommended {
  border-color:#99f6e4;
  background:#f0fdfa;
  color:#0f766e;
}
.dg-monitoring-selection-status--warning {
  border-color:#fde68a;
  background:#fffbeb;
  color:#92400e;
}
.dg-monitoring-focus-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}
.dg-monitoring-focus-card {
  position:relative;
  display:flex;
  min-width:0;
  gap:11px;
  border:2px solid #d8e2ee;
  border-radius:16px;
  background:#fff;
  padding:16px;
  cursor:pointer;
  transition:border-color .15s ease,background .15s ease,box-shadow .15s ease;
}
.dg-monitoring-focus-card:hover {
  border-color:#94a3b8;
}
.dg-monitoring-focus-card:has(input:checked) {
  border-color:#2dd4bf;
  background:#f0fdfa;
  box-shadow:0 0 0 1px rgba(20,184,166,.08);
}
.dg-monitoring-focus-card:has(input:indeterminate) {
  border-color:#5eead4;
  background:#f8fffe;
}
.dg-monitoring-focus-card > input {
  flex:0 0 auto;
  width:17px;
  height:17px;
  margin-top:2px;
  accent-color:#0f766e;
}
.dg-monitoring-focus-card > span {
  display:block;
  min-width:0;
}
.dg-monitoring-focus-card strong {
  display:block;
  margin-bottom:7px;
  color:#0f172a;
  font-size:14px;
  line-height:1.35;
}
.dg-monitoring-focus-card small {
  display:block;
  color:#475569;
  font-size:11px;
  line-height:1.55;
}
.dg-monitoring-focus-card ul {
  display:grid;
  gap:4px;
  margin:11px 0 0;
  padding-left:17px;
  color:#64748b;
  font-size:10.5px;
  line-height:1.45;
}
.dg-monitoring-focus-card em {
  display:block;
  margin-top:11px;
  color:#475569;
  font-size:10px;
  font-style:normal;
  line-height:1.45;
}
.dg-monitoring-advanced-section {
  display:grid;
  gap:14px;
  border-bottom:1px solid #e2e8f0;
  padding-bottom:22px;
}
.dg-monitoring-advanced-section:last-child {
  border-bottom:0;
  padding-bottom:0;
}
.dg-monitoring-advanced-section h4 {
  margin:0 0 5px;
  color:#0f172a;
  font-size:14px;
}
.dg-monitoring-advanced-section p {
  margin:0;
  color:#64748b;
  font-size:12px;
  line-height:1.55;
}
.dg-monitoring-advanced-toggle {
  display:flex;
  gap:11px;
  border:1px solid #cbd5e1;
  border-radius:14px;
  background:#f8fafc;
  padding:14px;
  cursor:pointer;
}
.dg-monitoring-advanced-toggle:has(input:checked) {
  border-color:#5eead4;
  background:#f0fdfa;
}
.dg-monitoring-advanced-toggle input {
  width:17px;
  height:17px;
  margin-top:2px;
  accent-color:#0f766e;
}
.dg-monitoring-advanced-toggle span {
  display:grid;
  gap:5px;
}
.dg-monitoring-advanced-toggle strong {
  color:#0f172a;
  font-size:12px;
  line-height:1.4;
}
.dg-monitoring-advanced-toggle small {
  color:#64748b;
  font-size:11px;
  line-height:1.45;
}
.dg-monitoring-indicator-details {
  border:1px solid #e2e8f0;
  border-radius:14px;
  background:#fff;
}
.dg-monitoring-indicator-details > summary {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:14px 16px;
  cursor:pointer;
  list-style:none;
}
.dg-monitoring-indicator-details > summary::-webkit-details-marker {
  display:none;
}
.dg-monitoring-indicator-details > summary span:first-child {
  display:grid;
  gap:4px;
}
.dg-monitoring-indicator-details > summary strong {
  color:#0f172a;
  font-size:12px;
}
.dg-monitoring-indicator-details > summary small {
  color:#64748b;
  font-size:11px;
}
.dg-monitoring-indicator-details .dg-monitoring-check-grid {
  border-top:1px solid #e2e8f0;
  padding:12px;
}
.dg-monitoring-check-grid--compact .dg-monitoring-check {
  min-height:0;
  padding:11px 12px;
}
.dg-field textarea {
  width:100%;
  resize:vertical;
}
@media(max-width:980px) {
  .dg-monitoring-focus-grid {
    grid-template-columns:1fr;
  }
}


/* Step 3 layout and issue-selector refinement */
.dg-inline-advanced,
.dg-inline-thresholds {
  margin-top:18px;
  border-top:1px solid #dbe4ee;
  background:transparent;
}
.dg-inline-advanced > summary,
.dg-inline-thresholds > summary {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:18px 0 2px;
  cursor:pointer;
  list-style:none;
}
.dg-inline-advanced > summary::-webkit-details-marker,
.dg-inline-thresholds > summary::-webkit-details-marker {
  display:none;
}
.dg-inline-advanced > summary span:first-child,
.dg-inline-thresholds > summary span:first-child {
  display:grid;
  gap:5px;
}
.dg-inline-advanced > summary strong,
.dg-inline-thresholds > summary strong {
  color:#0f172a;
  font-size:13px;
}
.dg-inline-advanced > summary small,
.dg-inline-thresholds > summary small {
  color:#64748b;
  font-size:11px;
  font-weight:500;
  line-height:1.45;
}
.dg-inline-advanced > .dg-card-body,
.dg-inline-thresholds > .dg-card-body {
  padding:18px 0 0;
}
.dg-issue-selector {
  overflow:hidden;
  border:1px solid #cbd5e1;
  border-radius:14px;
  background:#fff;
}
.dg-issue-selector > summary {
  display:flex;
  align-items:center;
  justify-content:space-between;
  min-height:48px;
  padding:12px 15px;
  cursor:pointer;
  list-style:none;
  color:#0f172a;
  font-size:12px;
  font-weight:800;
}
.dg-issue-selector > summary::after {
  content:'⌄';
  color:#475569;
  font-size:13px;
}
.dg-issue-selector[open] > summary::after {
  transform:rotate(180deg);
}
.dg-issue-selector > summary::-webkit-details-marker {
  display:none;
}
.dg-issue-selection-options {
  max-height:390px;
  overflow:auto;
  border-top:1px solid #e2e8f0;
  padding:10px;
}
.dg-issue-selection-group {
  border-bottom:1px solid #e2e8f0;
  padding:8px 4px 12px;
}
.dg-issue-selection-group:last-child {
  border-bottom:0;
}
.dg-issue-parent-option {
  display:flex;
  gap:10px;
  border-radius:10px;
  padding:9px;
  cursor:pointer;
}
.dg-issue-parent-option:hover,
.dg-issue-child-options label:hover {
  background:#f8fafc;
}
.dg-issue-parent-option input,
.dg-issue-child-options input {
  flex:0 0 auto;
  width:16px;
  height:16px;
  margin-top:2px;
  accent-color:#0f766e;
}
.dg-issue-parent-option span {
  display:grid;
  gap:3px;
}
.dg-issue-parent-option strong {
  color:#0f172a;
  font-size:12px;
  line-height:1.4;
}
.dg-issue-parent-option small {
  color:#64748b;
  font-size:10.5px;
  line-height:1.4;
}
.dg-issue-child-options {
  display:grid;
  gap:2px;
  margin-left:29px;
  padding-top:3px;
}
.dg-issue-child-options label {
  display:flex;
  align-items:flex-start;
  gap:9px;
  border-radius:9px;
  padding:7px 9px;
  color:#475569;
  cursor:pointer;
  font-size:11px;
  line-height:1.4;
}
.dg-issue-selection-empty {
  padding:18px;
  color:#64748b;
  font-size:12px;
  text-align:center;
}


/* Step 3 threshold and issue-list correction */
.dg-inline-thresholds {
  grid-column:1 / -1;
  width:100%;
  min-width:0;
}
.dg-inline-thresholds > .dg-card-body {
  width:100%;
  min-width:0;
}
.dg-threshold-grid {
  width:100%;
  overflow:hidden;
  border:1px solid #dbe4ee;
  border-radius:14px;
  background:#fff;
}

.dg-threshold-grid--one-period .dg-threshold-grid__header,
.dg-threshold-grid--one-period .dg-threshold-grid__row {
  grid-template-columns:minmax(180px,2fr) minmax(120px,1fr) minmax(105px,.9fr);
}
.dg-threshold-guidance,
.dg-threshold-empty {
  display:grid;
  gap:4px;
  margin-top:10px;
  border:1px solid #dbe4ee;
  border-radius:11px;
  background:#f8fafc;
  padding:10px 12px;
  color:#475569;
  font-size:11px;
  line-height:1.45;
}
.dg-threshold-guidance strong,
.dg-threshold-empty strong {
  color:#0f172a;
  font-size:11.5px;
}
.dg-threshold-guidance {
  border-color:#ccfbf1;
  background:#f0fdfa;
}
.dg-threshold-grid__header,
.dg-threshold-grid__row {
  display:grid;
  grid-template-columns:minmax(180px,2fr) minmax(100px,1fr) minmax(100px,1fr) minmax(105px,.9fr);
  align-items:center;
}
.dg-threshold-grid__header {
  background:#f8fafc;
  color:#64748b;
  font-size:10px;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.dg-threshold-grid__header > div,
.dg-threshold-grid__row > div,
.dg-threshold-grid__row > label {
  min-width:0;
  padding:11px 12px;
}
.dg-threshold-grid__row {
  border-top:1px solid #e2e8f0;
  color:#475569;
  font-size:12px;
}
.dg-threshold-grid__indicator strong {
  display:block;
  color:#0f172a;
  font-size:11.5px;
  line-height:1.4;
}
.dg-threshold-grid__value {
  display:grid;
  gap:5px;
}
.dg-threshold-grid__value > span,
.dg-threshold-grid__unit > span {
  display:none;
  color:#64748b;
  font-size:9px;
  font-weight:800;
  letter-spacing:.05em;
  text-transform:uppercase;
}
.dg-threshold-grid__value input {
  width:100%;
  min-width:0;
  min-height:38px;
  border:1px solid #cbd5e1;
  border-radius:9px;
  background:#fff;
  padding:7px 9px;
  color:#0f172a;
  font:inherit;
}
.dg-threshold-grid__unit strong {
  display:block;
  overflow-wrap:anywhere;
  color:#475569;
  font-size:11px;
  font-weight:700;
  line-height:1.35;
}
.dg-issue-selection-state {
  padding:18px;
  color:#64748b;
  font-size:12px;
  line-height:1.55;
  text-align:center;
}
.dg-issue-selection-state--loading {
  background:#f8fafc;
  color:#475569;
}
.dg-issue-selection-state--warning {
  background:#fffbeb;
  color:#92400e;
}
.dg-issue-selection-state--error {
  background:#fff1f2;
  color:#be123c;
}
.dg-issue-child-empty {
  margin-left:29px;
  padding:7px 9px;
  color:#94a3b8;
  font-size:10.5px;
  font-style:italic;
  line-height:1.4;
}

@media (max-width:760px) {
  .dg-threshold-grid__header {
    display:none;
  }
  .dg-threshold-grid__row,
  .dg-threshold-grid--one-period .dg-threshold-grid__row {
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:0;
    padding:4px 0;
  }
  .dg-threshold-grid__indicator {
    grid-column:1 / -1;
    background:#f8fafc;
  }
  .dg-threshold-grid__unit {
    grid-column:1 / -1;
    border-top:1px dashed #e2e8f0;
  }
  .dg-threshold-grid__value > span,
  .dg-threshold-grid__unit > span {
    display:block;
    margin-bottom:5px;
  }
}

@media (max-width:460px) {
  .dg-threshold-grid__row,
  .dg-threshold-grid--one-period .dg-threshold-grid__row {
    grid-template-columns:1fr;
  }
  .dg-threshold-grid__indicator,
  .dg-threshold-grid__unit {
    grid-column:auto;
  }
}


/* Step 3 hierarchy and direct issue-catalogue refinement */
.dg-inline-advanced > summary strong {
  color:#0f172a;
  font-size:13.5px;
  font-weight:850;
}
.dg-inline-advanced .dg-monitoring-advanced-section > div:first-child h4 {
  color:#334155;
  font-size:12.5px;
  font-weight:650;
  letter-spacing:0;
}
.dg-inline-advanced .dg-field > label {
  color:#475569;
  font-size:11.5px;
  font-weight:650;
}




/* Step 3 — genuine previous-month historical comparison */
.dg-historical-comparison {
  display:grid;
  gap:12px;
  border:1px solid #bae6fd;
  border-radius:14px;
  background:#f0f9ff;
  padding:13px;
}
.dg-historical-comparison[hidden] {
  display:none;
}
.dg-historical-comparison > div {
  display:grid;
  gap:5px;
}
.dg-historical-comparison strong {
  color:#0c4a6e;
  font-size:12px;
  line-height:1.4;
}
.dg-historical-comparison span {
  color:#475569;
  font-size:11px;
  line-height:1.5;
}
.dg-historical-comparison--complete {
  border-color:#a7f3d0;
  background:#ecfdf5;
}
.dg-historical-comparison--complete strong {
  color:#065f46;
}


/* Step 3 — refined material-change alert presentation */
.dg-alert-comparison-period {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:7px;
  margin:8px 0 10px;
  color:#475569;
  font-size:11px;
  line-height:1.45;
}
.dg-alert-comparison-period strong {
  color:#334155;
  font-size:10px;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.dg-alert-comparison-period small {
  flex-basis:100%;
  color:#64748b;
  font-size:10.5px;
  line-height:1.4;
}
.dg-alert-card-head > span {
  color:#64748b;
  font-size:10.5px;
}


/* Step 3 — professional alert status workflow */
.dg-alert-review-record {
  display:grid;
  gap:8px;
  margin-top:10px;
  border:1px solid #e2e8f0;
  border-radius:11px;
  background:#fff;
  padding:10px;
}
.dg-alert-review-record > div {
  display:grid;
  gap:3px;
}
.dg-alert-review-record strong {
  color:#334155;
  font-size:10px;
  letter-spacing:.05em;
  text-transform:uppercase;
}
.dg-alert-review-record span {
  color:#475569;
  font-size:11px;
  line-height:1.5;
}
.dg-alert-status-dialog {
  width:min(560px,calc(100vw - 28px));
  max-width:560px;
  border:0;
  border-radius:18px;
  background:transparent;
  padding:0;
}
.dg-alert-status-dialog::backdrop {
  background:rgba(15,23,42,.58);
  backdrop-filter:blur(2px);
}
.dg-alert-status-dialog__panel {
  display:grid;
  gap:18px;
  border:1px solid #dbe4ee;
  border-radius:18px;
  background:#fff;
  padding:20px;
  box-shadow:0 24px 70px rgba(15,23,42,.28);
}
.dg-alert-status-dialog__head {
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
}
.dg-alert-status-dialog__head > div {
  display:grid;
  gap:4px;
}
.dg-alert-status-dialog__head span {
  color:#64748b;
  font-size:10px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.dg-alert-status-dialog__head h3 {
  margin:0;
  color:#0f172a;
  font-size:18px;
}
.dg-alert-status-dialog__panel > p {
  margin:0;
  color:#475569;
  font-size:12px;
  line-height:1.55;
}
.dg-alert-status-dialog__close {
  display:grid;
  width:34px;
  height:34px;
  place-items:center;
  border:1px solid #cbd5e1;
  border-radius:10px;
  background:#fff;
  color:#475569;
  font-size:20px;
  cursor:pointer;
}
.dg-alert-status-dialog__actions {
  display:flex;
  justify-content:flex-end;
  gap:10px;
}
@media(max-width:520px) {
  .dg-alert-status-dialog__actions {
    align-items:stretch;
    flex-direction:column-reverse;
  }
  .dg-alert-status-dialog__actions .dg-button {
    width:100%;
  }
}


/* Step 4 — automated monitoring and delivery */
.dg-automation-settings {
  display:grid;
  gap:14px;
  border-top:1px solid #e2e8f0;
  padding-top:18px;
}
.dg-automation-settings h4 {
  margin:0 0 5px;
  color:#0f172a;
  font-size:13px;
}
.dg-automation-settings > div:first-child p {
  margin:0;
  color:#64748b;
  font-size:11px;
  line-height:1.55;
}
.dg-automation-status {
  display:grid;
  gap:12px;
}
.dg-automation-status > div {
  display:grid;
  grid-template-columns:minmax(115px,.9fr) minmax(0,1.2fr);
  align-items:center;
  gap:12px;
  border-bottom:1px solid #e2e8f0;
  padding-bottom:10px;
}
.dg-automation-status > div:last-child {
  border-bottom:0;
  padding-bottom:0;
}
.dg-automation-status span {
  color:#64748b;
  font-size:10px;
  font-weight:800;
  letter-spacing:.05em;
  text-transform:uppercase;
}
.dg-automation-status strong {
  min-width:0;
  color:#0f172a;
  font-size:11px;
  line-height:1.45;
  text-align:right;
}
.dg-automation-status small {
  grid-column:1 / -1;
  color:#64748b;
  font-size:10.5px;
  line-height:1.45;
}
.dg-automation-status__wide {
  grid-template-columns:1fr !important;
}
.dg-automation-status__wide strong {
  text-align:left;
}
@media(max-width:520px) {
  .dg-automation-status > div {
    grid-template-columns:1fr;
  }
  .dg-automation-status strong {
    text-align:left;
  }
}

/* Step 4.1 — simplified monitoring workspace */
.dg-monitoring-status-strip {
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:14px;
  margin-bottom:20px;
  border:1px solid #99f6e4;
  border-radius:18px;
  background:linear-gradient(135deg,#f0fdfa 0%,#ffffff 72%);
  padding:15px 17px;
  box-shadow:0 10px 26px rgba(15,23,42,.05);
}
.dg-monitoring-status-strip__icon {
  display:grid;
  width:38px;
  height:38px;
  place-items:center;
  border-radius:12px;
  background:#0f766e;
  color:#fff;
  font-size:18px;
  font-weight:900;
}
.dg-monitoring-status-strip__icon.is-paused {
  background:#64748b;
}
.dg-monitoring-status-strip__copy {
  min-width:0;
}
.dg-monitoring-status-strip__title-row {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px;
}
.dg-monitoring-status-strip__title-row > strong {
  color:#0f172a;
  font-size:14px;
}
.dg-monitoring-status-strip__copy p {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:5px;
  margin:5px 0 0;
  color:#64748b;
  font-size:11.5px;
  line-height:1.5;
}
.dg-monitoring-status-strip__copy p strong {
  color:#334155;
  font-weight:800;
}
.dg-button--compact {
  min-height:36px;
  padding:8px 12px;
  white-space:nowrap;
}

.dg-monitoring-layout {
  grid-template-columns:minmax(0,1.42fr) minmax(340px,.78fr);
  gap:22px;
}
.dg-monitoring-settings-card {
  overflow:hidden;
}
.dg-monitoring-settings-card__head {
  border-bottom:1px solid #e2e8f0;
  background:#f8fafc;
  padding:24px 26px 20px;
}
.dg-monitoring-settings-card__head .dg-eyebrow {
  margin:0 0 6px;
}
.dg-monitoring-settings-card__head h2 {
  margin:0;
  color:#0f172a;
  font-size:21px;
  letter-spacing:-.025em;
}
.dg-monitoring-settings-card__head > p:last-child {
  max-width:700px;
  margin:7px 0 0;
  color:#64748b;
  font-size:12.5px;
  line-height:1.55;
}
.dg-monitoring-settings-section + .dg-monitoring-settings-section {
  border-top:1px solid #e2e8f0;
}
.dg-monitoring-settings-section > .dg-card-head {
  position:relative;
  padding:23px 26px 12px 70px;
}
.dg-monitoring-settings-section > .dg-card-body {
  padding:8px 26px 26px;
}
.dg-settings-step {
  position:absolute;
  top:22px;
  left:26px;
  display:grid;
  width:28px;
  height:28px;
  place-items:center;
  border:1px solid #99f6e4;
  border-radius:9px;
  background:#f0fdfa;
  color:#0f766e;
  font-size:11px;
  font-weight:900;
}
.dg-monitoring-settings-footer {
  border-top:1px solid #e2e8f0;
  background:#f8fafc;
}
.dg-monitoring-settings-footer .dg-form-actions {
  padding:18px 26px;
}

.dg-monitoring-alert-column {
  min-width:0;
}
.dg-alert-panel {
  overflow:hidden;
}
.dg-alert-panel__head {
  display:grid;
  gap:16px;
  padding-bottom:16px;
}
.dg-alert-tabs {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:7px;
  border-radius:12px;
  background:#f1f5f9;
  padding:4px;
}
.dg-alert-tab {
  display:flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  min-height:36px;
  border:0;
  border-radius:9px;
  background:transparent;
  color:#64748b;
  font-size:11px;
  font-weight:850;
  cursor:pointer;
}
.dg-alert-tab span {
  display:grid;
  min-width:20px;
  height:20px;
  place-items:center;
  border-radius:999px;
  background:#e2e8f0;
  color:#475569;
  font-size:9px;
}
.dg-alert-tab.is-active {
  background:#fff;
  color:#0f172a;
  box-shadow:0 4px 12px rgba(15,23,42,.08);
}
.dg-alert-tab.is-active span {
  background:#ccfbf1;
  color:#0f766e;
}
.dg-alert-panel__body {
  padding-top:0;
}
.dg-alert-panel__tools {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  border-top:1px solid #e2e8f0;
  background:#f8fafc;
  padding:13px 18px;
}
.dg-text-button {
  border:0;
  background:transparent;
  color:#0f766e;
  padding:3px 0;
  font-size:11px;
  font-weight:850;
  cursor:pointer;
}
.dg-text-button:hover {
  text-decoration:underline;
}

.dg-alert-card-summary {
  margin-top:9px !important;
  color:#475569;
  font-size:11.5px !important;
  line-height:1.55 !important;
}
.dg-alert-card-details {
  margin-top:11px;
  border-top:1px solid #e2e8f0;
}
.dg-alert-card-details > summary {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:10px 0 0;
  color:#0f766e;
  font-size:10.5px;
  font-weight:850;
  cursor:pointer;
  list-style:none;
}
.dg-alert-card-details > summary::-webkit-details-marker {
  display:none;
}
.dg-alert-card-details > summary span:last-child {
  transition:transform .15s ease;
}
.dg-alert-card-details[open] > summary span:last-child {
  transform:rotate(180deg);
}
.dg-alert-card-details__body {
  display:grid;
  gap:10px;
  padding-top:10px;
}
.dg-alert-detail-block {
  display:grid;
  gap:4px;
}
.dg-alert-detail-block > strong {
  color:#334155;
  font-size:10px;
  letter-spacing:.05em;
  text-transform:uppercase;
}
.dg-alert-detail-block > p {
  margin:0;
  color:#475569;
  font-size:11px;
  line-height:1.55;
}

.dg-monitoring-dialog {
  width:min(560px,calc(100vw - 28px));
  max-width:560px;
  border:0;
  border-radius:20px;
  background:transparent;
  padding:0;
}
.dg-monitoring-dialog--wide {
  width:min(760px,calc(100vw - 28px));
  max-width:760px;
}
.dg-monitoring-dialog::backdrop {
  background:rgba(15,23,42,.58);
  backdrop-filter:blur(2px);
}
.dg-monitoring-dialog__panel {
  max-height:min(86vh,840px);
  overflow:auto;
  border:1px solid #dbe4ee;
  border-radius:20px;
  background:#fff;
  padding:21px;
  box-shadow:0 24px 70px rgba(15,23,42,.28);
}
.dg-monitoring-dialog__head {
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  margin-bottom:18px;
  border-bottom:1px solid #e2e8f0;
  padding-bottom:16px;
}
.dg-monitoring-dialog__head > div {
  min-width:0;
}
.dg-monitoring-dialog__head .dg-eyebrow {
  margin:0 0 5px;
}
.dg-monitoring-dialog__head h3 {
  margin:0;
  color:#0f172a;
  font-size:19px;
}
.dg-monitoring-dialog__head p:last-child {
  margin:7px 0 0;
  color:#64748b;
  font-size:12px;
  line-height:1.55;
}
.dg-monitoring-dialog__close {
  display:grid;
  flex:0 0 auto;
  width:34px;
  height:34px;
  place-items:center;
  border:1px solid #cbd5e1;
  border-radius:10px;
  background:#fff;
  color:#475569;
  font-size:20px;
  cursor:pointer;
}
.dg-monitoring-actions-body {
  display:grid;
  gap:18px;
}
.dg-manual-tools-list {
  display:grid;
  gap:14px;
}
.dg-manual-tool-card {
  display:grid;
  gap:14px;
  border:1px solid #dbe4ef;
  border-radius:16px;
  background:#fff;
  padding:16px;
}
.dg-manual-tool-card--preview {
  border-color:#cbd5e1;
  background:#f8fafc;
}
.dg-manual-tool-card--live {
  border-color:#bae6fd;
  background:#f0f9ff;
}
.dg-manual-tool-card--admin {
  border-color:#a7f3d0;
  background:#ecfdf5;
}
.dg-manual-tool-card[hidden] {
  display:none;
}
.dg-manual-tool-card__content {
  display:grid;
  gap:6px;
}
.dg-manual-tool-card__content h4 {
  margin:0;
  color:#0f172a;
  font-size:15px;
  line-height:1.35;
}
.dg-manual-tool-card__content p {
  margin:0;
  color:#475569;
  font-size:11.5px;
  line-height:1.55;
}
.dg-manual-tool-badge {
  width:max-content;
  max-width:100%;
  border:1px solid transparent;
  border-radius:999px;
  padding:4px 8px;
  font-size:9.5px;
  font-weight:800;
  line-height:1.2;
  letter-spacing:.01em;
}
.dg-manual-tool-badge--preview {
  border-color:#cbd5e1;
  background:#fff;
  color:#475569;
}
.dg-manual-tool-badge--live {
  border-color:#7dd3fc;
  background:#e0f2fe;
  color:#075985;
}
.dg-manual-tool-badge--admin {
  border-color:#6ee7b7;
  background:#d1fae5;
  color:#065f46;
}
.dg-manual-tool-card .dg-analysis-status {
  margin:0;
}
.dg-monitoring-action-preview {
  border-top:1px solid #e2e8f0;
  padding-top:18px;
}
.dg-monitoring-action-preview[hidden] {
  display:none;
}
.dg-monitoring-action-preview .dg-card-head {
  padding:0 0 10px;
}
.dg-monitoring-action-preview .dg-card-body {
  padding:0;
}

@media(max-width:1050px) {
  .dg-monitoring-layout {
    grid-template-columns:1fr;
  }
}
@media(max-width:700px) {
  .dg-monitoring-status-strip {
    grid-template-columns:auto minmax(0,1fr);
  }
  .dg-monitoring-status-strip .dg-button {
    grid-column:1 / -1;
    width:100%;
  }
  .dg-monitoring-settings-section > .dg-card-head {
    padding-right:20px;
    padding-left:62px;
  }
  .dg-monitoring-settings-section > .dg-card-body {
    padding-right:20px;
    padding-left:20px;
  }
  .dg-settings-step {
    left:20px;
  }
  .dg-monitoring-settings-card__head,
  .dg-monitoring-settings-footer .dg-form-actions {
    padding-right:20px;
    padding-left:20px;
  }
  .dg-alert-panel__tools {
    align-items:flex-start;
    flex-direction:column;
  }
  .dg-monitoring-dialog__panel {
    padding:17px;
  }
}

/* Step 4.2 — schedule details and organisation timezone */
.dg-schedule-timezone-settings {
  display:grid;
  gap:14px;
  margin-top:18px;
  border-top:1px solid #e2e8f0;
  padding-top:18px;
}
.dg-schedule-timezone-settings h4 {
  margin:0 0 5px;
  color:#0f172a;
  font-size:14px;
}
.dg-schedule-timezone-settings > div:first-child > p {
  margin:0;
  color:#64748b;
  font-size:11.5px;
  line-height:1.55;
}
.dg-schedule-timezone-actions {
  display:flex;
  justify-content:flex-end;
}
.dg-schedule-timezone-actions .dg-button {
  min-width:190px;
}
.dg-automation-status__risk-period {
  border-radius:12px;
  background:#f8fafc;
  padding:11px 12px;
}
@media(max-width:520px) {
  .dg-schedule-timezone-actions .dg-button {
    width:100%;
    min-width:0;
  }
}

/* Step 4 — clarified manual monitoring tools */
.dg-historical-comparison .dg-manual-tool-badge--admin {
  color:#065f46;
  font-size:9.5px;
  font-weight:800;
  line-height:1.2;
}

/* Step 4.3 — update action clarity and rolling risk-position context */

.dg-monitoring-save-copy {
  display:grid;
  gap:6px;
  max-width:650px;
}
.dg-monitoring-save-copy .dg-field-help {
  margin:0;
}
.dg-alert-comparison-period--risk {
  margin-top:-3px;
  border-left:2px solid #99f6e4;
  padding-left:8px;
}

/* Step 4.5 — compact manual monitoring tools */
.dg-manual-tools-list {
  gap:0;
  border:1px solid #dbe4ef;
  border-radius:14px;
  overflow:hidden;
  background:#fff;
}
.dg-manual-tool-card,
.dg-manual-tool-card--preview,
.dg-manual-tool-card--live,
.dg-manual-tool-card--admin {
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:14px;
  border:0;
  border-bottom:1px solid #e2e8f0;
  border-radius:0;
  background:#fff;
  padding:14px 16px;
}
.dg-manual-tool-card:last-child {
  border-bottom:0;
}
.dg-manual-tool-card__content {
  gap:5px;
  min-width:0;
}
.dg-manual-tool-title-row {
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:7px;
}
.dg-manual-tool-title-row h4 {
  font-size:14px;
}
.dg-manual-tool-card__content p {
  font-size:11px;
  line-height:1.45;
}
.dg-manual-tool-badge {
  order:2;
  padding:3px 7px;
  font-size:8.5px;
}
.dg-manual-tool-card .dg-analysis-status {
  margin:1px 0 0;
  border:0;
  border-radius:0;
  background:transparent;
  padding:0;
  color:#0f766e;
  font-size:10.5px;
  line-height:1.4;
}
.dg-manual-tool-action {
  width:auto;
  min-width:128px;
  padding:10px 14px;
  white-space:nowrap;
}
.dg-monitoring-actions-body {
  gap:14px;
}
@media(max-width:620px) {
  .dg-manual-tool-card,
  .dg-manual-tool-card--preview,
  .dg-manual-tool-card--live,
  .dg-manual-tool-card--admin {
    grid-template-columns:1fr;
    gap:10px;
    padding:13px;
  }
  .dg-manual-tool-action {
    width:100%;
    min-width:0;
  }
}

/* Step 4 — concise material-change alerts with data-derived contributors */
.dg-alert-contributor-sections {
  display:grid;
  gap:12px;
}
.dg-alert-contributors {
  display:grid;
  gap:7px;
}
.dg-alert-contributors > strong {
  color:#334155;
  font-size:10px;
  letter-spacing:.05em;
  text-transform:uppercase;
}
.dg-alert-contributor-list {
  display:grid;
  gap:6px;
}
.dg-alert-contributor-item {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:start;
  gap:10px;
  border:1px solid #e2e8f0;
  border-radius:10px;
  background:#f8fafc;
  padding:8px 9px;
}
.dg-alert-contributor-item > div {
  display:grid;
  gap:2px;
  min-width:0;
}
.dg-alert-contributor-item span {
  color:#334155;
  font-size:11px;
  font-weight:750;
  line-height:1.4;
}
.dg-alert-contributor-item small {
  color:#64748b;
  font-size:10px;
  line-height:1.4;
}
.dg-alert-contributor-item b {
  color:#0f172a;
  font-size:11px;
  white-space:nowrap;
}
.dg-alert-contributor-caution,
.dg-alert-contributor-note,
.dg-alert-methodology-note,
.dg-alert-review-focus {
  margin:0;
  border-radius:10px;
  padding:9px 10px;
  color:#475569;
  font-size:10.5px;
  line-height:1.5;
}
.dg-alert-contributor-caution,
.dg-alert-contributor-note {
  border:1px solid #e2e8f0;
  background:#f8fafc;
}
.dg-alert-methodology-note {
  border:1px solid #dbeafe;
  background:#eff6ff;
}
.dg-alert-review-focus {
  border:1px solid #ccfbf1;
  background:#f0fdfa;
}
.dg-alert-methodology-note strong,
.dg-alert-review-focus strong {
  color:#334155;
}
@media (max-width:640px) {
  .dg-alert-contributor-item {
    grid-template-columns:1fr;
    gap:4px;
  }
  .dg-alert-contributor-item b {
    white-space:normal;
  }
}

/* Step 5.2 — automation activity and delivery audit trail */
.dg-automation-activity-section {
  display:grid;
  gap:16px;
  margin-top:18px;
  border-top:1px solid #e2e8f0;
  padding-top:18px;
}
.dg-automation-activity-head,
.dg-automation-activity-group__head {
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
}
.dg-automation-activity-head h4,
.dg-automation-activity-group__head h5 {
  margin:0 0 5px;
  color:#0f172a;
}
.dg-automation-activity-head h4 {
  font-size:14px;
}
.dg-automation-activity-group__head h5 {
  font-size:12.5px;
}
.dg-automation-activity-head p,
.dg-automation-activity-group__head p {
  margin:0;
  color:#64748b;
  font-size:11px;
  line-height:1.5;
}
.dg-automation-activity-summary {
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:8px;
}
.dg-automation-activity-summary > div {
  display:grid;
  gap:5px;
  min-height:70px;
  border:1px solid #dbe4ee;
  border-radius:12px;
  background:#f8fafc;
  padding:10px;
}
.dg-automation-activity-summary span {
  color:#64748b;
  font-size:9px;
  font-weight:800;
  letter-spacing:.04em;
  line-height:1.35;
  text-transform:uppercase;
}
.dg-automation-activity-summary strong {
  color:#0f172a;
  font-size:20px;
  line-height:1;
}
.dg-automation-activity-note {
  margin:7px 0 0;
  color:#64748b;
  font-size:10px;
}
.dg-automation-activity-group {
  display:grid;
  gap:10px;
}
.dg-automation-record-list {
  display:grid;
  gap:10px;
}
.dg-automation-record {
  display:grid;
  gap:9px;
  border:1px solid #dbe4ee;
  border-left-width:4px;
  border-radius:14px;
  background:#fff;
  padding:12px 13px;
}
.dg-automation-record--success { border-left-color:#0f9f7f; }
.dg-automation-record--warning { border-left-color:#f59e0b; }
.dg-automation-record--danger { border-left-color:#dc2626; }
.dg-automation-record--neutral { border-left-color:#94a3b8; }
.dg-automation-record__head {
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
}
.dg-automation-record__head > div {
  display:grid;
  gap:3px;
  min-width:0;
}
.dg-automation-record__head strong {
  color:#0f172a;
  font-size:12px;
  line-height:1.35;
}
.dg-automation-record__head small {
  overflow-wrap:anywhere;
  color:#64748b;
  font-size:10px;
  line-height:1.4;
}
.dg-automation-record__meta {
  display:flex;
  flex-wrap:wrap;
  justify-content:space-between;
  gap:6px 14px;
  color:#475569;
  font-size:10.5px;
  line-height:1.45;
}
.dg-automation-record__result,
.dg-automation-record__message {
  margin:0;
  border-radius:9px;
  padding:8px 9px;
  font-size:10.5px;
  line-height:1.45;
}
.dg-automation-record__result {
  background:#f0fdfa;
  color:#115e59;
}
.dg-automation-record__message {
  background:#fff7ed;
  color:#9a3412;
}
.dg-automation-record__code {
  color:#64748b;
  font-size:9.5px;
}
.dg-automation-attempts {
  border-top:1px solid #e2e8f0;
  padding-top:8px;
}
.dg-automation-attempts > summary {
  color:#0f766e;
  cursor:pointer;
  font-size:10.5px;
  font-weight:800;
}
.dg-automation-attempts__list {
  display:grid;
  gap:7px;
  margin-top:8px;
}
.dg-automation-attempt-row {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:4px 10px;
  border-radius:10px;
  background:#f8fafc;
  padding:8px 9px;
}
.dg-automation-attempt-row > div {
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:7px;
}
.dg-automation-attempt-row strong {
  color:#334155;
  font-size:10.5px;
}
.dg-automation-attempt-row small {
  color:#64748b;
  font-size:9.5px;
  text-align:right;
}
.dg-automation-attempt-row p {
  grid-column:1 / -1;
  margin:0;
  color:#475569;
  font-size:10px;
  line-height:1.45;
}
.dg-automation-failure-guide {
  border:1px solid #dbe4ee;
  border-radius:12px;
  background:#f8fafc;
  padding:11px 12px;
}
.dg-automation-failure-guide summary {
  color:#0f172a;
  cursor:pointer;
  font-size:11px;
  font-weight:800;
}
.dg-automation-failure-guide > div {
  display:grid;
  gap:7px;
  margin-top:9px;
}
.dg-automation-failure-guide p {
  margin:0;
  color:#475569;
  font-size:10.5px;
  line-height:1.5;
}
@media(max-width:700px) {
  .dg-automation-activity-summary {
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media(max-width:520px) {
  .dg-automation-activity-head,
  .dg-automation-activity-group__head,
  .dg-automation-record__head {
    align-items:stretch;
    flex-direction:column;
  }
  .dg-automation-activity-head .dg-button {
    width:100%;
  }
  .dg-automation-record__meta {
    display:grid;
    justify-content:stretch;
  }
  .dg-automation-attempt-row {
    grid-template-columns:1fr;
  }
  .dg-automation-attempt-row small {
    text-align:left;
  }
}
.dg-automation-activity-group[hidden] {
  display:none;
}

/* Step 5.2 — safe automation diagnostics */
.dg-automation-diagnostics {
  display:grid;
  gap:10px;
  border:1px solid #99f6e4;
  border-radius:14px;
  background:#f0fdfa;
  padding:13px;
}
.dg-automation-diagnostics__head {
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
}
.dg-automation-diagnostics__head h5 {
  margin:0 0 5px;
  color:#0f172a;
  font-size:12.5px;
}
.dg-automation-diagnostics__head p {
  margin:0;
  color:#475569;
  font-size:10.5px;
  line-height:1.5;
}
.dg-diagnostic-safety-grid {
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:7px;
}
.dg-diagnostic-safety-grid span {
  display:grid;
  gap:4px;
  border:1px solid #ccfbf1;
  border-radius:9px;
  background:#fff;
  padding:8px;
  color:#64748b;
  font-size:9px;
  font-weight:700;
  text-transform:uppercase;
}
.dg-diagnostic-safety-grid strong {
  color:#0f766e;
  font-size:14px;
}
@media(max-width:700px) {
  .dg-diagnostic-safety-grid {
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media(max-width:520px) {
  .dg-automation-diagnostics__head {
    align-items:stretch;
    flex-direction:column;
  }
  .dg-automation-diagnostics__head .dg-button {
    width:100%;
  }
}
.dg-automation-diagnostics[hidden] {
  display:none;
}

/* Step 5.2 — simplified client monitoring status */
.dg-client-monitoring-section {
  display:grid;
  gap:16px;
  margin-top:18px;
  border-top:1px solid #e2e8f0;
  padding-top:18px;
}
.dg-client-monitoring-notice {
  display:grid;
  gap:4px;
  border:1px solid #dbe4ee;
  border-left-width:4px;
  border-radius:12px;
  padding:11px 12px;
}
.dg-client-monitoring-notice strong {
  color:#0f172a;
  font-size:11.5px;
}
.dg-client-monitoring-notice span {
  color:#475569;
  font-size:10.5px;
  line-height:1.5;
}
.dg-client-monitoring-notice--warning {
  border-left-color:#f59e0b;
  background:#fffbeb;
}
.dg-client-monitoring-notice--danger {
  border-left-color:#dc2626;
  background:#fef2f2;
}
.dg-client-monitoring-notice--success {
  border-left-color:#0f9f7f;
  background:#f0fdfa;
}
.dg-client-report-history {
  display:grid;
  gap:10px;
}
.dg-client-report-history__head h4 {
  margin:0 0 5px;
  color:#0f172a;
  font-size:14px;
}
.dg-client-report-history__head p {
  margin:0;
  color:#64748b;
  font-size:11px;
  line-height:1.5;
}
.dg-client-report-list {
  display:grid;
  gap:9px;
}
.dg-client-report-row {
  display:grid;
  gap:8px;
  border:1px solid #dbe4ee;
  border-left-width:4px;
  border-radius:12px;
  background:#fff;
  padding:11px 12px;
}
.dg-client-report-row--success { border-left-color:#0f9f7f; }
.dg-client-report-row--warning { border-left-color:#f59e0b; }
.dg-client-report-row--danger { border-left-color:#dc2626; }
.dg-client-report-row--neutral { border-left-color:#94a3b8; }
.dg-client-report-row__head {
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
}
.dg-client-report-row__head > div {
  display:grid;
  gap:3px;
  min-width:0;
}
.dg-client-report-row__head strong {
  color:#0f172a;
  font-size:11.5px;
  line-height:1.4;
}
.dg-client-report-row__head small,
.dg-client-report-row__meta {
  color:#64748b;
  font-size:10px;
  line-height:1.45;
}
.dg-client-report-row__meta {
  display:flex;
  flex-wrap:wrap;
  justify-content:space-between;
  gap:5px 12px;
}
.dg-schedule-timezone-settings[hidden],
.dg-client-report-history[hidden],
#clientMonitoringNotice[hidden] {
  display:none;
}
@media(max-width:520px) {
  .dg-client-report-row__head {
    align-items:stretch;
    flex-direction:column;
  }
  .dg-client-report-row__meta {
    display:grid;
    justify-content:stretch;
  }
}

/* Step 7C.12 — paid-like inactive watchlist and monitoring value message */
.dg-locked-monitoring-body {
  display:grid;
  grid-template-columns:auto 1fr;
  align-items:center;
  gap:14px;
  border:1px solid #dbe4ee;
  border-radius:16px;
  background:#f8fafc;
  padding:16px;
}
.dg-locked-monitoring-icon {
  display:grid;
  width:44px;
  height:44px;
  place-items:center;
  border:1px solid #99f6e4;
  border-radius:14px;
  background:#ccfbf1;
  font-size:20px;
}
.dg-locked-monitoring-copy {
  min-width:0;
}
.dg-locked-monitoring-body p {
  margin:0;
  color:#334155;
  font-size:12px;
  line-height:1.6;
}
.dg-locked-monitoring-label {
  margin-top:12px !important;
  color:#0f172a !important;
  font-weight:800;
}
.dg-locked-monitoring-list {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px 16px;
  margin:9px 0 0;
  padding:0;
  list-style:none;
}
.dg-locked-monitoring-list li {
  position:relative;
  padding-left:18px;
  color:#334155;
  font-size:12px;
  font-weight:650;
  line-height:1.45;
}
.dg-locked-monitoring-list li::before {
  position:absolute;
  top:0;
  left:0;
  color:#0f766e;
  content:'✓';
  font-weight:900;
}
@media(max-width:520px) {
  .dg-locked-monitoring-body {
    grid-template-columns:1fr;
    text-align:center;
  }
  .dg-locked-monitoring-icon {
    margin:0 auto;
  }
  .dg-locked-monitoring-list {
    grid-template-columns:1fr;
    text-align:left;
  }
}

/* Step 7C.13 — approved individual/organisation account onboarding */
.dg-fieldset {
  min-width: 0;
  margin: 0;
  padding: 0;
  border: 0;
}
.dg-fieldset > legend {
  margin-bottom: 10px;
  color: var(--dg-ink);
  font-size: 13px;
  font-weight: 800;
}
.dg-onboarding-choice-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}
.dg-onboarding-choice {
  min-height: 126px;
}
.dg-onboarding-choice strong {
  font-size: 14px;
}
.dg-onboarding-choice small {
  font-size: 12px;
  line-height: 1.55;
}
@media (max-width: 700px) {
  .dg-onboarding-choice-grid {
    grid-template-columns: 1fr;
  }
  .dg-onboarding-choice {
    min-height: auto;
  }
}

/* Step 7D — paid plan capacity presentation */
.dg-subscription-capacity {
  display:block;
  margin-top:2px;
  color:#475569;
  font-size:10px;
  line-height:1.35;
}


/* Step 7D.2: prominent monitoring activation and plan-capacity feedback. */
.dg-monitoring-feedback-dialog {
  width:min(520px,calc(100vw - 28px));
  max-width:520px;
  border:0;
  border-radius:22px;
  background:transparent;
  padding:0;
}
.dg-monitoring-feedback-dialog::backdrop {
  background:rgba(15,23,42,.62);
  backdrop-filter:blur(3px);
}
.dg-monitoring-feedback-dialog__panel {
  position:relative;
  display:grid;
  justify-items:center;
  border:1px solid #dbe4ee;
  border-radius:22px;
  background:#fff;
  padding:30px 28px 24px;
  text-align:center;
  box-shadow:0 28px 80px rgba(15,23,42,.3);
}
.dg-monitoring-feedback-dialog__close {
  position:absolute;
  top:14px;
  right:14px;
  display:grid;
  width:34px;
  height:34px;
  place-items:center;
  border:1px solid #cbd5e1;
  border-radius:10px;
  background:#fff;
  color:#475569;
  font-size:20px;
  cursor:pointer;
}
.dg-monitoring-feedback-dialog__icon {
  display:grid;
  width:58px;
  height:58px;
  margin-bottom:14px;
  place-items:center;
  border:1px solid #99f6e4;
  border-radius:18px;
  background:#ecfdf5;
  color:#047857;
  font-size:28px;
  font-weight:900;
}
.dg-monitoring-feedback-dialog[data-variant="limit"] .dg-monitoring-feedback-dialog__icon {
  border-color:#fed7aa;
  background:#fff7ed;
  color:#c2410c;
}
.dg-monitoring-feedback-dialog__panel .dg-eyebrow {
  margin:0 0 7px;
}
.dg-monitoring-feedback-dialog__panel h3 {
  margin:0;
  color:#0f172a;
  font-size:24px;
  line-height:1.2;
}
.dg-monitoring-feedback-dialog__panel > p:not(.dg-eyebrow) {
  max-width:410px;
  margin:12px 0 0;
  color:#475569;
  font-size:13px;
  line-height:1.65;
}
.dg-monitoring-feedback-dialog__actions {
  display:flex;
  width:100%;
  justify-content:center;
  gap:10px;
  margin-top:22px;
  border-top:1px solid #e2e8f0;
  padding-top:18px;
}
.dg-monitoring-feedback-dialog__actions .dg-button {
  min-width:150px;
  justify-content:center;
}
@media (max-width:560px) {
  .dg-monitoring-feedback-dialog__panel {
    padding:27px 18px 20px;
  }
  .dg-monitoring-feedback-dialog__actions {
    display:grid;
  }
  .dg-monitoring-feedback-dialog__actions .dg-button {
    width:100%;
  }
}

/* Step 7D.3 secure team invitations */
.dg-invitation-status {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  border: 1px solid;
  border-radius: 999px;
  padding: 4px 9px;
  font-size: 11px;
  font-weight: 800;
  white-space: nowrap;
}
.dg-invitation-status--pending { border-color:#bae6fd; background:#f0f9ff; color:#075985; }
.dg-invitation-status--warning { border-color:#fde68a; background:#fffbeb; color:#854d0e; }
.dg-invitation-status--error { border-color:#fecdd3; background:#fff1f2; color:#9f1239; }
.dg-invitation-date { display:block; color:#475569; font-size:11px; line-height:1.45; white-space:nowrap; }
.dg-invitation-error { margin-top:4px; max-width:320px; color:#9f1239; font-size:11px; line-height:1.4; }
.dg-invitation-page {
  min-height:100vh;
  display:grid;
  place-items:center;
  padding:28px;
  background:linear-gradient(180deg,#f8fafc 0%,#eef4f8 100%);
}
.dg-invitation-card {
  width:min(680px,100%);
  border:1px solid #dbe4ee;
  border-radius:26px;
  background:#fff;
  box-shadow:0 22px 55px rgba(15,23,42,.12);
  overflow:hidden;
}
.dg-invitation-card__head { padding:28px 30px 18px; border-bottom:1px solid #e2e8f0; }
.dg-invitation-card__body { padding:24px 30px 30px; }
.dg-invitation-card .dg-brand-wordmark { color:#0f172a; }
.dg-invitation-card .dg-brand-mark { border-color:#0f172a; background:#0f172a; color:#fff; box-shadow:0 10px 24px rgba(15,23,42,.16); }
.dg-invitation-card .dg-brand-accent { color:#14b8a6; }
.dg-invitation-summary {
  display:flex;
  flex-direction:column;
  gap:10px;
  margin-top:18px;
  padding:16px 18px;
  border:1px solid #dbe4ee;
  border-radius:16px;
  background:#f8fafc;
}
.dg-invitation-summary__row {
  display:grid;
  grid-template-columns:minmax(110px,.65fr) minmax(0,1.35fr);
  align-items:baseline;
  gap:16px;
  min-width:0;
}
.dg-invitation-summary span {
  color:#64748b;
  font-size:11px;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.dg-invitation-summary strong {
  color:#0f172a;
  font-size:15px;
  overflow-wrap:anywhere;
}
.dg-invitation-actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:20px; }
.dg-invitation-actions .dg-button { flex:1 1 170px; }
.dg-invitation-signed-in { margin:16px 0 0; color:#475569; font-size:13px; }
@media(max-width:640px){
  .dg-invitation-page{padding:14px}
  .dg-invitation-card__head,.dg-invitation-card__body{padding-left:20px;padding-right:20px}
  .dg-invitation-summary__row{grid-template-columns:1fr;gap:3px}
}

/* Step 7D.11 — unified application navigation and dedicated account page */
.dg-app-nav { max-width:100%; overflow-x:auto; white-space:nowrap; scrollbar-width:none; }
.dg-app-nav::-webkit-scrollbar { display:none; }
.dg-app-nav-pricing { border:1px solid rgba(94,234,212,.48) !important; background:rgba(20,184,166,.13) !important; color:#ccfbf1 !important; }
.dg-app-nav-pricing:hover { background:rgba(20,184,166,.22) !important; color:#fff !important; }
.dg-app-nav-signout { margin-left:2px; border:1px solid rgba(226,232,240,.34) !important; background:rgba(255,255,255,.05) !important; color:#e2e8f0 !important; }
.dg-app-nav-signout:hover { border-color:rgba(255,255,255,.58) !important; background:rgba(255,255,255,.10) !important; color:#fff !important; }
.dg-account-page-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; align-items:start; }
.dg-account-signin-card { grid-column:1 / -1; }
.dg-account-detail-list { display:grid; gap:0; margin:0; }
.dg-account-detail-list > div { display:grid; grid-template-columns:minmax(130px,.45fr) minmax(0,1fr); gap:18px; align-items:center; border-bottom:1px solid #e2e8f0; padding:13px 0; }
.dg-account-detail-list > div:first-child { padding-top:0; }
.dg-account-detail-list > div:last-child { border-bottom:0; padding-bottom:0; }
.dg-account-detail-list dt { color:#64748b; font-size:12px; font-weight:800; }
.dg-account-detail-list dd { margin:0; color:#0f172a; font-size:14px; font-weight:850; text-align:right; }
.dg-break-anywhere { overflow-wrap:anywhere; }
@media (max-width:760px) {
  .dg-account-page-grid { grid-template-columns:1fr; }
  .dg-account-signin-card { grid-column:auto; }
  .dg-account-detail-list > div { grid-template-columns:1fr; gap:5px; }
  .dg-account-detail-list dd { text-align:left; }
}

/* Step 7D.12 — single-card account layout refinement */
.dg-account-summary-card { overflow:hidden; }
.dg-account-summary-head {
  display:flex;
  align-items:center;
  gap:14px;
  padding:24px 26px 20px;
  border-bottom:1px solid #e2e8f0;
}
.dg-account-summary-head h2 { margin:0; color:#0f172a; font-size:22px; letter-spacing:-.025em; }
.dg-account-summary-head p { margin:6px 0 0; color:#64748b; font-size:13px; line-height:1.55; }
.dg-account-summary-body {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  padding:26px;
}
.dg-account-summary-section { min-width:0; }
.dg-account-summary-section--workspace { padding-right:30px; }
.dg-account-summary-section--subscription { padding-left:30px; border-left:1px solid #e2e8f0; }
.dg-account-summary-section--signin {
  grid-column:1 / -1;
  margin-top:26px;
  padding-top:24px;
  border-top:1px solid #e2e8f0;
}
.dg-account-section-heading { display:flex; align-items:flex-start; gap:12px; margin-bottom:18px; }
.dg-account-section-heading h3 { margin:2px 0 0; color:#0f172a; font-size:18px; letter-spacing:-.02em; }
.dg-account-section-heading p { margin:5px 0 0; color:#64748b; font-size:12px; line-height:1.5; }
.dg-account-section-icon {
  display:inline-flex;
  flex:0 0 auto;
  align-items:center;
  justify-content:center;
  width:38px;
  height:38px;
  border-radius:999px;
}
.dg-account-section-icon svg {
  width:21px;
  height:21px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.dg-account-section-icon--account { background:#ecfeff; color:#0891b2; }
.dg-account-section-icon--workspace { background:#ecfeff; color:#0f766e; }
.dg-account-section-icon--subscription { background:#ecfdf5; color:#059669; }
.dg-account-section-icon--signin { background:#f5f3ff; color:#7c3aed; }
.dg-account-team-link { margin-top:18px; }
.dg-account-subscription-summary { min-width:0; }
.dg-account-subscription-summary .dg-subscription-state { margin:0; }
.dg-account-detail-list--signin { max-width:760px; }
@media (max-width:760px) {
  .dg-account-summary-head { padding:21px 20px 18px; }
  .dg-account-summary-body { grid-template-columns:1fr; padding:22px 20px; }
  .dg-account-summary-section--workspace { padding-right:0; }
  .dg-account-summary-section--subscription {
    margin-top:24px;
    padding:24px 0 0;
    border-top:1px solid #e2e8f0;
    border-left:0;
  }
  .dg-account-summary-section--signin { grid-column:auto; margin-top:24px; padding-top:24px; }
}

/* Step 7D.13 — unified team members and invitations table */
.dg-team-table-wrap { border-radius:16px; }
.dg-team-table { min-width:940px; }
.dg-team-table--manageable th:first-child { width:34%; }
.dg-team-table--manageable th:nth-child(2) { width:10%; }
.dg-team-table--manageable th:nth-child(3) { width:12%; }
.dg-team-table--manageable th:nth-child(4) { width:11%; }
.dg-team-table--manageable th:nth-child(5) { width:18%; }
.dg-team-table--manageable th:last-child { width:15%; text-align:right; }
.dg-team-table--read-only th:first-child { width:38%; }
.dg-team-table--read-only th:nth-child(2) { width:11%; }
.dg-team-table--read-only th:nth-child(3) { width:13%; }
.dg-team-table--read-only th:nth-child(4) { width:12%; }
.dg-team-table--read-only th:nth-child(5) { width:26%; }
.dg-team-row--invitation { background:#fbfdff; }
.dg-team-person { display:flex; align-items:center; gap:12px; min-width:0; }
.dg-team-avatar {
  display:inline-flex;
  flex:0 0 38px;
  align-items:center;
  justify-content:center;
  width:38px;
  height:38px;
  border:1px solid transparent;
  border-radius:999px;
  font-size:12px;
  font-weight:900;
  letter-spacing:.02em;
}
.dg-team-avatar--tone-1 { border-color:#bae6fd; background:#e0f2fe; color:#0369a1; }
.dg-team-avatar--tone-2 { border-color:#ddd6fe; background:#f5f3ff; color:#6d28d9; }
.dg-team-avatar--tone-3 { border-color:#fed7aa; background:#fff7ed; color:#c2410c; }
.dg-team-avatar--tone-4 { border-color:#bbf7d0; background:#f0fdf4; color:#15803d; }
.dg-team-avatar--invitation { border-color:#bfdbfe; background:#eff6ff; color:#2563eb; }
.dg-team-avatar--invitation svg {
  width:20px;
  height:20px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.dg-team-person-copy { display:grid; gap:3px; min-width:0; }
.dg-team-person-copy strong { color:#0f172a; font-size:13px; line-height:1.35; overflow-wrap:anywhere; }
.dg-team-person-copy > span:not(.dg-invitation-error) { color:#64748b; font-size:11px; line-height:1.4; overflow-wrap:anywhere; }
.dg-team-you { color:#64748b; font-size:11px; font-weight:700; }
.dg-team-type { color:#475569; font-size:12px; font-weight:750; }
.dg-team-status {
  display:inline-flex;
  align-items:center;
  min-height:28px;
  border:1px solid;
  border-radius:999px;
  padding:4px 9px;
  font-size:11px;
  font-weight:800;
  white-space:nowrap;
}
.dg-team-status--active { border-color:#bbf7d0; background:#f0fdf4; color:#15803d; }
.dg-team-date { display:block; color:#475569; font-size:11px; line-height:1.45; white-space:nowrap; }
.dg-team-table-summary { margin:13px 2px 0; color:#64748b; font-size:11px; line-height:1.45; }
@media (max-width:640px) {
  .dg-team-avatar { flex-basis:34px; width:34px; height:34px; }
  .dg-team-person { gap:9px; }
}


/* Step 7D.15 — Paddle-hosted subscription management */
.dg-account-billing-management {
  margin-top:16px;
  padding-top:16px;
  border-top:1px solid #e2e8f0;
}
.dg-account-billing-actions {
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}
.dg-account-billing-help {
  margin:10px 0 0;
  color:#64748b;
  font-size:11px;
  line-height:1.55;
}
.dg-account-billing-message {
  display:none;
  margin-top:10px;
  border-radius:10px;
  padding:9px 11px;
  font-size:11px;
  font-weight:700;
  line-height:1.5;
}
.dg-account-billing-message.is-visible { display:block; }
.dg-account-billing-message--error { border:1px solid #fecdd3; background:#fff1f2; color:#9f1239; }
.dg-account-billing-message--success { border:1px solid #bbf7d0; background:#f0fdf4; color:#166534; }
.dg-account-cancellation-notice {
  display:grid;
  gap:4px;
  margin-top:14px;
  border:1px solid #fde68a;
  border-radius:12px;
  background:#fffbeb;
  padding:12px 13px;
  color:#78350f;
}
.dg-account-cancellation-notice[hidden] { display:none; }
.dg-account-cancellation-notice strong { font-size:12px; }
.dg-account-cancellation-notice span { font-size:11px; line-height:1.5; }
@media (max-width:520px) {
  .dg-account-billing-actions { align-items:stretch; flex-direction:column; }
  .dg-account-billing-actions .dg-button { width:100%; }
}


/* Step 8A — launch legal, privacy and methodology foundation */
.dg-legal-acceptance { margin-top:24px; border:1px solid #dbe3ec; border-radius:13px; background:#f8fafc; padding:12px 13px; }
.dg-legal-acceptance a { color:#0f766e; font-weight:850; text-underline-offset:3px; }
.dg-auth-legal-footer { position:relative; z-index:2; display:flex; justify-content:center; background:#f8fafc; padding:16px 20px 24px; }
.dg-auth-legal-footer nav,.dg-app-legal-footer nav { display:flex; flex-wrap:wrap; justify-content:center; gap:14px; }
.dg-auth-legal-footer a,.dg-app-legal-footer a { color:#64748b; font-size:11px; font-weight:800; text-decoration:none; }
.dg-auth-legal-footer a:hover,.dg-app-legal-footer a:hover { color:#0f766e; text-decoration:underline; }
.dg-app-legal-footer { width:min(1180px,calc(100% - 32px)); margin:0 auto; border-top:1px solid #dbe3ec; padding:18px 0 28px; }
@media(max-width:640px){.dg-app-legal-footer{width:min(100% - 20px,1180px)}.dg-auth-legal-footer nav,.dg-app-legal-footer nav{gap:10px 13px}}
