:root{--bg:#f4f6f8;--card:#fff;--ink:#17202a;--muted:#68717d;--line:#e5e8ec;--accent:#157A6E;--accent-soft:#e8f3f0;--warn:#a55b00;--danger:#b33838;--sidebar:#0F3D3E;--shadow:0 10px 30px rgba(20,35,31,.07)}*{box-sizing:border-box}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Arial,sans-serif;background:var(--bg);color:var(--ink)}a{color:inherit;text-decoration:none}.sidebar{position:fixed;inset:0 auto 0 0;width:230px;background:var(--sidebar);color:#eef7f4;padding:24px 18px;display:flex;flex-direction:column}.brand{display:flex;gap:12px;align-items:center;padding:2px 8px 28px}.brand-mark{width:38px;height:38px;border:1px solid #5d7a72;border-radius:10px;display:grid;place-items:center;font-weight:800;font-size:20px}.brand strong,.brand span{display:block}.brand span{font-size:12px;color:#99b2aa;margin-top:2px}.sidebar nav{display:grid;gap:6px}.sidebar nav a{padding:11px 12px;border-radius:9px;color:#bbccc6;font-size:14px}.sidebar nav a:hover,.sidebar nav a.active{background:#203832;color:#fff}.sidebar-note{margin-top:auto;color:#77938a;font-size:11px;line-height:1.5;padding:10px}.main{margin-left:230px;padding:26px 30px 60px;max-width:1700px}.topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.topbar h1{margin:2px 0 0;font-size:28px}.eyebrow{font-size:10px;letter-spacing:.14em;color:#79828c;font-weight:800}.top-status{font-size:12px;color:var(--muted);display:flex;gap:7px;align-items:center}.dot{width:7px;height:7px;border-radius:50%;background:#3e9a73}.card{background:var(--card);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);padding:20px;margin-bottom:18px}.toolbar{padding:14px 18px;display:flex;align-items:end;justify-content:space-between;gap:18px}.help,.muted,.sub{color:var(--muted)}.help{font-size:12px;max-width:560px}.sub{font-size:11px;margin-top:3px;max-width:500px}.filter-row,.filter-grid,.form-grid{display:flex;gap:12px;align-items:end;flex-wrap:wrap}.filter-grid{width:100%;display:grid;grid-template-columns:repeat(4,minmax(150px,1fr)) auto}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);align-items:end}.form-grid .btn{grid-column:1/-1}label{font-size:11px;color:var(--muted);display:grid;gap:5px}input,select{border:1px solid #d8dde2;background:#fff;border-radius:8px;padding:9px 10px;min-height:38px;color:var(--ink);font:inherit;font-size:13px}.btn{border:0;border-radius:8px;background:#e8ecef;color:#25313a;font-weight:700;padding:10px 14px;cursor:pointer}.btn:hover{filter:brightness(.97)}.btn-primary{background:var(--accent);color:#fff}.kpi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.kpi{margin:0;min-height:126px;display:flex;flex-direction:column;justify-content:center}.kpi span{font-size:12px;color:var(--muted)}.kpi strong{font-size:25px;margin:8px 0 5px}.kpi small{font-size:11px;color:#8a929a}.section-head{display:flex;align-items:end;justify-content:space-between;margin-bottom:12px}.section-head h2,.card h2{margin:3px 0 0;font-size:18px}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;font-size:12px}th{text-align:left;color:#717b85;font-size:10px;text-transform:uppercase;letter-spacing:.06em;padding:10px 9px;border-bottom:1px solid var(--line);white-space:nowrap}td{padding:10px 9px;border-bottom:1px solid #edf0f2;vertical-align:top}tbody tr:hover{background:#fafbfb}.money-alert{font-weight:800}.badge,.aging{display:inline-block;border-radius:999px;background:#eef1f3;padding:4px 8px;font-size:10px;font-weight:800;white-space:nowrap}.badge-quitado{background:#e3f3ec;color:#246848}.badge-parcial{background:#fff2d7;color:#865500}.badge-divergencia{background:#fbe5e5;color:#9b3333}.aging-90p{background:#fbe5e5;color:#9b3333}.empty{text-align:center;color:#8b939b;padding:30px}.detail-grid{display:grid;grid-template-columns:2fr 1fr;gap:18px}.meta-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:15px;margin-top:20px}.meta-grid span{display:block;color:var(--muted);font-size:10px;text-transform:uppercase}.meta-grid strong{display:block;margin-top:4px;font-size:13px}.description{line-height:1.55;font-size:14px}.notice{margin-top:16px;background:#f7f4e9;border:1px solid #ebe0bb;border-radius:9px;padding:12px;font-size:12px}.financial-card{background:#182a25;color:#f5fbf8;border-color:#182a25}.financial-card .eyebrow{color:#88a39a}.financial-line{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px solid #2e433d;font-size:13px}.financial-line.total{font-size:18px;border:0;padding-top:18px}.upload-card{display:flex;align-items:center;justify-content:space-between}.upload-card p{font-size:12px;color:var(--muted);max-width:650px}.upload-form{display:flex;gap:8px;align-items:center}.kpi-inline{display:flex;gap:28px;flex-wrap:wrap}.kpi-inline span{display:grid;color:var(--muted);font-size:11px}.kpi-inline strong{color:var(--ink);font-size:17px;margin-top:4px}.reconcile-card{display:grid;grid-template-columns:320px 1fr;gap:25px}.source-value{font-size:26px;font-weight:800;margin:12px 0}.meta-list{display:grid;gap:5px;color:var(--muted);font-size:11px}.candidate-list{display:grid;gap:8px}.candidate{display:grid;grid-template-columns:1fr 52px auto;gap:12px;align-items:center;border:1px solid var(--line);padding:11px;border-radius:9px}.score{font-weight:800;color:var(--accent)}.empty-state{text-align:center;padding:50px}.empty-state h2{font-size:24px}.result-card{border-left:4px solid var(--accent)}hr{border:0;border-top:1px solid var(--line);margin:20px 0}@media(max-width:1000px){.sidebar{position:static;width:auto}.main{margin:0;padding:18px}.sidebar nav{display:flex;overflow:auto}.sidebar-note{display:none}.kpi-grid{grid-template-columns:repeat(2,1fr)}.detail-grid,.reconcile-card{grid-template-columns:1fr}.filter-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:650px){.kpi-grid,.filter-grid,.form-grid{grid-template-columns:1fr}.main{padding:12px}.top-status{display:none}.upload-card{display:block}.upload-form{margin-top:16px;display:grid}.meta-grid{grid-template-columns:1fr}.card{padding:15px}}
textarea{border:1px solid #d8dde2;background:#fff;border-radius:8px;padding:9px 10px;color:var(--ink);font:inherit;font-size:13px;resize:vertical}.kpi-grid-4{grid-template-columns:repeat(4,1fr)}.kpi-grid-3{grid-template-columns:repeat(3,1fr)}.actionbar{display:flex;gap:8px;align-items:center;justify-content:flex-end;margin-bottom:14px;flex-wrap:wrap}.text-link{color:var(--accent);font-weight:800}.text-link:hover{text-decoration:underline}.btn-danger{background:#a33c3c;color:#fff}.danger-card{border-color:#e9caca;background:#fffafa}.danger-card h2{color:#8f3030}.danger-text{color:#a33c3c;font-weight:800}.form-grid-3{grid-template-columns:repeat(3,1fr)}.span-all{grid-column:1/-1}.inline-form{display:flex;gap:8px;align-items:end;flex-wrap:wrap}.inline-form input{min-width:320px}.report-banner{display:flex;align-items:center;justify-content:space-between;gap:30px}.report-banner h2{font-size:23px}.report-banner p{margin:4px 0 0;color:var(--muted)}.report-filter{grid-template-columns:repeat(3,minmax(160px,1fr)) auto auto}.breakdown-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}.breakdown-item{border:1px solid var(--line);border-radius:10px;padding:12px;background:#fafcfc}.breakdown-item span{display:block;color:var(--muted);font-size:11px}.breakdown-item strong{display:block;margin-top:5px;font-size:17px}@media(max-width:1200px){.kpi-grid-4{grid-template-columns:repeat(2,1fr)}.form-grid-3{grid-template-columns:repeat(2,1fr)}.report-filter{grid-template-columns:repeat(2,1fr)}}@media(max-width:650px){.kpi-grid-4,.kpi-grid-3,.form-grid-3,.report-filter{grid-template-columns:1fr}.report-banner{display:block}.inline-form input{min-width:100%}}
.dashboard-split{display:grid;grid-template-columns:1fr 1fr;gap:18px}.compact-table table{font-size:11px}.compact-table th{font-size:9px}.compact-table td{padding:8px 7px}.prior-card{border-top:4px solid #a9782f}.prior-kpi{border-top:4px solid #a9782f}.secondary-kpis .kpi{min-height:110px}.compact-actions{margin:0}.table-footer{padding-top:12px;text-align:right}.monthly-filter{grid-template-columns:repeat(3,minmax(160px,1fr)) auto auto}.checkbox-label{display:flex;align-items:center;gap:7px;min-height:38px;padding-top:17px}.checkbox-label input{min-height:auto;width:auto}.receipt-command{display:grid;grid-template-columns:minmax(260px,1fr) 2fr;gap:25px;align-items:end}.receipt-command-fields{display:grid;grid-template-columns:repeat(3,minmax(150px,1fr)) auto;gap:10px;align-items:end}.receipt-table .money-input{width:105px;min-height:32px;padding:6px 7px}.receipt-table .money-small{width:80px}.receipt-table .event-check{width:18px;height:18px;min-height:auto}.row-closed{opacity:.55}.report-split{align-items:start}@media(max-width:1200px){.dashboard-split{grid-template-columns:1fr}.receipt-command{grid-template-columns:1fr}.receipt-command-fields{grid-template-columns:repeat(2,1fr)}.monthly-filter{grid-template-columns:repeat(2,1fr)}}@media(max-width:650px){.receipt-command-fields,.monthly-filter{grid-template-columns:1fr}.checkbox-label{padding-top:0}}
/* v0.4 - fluxo operacional de baixa por competência > anestesista > paciente */
.workflow-card{border-top:4px solid var(--accent)}
.receive-filter{grid-template-columns:220px 280px minmax(280px,1fr) auto}
.step-number{display:inline-grid;place-items:center;width:20px;height:20px;border-radius:50%;background:var(--accent);color:#fff;font-size:10px;font-weight:800;margin-right:5px}
.operational-empty{min-height:220px;display:flex;flex-direction:column;align-items:center;justify-content:center}
.operational-empty p{max-width:620px;color:var(--muted)}
.step-big{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent);font-size:20px;font-weight:900}
.btn-small{padding:6px 9px;font-size:10px;white-space:nowrap}
.sub-inline{font-size:10px;color:var(--muted)}
.selected-row{background:#eef8f5!important;box-shadow:inset 4px 0 0 var(--accent)}
.patient-focus{display:flex;align-items:center;justify-content:space-between;gap:24px;background:#173029;color:#f3fbf8;border-color:#173029}
.patient-focus .eyebrow,.patient-focus p{color:#98b3aa}.patient-focus h2{font-size:24px;margin:3px 0}.patient-focus-values{display:flex;gap:20px;flex-wrap:wrap}.patient-focus-values span{font-size:10px;color:#9db6ae;display:grid}.patient-focus-values strong{font-size:17px;color:#fff;margin-top:4px}
.sticky-command{position:sticky;top:8px;z-index:5;box-shadow:0 14px 30px rgba(20,35,31,.14)}
.origin-procedure-table{min-width:1560px}.origin-procedure-table .procedure-desc{max-width:270px;line-height:1.35;margin-top:3px}.origin-procedure-table td{vertical-align:middle}
.alert{padding:12px 16px}.alert-error{border-left:4px solid var(--danger);background:#fff7f7}.alert-success{border-left:4px solid #2f855a;background:#f4fbf7}
.compact-check{padding-top:0;min-height:auto}.dashboard-toolbar{align-items:end}.dashboard-filter{min-width:520px}.analysis-context{display:flex;justify-content:space-between;align-items:center;gap:40px;background:#fbfcfc}.analysis-context h2{font-size:21px}.analysis-context .help{max-width:700px}
.dashboard-primary-kpis .kpi{min-height:145px}.kpi-produced{border-top:4px solid #315f55}.kpi-cash{border-top:4px solid #3b729b}.kpi-open{border-top:4px solid #a45c3a}.origin-breakdown{padding-top:14px;display:flex;gap:7px;align-items:center;flex-wrap:wrap}.origin-pill{border:1px solid #e4d6ba;background:#fffaf0;border-radius:999px;padding:5px 9px;font-size:10px}.origin-pill strong{margin-left:3px}
@media(max-width:1200px){.receive-filter{grid-template-columns:repeat(2,1fr)}.patient-focus{align-items:flex-start;flex-direction:column}.sticky-command{position:static}.dashboard-filter{min-width:auto}}
@media(max-width:650px){.receive-filter{grid-template-columns:1fr}.analysis-context{align-items:flex-start;flex-direction:column;gap:12px}.patient-focus-values{display:grid;grid-template-columns:1fr 1fr}.dashboard-filter{display:grid;grid-template-columns:1fr;width:100%}}
.audit-kpis .kpi{min-height:105px;background:#fbfcfc}.audit-gap{border-top:4px solid #8b6230}.patient-focus-values{justify-content:flex-end}
.audit-dashboard-cards a{text-decoration:none;color:inherit}.audit-card-link{cursor:pointer;transition:transform .12s ease,border-color .12s ease,box-shadow .12s ease}.audit-card-link:hover{transform:translateY(-2px);border-color:#9bb7ae;box-shadow:0 8px 22px rgba(22,43,37,.09)}.audit-card-link.selected{border:2px solid var(--accent);background:#f4faf7}.audit-report-card{border-top:4px solid var(--accent)}.audit-filter,.dashboard-period-filter{grid-template-columns:repeat(4,minmax(145px,1fr)) auto}.analysis-context{display:flex;align-items:center;justify-content:space-between;gap:24px}.audit-report-card td:last-child{white-space:nowrap}@media(max-width:1200px){.audit-filter,.dashboard-period-filter{grid-template-columns:repeat(2,1fr)}}@media(max-width:650px){.audit-filter,.dashboard-period-filter{grid-template-columns:1fr}.analysis-context{display:block}}
/* v0.6 - cancelamento seguro de importações */
.import-impact{margin-top:18px;padding:14px 0;border-top:1px solid #efdcdc;border-bottom:1px solid #efdcdc}.btn[disabled],button[disabled],input[disabled]{opacity:.5;cursor:not-allowed}
/* v0.7 - fluxo simplificado e exportação */
.quick-flow{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:18px}.quick-step{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:14px 16px;color:var(--ink);text-decoration:none}.quick-step:hover{border-color:#9bb7ae;box-shadow:0 6px 18px rgba(22,43,37,.07)}.quick-step>span{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--accent);color:#fff;font-weight:900}.quick-step div{display:grid;gap:2px}.quick-step small{color:var(--muted);font-size:10px}.compact-audit-summary{display:flex;justify-content:space-between;align-items:center;gap:20px}.audit-inline-values{display:flex;align-items:center;justify-content:flex-end;gap:22px;flex-wrap:wrap}.audit-inline-values span{display:grid;color:var(--muted);font-size:10px}.audit-inline-values strong{font-size:16px;color:var(--ink);margin-top:3px}.report-simple-filter{grid-template-columns:repeat(4,minmax(150px,1fr)) auto}.export-actions{margin-top:12px;margin-bottom:0}.report-details summary{cursor:pointer;font-weight:800}.report-details[open] summary{margin-bottom:16px}@media(max-width:1100px){.quick-flow{grid-template-columns:1fr}.compact-audit-summary{align-items:flex-start;flex-direction:column}.audit-inline-values{justify-content:flex-start}.report-simple-filter{grid-template-columns:repeat(2,1fr)}}@media(max-width:650px){.report-simple-filter{grid-template-columns:1fr}.audit-inline-values{display:grid;grid-template-columns:1fr 1fr;width:100%}}

/* v0.8 - baixa direta por procedimento */
.simple-receipt-header { border: 1px solid rgba(25, 92, 73, .18); }
.direct-fields { grid-template-columns: 180px minmax(180px, .8fr) minmax(260px, 1.2fr) minmax(240px, 1fr); align-items: end; }
.receipt-status-note { max-width: 380px; font-size: 13px; color: var(--muted, #667085); background: #f7faf9; padding: 10px 12px; border-radius: 10px; }
.direct-receipt-table td { vertical-align: top; }
.inline-money-label { display: block; min-width: 145px; font-size: 12px; font-weight: 700; }
.inline-money-label input { margin-top: 5px; width: 130px; }
.inline-adjustments { display: flex; gap: 6px; margin-top: 8px; }
.inline-adjustments label { font-size: 10px; color: #667085; }
.inline-adjustments input { display: block; width: 80px; margin-top: 3px; }
.direct-actions { min-width: 145px; }
.direct-actions .btn { display: block; width: 100%; margin-bottom: 7px; white-space: nowrap; }
.direct-help { max-width: 150px; }
@media (max-width: 1100px) { .direct-fields { grid-template-columns: 1fr 1fr; } }
/* v0.9 - demonstrativo de origem dos recebimentos */
.receipt-origin-kpis{margin:14px 0}.receipt-origin-kpis .kpi{min-height:96px;background:#fbfcfc;border:1px solid var(--line);box-shadow:none}.receipt-origin-kpis .kpi strong{font-size:20px}.report-simple-filter{grid-template-columns:repeat(3,minmax(145px,1fr))}.report-simple-filter .btn{align-self:end}.prior-card .table-wrap+ .origin-breakdown{border-top:1px solid var(--line);margin-top:10px}
@media(max-width:1100px){.report-simple-filter{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){.report-simple-filter{grid-template-columns:1fr}}
.receipt-matrix-details{margin-top:14px;padding-top:12px;border-top:1px solid var(--line)}.receipt-matrix-details summary{cursor:pointer;font-weight:800;color:var(--accent)}
/* v0.10 - filtros de situação no relatório */
.badge-pendente{background:#fbe5e5;color:#9b3333}

/* v1.2 - atendimentos informados pelos anestesistas */
.main-auth{margin-left:0;max-width:none;min-height:100vh;display:grid;place-items:center;padding:24px}.auth-shell{width:min(520px,100%)}.auth-card{padding:32px}.auth-card h1{font-size:28px;margin:7px 0 8px}.auth-brand{padding:0 0 28px}.auth-brand .brand-mark{border-color:#8ca69e}.form-stack{display:grid;gap:14px;margin-top:22px}.btn-large{padding:12px 18px;font-size:14px}.top-user{display:flex;align-items:center;gap:14px}.top-user>div{display:grid;text-align:right}.top-user span{font-size:10px;color:var(--muted);margin-top:2px}.users-form{grid-template-columns:repeat(5,minmax(140px,1fr)) auto}.user-actions{display:flex;gap:6px;align-items:center;min-width:330px}.user-actions .inline-form input{min-width:130px;width:130px}.attendance-hero{display:flex;align-items:center;justify-content:space-between;gap:28px;background:linear-gradient(135deg,#173029,#214a3e);color:#fff;border:0}.attendance-hero .eyebrow,.attendance-hero p{color:#a9c3ba}.attendance-hero h2{font-size:26px}.attendance-hero p{max-width:760px}.attendance-filter{grid-template-columns:repeat(4,minmax(140px,1fr))}.attendance-kpis .kpi{min-height:105px;background:#fbfcfc}.attendance-table{min-width:1280px}.procedure-mini{max-width:240px}.mobile-form-shell{max-width:1180px;margin:0 auto}.attendance-form-card{border-top:4px solid var(--accent)}.span-2{grid-column:span 2}.span-3{grid-column:1/-1}.attendance-savebar{display:flex;align-items:center;justify-content:space-between;gap:24px;border-top:1px solid var(--line);padding-top:18px;margin-top:18px;position:sticky;bottom:0;background:#fff}.duplicate-list{margin-top:10px;display:grid;gap:5px;font-size:12px}.confirm-duplicate{margin-top:12px;display:flex;align-items:center;gap:8px;font-weight:700;color:var(--danger)}.confirm-duplicate input{width:auto;min-height:auto}.detail-grid{grid-template-columns:repeat(3,1fr)}.detail-grid>div{padding:10px 0;border-bottom:1px solid #eef0f2}.detail-grid span{display:block;font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.detail-grid strong{display:block;margin-top:4px;font-size:13px}.match-success{border-top:4px solid #2f855a}.match-pending{border-top:4px solid #b7791f}.danger-zone{display:flex;align-items:end;justify-content:flex-end;gap:10px;margin-top:18px;padding-top:18px;border-top:1px solid #f0dada}.danger-zone label{min-width:320px}.quick-flow-4{grid-template-columns:repeat(4,1fr)}.cycle-card{border-top:4px solid #386b5e}.cycle-card .kpi{box-shadow:none;border:1px solid var(--line)}
@media(max-width:1300px){.users-form{grid-template-columns:repeat(3,1fr)}.attendance-filter{grid-template-columns:repeat(3,1fr)}.quick-flow-4{grid-template-columns:repeat(2,1fr)}}
@media(max-width:800px){.attendance-hero{align-items:flex-start;flex-direction:column}.attendance-filter,.users-form{grid-template-columns:1fr 1fr}.detail-grid{grid-template-columns:1fr}.span-2,.span-3{grid-column:auto}.attendance-savebar{position:static;align-items:stretch;flex-direction:column}.attendance-savebar .btn{width:100%}.topbar{align-items:flex-start}.top-user>div{display:none}.user-actions{min-width:240px}.quick-flow-4{grid-template-columns:1fr}}
@media(max-width:520px){.attendance-filter,.users-form{grid-template-columns:1fr}.auth-card{padding:22px}.danger-zone{align-items:stretch;flex-direction:column}.danger-zone label{min-width:0}.attendance-hero .btn{width:100%;text-align:center}.sidebar{padding:14px 12px}.sidebar .brand{padding-bottom:12px}.sidebar nav a{white-space:nowrap}.main{padding:12px}.topbar h1{font-size:23px}.attendance-form-card{padding:14px}}

.permission-panel{margin:20px 0;padding:18px;border:1px solid var(--border,#dfe5e8);border-radius:14px;background:#fafcfc}
.permission-groups{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px}
.permission-group{background:#fff;border:1px solid #e5eaec;border-radius:12px;padding:14px;display:flex;flex-direction:column;gap:9px}
.permission-item{display:flex;gap:9px;align-items:flex-start;font-weight:400}.permission-item input{margin-top:4px}.permission-item span{display:flex;flex-direction:column;gap:2px}.permission-item small{color:#68777d;line-height:1.3}
.billing-action-card{border-left:4px solid #2b7a68}.receipt-action-card{border-left:4px solid #2f73a7}.danger-card{border-left:4px solid #a63a3a}

/* v1.4 - acesso individual e experiência mobile-first para anestesistas */
.mobile-bottom-nav{display:none}.mobile-attendance-list{display:none}.password-card{max-width:520px;margin:0 auto}.mobile-stack-form{display:grid;gap:14px;margin-top:18px}.credential-grid{display:grid;grid-template-columns:repeat(3,minmax(140px,1fr));gap:10px;margin:16px 0}.credential-grid>div{background:#f7faf9;border:1px solid var(--line);border-radius:10px;padding:12px}.credential-grid span{display:block;color:var(--muted);font-size:10px;text-transform:uppercase}.credential-grid strong{display:block;margin-top:5px;font-size:16px;word-break:break-word}.temp-access-card{border-top:4px solid #b7791f}.compact-access input{min-width:140px;width:150px}.mobile-section-card{margin-bottom:12px}.mobile-section-title{display:flex;align-items:center;gap:10px;margin-bottom:16px}.mobile-section-title>span{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--accent);color:#fff;font-weight:900}.mobile-section-title div{display:grid}.mobile-section-title small{color:var(--muted);margin-top:2px}.mobile-two-col{display:grid;grid-template-columns:1fr 1fr;gap:10px}.fixed-user-chip{background:var(--accent-soft);border-radius:10px;padding:11px 12px;margin-bottom:12px;color:#355e54;font-size:12px}.attendance-form label{margin-bottom:12px}.mobile-sticky-save{z-index:20}.mobile-attendance-item{display:block;border:1px solid var(--line);border-radius:12px;padding:14px;background:#fff;margin-bottom:10px}.mobile-attendance-top{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.mobile-attendance-top>div{display:grid;gap:3px}.mobile-attendance-top strong{font-size:15px}.mobile-attendance-top span:not(.badge){color:var(--muted);font-size:11px}.mobile-attendance-meta{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px;color:var(--muted);font-size:11px}.mobile-attendance-meta span+span:before{content:"•";margin-right:8px}.mobile-attendance-procedure{font-size:12px;margin-top:8px;line-height:1.35}.mobile-finance-row{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;border-top:1px solid var(--line);margin-top:10px;padding-top:10px}.mobile-finance-row span{display:grid;font-size:9px;color:var(--muted)}.mobile-finance-row b{font-size:11px;color:var(--ink);margin-top:2px}.account-logout{margin-top:18px}.login-mobile-note{font-size:11px;color:var(--muted);margin-top:12px}

@media(max-width:800px){
  .role-anesthetist .main{margin:0;padding:12px 12px calc(94px + env(safe-area-inset-bottom));max-width:none}
  .role-anesthetist .topbar{margin:0 0 12px;align-items:center}.role-anesthetist .topbar .eyebrow{display:none}.role-anesthetist .topbar h1{font-size:20px}.role-anesthetist .top-user>div{display:grid;text-align:right}.role-anesthetist .top-user span{display:none}.role-anesthetist .top-user .btn{padding:7px 9px}
  .mobile-bottom-nav{position:fixed;display:grid;grid-template-columns:1fr 1fr 1fr;left:0;right:0;bottom:0;background:#fff;border-top:1px solid var(--line);box-shadow:0 -6px 22px rgba(20,35,31,.10);padding:7px 10px calc(7px + env(safe-area-inset-bottom));z-index:100}
  .mobile-bottom-nav a{display:grid;place-items:center;gap:2px;color:#6b7671;font-size:10px;min-height:52px}.mobile-bottom-nav a span{font-size:20px;line-height:1}.mobile-bottom-nav a b{font-size:9px}.mobile-bottom-nav a.active{color:var(--accent)}.mobile-bottom-nav .mobile-new-attendance{background:var(--accent);color:#fff;border-radius:14px;margin:-16px 7px 2px;box-shadow:0 6px 18px rgba(28,95,84,.25)}.mobile-bottom-nav .mobile-new-attendance.active{color:#fff}
  .role-anesthetist input,.role-anesthetist select,.role-anesthetist textarea{font-size:16px;min-height:48px;border-radius:10px}.role-anesthetist textarea{min-height:88px}.role-anesthetist .btn{min-height:44px}.role-anesthetist .card{border-radius:12px;box-shadow:none}
  .role-anesthetist .attendance-hero{padding:16px}.role-anesthetist .attendance-hero h2{font-size:21px}.role-anesthetist .attendance-hero p{font-size:12px;margin-bottom:0}.desktop-new-button{display:none}
  .role-anesthetist .attendance-filter-card{padding:12px}.role-anesthetist .attendance-filter{grid-template-columns:1fr 1fr}.role-anesthetist .attendance-filter label:nth-of-type(2),.role-anesthetist .attendance-filter label:nth-of-type(3){display:none}.role-anesthetist .attendance-filter button{grid-column:1/-1}
  .role-anesthetist .attendance-kpis{grid-template-columns:1fr 1fr;gap:8px}.role-anesthetist .attendance-kpis .kpi{min-height:88px;padding:12px}.role-anesthetist .attendance-kpis .kpi strong{font-size:22px}.role-anesthetist .finance-summary-attendance{grid-template-columns:repeat(3,1fr);gap:8px}.role-anesthetist .finance-summary-attendance .kpi{min-height:78px;padding:10px}.role-anesthetist .finance-summary-attendance .kpi strong{font-size:14px}
  .desktop-attendance-table{display:none}.mobile-attendance-list{display:block}.attendance-list-card{padding:12px}.attendance-list-card .section-head{align-items:center}.attendance-list-card .section-head h2{font-size:16px}
  .mobile-form-shell{max-width:none}.attendance-form{padding-bottom:74px}.mobile-section-card{padding:14px}.mobile-sticky-save{position:fixed;left:0;right:0;bottom:calc(66px + env(safe-area-inset-bottom));margin:0;padding:9px 12px;background:#fff;border-top:1px solid var(--line);display:grid;grid-template-columns:.7fr 1.3fr;gap:8px;box-shadow:0 -5px 18px rgba(20,35,31,.08)}.mobile-sticky-save .btn{width:100%}
  .password-card{margin-top:8px}.password-card .btn-large{width:100%}
}
@media(max-width:520px){.mobile-two-col{grid-template-columns:1fr 1fr}.credential-grid{grid-template-columns:1fr}.role-anesthetist .attendance-filter{grid-template-columns:1fr}.role-anesthetist .attendance-filter label:nth-of-type(6){display:none}.role-anesthetist .attendance-kpis{grid-template-columns:1fr 1fr}.compact-access{display:grid}.compact-access input{width:100%;min-width:0}}

.password-input-wrap{display:flex;align-items:stretch;gap:6px}.password-input-wrap input{flex:1;min-width:0}.password-toggle{border:1px solid var(--line);background:#f7faf9;border-radius:8px;padding:0 12px;font-weight:700;color:var(--accent);cursor:pointer}.password-toggle:active{transform:translateY(1px)}
@media(max-width:720px){.password-toggle{min-width:76px;font-size:12px}.auth-card input,.password-card input{font-size:16px}}

/* v1.5 - banco de procedimentos e seletor mobile */
.procedure-admin-form{display:grid;grid-template-columns:repeat(3,minmax(160px,1fr));gap:12px;align-items:end}.procedure-admin-form .span-2{grid-column:span 2}.procedure-admin-form .span-3{grid-column:1/-1}.procedure-filter{grid-template-columns:2fr 1fr auto}.procedure-note{max-width:520px}.checkbox-card{display:flex!important;align-items:center;gap:8px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:#f8faf9}.checkbox-card input{width:auto;min-height:auto;margin:0}
.procedure-picker-card{overflow:visible}.procedure-search-shell{position:relative}.procedure-search-box{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:8px;border:2px solid #d8e2df;border-radius:12px;padding:0 11px;background:#fff}.procedure-search-box:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px rgba(31,111,91,.10)}.procedure-search-box>span{font-size:22px;color:var(--muted)}.procedure-search-box input{border:0!important;box-shadow:none!important;padding-left:0!important;padding-right:0!important}.procedure-search-box button{border:0;background:transparent;font-size:24px;color:#7b8581;cursor:pointer;min-width:36px;min-height:40px}.procedure-results{margin-top:8px;border:1px solid var(--line);border-radius:12px;max-height:360px;overflow:auto;background:#fff}.procedure-search-hint{padding:16px;color:var(--muted);font-size:12px}.procedure-result{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;text-align:left;border:0;border-bottom:1px solid var(--line);background:#fff;padding:13px 14px;cursor:pointer;color:var(--ink)}.procedure-result:last-child{border-bottom:0}.procedure-result:hover{background:#f5faf8}.procedure-result.already-selected{background:#f7f8f8;opacity:.66;cursor:default}.procedure-result>div{display:grid;gap:3px}.procedure-code{display:inline-flex;width:max-content;font-size:11px;font-weight:800;letter-spacing:.04em;color:var(--accent);background:var(--accent-soft);border-radius:6px;padding:3px 7px}.procedure-result strong,.selected-procedure strong{font-size:13px;line-height:1.35}.procedure-meta{display:flex;gap:8px;flex-wrap:wrap;color:var(--muted);font-size:10px}.procedure-meta span+span:before{content:"•";margin-right:8px}.procedure-add-label{font-size:18px;color:var(--accent);font-weight:900}.selected-procedures-head{display:flex;justify-content:space-between;gap:14px;align-items:end;margin:18px 0 8px}.selected-procedures-head>div:first-child{display:grid;gap:2px}.selected-procedures-head small{color:var(--muted)}.reference-total{text-align:right;display:grid}.reference-total span{font-size:9px;text-transform:uppercase;color:var(--muted)}.reference-total strong{font-size:15px}.selected-procedures{display:grid;gap:8px}.selected-procedure{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border:1px solid #dce7e3;border-radius:12px;background:#f9fcfb}.selected-procedure-main{display:grid;gap:4px;min-width:0}.procedure-remove{border:0;background:#f6eaea;color:#a33434;border-radius:50%;width:32px;height:32px;font-size:20px;cursor:pointer;flex:0 0 auto}.procedure-required-error{margin-top:8px;color:var(--danger);font-size:12px;font-weight:700}.procedure-extra-row{margin-top:16px}.procedure-detail-list{display:grid;gap:8px}.procedure-detail-item{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:12px;border:1px solid var(--line);border-radius:10px}.procedure-detail-item>div{display:grid;gap:4px}.procedure-detail-item>strong{white-space:nowrap}
@media(max-width:900px){.procedure-admin-form{grid-template-columns:1fr 1fr}.procedure-admin-form .span-3{grid-column:1/-1}.procedure-filter{grid-template-columns:1fr 1fr}.procedure-filter .span-2{grid-column:1/-1}}
@media(max-width:600px){.procedure-admin-form,.procedure-filter{grid-template-columns:1fr}.procedure-admin-form .span-2,.procedure-admin-form .span-3,.procedure-filter .span-2{grid-column:auto}.procedure-results{max-height:46vh}.procedure-result{padding:12px 10px}.procedure-result strong,.selected-procedure strong{font-size:12px}.selected-procedures-head{align-items:center}.reference-total strong{font-size:13px}.procedure-detail-item{align-items:flex-start;flex-direction:column}.procedure-detail-item>strong{align-self:flex-end}.role-anesthetist .procedure-search-box input{min-height:50px}.role-anesthetist .procedure-result{min-height:76px}.role-anesthetist .selected-procedure{min-height:76px}}
/* v1.6 - importação/exportação do banco de procedimentos */
.procedure-top-actions{display:flex;gap:8px;align-items:center;justify-content:flex-end;flex-wrap:wrap}.procedure-top-actions form{margin:0}.procedure-import-card{border-top:4px solid #456f65}.procedure-import-form{display:grid;grid-template-columns:2fr 1.4fr auto;gap:12px;align-items:end}.procedure-import-form .span-2{grid-column:auto}.procedure-import-note{margin-top:12px;padding:10px 12px;background:#f7faf9;border:1px solid var(--line);border-radius:9px;color:var(--muted);font-size:11px}.compact-list{margin:8px 0 0;padding-left:18px;max-height:240px;overflow:auto}.compact-list li{margin:3px 0}.alert-danger{background:#fff1f1;border:1px solid #efcaca;color:#8e3030;border-radius:10px;padding:12px 14px;margin-bottom:16px}.alert-success{background:#edf8f3;border:1px solid #cce8db;color:#225e47;border-radius:10px;padding:12px 14px;margin-bottom:16px}
@media(max-width:900px){.procedure-import-form{grid-template-columns:1fr 1fr}.procedure-import-form button{grid-column:1/-1}.procedure-top-actions{justify-content:flex-start}}
@media(max-width:600px){.procedure-import-form{grid-template-columns:1fr}.procedure-import-form button{grid-column:auto}.procedure-top-actions{display:grid;grid-template-columns:1fr}.procedure-top-actions .btn,.procedure-top-actions form,.procedure-top-actions form button{width:100%}}

/* v1.7 - módulo de caixa */
.cash-toolbar{align-items:center}.cash-filter{grid-template-columns:repeat(3,minmax(150px,1fr)) auto}.cash-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.cash-kpis .kpi{min-height:108px}.cash-sale-form{max-width:1300px}.payment-rows{display:grid;gap:10px}.payment-row{display:grid;grid-template-columns:2fr 1fr 120px 2fr auto;gap:10px;align-items:end;padding:12px;border:1px solid var(--line);border-radius:12px;background:#fafcfc}.payment-preview{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.payment-preview span{font-size:10px;color:var(--muted);display:grid}.payment-preview b{color:var(--ink);margin-top:3px}.cash-live-summary{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;margin-top:14px}.cash-live-summary>div{padding:11px;background:#f5f8f7;border:1px solid var(--line);border-radius:10px}.cash-live-summary span{display:block;font-size:9px;text-transform:uppercase;color:var(--muted)}.cash-live-summary strong{display:block;margin-top:4px;font-size:14px}.cash-parameter-form{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;align-items:end}.param-small{width:82px;min-width:70px}.receive-inline{display:flex;gap:5px;align-items:center}.receive-inline input{width:120px;min-height:31px;padding:5px}.cash-overdue{background:#fff8f3}.cash-overdue td:first-child{color:#9b4d22;font-weight:800}.audit-mini{display:grid;gap:2px;padding:8px 0;border-bottom:1px solid var(--line);font-size:11px}.audit-mini span,.audit-mini small{color:var(--muted)}.closing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.closing-block{border:1px solid var(--line);border-radius:12px;padding:14px;background:#fafcfc}.closing-block h3{margin:0 0 10px}.closing-block>span{display:block;margin-bottom:12px;color:var(--muted)}.closing-block>span strong{color:var(--ink);font-size:18px;margin-left:5px}
@media(max-width:1100px){.payment-row{grid-template-columns:1fr 1fr 110px}.payment-preview{grid-column:1/-1}.cash-live-summary{grid-template-columns:repeat(3,1fr)}.closing-grid{grid-template-columns:1fr}.cash-toolbar{display:block}.cash-actions{justify-content:flex-start;margin-top:12px}}
@media(max-width:650px){.cash-filter,.cash-parameter-form{grid-template-columns:1fr}.payment-row{grid-template-columns:1fr}.payment-preview{grid-template-columns:1fr 1fr 1fr}.cash-live-summary{grid-template-columns:1fr 1fr}.cash-actions{display:grid;grid-template-columns:1fr 1fr}.cash-actions .btn{width:100%;text-align:center}.receive-inline{display:grid}.receive-inline input{width:100%}}

/* v2.0 - recebimentos institucionais por lote e rateio organizado */
.participant-panel{border:1px solid var(--line);border-radius:12px;padding:14px;background:#fbfcfc}.participant-panel>strong{display:block;margin-bottom:10px}.participant-list-grid{display:grid;grid-template-columns:repeat(2,minmax(220px,1fr));gap:8px}.participant-option{display:flex!important;align-items:center!important;gap:10px!important;min-height:42px;padding:9px 11px!important;margin:0!important;border:1px solid #e1e8e5;border-radius:9px;background:#fff;color:var(--ink);font-size:12px;cursor:pointer}.participant-option:hover{border-color:#b9cec7;background:#f7fbfa}.participant-option input[type=checkbox]{appearance:auto!important;-webkit-appearance:checkbox!important;width:18px!important;height:18px!important;min-height:18px!important;min-width:18px!important;margin:0!important;padding:0!important;flex:0 0 18px!important}.participant-option span{line-height:1.25}.participant-list-grid.is-disabled{opacity:.45;pointer-events:none}.participant-all-row{display:flex!important;align-items:center!important;gap:9px!important;padding:10px 12px!important;border:1px solid #cfe0db;border-radius:10px;background:#f1f8f5;margin:0 0 12px!important}.participant-all-row input[type=checkbox]{width:18px!important;height:18px!important;min-height:18px!important;margin:0!important}

.institutional-intro{display:flex;justify-content:space-between;gap:18px;align-items:center}.institutional-intro h2{margin:4px 0 4px}.institutional-intro .help{max-width:900px;margin:0}.institutional-create-grid{align-items:start}.institutional-flow-steps{display:grid;gap:10px}.institutional-flow-steps>div{display:flex;gap:12px;align-items:flex-start;padding:11px;border:1px solid var(--line);border-radius:10px;background:#fbfcfc}.institutional-flow-steps b{display:grid;place-items:center;flex:0 0 28px;width:28px;height:28px;border-radius:50%;background:var(--accent);color:#fff}.institutional-flow-steps span{display:grid;gap:2px}.institutional-flow-steps small{color:var(--muted)}.institutional-filter{grid-template-columns:repeat(3,minmax(145px,1fr)) auto}.text-danger{color:var(--danger)}
.lot-header-card{border-top:4px solid var(--accent)}.lot-head-main{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.lot-head-main h2{margin:3px 0}.badge-large{font-size:11px;padding:8px 11px;white-space:nowrap}.lot-balance-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:16px}.lot-balance-grid>div{padding:13px;border:1px solid var(--line);border-radius:10px;background:#f9fbfa}.lot-balance-grid span{display:block;font-size:9px;text-transform:uppercase;color:var(--muted);font-weight:700}.lot-balance-grid strong{display:block;font-size:18px;margin-top:5px}.lot-difference-open{border-color:#ecc5c5!important;background:#fff5f5!important}.lot-difference-open strong{color:var(--danger)}.lot-difference-ok{border-color:#bedfd1!important;background:#f2faf6!important}.lot-difference-ok strong{color:#1f6b50}.lot-progress{height:10px;border-radius:99px;background:#e7ecea;overflow:hidden;margin-top:14px}.lot-progress>div{height:100%;background:var(--accent);transition:width .2s}.lot-progress-label{display:flex;justify-content:space-between;gap:12px;margin-top:6px;color:var(--muted);font-size:10px}.lot-progress-label strong{color:var(--accent)}
.receipt-lot-table table{font-size:10.5px}.receipt-lot-table th{white-space:nowrap}.lot-item-edit{display:grid;grid-template-columns:repeat(4,82px) 86px auto;gap:5px;align-items:center}.lot-item-edit input{min-height:30px;padding:5px;width:82px}.mini-check{display:flex!important;align-items:center!important;gap:5px!important;margin:0!important;font-size:9px!important;white-space:nowrap}.mini-check input[type=checkbox]{width:16px!important;height:16px!important;min-height:16px!important;margin:0!important}.lot-adjustment-row{background:#fffaf0}.compact-form{gap:8px}.compact-form label{margin:0}
.lot-candidate-filter{grid-template-columns:2fr 1fr 1.3fr auto}.lot-candidate-filter .span-2{grid-column:auto}.candidate-list{display:grid;gap:9px;margin-top:14px;max-height:680px;overflow:auto;padding-right:3px}.candidate-item{display:grid;grid-template-columns:minmax(280px,1.8fr) 150px minmax(280px,1.4fr);gap:12px;align-items:center;padding:12px;border:1px solid var(--line);border-radius:11px;background:#fff}.candidate-main{display:grid;gap:3px}.candidate-main span,.candidate-main small{color:var(--muted);font-size:10px}.candidate-balance{display:grid;text-align:right}.candidate-balance span{font-size:9px;color:var(--muted);text-transform:uppercase}.candidate-balance strong{font-size:14px;margin-top:3px}.candidate-balance small{font-size:9px;color:#9a6c27;margin-top:2px}.candidate-add{display:grid;grid-template-columns:110px 1fr auto;gap:7px;align-items:end}.candidate-add label{margin:0}.candidate-add input{min-height:32px;padding:5px 7px}.candidate-add details{font-size:10px}.candidate-add summary{cursor:pointer;color:var(--accent);font-weight:700}.candidate-adjustments{position:absolute;z-index:30;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);padding:10px;border-radius:10px;display:grid;grid-template-columns:repeat(3,90px);gap:6px;margin-top:5px}.candidate-add details{position:relative}.candidate-adjustments input{width:90px}.candidate-adjustments .mini-check{grid-column:1/-1}.candidate-empty{padding:18px}.lot-confirm-card{display:flex;justify-content:space-between;gap:18px;align-items:center;border-left:5px solid #c68a35}.lot-confirm-card.ready{border-left-color:#2c7d61;background:#f8fcfa}.lot-confirm-card h2{margin:3px 0}.lot-final-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.lot-final-actions form{margin:0}
@media(max-width:1200px){.participant-list-grid{grid-template-columns:1fr}.lot-balance-grid{grid-template-columns:1fr 1fr}.candidate-item{grid-template-columns:1fr 140px}.candidate-add{grid-column:1/-1}.lot-item-edit{grid-template-columns:repeat(2,82px) 86px auto}.institutional-filter{grid-template-columns:1fr 1fr}.institutional-filter button{grid-column:1/-1}.lot-candidate-filter{grid-template-columns:1fr 1fr}.lot-candidate-filter .span-2{grid-column:1/-1}.lot-candidate-filter button{grid-column:1/-1}}
@media(max-width:700px){.institutional-intro,.lot-head-main,.lot-confirm-card{display:grid}.lot-balance-grid{grid-template-columns:1fr 1fr}.candidate-item{grid-template-columns:1fr}.candidate-balance{text-align:left}.candidate-add{grid-template-columns:1fr}.candidate-adjustments{position:static;grid-template-columns:1fr 1fr}.lot-item-edit{grid-template-columns:1fr 1fr}.institutional-filter,.lot-candidate-filter{grid-template-columns:1fr}.lot-candidate-filter .span-2{grid-column:auto}.participant-list-grid{grid-template-columns:1fr}}
.sidebar nav a.sidebar-sub{font-size:12px;padding:8px 12px 8px 22px;color:#92aaa2}

/* Recibo manual */
.manual-builder-split{align-items:start}.manual-section-card{min-width:0}.manual-items{display:flex;flex-direction:column;gap:8px}.manual-item-row{display:grid;grid-template-columns:1.25fr 1fr 120px 38px;gap:8px;align-items:center}.manual-item-row input{min-width:0}.icon-btn{border:1px solid #d9dfdc;background:#fff;border-radius:9px;min-height:38px;font-size:22px;cursor:pointer;color:#8a4b42}.icon-btn:hover{background:#fff0ee}.manual-subtotal{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #e0e6e3;margin-top:12px;padding-top:12px}.manual-subtotal strong{font-size:1.1rem}.manual-summary-card{border-top:3px solid #173d34}.warning-soft{background:#f7fbf9;border-color:#cfe2da}.danger-soft{background:#fff8f7;border-color:#efcdc7}.status-pill{display:inline-flex;padding:4px 8px;border-radius:999px;font-size:.72rem;font-weight:700}.status-rascunho{background:#fff3d8;color:#805c13}.status-finalizado{background:#dff3e8;color:#205f45}.status-cancelado{background:#f8deda;color:#8a3c32}.row-actions{display:flex;gap:5px;flex-wrap:wrap}.sticky-form-actions{position:sticky;bottom:0;z-index:5;display:flex;justify-content:flex-end;gap:10px;padding:12px 16px;margin-top:16px;background:rgba(245,248,247,.96);backdrop-filter:blur(8px);border:1px solid #dce5e1;border-radius:14px;box-shadow:0 -4px 18px rgba(20,45,38,.08)}
@media(max-width:900px){.manual-builder-split{grid-template-columns:1fr}.manual-item-row{grid-template-columns:1fr 110px 38px}.manual-item-row input:nth-child(2){grid-column:1/-1;grid-row:2}.manual-item-row input:nth-child(3){grid-column:2;grid-row:1}.manual-item-row .icon-btn{grid-column:3;grid-row:1}.sticky-form-actions{justify-content:stretch}.sticky-form-actions .btn{flex:1}}
@media(max-width:560px){.manual-item-row{grid-template-columns:1fr 95px 36px}.manual-item-row input{font-size:14px}.manual-item-row input:nth-child(2){grid-column:1/-1}.manual-summary-card .kpi-grid{grid-template-columns:1fr 1fr}}

/* Recibo manual v2.1.2 — colagem Sicoob/Sipag */
.sicoob-import-card{border-top:3px solid #2b6d5d}.paste-panel{background:#f6faf8;border:1px solid #d9e7e1;border-radius:12px;padding:12px;margin-bottom:14px}.paste-panel textarea{width:100%;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:13px;min-height:90px}.paste-help{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:8px;color:#66736e;font-size:.82rem}.paste-help .btn{margin-left:auto}.form-message{margin-top:8px;font-size:.82rem;min-height:18px}.form-message.error{color:#9b3f35}.form-message.success{color:#246249}.sicoob-table-wrap{max-height:430px;border:1px solid #e0e7e4;border-radius:12px}.sicoob-table{min-width:1360px}.sicoob-table th{position:sticky;top:0;z-index:1;background:#eef4f1}.sicoob-table td{padding:6px}.sicoob-table input{width:100%;min-width:100px;padding:8px;font-size:13px}.sicoob-table td:nth-child(2) input{min-width:220px}.sicoob-table td:nth-child(4) input{min-width:170px}.sicoob-summary{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:10px;margin-top:14px}.sicoob-summary>div{background:#f5f8f7;border:1px solid #dfe7e3;border-radius:12px;padding:10px 12px;display:flex;flex-direction:column;gap:4px}.sicoob-summary span{font-size:.76rem;color:#68736f;text-transform:uppercase;letter-spacing:.03em}.sicoob-summary strong{font-size:1.05rem}.sicoob-summary .prior-kpi{background:#e8f2ee;border-color:#c4dcd2}.credit-amount[readonly]{background:#edf5f1;color:#174d3f;font-weight:700}
@media(max-width:800px){.sicoob-summary{grid-template-columns:1fr 1fr}.paste-help .btn{margin-left:0;width:100%}}
@media(max-width:520px){.sicoob-summary{grid-template-columns:1fr}.paste-panel{padding:10px}.paste-panel textarea{min-height:120px}}

/* Recibo manual v2.1.3 */
.detail-title-field{display:block;max-width:620px;margin:.25rem 0 .35rem;font-weight:700;color:#173d34}
.detail-title-field input{margin-top:.35rem;font-size:1.05rem;font-weight:700}
.sicoob-table input{min-width:110px}
.sicoob-table input[name="sicoob_patient_name"]{min-width:190px}
.sicoob-table input[name="sicoob_procedure_description"],.sicoob-table input[name="sicoob_hospital_name"]{min-width:180px}
.sicoob-table input[name="sicoob_payment_method"]{min-width:145px}
.sicoob-fee-input{min-width:110px}

/* ==============================
   OpusClin - Administração Geral
   ============================== */
.auth-secondary-link{margin-top:18px;text-align:center;font-size:13px}
.auth-secondary-link a{color:#35675d;text-decoration:none;font-weight:700}
.platform-screen{background:#f3f6f5;color:#16231f;min-height:100vh}
.platform-main{max-width:1480px;margin:0 auto;padding:32px}
.platform-header{display:flex;justify-content:space-between;gap:24px;align-items:flex-start;margin-bottom:24px}
.platform-header h1{margin:4px 0 6px;font-size:30px}.platform-header p{margin:0;color:#68766f}
.platform-new-company{padding:24px;margin-bottom:24px}
.platform-company-form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.platform-company-form label,.company-edit-form label{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:700;color:#52615b}
.platform-company-form input,.platform-company-form textarea,.company-edit-form input,.company-edit-form textarea{width:100%;box-sizing:border-box;border:1px solid #d2ddda;border-radius:9px;padding:10px 12px;background:#fff;color:#14211d}
.platform-form-wide{grid-column:1/-1}
.platform-company-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.company-admin-card{padding:22px}.company-inactive{opacity:.72}
.company-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.company-card-head h2{margin:3px 0 2px;font-size:22px}.company-slug{font-size:12px;color:#718079}
.status-badge{border-radius:999px;padding:6px 10px;font-size:11px;font-weight:800}.status-ok{background:#def3e9;color:#176045}.status-muted{background:#ecefed;color:#68736e}
.company-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:18px 0}.company-stats div{background:#f5f8f7;border:1px solid #e2e9e6;border-radius:10px;padding:12px}.company-stats strong{display:block;font-size:20px}.company-stats span{display:block;font-size:10px;color:#77827d;text-transform:uppercase;margin-top:3px}
.company-edit-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.company-edit-wide{grid-column:1/-1}.company-active-check{flex-direction:row!important;align-items:center;gap:8px!important}.company-active-check input{width:auto}
.company-actions{display:flex;flex-direction:row!important;gap:8px;align-items:center}.company-reset-admin{margin-top:12px;border-top:1px solid #e4ebe8;padding-top:12px}.company-db-note{margin-top:12px;font-size:11px;color:#7b8882}.company-db-note code{font-size:11px}
.platform-access-box{margin-bottom:20px}.platform-access-box>div{margin-top:5px}.platform-access-box code{font-size:15px;font-weight:800}.platform-access-box small{display:block;margin-top:8px}
@media(max-width:960px){.platform-company-form{grid-template-columns:repeat(2,minmax(0,1fr))}.platform-company-grid{grid-template-columns:1fr}.platform-main{padding:18px}.platform-header{flex-direction:column}.company-stats{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.platform-company-form,.company-edit-form{grid-template-columns:1fr}.platform-form-wide,.company-edit-wide{grid-column:auto}.platform-main{padding:12px}.company-actions{flex-direction:column!important;align-items:stretch}.company-actions .btn{text-align:center}}

/* v3.1 - fichas de atendimento e arquivos protegidos */
.attachment-upload-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:12px}
.file-upload-box{display:flex;flex-direction:column;gap:5px;border:1px dashed #9bb8ae;border-radius:14px;padding:14px;background:#f7fbf9;cursor:pointer}
.file-upload-box strong{font-size:15px}.file-upload-box span{font-size:12px;color:#62716d}.file-upload-box input{margin-top:8px;width:100%}
.attachment-existing-note{margin-top:12px;padding:10px 12px;border-radius:10px;background:#eef6f2;color:#274d43}
.attachment-inline-upload{display:flex;gap:12px;align-items:end;flex-wrap:wrap;padding:12px;border:1px dashed #b3c8c0;border-radius:12px;background:#f8fbfa;margin:12px 0}
.attachment-inline-upload label{flex:1;min-width:260px}
.attachment-list{display:grid;gap:10px;margin-top:12px}
.attachment-item{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:center;border:1px solid #dbe6e2;border-radius:12px;padding:12px;background:#fff}
.attachment-item.attachment-deleted{background:#f5f6f6;opacity:.8}
.attachment-icon{display:grid;place-items:center;width:46px;height:46px;border-radius:10px;background:#e4f1ec;color:#145c4e;font-size:12px;font-weight:800}
.attachment-main{min-width:0}.attachment-main>strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.attachment-meta{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-top:6px;font-size:12px;color:#62716d}
.attachment-actions{display:flex;gap:6px;flex-wrap:wrap}
.attachment-review-form{grid-column:2/-1;display:grid;grid-template-columns:minmax(180px,1fr) auto;gap:10px;align-items:center;padding-top:9px;border-top:1px solid #edf2f0}
.attachment-review-form input{min-width:0}
.check-all-label{display:flex;gap:7px;align-items:center;font-size:13px;font-weight:600}
.attachment-batch-actions{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:18px}
.batch-safe-action,.batch-danger-action{border:1px solid #dbe6e2;border-radius:14px;padding:16px;background:#f8fbfa}
.batch-danger-action{border-color:#efd0d0;background:#fffafa}
.batch-safe-action h3,.batch-danger-action h3{margin:0 0 6px}.batch-danger-action label{display:block;margin-top:8px}
.danger-text{color:#a13535!important}
@media(max-width:760px){
  .attachment-upload-grid,.attachment-batch-actions{grid-template-columns:1fr}
  .attachment-item{grid-template-columns:auto minmax(0,1fr)}
  .attachment-actions{grid-column:1/-1}
  .attachment-review-form{grid-column:1/-1;grid-template-columns:1fr}
}

/* v3.1.1 — login multiempresa sem enumeração de empresas */
.login-company-locked{display:flex;flex-direction:column;gap:4px;padding:12px 14px;border:1px solid var(--border,#d8e0de);border-radius:10px;background:#f7faf9}.login-company-locked span{font-size:.76rem;text-transform:uppercase;letter-spacing:.06em;color:#6a7774}.login-company-locked strong{font-size:1rem}.login-company-locked small,.login-privacy-note{color:#687572;font-size:.82rem}.login-privacy-note{text-align:center;margin-top:12px}

/* v3.1.3 — conferência financeira, diferenças e estados visuais */
input[required]:not([type="checkbox"]):not([type="radio"]),select[required],textarea[required],.required-field input,.required-field select,.required-field textarea{background:#eef6ff;border-color:#78a6cf;box-shadow:inset 3px 0 0 #3c82bd}
label:has(input[required]),label:has(select[required]),label:has(textarea[required]),label.required-field{color:#285b85;font-weight:700}
input[required]:focus,select[required]:focus,textarea[required]:focus{outline:2px solid rgba(60,130,189,.2);border-color:#3c82bd}
.required-legend{display:flex;gap:6px;align-items:center;margin:8px 0 12px;color:#49677f;font-size:11px}.required-legend span{color:#216aa5;font-weight:900}
.receipt-difference{margin-top:8px;padding:10px;border-radius:9px;border:1px solid;display:grid;gap:3px;min-width:190px}.receipt-difference>span{font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.receipt-difference>strong{font-size:17px}.receipt-difference>small{font-size:10px;line-height:1.35}.receipt-difference.is-warning{background:#fff5c7;border-color:#e5bd45;color:#765300}.receipt-difference.is-balanced{background:#e7f5ed;border-color:#71bd93;color:#245f43}.receipt-difference.is-over{background:#fde8e8;border-color:#da8888;color:#8b2d2d}.difference-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:4px}.difference-fill{border:1px solid currentColor;border-radius:7px;background:rgba(255,255,255,.65);color:inherit;padding:5px 7px;font:inherit;font-size:9px;font-weight:800;cursor:pointer}.is-balanced .difference-actions,.is-over .difference-actions{display:none}.btn:disabled{opacity:.48;cursor:not-allowed;filter:none}
.direct-receipt-table .direct-actions{min-width:175px}.direct-receipt-table td:nth-last-child(2){min-width:250px}.attendance-receipt-form .receipt-difference{align-self:stretch}.attendance-receipt-form .actionbar{margin:0}
.finance-pending-callout,.finance-conference-intro{display:flex;justify-content:space-between;gap:20px;align-items:center;border-left:5px solid #d6a72c;background:#fffaf0}.finance-pending-callout h2,.finance-conference-intro h2{margin:3px 0 5px}.finance-pending-callout p{margin:0;color:#6d5b2d;font-size:12px}.conference-list{display:grid;gap:12px}.conference-item{border:1px solid var(--line);border-left:5px solid #9aa4aa;border-radius:12px;padding:15px;background:#fff}.status-border-aguardando_conferencia{border-left-color:#d6a72c;background:#fffdf5}.status-border-devolvido{border-left-color:#b44e62;background:#fff8fa}.status-border-confirmado{border-left-color:#3b8d69}.conference-main{display:grid;grid-template-columns:repeat(4,minmax(130px,1fr));gap:12px}.conference-main span{display:block;font-size:9px;text-transform:uppercase;color:var(--muted);font-weight:700}.conference-main strong{display:block;margin-top:3px;font-size:12px}.conference-detail{display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding:10px 0;margin-top:10px;border-top:1px solid var(--line)}.conference-actions{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:start}.conference-confirm-form{display:grid;grid-template-columns:minmax(190px,1fr) minmax(190px,1fr) auto;gap:10px;align-items:end}.conference-return{font-size:11px}.conference-return summary{cursor:pointer;color:var(--danger);font-weight:800;padding:10px}.conference-return form{display:grid;gap:7px;min-width:220px;padding:10px;background:#fff;border:1px solid #edcccc;border-radius:9px}.return-reason{padding:7px 9px;background:#fbe6ea;color:#8e3145;border-radius:7px}.conference-confirmed{display:flex;gap:8px;align-items:center;color:var(--muted);font-size:11px}.workflow-aguardando_conciliacao,.badge-pendente{background:#edf0f2;color:#5e6871}.workflow-aguardando_conferencia,.pending-badge-finance-review{background:#fff0b8;color:#775600}.workflow-confirmado{background:#dff2e8;color:#246448}.workflow-devolvido,.pending-badge-returned{background:#f6dce2;color:#8a3346}
.pending-legend{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:12px 16px}.pending-row td:first-child{border-left:4px solid transparent}.pending-row-open{background:#fff9f7}.pending-row-open td:first-child{border-left-color:#df7c61}.pending-row-partial{background:#fffaf0}.pending-row-partial td:first-child{border-left-color:#d7a03c}.pending-row-finance-review{background:#fffbea}.pending-row-finance-review td:first-child{border-left-color:#d9b22d}.pending-row-returned{background:#fff5f7}.pending-row-returned td:first-child{border-left-color:#b44e62}.pending-row-divergence{background:#fff0f0}.pending-row-divergence td:first-child{border-left-color:#bc3838}.pending-badge-open{background:#fde2d9;color:#8b422f}.pending-badge-partial{background:#ffedc7;color:#815615}.pending-badge-divergence{background:#f8d7d7;color:#942f2f}
.audit-priority{border-color:#e2c054;background:#fffbee}.audit-row-attention{background:#fffbee}.audit-row-returned{background:#fff5f7}
@media(max-width:1050px){.conference-main{grid-template-columns:repeat(2,1fr)}.conference-actions,.conference-confirm-form{grid-template-columns:1fr}.finance-pending-callout,.finance-conference-intro{align-items:flex-start}}
@media(max-width:650px){.conference-main{grid-template-columns:1fr}.finance-pending-callout,.finance-conference-intro{display:grid}.difference-actions{display:grid;grid-template-columns:1fr 1fr}.direct-receipt-table td:nth-last-child(2){min-width:220px}}

/* v3.1.4 — navegação limpa, fluxo guiado e análises financeiras */
.sidebar{width:252px;padding:20px 14px 14px;overflow:hidden}.main{margin-left:252px;max-width:none}.brand{flex:0 0 auto;padding:2px 10px 18px}.sidebar-nav{min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:2px 4px 12px;scrollbar-width:thin;scrollbar-color:#47665d transparent}.sidebar-nav::-webkit-scrollbar{width:6px}.sidebar-nav::-webkit-scrollbar-thumb{background:#47665d;border-radius:10px}.sidebar .nav-group{border-bottom:1px solid rgba(255,255,255,.07);padding:5px 0}.sidebar .nav-group summary{display:flex;align-items:center;justify-content:space-between;list-style:none;cursor:pointer;padding:9px 10px;color:#88a49b;font-size:10px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.sidebar .nav-group summary::-webkit-details-marker{display:none}.sidebar .nav-group summary b{font-size:14px;transition:transform .18s}.sidebar .nav-group[open] summary b{transform:rotate(180deg)}.sidebar .nav-group-links{display:grid;gap:2px;padding:0 0 5px}.sidebar nav .nav-group-links a{padding:9px 11px;border-radius:8px;font-size:13px;line-height:1.25}.sidebar nav .nav-group-links a.active{box-shadow:inset 3px 0 0 #74b7a5;background:#24423a}.sidebar-note{flex:0 0 auto;margin-top:8px;border-top:1px solid rgba(255,255,255,.08)}
.workflow-guide{margin:-4px 0 18px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 5px 18px rgba(20,35,31,.04);overflow:hidden}.workflow-guide ol{list-style:none;margin:0;padding:13px 16px;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:5px}.workflow-guide li{display:flex;align-items:center;gap:7px;min-width:0;color:#8a9490;font-size:10px}.workflow-guide li:after{content:"";height:1px;background:#dfe6e3;flex:1;min-width:8px}.workflow-guide li:last-child:after{display:none}.workflow-guide li span{display:grid;place-items:center;flex:0 0 24px;width:24px;height:24px;border-radius:50%;background:#edf1ef;font-size:10px;font-weight:900}.workflow-guide li b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.workflow-guide li.done{color:#397564}.workflow-guide li.done span{background:#dcefe8;color:#27624f}.workflow-guide li.current{color:#174f42}.workflow-guide li.current span{background:var(--accent);color:#fff;box-shadow:0 0 0 4px #dcece7}.workflow-next{display:flex;align-items:center;justify-content:space-between;gap:16px;background:#f5f9f7;border-top:1px solid #e2ebe7;padding:10px 16px}.workflow-next>div{display:grid;gap:2px}.workflow-next small{color:#53746b;font-size:8px;font-weight:900;letter-spacing:.12em}.workflow-next strong{font-size:11px;font-weight:650}.workflow-next .btn{white-space:nowrap;background:#e1ece8;color:#174f42}
.attendance-table{width:100%;min-width:0!important;table-layout:fixed}.attendance-table th:nth-child(1){width:23%}.attendance-table th:nth-child(2){width:23%}.attendance-table th:nth-child(3){width:20%}.attendance-table th:nth-child(4){width:19%}.attendance-table th:nth-child(5){width:15%}.attendance-table td{overflow-wrap:anywhere;padding:14px 10px}.attendance-table .procedure-mini{max-width:none}.attendance-values{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.attendance-values span{display:grid;gap:3px;color:var(--muted);font-size:8px;text-transform:uppercase}.attendance-values b{color:var(--ink);font-size:11px;white-space:nowrap}.attendance-status-action{display:grid;justify-items:start;gap:5px}.attendance-status-action .btn{margin-top:5px}.context-line{margin-top:5px}
.analysis-banner{display:flex;align-items:center;justify-content:space-between;gap:24px;border-top:4px solid var(--accent);background:linear-gradient(135deg,#fff 55%,#eef6f3)}.analysis-banner h2{font-size:22px}.analysis-banner p{margin:6px 0 0;color:var(--muted);max-width:760px;font-size:12px;line-height:1.5}.analysis-filter{grid-template-columns:repeat(4,minmax(145px,1fr)) auto}.cash-flow-filter{grid-template-columns:repeat(3,minmax(160px,1fr)) auto}.analysis-filter-card{align-items:center}.reconciliation-health{display:flex;align-items:center;justify-content:space-between;gap:18px;border-left:5px solid}.reconciliation-health h2{margin:4px 0}.reconciliation-health p{margin:0;font-size:12px;color:var(--muted)}.attention-card{border-left-color:#d3a028;background:#fffaf0}.success-card{border-left-color:#3f956e;background:#f5fbf8}.success-kpi{border-top:4px solid #3f956e}.danger-kpi{border-top:4px solid #b44f4f}.positive-money{color:#26704f}.negative-money{color:#a33c3c}.dre-statement-card{max-width:900px}.dre-statement{display:grid}.dre-statement>div{display:flex;justify-content:space-between;gap:20px;padding:11px 4px;border-bottom:1px solid #eef1f0;font-size:13px}.dre-statement .subtotal{background:#f5f8f7;padding:13px 12px;font-weight:800}.dre-statement .total{margin-top:8px;padding:16px 12px;border:0;border-radius:10px;background:#e3f2ec;color:#185b43;font-size:16px}.dre-statement .total.negative{background:#fbe8e8;color:#8f3030}.chart-report-table .synthetic-row td{background:#f7faf9;font-weight:800}.chart-indent{display:inline-block}.chart-indent.level-1{padding-left:18px}.chart-indent.level-2{padding-left:36px}.chart-indent.level-3{padding-left:54px}.accounting-disclaimer{max-width:none;border-top:1px solid var(--line);padding-top:12px}.transfer-row{background:#f6f8f8}.total-row td{border-top:2px solid #ccd8d4;background:#f7faf9}.required-legend{display:flex;align-items:center;gap:10px;padding:10px 14px}.required-legend .required-swatch{width:10px;height:34px;border-radius:5px;background:#3c82bd}.required-legend div{display:grid;gap:2px}.required-legend small{color:var(--muted)}.parameter-create-grid{align-items:start}.category-form,.account-form{grid-template-columns:repeat(2,minmax(0,1fr))}.chart-config-table{min-width:1180px}.chart-config-table .synthetic-row{background:#f5f8f7}.chart-config-table .chart-level-0 td:first-child{border-left:4px solid var(--accent)}.chart-edit-name{display:grid;grid-template-columns:95px minmax(190px,1fr);gap:6px}.chart-code-input{min-width:0;width:95px}.chart-parent-label{padding-left:102px}.account-config-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(360px,1fr));gap:12px}.account-config-card{border:1px solid var(--line);border-radius:12px;padding:15px;background:#fbfcfc}.account-config-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:12px}.account-config-head>div{display:grid}.account-config-head span{color:var(--muted);font-size:10px;margin-top:3px}.account-config-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-bottom:10px}.transfer-form{grid-template-columns:repeat(4,minmax(0,1fr))}.inline-details summary{cursor:pointer;color:var(--danger);font-size:10px;font-weight:800;margin-top:7px}.inline-details form{margin-top:5px}
.reconciliation-top-grid{align-items:stretch}.reconciliation-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.reconciliation-summary>div{border:1px solid var(--line);border-radius:11px;padding:13px;background:#f8faf9;display:grid;gap:3px}.reconciliation-summary span{font-size:9px;color:var(--muted);text-transform:uppercase}.reconciliation-summary strong{font-size:25px}.reconciliation-summary small{font-size:10px;color:var(--muted)}.reconciliation-filter{grid-template-columns:repeat(4,minmax(135px,1fr)) auto}.status-tabs{display:flex;gap:7px;margin:0 0 14px;flex-wrap:wrap}.status-tabs a{background:#e9edeb;border-radius:999px;padding:8px 12px;font-size:11px;font-weight:800;color:#596762}.status-tabs a.active{background:var(--accent);color:#fff}.status-tabs b{margin-left:4px}.reconciliation-list{display:grid;gap:11px}.bank-item{margin:0;border-left:5px solid #d0d8d5}.bank-item-pendente{border-left-color:#d5a32d;background:#fffdf7}.bank-item-conciliado{border-left-color:#3c9068}.bank-item-ignorado{border-left-color:#929ca2;background:#fafafa}.bank-item-main{display:grid;grid-template-columns:60px minmax(220px,1fr) 140px 110px;gap:14px;align-items:center}.bank-date{display:grid;place-items:center;background:#eef3f1;border-radius:10px;padding:8px}.bank-date span{font-size:20px;font-weight:900}.bank-date small{font-size:9px;color:var(--muted)}.bank-description{min-width:0}.bank-description strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bank-amount{text-align:right;font-size:17px}.workflow-pendente{background:#fff0b8;color:#775600}.workflow-conciliado{background:#dff2e8;color:#246448}.workflow-ignorado{background:#e8ebed;color:#59646c}.bank-match-area{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;align-items:end;border-top:1px solid #e6ebe9;margin-top:12px;padding-top:12px}.bank-suggestion-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:end}.bank-suggestion-form select{max-width:100%}.no-suggestion{display:grid;gap:3px;font-size:11px}.no-suggestion span{color:var(--muted)}.bank-create-entry summary,.bank-ignore summary{cursor:pointer;font-size:10px;font-weight:800;padding:9px}.bank-create-entry form{position:relative;z-index:2;margin-top:8px;grid-template-columns:minmax(180px,1fr) minmax(220px,2fr) auto;padding:12px;border:1px solid var(--line);border-radius:10px;background:#fff}.bank-ignore summary{color:var(--danger)}.bank-ignore form{margin-top:7px}.bank-reconciled-detail{display:flex;align-items:end;justify-content:space-between;gap:20px;border-top:1px solid #e6ebe9;margin-top:12px;padding-top:12px}.bank-reconciled-detail>div{display:grid;gap:3px}.bank-reconciled-detail span{font-size:9px;color:var(--muted);text-transform:uppercase}.bank-reconciled-detail small{color:var(--muted)}.bank-reconciled-detail summary{cursor:pointer;font-size:10px;font-weight:800}.notice-success{background:#edf8f2;border-color:#b9dfcc;color:#225e45}
@media(max-width:1250px){.workflow-guide ol{grid-template-columns:repeat(3,1fr);row-gap:10px}.workflow-guide li:nth-child(3):after,.workflow-guide li:nth-child(6):after{display:none}.analysis-filter{grid-template-columns:repeat(2,1fr)}.cash-flow-filter{grid-template-columns:repeat(2,1fr)}.transfer-form{grid-template-columns:repeat(2,1fr)}.bank-match-area{grid-template-columns:1fr 1fr}.bank-suggestion-form{grid-column:1/-1}}
@media(max-width:1050px){.sidebar{position:static;width:auto;max-height:none;overflow:visible}.main{margin:0;padding:18px}.sidebar-nav{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible}.sidebar .nav-group{border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:3px}.sidebar-note{display:none}.desktop-attendance-table{display:none}.mobile-attendance-list{display:block}.bank-item-main{grid-template-columns:52px minmax(180px,1fr) 125px}.bank-item-main>.badge{grid-column:2/4;justify-self:start}.reconciliation-filter{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.sidebar-nav{grid-template-columns:1fr}.workflow-guide ol{display:flex;overflow-x:auto;padding:12px}.workflow-guide li{min-width:105px}.workflow-guide li:after{display:block!important}.workflow-guide li:last-child:after{display:none!important}.workflow-next{align-items:flex-start;flex-direction:column}.workflow-next .btn{width:100%;text-align:center}.analysis-banner,.reconciliation-health{align-items:flex-start;display:grid}.analysis-filter,.cash-flow-filter,.reconciliation-filter,.category-form,.account-form,.transfer-form{grid-template-columns:1fr}.category-form .span-2,.account-form .span-2,.transfer-form .span-2{grid-column:auto}.analysis-split,.parameter-create-grid,.reconciliation-top-grid{grid-template-columns:1fr}.account-config-grid{grid-template-columns:1fr}.account-config-fields{grid-template-columns:1fr}.account-config-fields .span-2{grid-column:auto}.bank-item-main{grid-template-columns:48px minmax(0,1fr);gap:9px}.bank-item-main .bank-amount{grid-column:2;text-align:left}.bank-item-main>.badge{grid-column:2}.bank-match-area{grid-template-columns:1fr}.bank-suggestion-form,.bank-create-entry form{grid-template-columns:1fr}.bank-suggestion-form{grid-column:auto}.bank-reconciled-detail{display:grid}.reconciliation-summary{grid-template-columns:1fr 1fr 1fr}}
@media(max-width:480px){.reconciliation-summary{grid-template-columns:1fr}.analysis-banner .cash-actions{display:grid;grid-template-columns:1fr}.workflow-guide{margin-top:0}.chart-edit-name{grid-template-columns:78px minmax(180px,1fr)}.chart-code-input{width:78px}}
.finance-period-toolbar{justify-content:flex-start}.finance-period-toolbar .cash-filter{max-width:720px}.finance-module-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:18px}.finance-module-card{margin:0;display:flex;flex-direction:column;justify-content:space-between;gap:16px;min-height:205px;border-top:3px solid #d9e5e1}.finance-module-card>div:first-child{display:flex;align-items:flex-start;gap:11px}.finance-module-card h2{font-size:16px}.finance-module-card p{font-size:11px;color:var(--muted);line-height:1.45}.module-number{display:grid;place-items:center;flex:0 0 30px;width:30px;height:30px;border-radius:9px;background:var(--accent-soft);color:var(--accent);font-weight:900}.module-links{display:grid;gap:9px;align-items:center}.module-links .btn{text-align:center}.module-links .text-link{text-align:center;font-size:11px}
@media(max-width:1300px){.finance-module-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.finance-module-grid{grid-template-columns:1fr}.finance-module-card{min-height:0}}
.treasury-total{display:grid;text-align:right}.treasury-total span{font-size:10px;color:var(--muted)}.treasury-total strong{font-size:22px;margin-top:3px}.treasury-account-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(310px,1fr));gap:13px;margin-bottom:18px}.treasury-account-card{margin:0}.treasury-account-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.treasury-account-head p{font-size:10px;color:var(--muted);margin:5px 0}.treasury-account-balance{display:grid;gap:3px;padding:18px 0}.treasury-account-balance span,.treasury-account-balance small{font-size:10px;color:var(--muted)}.treasury-account-balance strong{font-size:25px}.treasury-reconciliation{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-top:10px;border-top:1px solid var(--line);font-size:10px;color:var(--muted)}.inactive-card{opacity:.68}.standalone-next{margin-bottom:18px;border-radius:14px;border:1px solid var(--line)}
.quick-flow-6{grid-template-columns:repeat(6,minmax(0,1fr))}.quick-flow-6 .quick-step{min-width:0}.quick-flow-6 .quick-step small{line-height:1.35}
@media(max-width:1400px){.quick-flow-6{grid-template-columns:repeat(3,1fr)}}
@media(max-width:700px){.quick-flow-6{grid-template-columns:1fr}}

/* v3.1.5 — correção de cache e estabilidade do menu lateral */
.sidebar-nav{display:flex;flex-direction:column;gap:0;width:100%}
.sidebar .nav-group{display:block;width:100%;min-width:0}
.sidebar .nav-group summary{width:100%}
.sidebar .nav-group summary::after{content:"›";font-size:17px;line-height:1;transform:rotate(0deg);transition:transform .18s ease}
.sidebar .nav-group[open] summary::after{transform:rotate(90deg)}
.sidebar .nav-group-links{display:flex!important;flex-direction:column!important;align-items:stretch;width:100%;min-width:0}
.sidebar nav .nav-group-links>a{display:block!important;width:100%;min-width:0;white-space:normal;word-break:normal;overflow-wrap:break-word}
@media(max-width:1050px){.sidebar-nav{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.sidebar .nav-group-links{display:flex!important}}
@media(max-width:760px){.sidebar-nav{grid-template-columns:1fr}}
/* V317: telas operacionais compactas, sem ações fora da área visível. */
.ops-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}.ops-tabs a{padding:10px 14px;border:1px solid #dce4e5;border-radius:9px;background:#fff;color:#205b52;text-decoration:none;font-weight:600}
.ops-next{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:16px 20px;margin:14px 0;background:#eaf3f0;border:1px solid #cbded8;border-radius:12px}.ops-next span{flex:1;min-width:180px}.ops-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:16px;align-items:end;margin:18px 0}.ops-form label{display:flex;flex-direction:column;gap:6px;min-width:0}.ops-form input,.ops-form select,.ops-form textarea,.ops-consumption-row input,.ops-consumption-row select{box-sizing:border-box;width:100%;min-width:0;max-width:100%;padding:11px 12px;border:1px solid #cad6db;border-radius:8px;background:#fff;font:inherit}.ops-form small{color:#607482;line-height:1.4}.ops-wide{grid-column:1/-1}.required-star{color:#a7600b}.ops-form :required,.ops-consumption-row :required{border-left:4px solid #b88625;background:#fffdf5}.ops-list{display:flex;flex-direction:column}.ops-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:18px 0;border-bottom:1px solid #e5ecee;min-width:0}.ops-row>div:first-child{flex:1 1 240px;min-width:0}.ops-row strong,.ops-row small{overflow-wrap:anywhere}.ops-row small{display:block;color:#687f8b;margin-top:5px}.ops-numbers{display:flex;flex-wrap:wrap;gap:20px}.ops-numbers span{font-size:13px;color:#5b6b73}.ops-numbers b{display:block;font-size:17px;color:#142c37}.ops-status{display:inline-block;border-radius:7px;padding:7px 10px;font-size:13px;font-weight:600}.ops-status.warning,.ops-warning{background:#fff4cc;color:#70520a;border-color:#e9d389}.ops-status.success{background:#dff1e8;color:#165b42}.ops-status.danger{background:#fbe5e2;color:#913b31}.ops-detail{width:100%;margin:12px 0;border:1px solid #dce6e8;border-radius:10px;padding:12px 16px;box-sizing:border-box}.ops-detail summary{font-weight:600;cursor:pointer;padding:4px 0;overflow-wrap:anywhere}.ops-lot{margin:16px 0;padding:14px;background:#f5f8f9;border-radius:8px}.ops-consumption-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(130px,.5fr) minmax(180px,1fr);gap:18px;align-items:center;padding:18px 0;border-bottom:1px solid #e1e9eb}.ops-consumption-row small{display:block;margin-top:6px;color:#687f8b}.ops-sticky-actions{position:sticky;bottom:8px;display:flex;flex-wrap:wrap;gap:12px;background:#fff;padding:14px 0;z-index:2;border-top:1px solid #dce6e8}.ops-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,210px),1fr));gap:16px;margin:16px 0}.ops-metrics>div{padding:18px;border:1px solid #e1e8eb;border-top:3px solid #327769;border-radius:12px;background:#fafcfc}.ops-metrics span,.ops-metrics small{display:block;color:#657b86;font-size:13px}.ops-metrics strong{display:block;margin:10px 0;font-size:26px;overflow-wrap:anywhere}.ops-table{width:100%;table-layout:fixed;border-collapse:collapse}.ops-table th,.ops-table td{padding:12px 10px;text-align:right;overflow-wrap:anywhere;border-bottom:1px solid #e4ebed}.ops-table th:first-child,.ops-table td:first-child{text-align:left}.ops-table-wrap{max-width:100%}.company-chip small{display:block;font-size:11px;white-space:normal}.top-user{flex-wrap:wrap}.ops-check{flex-direction:row!important;align-items:center}.ops-check input{width:auto!important}.quote-print{margin:0;background:#fff;color:#153039}.quote-print main{max-width:780px;margin:40px auto;padding:24px}.quote-print h1{font-size:25px}.sidebar-nav .nav-group-links{display:flex;flex-direction:column;gap:3px}.sidebar-nav .nav-group-links a{display:block;float:none;white-space:normal;box-sizing:border-box;width:100%;line-height:1.35}.sidebar{height:100dvh;overflow-y:auto;overscroll-behavior:contain}.main{min-width:0}.card{min-width:0}
@media(max-width:800px){.ops-consumption-row{grid-template-columns:1fr}.ops-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.ops-metrics strong{font-size:21px}.ops-table th,.ops-table td{padding:8px 4px;font-size:12px}.topbar{gap:10px;flex-wrap:wrap}.top-user{justify-content:flex-start}.company-chip{max-width:100%}.ops-row>div:first-child{flex-basis:100%}}
@media(max-width:480px){.ops-metrics{grid-template-columns:1fr}.ops-next{padding:12px}.ops-sticky-actions .btn{width:100%}}
@media print{.no-print{display:none!important}.quote-print main{margin:0;max-width:none}}

@media(max-width:1050px){.sidebar{height:auto;overflow:visible}.ops-sticky-actions{bottom:4px}}
@media(max-width:760px){body.role-anesthetist .ops-sticky-actions{bottom:68px}}
/* V318: cadastro simples e revisão do preenchimento por colagem. */
.company-data-form{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.company-data-form>label{align-self:start}.company-record h2{overflow-wrap:anywhere}
.company-paste{padding:16px 18px;border:1px solid #c9ded7;border-radius:12px;background:#eef6f2}.company-paste summary{font-weight:700;cursor:pointer;color:#215c50}.company-paste textarea{background:#fff}.company-paste p{line-height:1.5}.company-paste .ops-check{font-size:13px;max-width:360px}.company-field-error{color:#a52f2f!important;font-weight:600}.company-data-form [aria-invalid="true"]{border-color:#b73535;background:#fff6f5}.company-record{padding:18px 0;border-bottom:1px solid #dfe8e8}.company-record:last-child{border-bottom:0}.company-record h2{font-size:20px}.company-record .section-head{flex-wrap:wrap}.company-data-form .company-contact{margin:0}.company-reuse-access{padding:14px;background:#eaf3ef;border-radius:10px;line-height:1.5}.company-identity[hidden]{display:none}.company-data-form .actionbar{flex-wrap:wrap}.company-paste [data-company-message]:empty{display:none}
@media(max-width:700px){.company-record .actionbar,.company-data-form .actionbar{align-items:stretch;flex-direction:column}.company-record .section-head{align-items:flex-start}.company-record .section-head .btn{width:100%}.platform-header{gap:16px;flex-wrap:wrap}}
@media(max-width:600px){.company-data-form{grid-template-columns:1fr}}

/* V319: clínica organizada por tarefa, com formulários de duas colunas. */
.clinic-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 22px;align-items:start;margin:20px 0}.clinic-form label,.quote-summary>label,.stock-entry-form label{display:flex;flex-direction:column;gap:7px;min-width:0;font-size:14px;font-weight:600}.clinic-form input,.clinic-form select,.clinic-form textarea,.quote-summary input,.quote-main textarea,.clinic-search input,.quote-resource input,.quote-resource select{width:100%;box-sizing:border-box;min-width:0;border:1px solid #cbd7d6;border-radius:9px;padding:12px;background:#fff;color:#16352f;font:inherit;font-size:15px}.clinic-form :required,.quote-resource :required{border-left:4px solid #b48a31;background:#fffdf6}.clinic-form small,.clinic-form label small,.quote-summary small{font-size:12px;font-weight:400;line-height:1.5;color:#657b75}.clinic-form button{align-self:end;min-height:44px}.clinic-form .ops-check{flex-direction:row}.clinic-form [hidden],.stock-entry-form [hidden]{display:none!important}.clinic-step-title{display:flex;gap:15px;align-items:flex-start;margin-bottom:10px}.clinic-step-title>span{display:grid;place-items:center;flex:0 0 34px;height:34px;border-radius:50%;background:#e4f1eb;color:#215d50;font-size:16px;font-weight:750}.clinic-step-title h2{margin:3px 0 8px;font-size:21px}.clinic-step-title p{margin:0;color:#61756f;line-height:1.5}.clinic-calculation{border-radius:12px;background:#eff6f2;border:1px solid #d2e5da;padding:18px;line-height:1.65}.clinic-submit{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.clinic-submit .btn{padding:13px 20px}.clinic-toolbar{display:flex;gap:12px;justify-content:space-between;align-items:center;flex-wrap:wrap;margin-bottom:20px}.clinic-toolbar .ops-tabs{margin:0}.ops-tabs [aria-current=page]{background:#225f52;color:white;border-color:#225f52}.clinic-search{display:flex;gap:8px;max-width:430px}.clinic-empty{padding:34px 10px;text-align:center}.clinic-empty p{max-width:600px;margin:16px auto 24px;line-height:1.6}.stock-card{border:1px solid #dce6e2;border-radius:14px;padding:20px;margin-top:16px;background:#fff}.stock-card h3{font-size:18px;margin:0 0 7px;overflow-wrap:anywhere}.stock-card-main{display:flex;gap:18px;justify-content:space-between;align-items:center;min-width:0}.stock-card-main>div{min-width:0}.stock-card small{color:#647a73}.stock-card-footer{display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;align-items:center;border-top:1px solid #ebf0ed;margin-top:15px;padding-top:12px}.stock-card-footer p{margin:0;color:#697c76;font-size:13px}.stock-available{text-align:right;flex-shrink:0}.stock-available small{display:block;margin-bottom:5px}.stock-available strong{font-size:24px;color:#174c40}.stock-available strong span{font-size:13px;font-weight:500}.stock-lot-row{display:flex;flex-wrap:wrap;align-items:center;gap:14px;justify-content:space-between;border-top:1px solid #dfe7e3;padding:20px 0}.stock-lot-row p{color:#63756e}.stock-alert-row{display:flex;flex-wrap:wrap;gap:14px;align-items:center;border-top:1px solid #e6ece8;padding:15px 0}.stock-alert-row>div{flex:1;min-width:180px}.stock-alert-row small{display:block;color:#6f7974;margin-top:6px}.stock-alerts{border-top:3px solid #c89b35}.clinic-shortcuts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:28px 0}.clinic-shortcuts a{display:flex;flex-direction:column;gap:10px;border:1px solid #d2e2d9;border-radius:14px;padding:22px;color:#234d40;background:#f7faf8;text-decoration:none;line-height:1.5}.clinic-shortcuts a:hover{border-color:#2e7662;background:#eef6f1}.clinic-shortcuts b{font-size:18px}.clinic-shortcuts span{color:#67776e;font-size:14px}.operation-switch{display:grid;gap:5px;padding:10px 0 20px;border-bottom:1px solid #355048;margin-bottom:10px}.sidebar .operation-switch>a{border-radius:9px;padding:12px;display:block;white-space:normal;color:#bcd0c8;font-size:14px;line-height:1.35}.sidebar .operation-switch>a.selected{background:#d9ece1;color:#163f31;font-weight:750}.brand-logo{width:46px;height:46px;object-fit:contain;background:white;border-radius:9px;padding:5px;box-sizing:border-box}.company-logo-preview{width:180px;max-height:100px;object-fit:contain}.operation-pill{display:inline-block;border-radius:5px;padding:4px 8px;margin:6px;background:#edf3f0;color:#45695b;font-size:12px}.preserve-lines{white-space:pre-wrap;overflow-wrap:anywhere}
.quote-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:22px;align-items:start}.quote-layout>input[type=hidden]{display:none}.quote-main{min-width:0}.quote-main>.card{margin-bottom:22px}.quote-summary{position:sticky;top:20px;padding:23px}.quote-summary h2{font-size:23px;margin-bottom:20px}.quote-summary .clinic-form{grid-template-columns:1fr;gap:12px}.quote-summary .clinic-submit{display:grid}.quote-totals{margin:12px 0}.quote-totals>div{display:flex;justify-content:space-between;gap:18px;padding:12px 0;color:#5c7168;font-size:14px}.quote-totals dd{margin:0;white-space:nowrap;font-weight:650;color:#204c3c}.quote-totals .total{border-top:1px solid #dbe6df;margin-top:6px;font-weight:700}.quote-suggested,.quote-profit{border-radius:12px;padding:19px;margin:18px 0;background:#f1f6f3}.quote-suggested>span,.quote-profit>span{display:block;font-size:13px;color:#537566}.quote-suggested>strong,.quote-profit>strong{display:block;margin-top:8px;font-size:27px;color:#1d5540}.quote-profit{background:#e4f4eb}.quote-profit.negative{background:#ffe9e3}.quote-profit.negative strong{color:#9d382a}.quote-resource-list{margin:22px 0}.quote-resource{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(80px,.6fr) minmax(90px,.6fr) auto;gap:10px;align-items:end;padding:16px 0;border-top:1px solid #e1e9e3}.quote-resource label{display:flex;flex-direction:column;gap:7px;font-size:12px;color:#586e62;min-width:0}.quote-resource .btn{min-height:42px;padding:10px}.quote-resource select,.quote-resource input{font-size:14px;padding:11px 8px}.quote-print main{max-width:840px;padding:30px;margin:24px auto}.quote-letterhead{display:flex;gap:30px;align-items:center;border-bottom:2px solid #215d47;padding:28px 0}.quote-letterhead img{width:175px;max-height:100px;object-fit:contain}.quote-letterhead h1{font-size:21px;margin:0 0 8px}.quote-letterhead p{font-size:12px;color:#5b7466;line-height:1.5;margin:5px 0}.quote-document-title{display:flex;justify-content:space-between;gap:24px;align-items:center;margin:30px 0}.quote-document-title h2{font-size:26px;margin:8px 0}.quote-document-title>strong{white-space:nowrap;font-size:28px;color:#215d47}.quote-public-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px 26px;background:#f5f8f6;border-radius:12px;padding:22px}.quote-public-grid dt{font-size:11px;text-transform:uppercase;color:#698073;margin-bottom:7px}.quote-public-grid dd{margin:0;font-size:14px;line-height:1.5}.quote-public-item{display:flex;justify-content:space-between;gap:16px;border-bottom:1px solid #e1e8e4;padding:12px 0}.quote-public-item strong{white-space:nowrap}.quote-print section{margin:25px 0}.quote-print h3{font-size:17px;margin:18px 0 12px}.quote-print section p{line-height:1.65;font-size:14px}.quote-payment{display:flex;justify-content:space-between;align-items:center;gap:20px;background:#eaf3ee;padding:22px;border-radius:10px;line-height:1.7}.quote-payment>strong{font-size:27px;white-space:nowrap;color:#215d47}.quote-print footer{font-size:10px;color:#728579;margin-top:26px}
@media(min-width:1700px){.quote-layout{grid-template-columns:minmax(0,1fr) 370px}.quote-main .clinic-form{gap:22px 26px}}
@media(max-width:1200px){.quote-layout{grid-template-columns:1fr}.quote-summary{position:static}.quote-summary .clinic-form{grid-template-columns:repeat(2,minmax(0,1fr))}.quote-summary .clinic-submit{display:flex}.quote-resource{grid-template-columns:minmax(0,1fr) 110px 110px auto}}
@media(max-width:700px){.clinic-form{grid-template-columns:1fr}.clinic-shortcuts{grid-template-columns:1fr}.stock-card-main{align-items:flex-start}.stock-available strong{font-size:20px}.clinic-toolbar .actionbar{width:100%}.clinic-search{width:100%;max-width:none}.quote-resource{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.quote-resource>label:first-child{grid-column:1/-1}.quote-resource .btn{grid-column:1/-1}.quote-summary .clinic-form{grid-template-columns:1fr}.quote-letterhead{gap:15px;flex-direction:column;align-items:flex-start}.quote-document-title{display:block}.quote-public-grid{grid-template-columns:1fr}.quote-payment{flex-wrap:wrap}.stock-card-footer .actionbar{width:100%;flex-wrap:wrap}.stock-card{padding:15px}.stock-card-main{flex-wrap:wrap}.stock-available{text-align:left}.operation-switch{grid-column:1/-1;grid-template-columns:1fr 1fr}}
@media print{.quote-print main{margin:0;padding:5mm;max-width:none}.quote-print .no-print{display:none!important}.quote-letterhead,.quote-public-item,.quote-payment{break-inside:avoid}.quote-print{font-size:12px}.quote-public-grid{grid-template-columns:1fr 1fr}.quote-letterhead{flex-direction:row}.quote-document-title{display:flex}.quote-print footer{word-break:break-all}.quote-print section p{orphans:3;widows:3}}
/* V320 · navegação e análise, com componentes que também cabem no celular. */
:root{--shadow:0 5px 20px rgba(20,35,31,.045)}
[hidden]{display:none!important}:focus-visible{outline:3px solid #3978b0;outline-offset:3px}html{scroll-padding-top:18px}.skip-link{position:fixed;left:12px;top:-80px;z-index:100;background:#fff;padding:14px;border-radius:8px}.skip-link:focus{top:12px}
.sidebar{width:250px;position:fixed;inset:0 auto 0 0;height:100dvh;overflow:hidden;padding:22px 14px 10px;z-index:40;display:flex;flex-direction:column}.sidebar .brand{flex-shrink:0;padding:0 9px 18px;min-width:0}.sidebar .brand>div:last-child{min-width:0}.sidebar .brand span{overflow-wrap:anywhere}.brand-mark{flex-shrink:0}.sidebar .sidebar-nav{display:flex!important;flex-direction:column;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;gap:7px;min-height:0;scrollbar-width:thin;scrollbar-color:#52766a transparent}.sidebar .nav-group{flex-shrink:0;width:100%;margin:0}.sidebar .nav-group summary{padding:12px 10px;font-size:13px;line-height:1.4;cursor:pointer}.sidebar .nav-group-links{display:flex!important;flex-direction:column;width:100%;gap:3px}.sidebar .nav-group:not([open])>.nav-group-links{display:none!important}.sidebar .nav-group-links a{font-size:13px;line-height:1.4;padding:10px 12px}.sidebar .operation-switch{display:grid;grid-template-columns:1fr;margin:0 0 2px;padding:4px 0 13px;gap:6px;flex-shrink:0}.sidebar .operation-switch>a{font-size:13px;padding:11px 12px}.sidebar .nav-start{display:block;font-weight:700;background:#203e33;line-height:1.4;padding:12px}.sidebar-account{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #345046;gap:4px;padding-top:10px;margin-top:12px;flex-shrink:0}.sidebar-account a{padding:9px 6px;color:#bfcec7;font-size:12px}.sidebar-account a:first-child{grid-column:1/-1}.sidebar-account a:hover{color:white;text-decoration:underline}.sidebar-note{display:block;flex-shrink:0;padding:9px 6px 0;margin:0;font-size:10px;color:#adc3b9}
.main{margin-left:250px;max-width:1920px;padding:26px 28px 54px}.main-auth{margin:0;max-width:none}.topbar{align-items:flex-start;gap:20px}.top-title{display:flex;align-items:center;gap:12px;min-width:0}.topbar h1{font-size:26px;letter-spacing:-.025em;line-height:1.25;overflow-wrap:anywhere}.top-user{gap:12px;justify-content:flex-end;max-width:52%;min-width:0}.top-user .company-chip{max-width:250px;overflow-wrap:anywhere;line-height:1.4;font-size:12px;padding:9px 12px}.top-user .user-identity{font-size:12px}.top-user>.btn:last-child{display:none}.menu-toggle,.menu-close,.mobile-bottom-nav{display:none}.btn{display:inline-flex;justify-content:center;align-items:center;min-height:40px;white-space:normal;line-height:1.35;text-align:center;font-family:inherit}.btn-small{font-size:12px;min-height:36px}.btn:disabled{opacity:.55;cursor:wait}.section-head{align-items:center;gap:16px;flex-wrap:wrap}.section-head p{line-height:1.5}.card{border-color:#e1e8e4;border-radius:16px}.help{line-height:1.55;max-width:none}.ops-status.info{background:#e6effa;color:#295d84}.ops-status.neutral{background:#edf0ed;color:#54645c}.connection-status{position:sticky;top:8px;z-index:25;background:#fff1c6;color:#65480a;border:1px solid #d3a63d;padding:16px;border-radius:12px;margin-bottom:16px;line-height:1.5}
.task-intro{display:flex;justify-content:space-between;align-items:center;gap:24px;margin:24px 0}.task-intro p{line-height:1.55;color:#5c7267;max-width:650px;font-size:14px}.task-intro .actionbar{margin:0;flex-shrink:0}.task-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:14px;margin-bottom:26px}.task-summary>a{display:flex;flex-direction:column;gap:10px;padding:20px;border:1px solid #d9e4dc;border-radius:14px;background:#fff}.task-summary>a:hover{border-color:#35705a;box-shadow:var(--shadow)}.task-summary strong{font-size:30px;line-height:1;color:#1b5943}.task-summary span{font-size:13px;color:#566c61;line-height:1.45}.task-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;align-items:start}.task-grid>.card{margin:0;padding:22px}.task-section h2{font-size:18px}.count-chip{display:grid;place-items:center;min-width:32px;height:30px;border-radius:9px;background:#edf3ef;color:#2b674f;font-size:13px;font-weight:700}.task-item{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;border-top:1px solid #e6ede8;padding:18px 0}.task-item>div{flex:1 1 210px;min-width:0}.task-item h3{font-size:15px;line-height:1.4;margin:10px 0 6px;overflow-wrap:anywhere}.task-item p{font-size:12px;line-height:1.5;color:#61756a;margin:0;overflow-wrap:anywhere}.task-item .ops-status{font-size:11px;padding:5px 8px}.task-empty{padding:22px 0;color:#67776f;font-size:14px;line-height:1.6}.task-all{display:inline-block;font-size:13px;padding:13px 0 0;border-top:1px solid #e1e9e4;width:100%}
.panel-filters form,.list-filters{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr auto;gap:14px;align-items:end}.panel-filters label,.list-filters label{min-width:0;font-size:12px;font-weight:600;gap:7px}.panel-filters input,.panel-filters select,.list-filters input,.list-filters select{min-width:0;width:100%;font-size:14px;padding:11px;min-height:44px}.panel-filters button{min-height:44px}.period-shortcuts{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-top:16px;font-size:12px}.period-shortcuts>span{color:#6b7c70}.period-shortcuts>a{padding:7px 10px;background:#edf3ef;border-radius:7px;color:#23583f}.period-shortcuts>a:last-child{margin-left:auto;background:none}.quality-banner{display:flex;gap:20px;justify-content:space-between;align-items:center;border:1px solid #dce7de;border-radius:12px;padding:16px 20px;margin:0 0 18px;font-size:13px;background:#eef5f0}.quality-banner.attention{background:#fff8e8;border-color:#e9d4a3}.quality-banner strong{font-size:14px}.quality-banner p{margin:7px 0 0;color:#676e5d;line-height:1.5}.quality-banner>.btn{flex-shrink:0}.scope-note{font-size:12px;line-height:1.6;color:#62776a;margin:18px 0}.finance-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:0 0 22px}.metric-card{display:flex;flex-direction:column;justify-content:space-between;gap:12px;background:#fff;border:1px solid #dfe8e1;border-radius:14px;padding:22px;min-width:0;box-shadow:var(--shadow)}a.metric-card:hover{border-color:#70a488}.metric-card>span{font-size:13px;color:#556f60;line-height:1.4}.metric-card>strong{font-size:clamp(21px,1.8vw,29px);letter-spacing:-.04em;overflow-wrap:anywhere;color:#1c3428}.metric-card>small{font-size:11px;color:#64796b;line-height:1.55}.metric-card.positive{background:#eaf4ed;border-color:#c8e0cf}.metric-card.negative{background:#fff0eb;border-color:#eabbb1}.metric-card.negative>strong,.negative-text{color:#963e2d}.metric-card.attention{background:#fff9ed;border-color:#e9d5a9}.finance-kpis.compact .metric-card{padding:19px}.finance-kpis.compact .metric-card>strong{font-size:23px}.panel-chart-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:20px;align-items:stretch;margin-bottom:20px}.panel-chart-grid>.card{margin:0;min-width:0;padding:24px}.chart-card h2{font-size:19px;margin:8px 0}.chart-legend{display:flex;flex-wrap:wrap;gap:16px;font-size:11px;color:#586d60;margin:16px 0}.chart-legend span{display:flex;align-items:center;gap:7px}.chart-legend span:before{content:'';width:9px;height:9px;border-radius:2px;background:#498c6a}.chart-legend .legend-cost:before{background:#c39768}.chart-legend .legend-result:before{height:3px;width:16px;background:#355878}.finance-chart{display:block;width:100%;height:auto;max-height:330px;margin:18px 0;overflow:visible}.finance-chart text{font-size:11px;fill:#687b6d;font-family:inherit}.chart-gridline{stroke:#e6ede7;stroke-width:1}.chart-zero{stroke:#acbfb0;stroke-width:1}.bar-revenue{fill:#498c6a}.bar-costs{fill:#c39768}.chart-line{stroke:#355878;stroke-width:2.7;fill:none;stroke-linejoin:round;stroke-linecap:round}.chart-data{border-top:1px solid #e3eae5;margin-top:16px;padding-top:12px;font-size:12px}.chart-data summary{cursor:pointer;font-weight:600;color:#34664b;padding:7px 0}.chart-data table{min-width:0;width:100%;table-layout:fixed}.chart-data th{white-space:normal}.chart-data td{overflow-wrap:anywhere;font-size:12px}.expense-bars>a{display:block;padding:16px 0;border-bottom:1px solid #e6ece7}.expense-bars>a>div:first-child{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:13px;line-height:1.5}.expense-track{height:7px;margin:10px 0;border-radius:9px;background:#edf2ec;overflow:hidden}.expense-track>span{display:block;max-width:100%;height:100%;background:#719d78;border-radius:9px}.expense-bars small{font-size:11px;color:#607466}.forecast-final{font-size:27px;color:#26523a}.projection-chart{max-height:270px}.amount-row,.upcoming-row,.quality-row{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:14px 0;border-bottom:1px solid #e6ede7;font-size:13px;line-height:1.5}.upcoming-row>span{min-width:0}.upcoming-row>span>strong{font-size:13px;overflow-wrap:anywhere}.upcoming-row small{display:block;color:#6c7c71;margin-top:4px}.upcoming-row>strong,.quality-row>strong{white-space:nowrap}.quality-row{font-size:12px}.quality-row:hover,.upcoming-row:hover{color:#246747}.list-filters{grid-template-columns:repeat(3,minmax(0,1fr));margin:18px 0}.list-filters .filter-actions{align-self:end;display:flex;gap:12px;align-items:center;flex-wrap:wrap}.filter-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:13px;margin-bottom:12px}.pagination{display:flex;gap:14px;align-items:center;justify-content:center;margin:20px 0;font-size:13px}.quote-list-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:14px;align-items:center;padding:22px 0;border-top:1px solid #e3ebe5}.quote-list-row h3{font-size:16px;line-height:1.5;overflow-wrap:anywhere;margin:8px 0}.quote-list-row p{font-size:13px;color:#6d7e70;margin:4px 0;line-height:1.5}.quote-list-row .quote-list-actions{display:grid;gap:7px}.quote-list-actions>a:last-child{font-size:12px;text-align:center;padding:5px}.title-list-row>.ops-detail{margin-top:0}.title-id{font-size:10px!important;color:#77847b!important}.title-balance small{font-weight:400}.title-filters-more summary{font-size:13px;color:#41664e;cursor:pointer}
.install-page{margin:0;background:#f1f5f0}.install-content{max-width:780px;margin:40px auto;padding:24px}.install-content>.brand{padding:0 0 30px;color:#194330}.install-content>.brand span{color:#5e7c69}.install-content h1{font-size:32px;letter-spacing:-.04em;line-height:1.2}.install-content p,.install-content li{line-height:1.7;color:#516c5a}.install-content .card{padding:25px}.install-content h2{font-size:20px}.install-content .actionbar{justify-content:flex-start}.install-content li{margin:10px 0}.install-content ol{padding-left:22px}.install-content [data-install-status]{padding:13px 0;font-size:14px}
@media(max-width:1400px){.finance-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.panel-filters form{grid-template-columns:repeat(4,minmax(0,1fr))}.panel-filters form>button{grid-column:4}.top-user .user-identity{display:none}.task-intro{flex-wrap:wrap}.metric-card>strong{font-size:28px}.panel-chart-grid{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr)}}
@media(max-width:1100px){.sidebar{position:fixed;inset:0 auto 0 0;width:min(310px,88vw);height:100dvh;transform:translateX(-102%);visibility:hidden;overflow:hidden;transition:transform .18s ease,visibility .18s;z-index:70;padding-top:max(16px,env(safe-area-inset-top))}.menu-open .sidebar{transform:translateX(0);visibility:visible}.sidebar .sidebar-nav{grid-template-columns:1fr!important}.sidebar .brand{padding-bottom:12px}.sidebar-note{display:block}.menu-open{overflow:hidden}.menu-close{display:flex;align-self:flex-end;border:1px solid #426554;border-radius:8px;background:transparent;color:#e5f1e8;padding:10px 13px;font:inherit;font-size:13px;margin:0 0 14px;min-height:44px;cursor:pointer}.menu-backdrop{position:fixed;inset:0;border:0;background:rgba(13,29,19,.5);z-index:60;cursor:pointer}.main{margin:0;padding:22px 22px calc(88px + env(safe-area-inset-bottom));max-width:none}.main-auth{padding-bottom:24px}.topbar{flex-wrap:nowrap;gap:15px;margin-bottom:20px}.topbar h1{font-size:24px}.top-title{align-items:flex-start}.top-title>div{min-width:0}.menu-toggle{display:flex;align-items:center;justify-content:center;gap:8px;border:1px solid #d2dfd4;background:#fff;border-radius:9px;color:#245139;font:inherit;font-size:14px;padding:11px;min-height:44px;flex-shrink:0;cursor:pointer}.menu-toggle span{display:none}.top-user{max-width:42%;margin:0}.mobile-bottom-nav,body.role-anesthetist .mobile-bottom-nav{position:fixed;inset:auto 0 0;display:flex;align-items:stretch;justify-content:space-around;gap:0;background:#fff;border-top:1px solid #d9e4dc;box-shadow:0 -4px 18px #132a1d0a;padding:5px 8px calc(5px + env(safe-area-inset-bottom));height:auto;z-index:35}.mobile-bottom-nav>a,.mobile-bottom-nav>button{display:flex;flex:1;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-height:52px;padding:5px 6px;border:0;border-radius:8px;background:transparent;font:inherit;color:#557462;cursor:pointer}.mobile-bottom-nav span{font-size:21px;line-height:1}.mobile-bottom-nav b{font-size:10px;font-weight:650}.mobile-bottom-nav [aria-current=page]{background:#edf5ee;color:#1e5f3c}.mobile-bottom-nav>a.mobile-new-attendance{background:none;color:#1d6940}.ops-sticky-actions,body.role-anesthetist .ops-sticky-actions{bottom:72px}.panel-chart-grid{grid-template-columns:1fr 1fr}.task-grid{gap:16px}}
@media(max-width:760px){.main{padding:16px 14px calc(86px + env(safe-area-inset-bottom))}.main-auth{padding:12px}.topbar{flex-wrap:wrap;gap:12px}.top-title{width:100%;align-items:center}.topbar h1{font-size:23px}.top-user{max-width:100%;width:100%;padding-left:56px;justify-content:flex-start}.top-user .company-chip{font-size:11px;padding:6px 10px;max-width:100%;min-height:36px;background:#eaf0eb;border-radius:7px;text-align:left}.top-user .company-chip small{font-size:10px}.topbar .eyebrow{font-size:9px}.task-intro{gap:12px;margin:18px 0}.task-intro .actionbar{width:100%;justify-content:flex-start}.task-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:18px}.task-summary>a{padding:16px}.task-summary strong{font-size:26px}.task-summary span{font-size:12px}.task-grid,.panel-chart-grid{grid-template-columns:1fr}.task-grid>.card,.panel-chart-grid>.card{padding:18px}.task-item>div{flex-basis:100%}.task-item>a{width:100%}.panel-filters form{grid-template-columns:1fr 1fr;gap:12px}.panel-filters form>label:first-child{grid-column:1/-1}.panel-filters form>button{grid-column:2;align-self:end}.panel-filters{padding:16px}.panel-filters label{font-size:12px}.period-shortcuts{gap:8px}.period-shortcuts>a:last-child{margin:0;padding-left:0;width:100%}.quality-banner{padding:15px;gap:12px;flex-wrap:wrap}.quality-banner p{font-size:12px}.finance-kpis{gap:10px;margin-bottom:18px}.metric-card,.finance-kpis.compact .metric-card{padding:16px;gap:10px}.metric-card>span{font-size:12px}.metric-card>strong,.finance-kpis.compact .metric-card>strong{font-size:22px}.metric-card>small{font-size:10px}.finance-chart{margin:20px 0;min-height:135px}.chart-card .forecast-final{font-size:25px}.list-filters{grid-template-columns:1fr 1fr;gap:12px}.list-filters>label:first-child{grid-column:1/-1}.quote-list-row{grid-template-columns:minmax(0,1fr) auto}.quote-list-actions{grid-column:1/-1}.quote-list-row .quote-list-actions{display:flex;align-items:center;flex-wrap:wrap}.quote-list-actions>a:first-child{flex:1}.install-content{margin:16px auto;padding:18px}.install-content h1{font-size:29px}.install-content .card{padding:19px}input,select,textarea,.clinic-form input,.clinic-form select,.quote-resource input,.quote-resource select{font-size:16px!important}input,select{min-height:44px}button,.btn,.btn-small,summary{min-height:44px}.chart-data summary{display:flex;align-items:center}.btn{padding:11px 14px}input[type=checkbox],input[type=radio]{min-height:24px;min-width:24px}.quality-row{flex-wrap:wrap}.chart-data td{font-size:11px}.chart-data th{font-size:9px;letter-spacing:0}.card .help{font-size:12px}}
@media(max-width:380px){.metric-card>strong,.finance-kpis.compact .metric-card>strong{font-size:20px}.metric-card{padding:13px}.quality-row>strong{white-space:normal}.list-filters{grid-template-columns:1fr}.list-filters>label:first-child{grid-column:auto}.task-summary span{font-size:11px}}
@media(prefers-reduced-motion:reduce){.sidebar{transition:none}html{scroll-behavior:auto}}
@media print{.sidebar,.mobile-bottom-nav,.menu-toggle,.menu-backdrop,.top-user,.panel-filters,.task-intro .actionbar,.quality-banner>.btn{display:none!important}.main{margin:0;padding:0;max-width:none}.card,.metric-card{box-shadow:none;break-inside:avoid}.finance-kpis{grid-template-columns:repeat(4,minmax(0,1fr))}.finance-chart{max-height:220px}.panel-chart-grid{grid-template-columns:1fr 1fr}}
/* Identificação legível e valores compactos no celular. */
.top-user .company-chip{display:flex;flex-direction:column;align-items:flex-start;gap:3px;text-align:left}.top-user .company-chip small{white-space:nowrap}.task-item .btn{gap:6px}
@media(max-width:760px){.metric-card>strong,.finance-kpis.compact .metric-card>strong{font-size:18px;letter-spacing:-.035em}.top-user .company-chip small{font-size:11px}}

.panel-filter-detail>summary{display:none}.install-brand{display:flex;gap:15px;align-items:center;color:#1c5237;font-size:24px}.install-brand img{border-radius:16px}.install-content footer{margin-top:25px;font-size:12px;color:#687d6d;line-height:1.6}
@media(max-width:760px){.panel-filter-detail>summary{display:list-item;cursor:pointer;font-size:14px;font-weight:700;color:#28553b;min-height:44px;line-height:1.5}.panel-filter-detail>summary small{display:block;font-size:11px;color:#667b6d;font-weight:400;margin-top:5px}.panel-filter-detail[open]>summary{margin-bottom:18px}}
.repass-page .form-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.repass-page .form-grid label,.repass-page .form-grid input,.repass-page .form-grid select{min-width:0;width:100%}.repass-page .toolbar{flex-wrap:wrap}.repass-page .toolbar>form{display:flex;align-items:end;gap:10px;flex-wrap:wrap}.repass-page .cash-actions{display:flex;gap:10px;flex-wrap:wrap}
@media(max-width:760px){.repass-page .form-grid{grid-template-columns:1fr}.repass-page .ops-next{display:grid;gap:10px}.repass-page .toolbar>form,.repass-page .cash-actions{width:100%}.repass-page .toolbar>form>label{flex:1}.repass-page .toolbar>form>.btn{flex:1}.repass-page .cash-actions>.btn{flex:1}.repass-page table,.repass-page tbody{display:block;min-width:0;width:100%}.repass-page thead{display:none}.repass-page tbody tr{display:grid;grid-template-columns:1fr 1fr;gap:10px;border-top:1px solid #dce5df;padding:16px 0}.repass-page tbody td{display:block;padding:6px 0;border:0;min-width:0;overflow-wrap:anywhere}.repass-page td::before{content:attr(data-label);display:block;font-size:10px;font-weight:600;color:#6d7f72;margin-bottom:7px}.repass-page td:first-child{grid-column:1/-1;font-size:16px}.repass-page td:first-child::before{font-size:10px}.repass-page td[colspan]{grid-column:1/-1}.repass-page td .receive-inline{display:grid;gap:6px}.repass-page td input{min-width:0;width:100%}}

/* V321 · composição e precificação reutilizadas na ficha e no orçamento. */
.cost-intro{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px 24px;margin:8px 0 22px;font-size:14px;line-height:1.6;color:#526b61}.cost-intro p{margin:0;flex:1 1 420px}.cost-intro .text-link{font-size:14px}.cost-builder{grid-template-columns:minmax(0,1fr) minmax(320px,370px);gap:24px;font-size:16px;line-height:1.55}.cost-builder .card{padding:26px;box-shadow:0 3px 16px rgba(20,35,31,.035)}.cost-builder .clinic-step-title{gap:14px;margin-bottom:20px}.cost-builder .clinic-step-title h2{font-size:21px;letter-spacing:-.02em;line-height:1.35;margin:1px 0 7px}.cost-builder .clinic-step-title p{font-size:14px;color:#526b61}.cost-builder .clinic-form{gap:18px 20px;margin:20px 0 12px}.cost-builder label,.cost-builder .clinic-form label,.cost-builder .quote-resource label{font-size:14px;font-weight:600;line-height:1.5;color:#3c5a4f;gap:8px;min-width:0}.cost-builder input,.cost-builder select,.cost-builder textarea,.cost-builder .quote-resource input,.cost-builder .quote-resource select{width:100%;min-width:0;font-family:inherit;font-size:16px;line-height:1.45;padding:11px 12px;min-height:46px;background:#fff;border:1px solid #bacbc3;border-radius:8px;color:#173e30}.cost-builder input[type=hidden]{display:none}.cost-builder input:focus-visible,.cost-builder select:focus-visible,.cost-builder textarea:focus-visible{outline:3px solid #bcdccd;outline-offset:2px;border-color:#256950}.cost-builder :required{border-left:4px solid #5587ac;background:#f5f9ff}.cost-builder [aria-invalid=true]{border-color:#ae453c;background:#fff6f4}.cost-builder [hidden]{display:none!important}.cost-builder .help,.cost-builder small,.cost-builder label>small{font-size:13px;font-weight:400;line-height:1.6;color:#546e62}.cost-builder .btn{font-size:14px;min-height:44px;line-height:1.4}.cost-builder .text-link{font-size:14px;text-decoration:underline;text-underline-offset:3px}.cost-builder button.text-link{font-family:inherit;background:none;border:0;padding:10px 0;cursor:pointer;text-align:left;min-height:44px}.cost-builder .ops-wide{grid-column:1/-1}.cost-builder .ops-detail{padding:14px 16px;margin:22px 0 10px;border:1px solid #dce6df;border-radius:10px;min-width:0}.cost-builder summary{font-size:14px;font-weight:600;color:#315b49;cursor:pointer;line-height:1.5;padding:4px 0;min-height:32px}.cost-line-note{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;font-size:13px;background:#f1f6f3;border:1px solid #dbe8df;border-radius:9px;padding:14px 16px;color:#4a6658}.cost-line-note strong{white-space:nowrap;color:#23543e}.cost-builder .quote-resource-list,.cost-professional-list{display:grid;gap:18px;margin:18px 0}.cost-builder .cost-resource,.cost-builder .cost-professional{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:16px 18px;background:#f8fbf9;border:1px solid #dce7df;padding:20px;border-radius:12px;min-width:0}.cost-resource-search{grid-column:1/-1}.cost-resource-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;padding-top:14px;border-top:1px solid #dce7df;min-width:0}.cost-resource-footer .help{margin:0;flex:1 1 240px}.cost-resource-footer>.btn{width:auto}.cost-row-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px}.cost-row-actions .btn{flex-shrink:0}.cost-line-total{font-size:15px;color:#244e3b;font-weight:650;overflow-wrap:anywhere}.cost-professional-note{margin:0;padding:12px 14px;background:#eef4f0;border-radius:7px}.cost-empty{font-size:14px;line-height:1.6;color:#64786a;padding:20px;border:1px dashed #c9d8ce;border-radius:10px;margin:18px 0;background:#fafcfb}.cost-builder .cost-missing{color:#81550e;font-weight:600}.cost-summary{top:16px;scroll-margin-top:18px}.cost-summary h2{font-size:22px;letter-spacing:-.025em;margin:8px 0 18px}.cost-summary .eyebrow{font-size:11px;color:#577568}.cost-summary .quote-totals{margin:10px 0}.cost-summary .quote-totals>div{font-size:14px;gap:14px;padding:10px 0}.cost-summary .quote-totals dt{min-width:0;line-height:1.5}.cost-summary .quote-totals dd{font-size:14px;font-variant-numeric:tabular-nums}.cost-summary .quote-totals .total{font-size:15px;margin:10px 0;padding-top:17px}.cost-summary .quote-totals .total dd{font-size:17px}.cost-summary .clinic-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.cost-summary .clinic-form label{font-size:13px}.cost-summary .cost-rates{padding:12px;margin:18px 0}.cost-summary .cost-rates .help{font-size:12px}.cost-summary .quote-suggested{background:#f0f6f2;border:1px solid #d4e5d9;margin:20px 0;padding:17px}.cost-summary .quote-suggested>span,.cost-summary .quote-profit>span{font-size:13px;color:#315c46}.cost-summary .quote-suggested>strong,.cost-summary .quote-profit>strong{font-size:29px;font-variant-numeric:tabular-nums;letter-spacing:-.03em;line-height:1.3}.cost-summary .cost-sale{padding-top:13px}.cost-summary .cost-sale>div{font-size:13px}.cost-summary .quote-profit{padding:18px;margin:17px 0;background:#e8f4ec;border:1px solid #c3decd}.cost-summary .quote-profit small{display:block;margin:10px 0 0;color:inherit;font-size:13px}.cost-summary .quote-profit .cost-margin-status{font-size:13px;font-weight:650;margin:13px 0 0;line-height:1.4}.cost-summary .quote-profit[data-status=warning],.cost-summary .quote-profit[data-status=pending]{background:#fff7df;border-color:#e6d19a}.cost-summary .quote-profit[data-status=warning]>strong,.cost-summary .quote-profit[data-status=warning]>span,.cost-summary .quote-profit[data-status=pending]>strong,.cost-summary .quote-profit[data-status=pending]>span{color:#765010}.cost-summary .quote-profit[data-status=danger]{background:#fff0ea;border-color:#e4b4a6}.cost-summary .quote-profit[data-status=danger]>strong,.cost-summary .quote-profit[data-status=danger]>span{color:#913e2e}.cost-summary[aria-busy=true] [data-result]{opacity:.5}.cost-preview-message{font-size:13px;line-height:1.6;overflow-wrap:anywhere}.cost-preview-message:empty{display:none}.cost-preview-message.has-warning{padding:14px;background:#fff8e9;border:1px solid #ead7ad;border-radius:9px;color:#7b530e}.cost-preview-message ul{padding-left:18px;margin:0}.cost-preview-message li+li{margin-top:8px}.cost-summary .clinic-submit{display:grid;gap:10px;margin-top:22px}.cost-summary .clinic-submit>.btn{width:100%;padding:13px 16px}.cost-summary .clinic-submit>.text-link{font-size:13px;padding:8px 0;text-align:center}.cost-next{border-top:1px solid #e0e8e2;padding-top:16px;margin:22px 0 0;font-size:13px;color:#5b7064;line-height:1.65}.cost-mobile-summary{display:none}.cost-history summary{font-size:15px;font-weight:650;color:#335d48;cursor:pointer}.cost-history-list>div{display:flex;flex-wrap:wrap;gap:10px 18px;padding:14px 0;border-top:1px solid #e2e9e4;font-size:13px;color:#536d5e}.catalog-list{min-width:0}.catalog-item{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:20px;align-items:center;border-top:1px solid #e1e9e3;padding:22px 0;font-size:14px}.catalog-item-main{min-width:0;overflow-wrap:anywhere}.catalog-item-main h3{font-size:17px;line-height:1.45;margin:7px 0;color:#213f30}.catalog-item-main p{line-height:1.5;margin:5px 0;color:#5d7266}.catalog-item-value{min-width:0;text-align:right;display:grid;gap:7px}.catalog-item-value strong{font-size:20px;white-space:nowrap;color:#214d36}.catalog-item-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.catalog-item-actions .btn{font-size:13px;min-height:42px}.catalog-item small{font-size:12px;color:#647a6b}.catalog-item .ops-status{white-space:normal;line-height:1.45}
@media(max-width:1350px){.cost-builder{grid-template-columns:minmax(0,1fr) 330px;gap:18px}.cost-builder .card{padding:21px}.cost-builder .cost-resource,.cost-builder .cost-professional{padding:16px}.catalog-item{grid-template-columns:minmax(0,1fr) auto}.catalog-item-actions{grid-column:1/-1;justify-content:flex-start}.cost-summary .quote-totals>div{font-size:13px}.cost-summary .quote-totals dd{font-size:13px}}
@media(max-width:1150px){.cost-builder{grid-template-columns:1fr}.cost-summary{position:static}.cost-mobile-summary{display:flex;grid-column:1/-1;justify-content:space-between;gap:14px;align-items:center;background:#eaf4ee;border:1px solid #c8dfcf;border-radius:11px;padding:14px 18px;font-size:14px;color:#24553b}.cost-mobile-summary strong{font-size:18px;display:block;margin-top:3px}.cost-mobile-summary>span:last-child{font-weight:650}.cost-builder .quote-summary .clinic-form{grid-template-columns:repeat(2,minmax(0,1fr))}.cost-summary .quote-totals>div,.cost-summary .quote-totals dd{font-size:14px}.cost-summary .clinic-submit{grid-template-columns:repeat(2,minmax(0,1fr))}.cost-summary .clinic-submit>.text-link{grid-column:1/-1}}
@media(max-width:700px){.cost-intro{margin:8px 0 18px;font-size:14px}.cost-builder{gap:16px}.cost-builder .card{padding:19px 16px;border-radius:12px}.cost-builder .clinic-step-title{gap:10px}.cost-builder .clinic-step-title h2{font-size:20px}.cost-builder .clinic-step-title>span{flex-basis:30px;height:30px;font-size:14px}.cost-builder .clinic-form,.cost-builder .cost-resource,.cost-builder .cost-professional,.cost-builder .quote-summary .clinic-form{grid-template-columns:1fr;gap:16px}.cost-builder .cost-resource,.cost-builder .cost-professional{padding:16px 12px}.cost-builder .quote-resource>label:first-child,.cost-builder .quote-resource .btn{grid-column:auto}.cost-builder .quote-resource label{font-size:14px}.cost-resource-footer{gap:14px}.cost-resource-footer>.btn,.cost-resource-footer .cost-row-actions,.cost-resource-footer .cost-row-actions>.btn{width:100%}.cost-builder .cost-row-actions .btn{flex-shrink:1}.cost-builder .help,.cost-builder small{font-size:13px}.cost-builder .ops-detail{padding:12px}.cost-builder summary{min-height:44px;display:list-item;padding:10px 0}.cost-summary .clinic-submit{grid-template-columns:1fr}.cost-mobile-summary{padding:13px 16px;font-size:13px}.cost-mobile-summary strong{font-size:18px}.cost-summary .quote-totals>div{gap:12px}.cost-summary .quote-totals dd{font-size:14px;white-space:normal;text-align:right;flex-shrink:0;max-width:48%;overflow-wrap:anywhere}.catalog-item{grid-template-columns:1fr;gap:14px;padding:20px 0}.catalog-item-value{text-align:left;justify-content:start}.catalog-item-actions{grid-column:auto;width:100%}.catalog-item-actions .btn{flex:1;min-width:110px;min-height:44px}.catalog-item-main h3{font-size:17px}.cost-line-note{display:grid;gap:8px}.cost-summary:focus{outline:2px solid #518f6d;outline-offset:3px}}
.cost-revision{padding:16px 0;border-top:1px solid #dee7e0}.cost-revision>summary{display:flex;align-items:center;flex-wrap:wrap;gap:10px 16px;list-style:revert;cursor:pointer}.cost-revision>summary>strong{font-size:14px}.cost-revision>summary>span{font-size:15px;margin-left:auto;white-space:nowrap;color:#205438}.cost-revision h3{font-size:15px;margin:20px 0 10px}.cost-history-totals{display:grid;gap:12px;margin:18px 0}.cost-history-totals>div{display:flex;justify-content:space-between;flex-wrap:wrap;gap:6px 18px;font-size:13px}.cost-history-totals dt{color:#576f60}.cost-history-totals dd{margin:0;color:#234c36;font-weight:600}.cost-revision .help{overflow-wrap:anywhere}
.settings-room:not(.manual) [data-manual-only]{display:none}

.import-callout{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;border-left:4px solid var(--accent);padding:14px 16px}.import-callout .sub{display:block;margin-top:3px}.import-callout-actions{display:flex;gap:8px;flex-wrap:wrap}.attendance-hero-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.import-intro{border-top:4px solid #456f65}.import-summary{margin:6px 0 14px}.import-ok{color:#246848}.import-dup{color:#865500}.import-err{color:#9b3333}.import-table td{font-size:12px}.import-row-error{background:#fff8f8}.import-row-duplicate{background:#fffbf1}.import-msg-error{color:#9b3333;font-weight:700;font-size:11px;margin:2px 0}.import-msg-warn{color:#865500;font-size:11px;margin:2px 0}.import-confirm{margin-top:16px;display:grid;gap:10px}.import-confirm .confirm-duplicate{display:flex;gap:8px;align-items:center;font-size:13px;color:var(--ink)}.import-confirm-actions{display:flex;gap:10px;justify-content:flex-end;flex-wrap:wrap}.import-confirm-actions .btn[disabled]{opacity:.5;cursor:not-allowed}
.fix-input{width:100%;min-width:140px;min-height:32px;padding:5px 8px;font-size:12px}.fix-short{min-width:90px;max-width:120px}.fix-check{display:flex;gap:6px;align-items:center;font-size:11px;color:var(--muted);margin-top:4px}.fix-check input{min-height:auto;width:auto}.import-msg-note{color:#5e6871;font-size:11px;margin:2px 0}.import-row-error td{vertical-align:top}
/* Verificação em duas etapas */
.alert-warning{border-left:4px solid #b7791f;background:#fffaf0}.mfa-steps{padding-left:20px;display:grid;gap:12px;margin:14px 0}.mfa-card{max-width:760px}.mfa-qr{margin:12px auto;width:100%;max-width:280px}.mfa-qr svg{width:100%;height:auto;display:block;border:1px solid var(--line);border-radius:8px;background:#fff;shape-rendering:crispEdges}.mfa-step-title{display:flex;align-items:center;gap:10px;margin:22px 0 6px;font-size:16px}.mfa-step-title span{flex:none;width:26px;height:26px;border-radius:50%;background:var(--accent);color:#fff;display:grid;place-items:center;font-size:13px}.mfa-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px}.mfa-option{border:1px solid var(--line);border-radius:10px;padding:14px;display:grid;gap:10px;align-content:start;background:#fafcfc}.mfa-option .btn{text-align:center}.mfa-key{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.mfa-key code{word-break:normal;font-size:14px;padding:8px 10px;border:1px dashed var(--line);border-radius:8px;background:#fff}.mfa-secret{word-break:break-all;letter-spacing:.04em}.mfa-codes{list-style:none;padding:0;margin:14px 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.mfa-codes li{border:1px solid var(--line);border-radius:8px;padding:10px;text-align:center;font-size:16px;font-weight:800;letter-spacing:.06em;background:#fafcfc}
/* Termo de responsabilidade e aviso legal do login */
.login-legal-note{margin:14px 0 4px;padding:10px 12px;border-left:4px solid var(--accent);background:#f4faf8;border-radius:6px;font-size:12.5px;line-height:1.5;color:var(--ink)}.termo-card{max-width:760px}.termo-text{padding-left:20px;display:grid;gap:10px;margin:14px 0;line-height:1.55}form label.termo-check{display:flex;flex-direction:row;gap:10px;align-items:center;font-weight:700;font-size:14px;color:var(--ink);text-transform:none;letter-spacing:0}form label.termo-check input{width:22px;height:22px;min-height:0;flex:none;margin:0;padding:0}

/* Recibo manual: descritivo cabe na tela a 100% (sem rolagem lateral) + barra da planilha */
.compact-note{padding:10px 16px;font-size:.88rem}
.sheet-bar{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:4px 0 12px;padding:10px 12px;background:#f6faf8;border:1px solid #d9e7e1;border-radius:12px}
.sheet-bar-title{font-weight:800;font-size:.85rem;color:#1c4d42;margin-right:4px}
.sheet-bar select{width:auto;min-height:34px;padding:5px 8px;font-size:13px}
.sheet-import-btn{cursor:pointer}
.sheet-bar .form-message{flex-basis:100%;margin:0;min-height:0}
.sheet-bar .form-message:empty{display:none}
.sheet-bar .form-message ul{margin:6px 0 0;padding-left:18px}
.sicoob-table-wrap{container-type:inline-size;overflow:auto}
.sicoob-table{min-width:0;width:100%;table-layout:fixed}
.sicoob-table th{padding:8px 5px;font-size:.7rem;white-space:normal;line-height:1.2}
.sicoob-table td{padding:4px 3px}
.sicoob-table input,.sicoob-table input[name]{min-width:0;width:100%;padding:7px 6px;font-size:13px}
.sicoob-table .icon-btn{min-height:34px;width:30px;padding:0;font-size:18px}
.sicoob-table th:nth-child(1){width:114px}
.sicoob-table th:nth-child(2){width:19%}
.sicoob-table th:nth-child(3){width:10.5%}
.sicoob-table th:nth-child(4){width:10.5%}
.sicoob-table th:nth-child(5){width:88px}
.sicoob-table th:nth-child(6){width:100px}
.sicoob-table th:nth-child(7){width:66px}
.sicoob-table th:nth-child(8){width:80px}
.sicoob-table th:nth-child(9){width:90px}
.sicoob-table th:nth-child(10){width:36px}
.sicoob-table .money-input,.sicoob-table .sicoob-fee-percent{text-align:right}
/* Espaço menor: cada paciente vira um bloco de duas linhas, sem rolagem lateral */
@container (max-width:880px){
  .sicoob-table thead{display:none}
  .sicoob-table,.sicoob-table tbody{display:block}
  .sicoob-table tr{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:3px 6px;padding:6px 4px;border-bottom:1px solid #e0e7e4}
  .sicoob-table td{display:block;padding:0;border:0}
  .sicoob-table td[data-label]::before{content:attr(data-label);display:block;font-size:.68rem;color:#68736f;text-transform:uppercase;letter-spacing:.03em;margin:0 0 2px 2px}
  .sicoob-table td:nth-child(1){grid-column:span 2}
  .sicoob-table td:nth-child(2){grid-column:span 4}
  .sicoob-table td:nth-child(3),.sicoob-table td:nth-child(4){grid-column:span 3}
  .sicoob-table td:nth-child(5),.sicoob-table td:nth-child(7),.sicoob-table td:nth-child(8),.sicoob-table td:nth-child(9){grid-column:span 2}
  .sicoob-table td:nth-child(6){grid-column:span 3}
  .sicoob-table td.sicoob-remove{grid-column:span 1;align-self:end}
  .sicoob-table .icon-btn{width:100%}
}
@container (max-width:520px){
  .sicoob-table tr{grid-auto-flow:row dense}
  .sicoob-table td:nth-child(n){grid-column:span 6}
  .sicoob-table td:nth-child(2),.sicoob-table td:nth-child(3),.sicoob-table td:nth-child(4){grid-column:span 12}
  .sicoob-table td.sicoob-remove{grid-column:span 12}
}

/* Ficha anestésica: toque primeiro (campos de 44px), cabe no celular, tablet e notebook */
.ficha{display:flex;flex-direction:column;gap:12px}
.ficha-sync{display:flex;align-items:center;gap:10px;padding:10px 14px;position:sticky;top:0;z-index:6;font-size:.9rem}
.ficha-sync-dot{width:12px;height:12px;border-radius:50%;background:#2f8f5b;flex:none}
.ficha-sync-dot[data-state="warn"]{background:#c98a14}
.ficha-sync .btn{margin-left:auto}
.ficha-patient{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;flex-wrap:wrap}
.ficha-patient h2{margin:2px 0 4px}
.ficha-patient p{margin:2px 0}
.ficha-form{display:flex;flex-direction:column;gap:12px}
.ficha-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:8px}
.ficha-grid label,.ficha-times label{display:flex;flex-direction:column;gap:5px;font-size:.8rem;font-weight:700;color:#4a5550;min-width:0}
.ficha-grid .span-2{grid-column:span 2}.ficha-grid .span-3{grid-column:span 3}
.ficha-form input,.ficha-form select,.ficha-form textarea{min-height:44px;font-size:16px;width:100%;min-width:0}
.ficha-form input:disabled,.ficha-form select:disabled,.ficha-form textarea:disabled{background:#f3f5f4;color:#2c3531}
.ficha-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:12px 0}
.ficha-metrics>div,.ficha-readonly-field{background:#f5f8f7;border:1px solid #dfe7e3;border-radius:10px;padding:8px 12px;display:flex;flex-direction:column;gap:2px}
.ficha-metrics span,.ficha-readonly-field span{font-size:.72rem;color:#68736f;text-transform:uppercase;letter-spacing:.03em}
.ficha-times{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.ficha-time{display:flex;gap:6px}.ficha-time input{flex:1}
.ficha-time .btn{min-height:44px;padding:0 12px;font-size:12px}
.ficha-durations{display:flex;gap:20px;flex-wrap:wrap;margin:10px 0 4px;font-size:.9rem;color:#4a5550}
@media(max-width:1100px){.ficha-grid,.ficha-times{grid-template-columns:repeat(2,minmax(0,1fr))}.ficha-grid .span-3{grid-column:span 2}}
@media(max-width:640px){
  .ficha-grid,.ficha-times,.ficha-metrics{grid-template-columns:1fr 1fr}
  .ficha-grid .span-2,.ficha-grid .span-3,.ficha-times label{grid-column:1/-1}
  .ficha-sync{font-size:.82rem}
}
/* Ficha anestésica — fármacos, técnica e catálogo */
.ficha-drug-add{display:grid;grid-template-columns:2fr 1fr 1.2fr 1.6fr auto;gap:10px;align-items:end;margin-top:8px}
.ficha-drug-add label,.ficha-kit-add label{display:flex;flex-direction:column;gap:5px;font-size:.8rem;font-weight:700;color:#4a5550;min-width:0}
.ficha-drug-add .btn,.ficha-kit-add .btn{min-height:44px}
.ficha-dose{display:flex;align-items:center;gap:6px}.ficha-dose em{font-style:normal;color:#4a5550;min-width:32px}
.ficha-kit-add{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end;margin-top:10px}
.ficha-drug-list{margin-top:14px;display:flex;flex-direction:column;gap:8px}
.ficha-drug-group{border:1px solid #dfe7e3;border-radius:10px;padding:8px 10px;background:#fafcfb}
.ficha-drug-when{font-weight:800;color:#173d34;margin-bottom:4px}
.ficha-drug-row{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:4px 0;border-top:1px dashed #e3e9e6;font-size:.92rem}
.ficha-drug-row:first-of-type{border-top:0}
.ficha-drug-row.pending span::after{content:" · aguardando envio";color:#a06a00;font-size:.78rem}
.ficha-drug-row.voided{color:#8a929a;text-decoration:line-through;border:1px dashed #e0c9c4;border-radius:8px;padding:4px 8px}
.ficha-drug-row.voided small{text-decoration:none}
.ficha-consumption{margin-top:14px;padding-top:10px;border-top:1px solid #e0e6e3;font-size:.9rem;display:flex;flex-direction:column;gap:3px}
.ficha-repeat{padding:10px 12px;border-radius:10px;margin-top:8px;font-weight:700}
.catalog-kit-row{display:grid;grid-template-columns:2fr 1fr 1fr;gap:8px;margin-top:6px}
.catalog-item{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:10px 0;border-top:1px solid #e8ecea}
.catalog-item.muted,.catalog-table tr.muted{opacity:.55}
.catalog-edit[open]{flex-basis:100%}
.catalog-edit form,.catalog-new form{margin-top:10px;display:flex;flex-direction:column;gap:8px}
.catalog-edit label,.catalog-new label{display:flex;flex-direction:column;gap:5px;font-size:.8rem;font-weight:700;color:#4a5550}
.catalog-new{margin-top:12px}
@media(max-width:1100px){.ficha-drug-add{grid-template-columns:1fr 1fr}.ficha-drug-add .span-2{grid-column:1/-1}.ficha-drug-add .btn{grid-column:1/-1}}
@media(max-width:640px){.ficha-drug-add label{grid-column:1/-1}.catalog-item{flex-direction:column}}
/* Ficha anestésica — grade transoperatória, gráfico, linha do tempo e janela de registro */
.ficha-grid-wrap{margin-top:10px}
.ficha-chart-legend{display:flex;gap:16px;flex-wrap:wrap;font-size:.78rem;color:#4a5550;margin-bottom:6px}
.lg-pas{color:#b04a2e}.lg-pad{color:#2b6d8f}.lg-fc{color:#173d34}
.ficha-grid-scroll{overflow-x:auto;border:1px solid #dfe7e3;border-radius:10px;background:#fff;-webkit-overflow-scrolling:touch}
#grid-chart svg{display:block}
#grid-chart .gl{stroke:#e3e9e6;stroke-width:1}
#grid-chart .gt{font-size:10px;fill:#68736f}
#grid-chart .gm{font-size:11px;font-weight:700}
.ficha-vitals{border-collapse:collapse;table-layout:fixed}
.ficha-vitals th,.ficha-vitals td{border:1px solid #e3e9e6;height:32px;min-width:46px;width:46px;text-align:center;font-size:.8rem;padding:0 2px}
.ficha-vitals th.lbl{position:sticky;left:0;z-index:1;background:#f5f8f7;text-align:left;width:170px;min-width:170px;padding:0 8px;font-weight:700;color:#2c3531;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ficha-vitals th.slot{background:#eef4f1;font-size:.74rem;cursor:pointer;white-space:nowrap}
.ficha-vitals tr.grp th{background:#173d34;color:#fff;font-size:.7rem;text-transform:uppercase;letter-spacing:.04em;height:22px}
.ficha-vitals td.tap{cursor:pointer}.ficha-vitals td.tap:hover{background:#eef6f2}
.ficha-vitals td.cont{background:linear-gradient(#fff 45%,#8fb3a6 45%,#8fb3a6 55%,#fff 55%)}
.ficha-timeline{display:none;flex-direction:column;gap:8px;margin-top:10px}
.ficha-tl-item{display:flex;gap:12px;align-items:baseline;text-align:left;border:1px solid #dfe7e3;border-radius:10px;background:#fafcfb;padding:10px 12px;min-height:44px;font:inherit;color:inherit;cursor:pointer}
.ficha-tl-item strong{color:#173d34;min-width:44px}
.ficha-monitoring{margin-top:14px;padding-top:10px;border-top:1px solid #e0e6e3}
.ficha-checks{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:6px 14px;margin-top:6px}
.ficha-checks label{display:flex;align-items:center;gap:8px;min-height:36px;font-size:.9rem}
.ficha-checks input{width:22px;height:22px;min-height:0}
.ficha-dialog{border:0;border-radius:16px;padding:0;width:min(640px,96vw);max-height:92vh;box-shadow:0 20px 60px rgba(0,0,0,.25)}
.ficha-dialog::backdrop{background:rgba(19,35,31,.45)}
#slot-form{padding:16px 18px;display:flex;flex-direction:column;gap:10px}
.ficha-slot-time{display:flex;flex-direction:column;gap:5px;font-size:.8rem;font-weight:700}
.ficha-slot-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 10px;overflow-y:auto;max-height:60vh}
.ficha-slot-fields .slot-grp{grid-column:1/-1;margin-top:6px}
.ficha-slot-fields label{display:flex;flex-direction:column;gap:4px;font-size:.74rem;font-weight:700;color:#4a5550;min-width:0}
.ficha-slot-fields input,.ficha-slot-fields select,.ficha-slot-time input{min-height:44px;font-size:16px;width:100%}
.ficha-slot-fields .from-last{color:#8a929a;background:#f7f9f8}
@media(max-width:700px){.ficha-grid-wrap{display:none!important}.ficha-timeline{display:flex}.ficha-slot-fields{grid-template-columns:1fr 1fr}}
/* Ficha anestésica — checklist, eventos/incidentes, balanço hídrico e assinatura */
.ficha-checklist{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}
.ficha-checklist label{min-height:44px}
.ficha-event-add,.ficha-fluid-add{display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) auto;gap:10px;align-items:end;margin-top:10px}
.ficha-event-add label,.ficha-fluid-add label{display:flex;flex-direction:column;gap:5px;font-size:.8rem;font-weight:700;color:#4a5550;min-width:0}
.ficha-event-add .span-2,.ficha-fluid-add .span-2{grid-column:span 2}.ficha-event-add .span-4{grid-column:span 4}
.ficha-event-add.incident{padding-top:10px;border-top:1px dashed #e0c9c4}
.ficha-event-add .btn,.ficha-fluid-add .btn{min-height:44px}
.ficha-drug-row.incident span{color:#8f3030;font-weight:700}
.ficha-conduct{flex-basis:100%;color:#4a5550}
.ficha-drug-row{flex-wrap:wrap}
.ficha-balance{font-weight:800;color:#173d34;font-size:.92rem}
.signature-pad{width:100%;max-width:900px;aspect-ratio:3/1;border:2px dashed #b9c6c1;border-radius:12px;background:#fff;touch-action:none;display:block;margin:12px 0}
.signature-current{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:8px 0}
.signature-current img{max-height:70px;max-width:260px;border:1px solid #e0e7e4;border-radius:8px;background:#fff;padding:4px}
@media(max-width:1100px){.ficha-event-add,.ficha-fluid-add{grid-template-columns:1fr 1fr}.ficha-event-add .span-2,.ficha-event-add .span-4,.ficha-fluid-add .span-2,.ficha-event-add .btn,.ficha-fluid-add .btn{grid-column:1/-1}}
@media(max-width:640px){.ficha-event-add label,.ficha-fluid-add label{grid-column:1/-1}.ficha-checklist{grid-template-columns:1fr}}
/* Ficha anestésica — Fase 2: agenda do dia e passagem de caso */
.agenda{display:flex;flex-direction:column;gap:12px}
.agenda-filter{display:flex;flex-wrap:wrap;gap:10px;align-items:end}
.agenda-filter label{display:flex;flex-direction:column;gap:4px;font-size:.78rem;font-weight:700;color:#4a5550}
.agenda-filter input,.agenda-filter select{min-height:44px}
.agenda-days{display:flex;gap:6px;align-items:end;flex-wrap:wrap}
.agenda-days .btn,.agenda-filter .btn{min-height:44px;display:inline-flex;align-items:center}
.agenda-counts{display:flex;gap:6px 16px;flex-wrap:wrap;align-items:center;margin-top:10px;font-size:.85rem;color:#4a5550}
.agenda-dot{display:inline-block;width:11px;height:11px;border-radius:50%;margin-right:5px;vertical-align:-1px;background:#9aa3a0}
.agenda-dot.st-PASSADO_PARA_VOCE,.agenda-dot.st-PASSAGEM_PENDENTE{background:#e0a100}
.agenda-dot.st-EM_ANDAMENTO{background:#c0392b}
.agenda-dot.st-ENCERRADA{background:#2f8f5b}
.agenda-dot.blink{animation:agendaBlink 1.2s ease-in-out infinite}
@keyframes agendaBlink{50%{opacity:.25}}
@media(prefers-reduced-motion:reduce){.agenda-dot.blink{animation:none}}
.agenda-live{border-top:3px solid #c0392b}
.agenda-live-item{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:10px 0;border-top:1px solid #eee;color:inherit}
.agenda-elapsed{margin-left:auto;font-weight:800;color:#c0392b}
.agenda-list{display:flex;flex-direction:column;gap:8px}
.agenda-item{display:grid;grid-template-columns:64px minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px 14px;border:1px solid #dfe7e3;border-left:6px solid #9aa3a0;border-radius:12px;background:#fff;color:inherit;min-height:64px}
.agenda-item:hover{background:#f7faf9}
.agenda-item.st-PASSADO_PARA_VOCE,.agenda-item.st-PASSAGEM_PENDENTE{border-left-color:#e0a100;background:#fffaf0}
.agenda-item.st-EM_ANDAMENTO{border-left-color:#c0392b}
.agenda-item.st-ENCERRADA{border-left-color:#2f8f5b}
.agenda-time{font-size:1.15rem;font-weight:800;color:#173d34}
.agenda-main{display:flex;flex-direction:column;gap:2px;min-width:0}
.agenda-main small,.agenda-side small{color:#68736f;overflow:hidden;text-overflow:ellipsis}
.agenda-side{display:flex;flex-direction:column;align-items:flex-end;gap:4px;text-align:right}
.agenda-status{font-weight:700;font-size:.85rem;white-space:nowrap}
.ficha-handoff-banner{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;border-left:6px solid #e0a100}
.ficha-handoff{margin-top:14px;padding-top:10px;border-top:1px solid #e0e6e3}
.ficha-handoff-pending{display:flex;gap:10px;align-items:center;flex-wrap:wrap;background:#fffaf0;border:1px solid #f0dca8;border-radius:10px;padding:8px 12px;margin:8px 0;font-weight:700}
.ficha-handoff-history{margin:8px 0 0;padding-left:18px;color:#4a5550;font-size:.88rem}
@media(max-width:640px){.agenda-item{grid-template-columns:52px minmax(0,1fr)}.agenda-side{grid-column:1/-1;align-items:flex-start;text-align:left}}
.agenda-dot.st-A_ENCERRAR{background:#2b6d8f}.agenda-item.st-A_ENCERRAR{border-left-color:#2b6d8f}
/* Fase 3: avaliação pré-anestésica */
.ficha-subhead{margin:16px 0 4px;padding-top:10px;border-top:1px solid var(--line,#d8dedb)}
#ficha-apa .ficha-checks{margin-bottom:8px}
/* Fase 3: termo de consentimento */
.ficha-tcle .actionbar{margin:6px 0}
.tcle-hint{color:var(--muted);font-size:.78rem}
.ficha-tcle-dialog{width:min(820px,98vw)}
.tcle-form{padding:16px 18px;display:flex;flex-direction:column;gap:10px;max-height:90vh;overflow-y:auto}
.tcle-form>*{flex-shrink:0}
.tcle-text{border:1px solid var(--line);border-radius:10px;padding:10px 14px;background:#fbfcfb;font-size:.95rem;line-height:1.45;max-height:38vh;overflow-y:auto}
.tcle-text p{margin:0 0 8px}
.ficha-tcle-dialog .tcle-paper-only{display:none}
.ficha-tcle-dialog.paper .tcle-paper-only{display:flex}
.ficha-tcle-dialog.paper .tcle-digital{display:none}
/* Fase 3: recuperação pós-anestésica */
.ficha-rpa-dialog{width:min(760px,98vw)}
.rpa-aldrete{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}
.rpa-aldrete fieldset{border:1px solid var(--line);border-radius:10px;padding:6px 10px 8px;margin:0}
.rpa-aldrete legend{font-weight:700;font-size:.85rem;padding:0 4px}
.rpa-aldrete label{display:flex;gap:8px;align-items:flex-start;font-size:.88rem;padding:4px 0;min-height:32px}
.rpa-aldrete input{width:20px;height:20px;min-height:0;margin-top:1px}
.rpa-total{font-size:1.05rem}
.rpa-total strong{font-size:1.3rem}
.ficha-rpa-dialog .ficha-slot-fields{max-height:none}
/* Fase 4: painel da ficha anestésica */
.painel-kpis{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px;margin-bottom:14px}
.painel-kpis .kpi{display:flex;flex-direction:column;gap:4px;padding:14px 16px}
.painel-kpis .kpi span{font-size:.8rem;color:var(--muted);font-weight:700}
.painel-kpis .kpi strong{font-size:1.7rem;color:var(--ink)}
.painel-kpis .kpi small{color:var(--muted)}
.painel-cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:14px}
.painel-bars{display:flex;flex-direction:column;gap:6px}
.painel-bar{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(80px,1fr) 44px;gap:10px;align-items:center;font-size:.9rem}
.painel-bar progress{width:100%;height:12px;accent-color:#2e7662}
.painel-bar.low progress{accent-color:#b04a2e}
.painel-bar.low strong{color:#b04a2e}
.painel-bar strong{text-align:right}
.painel-rank{margin:0;padding-left:20px}
.painel-rank li{display:flex;justify-content:space-between;gap:10px;padding:3px 0;border-bottom:1px dashed #e3e9e6}
.painel-chips{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0 10px}
.painel-item{display:flex;gap:12px;align-items:flex-start;padding:8px 0;border-top:1px solid #e6ece8;color:inherit;text-decoration:none}
.painel-item strong{min-width:52px;color:#215c50}
.painel-item span{display:flex;flex-direction:column}
.painel-item small{color:var(--muted)}
/* Fase 5: monitor da sala na ficha */
.ficha-monitor{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding:8px 12px;margin:6px 0 10px;border:1px solid var(--line);border-radius:10px;background:#f7faf8}
.ficha-monitor-status{display:flex;align-items:center;gap:8px;font-size:.9rem}
.ficha-monitor-actions{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.ficha-monitor-actions select{max-width:280px}
.ficha-monitor-dialog{width:min(760px,98vw)}
.ficha-monitor-table{border-collapse:collapse;width:100%;font-size:.9rem}
.ficha-monitor-table th,.ficha-monitor-table td{padding:4px 8px;border-bottom:1px solid #e3e9e6;text-align:center}
.ficha-monitor-table input{width:20px;height:20px;min-height:0}
/* 3.15.1: menu no celular (todos os perfis) — o menu inteiro rola e o "Sair" fica no alto */
.menu-top{display:none}
@media(max-width:1100px){
  .sidebar{overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding-bottom:calc(18px + env(safe-area-inset-bottom))}
  .sidebar .sidebar-nav{overflow:visible;flex:0 0 auto;min-height:auto}
  .sidebar .menu-top{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:0 0 14px;flex-shrink:0}
  .sidebar .menu-top .menu-close{margin:0}
  .sidebar .menu-logout{display:flex;align-items:center;min-height:44px;padding:10px 14px;border-radius:8px;background:#2a4a40;color:#fff;font-size:13px;font-weight:650}
  body.menu-open{overflow:hidden}
}
/* 3.15.2: documento (PDF) dentro do sistema, com Voltar */
.doc-viewer{display:flex;flex-direction:column;gap:10px}
.doc-bar{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;position:sticky;top:0;z-index:5}
.doc-frame{width:100%;height:calc(100dvh - 220px);min-height:420px;border:1px solid var(--line);border-radius:10px;background:#fff}
.doc-hint{font-size:.85rem}
@media(max-width:760px){.doc-frame{height:calc(100dvh - 250px)}}
/* 3.15.5: encerramento guiado */
.close-fields .req{font-size:.7rem;font-weight:700;color:#b04a2e;text-transform:uppercase;letter-spacing:.03em;margin-left:4px}
.close-missing{margin:12px 0}
.close-title{font-weight:700;margin:0 0 6px}
.close-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}
.close-item{width:100%;text-align:left;border:1px solid #e0c9c4;background:#fff7f5;color:#8f3030;border-radius:10px;padding:10px 12px;font:inherit;font-weight:600;cursor:pointer;min-height:44px}
.close-item::before{content:"\2192  ";}
.close-ready{margin:0;padding:10px 12px;border-radius:10px;background:#edf5ee;color:#1e5f3c;font-weight:700}
.close-actions .btn{min-width:200px}
.ficha-attention{box-shadow:0 0 0 3px #e7a33e;transition:box-shadow .3s}
.ficha-attention-field{outline:3px solid #e7a33e;outline-offset:2px}
.btn-muted{opacity:.75}
/* 3.16.0: telas de usuário (conta master, modelos, grupos) */
.perm-head{flex-wrap:wrap;gap:10px}
.perm-summary{margin:4px 0 0;font-weight:700;color:#215c50}
.perm-presets{display:flex;flex-direction:column;gap:4px;font-size:.8rem;font-weight:700;min-width:240px}
.perm-note{margin:6px 0 10px;padding:10px 12px;border-radius:10px;background:#fff7e8;border:1px solid #f0d9a8;color:#6d4a00;font-size:.9rem}
.perm-group-head{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:4px}
.perm-group-count{font-size:.8rem;color:var(--muted)}
.perm-group-tools{margin-left:auto;display:flex;gap:4px}
.perm-group-tools .btn{min-height:30px;padding:4px 9px;font-size:.78rem}
.perm-extended{font-style:normal;font-size:.7rem;font-weight:700;color:#b04a2e;text-transform:uppercase;letter-spacing:.03em}
.master-row{border-left:4px solid #1c5f54}
/* 3.16.3: celular — campos lado a lado e barra de salvar não passam da borda da tela */
.mobile-two-col>*{min-width:0}.mobile-two-col input,.mobile-two-col select{min-width:0;width:100%}
.mobile-sticky-save{grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr)}.mobile-sticky-save .btn{min-width:0;white-space:normal;padding-left:10px;padding-right:10px}
.quote-payer{border:1px solid var(--line);border-radius:12px;padding:12px 14px;margin:0;display:grid;gap:8px}.quote-payer legend{font-weight:700;padding:0 6px}
.clinic-form label.quote-payer-toggle,.quote-payer label.quote-payer-toggle{display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:10px;font-weight:600;text-align:left}.quote-payer-toggle input{width:20px;height:20px;min-height:0;margin:0;flex:0 0 auto}
.quote-payer-fields[hidden]{display:none}
/* 3.16.9: CRM e UF lado a lado no cadastro de anestesistas */
.crm-cell{display:flex;gap:6px;align-items:center}.crm-cell input{width:110px;min-width:0}.crm-cell select{width:76px;min-width:0}

/* 3.16.10: lista com busca (search_select.js) */
.ss-wrap{position:relative;width:100%}.ss-hidden{display:none!important}.ss-input{width:100%}.ss-list{position:absolute;left:0;right:0;top:calc(100% + 4px);z-index:40;max-height:280px;overflow:auto;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:0 10px 28px rgba(20,35,31,.14)}.ss-item{padding:11px 12px;cursor:pointer;font-size:14px;font-weight:500;color:#1d2b27;border-bottom:1px solid #f0f3f2}.ss-item.active,.ss-item:hover{background:#eef5f2}.ss-item.selected{font-weight:700}.ss-item.ss-new{color:var(--accent);font-weight:700}.ss-empty{padding:11px 12px;color:var(--muted);font-size:13px}.doc-share-msg{margin:8px 0 0}
.doc-bar button.btn{font-size:inherit;font-family:inherit}

/* 3.17.0: pesquisa de paciente no atendimento */
.patient-picker{position:relative}.patient-results{top:auto;margin-top:-6px}.patient-chip{display:flex;align-items:center;justify-content:space-between;gap:10px;background:#eef5f2;border:1px solid #cfe0d9;border-radius:10px;padding:8px 12px;font-size:13px;color:#1d4b40;font-weight:600;margin:-4px 0 6px}.patient-chip[hidden],.patient-new[hidden]{display:none}.patient-new{border:1px dashed var(--line);border-radius:10px;padding:8px 12px;margin:4px 0 8px}.patient-new summary{cursor:pointer;font-weight:700;color:var(--accent);font-size:14px}.patient-new[open]{display:grid;gap:10px}.ss-item small{display:block;font-weight:400;color:var(--muted);font-size:12px}

/* 3.17.1: gráfico de PA/FC com toque */
.chart-tools{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:4px 0 8px}.chart-tools-hint{font-size:.8rem;color:var(--muted);margin-right:4px}.chart-mode{border:1px solid #cfdcd6;background:#fff;border-radius:999px;padding:7px 12px;font-weight:700;font-size:.82rem;cursor:pointer}.chart-mode.lg-pas{color:#b04a2e}.chart-mode.lg-pad{color:#2b6d8f}.chart-mode.lg-fc{color:#173d34}.chart-mode.active{background:#173d34;color:#fff;border-color:#173d34}.chart-edit{display:flex;flex-wrap:wrap;align-items:center;gap:6px;background:#fff8ec;border:1px solid #f0d9a8;border-radius:10px;padding:8px 10px;margin:0 0 8px}.chart-edit[hidden]{display:none}.chart-edit-steps{display:inline-flex;gap:4px}#grid-chart svg.chart-touch{cursor:crosshair;touch-action:none;-webkit-user-select:none;user-select:none}#grid-chart .cb.drag,#grid-chart .cb.odd.drag{fill:#fdebc4}#grid-chart .cbubble text{font-size:14px;font-weight:800}#grid-chart .cbubble{pointer-events:none}#grid-chart .cb{fill:transparent}#grid-chart .cb.odd{fill:#f7faf9}#grid-chart .cb.sel{fill:#fff3d6}#grid-chart .gm{font-size:13px}#grid-chart .gm.sel{font-size:18px}@media(max-width:700px){.ficha-grid-wrap:not([hidden]){display:block!important}.chart-mode{padding:9px 12px}}

/* 3.17.2: bombas de infusão */
.ficha-infusions{margin:14px 0;padding-top:10px;border-top:1px solid #e3e9e6}.ficha-infusions-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}.ficha-infusion-list{display:grid;gap:10px}.ficha-infusion{border:1px solid #dfe7e3;border-left:4px solid #2b6d8f;border-radius:10px;padding:10px 12px;display:grid;gap:4px;background:#fff}.ficha-infusion.running{border-left-color:#1d8a5b}.ficha-infusion.stopped{border-left-color:#9aa6a2;background:#fafcfb}.ficha-infusion.voided{opacity:.6;text-decoration:line-through}.ficha-infusion small{color:var(--muted)}.ficha-infusion-steps{display:grid;gap:3px;font-size:.85rem}.ficha-infusion-steps>div{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.ficha-infusion-actions{display:grid;gap:6px;margin-top:6px}.ficha-infusion-row{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.ficha-infusion-row input{width:auto;min-width:0;flex:1 1 120px}.ficha-infusion-row em{font-style:normal;color:var(--muted);font-size:.8rem}.ficha-infusion-dialog .tci-only[hidden]{display:none}

/* 3.17.3: tela central do caso */
.ficha-views{display:flex;gap:6px;flex-wrap:wrap;margin:10px 0;position:sticky;top:0;z-index:15;background:var(--bg,#f4f6f5);padding:6px 0}.ficha-views[hidden]{display:none}.ficha-views button{flex:1 1 auto;border:1px solid #cfdcd6;background:#fff;border-radius:999px;padding:10px 14px;font-weight:700;color:#2c3531;cursor:pointer}.ficha-views button.active{background:#173d34;color:#fff;border-color:#173d34}.ficha[data-view='hub'] #ficha-form{display:none!important}.ficha[data-view='apa'] #ficha-form>section[data-views]:not([data-views~='apa']){display:none}.ficha[data-view='trans'] #ficha-form>section[data-views]:not([data-views~='trans']){display:none}.ficha-hub[hidden]{display:none}.hub-cards{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px}.hub-card{display:grid;justify-items:start;gap:6px;text-align:left;cursor:pointer;padding:18px;border:2px solid #dfe7e3;min-height:150px;font:inherit;color:inherit;background:#fff}.hub-card:hover{border-color:#8fb3a6}.hub-card strong{font-size:1.12rem}.hub-icon{font-size:1.8rem}.hub-status{font-weight:700;border-radius:999px;padding:4px 10px;font-size:.85rem;background:#eef1f0;color:#46534f}.hub-card.doing .hub-status{background:#fff3d6;color:#8a5a00}.hub-card.done .hub-status{background:#dff3e8;color:#14613e}.hub-card.done{border-color:#a9d8bf}.hub-card.doing{border-color:#f0d9a8}.hub-card small{color:var(--muted)}.hub-summary{display:grid;gap:10px}.hub-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.hub-grid div{background:#f7faf9;border:1px solid #e6ece9;border-radius:10px;padding:8px 10px;display:grid;gap:2px}.hub-grid div.wide{grid-column:1/-1}.hub-grid span{font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.hub-grid strong{font-size:.95rem}.hub-flags{display:flex;flex-wrap:wrap;gap:6px}.hub-flag{border-radius:999px;padding:5px 10px;font-size:.82rem;font-weight:700;background:#eef1f0;color:#46534f}.hub-flag.danger{background:#fde7e3;color:#a3321c}.hub-flag.warn{background:#fff3d6;color:#8a5a00}.hub-flag.ok{background:#dff3e8;color:#14613e}.hub-flag.info{background:#e3f0f7;color:#1f5f80}.hub-docs{display:flex;flex-wrap:wrap;gap:6px}.hub-docs[hidden]{display:none}@media(max-width:700px){.hub-cards{grid-template-columns:1fr}.hub-card{min-height:0}.hub-grid{grid-template-columns:1fr 1fr}.ficha-views{flex-wrap:nowrap}.ficha-views button{flex:1 1 0;min-width:0;padding:9px 4px;font-size:.8rem;white-space:nowrap}}

/* 3.17.4: agendamento completo */
.extra-surgeons{display:grid;gap:8px;margin:2px 0 10px}.extra-surgeons-title{font-size:.86rem;font-weight:600;color:#3c5a4f}.extra-surgeon{display:flex;gap:6px;align-items:flex-start}.extra-surgeon .ss-wrap{flex:1 1 auto;min-width:0}.schedule-extra-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.grid-pref-form{display:grid;gap:12px}.grid-pref-form fieldset{border:1px solid #e3e9e6;border-radius:10px;padding:8px 12px;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:6px}.grid-pref-form legend{font-weight:700;padding:0 6px}.grid-pref{display:flex;gap:8px;align-items:center;font-size:.9rem}.grid-pref input{width:auto;min-height:0}.grid-pref em{color:var(--muted);font-size:.78rem}@media(max-width:700px){.schedule-extra-row{grid-template-columns:1fr}}

/* 3.17.5: grade completa também no celular (desliza para os lados; nome da linha fixo à esquerda) */
@media(max-width:700px){.ficha-vitals th.lbl{width:112px;min-width:112px;max-width:112px;padding:0 6px;font-size:.68rem;line-height:1.15;white-space:normal}.ficha-vitals th,.ficha-vitals td{height:38px;min-width:48px;width:48px;font-size:.8rem}.ficha-vitals tr.grp th{font-size:.62rem;height:22px}.ficha-vitals tr.grp th.lbl{width:auto;max-width:none}.ficha-grid-scroll{margin:0 -6px;border-radius:8px}.ficha-timeline{display:none}}
/* 3.17.6: insumos em linha única (nome · quantidade · de quem é · subtotal · ×) e coluna de custo com rolagem própria */
.supply-section{container-type:inline-size}
.supply-head,.cost-builder .cost-resource.supply-row{display:grid;grid-template-columns:minmax(0,1fr) 110px 114px 92px 34px;gap:4px 10px;align-items:center}
.supply-head{margin:16px 0 0;padding:0 0 6px;font-size:12px;font-weight:650;letter-spacing:.03em;text-transform:uppercase;color:#5f7a6c;border-bottom:1px solid #dce7df}
.supply-head[hidden]{display:none}
.supply-head span:nth-child(4){text-align:right}
.cost-builder .quote-resource-list[data-quote-items]{gap:0;margin:0 0 14px}
.cost-builder .cost-resource.supply-row{padding:9px 0;background:none;border:0;border-bottom:1px solid #e6eee8;border-radius:0}
.supply-row label>span:first-child{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.cost-builder .supply-row label{gap:4px;font-size:12px;font-weight:600;color:#5f7a6c}
.cost-builder .supply-row input,.cost-builder .supply-row select,.cost-builder .supply-row .supply-combobox input{min-height:40px;padding:7px 10px}
.supply-row .supply-combobox{grid-column:auto}
.supply-row .supply-results{position:absolute;left:0;top:100%;z-index:20;margin-top:4px;width:max(100%,400px);max-width:min(520px,calc(100vw - 32px))}
.supply-row .supply-qty{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;column-gap:6px}
.supply-row .supply-qty>span:first-child{grid-column:1/-1}
.supply-unit{font-size:12px;color:#647c6b;max-width:52px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.supply-subtotal{text-align:right;font-size:14px;font-variant-numeric:tabular-nums;color:#234b37;white-space:nowrap}
.cost-builder .supply-row .supply-remove{width:34px;height:34px;min-height:34px;padding:0;border-radius:50%;font-size:19px;line-height:1;background:#fff;border:1px solid #d6e2da;color:#8a4b3c;grid-column:auto}
.cost-builder .supply-row .supply-remove:hover{background:#fbeeea;border-color:#e4b4a6}
.supply-meta{grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;font-size:12.5px;line-height:1.4;color:#647c6b}
.supply-meta[data-status=warning]{color:#7a5410}
.cost-builder .supply-row .supply-receive{min-height:0;width:auto;padding:2px 10px;font-size:12.5px;grid-column:auto}
@container (max-width:520px){
  .supply-head{display:none}
  .cost-builder .cost-resource.supply-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 80px 34px;padding:12px 0}
  .supply-row .supply-results{width:100%}
  .supply-row .supply-combobox{grid-column:1/-1}
  .supply-row .supply-qty>span:first-child,.supply-row .supply-owner>span:first-child{position:static;width:auto;height:auto;overflow:visible;clip:auto}
  .supply-subtotal{align-self:end;padding-bottom:10px}
  .cost-builder .supply-row .supply-remove{align-self:end;margin-bottom:3px}
}
@media(min-width:1201px){.cost-builder .cost-summary{max-height:calc(100vh - 32px);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}}
/* 3.18.0: Movimentações — extrato por dia com saldo inicial e final */
.mov-flash{margin:0 0 14px}
.mov-toolbar{display:grid;gap:14px}
.mov-filters{display:grid;grid-template-columns:minmax(150px,1.2fr) 150px 150px minmax(180px,1.6fr) minmax(150px,1fr) 160px auto;gap:10px 12px;align-items:end}
.mov-filters label{display:flex;flex-direction:column;gap:5px;font-size:12px;font-weight:600;color:#4f695d;min-width:0}
.mov-filters input,.mov-filters select{width:100%;min-width:0;box-sizing:border-box}
.mov-filter-actions{display:flex;gap:10px;align-items:center}
.mov-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center;padding-top:12px;border-top:1px solid #e3ebe6}
.mov-actions .text-link{margin-left:auto;font-size:14px}
.mov-out-btn{background:#8a3b2e;border-color:#8a3b2e}
.mov-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:16px 0}
.mov-summary>div{background:#fff;border:1px solid #dfe8e2;border-radius:12px;padding:12px 16px;display:flex;flex-direction:column;gap:4px;min-width:0}
.mov-summary span{font-size:12px;color:#5f7a6c}
.mov-summary strong{font-size:21px;font-variant-numeric:tabular-nums;color:#173b2c}
.mov-summary .in strong{color:#1d6b45}.mov-summary .out strong{color:#9a3b2b}
.mov-note{display:block;margin:0 0 14px}
.card.mov-day{padding:0;overflow:hidden;margin-bottom:14px}
.mov-day-head{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap;padding:11px 18px;background:#f1f6f3;border-bottom:1px solid #dfe8e2}
.mov-day-head>div{display:flex;gap:12px;align-items:baseline;flex-wrap:wrap}
.mov-day-head span{font-size:13px;color:#5f7a6c}
.mov-day-head strong{font-variant-numeric:tabular-nums}
.mov-day-close strong{font-size:16px;color:#173b2c}
.mov-list{list-style:none;margin:0;padding:0}
.mov-item{display:grid;grid-template-columns:minmax(0,1fr) 140px 130px minmax(120px,auto);gap:6px 14px;align-items:center;padding:10px 18px;border-top:1px solid #edf2ef}
.mov-item:first-child{border-top:0}
.mov-desc{display:flex;flex-direction:column;gap:2px;min-width:0}
.mov-desc strong{font-weight:600;overflow-wrap:anywhere}
.mov-desc small{font-size:12.5px;color:#647c6b;overflow-wrap:anywhere}
.mov-amount{text-align:right;font-weight:650;font-variant-numeric:tabular-nums;white-space:nowrap}
.mov-amount.in{color:#1d6b45}.mov-amount.out{color:#9a3b2b}
.mov-balance{text-align:right;font-size:13px;color:#5f7a6c;font-variant-numeric:tabular-nums;white-space:nowrap}
.mov-row-actions{display:flex;gap:10px;align-items:center;justify-content:flex-end;flex-wrap:wrap;font-size:13px}
.mov-ok{font-size:12px;font-weight:650;color:#1d6b45;background:#e3f2ea;border-radius:6px;padding:2px 7px;white-space:nowrap}
.mov-row-actions>a.text-link,.mov-cancel summary{display:inline-flex;align-items:center;min-height:30px;padding:0;margin:0;font-size:13px;font-weight:600;line-height:1.2;vertical-align:middle}
.mov-cancel{display:inline-flex;flex-direction:column}
.mov-cancel summary{cursor:pointer;color:#9a3b2b;list-style:none;line-height:1.5}
.mov-cancel summary::-webkit-details-marker{display:none}
.mov-cancel[open]{flex-basis:100%}
.mov-cancel form{display:flex;gap:8px;margin-top:8px}
.mov-cancel input{flex:1;min-width:0}
.mov-hidden{padding:8px 18px;font-size:12.5px;color:#7a8c82;border-top:1px dashed #e3ebe6}
.mov-empty{text-align:center;padding:34px 20px;color:#4f695d}
.mov-empty p{margin:8px 0 0}
.mov-dialog{width:min(620px,calc(100vw - 24px));max-height:calc(100vh - 24px);border:0;border-radius:14px;padding:22px;box-shadow:0 20px 50px #10241b40}
.mov-dialog::backdrop{background:#0f1f1880}
.mov-dialog h2{margin:0 0 14px;font-size:21px}
.mov-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px}
.mov-form label{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:600;color:#3c5a4f;min-width:0}
.mov-form input,.mov-form select{width:100%;box-sizing:border-box;min-width:0;font-size:16px}
.mov-form small{font-weight:400;color:#6a8073}
.mov-wide,.mov-switch{grid-column:1/-1}
.mov-switch{display:grid;grid-template-columns:1fr 1fr;border:1px solid #cfdcd4;border-radius:10px;overflow:hidden}
.mov-switch button{border:0;background:#fff;padding:11px;font-size:15px;font-weight:650;color:#4f695d;cursor:pointer}
.mov-switch button[data-mov-switch=IN][aria-pressed=true]{background:#1d6b45;color:#fff}
.mov-switch button[data-mov-switch=OUT][aria-pressed=true]{background:#9a3b2b;color:#fff}
.mov-extra summary{cursor:pointer;font-size:14px;font-weight:600;color:#245c45}
.mov-extra-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px;margin-top:12px}
.mov-error{grid-column:1/-1;margin:0;color:#9a3b2b;font-size:14px;font-weight:600}
.mov-form-actions{display:flex;gap:10px;flex-wrap:wrap}
.mov-edit-card{max-width:760px}
@media(max-width:1300px){.mov-filters{grid-template-columns:repeat(3,minmax(0,1fr))}.mov-search{grid-column:span 2}}
@media(max-width:760px){
  .mov-filters{grid-template-columns:1fr 1fr}.mov-filters label:first-child,.mov-search,.mov-filter-actions{grid-column:1/-1}
  .mov-actions .btn{flex:1 1 140px}.mov-actions .text-link{margin-left:0}
  .mov-summary{grid-template-columns:1fr 1fr}.mov-summary strong{font-size:17px}
  .mov-day-head{padding:10px 14px}
  .mov-item{grid-template-columns:minmax(0,1fr) auto;padding:10px 14px}
  .mov-item{grid-template-areas:'desc amount' 'actions balance'}.mov-desc{grid-area:desc}.mov-amount{grid-area:amount}.mov-balance{grid-area:balance}.mov-row-actions{grid-area:actions;justify-content:flex-start}
  .mov-form,.mov-extra-grid{grid-template-columns:1fr}
  .mov-dialog{padding:18px 16px}
}
/* 3.18.1: previstos, recorrência e A pagar e a receber */
.mov-sit button[aria-pressed=true]{background:#245c45;color:#fff}
.mov-repeat{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px 16px;border:1px dashed #cfdcd4;border-radius:10px;padding:12px;margin:0;min-width:0}
.mov-repeat .help{grid-column:1/-1;margin:0}
.mov-repeat label[hidden]{display:none}
.mov-scope{border:1px solid #e1c98c;background:#fffaf0;border-radius:10px;padding:10px 12px;display:grid;gap:6px;margin:0}
.mov-scope legend{font-weight:650;font-size:13px;padding:0 4px}
.mov-scope label{flex-direction:row!important;align-items:center;gap:8px!important;font-weight:500!important}
.mov-scope input{width:auto!important}
.mov-rec{display:inline-block;font-size:11.5px;font-weight:650;color:#245c45;background:#e6f1eb;border-radius:6px;padding:1px 7px;margin-left:4px;vertical-align:2px;white-space:nowrap}
.plan-filters{grid-template-columns:minmax(150px,1.2fr) 170px 190px minmax(180px,1.6fr) auto}
.plan-summary .late{border-color:#e4b4a6;background:#fff6f3}
.plan-summary .late strong{color:#9a3b2b}
.plan-summary small{font-size:12px;color:#647c6b}
.mov-day.plan-late .mov-day-head{background:#fbeee9}
.plan-late-tag{font-size:11.5px;font-weight:700;color:#fff!important;background:#9a3b2b;border-radius:6px;padding:2px 8px}
.plan-settle summary{cursor:pointer;color:#1d6b45;font-weight:700;list-style:none;display:inline-flex;align-items:center;min-height:30px;font-size:13px}
.plan-settle summary::-webkit-details-marker{display:none}
.plan-settle[open]{flex-basis:100%;order:-1}
.plan-settle form{display:grid;grid-template-columns:150px 130px minmax(140px,1fr) auto;gap:8px;align-items:end;margin:6px 0 4px;padding:10px;background:#f1f6f3;border-radius:10px}
.plan-settle label{display:flex;flex-direction:column;gap:4px;font-size:12px;font-weight:600;color:#4f695d}
.plan-settle input,.plan-settle select{width:100%;min-width:0;box-sizing:border-box}
.mov-cancel select{min-width:0}
.mov-item:has(details[open]) .mov-row-actions{grid-area:auto;grid-column:1/-1;justify-content:flex-start}
@media(max-width:1300px){.plan-filters{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.plan-filters{grid-template-columns:1fr 1fr}.plan-settle form{grid-template-columns:1fr 1fr}.plan-settle form label:nth-of-type(3),.plan-settle form .btn{grid-column:1/-1}.mov-cancel form{flex-wrap:wrap}}
/* 3.18.2: importar extrato (OFX/CSV) em Movimentações */
.imp-upload{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px 28px;align-items:start}
.imp-form{display:grid;gap:14px}
.imp-form label{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:600;color:#3c5a4f}
.imp-form input,.imp-form select{width:100%;box-sizing:border-box;min-width:0}
.imp-steps{margin:0;padding-left:20px;font-size:14px;line-height:1.6;color:#4f695d}
.imp-steps li{margin-bottom:6px}
.imp-h2{font-size:18px;margin:0 0 12px}
.imp-recent,.imp-rules{list-style:none;margin:0;padding:0}
.imp-recent li,.imp-rules li{display:flex;flex-wrap:wrap;gap:4px 12px;align-items:center;justify-content:space-between;padding:10px 0;border-top:1px solid #edf2ef;font-size:14px}
.imp-recent li span{flex:1 1 260px;color:#647c6b;font-size:13px}
.imp-tag{font-size:11.5px;border-radius:6px;padding:2px 8px}
.imp-tag.warn{background:#fff4d5;color:#725313}.imp-tag.ok{background:#e3f2ea;color:#1d6b45}
.imp-head{display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;align-items:center}
.imp-head-actions{display:flex;gap:12px;align-items:center}
.imp-check{display:block;border-radius:12px;padding:12px 16px;margin:0 0 14px;font-size:14px;line-height:1.5}
.imp-check.ok{background:#e3f2ea;color:#165b42;border:1px solid #bfdcca}
.imp-check.warn{background:#fff4d5;color:#6a4c0e;border:1px solid #e8cb82}
.card.imp-review{padding:0;overflow:hidden}
.imp-bar{display:flex;flex-wrap:wrap;gap:6px 14px;align-items:baseline;padding:12px 18px;background:#f1f6f3;border-bottom:1px solid #dfe8e2}
.imp-bar .help{margin:0}
.imp-lines{list-style:none;margin:0;padding:0}
.imp-line{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:8px 18px;align-items:center;padding:10px 18px;border-top:1px solid #edf2ef}
.imp-line:first-child{border-top:0}
.imp-line.needs-category{background:#fffaf0}
.imp-info{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:10px;align-items:center;min-width:0}
.imp-date{font-size:13px;font-weight:650;color:#4f695d;font-variant-numeric:tabular-nums}
.imp-desc{display:flex;flex-direction:column;gap:2px;min-width:0}
.imp-desc strong{font-weight:600;font-size:14px;overflow-wrap:anywhere}
.imp-desc small{font-size:12px;color:#647c6b}
.imp-choice{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:6px 8px;min-width:0}
.imp-choice select{width:100%;min-width:0;box-sizing:border-box;font-size:14px}
.imp-choice select[hidden]{display:none}
.imp-remember{grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:center;gap:6px;font-size:12.5px;color:#4f695d}
.imp-remember[hidden]{display:none}
.imp-remember input[type=checkbox]{width:auto}
.imp-remember input[name^=padrao_]{flex:1 1 140px;min-width:0;font-size:13px;padding:4px 8px}
.imp-submit{display:flex;justify-content:flex-end;padding:12px 18px;border-top:1px solid #dfe8e2;background:#fafcfb}
.imp-review .mov-error{padding:0 18px}
.imp-done summary{cursor:pointer;font-weight:650}
.imp-line.done{grid-template-columns:1fr}
@media(max-width:900px){.imp-upload{grid-template-columns:1fr}.imp-line{grid-template-columns:1fr;padding:10px 14px}.imp-info{grid-template-columns:40px minmax(0,1fr);row-gap:2px}.imp-info .mov-amount{grid-column:2;text-align:left}.imp-choice{grid-template-columns:1fr}.imp-submit .btn{width:100%}}
/* 3.18.3: indicadores, DRE e fluxo de caixa */
.fin-toolbar{display:flex;flex-wrap:wrap;gap:12px 18px;align-items:center;justify-content:space-between}
.fin-month-nav,.fin-month-form,.fin-links{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.fin-month-form input{min-width:0}
.fin-links .text-link{font-size:14px}
.fin-regime{display:inline-flex;border:1px solid #cfdcd4;border-radius:10px;overflow:hidden}
.fin-regime a{padding:8px 14px;font-size:14px;font-weight:650;color:#4f695d;text-decoration:none;background:#fff}
.fin-regime a.active{background:#245c45;color:#fff}
.fin-filters{display:flex;flex-wrap:wrap;gap:10px 12px;align-items:end}
.fin-filters label{display:flex;flex-direction:column;gap:5px;font-size:12px;font-weight:600;color:#4f695d;min-width:0}
.fin-filters select,.fin-filters input{min-width:0}
.fin-h2{font-size:17px;margin:0 0 12px}
.fin-foot{margin-top:6px}
.fin-neg{color:#9a3b2b}
.fin-zero{color:#9fb0a6}
.fin-flag{font-size:11px;font-weight:650;color:#7a5410;background:#fff4d5;border-radius:6px;padding:1px 6px;white-space:nowrap}
.kpi-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px;margin:16px 0}
.kpi{background:#fff;border:1px solid #dfe8e2;border-left:5px solid #b9c7bf;border-radius:12px;padding:14px 16px;display:flex;flex-direction:column;gap:4px;min-width:0}
.kpi-good{border-left-color:#2f8a5b}.kpi-warn{border-left-color:#d9a326}.kpi-bad{border-left-color:#b5452f}
.kpi-label{font-size:13px;font-weight:650;color:#4f695d}
.kpi-value{font-size:24px;font-variant-numeric:tabular-nums;color:#173b2c;letter-spacing:-.02em}
.kpi-bad .kpi-value{color:#9a3b2b}
.kpi-change{font-size:12.5px;font-weight:650;color:#5f7a6c}
.kpi-change.up{color:#1d6b45}.kpi-change.down{color:#9a3b2b}
.kpi[data-lower-better] .kpi-change.up{color:#9a3b2b}
.kpi[data-lower-better] .kpi-change.down{color:#1d6b45}
.kpi-extra{font-size:13px;font-weight:600;color:#245c45}
.kpi-hint{margin:4px 0 0;font-size:12.5px;line-height:1.45;color:#6a8073}
.fin-two{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:14px;margin-bottom:14px}
.fin-two .card{margin:0}
.trend{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;align-items:end;height:190px;padding-top:6px}
.trend-col{display:flex;flex-direction:column;align-items:center;gap:4px;height:100%;min-width:0}
.trend-bars{flex:1;display:flex;gap:3px;align-items:flex-end;width:100%;justify-content:center}
.trend-bars .bar{width:42%;max-width:22px;border-radius:4px 4px 0 0;min-height:2px}
.bar.rev,.dot.rev{background:#2f8a5b}.bar.exp,.dot.exp{background:#c96b52}
.trend-result{font-size:11.5px;font-variant-numeric:tabular-nums;color:#1d6b45;white-space:nowrap}
.trend-result.neg{color:#9a3b2b}
.trend-col small{font-size:12px;color:#647c6b}
.trend-col.current small{font-weight:700;color:#173b2c}
.trend-legend{font-size:12.5px;color:#647c6b;margin:10px 0 0;display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.dot{display:inline-block;width:10px;height:10px;border-radius:3px}
.top-list{list-style:none;margin:0 0 10px;padding:0}
.top-list li{position:relative;padding:8px 0 10px;border-top:1px solid #edf2ef}
.top-list li:first-child{border-top:0}
.top-list a{display:flex;justify-content:space-between;gap:10px;text-decoration:none;color:#173b2c;font-size:14px}
.top-list i{display:block;height:6px;border-radius:3px;background:#c96b52;margin:6px 0 3px;max-width:100%}
.top-list small{font-size:12px;color:#647c6b}
.card.fin-table-card{padding:0;overflow:hidden}
.fin-table-card .fin-h2,.fin-table-card>.help{padding:0 18px}
.fin-table-card .fin-h2{padding-top:16px}
.fin-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
.fin-table{width:100%;border-collapse:collapse;font-size:13px;font-variant-numeric:tabular-nums}
.fin-table th,.fin-table td{padding:7px 10px;border-bottom:1px solid #edf2ef;text-align:right;white-space:nowrap}
.fin-table thead th{background:#f1f6f3;font-size:12px;color:#4f695d;position:sticky;top:0}
.fin-table tbody th,.fin-table thead th:first-child{text-align:left;position:sticky;left:0;background:#fff;z-index:1;min-width:190px;white-space:normal}
.fin-table thead th:first-child{background:#f1f6f3;z-index:2}
.fin-table tbody th{text-transform:none;letter-spacing:0;font-size:13px;color:#173b2c}
.fin-table thead th{text-transform:none;letter-spacing:0}
.fin-table a{color:inherit;text-decoration:none}
.fin-table a:hover{text-decoration:underline}
.dre-line th,.dre-line td{font-weight:650}
.dre-sub th,.dre-sub td{background:#f6faf7}
.dre-sub th{background:#f6faf7!important}
.dre-final th,.dre-final td{background:#e7f1ec!important;font-size:14px;border-top:2px solid #b9d3c3}
.dre-cat th{font-weight:400;padding-left:26px;color:#4f695d}
.dre-cat td{color:#4f695d}
.dre-total{font-weight:650}
.dre-pct{color:#647c6b}
.detail-desc{text-align:left!important;white-space:normal!important;min-width:220px}
.detail-table td:first-child,.detail-table td:nth-child(2),.detail-table td:nth-child(4){text-align:left}
.flow-future td,.flow-future th{color:#5f6f86;font-style:italic}
.flow-future th{background:#fafbff!important}
.flow-today th,.flow-today td{background:#fffaf0!important;font-weight:650}
.flow-groups{list-style:none;margin:0 0 8px;padding:0;display:grid;gap:4px}
.flow-groups li{display:flex;justify-content:space-between;gap:12px;padding:6px 0;border-bottom:1px solid #edf2ef;font-size:14px}
@media(max-width:900px){.fin-two{grid-template-columns:1fr}}
@media(max-width:760px){.kpi-grid{grid-template-columns:1fr 1fr;gap:10px}.kpi{padding:12px}.kpi-value{font-size:19px}.kpi-hint{font-size:12px}
  .fin-toolbar{flex-direction:column;align-items:stretch}.fin-filters label{flex:1 1 140px}.fin-table tbody th,.fin-table thead th:first-child{min-width:140px}
  .trend{height:160px}}
@media(max-width:420px){.kpi-grid{grid-template-columns:1fr}}
.mov-rec.plan-title-tag{background:#eef0fb;color:#3c4a8a}
/* 3.18.4: fechamento do mês e categorias */
.close-list{display:grid;gap:12px}
.card.close-row{margin:0;padding:14px 18px;border-left:5px solid #d9a326}
.close-row.closed{border-left-color:#7d8f86;background:#fafbfa}
.close-row header{display:flex;flex-wrap:wrap;gap:8px 18px;justify-content:space-between;align-items:center}
.close-row header>div:first-child{display:flex;gap:10px;align-items:center}
.close-row header strong{font-size:17px}
.close-tag{font-size:11.5px;font-weight:700;border-radius:6px;padding:2px 8px;background:#e6ebe8;color:#4a5c53}
.close-tag.warn{background:#fff4d5;color:#725313}.close-tag.ok{background:#e3f2ea;color:#1d6b45}
.close-nums{display:flex;flex-wrap:wrap;gap:4px 16px;font-size:13px;color:#4f695d;font-variant-numeric:tabular-nums}
.close-pending{margin:10px 0 0;padding-left:18px;font-size:13.5px}
.close-form{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:10px}
.close-form input[name=reason]{flex:1 1 220px;min-width:0}
.cat-new summary{cursor:pointer;font-weight:700;color:#245c45}
.cat-form{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1.3fr) minmax(0,1fr) auto;gap:10px;align-items:end;margin-top:12px}
.cat-form label{display:flex;flex-direction:column;gap:5px;font-size:12.5px;font-weight:600;color:#4f695d;min-width:0}
.cat-form input,.cat-form select{width:100%;min-width:0;box-sizing:border-box}
.card.cat-card{padding:0;overflow:hidden}
.cat-list{list-style:none;margin:0;padding:0}
.cat-item{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr) auto;gap:8px 14px;align-items:center;padding:10px 18px;border-top:1px solid #edf2ef}
.cat-item:first-child{border-top:0}
.cat-item.attention{background:#fffcf3}
.cat-item.off{opacity:.6}
.cat-name{display:flex;flex-direction:column;gap:3px;min-width:0}
.cat-name small{font-size:12px;color:#647c6b}
.cat-name .fin-flag{align-self:flex-start}
.cat-inline{display:flex;gap:6px;align-items:center;min-width:0}
.cat-inline select{flex:1 1 0;min-width:0;font-size:13.5px}
@media(max-width:900px){.cat-form{grid-template-columns:1fr}.cat-item{grid-template-columns:1fr}.cat-inline{flex-wrap:wrap}.cat-inline select{flex:1 1 100%}}
/* 3.18.5: categorias agrupadas, alterar e mover de grupo */
.cat-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:14px}
.cat-actions .card{margin:0}
.cat-form-group{grid-template-columns:minmax(0,1.4fr) minmax(0,1.2fr) auto}
.cat-group-head{display:flex;flex-wrap:wrap;gap:8px 16px;justify-content:space-between;align-items:center;padding:11px 18px;background:#f1f6f3;border-bottom:1px solid #dfe8e2}
.cat-group-head>div{display:flex;gap:10px;align-items:baseline}
.cat-group-head strong{font-size:15px}
.cat-group-head small{font-size:12px;color:#647c6b}
.cat-rename summary{cursor:pointer;font-size:13px;font-weight:600;color:#245c45;list-style:none}
.cat-rename summary::-webkit-details-marker{display:none}
.cat-rename form{display:flex;gap:6px;margin-top:6px}
.cat-rename input{min-width:0}
.card.cat-card{margin-bottom:12px}
.cat-item{grid-template-columns:minmax(0,1fr) auto}
.cat-buttons{display:flex;gap:8px;align-items:flex-start;justify-content:flex-end;flex-wrap:wrap}
.cat-edit summary{list-style:none}
.cat-edit summary::-webkit-details-marker{display:none}
.cat-item:has(.cat-edit[open]) .cat-buttons{grid-column:1/-1;justify-content:flex-start}
.cat-edit[open]{flex-basis:100%;order:-1}
.cat-form-edit{grid-template-columns:minmax(0,1.3fr) minmax(0,1.3fr) minmax(0,1.1fr) minmax(0,1.3fr) auto;margin-top:10px;padding:12px;background:#f6faf7;border-radius:10px}
.cat-form label[hidden]{display:none}
.cat-empty{padding:10px 18px;margin:0}
@media(max-width:900px){.cat-actions{grid-template-columns:1fr}.cat-form-group,.cat-form-edit{grid-template-columns:1fr}.cat-item{grid-template-columns:1fr}.cat-buttons{justify-content:flex-start}}
/* 3.18.5: transferências nas Movimentações */
.mov-rec.mov-transfer{background:#eef0fb;color:#3c4a8a}
/* 3.18.6: motivo da alteração do saldo inicial */
.account-opening-reason{display:flex;flex-direction:column;gap:6px;margin-top:16px}
.account-opening-reason input{width:100%;box-sizing:border-box}
/* 3.19.0: centro de custo */
.mov-center-filters summary{cursor:pointer;font-size:13px;font-weight:600;color:#245c45}
.mov-center-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 12px;margin-top:8px}
.mov-center-grid label{display:flex;flex-direction:column;gap:5px;font-size:12px;font-weight:600;color:#4f695d;min-width:0}
.mov-center-grid select{width:100%;min-width:0}
.mov-filters>.mov-center-filters{grid-column:1/-1}
.mov-cc{color:#3c4a8a;font-weight:600}
.mov-rec.plan-billing-tag{background:#e8f0fb;color:#24508a}
.cc-table{width:100%;border-collapse:collapse;font-size:14px}
.cc-table th,.cc-table td{padding:8px 10px;border-bottom:1px solid #edf2ef;text-align:left}
.cc-table td.num,.cc-table th.num{text-align:right;font-variant-numeric:tabular-nums}
.cc-table input{width:90px}
.cc-late{color:#9a3b2b;font-weight:650}
@media(max-width:760px){.mov-center-grid{grid-template-columns:1fr}}
/* 3.19.1: receber do hospital e distribuição */
.rcv-head{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 12px;align-items:end}
.rcv-head label{display:flex;flex-direction:column;gap:5px;font-size:12px;font-weight:600;color:#4f695d;min-width:0}
.rcv-head select,.rcv-head input{width:100%;min-width:0}
.rcv-head .mov-filter-actions,.rcv-statement{grid-column:1/-1;margin:0}
.rcv-table td.num input,.split-table td.num input{width:100px;text-align:right}
.rcv-table small.cc-late{display:block;font-weight:600}
.rcv-table td,.rcv-table th{padding-left:8px;padding-right:8px}
.rcv-table th,.split-table th{text-align:left}.rcv-table th.num,.split-table th.num{text-align:right}
.rcv-table input.rcv-over{border-color:#c0392b;background:#fdf0ee}
.rcv-totals{position:sticky;bottom:0;z-index:2;display:flex;flex-wrap:wrap;gap:6px 28px;margin:0 0 12px;padding:10px 16px;border-radius:12px;background:#fff;border:1px solid #dfe8e3;box-shadow:0 -4px 14px rgba(19,35,31,.08)}
.rcv-totals div{display:flex;flex-direction:column;font-size:12px;color:#4f695d}
.rcv-totals b{font-size:17px;color:#1d2b24;font-variant-numeric:tabular-nums}
.rcv-ok{color:#1f7a4d!important}.rcv-warn{color:#9a3b2b!important}
.rcv-diff{margin:6px 0 10px;padding:10px 12px;border-radius:10px;background:#fbf6ea}
.rcv-diff label{display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-weight:600;font-size:14px}
.split-table select{width:100%;min-width:140px}
.imp-billing{display:inline-block;margin-top:6px;font-size:13px}
.cc-links{margin-bottom:10px}
@media(max-width:760px){.rcv-head{grid-template-columns:1fr}.rcv-table td.num input{width:90px}}
/* 3.19.2: faturado × recebido */
.br-kpis{grid-template-columns:repeat(auto-fill,minmax(190px,1fr))}
.br-alerts ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}
.br-alert{padding:8px 12px;border-radius:10px;font-size:14px;border-left:4px solid #d9a326;background:#fbf6ea}
.br-alert.br-danger{border-left-color:#b5452f;background:#fbefec}
.br-table th small{font-weight:500}
.br-aging{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.br-aging li{display:grid;grid-template-columns:130px 1fr 120px;gap:10px;align-items:center;font-size:14px}
.br-aging b{text-align:right;font-variant-numeric:tabular-nums}
.br-bar{height:10px;border-radius:6px;background:#eef3f0;overflow:hidden}
.br-bar i{display:block;height:100%;background:#3c8a63;border-radius:6px}
.br-bar i.late{background:#c0704f}
@media(max-width:760px){.br-aging li{grid-template-columns:100px 1fr 96px}}
/* 3.19.3: resultado por centro e filtro de centro nos relatórios */
.fin-filters>.fin-cc{flex-basis:100%;width:100%;grid-column:1/-1}
.fin-month-form .fin-cc{flex-basis:100%;margin:6px 0}
.fin-check{display:flex!important;flex-direction:row!important;align-items:center;gap:8px;font-size:13px;font-weight:600;color:#4f695d}
.cr-loose th,.cr-loose td{background:#f7f9f8;color:#5f7a6c}
/* 3.19.4: demonstrativo do hospital */
.rcv-import summary{cursor:pointer;font-size:14px;color:#245c45}
.rcv-import-form{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:10px 0 4px}
.rcv-imported p{margin:0 0 6px}
.rcv-note{display:block;font-size:11px;margin-top:3px;max-width:160px;margin-left:auto}
/* 3.19.5: tabela do Receber do hospital mais compacta */
.fin-table.rcv-table thead th:first-child,.fin-table.rcv-table td:first-child{width:34px;min-width:0;text-align:center}
.rcv-table td{text-align:left}.rcv-table td.num{text-align:right}
/* 3.19.8: editor rápido de categoria */
.imp-cat-box{display:flex;flex-direction:column;gap:4px;min-width:0}
.imp-cat-box[hidden]{display:none}
.cat-quick-edit{background:none;border:0;padding:2px 0;color:#245c45;font-size:12px;font-weight:650;cursor:pointer;align-self:flex-start;text-decoration:underline}
.cat-quick{max-width:460px;width:calc(100% - 32px)}
.cat-quick-form{display:flex;flex-direction:column;gap:10px}
.cat-quick-form h2{margin:0 0 4px;font-size:18px}
.cat-quick-form label{display:flex;flex-direction:column;gap:5px;font-size:13px;font-weight:600;color:#4f695d}
.cat-quick-form label[hidden]{display:none}
.ss-item.ss-new{font-weight:650;color:#245c45}
/* 3.20.0: correção de fármaco, reabertura e correções registradas */
.ficha-drug-fix{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:4px 0 8px;padding:8px 10px;border:1px solid #f0d9a8;border-radius:10px;background:#fff8ec}
.ficha-drug-fix input,.ficha-drug-fix select{min-width:0;max-width:100%}
.ficha-drug-fix input[inputmode]{width:90px}
.ficha-corrected{color:#8a5a00;font-weight:700}
.ficha-reopened{border-left:4px solid #d9a326}
.reopen-history .reopen-item{padding:8px 0;border-top:1px solid #edf2ef}
.reopen-history .reopen-item ul{margin:6px 0 0 18px;padding:0}
.reopen-history .reopen-item li{margin:2px 0;overflow-wrap:anywhere}
.ficha-reopened,.reopen-history{overflow-wrap:anywhere}
/* 3.20.1: procedimento fora do catálogo e "adicionar outro" */
.procedure-manual{margin:10px 0 4px;font-size:14px}
.procedure-manual summary{cursor:pointer;color:#245c45;font-weight:650}
.procedure-manual-fields{display:grid;grid-template-columns:140px 1fr auto;gap:8px;align-items:end;margin-top:8px}
.procedure-manual-fields label{display:flex;flex-direction:column;gap:4px;font-size:12px;font-weight:600;color:#4f695d;min-width:0}
.procedure-manual-fields input{width:100%;min-width:0}
.selected-procedure.manual{border-style:dashed}
.procedure-add-another{margin-top:8px}
@media(max-width:700px){.procedure-manual-fields{grid-template-columns:1fr}}
/* 3.20.2: atendimento recém-faturado ao voltar para a lista filtrada */
tr.row-just-done>td,.mobile-attendance-item.row-just-done{background:#e8f5ee;box-shadow:inset 3px 0 0 #1f6b4f}
tr[id^="at-"],.mobile-attendance-item{scroll-margin-top:90px}
/* 3.20.4: técnicas adicionais na ficha */
.ficha-technique-list{display:grid;gap:12px;margin-top:12px}.ficha-technique-extra{display:grid;gap:8px;padding:12px;border:1px dashed #c9d8d2;border-radius:12px;background:#f9fcfb}.ficha-technique-extra label{display:flex;flex-direction:column;gap:5px;font-size:.8rem;font-weight:700;color:#4a5550}.ficha-technique-head{display:flex;justify-content:space-between;align-items:center;gap:10px}.ficha-technique-add{margin-top:12px;width:100%;min-height:44px}
/* 3.20.4: quantidade de cada procedimento */
.procedure-qty{display:flex;flex-direction:column;align-items:center;gap:2px;font-size:10px;font-weight:700;color:var(--muted);flex:0 0 auto}.procedure-qty input{width:64px;min-height:40px;text-align:center;font-size:15px;font-weight:700;padding:4px}.selected-procedure-main{flex:1 1 auto}
.procedure-detail-value{display:grid;justify-items:end;gap:2px;white-space:nowrap}
/* 3.20.6: receber só o valor; salvar a revisão do extrato sempre à vista */
.rcv-only-value{display:grid;gap:10px;border-left:4px solid #c9a227}.imp-submit-sticky{position:sticky;bottom:0;background:#fff;padding:10px 0;z-index:5;box-shadow:0 -6px 12px -10px rgba(0,0,0,.25)}.imp-draft-note{margin:6px 0 0;color:#8a5a00;font-weight:700}
/* 3.21.1: abas do Receber */
.receive-tabs{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 14px;border-bottom:1px solid var(--line,#dfe6e3)}.receive-tabs a{padding:9px 14px;border-radius:10px 10px 0 0;color:var(--muted,#5b6763);font-weight:700;text-decoration:none;border:1px solid transparent;border-bottom:0;margin-bottom:-1px}.receive-tabs a.active{background:#fff;color:var(--accent,#1f6b4f);border-color:var(--line,#dfe6e3)}@media(max-width:600px){.receive-tabs{overflow-x:auto;flex-wrap:nowrap}.receive-tabs a{white-space:nowrap;padding:8px 10px}}
/* 3.21.4: subcategorias e categoria raiz */
.cat-actions-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.cat-item.cat-sub{padding-left:42px;background:#fafcfb}
.cat-item.cat-sub .cat-name strong{font-weight:600}
.cat-form-sub{grid-template-columns:minmax(0,1fr) auto}
.cat-form-sub textarea{width:100%;min-width:0;box-sizing:border-box}
@media(max-width:900px){.cat-actions-3{grid-template-columns:1fr}.cat-item.cat-sub{padding-left:28px}}
/* 3.21.5: cartões dos indicadores clicáveis e detalhe */
a.kpi-link{color:inherit;text-decoration:none;cursor:pointer;transition:box-shadow .15s,transform .15s}
a.kpi-link:hover,a.kpi-link:focus-visible{box-shadow:0 4px 14px rgba(23,59,44,.12);transform:translateY(-1px)}
.kpi-more{margin-top:auto;padding-top:6px;font-size:12.5px;font-weight:650;color:#245c45}
.kpi-detail-head{margin:14px 0}
.kpi-explain p{margin:6px 0;line-height:1.55}
.kpi-table-title{padding:14px 18px 0}
.detail-table td.num{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}
.detail-table td.neg{color:#9a3b2b}
/* 3.21.6: transferência entre contas na conciliação do extrato */
.imp-transfer{display:flex;flex-wrap:wrap;gap:6px 14px;align-items:flex-end;margin-top:6px}
.imp-transfer[hidden]{display:none}
.imp-transfer label{display:flex;flex-direction:column;gap:4px;font-size:12.5px;font-weight:600;color:#4f695d;min-width:0}
.imp-transfer-fixed{font-size:13px;color:#2f4a3d;padding-bottom:8px}
.imp-transfer small{flex-basis:100%;font-size:12px;color:#647c6b}
/* 3.22.0: estorno e receita por local */
.mov-reversal{background:#fdf1e6;color:#8a4b14}
.kpi-origins{margin:0 0 16px}
.kpi-origin-missing td{color:#8a4b14}
.kpi-origin-note{padding:0 18px 14px}
/* 3.23.0: unidade */
.mov-unit{background:#e8f0fb;color:#24508a}
/* 3.23.2: rateio do compartilhado */
.dre-rateio{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:flex-end}
.dre-rateio label{display:flex;flex-direction:column;gap:4px;font-size:12.5px;font-weight:600;color:#4f695d}
.dre-rateio .help{flex-basis:100%;margin:0}
/* 3.23.6: atendimentos — faturar/receber na lista e cores por etapa */
.badge-faturado{background:#e3ecfb;color:#24508a}.badge-recebido{background:#dcf1e5;color:#1d6a43}
.attendance-table tr.att-faturado td{background:#f6f9ff}.attendance-table tr.att-faturado td:first-child{box-shadow:inset 4px 0 #4a7bd1}
.attendance-table tr.att-parcial td{background:#fffaf0}.attendance-table tr.att-parcial td:first-child{box-shadow:inset 4px 0 #d6a72c}
.attendance-table tr.att-recebido td{background:#f1faf5}.attendance-table tr.att-recebido td:first-child{box-shadow:inset 4px 0 #3b8d69}
.mobile-attendance-item.att-faturado{border-left:4px solid #4a7bd1}.mobile-attendance-item.att-parcial{border-left:4px solid #d6a72c}.mobile-attendance-item.att-recebido{border-left:4px solid #3b8d69}
.quick-form{display:flex;flex-wrap:wrap;gap:6px;align-items:flex-end;margin:6px 0}.quick-bill input{width:110px;min-height:32px;padding:5px 8px}
.quick-receive{margin:6px 0}.quick-receive>summary{list-style:none;display:inline-block}.quick-receive>summary::-webkit-details-marker{display:none}
.quick-receive-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding:8px;border:1px solid var(--line);border-radius:10px;background:#fff}
.quick-receive-form label{font-size:10px}.quick-receive-form input,.quick-receive-form select{min-height:32px;padding:5px 8px;font-size:12px}
.quick-receive-form .quick-actions{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}.quick-receive-form small{grid-column:1/-1;font-size:10px;color:var(--muted)}
.btn-ghost{background:transparent;border:1px solid var(--line)}.mobile-quick{padding:0 12px 12px;margin:-6px 0 10px;border-radius:0 0 12px 12px;background:#fff}
.attendance-table th:nth-child(1){width:19%}.attendance-table th:nth-child(2){width:18%}.attendance-table th:nth-child(3){width:15%}.attendance-table th:nth-child(4){width:21%}.attendance-table th:nth-child(5){width:27%}.quick-receive-form input,.quick-receive-form select{width:100%;min-width:0;box-sizing:border-box}
/* 3.23.7: cores por etapa mais fortes e recebimento na lista */
.badge-pendente{background:#eceff2;color:#4a5560}
.badge-faturado{background:#2f6fd6;color:#fff}.badge-parcial{background:#e3a008;color:#fff}.badge-recebido{background:#2e8b57;color:#fff}
.attendance-table tr.att-faturado td{background:#e8f0ff}.attendance-table tr.att-faturado td:first-child{box-shadow:inset 6px 0 #2f6fd6}
.attendance-table tr.att-parcial td{background:#fff3d6}.attendance-table tr.att-parcial td:first-child{box-shadow:inset 6px 0 #e3a008}
.attendance-table tr.att-recebido td{background:#e2f5e9}.attendance-table tr.att-recebido td:first-child{box-shadow:inset 6px 0 #2e8b57}
.attendance-table tr.att-pendente td:first-child{box-shadow:inset 6px 0 #c9cfd5}
.mobile-attendance-item.att-faturado{border-left:6px solid #2f6fd6;background:#e8f0ff}.mobile-attendance-item.att-parcial{border-left:6px solid #e3a008;background:#fff3d6}.mobile-attendance-item.att-recebido{border-left:6px solid #2e8b57;background:#e2f5e9}
.btn-receive{background:#2f6fd6;color:#fff}.att-parcial .btn-receive{background:#c98a00}
.quick-diff{margin:0;font-size:11.5px;font-weight:650;padding:6px 8px;border-radius:7px;background:#eef1f3}.quick-diff.is-ok{background:#e2f5e9;color:#1d6a43}.quick-diff.is-warn{background:#fff3d6;color:#7a5200}.quick-diff.is-bad{background:#fbe5e5;color:#9b3333}
.quick-wide{grid-column:1/-1}.quick-error{margin:0;color:#9b3333;font-size:11.5px;font-weight:650}
/* 3.23.8: recebimento sempre aberto na linha */
.quick-receive-title{font-size:11px;font-weight:800;color:#24508a;margin:6px 0 4px;text-transform:uppercase;letter-spacing:.04em}.att-parcial .quick-receive-title{color:#7a5200}
.quick-receive-form .quick-amount{grid-column:1/-1}.quick-receive-form .quick-amount input{font-size:14px;font-weight:700;min-height:36px}
/* 3.24.0: glosa */
.badge-glosado{background:#b33838;color:#fff}.btn-glosa{background:#fbe5e5;color:#9b3333;border:1px solid #e9b4b4}
.attendance-table tr.att-glosado td{background:#fdeceb}.attendance-table tr.att-glosado td:first-child{box-shadow:inset 6px 0 #b33838}
.mobile-attendance-item.att-glosado{border-left:6px solid #b33838;background:#fdeceb}
.kpi-glosa{border-left:5px solid #b33838}.kpi-glosa strong{color:#9b3333}
/* 3.24.1 */
.quick-bill .quick-bill-reason{flex-basis:100%;font-size:10px}.quick-bill .quick-bill-reason input{width:100%}.quick-bill .quick-error{flex-basis:100%;margin:0}
/* 3.24.3: alterar preço do insumo */
.stock-price-form{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,1fr) auto;gap:12px 14px;align-items:end;margin-top:12px}.stock-price-form label{display:flex;flex-direction:column;gap:6px;font-size:14px;font-weight:600;min-width:0}.stock-price-form .btn{min-height:44px}.stock-price-now{grid-column:1/-1;margin:0}.stock-card-price{color:#1f5f4f;font-weight:600}
@media(max-width:700px){.stock-price-form{grid-template-columns:1fr}}

/* 3.25.0: marca AnestControl */
.brand-icon-dark{width:28px;height:28px;flex-shrink:0;border-radius:7px}
.brand-icon-light{width:48px;height:48px;flex-shrink:0;border-radius:12px}
.brand .wordmark{display:block;font-size:19px;line-height:1.15;letter-spacing:-.01em;white-space:nowrap}
.brand .wordmark b:first-child{font-weight:800;color:#fff}
.brand .wordmark b:last-child{font-weight:500;color:#5EE0B0}
.auth-brand .wordmark{font-size:26px}
.auth-brand .wordmark b:first-child{color:#0F3D3E}
.auth-brand .wordmark b:last-child{color:#157A6E}
.brand .brand-company{display:flex;align-items:center;gap:6px}
.brand-logo-small{width:20px;height:20px;object-fit:contain;background:#fff;border-radius:4px;padding:1px;box-sizing:border-box;flex-shrink:0}
.login-tagline{margin:-4px 0 18px;color:#3F5F5A;font-size:12px;font-weight:600;letter-spacing:.2em;text-transform:uppercase}
