:root{
  --nv-green-950:#082d23;
  --nv-green-900:#0b3d2f;
  --nv-green-800:#0f513d;
  --nv-green-700:#176b4d;
  --nv-green-600:#1f7a58;
  --nv-green-100:#e8f3ed;
  --nv-green-050:#f4f8f5;
  --nv-gold:#b18b41;
  --navy:#0b3d2f;
  --navy-900:#082d23;
  --navy-800:#0f513d;
  --blue:#176b4d;
  --primary:#176b4d;
  --primary-dark:#0f513d;
  --brand-primary:#176b4d;
  --brand-navy:#0b3d2f;
  --ink:#173c31;
}

html{scrollbar-color:var(--nv-green-700) #e7ece9}
body.app-body{background:#f3f6f4;color:#1d342c}
.sidebar{background:linear-gradient(180deg,var(--nv-green-950),var(--nv-green-900) 60%,#0e4938)!important}
.sidebar::before{background:radial-gradient(circle at 50% 0,rgba(177,139,65,.16),transparent 55%)!important}
.side-nav a.active,.side-nav button.active,.side-nav [aria-current="page"]{background:rgba(255,255,255,.13)!important;border-color:rgba(255,255,255,.18)!important;color:#fff!important}
.side-nav a:hover,.side-nav button:hover{background:rgba(255,255,255,.09)!important}
.topbar{border-bottom-color:rgba(15,81,61,.16)!important}
.topbar-title small,.kicker{color:var(--nv-green-700)!important}
.primary-button,.btn-primary,button.primary{background:linear-gradient(135deg,var(--nv-green-700),var(--nv-green-800))!important;border-color:var(--nv-green-800)!important;color:#fff!important;box-shadow:0 8px 20px rgba(15,81,61,.18)!important}
.primary-button:hover,.btn-primary:hover,button.primary:hover{background:linear-gradient(135deg,var(--nv-green-600),var(--nv-green-700))!important}
.secondary-button{border-color:rgba(15,81,61,.28)!important;color:var(--nv-green-800)!important}
.secondary-button:hover{background:var(--nv-green-100)!important;border-color:var(--nv-green-700)!important}
.icon-button:hover,.ghost-button:hover{background:var(--nv-green-100)!important;color:var(--nv-green-800)!important}
.search-box:focus-within,input:focus,select:focus,textarea:focus{border-color:var(--nv-green-600)!important;box-shadow:0 0 0 3px rgba(31,122,88,.13)!important}
.inline-status.success,.nvcl-status-in_service{background:#dff1e7!important;color:#0f603c!important}
.tab.active{background:var(--nv-green-100)!important;color:var(--nv-green-900)!important;border-color:rgba(23,107,77,.3)!important}
.tab.active::after{background:var(--nv-green-700)!important}

/* Fluxo clínico simplificado */
.view[data-view="record"].nvwf-simplified-record .patient-layout{display:block!important}
.view[data-view="record"].nvwf-simplified-record .patient-summary{display:none!important}
.view[data-view="record"].nvwf-simplified-record .record-panel{width:100%!important;max-width:none!important}
.view[data-view="record"].nvwf-simplified-record .view-head{margin-bottom:10px!important}
.view[data-view="record"].nvwf-simplified-record #recordTabs{display:flex!important;gap:7px!important;overflow-x:auto!important;padding:7px!important;margin-bottom:14px!important;border:1px solid #dce6e0!important;border-radius:14px!important;background:#fff!important;scrollbar-width:thin;scrollbar-color:var(--nv-green-700) #edf2ef}
.view[data-view="record"].nvwf-simplified-record #recordTabs .tab{display:inline-flex!important;align-items:center!important;gap:7px!important;flex:0 0 auto!important;min-height:42px!important;padding:8px 12px!important;border:1px solid transparent!important;border-radius:10px!important;white-space:nowrap!important;font-weight:750!important}
.nvwf-tab-icon{display:inline-grid;place-items:center;min-width:22px;height:22px;padding:0 3px;border-radius:7px;background:rgba(23,107,77,.09);font-size:.78rem;font-weight:900;color:var(--nv-green-800)}
.tab.active .nvwf-tab-icon{background:var(--nv-green-700);color:#fff}

.nvcl-attendance-bar{display:grid!important;grid-template-columns:minmax(250px,1fr) auto auto!important;align-items:center!important;gap:12px!important;margin:0 0 12px!important;padding:11px 13px!important;border-color:rgba(23,107,77,.28)!important;background:linear-gradient(135deg,#fff,var(--nv-green-050))!important;box-shadow:0 8px 22px rgba(8,45,35,.07)!important}
.nvcl-attendance-identification{min-width:0}
.nvcl-attendance-identification>div{min-width:0}
.nvcl-attendance-identification strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--nv-green-950)}
.nvcl-status{background:var(--nv-green-100)!important;color:var(--nv-green-800)!important}

.nvwf-allergy-badge{display:inline-flex;align-items:center;justify-content:center;min-height:36px;max-width:420px;padding:7px 11px;border-radius:10px;border:1px solid;font-size:.74rem;font-weight:900;letter-spacing:.015em;text-align:left;cursor:pointer;white-space:normal}
.nvwf-allergy-badge-alert{background:#ffe8e7;border-color:#d65252;color:#8b1818;box-shadow:0 0 0 3px rgba(214,82,82,.08)}
.nvwf-allergy-badge-clear{background:#e2f3e9;border-color:#58a678;color:#155e3b}
.nvwf-allergy-badge-unknown{background:#fff4d9;border-color:#d7a83b;color:#79540c}

.nvwf-triage-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid #dfe7e2}
.nvwf-triage-head>div{display:grid;gap:3px}
.nvwf-triage-head strong{font-size:1.05rem;color:var(--nv-green-950)}
.nvwf-triage-head span{font-size:.84rem;color:#607169}
.nvwf-vitals-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.nvwf-vitals-grid label,.nvwf-field-wide,.nvwf-allergy-form label{display:grid;gap:6px}
.nvwf-vitals-grid label>span,.nvwf-field-wide>span,.nvwf-allergy-form label>span{font-size:.75rem;font-weight:800;color:#385449}
.nvwf-vitals-grid input,.nvwf-field-wide textarea,.nvwf-allergy-form input,.nvwf-allergy-form select{width:100%;min-height:42px;border:1px solid #ccd9d2;border-radius:10px;background:#fff;padding:9px 10px}
.nvwf-field-wide{margin-top:12px}
.nvwf-allergy-section{margin-top:18px;padding:16px;border:1px solid #d8e3dd;border-radius:14px;background:#fbfdfc}
.nvwf-allergy-section header{display:flex;justify-content:space-between;gap:12px;margin-bottom:12px}
.nvwf-allergy-section header>div{display:grid;gap:3px}
.nvwf-allergy-section header strong{color:var(--nv-green-950)}
.nvwf-allergy-section header span{font-size:.82rem;color:#64736c}
.nvwf-no-allergy{display:flex!important;align-items:center;gap:8px;margin-bottom:12px;padding:10px 12px;border-radius:10px;background:#eef6f1;font-weight:750;color:#244e3e}
.nvwf-no-allergy input{width:18px;height:18px;accent-color:var(--nv-green-700)}
.nvwf-allergy-form{display:grid;grid-template-columns:150px minmax(180px,1.1fr) minmax(180px,1fr) 145px auto;gap:10px;align-items:end}
.nvwf-allergy-list{display:grid;gap:8px;margin-top:12px}
.nvwf-allergy-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid #efb1b1;border-left:5px solid #c93f3f;border-radius:10px;background:#fff7f7}
.nvwf-allergy-item>div{display:grid;gap:2px}
.nvwf-allergy-item strong{color:#851c1c;font-size:.86rem}
.nvwf-allergy-item span{font-size:.78rem;color:#6d5555}
.nvwf-allergy-empty{padding:11px 12px;border:1px dashed #c8d5ce;border-radius:10px;background:#fff;color:#65756d;font-size:.8rem;font-weight:750}
.nvwf-toast{position:fixed;right:22px;bottom:22px;z-index:100001;max-width:min(440px,calc(100vw - 44px));padding:13px 16px;border-radius:12px;background:var(--nv-green-900);color:#fff;box-shadow:0 18px 42px rgba(0,0,0,.22);font-weight:750}
.nvwf-toast-error{background:#8b2430}

@media(max-width:1100px){
  .nvcl-attendance-bar{grid-template-columns:1fr auto!important}
  .nvwf-allergy-badge{grid-column:1/-1;max-width:none;width:100%}
  .nvwf-allergy-form{grid-template-columns:repeat(2,minmax(0,1fr))}
  .nvwf-allergy-form button{min-height:42px}
}
@media(max-width:760px){
  .nvcl-attendance-bar{grid-template-columns:1fr!important;align-items:stretch!important}
  .nvcl-attendance-actions{width:100%}
  .nvwf-vitals-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .nvwf-allergy-form{grid-template-columns:1fr}
  .nvwf-triage-head{align-items:flex-start;flex-direction:column}
}
@media(max-width:460px){.nvwf-vitals-grid{grid-template-columns:1fr}}

/* Site institucional — substituição do azul pelo verde institucional */
body{background:#f7f8f6;color:#1c332b}
a{color:#176b4d}
.site-header,.main-header,.navbar,.nav-shell,header.site-header{background:rgba(8,45,35,.97)!important;color:#fff!important;border-color:rgba(255,255,255,.12)!important}
.hero,.hero-section,.institutional-hero,[class*="hero-dark"],[class*="hero-blue"]{background:linear-gradient(135deg,#082d23,#0f513d 62%,#176b4d)!important;color:#fff!important}
.site-footer,.main-footer,footer.site-footer{background:#082d23!important;color:#e7f1eb!important}
.site-footer a,.main-footer a,footer.site-footer a{color:#e7f1eb!important}
.btn-primary,.button-primary,.cta-button,.primary-cta,.site-button-primary{background:linear-gradient(135deg,#176b4d,#0f513d)!important;border-color:#0f513d!important;color:#fff!important}
.btn-primary:hover,.button-primary:hover,.cta-button:hover,.primary-cta:hover,.site-button-primary:hover{background:linear-gradient(135deg,#1f7a58,#176b4d)!important}
.card:hover,.service-card:hover,.feature-card:hover{border-color:rgba(23,107,77,.35)!important;box-shadow:0 16px 38px rgba(8,45,35,.11)!important}
.badge,.eyebrow,.section-kicker,.kicker{color:#176b4d!important}
input:focus,select:focus,textarea:focus{border-color:#1f7a58!important;box-shadow:0 0 0 3px rgba(31,122,88,.13)!important}

/* NV_GREEN_SITE_V2852_START */
:root,
html,
body {
    --primary: #176b4d !important;
    --primary-dark: #0b3d2f !important;
    --primary-light: #dff3e9 !important;
    --accent: #23865f !important;
    --brand-primary: #176b4d !important;
    --brand-secondary: #0b3d2f !important;
    --color-primary: #176b4d !important;
    --color-primary-dark: #0b3d2f !important;
    --color-accent: #23865f !important;
    --link-color: #176b4d !important;
}

.site-header,
.header-inner,
.main-nav,
.mobile-menu,
.footer-main,
.footer-bottom {
    border-color: rgba(23, 107, 77, 0.35) !important;
}

.menu-button,
.button-primary,
.btn-primary,
a.button-primary {
    background-color: #176b4d !important;
    background-image: none !important;
    border-color: #176b4d !important;
    color: #ffffff !important;
}

.menu-button:hover,
.button-primary:hover,
.btn-primary:hover,
a.button-primary:hover {
    background-color: #0f5940 !important;
    border-color: #0f5940 !important;
}

.main-nav a:hover,
.main-nav a.active,
.footer-col a:hover,
.internal-link-v19,
a:not(.button-primary) {
    color: #176b4d;
}

.eyebrow,
.brand-kicker,
.brand-doctor,
.section-kicker {
    color: #176b4d !important;
}

.hero,
.hero-panel,
.feature-card,
.legal-card,
.contact-card {
    border-color: rgba(23, 107, 77, 0.25) !important;
}

.hero::before,
.hero::after,
.section-accent,
.decorative-line {
    background-color: #176b4d !important;
    background-image: none !important;
}
/* NV_GREEN_SITE_V2852_END */
