/* Três níveis de aparência: claro, brilho reduzido e escuro. */
body.np-soft-light::after{content:"";position:fixed;inset:0;z-index:2147483646;background:rgba(18,34,29,.16);pointer-events:none}
.np-light-toggle{position:relative;z-index:2147483647;flex:none}
.np-light-toggle.np-floating{position:fixed;top:max(12px,env(safe-area-inset-top));right:12px}
.np-light-toggle{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:38px;padding:5px 10px;border:1px solid #c9d9d3;border-radius:999px;background:#fff;color:#17332d;font:600 12px/1.2 system-ui,sans-serif;cursor:pointer;white-space:nowrap}
.np-light-toggle:hover{background:#edf7f2}
.np-light-toggle:focus-visible{outline:3px solid #0b795f;outline-offset:2px}
body.np-dark{--bg:#101b19;--bg-2:#152421;--surface:#1b2b27;--surface-2:#21332e;--surface-3:#2b4139;--border:#3c5a50;--border-soft:#344b43;--text:#e9f4ef;--text-1:#e9f4ef;--text-2:#c0d8cd;--text-3:#a9c6b8;--brand:#65dcb0;--brand-2:#47bc93;--brand-soft:#65dcb0;--success:#82e6b8;--success-bg:#203d31;--warning:#ffd58b;--warning-bg:#423621;--danger:#ff9cac;--danger-bg:#43252d;--info:#95dce8;--brand-gradient:linear-gradient(135deg,#087a61,#08614e);background:#101b19;color:#e9f4ef}
body.np-dark h1,body.np-dark h2,body.np-dark h3,body.np-dark h4,body.np-dark h5,body.np-dark .stat .val,body.np-dark .stat .lbl,body.np-dark .birthday-person-text strong,body.np-dark .birthday-info>strong{color:#e9f4ef}
body.np-dark .main,body.np-dark .auth-wrap,body.np-dark .pub-wrap,body.np-dark .patient-shell{background:#101b19;background-image:none}
body.np-dark .sidebar,body.np-dark .topbar,body.np-dark header,body.np-dark .card,body.np-dark .stat,body.np-dark .auth-card,body.np-dark .modal-box,body.np-dark .modal,body.np-dark .list-card,body.np-dark .birthday-panel,body.np-dark .birthday-row,body.np-dark .patient-card,body.np-dark .patient-empty,body.np-dark .product,body.np-dark .browser,body.np-dark .browserbar,body.np-dark .agenda,body.np-dark .trustitem,body.np-dark .feature,body.np-dark .step,body.np-dark .faq details,body.np-dark .stat,body.np-dark .section.alt,body.np-dark .footer{background:#1b2b27;background-image:none;border-color:#3c5a50;color:#e9f4ef}
body.np-dark .hero,body.np-dark .trust,body.np-dark .final{background:#101b19;background-image:none}
body.np-dark .hero h1,body.np-dark .dash h3,body.np-dark .agenda b,body.np-dark .topbar h1,body.np-dark .pub-brand-name,body.np-dark .sidebar .brand span,body.np-dark .auth-logo .name,body.np-dark .patient-header .brand{color:#e9f4ef!important}
body.np-dark .hero p,body.np-dark .heading p,body.np-dark .navlinks a:not(.btn),body.np-dark .nav a,body.np-dark .patient-main p,body.np-dark .footer,body.np-dark .muted,body.np-dark .muted-3,body.np-dark .pricebox p{color:#c0d8cd}
body.np-dark .btn:not(.btn-primary):not(.primary),body.np-dark .btn-ghost,body.np-dark .hamburger,body.np-dark .auth-tabs,body.np-dark .auth-tabs button.active,body.np-dark .np-light-toggle{background:#243a32;border-color:#4d7163;color:#e9f4ef}
body.np-dark .np-light-toggle:hover{background:#315546;color:#e9fff2}
body.np-dark input,body.np-dark select,body.np-dark textarea,body.np-dark .field input:not([type="checkbox"]):not([type="radio"]),body.np-dark .field select,body.np-dark .field textarea{background:#13231f;border-color:#4d7163;color:#eef8f2}
body.np-dark input::placeholder,body.np-dark textarea::placeholder{color:#9fbaad}
body.np-dark .patient-status{background:#4a391f;color:#ffe0a5}body.np-dark .patient-status.confirmed{background:#1c4235;color:#a2efc6}body.np-dark .patient-status.cancelled{background:#49262d;color:#ffb8c3}
body.np-dark .pricebox,body.np-dark .side{background:#122720}body.np-dark .row{border-color:#3c5a50}body.np-dark .eyebrow,body.np-dark .feature-icon{background:#254638;color:#9be9c2;border-color:#3c6550}
body.np-dark .brand img,body.np-dark .auth-logo img,body.np-dark .pub-brand img{filter:none!important}
@media(max-width:640px){.np-light-toggle{padding:5px 9px}.np-display-label{display:none}.patient-header .np-light-toggle{margin-left:auto}}
@media(max-width:480px){.patient-header{flex-wrap:wrap}.patient-header .brand{flex:1 1 100%}.patient-header .np-light-toggle{margin-left:0}.patient-header #install{margin-left:auto}}

/* Menu escuro: seleção discreta com texto e ícones legíveis. */
body.np-dark .sidebar .nav a{background:transparent;color:#c0d8cd;box-shadow:none}
body.np-dark .sidebar .nav a:hover{background:#243a32;color:#f1faf5}
body.np-dark .sidebar .nav a.active{background:#29463b;color:#f1faf5;box-shadow:inset 3px 0 #65dcb0}
body.np-dark .sidebar .nav a:focus-visible{outline:2px solid #65dcb0;outline-offset:-2px}
body.np-dark .sidebar .nav a svg,body.np-dark .sidebar .nav a span{color:inherit}

/* Contraste da página inicial no modo escuro. */
body.np-dark{--ink:#e9f4ef;--muted:#c0d8cd;--brand2:#65dcb0;--soft:#254638;--line:#3c5a50;--ok:#82e6b8}
body.np-dark .stat strong{color:#e9f4ef}
body.np-dark .stat small,body.np-dark .micro,body.np-dark .trustitem span,body.np-dark .feature p,body.np-dark .faq p,body.np-dark .pain-card li,body.np-dark .price span{color:#c0d8cd}
body.np-dark .hero h1 em,body.np-dark .micro b,body.np-dark .step b,body.np-dark .brand span{color:#82e6b8}
body.np-dark .brand{color:#e9f4ef}
body.np-dark .pain-card.before{background:#30282c;border-color:#62454e;color:#e9f4ef}
body.np-dark .pain-card.after{background:#203a2f;border-color:#3c6550;color:#e9f4ef}
body.np-dark .pricebox .eyebrow{color:#9be9c2}
body.np-dark .navlinks a:not(.btn):hover{color:#82e6b8}
body.np-dark .btn:focus-visible,body.np-dark a:focus-visible{outline:2px solid #82e6b8;outline-offset:3px}
