/* GDOING — global chrome polish (mobile drawer, chat widget, 404).
   Owned by the chrome-polish task; loaded after gdoing.css so equal-specificity
   rules here win. Skin v2 tokens: ink #1c1c1e · text #4b4f54 · red #b50500
   (hover #8e0400) · band #f5f5f6 · hairline #e6e7e9 · radius 6px · Inter. */

/* ════ Mobile drawer — flat white panel, ink text, red CTA ════════ */
.ws-drawer {
  background: rgba(28, 28, 30, .36);   /* neutral ink scrim (frosted white read as fog on white pages) */
  backdrop-filter: blur(2px);
  -webkit-backdrop-filter: blur(2px);
}
.ws-drawer__panel {
  border-radius: 0;                    /* skin v2: no oversized rounds */
  border-left: 1px solid var(--gd-line, #e6e7e9);
  box-shadow: -18px 0 44px -22px rgba(28, 28, 30, .45);
  padding: 20px 20px 34px;
  align-items: stretch;                /* left-aligned column (was centered) */
}
.ws-drawer__close {
  top: 16px; right: 16px;
  width: 40px; height: 40px;
  border-radius: var(--gd-radius, 6px);
  background: var(--gd-band, #f5f5f6);
  color: var(--gd-ink, #1c1c1e);
  font-size: 24px;
}
.ws-drawer__close:hover { background: #e9eaec; transform: rotate(90deg); }
.ws-drawer__title {
  font-family: 'Inter', system-ui, -apple-system, 'Segoe UI', sans-serif;
  font-size: 17px; font-weight: 800; letter-spacing: .02em;
  color: var(--gd-ink, #1c1c1e);
  text-align: left; text-transform: uppercase;
  margin: 8px 0 0; padding: 0 12px;
}
.ws-drawer__rule {
  width: 100%; max-width: none;
  background: var(--gd-line, #e6e7e9);
  margin: 16px 0 6px;
}
.ws-drawer__nav {
  align-items: stretch;
  font-family: 'Inter', system-ui, -apple-system, 'Segoe UI', sans-serif;
  font-size: 16px; gap: 1px; margin-top: 4px;
}
.ws-drawer__nav a {
  text-align: left;
  padding: 11px 12px;
  color: var(--gd-ink, #1c1c1e);
  font-weight: 500;
  border-radius: var(--gd-radius, 6px);
}
.ws-drawer__nav a:hover { background: var(--gd-band, #f5f5f6); }

/* Dropdown children — non-collapsing indented sub-list under the parent link */
.gdc-drawer-group { width: 100%; }
.gdc-drawer-sublist { display: flex; flex-direction: column; gap: 1px; padding: 0 0 6px; }
.ws-drawer__nav a.gdc-drawer-sub {
  font-size: 14px;
  font-weight: 400;
  color: var(--gd-text, #4b4f54);
  padding: 8px 12px 8px 26px;          /* 12px base + 14px indent under the parent */
}
.ws-drawer__nav a.gdc-drawer-sub:hover {
  background: var(--gd-band, #f5f5f6);
  color: var(--gd-ink, #1c1c1e);
}

/* CTA: flat red rectangle (kills the donor candy-lip border/shadow and the
   dark-on-red text from .ws-btn--primary) */
.ws-drawer__cta {
  width: 100%; min-width: 0;
  margin: 20px 0 4px;
  border: 0; box-shadow: none;
  background: var(--gd-red, #b50500);
  color: #fff;
  font-size: 15px; font-weight: 600;
  padding: 13px 20px;
}
.ws-drawer__cta:hover  { background: var(--gd-red-dark, #8e0400); transform: none; box-shadow: none; }
.ws-drawer__cta:active { background: var(--gd-red-dark, #8e0400); transform: none; box-shadow: none; }
.ws-drawer__phone { color: var(--gd-ink, #1c1c1e); justify-content: center; }
.ws-drawer__phone:hover { color: var(--gd-red, #b50500); }
.ws-drawer__social a:hover { color: var(--gd-red, #b50500); }

/* ════ 404 — skin v2 (big ink code, red/ghost buttons, popular links) ════ */
.gdc-err { text-align: center; background: #fff; }
.gdc-err__inner { max-width: 640px; margin: 0 auto; padding: clamp(8px, 4vw, 40px) 0; }
.gdc-err__code {
  font-weight: 800;
  font-size: clamp(96px, 22vw, 160px);
  line-height: .9;
  letter-spacing: -.04em;
  color: var(--gd-ink, #1c1c1e);
  margin: 0 0 16px;
}
.gdc-err__title {
  font-size: clamp(22px, 3.2vw, 28px);
  font-weight: 700;
  margin: 0 0 10px;
}
.gdc-err__lead {
  color: var(--gd-text, #4b4f54);
  font-size: 16px; line-height: 1.65;
  max-width: 480px; margin: 0 auto 28px;
}
.gdc-err__lead p { margin: 0 0 8px; }
.gdc-err__lead p:last-child { margin-bottom: 0; }
.gdc-err__actions {
  display: flex; flex-wrap: wrap; gap: 10px;
  justify-content: center;
  margin: 0 0 44px;
}
.gdc-err__links { border-top: 1px solid var(--gd-line, #e6e7e9); padding-top: 22px; }
.gdc-err__links-title {
  display: block;
  font-size: 12px; font-weight: 600;
  letter-spacing: .08em; text-transform: uppercase;
  color: var(--gd-muted, #6b7075);
  margin: 0 0 10px;
}
.gdc-err__links nav {
  display: flex; flex-wrap: wrap;
  gap: 6px 22px; justify-content: center;
}
.gdc-err__links nav a {
  font-size: 14px;
  color: var(--gd-text, #4b4f54);
  text-decoration: none;
}
.gdc-err__links nav a:hover {
  color: var(--gd-red, #b50500);
  text-decoration: underline;
  text-underline-offset: 3px;
}
