@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap');

:root{
  --red:#E53935;
  --red-dark:#D32F2F;
  --red-deep:#B91C1C;
  --red-soft:rgba(229,57,53,.08);
  --red-border:rgba(229,57,53,.18);
  --blue:#2563EB;
  --blue-dark:#1D4ED8;
  --blue-soft:rgba(37,99,235,.08);
  --teal:#14B8A6;
  --orange:#F59E0B;
  --bg-deep:#FFFFFF;
  --bg-mid:#F8FAFC;
  --bg-card:#FFFFFF;
  --bg-card2:#F5F7FA;
  --bg-hover:#F8FAFC;
  --border:#E5E7EB;
  --border-hi:#CBD5E1;
  --border-dim:#E5E7EB;
  --text:#111827;
  --text-muted:#64748B;
  --text-dim:#475569;
  --glow-red:0 8px 30px rgba(15,23,42,.06);
  --glow-blue:0 8px 30px rgba(15,23,42,.06);
  --shadow-soft:0 8px 30px rgba(15,23,42,.06);
  --shadow-hover:0 18px 44px rgba(15,23,42,.10);
  --transition:all .24s cubic-bezier(.4,0,.2,1);
  --font-display:'Inter',system-ui,sans-serif;
  --font-body:'Inter',system-ui,sans-serif;
  --font-mono:'JetBrains Mono','SFMono-Regular',Consolas,monospace;
}

