/* === EzeeHealthcare Base Reset & Tokens === */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;scroll-behavior:smooth}
body{font-family:'Inter',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;color:#000;background:#fff;line-height:1.6;overflow-x:hidden}
img,picture,video,canvas,svg{display:block;max-width:100%}
input,button,textarea,select{font:inherit;color:inherit}
button{cursor:pointer;border:none;background:none}
a{color:inherit;text-decoration:none}
ul,ol{list-style:none}
table{border-collapse:collapse;border-spacing:0}
h1,h2,h3,h4,h5,h6{font-family:'Poppins',sans-serif;font-weight:600;line-height:1.25;color:#000}

:root{
  /* Brand Colors */
  --navy:#0a2174;
  --blue:#275cd1;
  --accent:#2f5bea;
  --yellow:#fecc18;
  --top-bar-bg:#071890;
  --bg:#FFFFFF;
  --bg-alt:#F8FAFC;
  --bg-card:#FFFFFF;
  --footer-bg:#0a2174;
  --footer-border:#123e9f;
  --text:#000000;
  --text-heading:#000000;
  --text-on-dark:#FFFFFF;
  --text-muted:#64748B;
  --text-faint:#94A3B8;
  --border:#E2E8F0;
  --border-light:#F1F5F9;
  --success:#059669;
  --success-bg:#ECFDF5;
  --warning:#D97706;
  --warning-bg:#FFFBEB;
  --danger:#DC2626;
  --danger-bg:#FEF2F2;
  --info:#0284C7;
  --info-bg:#F0F9FF;

  /* Spacing (4px grid) */
  --sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:20px;--sp-6:24px;--sp-8:32px;--sp-10:40px;--sp-12:48px;--sp-16:64px;--sp-20:80px;--sp-24:96px;

  /* Type Scale */
  --text-xs:clamp(0.6875rem,0.65rem + 0.15vw,0.75rem);
  --text-sm:clamp(0.8125rem,0.78rem + 0.15vw,0.875rem);
  --text-base:clamp(0.875rem,0.85rem + 0.15vw,1rem);
  --text-lg:clamp(1.0625rem,1rem + 0.25vw,1.25rem);
  --text-xl:clamp(1.25rem,1.1rem + 0.5vw,1.5rem);
  --text-2xl:clamp(1.5rem,1.2rem + 0.8vw,2rem);
  --text-3xl:clamp(1.875rem,1.5rem + 1.2vw,2.75rem);
  --text-hero:clamp(2.25rem,1.8rem + 2vw,3.5rem);

  /* Radii */
  --radius-sm:4px;--radius-md:8px;--radius-lg:16px;--radius-xl:20px;--radius-pill:50px;--radius-full:9999px;

  /* Shadows */
  --shadow-sm:0 1px 2px rgba(0,0,0,0.05);
  --shadow-md:0 4px 6px -1px rgba(0,0,0,0.07),0 2px 4px -2px rgba(0,0,0,0.05);
  --shadow-lg:0 10px 15px -3px rgba(0,0,0,0.08),0 4px 6px -4px rgba(0,0,0,0.04);
  --shadow-xl:0 20px 25px -5px rgba(0,0,0,0.08),0 8px 10px -6px rgba(0,0,0,0.04);
  --shadow-card:0 0 10px 0 rgba(28,29,40,0.08);
  --shadow-header:0 0px 9px 0 #dcdcdc;

  /* Transitions */
  --ease-out:cubic-bezier(0.16,1,0.3,1);
  --dur-fast:150ms;
  --dur-normal:250ms;
  --dur-slow:400ms;

  /* Layout */
  --max-width:1360px;
  --header-h:70px;
  --sidebar-w:260px;
}

/* Utility focus ring */
:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--radius-sm)}
::selection{background:rgba(39,92,209,0.15);color:var(--navy)}

/* Scrollbar */
::-webkit-scrollbar{width:6px;height:6px}
::-webkit-scrollbar-track{background:transparent}
::-webkit-scrollbar-thumb{background:#CBD5E1;border-radius:3px}
::-webkit-scrollbar-thumb:hover{background:#94A3B8}

/* Tabular nums for data */
.tabular-nums{font-variant-numeric:tabular-nums lining-nums}
