:root{--navy:#063a63;--navy2:#032b4d;--blue:#2f94d7;--green:#14945b;--red:#df2f2f;--yellow:#f1b938;--bg:#eef4f8;--card:#fff;--line:#d7e5ef;--text:#07345d;--muted:#5f7188;--shadow:0 14px 35px rgba(3,43,77,.09);--radius:18px;--sidebar:330px}*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Inter,Segoe UI,Arial,sans-serif;color:var(--text);background:var(--bg)}button,input,select,textarea{font:inherit}button{cursor:pointer}.hidden{display:none!important}.app-shell{min-height:100vh}.login-page{min-height:100vh;display:grid;grid-template-columns:1fr 1.2fr;background:linear-gradient(135deg,var(--navy),#0b6ea3)}.login-brand{padding:54px;color:#fff;display:flex;flex-direction:column;justify-content:center}.login-brand img{width:180px;border-radius:34px;box-shadow:0 18px 45px rgba(0,0,0,.28);background:#052f58}.login-brand h1{font-size:42px;line-height:1.05;margin:28px 0 10px}.login-card{align-self:center;justify-self:center;background:var(--card);border-radius:26px;box-shadow:var(--shadow);padding:32px;width:min(560px,92vw)}.login-card h2{margin:0 0 10px}.field{display:flex;flex-direction:column;gap:7px;margin:12px 0}.field label{font-weight:800}.field input,.field select,.field textarea{border:1px solid var(--line);border-radius:12px;padding:12px 14px;color:var(--text);background:#fff}.field textarea{min-height:95px;resize:vertical}.demo-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:14px}.demo-grid button{border:1px solid var(--line);border-radius:12px;background:#f7fbff;color:var(--navy);font-weight:800;padding:10px}.btn{border:0;border-radius:12px;background:var(--navy);color:#fff;font-weight:900;padding:12px 18px}.btn.green{background:var(--green)}.btn.red{background:var(--red)}.btn.gray{background:#68788c}.btn.light{background:#e7f4ff;color:var(--navy);border:1px solid #cbe6fb}.btn.block{width:100%}.main-layout{display:grid;grid-template-columns:var(--sidebar) 1fr;min-height:100vh}.sidebar{background:linear-gradient(180deg,#074d78,#022f50);color:#fff;padding:18px 16px;position:sticky;top:0;height:100vh;overflow:auto}.sidebar-logo{display:flex;justify-content:center;margin-bottom:20px}.sidebar-logo img{width:180px;border-radius:36px}.user-card{border:1px solid rgba(255,255,255,.24);border-radius:16px;padding:18px;margin:0 0 18px}.user-card b{display:block;font-size:18px}.user-card span{opacity:.94}.theme-toggle{width:100%;margin:14px 0 22px;background:transparent;color:#fff;border:0;font-weight:900;font-size:17px;padding:12px}.menu{display:flex;flex-direction:column;gap:10px}.menu button{width:100%;text-align:left;background:transparent;color:#fff;border:0;border-radius:14px;padding:15px 18px;font-weight:900;font-size:17px}.menu button.active,.menu button:hover{background:linear-gradient(90deg,#3298db,#2a86c2)}.logout{width:100%;background:var(--red);color:#fff;border:0;border-radius:18px;margin-top:28px;padding:17px;font-weight:900;font-size:18px}.content{padding:22px 28px 54px;min-width:0}.topbar{background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 26px;margin-bottom:22px}.topbar h1{font-size:28px;line-height:1.1;margin:0}.topbar .profile{font-weight:900;text-align:right}.grid{display:grid;gap:18px}.grid.kpis{grid-template-columns:repeat(4,minmax(0,1fr))}.grid.two{grid-template-columns:1fr 1fr}.grid.three{grid-template-columns:repeat(3,1fr)}.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:22px;margin-bottom:18px}.card h2,.card h3{margin:0 0 14px}.kpi{background:linear-gradient(135deg,#fff,#f5fffb);border:1px solid var(--line);border-radius:16px;padding:20px;min-height:110px}.kpi strong{display:block;color:var(--green);font-size:38px;line-height:1}.kpi span{font-weight:900;color:var(--muted);font-size:18px}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:12px}table{border-collapse:collapse;width:100%;background:#fff}th,td{border-bottom:1px solid var(--line);padding:12px;text-align:left;vertical-align:top}th{background:#e7f4fb;color:var(--navy);font-weight:900}.status{display:inline-flex;align-items:center;gap:7px;padding:7px 10px;border-radius:999px;background:#eaf6ff;font-weight:900}.dot{width:12px;height:12px;border-radius:50%;background:var(--blue);display:inline-block}.dot.red{background:var(--red)}.dot.yellow{background:var(--yellow)}.dot.green{background:var(--green)}.actions{display:flex;gap:8px;flex-wrap:wrap}.toolbar{display:flex;gap:10px;align-items:center;justify-content:space-between;flex-wrap:wrap;margin-bottom:14px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 16px}.form-grid .full{grid-column:1/-1}.patient-hero{display:grid;grid-template-columns:150px 1fr;gap:22px;align-items:center}.patient-photo{width:150px;height:150px;border-radius:18px;object-fit:cover;border:1px solid var(--line);background:#dcebf4}.score-row{display:grid;grid-template-columns:180px 1fr 70px;gap:12px;align-items:center;margin:10px 0}.bar{height:15px;border-radius:999px;background:#e4ebf2;overflow:hidden}.bar i{display:block;height:100%;background:linear-gradient(90deg,var(--green),#4bd48f);border-radius:999px}.notice{background:#eaf6ff;border-left:5px solid var(--blue);border-radius:14px;padding:18px;line-height:1.4}.danger{background:#fff1f1;border-left-color:var(--red)}.footer{background:var(--navy);color:#fff;text-align:center;padding:16px;border-radius:12px;margin-top:28px}.print-area{background:#fff;color:#07345d;max-width:920px;margin:0 auto;padding:30px}.report-head{display:flex;justify-content:space-between;border-bottom:2px solid var(--navy);padding-bottom:12px;margin-bottom:18px}.report-logo{width:90px}.cert-page{page-break-before:always;border:4px double var(--navy);min-height:680px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:44px}.cert-page img{width:96px}.mobile-toggle{display:none}.dark{--bg:#0b1826;--card:#0f2435;--line:#29445d;--text:#e7f4ff;--muted:#b9c9d9}.dark .card,.dark .topbar,.dark table,.dark .login-card{background:var(--card)}.dark th{background:#14344f}.dark .field input,.dark .field select,.dark .field textarea{background:#0b1826;color:#e7f4ff;border-color:#29445d}.dark .kpi{background:#0f2435}.dark .notice{background:#0f2d44}@media(max-width:960px){.login-page,.main-layout{grid-template-columns:1fr}.sidebar{position:relative;height:auto}.content{padding:14px}.grid.kpis,.grid.two,.grid.three,.form-grid{grid-template-columns:1fr}.patient-hero{grid-template-columns:1fr}.topbar{align-items:flex-start;flex-direction:column}.demo-grid{grid-template-columns:1fr}}@media print{body{background:#fff}.sidebar,.topbar,.no-print,.footer,#toast-root{display:none!important}.main-layout{display:block}.content{padding:0}.card{box-shadow:none;border:0}.print-area{max-width:none;padding:0}.cert-page{break-before:page;page-break-before:always;height:auto;min-height:250mm;overflow:visible}.report-head{break-inside:avoid}@page{size:A4;margin:12mm}}

/* RAF Enterprise V1.1 - Avaliação RAF completa inspirada no projeto antigo */
.module-title{display:flex;justify-content:space-between;gap:14px;align-items:center;flex-wrap:wrap}.score-pill{display:inline-flex;align-items:center;justify-content:center;min-width:82px;border-radius:999px;background:#eaf6ff;color:var(--navy);font-weight:900;padding:9px 14px;border:1px solid var(--line)}.metric-box{display:grid;grid-template-columns:150px 1fr;gap:18px;align-items:center}.circle{--p:0%;width:130px;height:130px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--green) var(--p), #e4ebf2 0);position:relative}.circle:before{content:"";position:absolute;inset:13px;background:var(--card);border-radius:50%}.circle span{position:relative;font-size:26px;font-weight:900;color:var(--green)}.legend{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:16px;color:var(--muted);font-weight:800}.status-box{background:#eaf6ff;border:1px solid var(--line);border-left:5px solid var(--blue);border-radius:12px;padding:13px 14px;font-weight:800}.assessment-options-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.options-card{margin-bottom:0}.options-header{font-size:17px;font-weight:900;margin-bottom:14px;color:var(--navy)}.checklist{display:flex;flex-direction:column;gap:10px;max-height:360px;overflow:auto;padding-right:4px}.check-mini{display:flex;align-items:flex-start;gap:9px;line-height:1.25;background:#f7fbff;border:1px solid var(--line);border-radius:10px;padding:10px;color:var(--text);font-weight:650}.check-mini input{margin-top:2px;min-width:16px}.selected-count{margin-top:12px;font-weight:900;color:var(--muted)}#observacoesIA,#observacoesGerais{width:100%;min-height:180px;border:1px solid var(--line);border-radius:12px;padding:14px;background:#fff;color:var(--text)}.dark .check-mini{background:#0b1826}.dark #observacoesIA,.dark #observacoesGerais{background:#0b1826;color:#e7f4ff;border-color:#29445d}@media(max-width:1200px){.assessment-options-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.assessment-options-grid,.metric-box,.legend{grid-template-columns:1fr}.circle{margin:auto}}

/* RAF Enterprise V1.2 - cadastro completo, fotos, visita, rotina e psicotecnica */
.login-brand img,.sidebar-logo img{background:transparent!important;box-shadow:none!important;border-radius:0!important;object-fit:contain}.sidebar-logo img{width:190px}.login-brand img{width:190px}.compact-table input,.compact-table select{width:100%;min-width:120px;border:1px solid var(--line);border-radius:10px;padding:8px;background:#fff;color:var(--text)}#rotinaResumo,#psicoResumo{width:100%;min-height:150px;border:1px solid var(--line);border-radius:12px;padding:14px;background:#fff;color:var(--text);resize:vertical}.photo-strip{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.photo-strip img{width:54px;height:54px;border-radius:10px;object-fit:cover;border:1px solid var(--line)}.photo-strip span{display:inline-flex;width:54px;height:54px;align-items:center;justify-content:center;background:#eef4f8;border:1px dashed var(--line);border-radius:10px;font-size:11px;color:var(--muted);font-weight:800}.visit-box{border-radius:14px;padding:16px;border-left:6px solid var(--muted);background:#eef4f8;line-height:1.45}.visit-box.visit-apt{border-left-color:var(--green);background:#ecfff5}.visit-box.visit-caution{border-left-color:var(--yellow);background:#fff9e9}.visit-box.visit-no{border-left-color:var(--red);background:#fff1f1}.photo-report{display:flex;gap:14px;flex-wrap:wrap;margin:12px 0 18px}.photo-report figure{margin:0;text-align:center;font-weight:800}.photo-report img{width:150px;height:150px;object-fit:cover;border:1px solid var(--line);border-radius:12px}.dark .compact-table input,.dark .compact-table select,.dark #rotinaResumo,.dark #psicoResumo{background:#0b1826;color:#e7f4ff;border-color:#29445d}.dark .photo-strip span{background:#0b1826}.dark .visit-box{background:#10283b}@media print{.photo-report img{width:110px;height:110px}.visit-box{break-inside:avoid}.compact-table input,.compact-table select{border:0;padding:0}.cert-page img{background:transparent!important}}

/* RAF Enterprise V1.3 - cadastro/painel antigo restaurado e ajustes visuais */
.form-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.photo-preview{display:block;width:120px;height:120px;object-fit:cover;border:1px solid var(--line);border-radius:16px;background:#eef4f8;margin-top:8px}.photo-preview:not([src]),.photo-preview[src=""]{background:#eef4f8}.chip{display:inline-flex;align-items:center;padding:5px 10px;border-radius:999px;background:#eaf6ff;color:var(--navy);font-weight:900;font-size:12px}.field small{color:var(--muted);line-height:1.4}.form-area .btn:focus,.btn:focus{outline:3px solid rgba(47,148,215,.35);outline-offset:2px}@media(max-width:1200px){.form-grid.four{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid.three{grid-template-columns:1fr 1fr}}@media(max-width:720px){.form-grid.four,.form-grid.three{grid-template-columns:1fr}.photo-preview{width:100px;height:100px}}

/* RAF Enterprise V1.4 - pré-visualização e modelo de impressão com capa */
.report-cover{min-height:265mm;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;break-after:page;page-break-after:always;color:var(--navy);padding:20mm 12mm}.report-cover .cover-logo{width:180px;height:auto;margin-bottom:34px;background:transparent!important}.report-cover h1{font-size:46px;line-height:1.1;margin:0 0 20px}.report-cover h2{font-size:28px;color:var(--green);margin:0 0 28px}.report-cover p{font-size:20px;margin:12px 0}.report-cover .cover-subtitle{font-weight:900;margin-top:34px}.report-page{break-after:auto;page-break-after:auto}.report-head-v14{align-items:center}.preview-stamp{display:inline-block;background:#fff8df;border:1px solid #f2cc5c;border-radius:999px;padding:8px 12px;font-weight:900;color:#8a6500;margin-top:10px}.report-identification{display:grid;grid-template-columns:145px 1fr;gap:20px;align-items:center;border:1px solid var(--line);border-radius:16px;padding:18px;margin:18px 0;background:#f7fbff;break-inside:avoid}.report-profile-photo{width:130px;height:130px;object-fit:cover;border-radius:18px;border:1px solid var(--line);background:#eef4f8;display:flex;align-items:center;justify-content:center;text-align:center;font-weight:900;color:var(--muted)}.before-after-only figure{min-width:170px}.before-after-only img{width:170px;height:170px}.before-after-only figcaption{font-size:22px;color:var(--navy);font-weight:900;margin-top:8px}@media print{.report-cover{min-height:265mm;padding:12mm;break-after:page;page-break-after:always}.report-cover .cover-logo{width:160px}.report-cover h1{font-size:34px}.report-cover h2{font-size:22px}.report-cover p{font-size:16px}.report-identification{grid-template-columns:115px 1fr;padding:12px;background:#fff}.report-profile-photo{width:105px;height:105px}.before-after-only img{width:115px;height:115px}.before-after-only figcaption{font-size:16px}.report-page{break-inside:auto}.preview-stamp{display:none!important}}
/* V1.5 - Relatórios salvos por paciente e cabeçalho limpo */
.report-summary-row{display:grid;grid-template-columns:1fr;gap:14px;margin-bottom:16px}.patient-report-card{background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);overflow:hidden;margin-bottom:20px}.patient-report-head{display:flex;align-items:center;justify-content:space-between;gap:16px;background:#e7f4fb;padding:18px 20px}.patient-report-head h2{margin:0 0 4px}.patient-report-head p{margin:0;color:var(--muted)}.report-actions{padding:16px 20px;border-bottom:1px solid var(--line)}.evolution-box{margin:0 20px 18px;padding:18px;background:#eaf6ff;border-left:5px solid var(--blue);border-radius:14px}.report-table-box{padding:0 20px 18px}.timeline-cards{display:flex;gap:12px;flex-wrap:wrap;margin:14px 0}.timeline-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px;min-width:120px;text-align:center}.timeline-card b,.timeline-card small,.timeline-card span{display:block;margin:5px 0}.timeline-card span{background:#eaf6ff;border-radius:999px;padding:5px 8px;font-weight:900}.history-bar{background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px;margin:12px 0}.bluebar i{background:#2468f2!important}.report-head-v14 p{font-size:18px;margin:10px 0 0}@media print{.patient-report-card,.report-summary-row{display:none!important}.report-head-v14 p{font-size:14px}}

/* RAF Enterprise V1.6 - dashboard completo, documentos no padrão antigo e evolução ampliada */
.doc-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:18px}.doc-card{border:1px solid var(--line);border-radius:16px;padding:16px;background:#fff}.doc-card h2{margin:0 0 10px}.doc-card small{display:block;color:var(--muted);margin:10px 0 14px}.greenchip{background:#e8fff2!important;color:var(--green)!important}.dash-bar-row{display:grid;grid-template-columns:260px 1fr 60px;gap:12px;align-items:center;margin:10px 0}.inner-card{box-shadow:none;margin:10px 0;background:#fff}.mini-evolution .grid.two{margin:14px 0}.mini-evolution small{color:var(--muted)}@media(max-width:960px){.doc-grid{grid-template-columns:1fr}.dash-bar-row{grid-template-columns:1fr}.dash-bar-row span{text-align:right}}@media print{.doc-grid,.doc-card,.dash-bar-row{break-inside:avoid}.inner-card{border:1px solid var(--line)}}


/* RAF Enterprise V2.0 - login no padrão antigo, anexos em mensagens e auditoria aprimorada */
.login-page.old-login{display:flex;align-items:center;justify-content:center;min-height:100vh;background:radial-gradient(circle at 50% 0%, #0b6794 0%, #063a63 42%, #022f50 100%);padding:32px;text-align:center;color:#fff}.old-login-wrap{width:min(760px,96vw);display:flex;flex-direction:column;align-items:center}.old-login-logo{width:230px;max-width:44vw;border-radius:42px;margin-bottom:18px;filter:drop-shadow(0 22px 35px rgba(0,0,0,.25))}.old-login h1{font-size:54px;line-height:1;margin:6px 0 16px;font-weight:950;letter-spacing:.5px}.old-login h2{font-size:42px;line-height:1.15;margin:0 0 34px;font-weight:950}.old-login-card{background:#fff;color:var(--text);border-radius:28px;padding:34px 42px;width:min(520px,94vw);box-shadow:0 22px 60px rgba(0,0,0,.25)}.old-login-card h3{font-size:30px;color:#1680ca;margin:0 0 22px}.old-login-card input{width:100%;border:1px solid #d7e5ef;border-radius:16px;background:#edf4ff;color:#111;padding:18px 24px;font-size:23px;margin-bottom:18px;box-shadow:inset 0 2px 8px rgba(0,0,0,.06)}.old-login-btn{width:100%;border:0;border-radius:16px;background:linear-gradient(180deg,#40cf67,#24a94d);color:#fff;font-size:25px;font-weight:950;padding:18px 22px;box-shadow:0 16px 34px rgba(36,169,77,.26)}.forgot-btn{border:0;background:transparent;color:#637085;font-size:24px;font-weight:900;margin-top:24px}.old-demo{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:18px}.old-demo button{border:1px solid #d7e5ef;border-radius:12px;background:#f7fbff;color:var(--navy);font-weight:900;padding:9px}.msg-attachment{margin-top:10px;padding:10px;border-radius:12px;background:#eef8ff;border:1px solid var(--line);display:flex;align-items:center;gap:10px;flex-wrap:wrap}.audit-kpis{margin:18px 0}.dark .old-login-card{background:#fff;color:#07345d}.dark .old-login-card input{background:#edf4ff;color:#111}@media(max-width:720px){.old-login-logo{width:170px}.old-login h1{font-size:38px}.old-login h2{font-size:28px}.old-login-card{padding:26px 20px}.old-login-card input{font-size:18px}.forgot-btn{font-size:18px}.old-demo{grid-template-columns:1fr}}


/* RAF Enterprise V2.1 - revisão visual completa: modo escuro, login compacto e telas mais legíveis */
:root{--font-size-base:16px;--btn-pad-y:10px;--btn-pad-x:14px}.btn{padding:var(--btn-pad-y) var(--btn-pad-x);font-size:15px;border-radius:11px}.content{font-size:var(--font-size-base)}.card{padding:18px}.topbar{padding:18px 22px}.topbar h1{font-size:25px}.grid.kpis{gap:12px}.kpi{min-height:86px;padding:16px}.kpi strong{font-size:32px}.kpi span{font-size:16px}.field{margin:8px 0}.field input,.field select,.field textarea{padding:10px 12px}.menu button{font-size:16px;padding:13px 16px}.logout{padding:14px}.sidebar-logo img{width:170px;max-height:170px;object-fit:contain}.patient-photo{width:118px;height:118px}.patient-hero{grid-template-columns:118px 1fr}.photo-strip img,.photo-strip span{width:46px;height:46px}.actions{gap:7px}.table-wrap{background:var(--card)}
.old-login{overflow:auto}.old-login-wrap{width:min(620px,94vw);padding:16px 0}.old-login-logo{width:165px!important;max-width:38vw!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;filter:drop-shadow(0 16px 26px rgba(0,0,0,.22))}.old-login h1{font-size:42px!important;margin:4px 0 8px!important}.old-login h2{font-size:28px!important;margin:0 0 18px!important}.old-login-card{width:min(420px,92vw)!important;padding:24px 28px!important;border-radius:24px!important}.old-login-card h3{font-size:24px!important;margin-bottom:16px!important}.old-login-card input{font-size:18px!important;padding:14px 18px!important;margin-bottom:12px!important;border-radius:14px!important}.old-login-btn{font-size:19px!important;padding:14px 18px!important}.forgot-btn{font-size:18px!important;margin-top:16px!important}.old-demo{margin-top:12px}
.list-photo-main{display:grid;grid-template-columns:62px 1fr;gap:10px;align-items:start}.list-profile-photo{width:58px;height:58px;border-radius:50%;object-fit:cover;border:2px solid var(--line);background:var(--bg)}.list-photo-duo{display:flex;gap:7px;flex-wrap:wrap}.list-photo-duo img{width:50px;height:50px;object-fit:cover;border-radius:10px;border:1px solid var(--line)}.compact-note{font-size:13px;color:var(--muted);line-height:1.35}.form-card-collapsed{display:none}.clinic-list-card table td,.clinic-list-card table th,.patient-list-card table td,.patient-list-card table th{font-size:15px}.section-muted{color:var(--muted)}
.dark{--bg:#0b1826;--card:#10283b;--line:#3a5b75;--text:#eef8ff;--muted:#c7d8e8;--navy:#8fd0ff;--navy2:#d9f1ff;--shadow:0 14px 34px rgba(0,0,0,.32)}.dark body,.dark .content{background:var(--bg);color:var(--text)}.dark .sidebar{background:linear-gradient(180deg,#074d78,#022f50)}.dark .topbar,.dark .card,.dark .patient-report-card,.dark .old-login-card{background:var(--card)!important;color:var(--text)!important;border-color:var(--line)!important}.dark .card h1,.dark .card h2,.dark .card h3,.dark .topbar h1,.dark label,.dark b,.dark strong{color:var(--text)!important}.dark table{background:#0f2435!important;color:var(--text)!important}.dark th{background:#173b58!important;color:#f0fbff!important;border-color:var(--line)!important}.dark td{background:#10283b!important;color:#eef8ff!important;border-color:var(--line)!important}.dark .table-wrap{border-color:var(--line)!important;background:#10283b!important}.dark .kpi{background:linear-gradient(135deg,#10283b,#0c2131)!important;border-color:var(--line)!important}.dark .kpi span,.dark .section-muted,.dark .compact-note,.dark small{color:#c7d8e8!important}.dark .notice,.dark .evolution-box,.dark .status-box,.dark .msg-attachment{background:#12324a!important;color:#eef8ff!important;border-color:#2f9ce0!important}.dark .patient-report-head,.dark .report-actions,.dark .chip,.dark .status,.dark .score-pill{background:#153a55!important;color:#eef8ff!important}.dark .field input,.dark .field select,.dark .field textarea,.dark input,.dark select,.dark textarea{background:#0b1826!important;color:#eef8ff!important;border-color:#3a5b75!important}.dark input::placeholder,.dark textarea::placeholder{color:#8fa6ba!important}.dark .btn.light{background:#d9f1ff!important;color:#05385f!important}.dark .btn.gray{background:#6f8196!important;color:#fff!important}.dark .footer{background:#06436b!important;color:#fff!important}.dark .bar{background:#263a4d!important}.dark .photo-preview,.dark .patient-photo,.dark .list-profile-photo{background:#0b1826!important}.dark .old-login-card{background:#fff!important;color:#07345d!important}.dark .old-login-card h3{color:#1680ca!important}.dark .old-login-card input{background:#edf4ff!important;color:#111!important}.dark .old-demo button{background:#f7fbff!important;color:#063a63!important}
@media(max-width:1100px){.grid.kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.content{padding:16px}.topbar h1{font-size:22px}.patient-list-card table{min-width:850px}.clinic-list-card table{min-width:900px}}@media(max-width:720px){.old-login-logo{width:135px!important}.old-login h1{font-size:34px!important}.old-login h2{font-size:22px!important}.old-login-card{padding:20px!important}.topbar{padding:15px}.topbar h1{font-size:20px}.card{padding:15px}.btn{font-size:14px;padding:9px 12px}.patient-hero{grid-template-columns:90px 1fr}.patient-photo{width:90px;height:90px}}

/* RAF Enterprise V2.1.2 - hotfix de legibilidade do modo escuro e preview/relatório */
.dark{
  --navy:#06436b;
  --navy2:#032b4d;
  --blue:#2f94d7;
}
.dark .btn:not(.green):not(.red):not(.gray):not(.light),
.dark button.btn:not(.green):not(.red):not(.gray):not(.light){
  background:#06436b!important;
  color:#ffffff!important;
}
.dark .btn.green{background:#14945b!important;color:#fff!important}
.dark .btn.red{background:#df2f2f!important;color:#fff!important}
.dark .btn.gray{background:#6f8196!important;color:#fff!important}
.dark .doc-card,
.dark .inner-card,
.dark .history-bar,
.dark .timeline-card{
  background:#10283b!important;
  color:#eef8ff!important;
  border-color:#3a5b75!important;
}
.dark .doc-card h1,.dark .doc-card h2,.dark .doc-card h3,
.dark .inner-card h1,.dark .inner-card h2,.dark .inner-card h3,
.dark .history-bar,.dark .history-bar b,.dark .history-bar div,
.dark .timeline-card,.dark .timeline-card b,.dark .timeline-card small{
  color:#eef8ff!important;
}
.dark .doc-card small,
.dark .timeline-card small{
  color:#c7d8e8!important;
}
.dark .doc-card .chip,
.dark .timeline-card span,
.dark .greenchip{
  background:#153a55!important;
  color:#eef8ff!important;
}
.dark .doc-card .actions .btn,
.dark .patient-report-card .actions .btn,
.dark .report-actions .btn{
  color:#fff!important;
}
.dark .print-area,
.dark .print-area .report-page,
.dark .print-area .report-cover,
.dark .print-area .cert-page{
  background:#ffffff!important;
  color:#07345d!important;
}
.dark .print-area h1,
.dark .print-area h2,
.dark .print-area h3,
.dark .print-area p,
.dark .print-area b,
.dark .print-area strong,
.dark .print-area span,
.dark .print-area small,
.dark .print-area figcaption,
.dark .print-area .score-row,
.dark .print-area .score-row b,
.dark .print-area .score-row span,
.dark .print-area .report-head-v14 p{
  color:#07345d!important;
}
.dark .print-area .report-cover h2,
.dark .print-area .cert-page h2{
  color:#14945b!important;
}
.dark .print-area .cover-logo,
.dark .print-area .report-logo,
.dark .print-area .cert-page img{
  background:transparent!important;
  box-shadow:none!important;
}
.dark .print-area .report-identification,
.dark .print-area .notice{
  background:#f7fbff!important;
  color:#07345d!important;
  border-color:#d7e5ef!important;
}
.dark .print-area .bar{
  background:#e4ebf2!important;
}
.dark .print-area .bar i{
  background:linear-gradient(90deg,#14945b,#4bd48f)!important;
}
.dark .print-area .bluebar i{
  background:#2468f2!important;
}
.dark .print-area .preview-stamp{
  background:#fff8df!important;
  color:#8a6500!important;
  border-color:#f2cc5c!important;
}
@media print{
  .print-area,
  .print-area *{
    color:#07345d!important;
  }
  .print-area .report-cover h2,
  .print-area .cert-page h2{color:#14945b!important}
  .print-area .bar{background:#e4ebf2!important}
  .print-area .bar i{background:linear-gradient(90deg,#14945b,#4bd48f)!important}
  .print-area .bluebar i{background:#2468f2!important}
}


/* V2.1.3 - Portal familiar e LGPD final */
.family-legal{display:grid;gap:10px;margin:10px 0 16px;padding:0 8px}
.family-legal a{display:block;text-decoration:none;text-align:center;font-weight:800;border-radius:14px;padding:12px 10px;background:rgba(255,255,255,.12);color:#fff;border:1px solid rgba(255,255,255,.22)}
.family-legal a:hover{background:rgba(70,170,235,.28)}
.family-privacy-card p{line-height:1.55}
.dark .family-privacy-card{background:#102d40!important;color:#eef8ff!important;border-color:#31566f!important}
.dark .family-privacy-card p,.dark .family-privacy-card b{color:#eef8ff!important}
.dark .family-privacy-card .btn.light{background:#e9f5ff!important;color:#07345d!important;border-color:#b9d7ee!important}


/* RAF Enterprise V2.1.7 - revisão final pré-Supabase: português, contraste e impressão A4 */
.print-area{max-width:980px;margin:0 auto;background:#fff;color:#07345d;line-height:1.45}
.report-page{background:#fff;color:#07345d;padding:26px 34px}
.report-page h1{font-size:34px;line-height:1.1;margin:0 0 10px;color:#07345d}
.report-page h2{font-size:25px;line-height:1.2;margin:20px 0 10px;color:#07345d}
.report-page h3{font-size:20px;line-height:1.2;margin:18px 0 8px;color:#07345d}
.report-page p{font-size:16px;margin:7px 0;color:#07345d}
.report-page .score-row b{text-transform:none;color:#07345d}
.report-page .score-row span{color:#07345d;text-align:right}
.report-identification p{font-size:17px}
.report-cover{background:#fff;color:#07345d}
.report-cover h1,.report-cover p,.report-cover b{color:#07345d}
.report-cover .cover-logo{background:transparent!important;box-shadow:none!important;border-radius:0!important}
.report-logo{background:transparent!important;box-shadow:none!important;border-radius:0!important;object-fit:contain}
.cert-page{background:#fff;color:#07345d}
.cert-page h1,.cert-page h2,.cert-page p{color:#07345d}
.cert-page img{background:transparent!important;box-shadow:none!important;border-radius:0!important}
.dark .print-area,.dark .report-page,.dark .report-cover,.dark .cert-page{background:#fff!important;color:#07345d!important}
.dark .print-area *:not(.bar):not(.bar i){color:#07345d!important}
.dark .print-area .bar{background:#e4ebf2!important}
.dark .print-area .bar i{background:linear-gradient(90deg,#14945b,#4bd48f)!important}
.dark .print-area .bluebar i{background:#2468f2!important}
.dark .print-area .report-cover h2,.dark .print-area .cert-page h2{color:#14945b!important}

@media print{
  html,body{width:210mm;background:#fff!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .sidebar,.topbar,.no-print,.footer,#toast-root,.toolbar{display:none!important}
  .main-layout{display:block!important}
  .content{padding:0!important;margin:0!important;background:#fff!important}
  .print-area{width:186mm!important;max-width:186mm!important;margin:0 auto!important;padding:0!important;background:#fff!important;color:#07345d!important;font-size:10.5pt;line-height:1.35}
  .print-area *{box-shadow:none!important;color:#07345d!important}
  .report-cover{width:186mm!important;min-height:273mm!important;height:273mm!important;padding:18mm 10mm!important;break-after:page;page-break-after:always;display:flex!important;flex-direction:column!important;justify-content:center!important;align-items:center!important;text-align:center!important;background:#fff!important;color:#07345d!important}
  .report-cover .cover-logo{width:42mm!important;margin-bottom:18mm!important;background:transparent!important}
  .report-cover h1{font-size:28pt!important;line-height:1.1!important;margin:0 0 8mm!important;color:#07345d!important}
  .report-cover h2{font-size:17pt!important;margin:0 0 9mm!important;color:#14945b!important}
  .report-cover p{font-size:12.5pt!important;margin:2.5mm 0!important;color:#07345d!important}
  .report-cover .cover-subtitle{font-size:12pt!important;margin-top:10mm!important;font-weight:800!important}
  .report-page{width:186mm!important;margin:0 auto!important;padding:0!important;background:#fff!important;color:#07345d!important;font-size:10.5pt!important;page-break-after:auto!important}
  .report-page h1{font-size:23pt!important;margin:0 0 4mm!important;line-height:1.1!important;color:#07345d!important}
  .report-page h2{font-size:16pt!important;margin:7mm 0 3mm!important;line-height:1.15!important;color:#07345d!important;page-break-after:avoid}
  .report-page h3{font-size:12.5pt!important;margin:5mm 0 2mm!important;line-height:1.2!important;color:#07345d!important;page-break-after:avoid}
  .report-page p{font-size:10.5pt!important;margin:2mm 0!important;color:#07345d!important}
  .report-head{display:flex!important;justify-content:space-between!important;align-items:center!important;border-bottom:1.5pt solid #07345d!important;padding-bottom:5mm!important;margin-bottom:5mm!important;break-inside:avoid!important}
  .report-logo{width:25mm!important;height:auto!important;background:transparent!important}
  .report-identification{display:grid!important;grid-template-columns:31mm 1fr!important;gap:6mm!important;align-items:center!important;border:1pt solid #d7e5ef!important;border-radius:5mm!important;padding:5mm!important;margin:5mm 0!important;background:#f7fbff!important;break-inside:avoid!important}
  .report-identification h2{margin-top:0!important}
  .report-identification p{font-size:10.5pt!important}
  .report-profile-photo{width:29mm!important;height:29mm!important;border-radius:4mm!important;object-fit:cover!important}
  .photo-report{gap:8mm!important;margin:4mm 0 6mm!important;break-inside:avoid!important}
  .before-after-only img{width:36mm!important;height:36mm!important;object-fit:cover!important;border-radius:4mm!important}
  .before-after-only figcaption{font-size:11pt!important;color:#07345d!important;margin-top:2mm!important}
  .score-row{display:grid!important;grid-template-columns:34mm 1fr 15mm!important;gap:4mm!important;align-items:center!important;margin:2.2mm 0!important;break-inside:avoid!important}
  .score-row b,.score-row span{font-size:10pt!important;color:#07345d!important}
  .bar{height:3.8mm!important;background:#e4ebf2!important;border-radius:999px!important;overflow:hidden!important}
  .bar i{background:linear-gradient(90deg,#14945b,#4bd48f)!important;border-radius:999px!important}
  .bluebar i{background:#2468f2!important}
  .notice{font-size:10pt!important;background:#f7fbff!important;border-left:3pt solid #2f94d7!important;border-radius:4mm!important;padding:4mm!important;color:#07345d!important;break-inside:avoid!important}
  .cert-page{break-before:page;page-break-before:always;min-height:260mm!important;height:260mm!important;padding:18mm!important;background:#fff!important;color:#07345d!important;border:2pt double #07345d!important}
  .cert-page h2{color:#14945b!important}
  @page{size:A4;margin:12mm}
}

/* RAF Enterprise V2.1.26 - relatório reorganizado para leitura e impressão */
.report-v226 .report-page{padding:28px 36px;text-align:justify}
.report-v226 .report-head{text-align:left}
.report-v226 .report-block{break-inside:avoid;page-break-inside:avoid;margin:0 0 24px}
.report-v226 .report-block-identification,.report-v226 .report-block-summaries,.report-v226 .report-block-selections{break-after:page;page-break-after:always}
.report-identification-v226{display:grid!important;grid-template-columns:140px minmax(0,1fr) minmax(0,1fr)!important;gap:18px!important;align-items:start!important;background:#f7fbff!important}
.report-identification-v226 .report-photo-col{display:flex;justify-content:center;align-items:flex-start}
.report-identification-v226 .info-lines{display:flex;flex-direction:column;gap:4px;min-width:0}
.report-identification-v226 .info-lines p{margin:0!important;line-height:1.35;text-align:left}
.report-note-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:12px 0}.report-note-grid .notice{margin:0}.report-note-stack{grid-template-columns:1fr!important}.report-text-summary{break-inside:auto;page-break-inside:auto}.report-text-stack{display:block}.report-text-item{margin:0 0 14px;break-inside:avoid;page-break-inside:avoid}.report-text-item h3{margin:0 0 6px!important;text-align:left}.report-text-item p,.report-text-item li{font-size:15px;line-height:1.5;text-align:justify}.report-text-item ul{margin:6px 0 0 20px;padding:0}
.index-summary-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:10px 0 14px;text-align:center}.index-summary-grid>div{border:1px solid #d7e5ef;border-radius:14px;background:#f7fbff;padding:12px 10px}.index-summary-grid b{display:block;font-size:13px;color:#5f7188;text-transform:uppercase;letter-spacing:.02em}.index-summary-grid strong{display:block;font-size:24px;color:#14945b;line-height:1.1;margin-top:4px}.notice.compact{padding:12px 14px;margin-top:8px}
.summary-grid-v226{display:grid;grid-template-columns:1fr 1fr;gap:14px}.summary-grid-v226>div{border:1px solid #d7e5ef;border-radius:14px;background:#f7fbff;padding:14px;break-inside:avoid}.summary-grid-v226 h3{margin-top:0!important}.summary-grid-v226 p,.summary-grid-v226 li{text-align:justify}.summary-grid-v226 ul{margin:6px 0 0 18px;padding:0}
.selection-grid-v226{display:grid;grid-template-columns:1fr 1fr;gap:14px}.selection-card{border:1px solid #d7e5ef;border-radius:14px;background:#f7fbff;padding:14px;break-inside:avoid}.selection-card h3{font-size:20px!important;margin:0 0 8px!important;text-align:left}.selection-card ul{margin:0 0 0 18px;padding:0}.selection-card li{font-size:14.5px;line-height:1.28;margin:0 0 4px;text-align:justify}.selection-card p{font-size:14.5px!important;margin:0!important;text-align:justify}
.cert-page .cert-index-badge{align-self:center;display:flex;flex-direction:column;align-items:center;gap:4px;border:1px solid #d7e5ef;background:#f7fbff;border-radius:18px;padding:12px 22px;margin-bottom:18px;color:#07345d}.cert-page .cert-index-badge span{font-weight:900;text-transform:uppercase;font-size:13px;color:#5f7188}.cert-page .cert-index-badge b{font-size:34px;color:#14945b;line-height:1}.cert-blocked-page h2{color:#df2f2f!important}.cert-blocked-page .cert-index-badge b{color:#df2f2f}
@media(max-width:900px){.report-identification-v226,.summary-grid-v226,.selection-grid-v226,.report-note-grid,.index-summary-grid{grid-template-columns:1fr!important}.report-identification-v226 .report-photo-col{justify-content:flex-start}}
@media print{
  .report-v226 .report-page{padding:0!important;text-align:justify!important}
  .report-v226 .report-block{margin:0 0 6mm!important;break-inside:avoid!important;page-break-inside:avoid!important}
  .report-v226 .report-block-identification,.report-v226 .report-block-summaries,.report-v226 .report-block-selections{break-after:page!important;page-break-after:always!important}
  .report-identification-v226{grid-template-columns:30mm 1fr 1fr!important;gap:5mm!important;padding:4mm!important;margin:4mm 0!important;background:#f7fbff!important}
  .report-identification-v226 .info-lines{gap:1.2mm!important}.report-identification-v226 .info-lines p{font-size:9.2pt!important;line-height:1.25!important;margin:0!important;text-align:left!important}
  .report-note-grid{grid-template-columns:1fr 1fr!important;gap:3mm!important;margin:3mm 0!important}.report-note-stack{grid-template-columns:1fr!important}.report-note-grid .notice{padding:3mm!important;font-size:9pt!important}
  .index-summary-grid{grid-template-columns:repeat(5,1fr)!important;gap:2mm!important;margin:3mm 0!important}.index-summary-grid>div{padding:2mm!important;border-radius:3mm!important}.index-summary-grid b{font-size:7.5pt!important}.index-summary-grid strong{font-size:14pt!important}
  .summary-grid-v226{grid-template-columns:1fr 1fr!important;gap:3mm!important}.summary-grid-v226>div{padding:3mm!important;border-radius:3mm!important}.summary-grid-v226 h3{font-size:11pt!important;margin:0 0 1.5mm!important}.summary-grid-v226 p,.summary-grid-v226 li{font-size:8.7pt!important;line-height:1.22!important;margin:1mm 0!important}
  .report-text-summary{break-inside:auto!important;page-break-inside:auto!important}.report-text-item{margin:0 0 3.5mm!important;break-inside:avoid!important;page-break-inside:avoid!important}.report-text-item h3{font-size:12pt!important;margin:0 0 1.3mm!important}.report-text-item p,.report-text-item li{font-size:9.3pt!important;line-height:1.28!important;margin:1mm 0!important;text-align:justify!important}.report-text-item ul{margin:1mm 0 0 5mm!important;padding:0!important}
  .selection-grid-v226{grid-template-columns:1fr 1fr!important;gap:3mm!important}.selection-card{padding:3mm!important;border-radius:3mm!important;background:#f7fbff!important}.selection-card h3{font-size:12pt!important;margin:0 0 2mm!important}.selection-card li,.selection-card p{font-size:8.2pt!important;line-height:1.18!important;margin-bottom:1mm!important;text-align:justify!important}
  .cert-page .cert-index-badge{padding:3mm 8mm!important;margin-bottom:8mm!important}.cert-page .cert-index-badge span{font-size:9pt!important}.cert-page .cert-index-badge b{font-size:24pt!important}
}


/* V2.1.29 - ajustes relatório: fotos centralizadas e certificação reorganizada */
.photo-report.before-after-only{justify-content:center!important;align-items:flex-start!important;text-align:center!important;width:100%!important;}
.photo-report.before-after-only figure{margin-left:14px!important;margin-right:14px!important;}
.cert-page.cert-blocked-page .cert-index-after-title{margin-top:8px!important;margin-bottom:22px!important;}
@media print{.photo-report.before-after-only{justify-content:center!important;gap:18mm!important}.photo-report.before-after-only figure{margin-left:0!important;margin-right:0!important}.cert-page.cert-blocked-page .cert-index-after-title{margin-top:4mm!important;margin-bottom:8mm!important}}
/* V2.1.82 - estabilização da barra lateral sem alterar funcionalidades */
.sidebar{overflow-x:hidden;overscroll-behavior:contain;}
.sidebar-logo img{display:block;max-width:100%;height:auto;}
.user-card b,.user-card span{overflow-wrap:anywhere;}
.theme-toggle,.menu button,.logout{display:block;min-height:44px;line-height:1.2;white-space:normal;}
.menu button{overflow-wrap:anywhere;}
@media(max-width:960px){.sidebar{width:100%;max-width:100%;}.menu button,.theme-toggle,.logout{font-size:16px;}}

/* RAF Conecta V2.1.83 - Etapa 4: reforco seguro de legibilidade no tema escuro */
.dark .selection-card,
.dark .options-card,
.dark .check-mini,
.dark .compact-table,
.dark .compact-table td,
.dark .compact-table th,
.dark .status-box,
.dark .msg-attachment,
.dark .history-bar,
.dark .timeline-card,
.dark .inner-card,
.dark .doc-card {
  background:#10283b!important;
  color:#eef8ff!important;
  border-color:#3a5b75!important;
}
.dark .selection-card h1,
.dark .selection-card h2,
.dark .selection-card h3,
.dark .selection-card p,
.dark .selection-card li,
.dark .options-card h1,
.dark .options-card h2,
.dark .options-card h3,
.dark .options-header,
.dark .check-mini,
.dark .compact-table,
.dark .compact-table td,
.dark .compact-table th {
  color:#eef8ff!important;
}
.dark .selected-count,
.dark .section-muted,
.dark .compact-note,
.dark .muted,
.dark small {
  color:#c7d8e8!important;
}
.dark input[type="date"],
.dark input[type="time"],
.dark input[type="number"],
.dark input[type="search"],
.dark .compact-table input,
.dark .compact-table select {
  background:#0b1826!important;
  color:#eef8ff!important;
  border-color:#3a5b75!important;
}
.dark input:disabled,
.dark select:disabled,
.dark textarea:disabled,
.dark button:disabled {
  opacity:.72!important;
  color:#c7d8e8!important;
}
.dark a { color:#9fd6ff!important; }
.dark .btn.light,
.dark button.btn.light {
  background:#d9f1ff!important;
  color:#05385f!important;
  border-color:#9fd6ff!important;
}
.dark .print-area,
.dark .print-area * {
  color:#07345d!important;
}


/* RAF Conecta V2.1.85 - Etapa 6: estabilização de relatórios, PDF e certificado */
.report-identification-v226{align-items:stretch!important;}
.report-identification-v226>.info-lines{min-width:0;}
.report-page table{page-break-inside:auto;}
.report-page tr{break-inside:avoid;page-break-inside:avoid;}
.report-page thead{display:table-header-group;}
.cert-page{box-sizing:border-box;overflow:visible;}
.cert-page p{max-width:760px;}
@media print{
  html,body{overflow:visible!important;}
  .print-area{overflow:visible!important;}
  .report-cover{height:auto!important;min-height:260mm!important;max-height:none!important;overflow:visible!important;}
  .report-page{overflow:visible!important;}
  .report-identification-v226{grid-template-columns:30mm 1fr 1fr!important;}
  .report-identification-v226>.info-lines{display:flex!important;flex-direction:column!important;gap:1.2mm!important;}
  .report-block{orphans:3;widows:3;}
  .report-block-dimensions{break-inside:auto!important;page-break-inside:auto!important;}
  .cert-page{height:auto!important;min-height:250mm!important;max-height:none!important;overflow:visible!important;display:flex!important;flex-direction:column!important;justify-content:center!important;align-items:center!important;text-align:center!important;padding:14mm!important;break-before:page!important;page-break-before:always!important;break-after:auto!important;page-break-after:auto!important;}
  .cert-page img{width:28mm!important;height:auto!important;margin:3mm 0!important;}
  .cert-page h1{font-size:22pt!important;line-height:1.12!important;margin:3mm 0!important;color:#07345d!important;}
  .cert-page h2{font-size:15pt!important;line-height:1.15!important;margin:2.5mm 0!important;color:#14945b!important;}
  .cert-page p{font-size:10.5pt!important;line-height:1.35!important;margin:2mm 0!important;max-width:160mm!important;color:#07345d!important;}
  .cert-page .cert-index-badge{margin-bottom:5mm!important;}
  .report-modern::after,.print-area::after{content:none!important;display:none!important;}
}

/* RAF Conecta V2.1.86 - Correcao pontual: impressão sempre em tema claro */
.dark .print-area .selection-card,
.dark .print-area .summary-grid-v226 > div,
.dark .print-area .index-summary-grid > div,
.dark .print-area .report-identification-v226,
.dark .print-area .notice,
.dark .print-area .cert-index-badge{
  background:#f7fbff!important;
  color:#07345d!important;
  border-color:#d7e5ef!important;
}
.dark .print-area .selection-card h1,
.dark .print-area .selection-card h2,
.dark .print-area .selection-card h3,
.dark .print-area .selection-card p,
.dark .print-area .selection-card li,
.dark .print-area .summary-grid-v226 h1,
.dark .print-area .summary-grid-v226 h2,
.dark .print-area .summary-grid-v226 h3,
.dark .print-area .summary-grid-v226 p,
.dark .print-area .summary-grid-v226 li,
.dark .print-area .index-summary-grid b,
.dark .print-area .index-summary-grid strong,
.dark .print-area .cert-index-badge span,
.dark .print-area .cert-index-badge b{
  color:#07345d!important;
}
.dark .print-area .index-summary-grid strong,
.dark .print-area .cert-index-badge b{
  color:#14945b!important;
}
@media print{
  html.dark, body.dark, .dark body{
    background:#fff!important;
  }
  .dark .print-area,
  .dark .print-area .report-page,
  .dark .print-area .report-cover,
  .dark .print-area .cert-page{
    background:#fff!important;
    color:#07345d!important;
  }
  .dark .print-area .selection-card,
  .dark .print-area .summary-grid-v226 > div,
  .dark .print-area .index-summary-grid > div,
  .dark .print-area .report-identification-v226,
  .dark .print-area .notice,
  .dark .print-area .cert-index-badge{
    background:#f7fbff!important;
    color:#07345d!important;
    border-color:#d7e5ef!important;
  }
  .dark .print-area .selection-card *,
  .dark .print-area .summary-grid-v226 *,
  .dark .print-area .index-summary-grid *,
  .dark .print-area .report-identification-v226 *,
  .dark .print-area .notice *,
  .dark .print-area .cert-index-badge *{
    color:#07345d!important;
  }
  .dark .print-area .index-summary-grid strong,
  .dark .print-area .cert-index-badge b,
  .dark .print-area .report-cover h2,
  .dark .print-area .cert-page h2{
    color:#14945b!important;
  }
}


/* Fase 18 - ajustes finais mobile/app sem mudar funcionalidade */
html,body{max-width:100%;overflow-x:hidden;}
#app,.main-layout,.content{max-width:100%;}
button,.btn,.menu button,.logout,.theme-toggle{touch-action:manipulation;-webkit-tap-highlight-color:rgba(47,148,215,.18);}
@media(max-width:960px){
  .main-layout{display:block!important;grid-template-columns:1fr!important;}
  .sidebar{position:relative!important;height:auto!important;max-height:none!important;width:100%!important;overflow-x:hidden!important;overflow-y:visible!important;border-radius:0 0 18px 18px;}
  .sidebar-logo img{max-width:150px!important;}
  .menu{gap:8px!important;}
  .menu button,.theme-toggle,.logout{min-height:48px!important;width:100%!important;white-space:normal!important;line-height:1.2!important;}
  .content{padding:12px!important;width:100%!important;}
  .topbar{margin:10px 0 14px!important;}
  .table-wrap{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;}
  table{min-width:720px;}
  .actions{display:flex!important;gap:8px!important;flex-wrap:wrap!important;}
  .actions .btn,.toolbar .btn{flex:1 1 150px;}
}
@media(max-width:520px){
  .old-login-logo{width:120px!important;max-width:38vw!important;}
  .old-login h1{font-size:30px!important;}
  .old-login h2{font-size:20px!important;}
  .old-login-card{width:94vw!important;padding:18px!important;border-radius:22px!important;}
  .old-login-card input,.old-login-btn{font-size:17px!important;min-height:52px!important;}
  .forgot-btn{font-size:16px!important;}
  .card{border-radius:14px!important;padding:13px!important;}
  .topbar h1{font-size:18px!important;}
}

/* Fase 18.1 - ajuste correto de responsividade, sidebar e app mobile */
@media(min-width:961px){
  .main-layout{display:block!important;min-height:100vh!important;}
  .sidebar{position:fixed!important;left:0!important;top:0!important;bottom:0!important;width:var(--sidebar)!important;height:100dvh!important;max-height:100dvh!important;overflow-y:auto!important;overflow-x:hidden!important;z-index:20!important;}
  .content{margin-left:var(--sidebar)!important;width:calc(100% - var(--sidebar))!important;min-width:0!important;}
}
@media(max-width:960px){
  html,body{width:100%!important;max-width:100%!important;overflow-x:hidden!important;}
  .app-shell,#app,.main-layout,.content{width:100%!important;max-width:100%!important;overflow-x:hidden!important;}
  .main-layout{display:flex!important;flex-direction:column!important;min-height:100dvh!important;}
  .sidebar{position:relative!important;top:auto!important;left:auto!important;bottom:auto!important;height:auto!important;max-height:none!important;width:100%!important;overflow:visible!important;border-radius:0 0 20px 20px!important;padding:14px!important;}
  .content{margin-left:0!important;padding:12px!important;width:100%!important;min-width:0!important;}
  .menu button.active{background:linear-gradient(90deg,#3298db,#2a86c2)!important;}
  .menu button:not(.active){background:transparent!important;}
  .grid.kpis,.grid.two,.grid.three,.form-grid,.form-grid.four,.assessment-options-grid{grid-template-columns:1fr!important;width:100%!important;max-width:100%!important;}
  .card,.topbar,.toolbar,.patient-hero,.metric-box{width:100%!important;max-width:100%!important;min-width:0!important;overflow:hidden!important;}
  .toolbar{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:10px!important;}
  .toolbar .actions,.actions{width:100%!important;display:flex!important;flex-wrap:wrap!important;gap:8px!important;}
  .actions .btn,.toolbar .btn,.btn{max-width:100%!important;white-space:normal!important;}
  .table-wrap{width:100%!important;max-width:100%!important;overflow-x:auto!important;overflow-y:hidden!important;-webkit-overflow-scrolling:touch!important;display:block!important;}
  .table-wrap table{width:max-content!important;min-width:760px!important;max-width:none!important;}
  .kpi{min-width:0!important;word-break:break-word!important;}
  .score-row{grid-template-columns:1fr!important;gap:6px!important;}
  .notice{overflow-wrap:anywhere!important;}
}
@media(max-width:520px){
  .sidebar{padding:12px!important;}
  .sidebar-logo img{max-width:116px!important;}
  .user-card{padding:12px!important;margin-bottom:10px!important;}
  .theme-toggle,.menu button,.logout{font-size:15px!important;min-height:46px!important;padding:12px 14px!important;}
  .content{padding:10px!important;}
  .topbar{padding:12px!important;}
  .topbar .profile{text-align:left!important;font-size:13px!important;}
  .kpi strong{font-size:30px!important;}
  .kpi span{font-size:15px!important;}
}


/* Fase 18.2 - ajuste pontual do cadastro de acesso no celular */
.access-card{overflow:visible!important;}
.access-card #accessForm,.access-card #accessForm *{box-sizing:border-box!important;min-width:0!important;max-width:100%!important;}
.access-card #accessForm input,.access-card #accessForm select,.access-card #accessForm textarea{width:100%!important;}
@media(max-width:520px){
  .access-card{padding:12px!important;border-radius:18px!important;margin-left:0!important;margin-right:0!important;overflow:visible!important;}
  .access-card h2{font-size:24px!important;line-height:1.05!important;margin:0 0 8px!important;}
  .access-card>p{font-size:14px!important;line-height:1.28!important;margin:0 0 10px!important;}
  .access-card #accessForm{display:grid!important;grid-template-columns:1fr!important;gap:5px!important;width:100%!important;}
  .access-card #accessForm .field{margin:2px 0!important;gap:4px!important;width:100%!important;}
  .access-card #accessForm label{font-size:14px!important;line-height:1.1!important;}
  .access-card #accessForm input,.access-card #accessForm select{min-height:40px!important;padding:8px 10px!important;border-radius:10px!important;font-size:15px!important;}
  .access-card #accessForm .actions{margin-top:6px!important;width:100%!important;display:block!important;}
  .access-card #accessForm .actions .btn{width:100%!important;min-height:42px!important;padding:9px 12px!important;font-size:15px!important;}
  .access-card .notice{display:none!important;}
}
@media(max-width:390px){
  .access-card{padding:10px!important;}
  .access-card h2{font-size:22px!important;}
  .access-card>p{font-size:13px!important;}
  .access-card #accessForm input,.access-card #accessForm select{min-height:38px!important;padding:7px 9px!important;font-size:14px!important;}
}


/* RAF Conecta v2.1.148 - impressão reconstruída */
@media print{
  @page{size:A4 portrait;margin:10mm!important}
  html,body{width:210mm!important;min-height:297mm!important;background:#fff!important;color:#07345d!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;overflow:visible!important}
  body *{visibility:hidden!important}
  .print-area,.print-area *{visibility:visible!important}
  .print-area{position:absolute!important;left:0!important;top:0!important;width:190mm!important;max-width:190mm!important;margin:0!important;padding:0!important;background:#fff!important;color:#07345d!important;font-size:10.5pt!important;line-height:1.32!important;overflow:visible!important;box-shadow:none!important}
  .sidebar,.topbar,.footer,.no-print,#toast-root,.toolbar,.btn,button:not(.print-keep),input,select,textarea{display:none!important}
  .main-layout,.content{display:block!important;margin:0!important;padding:0!important;width:auto!important;min-height:0!important;overflow:visible!important;background:#fff!important}
  .card,.notice,.report-page,.report-modern,.selection-card,.summary-grid-v226>div,.index-summary-grid>div,.report-identification,.report-identification-v226{box-shadow:none!important;background:#fff!important;color:#07345d!important;border-color:#b9d5e8!important;break-inside:avoid!important;page-break-inside:avoid!important}
  .print-area h1{font-size:22pt!important;margin:0 0 5mm!important;color:#07345d!important}
  .print-area h2{font-size:15pt!important;margin:4mm 0 3mm!important;color:#07345d!important}
  .print-area h3{font-size:12.5pt!important;margin:3mm 0 2mm!important;color:#07345d!important}
  .print-area p,.print-area li,.print-area td,.print-area th,.print-area span,.print-area b,.print-area strong,.print-area small{color:#07345d!important}
  .report-cover{min-height:270mm!important;height:270mm!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;text-align:center!important;break-after:page!important;page-break-after:always!important;padding:0 12mm!important;background:#fff!important}
  .report-cover .cover-logo,.report-logo{width:35mm!important;height:auto!important;object-fit:contain!important;margin-bottom:8mm!important}
  .report-head,.report-head-v14{border-bottom:1.5pt solid #07345d!important;padding-bottom:4mm!important;margin-bottom:5mm!important;break-inside:avoid!important}
  .score-row{grid-template-columns:45mm 1fr 16mm!important;gap:3mm!important;margin:2mm 0!important;break-inside:avoid!important}
  .bar{height:4mm!important;background:#e4ebf2!important;border-radius:99px!important;overflow:hidden!important}
  .bar i{background:#14945b!important;height:100%!important;display:block!important}
  .bluebar i{background:#2468f2!important}
  table{width:100%!important;border-collapse:collapse!important;font-size:9.5pt!important;background:#fff!important;break-inside:auto!important}
  thead{display:table-header-group!important}
  tr{break-inside:avoid!important;page-break-inside:avoid!important}
  th,td{border:1px solid #b9d5e8!important;padding:2.5mm!important;background:#fff!important;color:#07345d!important}
  .photo-report img,.patient-photo,.report-profile-photo{max-width:38mm!important;max-height:38mm!important;object-fit:cover!important}
  .cert-page{break-before:page!important;page-break-before:always!important;width:190mm!important;height:260mm!important;min-height:260mm!important;margin:0!important;padding:14mm!important;border:1.5pt solid #07345d!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;text-align:center!important;background:#fff!important;color:#07345d!important;overflow:hidden!important}
  .cert-page img{width:30mm!important;height:auto!important;margin-bottom:8mm!important}
  .cert-page h1,.cert-page h2{font-size:22pt!important;color:#07345d!important;margin:3mm 0!important}
  .cert-page p{font-size:12pt!important;margin:2mm 0!important}
  .cert-index-badge{background:#f4f9fd!important;border:1pt solid #b9d5e8!important;border-radius:8mm!important;padding:5mm 10mm!important;margin-top:6mm!important}
  .preview-stamp,.patient-report-card,.timeline-cards{display:none!important}
  .avoid-break{break-inside:avoid!important;page-break-inside:avoid!important}
}


/* RAF Conecta v2.1.170 - tema claro real, sem manter cards escuros */
html.light, body.light{
  --navy:#063a63;
  --navy2:#032b4d;
  --blue:#2f94d7;
  --green:#14945b;
  --red:#df2f2f;
  --yellow:#f1b938;
  --bg:#eef4f8;
  --card:#ffffff;
  --line:#d7e5ef;
  --text:#07345d;
  --muted:#5f7188;
  --shadow:0 14px 35px rgba(3,43,77,.09);
}
body.light,
body.light .content,
html.light body,
html.light .content{
  background:#eef4f8!important;
  color:#07345d!important;
}
body.light .topbar,
body.light .card,
body.light .patient-report-card,
body.light .doc-card,
body.light .inner-card,
body.light .history-bar,
body.light .timeline-card,
body.light .selection-card,
body.light .options-card,
body.light .family-privacy-card{
  background:#ffffff!important;
  color:#07345d!important;
  border-color:#d7e5ef!important;
  box-shadow:0 14px 35px rgba(3,43,77,.09)!important;
}
body.light .card h1,
body.light .card h2,
body.light .card h3,
body.light .topbar h1,
body.light label,
body.light b,
body.light strong,
body.light .patient-report-card h1,
body.light .patient-report-card h2,
body.light .patient-report-card h3{
  color:#07345d!important;
}
body.light table{
  background:#ffffff!important;
  color:#07345d!important;
}
body.light th{
  background:#e7f4fb!important;
  color:#063a63!important;
  border-color:#d7e5ef!important;
}
body.light td{
  background:#ffffff!important;
  color:#07345d!important;
  border-color:#d7e5ef!important;
}
body.light .table-wrap{
  background:#ffffff!important;
  border-color:#d7e5ef!important;
}
body.light .kpi{
  background:linear-gradient(135deg,#ffffff,#f5fffb)!important;
  border-color:#d7e5ef!important;
}
body.light .kpi span,
body.light .section-muted,
body.light .compact-note,
body.light small{
  color:#5f7188!important;
}
body.light .notice,
body.light .evolution-box,
body.light .status-box,
body.light .msg-attachment{
  background:#eaf6ff!important;
  color:#07345d!important;
  border-color:#2f94d7!important;
}
body.light .patient-report-head,
body.light .report-actions,
body.light .chip,
body.light .status,
body.light .score-pill,
body.light .family-kpis span,
body.light .family-timeline-card span{
  background:#eaf6ff!important;
  color:#063a63!important;
  border-color:#d7e5ef!important;
}
body.light input,
body.light select,
body.light textarea,
body.light .field input,
body.light .field select,
body.light .field textarea,
body.light #rotinaResumo,
body.light #psicoResumo{
  background:#ffffff!important;
  color:#07345d!important;
  border-color:#d7e5ef!important;
}
body.light input::placeholder,
body.light textarea::placeholder{
  color:#6d7f91!important;
}
body.light .bar{
  background:#e4ebf2!important;
}
body.light .photo-preview,
body.light .patient-photo,
body.light .list-profile-photo{
  background:#dcebf4!important;
}
body.light .footer{
  background:#063a63!important;
  color:#ffffff!important;
}
body.light .btn:not(.green):not(.red):not(.gray):not(.light),
body.light button.btn:not(.green):not(.red):not(.gray):not(.light){
  background:#063a63!important;
  color:#ffffff!important;
}
body.light .btn.light{
  background:#e7f4ff!important;
  color:#063a63!important;
  border-color:#cbe6fb!important;
}
body.light .old-login-card{
  background:#ffffff!important;
  color:#07345d!important;
}
body.light .old-login-card h3{color:#1680ca!important;}
body.light .old-login-card input{background:#edf4ff!important;color:#111!important;}

/* RAF Conecta v2.1.200 - histórico imprimível */
.history-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:12px 0}.history-summary-grid>div{border:1px solid var(--line);border-radius:12px;padding:12px;background:rgba(255,255,255,.04)}.history-summary-grid span{display:block;font-size:24px;font-weight:900}.history-pre{white-space:pre-wrap;background:#071726;border:1px solid rgba(255,255,255,.18);border-radius:12px;padding:12px}.history-report-box{background:#fff;color:#07345d;padding:20px}.dark .history-report-box{background:#fff!important;color:#07345d!important}.dark .history-report-box *{color:#07345d!important}
@media print{.history-print-area,.history-print-area *{color:#07345d!important;background:#fff!important}.history-print-area .card{border:1px solid #d7e5ef!important;box-shadow:none!important;break-inside:avoid;page-break-inside:avoid}.history-print-area table{border-collapse:collapse!important;width:100%!important}.history-print-area th,.history-print-area td{border:1px solid #d7e5ef!important;color:#07345d!important}.history-print-area .no-print,.no-print{display:none!important}.history-summary-grid{grid-template-columns:repeat(3,1fr)!important}.history-pre{border:1px solid #d7e5ef!important;background:#f8fbff!important}}
