/* SIH India Premium UI Layer — additive only. No business logic or route changes. */
:root{
  --sih-ink:#0b1728;
  --sih-ink-2:#15253a;
  --sih-navy:#071728;
  --sih-navy-2:#0b2742;
  --sih-blue:#1176ff;
  --sih-cyan:#17c3e8;
  --sih-mint:#1ec8a5;
  --sih-coral:#ff5f6d;
  --sih-violet:#7a63ff;
  --sih-amber:#f0a43a;
  --sih-bg:#f4f7fb;
  --sih-surface:#ffffff;
  --sih-soft:#eef4fb;
  --sih-line:#dfe8f2;
  --sih-muted:#6d7c8e;
  --sih-shadow-sm:0 10px 24px rgba(8,27,49,.07);
  --sih-shadow:0 20px 50px rgba(8,27,49,.10);
  --sih-shadow-lg:0 32px 80px rgba(8,27,49,.16);
  --sih-radius-sm:14px;
  --sih-radius:22px;
  --sih-radius-lg:30px;
  --sih-grad-brand:linear-gradient(135deg,#0b2b50 0%,#0f5f9f 46%,#19b9d9 100%);
  --sih-grad-dark:linear-gradient(155deg,#061321 0%,#0a2944 55%,#0a4660 100%);
  --sih-grad-soft:linear-gradient(135deg,#edf7ff 0%,#f5f2ff 48%,#fff2ee 100%);
  --sih-grad-action:linear-gradient(135deg,#0d75ff,#17c3e8);
}

html{scroll-behavior:smooth;background:var(--sih-bg)}
body{
  color:var(--sih-ink);
  background:
    radial-gradient(circle at 8% 0%,rgba(23,195,232,.07),transparent 28%),
    radial-gradient(circle at 96% 10%,rgba(122,99,255,.055),transparent 25%),
    var(--sih-bg);
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
body::selection{background:rgba(23,195,232,.22)}
a,button,input,select,textarea{transition:border-color .18s ease,box-shadow .18s ease,background .18s ease,color .18s ease,transform .18s ease}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid rgba(23,195,232,.24)!important;outline-offset:2px!important}
button:active,.btn:active,.mini-action:active{transform:translateY(1px) scale(.99)}

/* Shared premium surfaces */
.card,.priority-card,.metric-card,.compact-card,.login-card,.auth-card,.notification-row,.consent-card,.share-card,.policy-row,.search-result,.record-row,.receipt-row,.access-row,.appointment-row,.flow-block,.queue-state-strip,.privacy-banner,.insurance-disclaimer,.notice,.wallet-checkout{
  border-color:var(--sih-line)!important;
}
.card,.priority-card,.metric-card,.compact-card,.login-card,.auth-card{
  border-radius:var(--sih-radius)!important;
  box-shadow:var(--sih-shadow-sm)!important;
}
.card{position:relative;overflow:hidden}
.card::before{
  content:"";position:absolute;left:0;right:0;top:0;height:3px;
  background:linear-gradient(90deg,rgba(17,118,255,.0),rgba(23,195,232,.52),rgba(122,99,255,.24),rgba(255,95,109,.0));
  opacity:.56;pointer-events:none;
}
.card:hover{box-shadow:var(--sih-shadow)!important;transform:translateY(-1px)}
.card h1,.card h2,.card h3,h1,h2,h3{letter-spacing:-.025em}
.card h2{font-weight:800}
.card-head,.card-header{gap:18px}
.page-kicker,.eyebrow,.kicker{letter-spacing:.14em!important;font-weight:850!important;color:#137da7!important}

/* Buttons */
.btn,.auth-primary,.auth-secondary,.mini-action,button,.global-search button{
  border-radius:14px!important;
  font-weight:800!important;
  letter-spacing:-.01em;
}
.btn.primary,.btn-primary,.auth-primary,.primary-action,.global-search button{
  color:#fff!important;
  border:0!important;
  background:var(--sih-grad-action)!important;
  box-shadow:0 10px 22px rgba(17,118,255,.20)!important;
}
.btn.primary:hover,.btn-primary:hover,.auth-primary:hover,.primary-action:hover,.global-search button:hover{transform:translateY(-1px);box-shadow:0 16px 32px rgba(17,118,255,.28)!important;filter:saturate(1.04)}
.btn.soft,.btn-secondary,.auth-secondary,.mini-action:not(.primary-action):not(.danger-outline){background:#f0f7fc!important;color:#123c60!important;border:1px solid #d7e8f5!important}
.btn.soft:hover,.btn-secondary:hover,.auth-secondary:hover{background:#e6f5fb!important;border-color:#bde3f1!important}
.btn.danger,.btn-danger,.danger-outline{background:#fff0f1!important;color:#c13d4c!important;border:1px solid #ffd4d8!important}
.text-link{color:#0d7fa9!important}
.text-link:hover{text-decoration:none;color:#075d88!important}

/* Inputs */
input,select,textarea,.field{
  border-radius:14px!important;
  border-color:#d8e4ef!important;
  background:#fff!important;
  color:var(--sih-ink)!important;
}
input:hover,select:hover,textarea:hover{border-color:#bfd4e5!important}
input:focus,select:focus,textarea:focus{border-color:#63c8e4!important;box-shadow:0 0 0 4px rgba(23,195,232,.10)!important;outline:0!important}
label{color:#334a60}

/* Status chips */
.status-pill,.status,.source-chip,.live-badge,.result-type,.privacy-count,.quiet-badge,.doctor-live-badge{
  border-radius:999px!important;
  font-weight:850!important;
  letter-spacing:.01em;
}
.status-completed,.status-done,.ok{background:#e8fbf5!important;color:#08785e!important}
.status-active,.status-info,.live-badge,.doctor-live-badge{background:#e9f7ff!important;color:#086f9e!important}
.status-warning,.status-waiting,.warn{background:#fff5df!important;color:#9b6300!important}
.status-danger,.status-unavailable,.bad{background:#fff0f1!important;color:#b83d49!important}
.status-followup{background:#f1edff!important;color:#624ae1!important}

/* Patient shell */
.patient-shell{grid-template-columns:278px minmax(0,1fr)!important}
.patient-sidebar{
  background:
    radial-gradient(circle at 20% 10%,rgba(23,195,232,.18),transparent 28%),
    linear-gradient(180deg,#071624 0%,#09243b 52%,#0a304b 100%)!important;
  padding:22px 16px!important;
  box-shadow:18px 0 55px rgba(5,25,42,.10);
}
.patient-brand{border-bottom:0!important;padding:4px 8px 20px!important}
.patient-brand b{font-size:21px!important;letter-spacing:-.02em!important}
.patient-brand small{color:#9eb7c9!important}
.patient-nav{gap:5px!important;margin-top:8px!important;padding-right:3px}
.patient-nav::-webkit-scrollbar,.side-nav::-webkit-scrollbar,.ph-nav::-webkit-scrollbar{width:5px}
.patient-nav::-webkit-scrollbar-thumb,.side-nav::-webkit-scrollbar-thumb,.ph-nav::-webkit-scrollbar-thumb{background:rgba(255,255,255,.16);border-radius:999px}
.patient-nav a{
  border-radius:14px!important;padding:10px 12px!important;color:#cbdbe6!important;
  border:1px solid transparent;
}
.patient-nav a span{font-size:16px!important;color:#99c9dc}
.patient-nav a:hover{background:rgba(255,255,255,.07)!important;color:#fff!important;transform:translateX(2px)}
.patient-nav a.active{
  background:linear-gradient(135deg,rgba(23,195,232,.22),rgba(17,118,255,.15))!important;
  border-color:rgba(95,209,234,.18)!important;color:#fff!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.06)
}
.patient-nav a.active span{color:#6ae4ff}
.patient-nav .privacy-nav{border-top:1px solid rgba(255,255,255,.08)!important}
.sidebar-bottom{border-top:1px solid rgba(255,255,255,.08)!important}
.avatar-mini,.avatar,.access-icon,.receipt-icon,.notification-icon{
  background:linear-gradient(135deg,#dff8ff,#ece9ff)!important;color:#123e62!important;
}
.patient-main{padding:32px 38px 34px!important}
.patient-topbar{align-items:center!important;margin-bottom:26px!important}
.patient-topbar h1{font-size:34px!important;margin-top:3px}
.top-actions{background:rgba(255,255,255,.70);backdrop-filter:blur(12px);border:1px solid rgba(215,229,239,.85);border-radius:18px;padding:6px;box-shadow:var(--sih-shadow-sm)}
.language-form select{border:0!important;background:transparent!important}
.global-search input{border:0!important;background:transparent!important;width:260px!important}
.global-search button{min-width:78px!important}
.patient-footer{opacity:.75}

.priority-card{
  background:linear-gradient(135deg,#fff 0%,#f5fbff 60%,#f5f1ff 100%)!important;
  border-left:0!important;padding:26px 28px!important;position:relative;overflow:hidden;
}
.priority-card::after{content:"";position:absolute;width:170px;height:170px;border-radius:50%;right:-70px;top:-95px;background:linear-gradient(135deg,rgba(23,195,232,.16),rgba(122,99,255,.10));pointer-events:none}
.priority-card h2{font-size:23px!important;margin-top:5px}
.priority-card.tone-danger{background:linear-gradient(135deg,#fff 0%,#fff6f6 100%)!important}

.discovery-shortcuts{
  display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:14px!important;margin:0 0 22px!important;
}
.discovery-shortcuts a{
  position:relative;overflow:hidden;background:#fff!important;border:1px solid var(--sih-line)!important;
  border-radius:20px!important;padding:17px 16px!important;box-shadow:var(--sih-shadow-sm)!important;
  min-height:126px;display:flex!important;flex-direction:column;justify-content:flex-end;
}
.discovery-shortcuts a::before{content:"";position:absolute;inset:0 0 auto 0;height:4px;background:var(--shortcut,#17c3e8)}
.discovery-shortcuts a>span{width:42px!important;height:42px!important;border-radius:14px!important;display:grid!important;place-items:center;background:color-mix(in srgb,var(--shortcut,#17c3e8) 13%,white)!important;color:var(--shortcut,#17c3e8)!important;font-size:20px!important;margin-bottom:13px}
.discovery-shortcuts a b{font-size:14px!important;color:#10273a!important}
.discovery-shortcuts a small{font-size:11px!important;color:#788898!important;margin-top:3px}
.discovery-shortcuts a:hover{transform:translateY(-4px);box-shadow:var(--sih-shadow)!important;border-color:#c9ddea!important}
.discovery-shortcuts a:nth-child(4n+1){--shortcut:#1176ff}.discovery-shortcuts a:nth-child(4n+2){--shortcut:#7a63ff}.discovery-shortcuts a:nth-child(4n+3){--shortcut:#1ec8a5}.discovery-shortcuts a:nth-child(4n+4){--shortcut:#ff6675}
.home-grid{gap:22px!important}.two-col-grid,.report-grid,.family-grid{gap:20px!important}
.metric-strip{gap:14px!important}.mini-metric{background:linear-gradient(180deg,#fff,#f8fbfe)!important;border-radius:16px!important;padding:16px!important}.mini-metric strong{font-size:22px!important}
.time-grid>div,.summary-grid>div,.profile-facts>div{background:#f7fafc!important;border-color:#e1eaf2!important;border-radius:16px!important}
.access-now-card{background:linear-gradient(180deg,#fff,#fbfdff)!important}.quick-links a{border-radius:14px;padding:12px!important}.quick-links a:hover{background:#f4f9fd}
.flash-message,.flash{border-radius:16px!important;box-shadow:var(--sih-shadow-sm)!important}

/* Provider/search cards */
.doctor-card,.hospital-card,.lab-card,.search-result,.record-row,.policy-row,.notification-row,.consent-card,.share-card,.receipt-row{
  background:#fff;border-radius:18px!important;border:1px solid var(--sih-line)!important;box-shadow:0 8px 22px rgba(8,27,49,.05);
}
.doctor-card:hover,.hospital-card:hover,.lab-card:hover,.search-result:hover{transform:translateY(-2px);box-shadow:var(--sih-shadow)!important}

/* Doctor shell */
.app-shell{grid-template-columns:268px minmax(0,1fr)!important}
.sidebar{
  background:
   radial-gradient(circle at 20% 12%,rgba(23,195,232,.18),transparent 29%),
   linear-gradient(180deg,#071624,#0b2d48)!important;
  box-shadow:18px 0 55px rgba(5,25,42,.10)!important;
}
.brand{border-bottom:0!important;padding-bottom:18px!important}.brand b{font-size:21px!important;letter-spacing:-.02em}.brand small{color:#9eb6c7!important}
.side-nav{gap:6px!important}.side-nav a{border-radius:14px!important;border:1px solid transparent!important;color:#c8d9e5!important}.side-nav a:hover{background:rgba(255,255,255,.07)!important;color:#fff!important;transform:translateX(2px)}
.side-nav a.active-nav{background:linear-gradient(135deg,rgba(23,195,232,.22),rgba(17,118,255,.15))!important;border-color:rgba(95,209,234,.18)!important;color:#fff!important}
.workspace{background:transparent!important;padding:30px 34px!important}.topbar{margin-bottom:24px!important}.topbar h1{font-size:34px!important}.doctor-chip{background:rgba(255,255,255,.78)!important;backdrop-filter:blur(12px);border:1px solid var(--sih-line)!important;border-radius:18px!important;padding:7px 10px!important;box-shadow:var(--sih-shadow-sm)}
.dashboard-action-row,.availability-alert,.critical-alert{border-radius:18px!important}
.stats-grid{gap:16px!important}.metric-card{padding:20px!important;overflow:hidden;position:relative;background:#fff!important}.metric-card::after{content:"";position:absolute;width:90px;height:90px;border-radius:50%;right:-32px;top:-35px;background:var(--metric-glow,rgba(17,118,255,.10))}.metric-card strong{font-size:34px!important}.metric-blue{--metric-glow:rgba(17,118,255,.13)}.metric-green{--metric-glow:rgba(30,200,165,.16)}.metric-amber{--metric-glow:rgba(240,164,58,.18)}
.queue-state-strip{border-radius:18px!important;background:#fff!important;box-shadow:var(--sih-shadow-sm)!important}.dashboard-layout{gap:22px!important}
.appointments-card{padding:22px!important}.appointment-row{border-radius:16px!important;margin:8px 0!important;padding:14px!important;border:1px solid #e6edf4!important;background:#fbfdff!important}.appointment-row:hover{background:#fff!important;border-color:#cfe0ec!important;box-shadow:0 10px 22px rgba(8,27,49,.06)}
.flow-block{border-radius:16px!important}.queue-mini-grid>div{border-radius:14px!important}

/* Pharmacy */
.ph-shell{grid-template-columns:268px minmax(0,1fr)!important}.ph-sidebar{background:var(--sih-grad-dark)!important;box-shadow:18px 0 55px rgba(5,25,42,.10)}.ph-brand b{font-size:21px!important}.ph-nav{gap:6px!important}.ph-nav a{border-radius:14px!important;border:1px solid transparent;color:#cadde8!important}.ph-nav a:hover{background:rgba(255,255,255,.07)!important;color:#fff!important;transform:translateX(2px)}.ph-nav a.active{background:linear-gradient(135deg,rgba(23,195,232,.22),rgba(17,118,255,.15))!important;border-color:rgba(95,209,234,.18)!important;color:#fff!important}.ph-main{background:transparent!important;padding:30px 34px!important}.ph-topbar h1{font-size:34px!important}.user-chip{background:rgba(255,255,255,.8)!important;backdrop-filter:blur(10px);border:1px solid var(--sih-line)!important;border-radius:18px!important;box-shadow:var(--sih-shadow-sm)}
.privacy-banner{background:linear-gradient(135deg,#08243d,#0a5d78)!important;border:0!important;border-radius:20px!important;box-shadow:0 16px 34px rgba(7,47,75,.16)!important}.metrics .metric:nth-child(1){border-top:4px solid #1176ff!important}.metrics .metric:nth-child(2){border-top:4px solid #1ec8a5!important}.metrics .metric:nth-child(3){border-top:4px solid #f0a43a!important}.metrics .metric:nth-child(4){border-top:4px solid #ff5f6d!important}.metrics .metric:nth-child(5){border-top:4px solid #7a63ff!important}.metrics .metric:nth-child(6){border-top:4px solid #17c3e8!important}
.table{border-collapse:separate!important;border-spacing:0 7px!important}.table th{border-top:0!important;color:#758597!important}.table td{background:#fbfdff;border-top:1px solid #edf1f5!important;border-bottom:1px solid #edf1f5}.table td:first-child{border-left:1px solid #edf1f5;border-radius:12px 0 0 12px}.table td:last-child{border-right:1px solid #edf1f5;border-radius:0 12px 12px 0}

/* Insurer / Hospital partner */
.ip-shell{grid-template-columns:260px minmax(0,1fr)!important}.ip-side{background:var(--sih-grad-dark)!important;padding:24px 16px!important;box-shadow:18px 0 55px rgba(5,25,42,.10)}.ip-brand b{font-size:22px!important}.ip-brand span{color:#9eb7c9}.ip-side nav{gap:6px!important}.ip-side nav a,.ip-foot a,.link-button{border-radius:14px!important;color:#cfe2ed!important}.ip-side nav a:hover,.link-button:hover{background:rgba(255,255,255,.08)!important;color:#fff!important}.ip-main{padding:32px 36px!important;background:transparent!important}.ip-main header h1{font-size:34px!important}.metric-grid{gap:16px!important}.metric-grid>div{border-radius:20px!important;box-shadow:var(--sih-shadow-sm)!important;position:relative;overflow:hidden}.metric-grid>div::after{content:"";position:absolute;width:84px;height:84px;border-radius:50%;right:-30px;top:-30px;background:rgba(23,195,232,.10)}.metric-grid b{font-size:32px!important}.notice{border-left:0!important;border-radius:18px!important;background:linear-gradient(135deg,#eaf8fd,#f4f0ff)!important;color:#27425a}.notice.danger{background:linear-gradient(135deg,#fff1f1,#fff8f5)!important}.queue{border-bottom-color:#e7eef5!important}

/* Auth / Login experiences */
.auth-body,.patient-login-page,.login-page,.login-body,.auth-shell{
  min-height:100vh;
}
.auth-body,.patient-login-page,.login-body{
  background:
   radial-gradient(circle at 12% 8%,rgba(23,195,232,.20),transparent 30%),
   radial-gradient(circle at 85% 15%,rgba(122,99,255,.16),transparent 24%),
   linear-gradient(135deg,#06131f 0%,#092d49 48%,#0b5168 100%)!important;
}
.auth-shell.nic-login,.login-shell,.login-page{min-height:100vh!important;display:grid!important;grid-template-columns:1.08fr .92fr!important;background:transparent!important}
.auth-brand-panel,.login-brand-panel,.login-page>.login-brand{
  position:relative;overflow:hidden;
  background:
    radial-gradient(circle at 25% 20%,rgba(23,195,232,.18),transparent 28%),
    radial-gradient(circle at 75% 75%,rgba(122,99,255,.16),transparent 26%),
    linear-gradient(150deg,#061522,#092d49 58%,#0a536b 100%)!important;
  color:#fff!important;
}
.auth-brand-panel::before,.login-brand-panel::before,.login-page>.login-brand::before{content:"";position:absolute;inset:auto -80px -120px auto;width:360px;height:360px;border-radius:50%;border:1px solid rgba(255,255,255,.11);box-shadow:0 0 0 48px rgba(255,255,255,.025),0 0 0 96px rgba(255,255,255,.018);pointer-events:none}
.auth-brand-panel,.login-brand-panel{padding:52px 64px!important;display:flex!important;flex-direction:column;justify-content:space-between}.login-page>.login-brand{padding:54px 70px!important;display:flex!important;flex-direction:column!important;justify-content:space-between!important}.auth-brand-top,.login-brand-panel .login-brand,.login-page>.login-brand{position:relative;z-index:1}.auth-brand-top b,.login-brand-panel .login-brand b,.login-page>.login-brand .logo-line b{font-size:23px!important;letter-spacing:-.02em}.auth-brand-top small,.login-eyebrow{color:#acd4e1!important}.auth-message,.login-copy{position:relative;z-index:1;max-width:600px}.auth-message h1,.login-copy h1,.login-page>.login-brand h1{color:#fff!important;font-size:clamp(42px,5.2vw,72px)!important;line-height:1.01!important;letter-spacing:-.05em!important;margin-bottom:20px!important}.auth-message h1 span{color:#6ce6ff!important}.login-copy p,.login-page>.login-brand p{color:#c8dbe6!important;font-size:18px!important;max-width:560px}.hero-line,.login-rule{width:78px!important;height:4px!important;border:0!important;border-radius:999px;background:linear-gradient(90deg,#17c3e8,#7a63ff,#ff6675)!important;margin:24px 0!important}.trust-line{color:#b9d4df;font-weight:700;font-size:12px;letter-spacing:.04em}
.auth-form-panel,.login-card-wrap{background:linear-gradient(135deg,#f7fbfe 0%,#f6f3ff 100%)!important;display:grid!important;place-items:center!important;padding:34px!important}.auth-card,.login-card{width:min(470px,100%)!important;background:rgba(255,255,255,.94)!important;backdrop-filter:blur(16px);border:1px solid rgba(219,231,240,.92)!important;border-radius:28px!important;padding:34px!important;box-shadow:var(--sih-shadow-lg)!important}.auth-card h2,.login-card h2{font-size:30px!important;color:#0b2236!important;margin-bottom:7px!important}.auth-card>p,.login-card>p{color:#778899!important}.doctor-login-icon{background:linear-gradient(135deg,#e6f8ff,#efebff)!important;color:#156c98!important;width:52px!important;height:52px!important;border-radius:17px!important;display:grid!important;place-items:center!important;font-size:24px!important;margin-bottom:18px}.auth-form label,.stack-form label,.login-card label{font-size:12px!important;font-weight:800!important;color:#3a5064!important}.auth-form input,.stack-form input,.login-card input{min-height:48px!important;padding:12px 14px!important}.auth-primary,.auth-secondary,.large-btn,.login-card .btn-primary{min-height:48px!important;width:100%!important}.demo-credentials,.demo{border-radius:14px!important;background:#f5f8fb!important;border:1px dashed #d2e0ea!important}.auth-error,.login-alert{border-radius:14px!important;background:#fff0f1!important;color:#a73542!important;border:1px solid #ffd2d7!important}

/* Hospital standalone */
.container{max-width:1280px!important;margin:0 auto!important;padding:32px 28px!important}.page-head{margin-bottom:22px!important}.page-head h1{font-size:34px!important}.list-row{background:#fff!important;border:1px solid var(--sih-line)!important;border-radius:18px!important;padding:16px!important;margin:10px 0!important;box-shadow:0 8px 22px rgba(8,27,49,.05)}

/* Rich responsive tables and forms */
.table-wrap{border-radius:16px}.form-grid{gap:14px!important}.form-grid label,.stack label{font-size:12px;font-weight:800;color:#42586c}.check-grid,.summary-grid,.profile-facts{gap:12px!important}
.empty-state,.empty{border-radius:16px!important;background:linear-gradient(135deg,#f7fafc,#f5f7fb)!important;border:1px dashed #d8e2eb!important;color:#708194!important}

/* Microinteractions */
@keyframes sihFadeUp{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
.patient-main>.card,.patient-main>.priority-card,.workspace>.card,.workspace>.dashboard-layout,.ph-main>.card,.ph-main>.grid,.ip-main>.card,.ip-main>.metric-grid{animation:sihFadeUp .35s ease both}
.patient-main>:nth-child(2),.workspace>:nth-child(2),.ph-main>:nth-child(2){animation-delay:.03s}
.patient-main>:nth-child(3),.workspace>:nth-child(3),.ph-main>:nth-child(3){animation-delay:.06s}
.sih-pressable{position:relative;overflow:hidden}

@media(max-width:1180px){
  .discovery-shortcuts{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .patient-shell,.app-shell,.ph-shell,.ip-shell{grid-template-columns:236px minmax(0,1fr)!important}
  .patient-main,.workspace,.ph-main,.ip-main{padding:26px 24px!important}
}
@media(max-width:900px){
  .patient-shell,.app-shell,.ph-shell,.ip-shell{display:block!important}
  .patient-sidebar,.sidebar,.ph-sidebar,.ip-side{position:relative!important;height:auto!important;box-shadow:none!important}
  .patient-nav,.side-nav,.ph-nav,.ip-side nav{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;max-height:none!important}
  .patient-nav a,.side-nav a,.ph-nav a,.ip-side nav a{min-width:0!important}
  .patient-main,.workspace,.ph-main,.ip-main{padding:20px 16px 30px!important}
  .patient-topbar,.ph-topbar,.topbar{align-items:flex-start!important;flex-direction:column!important}
  .top-actions{width:100%;flex-wrap:wrap!important}.global-search{flex:1;min-width:230px}.global-search input{width:100%!important}
  .discovery-shortcuts{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .auth-shell.nic-login,.login-shell,.login-page{grid-template-columns:1fr!important}
  .auth-brand-panel,.login-brand-panel,.login-page>.login-brand{display:none!important}
  .auth-form-panel,.login-card-wrap{min-height:100vh!important;padding:20px!important}
}
@media(max-width:620px){
  .patient-main,.workspace,.ph-main,.ip-main{padding:16px 12px 28px!important}
  .patient-topbar h1,.topbar h1,.ph-topbar h1,.ip-main header h1,.page-head h1{font-size:28px!important}
  .discovery-shortcuts{grid-template-columns:1fr 1fr!important;gap:10px!important}.discovery-shortcuts a{min-height:116px;padding:14px!important}
  .home-grid,.two-col-grid,.report-grid,.family-grid,.two,.metric-grid,.form-grid{grid-template-columns:1fr!important}
  .patient-nav,.side-nav,.ph-nav,.ip-side nav{grid-template-columns:1fr 1fr!important}
  .top-actions{padding:5px!important}.global-search{min-width:100%;width:100%}.language-form{width:100%}.language-form select{width:100%!important}
  .priority-card{align-items:flex-start!important;flex-direction:column!important}.priority-card .btn{width:100%}
  .auth-card,.login-card{padding:26px 22px!important;border-radius:24px!important}
  .button-row>.btn,.button-row>button,.button-row>a,.action-bar>.btn,.action-bar>button,.action-bar>a{width:100%}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* Standalone partner auth, onboarding and verification polish */
.auth-shell:not(.nic-login){
  min-height:100vh!important;display:grid!important;place-items:center!important;padding:28px!important;
  background:
    radial-gradient(circle at 15% 10%,rgba(23,195,232,.18),transparent 28%),
    radial-gradient(circle at 88% 18%,rgba(122,99,255,.15),transparent 26%),
    linear-gradient(145deg,#061421,#0a2e49 58%,#0b5368)!important;
}
.auth-shell:not(.nic-login)>.card{
  width:min(470px,100%)!important;background:rgba(255,255,255,.96)!important;border-radius:28px!important;
  padding:34px!important;box-shadow:var(--sih-shadow-lg)!important;border:1px solid rgba(220,232,241,.95)!important;
}
.auth-shell:not(.nic-login)>.card h1{font-size:30px!important;color:#0b2236!important;margin-bottom:8px!important}
.auth-shell:not(.nic-login)>.card p{color:#738597!important}
.auth-shell:not(.nic-login)>.card button{width:100%!important;min-height:48px!important;background:var(--sih-grad-action)!important;color:#fff!important;box-shadow:0 10px 22px rgba(17,118,255,.2)!important}

.onboarding-body{
  background:
    radial-gradient(circle at 4% 0%,rgba(23,195,232,.09),transparent 28%),
    radial-gradient(circle at 95% 6%,rgba(122,99,255,.07),transparent 25%),
    #f4f7fb!important;
}
.onboarding-shell{max-width:1180px!important;padding:32px 24px 48px!important}
.onboarding-header{background:rgba(255,255,255,.82);backdrop-filter:blur(14px);border:1px solid var(--sih-line)!important;border-radius:20px!important;padding:12px 16px!important;margin-bottom:24px!important;box-shadow:var(--sih-shadow-sm)}
.onboarding-brand b{font-size:17px!important;color:#10283c!important}.onboarding-brand span{font-size:11px!important;color:#788a9a!important}
.onboarding-grid{gap:18px!important}.onboarding-section{border-radius:24px!important}.onboarding-section .card-header{padding:4px 2px 12px!important}.onboarding-section .eyebrow{display:inline-flex;background:#eaf7fd;border-radius:999px;padding:5px 9px!important}.formgrid{gap:15px!important}.formgrid input,.formgrid select{min-height:47px!important}.onboarding-submit{border-radius:20px!important;background:linear-gradient(135deg,#fff,#f2f9fd)!important;padding:18px 20px!important;box-shadow:var(--sih-shadow-sm)!important}.onboarding-submit .big-action{min-width:210px!important}

.verify-body{
  background:
    radial-gradient(circle at 14% 8%,rgba(23,195,232,.12),transparent 28%),
    radial-gradient(circle at 90% 4%,rgba(122,99,255,.10),transparent 23%),
    #f4f7fb!important;
}
.verify-brand{max-width:1100px;margin:0 auto;background:rgba(255,255,255,.78);backdrop-filter:blur(12px);border:1px solid var(--sih-line);border-radius:18px;padding:10px 14px;box-shadow:var(--sih-shadow-sm)}
.verify-card{border-radius:30px!important;padding:44px 38px!important;box-shadow:var(--sih-shadow-lg)!important;border-color:var(--sih-line)!important}.verify-icon{width:68px;height:68px;border-radius:22px;display:grid;place-items:center;margin:0 auto 16px;background:linear-gradient(135deg,#e5f8ff,#efebff);font-size:30px!important;color:#146e9b!important}.verify-card h1{font-size:34px!important}.otp-input{border-radius:16px!important;background:#f9fbfd!important;letter-spacing:12px!important}.text-button{color:#0d78a6!important}

.login-body .login-card{border-radius:28px!important;padding:34px!important;box-shadow:var(--sih-shadow-lg)!important}.login-body .login-card h1{font-size:30px!important;color:#10283c!important}.login-body .login-card>button{width:100%;min-height:48px;background:var(--sih-grad-action)!important;box-shadow:0 10px 22px rgba(17,118,255,.2)!important}

.shared-passport{padding-top:36px!important}.shared-passport>.card:first-child{background:linear-gradient(135deg,#fff,#f4fbff 60%,#f3efff)!important}.passport-json{border-radius:16px!important;background:#071927!important;color:#d8eff7!important;border:1px solid #153d55!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.03)}

@media(max-width:620px){
  .onboarding-shell{padding:16px 12px 30px!important}.onboarding-header{align-items:flex-start!important;gap:12px!important;flex-direction:column!important}.onboarding-header>.btn{width:100%!important}.onboarding-submit .big-action{min-width:0!important}.verify-body{padding:16px!important}.verify-card{margin-top:28px!important;padding:30px 22px!important}.verify-brand{align-items:center!important}.auth-shell:not(.nic-login){padding:16px!important}
}

/* Compact brand stays visible when split-login hero is hidden on mobile. */
.mobile-auth-brand{display:none;align-items:center;gap:10px;margin:0 0 20px;color:#10283c}
.mobile-auth-brand img{width:38px;height:38px;object-fit:contain;border-radius:12px;background:#eef8fc;padding:4px}
.mobile-auth-brand span{display:flex;flex-direction:column;line-height:1.15}
.mobile-auth-brand b{font-size:16px;letter-spacing:-.02em}
.mobile-auth-brand small{font-size:11px;color:#718497;margin-top:3px}
@media(max-width:900px){.mobile-auth-brand{display:flex}}

/* Keep the doctor's off-canvas navigation out of document flow on phones. */
@media(max-width:640px){
  .app-shell>.sidebar{position:fixed!important;left:0!important;top:0!important;bottom:0!important;width:min(86vw,310px)!important;height:100dvh!important;z-index:70!important;transform:translateX(-104%)!important}
  .app-shell>.sidebar.mobile-open{transform:translateX(0)!important}
}

/* Premium doctor dark-theme compatibility. Keeps the existing theme toggle visually coherent. */
[data-theme="dark"]{
  --sih-ink:#e7eef7;
  --sih-ink-2:#cbd7e6;
  --sih-bg:#0f1724;
  --sih-surface:#1b2533;
  --sih-soft:#162131;
  --sih-line:#314052;
  --sih-muted:#9aabba;
  --sih-shadow-sm:0 10px 24px rgba(0,0,0,.18);
  --sih-shadow:0 20px 50px rgba(0,0,0,.26);
}
[data-theme="dark"] body{
  color:var(--sih-ink);
  background:
    radial-gradient(circle at 8% 0%,rgba(23,195,232,.08),transparent 28%),
    radial-gradient(circle at 96% 10%,rgba(122,99,255,.06),transparent 25%),
    var(--sih-bg);
}
[data-theme="dark"] .card,
[data-theme="dark"] .priority-card,
[data-theme="dark"] .metric-card,
[data-theme="dark"] .compact-card,
[data-theme="dark"] .notification-row,
[data-theme="dark"] .consent-card,
[data-theme="dark"] .share-card,
[data-theme="dark"] .policy-row,
[data-theme="dark"] .search-result,
[data-theme="dark"] .record-row,
[data-theme="dark"] .receipt-row,
[data-theme="dark"] .access-row,
[data-theme="dark"] .appointment-row,
[data-theme="dark"] .flow-block,
[data-theme="dark"] .queue-state-strip,
[data-theme="dark"] .doctor-chip,
[data-theme="dark"] .user-chip,
[data-theme="dark"] .metric-grid>div{
  background:var(--sih-surface)!important;
  border-color:var(--sih-line)!important;
  color:var(--sih-ink)!important;
}
[data-theme="dark"] .priority-card{background:linear-gradient(135deg,#1b2533,#182a3b 62%,#22263e)!important}
[data-theme="dark"] .mini-metric,
[data-theme="dark"] .time-grid>div,
[data-theme="dark"] .summary-grid>div,
[data-theme="dark"] .profile-facts>div,
[data-theme="dark"] .appointment-row,
[data-theme="dark"] .table td{
  background:#172230!important;
  border-color:#2b3a4c!important;
}
[data-theme="dark"] input,
[data-theme="dark"] select,
[data-theme="dark"] textarea,
[data-theme="dark"] .field{
  background:#121c29!important;
  color:var(--sih-ink)!important;
  border-color:#344457!important;
}
[data-theme="dark"] input::placeholder,
[data-theme="dark"] textarea::placeholder{color:#73869a!important}
[data-theme="dark"] label,
[data-theme="dark"] .card h1,
[data-theme="dark"] .card h2,
[data-theme="dark"] .card h3,
[data-theme="dark"] h1,
[data-theme="dark"] h2,
[data-theme="dark"] h3{color:var(--sih-ink)!important}
[data-theme="dark"] .table th{color:#9fb0c1!important;background:#131e2b!important}
[data-theme="dark"] .btn.soft,
[data-theme="dark"] .btn-secondary,
[data-theme="dark"] .auth-secondary,
[data-theme="dark"] .mini-action:not(.primary-action):not(.danger-outline){background:#172d41!important;color:#bcdcf0!important;border-color:#31506a!important}
[data-theme="dark"] .flash-message,
[data-theme="dark"] .flash{background:#16283a!important;color:#d9eaf6!important;border-color:#2d4b64!important}
[data-theme="dark"] .quick-links a:hover{background:#182838!important}
