/* Prontuário clínico, convênios, arquivos e relatórios */
.advanced-record{display:grid;gap:18px}.clinical-layout{grid-template-columns:minmax(0,2fr) minmax(260px,.8fr)}.clinical-card,.record-section,.quick-patient-data{min-width:0}.quick-patient-data{position:static!important;inset:auto!important;width:auto!important;color:var(--ink)!important;display:block!important}.preserve-lines{white-space:pre-wrap}.quick-patient-data dl,.guide-data{display:grid;gap:12px;margin:18px 0 0}.quick-patient-data dl div,.guide-data div{display:flex;justify-content:space-between;gap:15px;border-bottom:1px solid var(--line);padding-bottom:10px}.quick-patient-data dt,.guide-data dt{color:var(--muted);font-size:11px;font-weight:800;text-transform:uppercase}.quick-patient-data dd,.guide-data dd{margin:0;font-weight:700;text-align:right;color:var(--ink)}.record-section{margin:0}.record-section .section-head p{margin:5px 0 0;color:var(--muted)}.complaint-timeline{display:grid;gap:12px}.complaint-timeline article{display:grid;grid-template-columns:120px 1fr;gap:18px;padding:14px 16px;border:1px solid var(--line);border-radius:10px;background:#fbfdfc}.complaint-timeline time{font-weight:800;color:var(--green)}.complaint-timeline p{margin:0;white-space:pre-wrap}.empty-line{color:var(--muted);margin:8px 0}.guides-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:15px}.guide-entry{border:1px solid var(--line);border-radius:12px;padding:17px;background:#fbfdfc}.guide-entry.finished{background:#fff8f7;border-color:#f0d5d1}.guide-entry-head{display:flex;justify-content:space-between;gap:15px}.guide-entry h3{margin:5px 0 0}.guide-entry small{display:block;color:var(--muted);margin:8px 0 14px}.guide-entry button:disabled{opacity:.5;cursor:not-allowed}.icon-action{border:0;background:#eef5f3;color:var(--ink);width:34px;height:34px;border-radius:8px;font-size:17px}.icon-action.danger{color:#b43e37;background:#fff0ef}.patient-files{display:grid;gap:10px}.patient-file{display:grid;grid-template-columns:64px 1fr auto auto;align-items:center;gap:12px;border:1px solid var(--line);border-radius:10px;padding:10px}.patient-file small{display:block;color:var(--muted);margin-top:4px}.file-preview{width:64px;height:54px;border-radius:8px;background:#eef5f3;display:grid;place-items:center;font-weight:800;color:var(--green);overflow:hidden}.file-preview img{width:100%;height:100%;object-fit:cover}.file-upload-button{display:inline-flex;align-items:center;cursor:pointer}.file-upload-button input{display:none}.record-dialog-body{padding:22px 26px;display:grid;gap:16px;max-height:65vh;overflow:auto}.record-dialog-body>label,.dialog-grid label{display:grid;gap:7px;color:var(--muted);font-size:12px;font-weight:800}.record-dialog-body textarea{min-height:100px}.dialog-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.dialog-grid .check-line{display:flex;align-items:center;align-self:end;padding:10px 0;color:var(--ink)}.dialog-grid .check-line input{width:auto}.inline-add{align-self:end}.dialog-x{border:0;background:transparent;font-size:26px}.insurance-settings{margin-top:18px}.insurance-add{display:grid;grid-template-columns:1fr auto;align-items:end;gap:12px}.insurance-add label{display:grid;gap:6px;color:var(--muted);font-size:12px;font-weight:800}.insurance-list{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}.insurance-list span{display:flex;align-items:center;gap:8px;background:#eef5f3;border-radius:99px;padding:8px 10px;font-weight:700}.insurance-list button{border:0;background:transparent;color:#a53d37;font-size:17px;padding:0}.patient-search-table .row{grid-template-columns:1.5fr 1.5fr 1fr 1fr 1fr}.day-visit{width:100%;border:0;text-align:left;display:flex;align-items:center;gap:9px}.day-visit.is-paid{background:#edf5ff!important;border-left-color:#3478c7!important;color:#1f4f84}.day-visit.is-pending{background:#fff0ef!important;border-left-color:#d5554c!important;color:#87342f}.blue-number,.paid-stat strong{color:#3478c7!important}.red-number,.pending-stat strong{color:#d04b43!important}.daily-appointment-report{margin-top:20px}.report-table{overflow:hidden;border:1px solid var(--line);border-radius:10px}.report-row{width:100%;display:grid;grid-template-columns:1fr 2fr 1fr 1fr;gap:15px;align-items:center;padding:13px 15px;border:0;border-bottom:1px solid var(--line);background:#fff;text-align:left;color:var(--ink)}button.report-row:hover{background:#f7fbfa}.report-row:last-child{border-bottom:0}.report-head{background:#f0f6f4!important;color:var(--muted);font-size:10px;font-weight:800}.payment-status{display:inline-flex;width:max-content;padding:6px 10px;border-radius:99px;font-weight:800;font-size:11px}.payment-status.paid{background:#e9f3ff;color:#2869aa}.payment-status.pending{background:#ffedeb;color:#bb3d35}.finance-report-shell{display:grid;gap:18px}.finance-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px}.period-tabs{display:flex;background:#eaf2f0;border-radius:10px;padding:4px}.period-tabs button{border:0;background:transparent;padding:9px 15px;border-radius:8px;color:var(--muted);font-weight:800}.period-tabs button.active{background:white;color:var(--green);box-shadow:0 2px 8px #174b4220}.finance-date-nav{display:flex;gap:7px;align-items:center}.finance-date-nav input{min-width:150px}.report-title h2{margin:5px 0 0}.finance-stats{margin:0}.finance-table .report-row{grid-template-columns:1.2fr 2fr 1fr 1fr}.agenda-toolbar-actions{flex-wrap:wrap}
@media print{body.printing-report>aside,body.printing-report>main,body.printing-report>.auth-overlay,body.printing-report .no-print{display:none!important}body.printing-report{display:block;background:#fff}.print-target{display:block!important;width:100%;border:0;box-shadow:none;padding:0}.report-row{break-inside:avoid}}
@media(max-width:900px){.clinical-layout{grid-template-columns:1fr}.finance-toolbar{align-items:stretch;flex-direction:column}.finance-stats{grid-template-columns:1fr 1fr}.patient-search-table .row{grid-template-columns:1.5fr 1fr 1fr}.patient-search-table .row>*:nth-child(2),.patient-search-table .row>*:nth-child(4){display:none}}
@media(max-width:640px){.record-section .section-head{align-items:flex-start;gap:12px;flex-direction:column}.complaint-timeline article{grid-template-columns:1fr}.patient-file{grid-template-columns:52px 1fr auto}.patient-file .secondary{grid-column:2}.file-preview{width:52px}.dialog-grid,.insurance-add{grid-template-columns:1fr}.finance-stats{grid-template-columns:1fr}.report-row,.finance-table .report-row{grid-template-columns:1fr 1fr}.report-head{display:none}.report-row span:nth-child(2){font-weight:800}.patient-search-table .row{grid-template-columns:1fr}.patient-search-table .row>*:not(:first-child){display:none}.agenda-toolbar-actions{width:100%}.agenda-toolbar-actions button{flex:1}}

/* Edição e status dos agendamentos */
.day-slots-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.day-visit{position:relative;align-items:flex-start;min-height:58px;padding:9px 10px;cursor:pointer}.day-visit .visit-copy{display:flex;flex:1;flex-direction:column;min-width:0;padding-right:28px}.day-visit b{overflow:visible;text-overflow:clip;white-space:normal;overflow-wrap:anywhere;line-height:1.28;font-size:12px}.day-visit small{display:block;margin-top:3px;line-height:1.3}.visit-patient-link{position:absolute;right:7px;top:7px;width:25px;height:25px;border:1px solid currentColor;border-radius:7px;background:#fff9;color:inherit;padding:0;font-weight:900}.day-visit.status-cancelled{background:#f1f3f3!important;border-left-color:#8a9997!important;color:#667572!important;opacity:.85}.day-visit.status-absent{background:#fff5e5!important;border-left-color:#df8f2f!important;color:#875516}.day-visit.status-confirmed{background:#eaf8f4!important;border-left-color:#178b77!important;color:#17695c}.day-visit.status-completed.is-paid{background:#edf5ff!important;border-left-color:#3478c7!important;color:#1f4f84}.appointment-status{display:inline-flex;width:max-content;padding:5px 9px;border-radius:999px;background:#edf4f2;color:#4e6c67;font-size:10px;font-weight:850}.appointment-status.status-confirmed{background:#e3f6f0;color:#14715f}.appointment-status.status-completed{background:#e9f3ff;color:#2869aa}.appointment-status.status-cancelled{background:#edf0f0;color:#697876}.appointment-status.status-absent{background:#fff1d9;color:#9c6119}.status-summary{grid-template-columns:120px 105px 115px 185px 1fr}.appointment-report-table .report-row,.finance-table .report-row{grid-template-columns:.7fr 1.8fr 1fr .8fr 1fr}.appointment-record-link{margin-right:auto}.appointment-editor-grid textarea{min-height:90px}.patient-editor-grid{width:100%}.quick-patient-data .section-head{margin-bottom:0}
@media(max-width:1100px){.status-summary{grid-template-columns:repeat(4,1fr)}.status-summary .agenda-capacity{grid-column:1/-1;justify-content:space-between}}
@media(max-width:650px){.day-slots-grid{grid-template-columns:1fr}.status-summary{grid-template-columns:1fr 1fr}.status-summary .agenda-capacity{grid-column:1/-1}.appointment-report-table .report-row,.finance-table .report-row{grid-template-columns:1fr 1fr}.appointment-record-link{width:100%;margin-right:0;order:-1}}

/* Compatibilidade com iPadOS e Apple Pencil */
.record-dialog-body{-webkit-overflow-scrolling:touch}.record-dialog-body textarea{-webkit-user-select:text!important;user-select:text!important;touch-action:auto;cursor:text}.anatomy-photo-map{touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;cursor:crosshair}.anatomy-photo-map .pain-points{pointer-events:all}.anatomy-photo-map .pain-points g{cursor:pointer}
