/* Kesarvan Care+ — the white-label look (brand pack "kesarvan-care").
   Maroon + saffron on warm ivory, serif headings, pill controls and a left
   sidebar. Loaded after the app's own styles; every rule is scoped to
   html[data-brand="kesarvan-care"] so nothing else is affected. */
@import url('https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,500;9..144,600;9..144,700&family=Nunito+Sans:opsz,wght@6..12,400;6..12,600;6..12,700;6..12,800&display=swap');

html[data-brand="kesarvan-care"]{
  --vs-primary:#6E1A35; --vs-primary-2:#7A1E3A; --vs-primary-3:#8E2747;
  --vs-accent:#C9661A; --vs-accent-2:#F2A33A; --vs-accent-3:#FFD8A0;
  --vs-bg:#FBF6EE; --vs-bg-2:#F6EEE2; --vs-bg-3:#F0E4D3;
  --vs-surface:#FFFFFF; --vs-surface-2:#FFFCF8;
  --vs-line:#EBDFD0; --vs-line-2:#D9C8B3;
  --vs-ink:#2A1A16; --vs-ink-2:#4A2E28; --vs-muted:#7A6458; --vs-muted-2:#9C8677;
  --vs-ok:#2E7D4F; --vs-info:#C9661A;
  --vs-radius:22px; --vs-radius-sm:16px; --vs-radius-xs:12px; --vs-radius-btn:999px;
  --vs-shadow-1:0 1px 0 rgba(110,26,53,.04), 0 6px 18px rgba(110,26,53,.04);
  --vs-shadow-2:0 12px 30px rgba(110,26,53,.08);
  --vs-shadow-3:0 18px 44px rgba(110,26,53,.18);
  --vs-font:"Nunito Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
  --vs-font-data:"Nunito Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
  --kc-head:"Fraunces", Georgia, "Times New Roman", serif;
  --kc-maroon:#6E1A35; --kc-maroon-2:#8E2747; --kc-saffron:#E98A15; --kc-ivory:#FBF6EE;
  --kc-side:256px;
  /* page-local variables used by some screens */
  --primary:#6E1A35; --primary-2:#C9661A;
}
html[data-brand="kesarvan-care"] body{ background:var(--kc-ivory); font-family:var(--vs-font); color:var(--vs-ink); }
html[data-brand="kesarvan-care"] :is(h1,h2,h3,.page-title h1){ font-family:var(--kc-head); letter-spacing:-.005em; font-weight:600; }
html[data-brand="kesarvan-care"] h4{ font-family:var(--vs-font); }
html[data-brand="kesarvan-care"] a{ color:#A84A12; }
html[data-brand="kesarvan-care"] a:hover{ color:var(--kc-maroon); }
html[data-brand="kesarvan-care"] .page-kicker{ color:var(--kc-saffron); letter-spacing:1.4px; }

/* ── buttons, chips, inputs ─────────────────────────────────────────── */
html[data-brand="kesarvan-care"] .btn{ border-radius:999px; font-weight:700; letter-spacing:.01em; }
html[data-brand="kesarvan-care"] .btn-primary,
html[data-brand="kesarvan-care"] button.btn-primary{ background:linear-gradient(135deg,#7A1E3A,#A33153) !important; border-color:transparent !important; color:#fff !important;
  box-shadow:0 8px 18px rgba(122,30,58,.22) !important; }
html[data-brand="kesarvan-care"] .btn-primary:not(:disabled):hover{ box-shadow:0 10px 24px rgba(122,30,58,.32) !important; }
html[data-brand="kesarvan-care"] :is(.btn-line,.btn-ghost){ border-radius:999px; border-color:#E2CDB6; color:var(--kc-maroon); background:#fff; }
html[data-brand="kesarvan-care"] :is(.btn-line,.btn-ghost):hover{ background:#FFF4E6; border-color:var(--kc-saffron); }
html[data-brand="kesarvan-care"] :is(input,select,textarea):not([type=checkbox]):not([type=radio]){ border-radius:14px; border-color:#E2D3C1; }
html[data-brand="kesarvan-care"] :is(input,select,textarea):focus{ outline:none; border-color:var(--kc-saffron) !important; box-shadow:0 0 0 4px rgba(233,138,21,.18) !important; }
html[data-brand="kesarvan-care"] :is(.pill,.chip,.badge,.tag){ border-radius:999px; }

/* ── cards & panels ─────────────────────────────────────────────────── */
html[data-brand="kesarvan-care"] :is(.card,.panel,.vs-card,.scan-card,.rep-group,.pri-card,.slot,.fact){ border-radius:22px; border-color:#EFE3D4; }
html[data-brand="kesarvan-care"] .card{ box-shadow:0 1px 0 rgba(110,26,53,.03), 0 10px 28px rgba(110,26,53,.05); }
html[data-brand="kesarvan-care"] .card:hover{ border-color:#E7CFB2; }
html[data-brand="kesarvan-care"] .ic{ border-radius:50% !important; }

/* ── page banners: one maroon-to-terracotta family everywhere ──────── */
html[data-brand="kesarvan-care"] :is(.hs-hero,.glow-hero,.rx-hero,.rp-hero,.in-hero,.cl-hero,.cb-hero,.pt-hero,.doc-hero,.hero-report,.stage-banner,.scan-hero,.hero-band){
  background:radial-gradient(520px 260px at 100% 0%, rgba(242,163,58,.28), rgba(242,163,58,0) 65%),
             linear-gradient(120deg,#4E0E23 0%,#7A1E3A 55%,#A3402A 100%) !important;
  border-radius:26px !important; color:#FFF4E8;
}
html[data-brand="kesarvan-care"] :is(.hs-hero,.glow-hero,.rx-hero,.rp-hero,.in-hero,.cl-hero,.cb-hero,.pt-hero,.doc-hero) :is(h1,h2){ color:#fff; font-family:var(--kc-head); }
html[data-brand="kesarvan-care"] .hs-hero .pill{ background:rgba(255,236,214,.14); border-color:rgba(255,236,214,.28); color:#FFE9CF; }

/* ── the app header becomes a left sidebar on laptops ──────────────── */
html[data-brand="kesarvan-care"] .app-header{
  background:linear-gradient(180deg,#4E0E23 0%,#6E1A35 45%,#86243F 100%) !important;
  border:0 !important; box-shadow:none !important; backdrop-filter:none !important; -webkit-backdrop-filter:none !important;
}
html[data-brand="kesarvan-care"] .app-brand,
html[data-brand="kesarvan-care"] .app-brand:hover{ color:#FFF4E8; }
html[data-brand="kesarvan-care"] .app-brand .brand-mark{ width:38px; height:38px; border-radius:50%; padding:0; background:transparent; border:0; box-shadow:0 0 0 2px rgba(255,216,160,.35); }
html[data-brand="kesarvan-care"] .kc-lockup{ display:flex; flex-direction:column; line-height:1.05; }
html[data-brand="kesarvan-care"] .kc-lockup .kc-name{ font-family:var(--kc-head); font-weight:600; font-size:19px; color:#fff; letter-spacing:-.01em; }
html[data-brand="kesarvan-care"] .kc-lockup .kc-name b{ color:#FFC266; font-weight:700; }
html[data-brand="kesarvan-care"] .kc-lockup .kc-sub{ font-size:10.5px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; color:rgba(255,226,190,.72); margin-top:3px; }
html[data-brand="kesarvan-care"] .app-nav a{ color:rgba(255,236,220,.8); font-weight:600; border-radius:14px; }
html[data-brand="kesarvan-care"] .app-nav a:hover{ background:rgba(255,255,255,.09); color:#fff; }
html[data-brand="kesarvan-care"] .app-nav a.active{ background:#FFF4E6 !important; color:#6E1A35 !important; box-shadow:none !important; font-weight:800; }
html[data-brand="kesarvan-care"] .app-nav a.active::after{ display:none !important; }
html[data-brand="kesarvan-care"] .nav-toggle{ color:#FFE9CF; }
html[data-brand="kesarvan-care"] .bell-btn{ background:rgba(255,255,255,.1); border-color:rgba(255,236,214,.22); color:#FFE9CF; border-radius:50%; }
html[data-brand="kesarvan-care"] .bell-btn:hover{ background:rgba(255,255,255,.18); }
html[data-brand="kesarvan-care"] .user-chip{ background:rgba(255,255,255,.1); border-color:rgba(255,236,214,.22); color:#fff; }
html[data-brand="kesarvan-care"] .user-chip:hover{ background:rgba(255,255,255,.16); }
html[data-brand="kesarvan-care"] .user-chip :is(.user-name,.user-role,.user-caret){ color:#FFF4E8 !important; }
html[data-brand="kesarvan-care"] .user-av{ background:linear-gradient(135deg,#F2A33A,#E07A12) !important; color:#4E0E23 !important; }

@media (min-width:1024px){
  html[data-brand="kesarvan-care"] body.app{ padding-left:var(--kc-side); }
  html[data-brand="kesarvan-care"] .app-header{
    position:fixed !important; top:0; left:0; bottom:0; width:var(--kc-side); height:auto !important;
    flex-direction:column; align-items:stretch; gap:4px; padding:24px 16px 18px !important; overflow-y:auto; z-index:60;
  }
  html[data-brand="kesarvan-care"] .app-brand{ padding:0 6px 18px; border-bottom:1px solid rgba(255,236,214,.14); margin-bottom:14px; }
  html[data-brand="kesarvan-care"] .app-nav{ flex-direction:column; align-items:stretch; gap:3px; flex:0 0 auto; display:flex !important; }
  html[data-brand="kesarvan-care"] .app-nav a{ justify-content:flex-start; padding:11px 14px; font-size:14px; gap:10px; }
  html[data-brand="kesarvan-care"] .app-nav a .nav-ic{ font-size:16px; width:18px; }
  html[data-brand="kesarvan-care"] .nav-toggle{ display:none !important; }
  html[data-brand="kesarvan-care"] .app-actions{ margin-top:auto; padding-top:14px; border-top:1px solid rgba(255,236,214,.14); flex-wrap:wrap; gap:8px; }
  html[data-brand="kesarvan-care"] .user-menu{ flex:1 1 100%; order:-1; }
  html[data-brand="kesarvan-care"] .user-chip{ width:100%; }
  html[data-brand="kesarvan-care"] .user-pop{ top:auto !important; bottom:calc(100% + 10px) !important; left:0 !important; right:auto !important; }
  html[data-brand="kesarvan-care"] .notif-pop{ position:fixed !important; left:calc(var(--kc-side) + 12px) !important; right:auto !important; top:auto !important; bottom:18px !important; }
  html[data-brand="kesarvan-care"] .app-main{ max-width:1240px; padding:34px 34px 40px; }
}

/* ── footer ─────────────────────────────────────────────────────────── */
html[data-brand="kesarvan-care"] .vs-legal-footer{ background:#F3E9DC !important; color:#6A5248 !important; border-top:0 !important; }
html[data-brand="kesarvan-care"] .vs-legal-footer :is(a,b){ color:#6E1A35 !important; }
html[data-brand="kesarvan-care"] .vs-legal-chip{ background:transparent !important; box-shadow:none !important; border:0 !important; }

/* ── sign-in & sign-up: photo panel, ivory form side ─────────────────── */
html[data-brand="kesarvan-care"] .auth-hero{
  background:linear-gradient(160deg,rgba(78,14,35,.92) 0%,rgba(110,26,53,.84) 48%,rgba(163,64,42,.78) 100%),
             url('/brand/login-photo.jpg') center/cover no-repeat !important;
  color:#FFF4E8;
}
html[data-brand="kesarvan-care"] .auth-hero h1{ font-family:var(--kc-head); color:#fff; }
html[data-brand="kesarvan-care"] .auth-hero .acc{ color:#FFC266 !important; }
html[data-brand="kesarvan-care"] .auth-hero .ic{ background:rgba(255,194,102,.2) !important; color:#FFC266 !important; }
html[data-brand="kesarvan-care"] .auth-panel{ background:var(--kc-ivory); }
html[data-brand="kesarvan-care"] .auth-card{ border-radius:26px; border:1px solid #EFE3D4; box-shadow:0 18px 44px rgba(110,26,53,.10); }
html[data-brand="kesarvan-care"] :is(.auth-tab.active,.tab.active){ background:#6E1A35 !important; color:#fff !important; border-color:#6E1A35 !important; }
html[data-brand="kesarvan-care"] .brand-word b{ color:#FFC266; }
html[data-brand="kesarvan-care"] .brand-icon[src*="kesarvan"]{ border-radius:50%; background:transparent; box-shadow:0 0 0 2px rgba(255,216,160,.35); }

/* ── misc: progress, toasts, scrollbars ───────────────────────────────── */
html[data-brand="kesarvan-care"] .toast{ border-radius:16px; }
html[data-brand="kesarvan-care"] ::selection{ background:#FFD8A0; color:#4E0E23; }
html[data-brand="kesarvan-care"] *::-webkit-scrollbar-thumb{ background:rgba(110,26,53,.22); }

/* Legal footer on ivory: the base footer is dark, so its text is white. */
html[data-brand="kesarvan-care"] .vs-legal-footer :is(.vs-legal-brand,.vs-legal-chip,.vs-legal-chip span,.vs-legal-text){ color:#5e4c43; }
html[data-brand="kesarvan-care"] .vs-legal-footer .vs-legal-chip{ border-color:#e3d3bf; background:#fff; }
/* The hospital's own console: no "open a clinic" sign-up. */
html[data-brand="kesarvan-care"] #tab-signup{ display:none; }
