/* Signature blue. Shared with API public/css/signature-theme.css.
   Screen presentation only: compact layouts, clinical states and print documents
   retain their existing rules. Keep the two published copies identical. */
@media screen {
  :root {
    --sig-ink:#203a51; --sig-muted:#576d80; --sig-line:#d8e4ee;
    --sig-paper:#f3f7fb; --sig-blue:#1b5d94; --sig-blue-soft:#e8f2fc;
    --sig-teal:#18695d; --sig-teal-soft:#e3f3ee;
    --sig-violet:#5b4a91; --sig-violet-soft:#eeebf8;
    --care-primary:#26716b; --care-primary-soft:#f0f7f4; --care-primary-line:#c9e0da;
    --sig-rose:#8a416b; --sig-rose-soft:#f8eaf1;
    --sig-action:linear-gradient(115deg,#155994,#204379);
    --sig-action-hover:linear-gradient(115deg,#124c80,#17365f);
    --sig-shadow:0 5px 18px #24497109;
  }
  html body:is(.drb-sandbox,.sw-workspace,.staff-auth) {
    --drb-brand-blue:var(--sig-blue); --drb-brand-blue-secondary:#337ab3;
    --drb-brand-blue-hover:#144b7b; --drb-brand-navy:var(--sig-ink);
    --drb-brand-ink:var(--sig-ink); --drb-brand-muted:var(--sig-muted);
    --drb-brand-paper:var(--sig-paper); --drb-brand-line:var(--sig-line);
    --drb-brand-soft:var(--sig-blue-soft); --drb-action:#155994;
    --drb-action-hover:#124c80; --drb-accent:var(--sig-teal);
    --drb-surface-shadow:var(--sig-shadow);
    --sw-blue:var(--sig-blue); --sw-navy:#204379; --sw-ink:var(--sig-ink);
    --sw-muted:var(--sig-muted); --sw-line:var(--sig-line); --sw-bg:var(--sig-paper);
    --sw-teal:var(--sig-teal); --sw-purple:var(--sig-violet);
    background:var(--sig-paper); color:var(--sig-ink);
  }
  body.drb-sandbox :is(.drb-portal-root,.drb-portal-main) {
    background:var(--sig-paper)!important;
  }
  body.drb-sandbox :is(.drb-header,.drb-public-header,.site-header),
  body.sw-workspace :is(.cw-topbar,.sw-mobile-head) {
    background:#fff; border-bottom-color:var(--sig-line); box-shadow:0 2px 12px #20437906;
  }
  body.drb-sandbox :is(.drb-sidebar,.drb-portal-root .drb-sidebar),
  body.sw-workspace .staff-rail {
    background:linear-gradient(180deg,#fff 20%,#eef5fc); border-right-color:var(--sig-line);
  }
  body.drb-sandbox .drb-portal-root .drb-destination.active,
  body.sw-workspace .sw-nav-link:is(.is-active,[aria-current=page]) {
    background:var(--sig-blue-soft)!important; color:var(--sig-blue)!important;
    box-shadow:inset 3px 0 var(--sig-blue);
  }
  body.drb-sandbox .drb-portal-dock a[aria-current=page] {
    background:var(--sig-blue-soft); color:var(--sig-blue);
  }

  /* Primary actions stay blue. Secondary, disabled and destructive controls keep
     their independent states rather than inheriting a generic button fill. */
  body.drb-sandbox :is(.home-hero__cta-primary,.home-hero__card-cta,.drb-service-action,
    .drb-provider-book,.membership-band__cta,.drb-menu-signin,.drb-portal-menu-toggle,
    .si__submit,.pt-provider-action,.pl-button,.ps-open),
  body.drb-sandbox :is(.ph-button,.pt-button,.cp-button):not([class*="--light"]):not(:disabled),
  body.drb-sandbox .brand-button:not(.brand-button-light):not(.brand-button-outline),
  body.drb-sandbox .vf-button:not(.vf-button--secondary):not(:disabled),
  body.sw-workspace :is(.sh-search>button,.sh-button:not(.sh-button--light),
    .sw-btn:not(.sw-btn--plain):not(.sw-btn--soft):not(.sw-btn-danger),
    .cm-button:not(.cm-button--light):not(.cm-button--danger):not(.cw-button-danger)),
  body.staff-auth .sw-auth-submit {
    background:var(--sig-action)!important; border-color:#195788!important;
    color:#fff!important; box-shadow:0 3px 8px #20437916;
  }
  body.drb-sandbox :is(.home-hero__cta-primary,.drb-service-action,.drb-provider-book,
    .membership-band__cta,.drb-menu-signin,.pt-provider-action,.pl-button,.ps-open):hover,
  body.drb-sandbox :is(.ph-button,.pt-button,.cp-button):not([class*="--light"]):not(:disabled):hover,
  body.sw-workspace :is(.sh-search>button,.sh-button:not(.sh-button--light)):hover {
    background:var(--sig-action-hover)!important;
  }
  body.drb-sandbox :is(.home-hero__cta-secondary,.cp-button--light,.pt-button--light,.ph-button--light) {
    background:#fff!important; border-color:#bfd5e7!important; color:var(--sig-blue)!important;
  }
  body.drb-sandbox :is(a,button,input,select,textarea,summary):focus-visible,
  body.sw-workspace :is(a,button,input,select,textarea,summary):focus-visible {
    outline:3px solid #4885bf; outline-offset:3px;
  }

  /* Public pages: restrained color in the large surfaces, stronger service
     accents on the cards. Images and existing card sizes are retained. */
  body.drb-sandbox.drb-brand-experience .home-hero {
    background:radial-gradient(ellipse at 5% 0%,#e2effd,transparent 55%),
      radial-gradient(ellipse at 98% 25%,#e1f1ed,transparent 50%),#f5f8fc!important;
  }
  body.drb-sandbox :is(.drb-care-options,.brand-finder) {
    background:linear-gradient(155deg,#f7f9fd,#edf3fb);
  }
  body.drb-sandbox .pt-service--blue, body.drb-sandbox .cp-service--urgent,
  html body.drb-sandbox.drb-brand-experience .drb-service--urgent {
    --service:#1b5d94!important; --service-soft:var(--sig-blue-soft)!important; --service-line:#c5dcec!important;
  }
  body.drb-sandbox .pt-service--violet, body.drb-sandbox .cp-service--primary,
  html body.drb-sandbox.drb-brand-experience .drb-service--primary {
    --service:var(--care-primary)!important; --service-soft:var(--care-primary-soft)!important; --service-line:var(--care-primary-line)!important;
  }
  body.drb-sandbox .pt-service--rose, body.drb-sandbox .cp-service--mental,
  html body.drb-sandbox.drb-brand-experience .drb-service--mental {
    --service:var(--sig-rose)!important; --service-soft:var(--sig-rose-soft)!important; --service-line:#e7ccdc!important;
  }
  body.drb-sandbox :is(.drb-service-card,.brand-finder-card,.cp-plan,.cp-visit-card) {
    box-shadow:var(--sig-shadow); border-radius:18px;
  }
  body.drb-sandbox :is(.drb-service-copy,.brand-finder-card--compact) {
    background:var(--service-soft,#fff)!important;
  }
  body.drb-sandbox .drb-service-copy p { color:var(--sig-muted)!important; }
  body.drb-sandbox .hero-medical-access {
    background:#fff; border-color:#c9ddea; box-shadow:var(--sig-shadow);
  }
  body.drb-sandbox .hero-insurance-heading { color:var(--sig-teal); }
  body.drb-sandbox .hero-rate-cell strong { color:var(--sig-blue); }
  body.drb-sandbox .drb-visit-offer .drb-visit-offer__saving {
    background:var(--sig-teal-soft); color:var(--sig-teal);
  }
  body.drb-sandbox :is(.cp-hero,.cp-closing,.cp-included) {
    background:linear-gradient(125deg,var(--sig-blue-soft),#f5f7fc 70%,var(--sig-teal-soft));
    border-color:var(--sig-line);
  }
  body.drb-sandbox .cp-visit-card { border-top:3px solid var(--sig-blue); }
  body.drb-sandbox .cp-visit-card:nth-child(2) { border-top-color:var(--sig-violet); }
  body.drb-sandbox .cp-visit-card--insurance { border-top-color:var(--sig-teal); }
  body.drb-sandbox .cp-visit-card:nth-child(2) .cp-icon { background:var(--sig-violet-soft); color:var(--sig-violet); }
  body.drb-sandbox .cp-visit-card--insurance .cp-icon { background:var(--sig-teal-soft); color:var(--sig-teal); }
  body.drb-sandbox .cp-plan--individual .cp-plan-content { background:linear-gradient(#f0edfa,#fff 65%); }
  body.drb-sandbox .cp-plan--family .cp-plan-content { background:linear-gradient(#e8f5f0,#fff 65%); }
  body.drb-sandbox :is(.membership-band__inner,.brand-life) {
    background:linear-gradient(120deg,var(--sig-blue-soft),var(--sig-teal-soft))!important;
  }
  body.drb-sandbox .brand-closing { background:linear-gradient(120deg,#183e67,#225d7e); }
  body.drb-sandbox .brand-faq { background:#f0edf8; }
  body.drb-sandbox :is(.brand-faq-list details,.cp-faq-list details) { background:#fff; border-color:var(--sig-line); }
  body.drb-sandbox .service-landing__head { background:linear-gradient(115deg,var(--service-soft,#e8f2fc),#fff); }
  body.drb-sandbox .si__card { border-color:var(--sig-line); box-shadow:0 14px 38px #2043790c; }

  /* Patient records and provider tools use the same persistent categories. */
  body.drb-sandbox :is(.pt-next,.ph-next) {
    background:linear-gradient(120deg,#e2effc,#f5f9fd 75%,#e8f4ef);
    border-color:#c6ddec; box-shadow:var(--sig-shadow);
  }
  body.drb-sandbox .pt-home .pt-service {
    background:var(--service-soft); border-color:var(--service-line); color:var(--service);
    box-shadow:var(--sig-shadow);
  }
  body.drb-sandbox .pt-home .pt-resource {
    --resource-soft:var(--sig-blue-soft); --resource-ink:var(--sig-blue);
    background:var(--resource-soft); border-color:transparent;
  }
  body.drb-sandbox .pt-home .pt-resource--teal,
  body.drb-sandbox .pt-home .pt-resource[href="/insurance"] {
    --resource-soft:var(--sig-teal-soft); --resource-ink:var(--sig-teal);
  }
  body.drb-sandbox .pt-home .pt-resource[href="/edit-dependents"] {
    --resource-soft:var(--sig-rose-soft); --resource-ink:var(--sig-rose);
  }
  body.drb-sandbox .pt-home .pt-resource>span { background:#fff; color:var(--resource-ink); }
  body.drb-sandbox .pt-home .pt-resource strong { color:var(--sig-ink); }
  body.drb-sandbox .pt-home .pt-resource small { color:var(--sig-muted); }
  body.drb-sandbox .pt-home .pt-document-box--letters {
    background:linear-gradient(120deg,var(--sig-violet-soft),#f8f6fd); border-color:#d8cfe9;
  }
  body.drb-sandbox .pt-home .pt-document-box--uploads {
    background:linear-gradient(120deg,var(--sig-teal-soft),#f5fbf9); border-color:#c3dfd6;
  }
  body.drb-sandbox :is(.pt-provider,.pt-recent-visit,.ph-visit,.pl-file) {
    border-color:var(--sig-line); box-shadow:var(--sig-shadow);
  }
  body.drb-sandbox .pt-home .pt-provider { background:linear-gradient(110deg,#eef5fc,#fff); }
  body.drb-sandbox .pt-support>a:first-child { background:var(--sig-violet-soft); }
  body.drb-sandbox .pt-support>a:last-child { background:var(--sig-teal-soft); }
  body.drb-sandbox .ph-metric { background:var(--sig-blue-soft); border-color:#c5dcec; }
  body.drb-sandbox .ph-metric:nth-child(2) { background:var(--sig-violet-soft); border-color:#d8d0e9; }
  body.drb-sandbox .ph-metric:nth-child(3) { background:var(--sig-teal-soft); border-color:#c9e3d9; }
  body.drb-sandbox .ph-metric:nth-child(2) .ph-metric-top svg { color:var(--sig-violet); }
  body.drb-sandbox .ph-metric:nth-child(3) .ph-metric-top svg { color:var(--sig-teal); }
  body.drb-sandbox .ph-tools>a { border-color:var(--sig-line); box-shadow:var(--sig-shadow); }
  body.drb-sandbox .ph-tools>a[href="/dosespot.php"] { background:var(--sig-teal-soft); }
  body.drb-sandbox .ph-tools>a[href="/communications.php"] { background:var(--sig-blue-soft); }
  body.drb-sandbox .ph-tools>a[href="/provider-notifications"] { background:var(--sig-violet-soft); }
  body.drb-sandbox .ph-tool-icon { background:#fff!important; }
  body.drb-sandbox .ph-practice-links>a:first-child { background:var(--sig-teal-soft); }
  body.drb-sandbox .ph-practice-links>a:last-child { background:var(--sig-rose-soft); }
  body.drb-sandbox .ps-calendar-panel { background:linear-gradient(145deg,#fff,#eef5fc); border-color:var(--sig-line); }
  body.drb-sandbox :is(.ps-appointment,.drb-panel,.drb-appointment-section) { box-shadow:var(--sig-shadow); }
  body.drb-sandbox :is(.pl-heading-icon,.pl-file-type) { background:var(--sig-violet-soft); color:var(--sig-violet); }

  /* Intake gets the same surfaces without replacing error or required styles. */
  body.drb-sandbox .vf-guide { background:linear-gradient(145deg,#e9f3fd,#edf7f3); border-color:var(--sig-line); }
  body.drb-sandbox :is(.vf-content,.ic-form) { border-color:var(--sig-line); box-shadow:var(--sig-shadow); }
  body.drb-sandbox .vf-payment { background:linear-gradient(125deg,#e9f3fd,#f7fbff); border-color:#c3dbea; }
  body.drb-sandbox :is(.drb-help-disclosure>summary,.drb-consent-disclosure>summary) { background:var(--sig-blue-soft); }
  body.drb-sandbox .ic-card-photos { background:var(--sig-blue-soft); border-color:#c5dcec; }

  /* Clinical administration, support pages, Nova and the website CMS. */
  body.sw-workspace :is(.sw-main,.cm-main,.sw-dashboard) { background:var(--sig-paper); }
  body.sw-workspace :is(.sh-panel,.cm-card,.iw-card),
  body.drb-sandbox.drb-adminlte .card { border-color:var(--sig-line); box-shadow:var(--sig-shadow); }
  body.sw-workspace .sh-panel-head { background:linear-gradient(110deg,#eaf3fc,#f9fbfe); }
  body.sw-workspace .sh-metric:nth-child(1) { background:var(--sig-blue-soft); border-color:#c5dcec; }
  body.sw-workspace .sh-metric:nth-child(2) { background:var(--sig-teal-soft); border-color:#c9e3d9; }
  body.sw-workspace .sh-metric:nth-child(3) { background:var(--sig-violet-soft); border-color:#d8d0e9; }
  body.sw-workspace .sh-metric:nth-child(4) { background:var(--sig-rose-soft); border-color:#e7ccdc; }
  body.sw-workspace .sh-metric:nth-child(4) .sh-metric-icon { color:var(--sig-rose); }
  body.sw-workspace .sh-launchers>a:nth-child(1) { background:var(--sig-blue-soft); }
  body.sw-workspace .sh-launchers>a:nth-child(2) { background:var(--sig-rose-soft); }
  body.sw-workspace .sh-launchers>a:nth-child(3) { background:var(--sig-teal-soft); }
  body.sw-workspace .sh-launch-icon { background:#fff!important; color:var(--sig-blue); }
  body.sw-workspace .sh-launchers>a:nth-child(2) .sh-launch-icon { color:var(--sig-rose); }
  body.sw-workspace .sh-launchers>a:nth-child(3) .sh-launch-icon { color:var(--sig-teal); }
  body.sw-workspace .sh-operation[href*="claims"]>span { background:var(--sig-teal-soft); color:var(--sig-teal); }
  body.sw-workspace .sh-operation[href*="transactions"]>span { background:var(--sig-blue-soft); color:var(--sig-blue); }
  body.sw-workspace .sh-operation[href*="communications"]>span { background:var(--sig-rose-soft); color:var(--sig-rose); }
  body.sw-workspace .sh-operation[href*="oversight"]>span { background:var(--sig-violet-soft); color:var(--sig-violet); }
  body.sw-workspace :is(.sr-hero,.cm-intro) { background:linear-gradient(120deg,#e7f1fc,#f5f7fc 65%,#e6f3ee); border-color:var(--sig-line); }
  body.sw-workspace :is(.cm-tabs a[aria-current],.sr-tool) { border-color:var(--sig-line); }
  body.sw-workspace :is(.cm-tabs a[aria-current],.sw-tab[aria-current]) { background:var(--sig-blue-soft); color:var(--sig-blue); }
  body.drb-sandbox :is(table.drb-care-table,table.dataTable,table.table) thead th,
  body.sw-workspace :is(.cm-table,.iw-claims table) thead th {
    background:#eaf2fa!important; color:#355b79!important;
  }
  body.staff-auth .sw-auth-story { background:linear-gradient(135deg,#e5f0fc,#edf7f2); }
  @media(hover:hover) {
    body.drb-sandbox :is(.pt-resource,.pt-service,.pt-document-box,.ph-metric,.ph-tools>a):hover,
    body.sw-workspace :is(.sh-metric,.sh-launchers>a,.sr-tool):hover { box-shadow:0 6px 20px #20437912; }
  }
}