html{background:#fff;}
body{
  font-family:var(--font-body) !important;
  background:
    radial-gradient(circle at 18% 0%,rgba(229,57,53,.045),transparent 32rem),
    radial-gradient(circle at 86% 12%,rgba(37,99,235,.04),transparent 34rem),
    #fff !important;
  color:var(--text) !important;
}
body::before{background:transparent !important;}
::selection{background:rgba(229,57,53,.14);color:var(--text);}
::-webkit-scrollbar{width:8px;height:8px;}
::-webkit-scrollbar-track{background:#f8fafc;}
::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:999px;}

.display-heading,.display-italic,.section-title,.hero-h1,.hero-h2,
.auth-form-title,.auth-hero h2,.verify-card h1{
  font-family:var(--font-display) !important;
  font-style:normal !important;
  letter-spacing:0 !important;
}
.display-italic,.hero-h2,.hero-h2 em,.auth-hero h2 em,.section-title em{color:var(--red) !important;font-style:normal !important;}

a{color:inherit;}
:focus-visible{outline:3px solid rgba(37,99,235,.28);outline-offset:3px;border-radius:10px;}

.btn,.btn-primary,.btn-outline,.btn-red,.btn-ghost,.btn-danger,
.btn-hero-primary,.btn-hero-outline,.google-btn,.btn-resend,.btn-logout{
  min-height:48px;
  border-radius:12px !important;
  font-size:16px;
  letter-spacing:0 !important;
  box-shadow:none !important;
}
.btn-primary,.btn-red,.btn-hero-primary,.btn-resend{
  background:var(--red) !important;
  color:#fff !important;
  border:1px solid var(--red) !important;
}
.btn-primary:hover,.btn-red:hover,.btn-hero-primary:hover,.btn-resend:hover{
  background:var(--red-dark) !important;
  transform:translateY(-2px);
  box-shadow:0 12px 24px rgba(229,57,53,.18) !important;
}
.btn-outline,.btn-hero-outline,.btn-ghost,.btn-logout,.google-btn{
  background:#fff !important;
  color:var(--text-dim) !important;
  border:1px solid var(--border) !important;
}
.btn-outline:hover,.btn-hero-outline:hover,.btn-ghost:hover,.btn-logout:hover,.google-btn:hover{
  background:#f8fafc !important;
  color:var(--text) !important;
  border-color:#cbd5e1 !important;
  transform:translateY(-2px);
}
.btn-danger{background:#fff !important;color:var(--red) !important;border:1px solid var(--red-border) !important;}
.btn-danger:hover{background:var(--red-soft) !important;}

.main-nav{
  background:rgba(255,255,255,.86) !important;
  backdrop-filter:blur(22px);
  border-bottom:1px solid rgba(229,231,235,.84) !important;
  box-shadow:0 8px 30px rgba(15,23,42,.04);
  padding:16px clamp(20px,4vw,56px) !important;
}
.main-nav.scrolled{background:rgba(255,255,255,.94) !important;border-bottom-color:#e5e7eb !important;}
.nav-logo .logo-icon,.sidebar-logo .icon,.auth-logo .icon{
  background:var(--red) !important;
  border-radius:12px !important;
  box-shadow:0 10px 24px rgba(229,57,53,.18) !important;
}
.nav-logo span,.auth-logo .brand-name,.sidebar-logo .name,.dash-mini-nav .brand{color:var(--text) !important;font-family:var(--font-display) !important;}
.nav-links{gap:30px !important;position:absolute;left:50%;transform:translateX(-50%);}
.nav-links a,.nav-login{color:var(--text-dim) !important;font-weight:600 !important;}
.nav-links a::after{background:var(--red) !important;height:2px;border-radius:999px;bottom:-7px;}
.nav-links a:hover,.nav-login:hover{color:var(--text) !important;}
.nav-btns .nav-login:first-child{
  background:var(--red);
  color:#fff !important;
  padding:10px 18px;
  border-radius:12px;
  box-shadow:0 10px 24px rgba(229,57,53,.16);
}
.nav-btns .nav-login:first-child:hover{background:var(--red-dark) !important;color:#fff !important;}

.hero{
  min-height:calc(100vh - 8px) !important;
  display:grid !important;
  grid-template-columns:minmax(0,1fr) minmax(360px,.92fr);
  align-items:center !important;
  justify-content:initial !important;
  text-align:left !important;
  gap:64px;
  max-width:1280px;
  margin:0 auto;
  padding:132px 48px 100px !important;
  background:
    radial-gradient(circle at 8% 16%,rgba(229,57,53,.08),transparent 28rem),
    radial-gradient(circle at 82% 22%,rgba(37,99,235,.06),transparent 30rem),
    linear-gradient(180deg,#fff 0%,#f8fafc 100%) !important;
}
.hero::before{
  background-image:linear-gradient(rgba(15,23,42,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(15,23,42,.035) 1px,transparent 1px) !important;
  background-size:42px 42px !important;
  mask-image:linear-gradient(90deg,#000,transparent 82%);
}
.hero::after{display:none !important;}
.hero-badge,.hero-h1,.hero-h2,.hero-sub,.hero-btns{grid-column:1;max-width:650px;}
.hero-badge{
  width:max-content;
  background:#fff !important;
  color:var(--red) !important;
  border:1px solid var(--border) !important;
  border-radius:999px !important;
  box-shadow:var(--shadow-soft);
  margin-bottom:24px !important;
}
.hero-h1{
  color:var(--text) !important;
  font-size:clamp(3rem,5vw,4rem) !important;
  line-height:1.04 !important;
  margin-bottom:6px !important;
}
.hero-h2{font-size:clamp(3rem,5vw,4rem) !important;line-height:1.04 !important;margin-bottom:26px !important;}
.hero-sub{font-size:17px !important;line-height:1.8 !important;color:var(--text-dim) !important;margin-bottom:34px !important;}
.hero-btns{justify-content:flex-start !important;margin-bottom:0 !important;}
.ecg-hero-strip{
  grid-column:2;
  grid-row:1 / span 5;
  align-self:center;
  width:100% !important;
  max-width:none !important;
  background:#fff !important;
  border:1px solid var(--border) !important;
  border-radius:28px !important;
  padding:34px 34px 28px !important;
  box-shadow:0 28px 70px rgba(15,23,42,.11),0 1px 0 rgba(255,255,255,.9) inset !important;
}
.ecg-hero-strip::before{
  content:'';
  display:block;
  height:44px;
  margin:-8px -6px 24px;
  border-radius:18px;
  background:linear-gradient(90deg,#f8fafc,#fff);
  border:1px solid var(--border);
}
.ecg-hero-strip canvas{background:#fbfdff;border:1px solid #eef2f7;border-radius:18px !important;}
.ecg-meta{color:var(--text-muted) !important;gap:14px !important;flex-wrap:wrap;}
.ecg-meta .bpm-val{color:var(--text) !important;}
.ecg-meta .rhythm-val{color:var(--red) !important;}

.stats-bar{
  max-width:1280px;
  margin:0 auto;
  padding:0 48px 110px !important;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:24px !important;
  background:#fff !important;
  border:0 !important;
}
.stat-item{
  text-align:left !important;
  background:#fff;
  border:1px solid var(--border) !important;
  border-radius:18px;
  padding:28px !important;
  box-shadow:var(--shadow-soft);
}
.stat-item:not(:last-child){border-right:1px solid var(--border) !important;}
.stat-val{font-family:var(--font-display) !important;font-size:42px !important;color:var(--text) !important;letter-spacing:0 !important;}
.stat-lab{font-size:15px !important;color:var(--text-dim) !important;margin-top:12px !important;}

section,section[style],.arch-section,#features,#hardware,#gallery,#team{
  background:#fff !important;
  border-color:var(--border) !important;
}
section:nth-of-type(even){background:#f8fafc !important;}
.section-wrap{max-width:1280px !important;padding:110px 48px !important;}
.section-wrap.narrow{max-width:1040px !important;}
.section-label{color:var(--red) !important;font-size:13px !important;letter-spacing:.14em !important;}
.section-title{color:var(--text) !important;font-size:clamp(2.3rem,4vw,42px) !important;font-weight:750 !important;line-height:1.12 !important;margin-bottom:16px !important;}
.section-sub{font-size:17px !important;color:var(--text-dim) !important;line-height:1.8 !important;max-width:720px !important;}

.glass-card,.metric-card,.chart-panel,.ecg-wrapper,.ai-panel,.profile-card,.setting-item,
.status-card,.map-box,.r-metric,.feat-card,.hw-card,.ds-card,.team-card,.ai-model-card,
.dataflow-wrap,.circuit-wrap,.tech-block,.df-step,.arch-node-card,.pipe-item,.doc-vital{
  background:#fff !important;
  border:1px solid var(--border) !important;
  border-radius:18px !important;
  box-shadow:var(--shadow-soft) !important;
  color:var(--text) !important;
}
.glass-card:hover,.metric-card:hover,.chart-panel:hover,.feat-card:hover,.hw-card:hover,
.team-card:hover,.ai-model-card:hover,.r-metric:hover,.setting-item:hover,.ds-card:hover,
.arch-node:hover .arch-node-card,.pipe-item:hover{
  border-color:#d7dde6 !important;
  transform:translateY(-6px);
  box-shadow:var(--shadow-hover) !important;
}
.metric-card{padding:28px !important;min-height:150px;}
.metric-card::after{height:3px;background:var(--red);}
.metric-card .label{color:var(--text-muted) !important;font-size:12px !important;letter-spacing:.08em !important;}
.metric-card .value{color:var(--text) !important;font-size:34px !important;font-family:var(--font-display) !important;}
.metric-card .sub,.chart-panel-header .sub,.profile-email,.r-lab,.patient-meta,.timer-text{color:var(--text-muted) !important;}
.chart-panel{padding:28px !important;}
.chart-panel-header h3{color:var(--text) !important;font-size:16px !important;font-family:var(--font-display) !important;}
.chart-panel canvas{max-width:100%;}

.features-grid{grid-template-columns:repeat(4,1fr) !important;gap:32px !important;}
.feat-card,.hw-card{padding:32px !important;min-height:100%;}
.feat-icon,.hw-icon,.pipe-icon,.r-icon,.ai-panel-header .ai-icon{
  background:#fff5f5 !important;
  border:1px solid var(--red-border);
  color:var(--red);
  box-shadow:none !important;
}
.feat-card h3,.hw-card h3,.pipe-item h3,.team-card h3,.ds-card h3,.tech-block h4{
  color:var(--text) !important;
  font-family:var(--font-display) !important;
  font-size:17px !important;
}
.feat-card p,.hw-card p,.pipe-item p,.tech-block p,.team-deg,.team-meta,.footer-col p{color:var(--text-dim) !important;line-height:1.75 !important;font-size:15px !important;}

.arch-pipeline{gap:18px !important;align-items:stretch !important;}
.arch-pipeline::before{background:#dbe3ee !important;animation:none !important;top:34px !important;}
.arch-node-card{padding:28px 18px !important;}
.arch-num-badge{background:#fff !important;color:var(--red) !important;border:1px solid var(--red-border);box-shadow:none !important;}
.arch-node-label{color:var(--text) !important;font-size:15px !important;font-family:var(--font-display) !important;}
.arch-node-desc{color:var(--text-muted) !important;font-size:12px !important;}
.arch-connector svg path{stroke:#94a3b8 !important;}
.df-row{gap:12px !important;}
.df-arrow::after{color:#94a3b8 !important;animation:none !important;}
.df-step{background:#f8fafc !important;}
.df-step .step-name{color:var(--text) !important;}
.tech-diagram{gap:32px !important;}
.tech-block{padding:18px !important;}
.ai-model-grid{gap:18px !important;}
.ai-model-acc{color:var(--red) !important;font-family:var(--font-display) !important;}
.ai-model-bar,.perf-bar,.status-bar{background:#eef2f7 !important;}
.ai-model-fill,.perf-fill,.status-fill{background:var(--red) !important;}

.pipeline-list{gap:20px !important;position:relative;}
.pipeline-list::before{content:'';position:absolute;left:37px;top:24px;bottom:24px;width:1px;background:#dbe3ee;}
.pipe-item{position:relative;padding:26px 28px !important;background:#fff !important;}
.pipe-num{color:var(--red) !important;font-size:18px !important;}

.dataset-grid{gap:32px !important;}
.ds-row{border-bottom:1px solid var(--border) !important;color:var(--text-dim) !important;}
.ds-key{color:var(--text-muted) !important;}
.ds-val{color:var(--text) !important;font-weight:600;}
.citation{
  background:#fff !important;
  border:1px solid var(--border) !important;
  border-left:4px solid var(--red) !important;
  border-radius:18px !important;
  box-shadow:var(--shadow-soft);
  color:var(--text-dim) !important;
}

.team-grid{grid-template-columns:repeat(4,1fr) !important;gap:28px !important;}
.team-card{padding:34px 24px !important;}
.team-avatar,.profile-avatar,.sidebar-user .avatar{
  background:linear-gradient(135deg,#fff5f5,#fee2e2) !important;
  border:1px solid var(--red-border);
  color:var(--red) !important;
  box-shadow:none !important;
}
.team-role,.profile-role{color:var(--red) !important;font-weight:700;}
.team-meta{background:#fff !important;border:1px solid var(--border) !important;border-radius:18px !important;box-shadow:var(--shadow-soft);}

.site-footer{
  background:#111827 !important;
  border-top:0 !important;
  padding:64px 48px !important;
  grid-template-columns:1.5fr 1fr 1fr 1fr !important;
  gap:48px !important;
}
.footer-col h4{color:#fff !important;}
.footer-col p,.footer-col a{color:#cbd5e1 !important;}
.footer-col a:hover{color:#fff !important;transform:translateX(3px);}
.footer-bottom{background:#111827 !important;border-top:1px solid rgba(255,255,255,.10) !important;color:#94a3b8 !important;padding:22px 48px !important;}

.dash-shell{grid-template-columns:260px minmax(0,1fr) !important;background:#f8fafc !important;}
.sidebar{
  background:#fff !important;
  border-right:1px solid var(--border) !important;
  padding:22px 14px !important;
  box-shadow:8px 0 30px rgba(15,23,42,.03);
}
.sidebar-logo{border-bottom:1px solid var(--border) !important;padding:0 10px 22px !important;}
.sidebar-logo .role-tag,.sidebar-sec-label{color:var(--text-muted) !important;}
.sidebar-link{
  color:var(--text-dim) !important;
  border-radius:12px !important;
  padding:11px 12px !important;
  font-weight:600;
}
.sidebar-link:hover,.sidebar-link.active{
  background:var(--red-soft) !important;
  color:var(--text) !important;
  transform:translateX(2px);
}
.sidebar-link::before{background:var(--red) !important;width:3px;}
.sidebar-user{border-top:1px solid var(--border) !important;border-radius:14px;color:var(--text) !important;}
.dash-main{background:#f8fafc !important;}
.dash-topbar{
  background:rgba(255,255,255,.88) !important;
  border-bottom:1px solid var(--border) !important;
  box-shadow:0 8px 30px rgba(15,23,42,.035);
  padding:22px 32px !important;
}
.dash-topbar h1{color:var(--text) !important;font-family:var(--font-display) !important;font-size:24px !important;}
.dash-topbar p{color:var(--text-muted) !important;font-size:14px !important;}
.dash-body{padding:32px !important;}
.metrics-row,.metrics-row-3,.grid-2,.grid-3,.grid-4,.chart-row-2,.chart-row-3-1{gap:24px !important;}
.live-badge,.badge-live{
  background:#fff5f5 !important;
  border:1px solid var(--red-border) !important;
  color:var(--red) !important;
  border-radius:999px !important;
  animation:none !important;
}
.badge{border-radius:999px !important;letter-spacing:.05em;}
.badge-normal{background:rgba(34,197,94,.10) !important;color:#15803d !important;border-color:rgba(34,197,94,.22) !important;}
.badge-warn{background:rgba(245,158,11,.12) !important;color:#b45309 !important;border-color:rgba(245,158,11,.25) !important;}
.badge-crit{background:var(--red-soft) !important;color:var(--red) !important;border-color:var(--red-border) !important;}
.badge-blue{background:var(--blue-soft) !important;color:var(--blue) !important;border-color:rgba(37,99,235,.18) !important;}

.form-group{margin-bottom:20px !important;}
.form-label{color:var(--text) !important;font-size:14px !important;letter-spacing:0 !important;margin-bottom:8px !important;}
.form-input,.form-select{
  background:#fff !important;
  color:var(--text) !important;
  border:1px solid var(--border) !important;
  border-radius:14px !important;
  min-height:48px;
  font-size:15px !important;
}
.form-input:focus,.form-select:focus{border-color:var(--blue) !important;box-shadow:0 0 0 4px rgba(37,99,235,.10) !important;}
.form-input::placeholder{color:#94a3b8 !important;}
.form-select option{background:#fff;color:var(--text);}

.data-table{background:#fff;border-collapse:separate !important;border-spacing:0;font-size:14px !important;}
.data-table th{
  background:#f8fafc;
  color:var(--text-muted) !important;
  border-bottom:1px solid var(--border) !important;
  padding:14px 16px !important;
}
.data-table td{color:var(--text-dim);border-bottom:1px solid #eef2f7 !important;padding:15px 16px !important;}
.data-table tr:hover td{background:#f8fafc !important;}

.tab-nav{background:#fff !important;border:1px solid var(--border) !important;border-radius:14px !important;padding:5px !important;}
.tab-btn{border-radius:10px !important;color:var(--text-muted) !important;}
.tab-btn.active{background:var(--text) !important;color:#fff !important;box-shadow:none !important;}
.tab-btn:not(.active):hover{background:#f8fafc !important;color:var(--text) !important;}

.ai-panel{background:#fff !important;}
.ai-output,.ai-chat-msgs{color:var(--text-dim) !important;}
.ai-diagnosis{background:#fff5f5 !important;border-left:3px solid var(--red) !important;}
.ecg-wrapper{background:#fff !important;}
.ecg-wrapper canvas{background:#fbfdff;border-radius:14px;}
.ecg-tooltip{background:#fff !important;color:var(--text) !important;border:1px solid var(--border) !important;box-shadow:var(--shadow-soft) !important;}

.profile-card::before{background:linear-gradient(135deg,#fff5f5,#eff6ff) !important;height:88px;}
.profile-name,.status-text,.r-val,.profile-detail-row .dv{color:var(--text) !important;}
.profile-stats,.profile-detail-row,.toggle-wrap,.vitals-strip{border-color:var(--border) !important;}
.settings-overlay{
  background:#fff !important;
  border-left:1px solid var(--border) !important;
  box-shadow:-18px 0 50px rgba(15,23,42,.12);
  color:var(--text) !important;
}
.settings-backdrop{background:rgba(15,23,42,.28) !important;}
.settings-sec h4{color:var(--text-muted) !important;}
.toggle{background:#dbe3ee !important;}
.toggle.on{background:var(--red) !important;}
.setting-item{background:#fff !important;}

.auth-page{
  grid-template-columns:minmax(360px,.92fr) minmax(420px,1fr) !important;
  background:#f8fafc !important;
}
.auth-left{
  background:
    radial-gradient(circle at 18% 20%,rgba(229,57,53,.08),transparent 28rem),
    linear-gradient(180deg,#fff,#f8fafc) !important;
  border-right:1px solid var(--border) !important;
}
.auth-left::before{background-image:linear-gradient(rgba(15,23,42,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(15,23,42,.035) 1px,transparent 1px) !important;}
.auth-left::after{display:none;}
.auth-hero h2,.auth-form-title{color:var(--text) !important;}
.auth-hero .desc,.auth-step .info p,.auth-form-sub,.back-link,.forgot,.divider{color:var(--text-dim) !important;}
.auth-step .info h4{color:var(--text) !important;}
.auth-step .num{background:#fff !important;color:var(--red) !important;border:1px solid var(--red-border);box-shadow:none !important;}
.auth-ecg-strip,.disclaimer{
  background:#fff !important;
  border:1px solid var(--border) !important;
  border-radius:18px !important;
  box-shadow:var(--shadow-soft);
}
.auth-ecg-strip canvas{background:#fbfdff;border-radius:12px;}
.auth-right{background:#f8fafc !important;padding:48px !important;}
.auth-form{
  max-width:480px !important;
  background:#fff;
  border:1px solid var(--border);
  border-radius:24px;
  padding:38px;
  box-shadow:0 24px 70px rgba(15,23,42,.10);
}
.auth-tabs{background:#f8fafc !important;border:1px solid var(--border) !important;border-radius:14px !important;}
.auth-tab{border-radius:10px !important;color:var(--text-muted) !important;}
.auth-tab.active{background:#fff !important;color:var(--text) !important;box-shadow:0 2px 10px rgba(15,23,42,.07) !important;}
.auth-tab:not(.active):hover{background:#fff !important;color:var(--text) !important;}
.role-pill{background:#fff !important;border:1px solid var(--border) !important;color:var(--text-dim) !important;border-radius:14px !important;}
.role-pill.selected{background:#fff5f5 !important;border-color:var(--red-border) !important;color:var(--red) !important;}
.divider::before,.divider::after{background:var(--border) !important;}
.input-icon,.pw-toggle{color:var(--text-muted) !important;}
.verify-notice h3,.verify-card h1{color:var(--text) !important;}
.verify-notice p,.verify-card .subtitle,.vstep{color:var(--text-dim) !important;}
.verify-card{
  background:#fff !important;
  border:1px solid var(--border) !important;
  box-shadow:0 24px 70px rgba(15,23,42,.10) !important;
}
.verify-card::before{background:var(--red) !important;}
.email-icon-wrap,.email-badge{background:#fff5f5 !important;border-color:var(--red-border) !important;color:var(--red) !important;}
.btn-resend:disabled{background:#f1f5f9 !important;color:#94a3b8 !important;border-color:#e5e7eb !important;}

.alert-item{border-radius:14px !important;}
.alert-crit{background:#fff5f5 !important;border-color:var(--red-border) !important;}
.alert-warn{background:#fffbeb !important;border-color:rgba(245,158,11,.25) !important;}
.alert-ok{background:#f0fdf4 !important;border-color:rgba(34,197,94,.2) !important;}
.offline-note{background:#fff5f5 !important;color:var(--red) !important;border-color:var(--red-border) !important;border-radius:14px !important;}
.map-box{background:#f8fafc !important;}
.doc-vital{background:#f8fafc !important;}

img,svg,canvas,video{max-width:100%;height:auto;}
table{max-width:100%;}
.chart-panel,.glass-card,.dataflow-wrap,.circuit-wrap,.ds-card,.profile-card,.metric-card{min-width:0;}
.chart-panel{overflow-x:auto;}
.data-table{min-width:680px;}
.ecg-meta,.chart-panel-header,.topbar-actions,.footer-bottom,.profile-detail-row,.setting-item{min-width:0;}
.dash-topbar p,.metric-card .sub,.chart-panel-header h3,.sidebar-link,.footer-col p{overflow-wrap:anywhere;}

[style*="grid-template-columns:repeat(4,1fr)"],
[style*="grid-template-columns: repeat(4,1fr)"],
[style*="grid-template-columns:repeat(3,1fr)"],
[style*="grid-template-columns: repeat(3,1fr)"],
[style*="grid-template-columns:1fr 1fr"],
[style*="grid-template-columns: 1fr 1fr"]{
  gap:24px !important;
}

@media(max-width:1100px){
  .hero{grid-template-columns:1fr !important;gap:42px;text-align:left !important;}
  .ecg-hero-strip{grid-column:1;grid-row:auto;}
  .features-grid,.team-grid,.ai-model-grid{grid-template-columns:repeat(2,1fr) !important;}
  .stats-bar{grid-template-columns:repeat(2,1fr) !important;}
  .nav-links{position:static;transform:none;gap:18px !important;}
}
@media(max-width:1024px){
  .dash-shell{grid-template-columns:1fr !important;}
  .sidebar{
    display:flex !important;
    position:sticky !important;
    top:0;
    z-index:80;
    height:auto !important;
    max-height:none;
    flex-direction:row !important;
    align-items:center;
    overflow-x:auto;
    gap:12px;
    padding:12px 16px !important;
    border-right:0 !important;
    border-bottom:1px solid var(--border) !important;
  }
  .sidebar-logo{border-bottom:0 !important;padding:0 12px 0 0 !important;margin:0 !important;min-width:max-content;}
  .sidebar-section{display:flex;align-items:center;gap:8px;margin:0 !important;padding:0 !important;min-width:max-content;}
  .sidebar-sec-label{display:none;}
  .sidebar-link{margin:0 !important;white-space:nowrap;}
  .sidebar-user{display:none !important;}
  .metrics-row,.grid-4,[style*="grid-template-columns:repeat(4,1fr)"],[style*="grid-template-columns: repeat(4,1fr)"]{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
  .grid-3,.metrics-row-3,.hw-grid,[style*="grid-template-columns:repeat(3,1fr)"],[style*="grid-template-columns: repeat(3,1fr)"]{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
  .auth-page{grid-template-columns:1fr !important;}
  .auth-left{display:none !important;}
}
@media(max-width:768px){
  .main-nav{padding:14px 20px !important;}
  .nav-links{display:none !important;}
  .nav-btns{gap:6px;}
  .nav-login{font-size:14px !important;padding:9px 10px !important;}
  .hero{padding:112px 20px 72px !important;}
  .hero-h1,.hero-h2{font-size:44px !important;}
  .section-wrap{padding:80px 20px !important;}
  .stats-bar{padding:0 20px 80px !important;grid-template-columns:1fr !important;}
  .features-grid,.team-grid,.ai-model-grid,.hw-grid,.dataset-grid,.tech-diagram,
  .chart-row-2,.chart-row-3-1,.grid-2,.grid-3,.grid-4,.metrics-row,.metrics-row-3{
    grid-template-columns:1fr !important;
  }
  [style*="grid-template-columns:repeat(4,1fr)"],
  [style*="grid-template-columns: repeat(4,1fr)"],
  [style*="grid-template-columns:repeat(3,1fr)"],
  [style*="grid-template-columns: repeat(3,1fr)"],
  [style*="grid-template-columns:1fr 1fr"],
  [style*="grid-template-columns: 1fr 1fr"]{
    grid-template-columns:1fr !important;
  }
  .site-footer{grid-template-columns:1fr !important;padding:48px 24px !important;}
  .footer-bottom{padding:20px 24px !important;flex-direction:column;text-align:center;gap:8px;}
  .dash-topbar{align-items:flex-start !important;gap:16px;flex-direction:column;}
  .topbar-actions{flex-wrap:wrap;}
  .dash-body{padding:20px !important;}
  .auth-page{grid-template-columns:1fr !important;}
  .auth-left{display:none !important;}
  .auth-right{padding:24px 18px !important;}
  .auth-form{padding:28px 22px;border-radius:20px;}
  .arch-pipeline{display:grid !important;grid-template-columns:1fr !important;}
  .arch-pipeline::before,.arch-connector,.df-arrow{display:none !important;}
  .df-row{display:grid !important;grid-template-columns:1fr !important;}
  .pipeline-list::before{display:none;}
  .pipe-item{display:grid !important;grid-template-columns:auto 1fr !important;gap:14px !important;}
  .pipe-icon{grid-column:1;}
  .pipe-item > div:last-child{grid-column:2;}
  .role-pills{grid-template-columns:1fr !important;}
  .profile-stats,.doc-vitals-row,.vitals-strip{display:grid !important;grid-template-columns:1fr !important;gap:14px !important;}
  .profile-stat:not(:last-child){border-right:0 !important;border-bottom:1px solid var(--border) !important;}
  .settings-overlay{width:min(100vw,380px) !important;}
  .data-table{min-width:620px;}
}
@media(max-width:520px){
  .main-nav{gap:10px;}
  .nav-logo span{font-size:1.05rem !important;}
  .nav-logo .logo-icon{width:32px !important;height:32px !important;}
  .nav-btns .nav-login:first-child{display:none;}
  .hero{padding:96px 16px 60px !important;}
  .hero-h1,.hero-h2{font-size:clamp(2.25rem,12vw,3rem) !important;}
  .hero-sub{font-size:16px !important;}
  .hero-btns{width:100%;}
  .btn-hero-primary,.btn-hero-outline{width:100%;justify-content:center;padding-inline:18px !important;}
  .ecg-hero-strip{padding:22px 18px !important;border-radius:22px !important;}
  .ecg-hero-strip::before{height:34px;margin:-4px 0 18px;}
  .ecg-meta{display:grid !important;grid-template-columns:auto 1fr;align-items:center;}
  .section-wrap{padding:64px 16px !important;}
  .section-title{font-size:clamp(1.9rem,10vw,2.45rem) !important;}
  .stat-item,.metric-card,.chart-panel,.feat-card,.hw-card,.team-card,.ds-card,.auth-form{padding:22px !important;}
  .stat-val{font-size:34px !important;}
  .dash-body{padding:16px !important;}
  .dash-topbar{padding:18px 16px !important;}
  .dash-topbar h1{font-size:21px !important;}
  .topbar-actions{width:100%;}
  .topbar-actions .btn,.live-badge{flex:1 1 auto;justify-content:center;}
  .sidebar{padding:10px 12px !important;}
  .sidebar-logo .name{font-size:.95rem !important;}
  .sidebar-logo .icon{width:30px;height:30px;}
  .sidebar-link{font-size:13px !important;padding:10px !important;}
  .auth-right{padding:16px !important;}
  .verify-card{padding:34px 22px !important;}
  .site-footer{padding:40px 18px !important;}
  .data-table{min-width:560px;}
}
