*{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:Arial,Helvetica,sans-serif;background:#eef1f5;color:#263246}a{text-decoration:none;color:inherit}button,input,select,textarea{font:inherit}
:root{--blue:#214f97;--blue2:#2f68b8;--light:#f6f7fb;--card:#fff;--line:#dbe2ea;--input-line:#b8c4d2;--text:#263246;--muted:#71829a;--success:#12a36a;--danger:#e25544;--warning:#f0a318;--shadow:0 10px 24px rgba(19,41,78,.08)}
.app-shell{display:flex;min-height:100vh}.sidebar-panel{width:250px;background:linear-gradient(180deg,#2a569d,#244682 60%,#203b6e);color:#fff;padding:18px 14px;display:flex;flex-direction:column;gap:14px;box-shadow:4px 0 22px rgba(0,0,0,.08)}.sidebar-brand{display:flex;align-items:center;gap:12px;padding:6px 8px 14px;border-bottom:1px solid rgba(255,255,255,.18)}.sidebar-logo{width:48px;height:48px;border-radius:14px;background:rgba(255,255,255,.14);display:grid;place-items:center;font-weight:700}.sidebar-brand h1{margin:0;font-size:18px}.sidebar-brand p{margin:4px 0 0;color:rgba(255,255,255,.72);font-size:12px}.sidebar-search{display:flex;align-items:center;gap:8px;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.14);padding:10px 12px;border-radius:10px}.sidebar-search input{background:transparent;border:0;color:#fff;width:100%;outline:none}.sidebar-search input::placeholder{color:rgba(255,255,255,.75)}.side-nav{display:flex;flex-direction:column;gap:4px;overflow:auto;padding-right:2px}.side-nav a{display:flex;align-items:center;gap:12px;padding:11px 12px;border-radius:10px;color:#fff;transition:.18s ease}.side-nav a .icon{width:22px;text-align:center}.side-nav a:hover,.side-nav a.active{background:rgba(255,255,255,.14)}
.main-panel{flex:1;min-width:0;padding:18px 22px 24px}.top-header{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:16px}.top-header-left{display:flex;align-items:center;gap:14px}.menu-button{width:42px;height:42px;border-radius:14px;background:#fff;display:grid;place-items:center;box-shadow:var(--shadow);color:var(--blue);font-size:20px}.page-title{font-size:17px;font-weight:700}.page-subtitle{font-size:13px;color:var(--muted);margin-top:3px}.top-header-right{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.header-chip{background:#fff;border:1px solid var(--line);padding:10px 14px;border-radius:11px;color:var(--blue);font-weight:700;box-shadow:var(--shadow)}.header-chip.is-danger{color:#fff;background:var(--danger);border-color:var(--danger)}.user-meta{padding:0 8px;text-align:right}.user-meta small{display:block;color:var(--muted)}.notify-bell{position:relative;width:42px;height:42px;border-radius:50%;background:#fff;display:grid;place-items:center;box-shadow:var(--shadow);color:var(--blue)}.notify-bell span{position:absolute;top:-4px;right:-2px;background:#e5463a;color:#fff;border-radius:999px;padding:1px 6px;font-size:11px;font-weight:700}
.hero-strip{background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);padding:20px 24px;display:flex;align-items:center;gap:18px;margin-bottom:18px}.hero-icon{width:74px;height:74px;border-radius:18px;background:linear-gradient(180deg,#14a46b,#0c8a59);display:grid;place-items:center;color:#fff;font-size:30px;box-shadow:0 10px 24px rgba(18,163,106,.24)}.hero-badge{display:inline-block;font-size:12px;color:#fff;background:#2d5fae;border-radius:999px;padding:7px 12px;margin-bottom:8px}.hero-strip h2{margin:0;font-size:26px}.hero-strip p{margin:8px 0 0;color:var(--muted);max-width:850px;line-height:1.5}
.page-content{display:flex;flex-direction:column;gap:18px}.alert{padding:14px 16px;border-radius:14px;border:1px solid var(--line);box-shadow:var(--shadow);background:#fff}.alert.success{border-left:5px solid var(--success)}.alert.error{border-left:5px solid var(--danger)}
.card,.mini-card,.stat{background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow)}.card{padding:20px}.page-section h2,.card h2{margin:0 0 14px;font-size:26px}.card h3{margin:0 0 8px}.small,.table-note{color:var(--muted);font-size:13px;line-height:1.45}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.stat{padding:18px 20px}.stat-label{font-size:13px;color:var(--muted)}.stat-value{font-size:42px;font-weight:800;margin-top:8px;color:#1d355f}.stat-value-medium{font-size:34px}.mini-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.mini-card{padding:16px}.mini-card h3{font-size:14px;color:var(--muted);margin-bottom:8px}.stat-inline{font-size:26px;font-weight:700;color:#1d355f;margin:0}
.grid-2,.grid-3,.grid-4,.result-grid,.cards-grid{display:grid;gap:16px}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-4,.result-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.cards-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.full-span{grid-column:1/-1}
label{display:block;font-size:13px;color:#52657e;font-weight:700;margin-bottom:6px}input,select,textarea{width:100%;border:1px solid var(--input-line);border-radius:10px;padding:12px 13px;background:#fff;color:var(--text);outline:none;box-shadow:inset 0 1px 1px rgba(28,44,68,.04)}textarea{min-height:120px;resize:vertical}input:focus,select:focus,textarea:focus{border-color:#5b8def;box-shadow:0 0 0 3px rgba(91,141,239,.16)}button,.btn,.btn-secondary,.btn-danger{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:10px;padding:11px 15px;font-weight:700;cursor:pointer}.btn,button{background:#2b64b4;color:#fff}.btn-secondary{background:#eef4ff;color:#2b64b4;border:1px solid #cfe0ff}.btn-danger{background:var(--danger);color:#fff}.action-row{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-top:8px}
.table-shell{overflow:auto}.table-wrap{min-width:100%}table{width:100%;border-collapse:collapse;font-size:14px}thead th{text-align:left;background:#f8fafc;color:#41566f;border-bottom:1px solid var(--line);padding:14px 12px}tbody td{padding:14px 12px;border-bottom:1px solid #edf1f6;vertical-align:top}tbody tr:hover{background:#fafcff}.badge{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;font-weight:700;font-size:12px}.badge.ativo,.badge.respondida{background:#eaf8f1;color:#0f915f}.badge.inativo,.badge.arquivada{background:#fff2f0;color:#c1453c}.badge.nova{background:#fff5df;color:#ad7806}.badge.lida{background:#ecf3ff;color:#2b64b4}
.auth-page{min-height:100vh;display:grid;place-items:center;background:linear-gradient(180deg,#edf1f6,#e8edf5)}.auth-card{width:min(980px,94vw);display:grid;grid-template-columns:1.1fr .9fr;background:#fff;border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow);overflow:hidden}.auth-side{background:linear-gradient(180deg,#2a569d,#23447e);color:#fff;padding:34px}.auth-side h1{font-size:40px;margin:16px 0 10px}.auth-side p{color:rgba(255,255,255,.82);line-height:1.6}.auth-side ul{padding-left:18px;line-height:1.8;color:rgba(255,255,255,.88)}.auth-form{padding:34px}.auth-form h2{margin:0 0 8px;font-size:28px}.auth-form p{color:var(--muted);margin:0 0 18px}.auth-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}
.quick-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.shortcut-card{display:flex;gap:14px;align-items:flex-start}.shortcut-icon{width:62px;height:62px;border-radius:14px;display:grid;place-items:center;color:#fff;font-size:24px;flex:none}.shortcut-card h3{margin:0 0 6px;font-size:19px}.shortcut-card p{margin:0;color:var(--muted)}.shortcut-icon.green{background:#12a36a}.shortcut-icon.blue{background:#3d8ad6}.shortcut-icon.orange{background:#f0a318}.shortcut-icon.red{background:#e25544}.shortcut-icon.purple{background:#775fda}
.section-header{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px}.section-header h2{margin:0}.section-tools{display:flex;gap:8px;flex-wrap:wrap}.content-card h2{font-size:24px}.content-card-body p{margin:0 0 10px;line-height:1.55}.detail-block{padding:12px 14px;background:#f8fafc;border:1px solid #edf1f6;border-radius:12px}.detail-block h3{margin:0 0 8px;font-size:15px;color:#2c4369}.disease-stack{display:flex;flex-direction:column;gap:16px}.vertical-card h3{font-size:20px;margin-bottom:8px}.title-row{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.disease-title{font-size:32px;margin:0}.empty-state{padding:34px;text-align:center;color:var(--muted)}.list-stack{display:flex;flex-direction:column;gap:16px}.message-view{display:flex;flex-direction:column;gap:14px}.message-meta-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.message-box-title{font-size:20px;font-weight:700}.message-box-body{padding:14px;border-radius:12px;background:#f8fafc;border:1px solid var(--line);line-height:1.6}.filter-bar{display:grid;grid-template-columns:2fr 1fr 1fr auto;gap:12px;align-items:end}
@media (max-width:1200px){.stats,.result-grid,.quick-grid,.grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}.cards-grid,.grid-3{grid-template-columns:1fr 1fr}.message-meta-grid{grid-template-columns:1fr 1fr}}
@media (max-width:900px){.app-shell{display:block}.sidebar-panel{width:auto}.main-panel{padding:14px}.top-header,.section-header,.title-row{flex-direction:column;align-items:flex-start}.auth-card{grid-template-columns:1fr}.quick-grid,.stats,.grid-2,.grid-3,.grid-4,.cards-grid,.result-grid,.filter-bar,.message-meta-grid,.mini-grid{grid-template-columns:1fr}.hero-strip{padding:18px}.hero-strip h2{font-size:22px}}

.protected-content-page .content-card,.protected-content-page .vertical-card{user-select:none;-webkit-user-select:none;-ms-user-select:none}
.protected-note{font-size:12px;color:#6c7b8f;margin-top:10px}


.reply-box{margin-top:14px;padding:14px 16px;border:1px solid #d7e3fb;background:#f7fbff;border-radius:14px}
.reply-title{font-weight:700;color:#22406b;margin-bottom:6px}
.reply-meta{font-size:12px;color:#6b7b95;margin-bottom:10px}
.reply-form textarea{min-height:130px}
.user-reply-box{border-color:#cfe0ff;background:#f4f8ff}


/* Ícones SVG modernos - atualização visual segura */
.elite-svg-icon{width:1em;height:1em;display:block;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;fill:none}
.side-nav .icon{display:inline-flex;align-items:center;justify-content:center}
.side-nav .elite-svg-icon{width:18px;height:18px}
.sidebar-search .elite-svg-icon{width:18px;height:18px}
.notify-bell .elite-svg-icon{width:18px;height:18px}
.hero-icon .elite-svg-icon{width:34px;height:34px}
.shortcut-icon .elite-svg-icon{width:28px;height:28px}

/* UX médico integrativo v1 - melhoria visual segura
   Escopo: aparência, espaçamento, cards, sidebar e ícones. Não altera login, JSON ou regras. */
:root{
  --blue:#0056B3;
  --blue2:#0B63CE;
  --light:#F8F9FA;
  --card:#FFFFFF;
  --line:#E6EBF2;
  --input-line:#D6DEE8;
  --text:#1A1A1A;
  --muted:#666666;
  --success:#179A62;
  --danger:#D94841;
  --warning:#C98412;
  --shadow:0 14px 34px rgba(15,33,58,.055);
  --shadow-hover:0 18px 42px rgba(15,33,58,.095);
}
body{
  font-family:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
  background:var(--light);
  color:var(--text);
  font-size:16px;
  -webkit-font-smoothing:antialiased;
  text-rendering:geometricPrecision;
}
.app-shell{background:linear-gradient(180deg,#FFFFFF 0,#F8F9FA 42%,#F5F7FA 100%)}
.sidebar-panel{
  width:238px;
  background:#fff;
  color:#263246;
  border-right:1px solid var(--line);
  box-shadow:6px 0 24px rgba(15,33,58,.035);
  padding:20px 12px;
}
.sidebar-brand{border-bottom:1px solid var(--line);padding:8px 10px 18px;margin-bottom:4px}
.sidebar-logo{background:#ECF5FF;color:var(--blue);border-radius:12px;width:44px;height:44px}
.sidebar-brand h1{color:#0F2A4D;letter-spacing:-.02em}.sidebar-brand p{color:#6D7C90}
.sidebar-search{background:#F7FAFE;border:1px solid var(--line);border-radius:14px;color:#6D7C90;padding:11px 12px}
.sidebar-search input{color:#263246}.sidebar-search input::placeholder{color:#7A8797}
.side-nav{gap:3px}.side-nav a{color:#35445A;border-radius:12px;padding:11px 12px;font-weight:500}
.side-nav a .icon{width:24px;color:#40526B;transition:.2s ease}.side-nav a:hover{background:#F4F8FE;color:var(--blue);transform:translateX(1px)}
.side-nav a:hover .icon{color:var(--blue)}
.side-nav a.active{background:#F0F6FF;color:var(--blue);box-shadow:inset 3px 0 0 var(--blue);font-weight:700}
.side-nav a.active .icon{color:var(--blue)}
.main-panel{padding:22px 28px 30px}.top-header{padding:0 0 18px;margin-bottom:20px;border-bottom:1px solid var(--line)}
.menu-button{background:#fff;border:1px solid var(--line);box-shadow:none;color:var(--blue);border-radius:12px}
.page-title{font-size:20px;color:#111827;letter-spacing:-.02em}.page-subtitle{font-size:14px;color:#6B7280}
.header-chip{box-shadow:none;border-color:var(--line);border-radius:12px;color:var(--blue);background:#fff;padding:10px 14px}
.header-chip:hover{background:#F0F6FF}.header-chip.is-danger{background:#D94841;border-color:#D94841;color:#fff}
.user-meta strong{color:#111827}.notify-bell{box-shadow:none;border:1px solid var(--line);color:#1F4E90}.notify-bell span{background:var(--blue)}
.hero-strip{border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow);padding:22px 26px;background:#fff;margin-bottom:20px}
.hero-icon{background:#ECF5FF;color:var(--blue);box-shadow:none;border-radius:18px}.hero-badge{background:#ECF5FF;color:var(--blue);font-weight:800}.hero-strip h2{letter-spacing:-.035em;color:#111827}.hero-strip p{color:#6B7280;font-size:16px}
.card,.mini-card,.stat{border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);background:#fff}.card{padding:22px}.card h2{font-size:24px;letter-spacing:-.035em;color:#111827}.card h3{color:#111827;letter-spacing:-.02em}.card p{line-height:1.5}
.shortcut-card{transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;background:#fff}.shortcut-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-hover);border-color:#CFE0F5}
.kpi-grid{gap:20px}.kpi-card{min-height:116px;align-items:center}.kpi-card h3{font-size:16px}.kpi-card p{font-size:28px;font-weight:800;color:#111827;margin:0;line-height:1.05}
.shortcut-icon{background:#F3F7FC!important;color:var(--blue)!important;border-radius:16px;width:58px;height:58px;box-shadow:none}.shortcut-icon.green{background:#ECFDF5!important;color:#047857!important}.shortcut-icon.blue{background:#EFF6FF!important;color:#0056B3!important}.shortcut-icon.orange{background:#FFF7ED!important;color:#B45309!important}.shortcut-icon.red{background:#FEF2F2!important;color:#B91C1C!important}.shortcut-icon.purple{background:#F5F3FF!important;color:#5B21B6!important}
.dashboard-layout{grid-template-columns:1fr 1fr;gap:20px}.dashboard-layout>.card:nth-child(3){max-width:100%}.module-grid,.action-grid{gap:16px!important}.module-card,.action-card{min-height:118px;border-radius:16px}.module-card h3,.action-card h3{font-size:18px}.module-card p,.action-card p{font-size:15px;color:#667085}
.result-grid{gap:14px}.mini-card{background:#FCFDFE;min-height:126px}.mini-card h3{color:#667085;font-size:13px;text-transform:none}.badge{border-radius:999px}.badge.ativo,.badge.respondida{background:#EAF8F1;color:#087A4D}
input,select,textarea{border-radius:12px;border-color:var(--input-line);box-shadow:none}input:focus,select:focus,textarea:focus{border-color:var(--blue);box-shadow:0 0 0 4px rgba(0,86,179,.10)}
button,.btn,.btn-secondary,.btn-danger{border-radius:12px}.btn,button{background:var(--blue)}.btn-secondary{background:#F0F6FF;color:var(--blue);border:1px solid #D9E8FB}
.elite-svg-icon{stroke-width:1.9}.shortcut-icon .elite-svg-icon{width:29px;height:29px}.side-nav .elite-svg-icon{width:19px;height:19px}
@media (max-width:1200px){.dashboard-layout{grid-template-columns:1fr}.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:900px){.sidebar-panel{width:auto;border-right:0;border-bottom:1px solid var(--line)}.main-panel{padding:16px}.kpi-grid{grid-template-columns:1fr}.hero-strip{align-items:flex-start}.header-chip{display:inline-flex}}

/* UX médico integrativo v2 - refinamento Clean Clinical 2026
   Escopo visual: sidebar, topo, KPIs, módulos, atalhos e assinatura. */
:root{
  --clinical-blue:#0F4C81;
  --clinical-blue-soft:#EAF3FC;
  --mint:#E8F5E9;
  --canvas:#F5F7FA;
  --clinical-text:#1A202C;
  --clinical-muted:#4A5568;
  --clinical-line:#E7ECF3;
  --clinical-shadow:0 16px 36px rgba(15,33,58,.06);
  --clinical-shadow-hover:0 22px 52px rgba(15,33,58,.10);
}
body{background:var(--canvas);color:var(--clinical-text)}
.app-shell{background:var(--canvas)}
.sidebar-panel{width:224px;background:#fff;padding:18px 10px;border-right:1px solid var(--clinical-line);box-shadow:8px 0 28px rgba(15,33,58,.035)}
.sidebar-brand{display:flex;gap:12px;align-items:center;padding:10px 10px 18px;margin-bottom:8px;border-bottom:1px solid #EEF2F7}
.sidebar-logo{width:42px;height:42px;background:linear-gradient(180deg,#EFF7FF,#E6F4EE);color:var(--clinical-blue);font-weight:800}
.sidebar-brand h1{font-size:18px;color:var(--clinical-blue);font-weight:800;letter-spacing:-.03em}.sidebar-brand p{font-size:12px;color:#667085}
.sidebar-search{display:none}
.side-nav{gap:2px}.side-nav a{min-height:40px;padding:10px 12px;border-radius:12px;color:#344054;font-size:14px;letter-spacing:-.01em}.side-nav a .icon{width:24px;color:#667085}.side-nav a.active{background:var(--clinical-blue-soft);color:#0F4C81;box-shadow:inset 3px 0 0 #0F4C81}.side-nav a:hover{background:#F7FAFE;color:#0F4C81}.side-nav a.active .icon,.side-nav a:hover .icon{color:#0F4C81}
.main-panel{padding:24px 30px 34px}.top-header{display:grid;grid-template-columns:1fr minmax(260px,360px) auto;align-items:center;gap:18px;padding-bottom:20px;margin-bottom:22px;border-bottom:1px solid var(--clinical-line)}
.top-header-left{min-width:0}.menu-button{width:38px;height:38px;background:#fff;border:1px solid #E7ECF3;border-radius:13px;color:#0F4C81}.page-title{font-size:21px;font-weight:800;color:#111827}.page-subtitle{font-size:14px;color:#667085}.top-header-search{height:48px;border:1px solid #DDE5EF;background:#fff;border-radius:14px;display:flex;align-items:center;gap:10px;padding:0 16px;color:#667085;box-shadow:0 8px 24px rgba(15,33,58,.035)}.top-header-search .elite-svg-icon{width:20px;height:20px}.top-header-search input{border:0;background:transparent;padding:0;width:100%;height:auto;font-size:14px;color:#344054}.top-header-search input:focus{box-shadow:none;border:0}.top-header-search input::placeholder{color:#8A97A8}.top-header-right{gap:14px}.header-actions-compact{display:flex;gap:8px;align-items:center}.header-chip{font-size:13px;padding:9px 12px;border-radius:12px;background:#fff;border-color:#E7ECF3}.header-chip:not(.is-danger){display:none}.header-chip.is-danger{padding:9px 14px;background:#0F4C81;border-color:#0F4C81;color:#fff}.user-meta{padding-left:0}.user-meta strong{font-size:14px}.user-meta small{font-size:12px;color:#667085}.notify-bell{width:42px;height:42px;border-radius:50%;background:#fff;color:#0F4C81}.notify-bell span{background:#0F4C81}
.hero-strip{display:none}.page-content{max-width:1480px;margin:0 auto}.quick-grid{gap:20px}.kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:22px}.kpi-card{position:relative;min-height:132px;padding:22px 24px;border-radius:18px;border:1px solid #E7ECF3;background:#fff;box-shadow:var(--clinical-shadow);overflow:hidden}.kpi-card:after{content:"";position:absolute;right:22px;bottom:22px;width:54px;height:18px;border-bottom:2px solid rgba(20,145,91,.55);border-radius:50%;transform:skewX(-20deg)}.kpi-card h3{font-size:14px;color:#4A5568;font-weight:600;margin:0 0 8px}.kpi-card p{font-size:30px;font-weight:800;color:#111827;letter-spacing:-.045em}.kpi-card small{display:block;margin-top:8px;color:#667085;font-size:13px}.kpi-card .trend-positive{color:#0F8A57}.shortcut-icon{width:58px;height:58px;border-radius:16px}.shortcut-icon.soft-blue{background:#EDF6FF!important;color:#0F4C81!important}
.dashboard-layout{grid-template-columns:minmax(0,1.35fr) minmax(360px,.75fr);gap:22px;align-items:start}.dashboard-layout>.card:nth-child(1){order:3;grid-column:1 / -1}.dashboard-layout>.card:nth-child(2){order:2}.dashboard-layout>.card:nth-child(3){order:1}.card{border:1px solid #E7ECF3;border-radius:20px;box-shadow:var(--clinical-shadow);background:#fff}.section-header{margin-bottom:18px}.section-header h2{text-transform:uppercase;font-size:14px;letter-spacing:.04em;color:#111827;font-weight:800}.module-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:18px!important}.module-card{position:relative;display:flex;align-items:flex-start;gap:18px;min-height:176px;padding:24px!important;border-radius:18px!important;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;background:#fff}.module-card:hover{transform:translateY(-4px);box-shadow:var(--clinical-shadow-hover);border-color:#D5E1EF}.module-card .module-icon{width:66px;height:66px;border-radius:18px;background:#EEF7F0!important;color:#0F6F55!important}.module-card h3{font-size:18px;font-weight:800;color:#111827;margin-top:4px}.module-card p{font-size:14px;line-height:1.55;color:#4A5568;margin-bottom:18px}.module-arrow{position:absolute;right:22px;bottom:20px;color:#0F4C81;font-size:22px;line-height:1}.module-fungos .module-icon{background:#EAF5ED!important;color:#0E6B57!important}.module-bacterias .module-icon{background:#EAF5FB!important;color:#0F6D8C!important}.module-plasmodium .module-icon{background:#FFF4E5!important;color:#9A5B12!important}.module-virus .module-icon{background:#F1EDFF!important;color:#5A3FA3!important}.module-receitas .module-icon{background:#FFF8E7!important;color:#8A6412!important}.module-plantas .module-icon{background:#E8F5E9!important;color:#16774E!important}.module-icon .elite-svg-icon{width:34px;height:34px;stroke-width:1.8}.action-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:16px!important}.action-card{min-height:120px;padding:20px!important;border-radius:18px!important}.action-card:hover{transform:translateY(-3px);box-shadow:var(--clinical-shadow-hover)}.action-card h3{font-size:16px;font-weight:800}.action-card p{font-size:14px;color:#4A5568}.result-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:0;border:1px solid #E7ECF3;border-radius:18px;overflow:hidden;background:#fff}.mini-card{min-height:106px;border:0;border-radius:0;box-shadow:none;background:#fff;border-right:1px solid #E7ECF3;padding:18px 22px}.mini-card:last-child{border-right:0}.mini-card h3{font-size:13px;color:#667085}.mini-card p{font-size:15px;color:#1A202C}.badge.ativo,.badge.respondida{background:#E8F5E9;color:#0F8A57;font-weight:800}
@media (max-width:1300px){.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.module-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.dashboard-layout{grid-template-columns:1fr}.dashboard-layout>.card:nth-child(1){grid-column:auto}.top-header{grid-template-columns:1fr auto}.top-header-search{display:none}}
@media (max-width:900px){.sidebar-panel{width:auto}.kpi-grid,.module-grid,.action-grid,.result-grid{grid-template-columns:1fr!important}.dashboard-layout>.card{order:initial!important}.mini-card{border-right:0;border-bottom:1px solid #E7ECF3}.mini-card:last-child{border-bottom:0}.header-actions-compact{display:none}.top-header{display:flex}.main-panel{padding:16px}}

/* Login Clean Clinical v3 - melhoria visual sem alterar autenticação, sessão ou JSON */
.auth-clinical-page{
  min-height:100vh;
  padding:34px 18px;
  background:
    radial-gradient(circle at 18% 18%, rgba(15,76,129,.08), transparent 34%),
    linear-gradient(180deg,#F7FAFD 0%,#EEF3F8 100%);
}
.auth-clinical-card{
  width:min(1040px,94vw);
  grid-template-columns:1.02fr .98fr;
  border:1px solid #E6EDF5;
  border-radius:28px;
  box-shadow:0 28px 80px rgba(15,33,58,.10);
  background:#fff;
}
.auth-clinical-side{
  position:relative;
  overflow:hidden;
  padding:34px 36px;
  background:linear-gradient(160deg,#0F4C81 0%,#174F7A 55%,#0E3D68 100%);
}
.auth-clinical-side:after{
  content:"";
  position:absolute;
  right:-110px;
  top:-110px;
  width:260px;
  height:260px;
  border-radius:50%;
  background:rgba(255,255,255,.08);
}
.auth-brand-clean{position:relative;z-index:1;display:flex;align-items:center;gap:14px;margin-bottom:42px}
.auth-logo-mark{width:52px;height:52px;border-radius:15px;background:#fff;color:#0F4C81;display:grid;place-items:center;font-weight:900;letter-spacing:-.04em;box-shadow:0 12px 34px rgba(0,0,0,.12)}
.auth-brand-clean h1{margin:0;font-size:22px;font-weight:900;letter-spacing:-.04em;color:#fff}
.auth-brand-clean p{margin:4px 0 0;color:rgba(255,255,255,.72);font-size:13px}
.auth-side-copy{position:relative;z-index:1;max-width:430px;margin-bottom:30px}
.auth-badge{display:inline-flex;align-items:center;padding:8px 12px;border-radius:999px;background:rgba(232,245,233,.14);border:1px solid rgba(232,245,233,.22);color:#DDF7E1;font-weight:800;font-size:12px;margin-bottom:14px}
.auth-side-copy h2{margin:0 0 12px;font-size:31px;line-height:1.12;letter-spacing:-.055em;color:#fff}
.auth-side-copy p{margin:0;color:rgba(255,255,255,.78);line-height:1.65;font-size:15px}
.auth-benefits{position:relative;z-index:1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:26px}
.auth-benefit{padding:14px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.08);border-radius:18px;backdrop-filter:blur(10px)}
.auth-benefit span{width:38px;height:38px;border-radius:12px;background:rgba(255,255,255,.13);display:grid;place-items:center;color:#DDF7E1;margin-bottom:12px}
.auth-benefit .elite-svg-icon{width:21px;height:21px;stroke-width:1.8}
.auth-benefit strong{display:block;color:#fff;font-size:14px;margin-bottom:4px}
.auth-benefit small{display:block;color:rgba(255,255,255,.70);line-height:1.35;font-size:12px}
.auth-clinical-form{padding:52px 42px;display:flex;flex-direction:column;justify-content:center}
.auth-form-head{display:flex;gap:15px;align-items:flex-start;margin-bottom:24px}
.auth-form-icon{width:54px;height:54px;border-radius:17px;background:#EEF6FF;color:#0F4C81;display:grid;place-items:center;flex:none}
.auth-form-icon .elite-svg-icon{width:27px;height:27px;stroke-width:1.8}
.auth-clinical-form h2{font-size:31px;letter-spacing:-.05em;color:#111827;margin:0 0 8px}
.auth-clinical-form p{font-size:15px;color:#667085;margin:0;line-height:1.55}
.auth-login-form label{margin-top:14px;color:#344054;font-size:14px}
.auth-login-form input{height:52px;border-radius:14px;border-color:#D5DFEA;background:#fff;font-size:15px;padding:0 15px;box-shadow:none}
.auth-login-form input::placeholder{color:#A7B1C2}
.auth-login-form input:focus{border-color:#0F4C81;box-shadow:0 0 0 4px rgba(15,76,129,.10)}
.auth-primary-actions{margin-top:20px;display:flex;gap:12px;align-items:center}
.auth-submit{min-width:126px;height:48px;border-radius:14px;background:#0F4C81;color:#fff;box-shadow:0 12px 26px rgba(15,76,129,.20)}
.auth-submit:hover{filter:brightness(.98);transform:translateY(-1px)}
.auth-create{height:48px;border-radius:14px;background:#F4F8FC;color:#0F4C81;border:1px solid #DCE8F4;padding:0 18px}
.auth-payment-box{margin-top:26px;padding:18px;border-radius:18px;background:#F8FBFE;border:1px solid #E5EDF6;display:flex;justify-content:space-between;align-items:center;gap:18px}
.auth-payment-box strong{display:block;color:#1A202C;font-size:15px;margin-bottom:4px}
.auth-payment-box p{font-size:13px;color:#667085;margin:0;max-width:280px}
.auth-pix-link{display:inline-flex;align-items:center;justify-content:center;gap:8px;white-space:nowrap;border-radius:14px;padding:12px 15px;background:#E8F5E9;color:#0F7A4F;font-weight:900;border:1px solid #D5EBD8}
.auth-pix-link .elite-svg-icon{width:18px;height:18px;stroke-width:2}
@media (max-width:900px){
  .auth-clinical-card{grid-template-columns:1fr}
  .auth-clinical-side{padding:28px}
  .auth-side-copy h2{font-size:26px}
  .auth-benefits{grid-template-columns:1fr}
  .auth-clinical-form{padding:32px 26px}
  .auth-payment-box{flex-direction:column;align-items:flex-start}
  .auth-pix-link{width:100%}
}
