
/* LSR Operacional: apresentação limpa e foco em duas ações */
:root{font-size:14px;color:#23302c;background:#f6f7f5}
body{background:#f6f7f5}
h1{font-size:27px;letter-spacing:-.8px;font-weight:750}
h2{font-size:18px;letter-spacing:-.3px}
h3{font-size:15px}
.muted{color:#6e7973}
.layout{min-height:100vh}
.sidebar{width:216px;background:#17382f;gap:6px;padding:24px 14px}
.sidebar .mark{font-size:21px;margin:5px 11px 23px;letter-spacing:-.3px}
.navButton{font-size:13px;border-radius:10px;padding:13px 11px;color:#d2e6dc}
.navButton.active{background:#315c4e;color:white}
.navButton:hover{background:#285344}
#adminToggle{margin-top:28px!important;color:#b6c9c0;border-top:1px solid #38594f;border-radius:0;padding-top:22px}
#adminNav{padding:3px 0 0 11px}
#adminNav .navButton{padding:9px 10px;font-size:12px;font-weight:500}
#adminNav[hidden]{display:none!important}
.sidebar .bottom{font-size:12px;opacity:.83}
.topbar{height:76px;padding:0 32px;border-color:#e4e9e5}
.topbar strong{font-weight:700;color:#18372d}
.topbar .small{color:#8a968c}
.main{max-width:1360px;padding:28px 32px 56px}
button{background:#177553;border-radius:9px;font-weight:650;min-height:40px;transition:background .15s,transform .12s}
button:hover:not(:disabled){filter:none;background:#0e6245}
button.secondary{background:#e8f1eb;color:#1b5540}
button.secondary:hover{background:#d9eadf}
button.outline{border:1px solid #d8e1da;color:#475951}
button.outline:hover{background:#f3f5f2}
button.small{font-size:12px;min-height:33px;white-space:nowrap}
button.danger{background:#fff2ef;color:#973d36}
.panel{border:1px solid #e6ebe7;box-shadow:none;border-radius:13px;padding:20px;margin-bottom:18px}
.sectionHeader{margin-bottom:20px}
.sectionHeader h1{margin-bottom:7px}
.sectionHeader .muted{margin:0}
input,select,textarea{border-color:#dce4df;border-radius:9px;background:#fff}
input:focus,select:focus{outline:2px solid #c7e3d6;outline-offset:0}
label{color:#4c6258;font-size:12px}
#stepBar{display:flex;gap:5px;background:#eff3f0;padding:5px;width:max-content;border-radius:11px;margin:0 0 22px}
#stepBar button{background:transparent;color:#64746c;border:0;border-radius:8px;min-height:39px;padding:11px 21px}
#stepBar button.chosen{background:white;color:#176148;box-shadow:0 1px 5px #273b2c14}
.workflowTitle{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap}
.workflowTitle h1{margin:0 0 5px}
.workflowTitle .eyebrow{display:block;color:#8b9a91;letter-spacing:.12em;font-size:11px;font-weight:700;margin-bottom:8px}
.workflowTitle .muted{max-width:660px;line-height:1.6}
#billingActions button{padding:12px 16px}
.filterPanel{padding:15px 18px}
.filterPanel .toolbar label{min-width:125px;flex:1}
.filterPanel .toolbar label.wide{flex:2}
#receiveFilterWrapper{flex:1}
#receiveFilterWrapper[hidden]{display:none}
#summaryStrip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin-bottom:10px}
.metric{background:white;border:1px solid #e5eae6;border-radius:13px;padding:17px 18px;display:flex;flex-direction:column;gap:9px;min-width:0}
.metric span{font-size:12px;color:#718278}
.metric strong{font-size:23px;letter-spacing:-.8px;font-weight:720;white-space:nowrap}
.metric.good strong{color:#176b4c}.metric.quiet strong{color:#806e40}
#summaryFoot{font-size:12px;color:#748379;margin:0 0 18px}
#billTablePanel{padding:17px 20px 5px}
#billBody tr{height:66px}
#billBody td{padding:12px 10px;vertical-align:middle}
#billBody td span:not(.status){display:block}
#billBody td strong{font-size:13px;font-weight:650}
#billBody td small{display:block;color:#8a958e;font-size:11px;margin-top:5px}
#billBody td strong.received-val{color:#247e5a}
#billBody td.right{white-space:nowrap}
.status{display:inline-flex!important;width:max-content;border-radius:999px;padding:5px 10px;font-size:11px;font-weight:650;background:#f0f2f0;color:#67786e}
.status.paid{background:#e5f4e9;color:#2b744b}
.status.partial{background:#fff4e2;color:#946724}
.status.incomplete{background:#fff2ed;color:#99583e}
.status.waiting{background:#eff2f0;color:#687a70}
#billBody td:last-child{white-space:nowrap}
#billBody tr:hover td{background:#f8fbf9}
#billBody button{border-radius:8px}
#billBody .empty{padding:45px}
#billTablePanel .sectionHeader{margin-bottom:9px}
#billTablePanel .sectionHeader .pill{background:#f3f6f3;color:#71847a}
#importHistoryPanel{padding:14px 18px}
#importHistoryPanel summary{color:#466356;font-weight:600;cursor:pointer}
#importHistoryPanel .tableWrap{margin-top:16px}
#modal{backdrop-filter:blur(3px)}
.dialog{max-width:780px;width:min(780px,95vw);border-radius:18px;padding:24px 26px;box-shadow:0 24px 70px #10271b33}
.dialog .sectionHeader{margin-bottom:14px}
.dialog .panel{border-radius:10px}
.dialog .grid{gap:12px}
.dialog .formActions{padding-top:8px}
.dialog #columnMapping{gap:13px}
.advancedFields{background:#fbfcfb;border:1px solid #e3ebe5;border-radius:10px;padding:13px 15px;margin:13px 0}
.advancedFields summary{color:#375b4a;cursor:pointer;font-size:13px;font-weight:650;outline:none}
.advancedFields[open] summary{margin-bottom:16px}
.advancedFields .grid{margin-top:12px}
.teamPanel{border:0;padding:0;background:transparent;margin:0}
.eyebrow{font-size:11px;font-weight:750;color:#83958a;letter-spacing:.1em}
.receiptHeading h2{font-size:19px;margin:8px 0}
.receiptHeading p{color:#6a8174;font-size:13px}
.receiptSummary{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:20px 0}
.receiptSummary>div{background:#f5f8f5;border:1px solid #e7ece7;border-radius:12px;padding:14px 15px;display:flex;flex-direction:column;gap:7px}
.receiptSummary span{font-size:12px;color:#688073}
.receiptSummary strong{font-size:19px;color:#183b2e}
#receiptForm{border-top:1px solid #e9eee9;padding-top:18px}
#receiptForm .grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}
#receiptForm .computed{min-height:40px;display:flex;justify-content:flex-start;align-items:center;background:#f0f5f2;border-radius:9px;padding:10px;font-weight:700;font-size:15px;color:#175e45}
#receiptForm #rHint{margin:10px 0}
.receiptHistory{margin-top:22px;border-top:1px solid #e9eee9;padding-top:18px}
.receiptHistory table{min-width:530px}
.receiptHistory th{text-transform:none}
.receiptHistory .empty{text-align:left;padding:16px 5px}
#medicalPreview .tableWrap{max-height:215px}
#medicalPreview>.row{gap:7px}
#medicalPreview .notice{margin:13px 0;padding:11px}
#medicalPreview .help{line-height:1.5}
#medicalImport{min-width:210px}
#medicalPreview .tag{font-size:11px}
#modal .grid.two label{min-width:0}
#appView :focus-visible{outline:2px solid #56836f;outline-offset:2px}
@media(max-width:1100px){#summaryStrip{grid-template-columns:repeat(2,1fr)}.metric strong{font-size:22px}.sidebar{width:195px}.main{padding:23px}}
@media(max-width:740px){
 .layout{display:block}.sidebar{width:100%;padding:10px;display:flex;flex-direction:row;align-items:center;overflow-x:auto}
 .sidebar .mark,.sidebar .bottom{display:none}.sidebar #adminNav:not([hidden]){display:flex;gap:5px;flex-direction:row}
 .sidebar .navButton{flex-shrink:0}
 .sidebar #adminToggle{margin-top:0!important;border:none;padding-top:13px}
 .topbar{height:60px;padding:0 16px}
 .topbar .small{display:none}
 .main{padding:16px 11px}
 h1{font-size:22px}
 #stepBar{width:100%;display:grid;grid-template-columns:1fr 1fr}
 #stepBar button{padding:9px 7px}
 .workflowTitle{gap:14px}
 #billingActions{width:100%;display:grid;grid-template-columns:1fr 1fr}
 #billingActions button{width:100%;padding:10px 7px}
 #summaryStrip{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
 .metric{padding:13px;gap:6px}
 .metric strong{font-size:18px}
 .filterPanel{padding:12px}
 .filterPanel .toolbar{gap:7px}
 .filterPanel .toolbar label{min-width:128px}
 .panel{padding:15px}
 #billTablePanel{padding:12px 11px}
 table{min-width:750px}
 .dialog{padding:16px 14px;max-height:94vh}
 .receiptSummary{gap:6px}
 .receiptSummary>div{padding:10px}
 .receiptSummary strong{font-size:15px}
 #receiptForm .grid.two{grid-template-columns:1fr}
}


/* Relatórios e exclusão em linha */
#billBody .deleteInline{margin-left:5px;background:#fff5f1;border:1px solid #f3e1dc;color:#ad5347}
#billBody .deleteInline:hover{background:#fce8e1}
#deletedPanel{padding:12px 17px}
#deletedPanel summary{cursor:pointer;font-weight:650;color:#76594c}
#deletedPanel .tableWrap{margin-top:13px}
.reportMetricGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 10px}
.reportMetricGrid .metric{gap:7px;min-height:92px}
.reportMetricGrid .metric strong{font-size:23px}
.reportMetricGrid .metric.warning strong{color:#916c29}
.reportMetricGrid .metric.success strong{color:#167852}
.reportMetricGrid .metric.muted strong{color:#7d8680}
.report-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:16px}
.report-grid .panel{min-width:0}
.report-grid .tableWrap{max-height:390px}
.reportTable{min-width:560px}
.reportTable th{text-transform:none;letter-spacing:0;font-size:11px}
.reportTable td{padding:12px 9px}
.reportTable td strong{font-size:13px}
.reportTable td small{display:block;color:#88968c;font-size:11px;margin-top:4px}
.reportTable td.right{text-align:right;white-space:nowrap}
#reportStatus{max-width:220px;min-width:170px}
#reportDoctorsPanel .reportTable{min-width:650px}
#reportDetails .status{white-space:nowrap}
#page-reports .filterPanel .toolbar label{min-width:145px}
#reportWarning{margin:2px 0 16px;color:#896a40}
#reportTruncation{padding:8px}
@media(max-width:1070px){.report-grid{grid-template-columns:1fr}}
@media(max-width:680px){.reportMetricGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.reportMetricGrid .metric strong{font-size:17px}#reportStatus{max-width:none;min-width:140px}}
