.dialog-section-title{margin:18px 0 8px;padding-bottom:6px;border-bottom:1px solid var(--line);font-size:15px}
.field-help{margin:0 0 9px;color:var(--muted);font-size:12px}
.dialog-grid .span-2{grid-column:span 2}
.attachment-box{display:grid;grid-template-columns:1fr auto;align-items:end;gap:10px;margin-top:12px;padding:12px;border:1px dashed #72cbd0;border-radius:12px;background:#f5fcfc}
.attachment-box label{display:grid;gap:5px;font-size:12px;font-weight:700}
.attachment-list{grid-column:1/-1;display:flex;gap:8px;flex-wrap:wrap}
.attachment-list a{padding:6px 9px;border-radius:8px;background:#e4f6f7;color:#087b82;font-size:11px;font-weight:700;text-decoration:none}
#caseForm footer{gap:10px;position:sticky;bottom:-20px;background:#fff;padding:12px 0 0}
@media(max-width:750px){.dialog-grid .span-2{grid-column:auto}.attachment-box{grid-template-columns:1fr}}
.attention-pill.attention-neutral{color:#52616b;background:#edf2f4}.attention-row.attention-neutral td:first-child{border-left:4px solid #9aa8b0}
.stored-import-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.stored-import-grid span,.stored-templates article{display:flex;flex-direction:column;gap:4px;padding:12px;border:1px solid var(--line);border-radius:10px;background:#f7fcfc}.stored-import-grid small,.stored-templates small{color:var(--muted);overflow-wrap:anywhere}.stored-templates{display:grid;gap:8px;margin:12px 0}.stored-templates article{flex-direction:row;align-items:center;justify-content:space-between}.stored-templates article div{display:flex;flex-direction:column;gap:3px}@media(max-width:800px){.stored-import-grid{grid-template-columns:1fr 1fr}}

/* V13 - telas compactas e agrupadas */
.no-scroll { overflow-x: visible; }
.compact-cases { table-layout: fixed; width: 100%; font-size: 12px; }
.compact-cases th:nth-child(1){width:21%}.compact-cases th:nth-child(2){width:17%}.compact-cases th:nth-child(3){width:5%}.compact-cases th:nth-child(4){width:6%}.compact-cases th:nth-child(5){width:5%}.compact-cases th:nth-child(6){width:12%}.compact-cases th:nth-child(7){width:27%}.compact-cases th:nth-child(8){width:7%}
.compact-cases th,.compact-cases td { vertical-align: top; padding: 8px 7px; overflow-wrap:anywhere; }
.num-cell { text-align:center; font-weight:800; font-size:14px; white-space:nowrap; }
.date-cell { font-size: 11px; line-height: 1.25; max-height: 36px; overflow: hidden; }
.compact-action, .mini { padding: 7px 9px; font-size: 11px; border-radius: 12px; white-space:nowrap; }
.group-list { display:grid; gap:14px; }
.professional-card { background:#fff; border:1px solid #c9e6ea; border-radius:18px; padding:0; overflow:hidden; }
.professional-card summary { cursor:pointer; list-style:none; display:grid; grid-template-columns: minmax(220px,1fr) auto auto; gap:14px; align-items:center; padding:14px 16px; background:#f0fbfc; }
.professional-card summary::-webkit-details-marker { display:none; }
.professional-card summary small { display:block; color:#51677e; margin-top:3px; }
.finance-totals { color:#08233f; font-size:13px; }
.compact-detail { width:100%; table-layout:fixed; font-size:12px; }
.compact-detail th,.compact-detail td { padding:8px 7px; vertical-align:top; }
.pending-list { margin:0; padding:8px 18px 14px 34px; }
.pending-list li { margin:7px 0; }
.message-preview { width:calc(100% - 32px); margin:0 16px 16px; min-height:90px; border:1px solid #c9e6ea; border-radius:12px; padding:10px; font-size:12px; resize:vertical; }
.copy-message { border:0; border-radius:12px; padding:9px 12px; background:#0c8d93; color:white; font-weight:700; }
.quick-actions { display:flex; flex-wrap:wrap; gap:8px; margin:8px 0 14px; }
.danger-light { border:0; background:#ffe8e8; color:#a61616; font-weight:700; border-radius:12px; padding:8px 10px; }
.status { display:inline-block; margin:2px 2px 2px 0; }
@media (max-width: 1350px) {
  .compact-cases { font-size: 11px; }
  .compact-cases th,.compact-cases td { padding: 7px 5px; }
  .status { font-size: 11px; padding: 5px 8px; }
}

/* V15 - contato profissional organizado */
.contact-card summary { grid-template-columns: minmax(260px,1fr) 170px 120px; }
.contact-count { text-align:center; color:#08233f; font-size:13px; }
.contact-count b { font-size:22px; }
.open-hint { justify-self:end; color:#087f85; font-weight:800; font-size:12px; background:#dff6f7; padding:8px 10px; border-radius:999px; }
.contact-detail { padding:14px 16px 16px; background:#fff; }
.contact-actions { display:flex; justify-content:flex-end; margin-bottom:10px; }
.contact-table th:nth-child(1){width:30%}.contact-table th:nth-child(2){width:18%}.contact-table th:nth-child(3){width:28%}.contact-table th:nth-child(4){width:16%}.contact-table th:nth-child(5){width:8%}
.message-label { display:grid; gap:6px; margin-top:12px; font-size:12px; font-weight:800; color:#345; }
.contact-card .message-preview { width:100%; margin:0; min-height:82px; max-height:135px; font-size:12px; }
@media(max-width:900px){.contact-card summary{grid-template-columns:1fr}.open-hint{justify-self:start}.contact-count{text-align:left}}

/* V19 - conciliação agrupada por paciente/profissional/serviço */
.case-group-row td { background:#fff; border-top:2px solid #c9e6ea; }
.case-group-row td:first-child { border-left:4px solid #14aeb4; }
.case-detail-row td { background:#f8fcfd; font-size:11px; border-top:1px dashed #c9e6ea; }
.case-detail-row td:first-child { padding-left:24px; }
.case-group-toggle { background:#dff6f7; color:#087f85; font-weight:800; }

/* V20 - lateral de detalhes da conciliação */
.side-drawer{position:fixed;inset:0;z-index:80;background:rgba(8,35,63,.28);display:flex;justify-content:flex-end}.side-drawer.hidden{display:none}.side-drawer-card{width:min(760px,92vw);height:100%;background:#fff;box-shadow:-18px 0 45px rgba(8,35,63,.22);padding:22px;overflow:auto}.side-drawer-card header{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;border-bottom:1px solid #c9e6ea;padding-bottom:14px;margin-bottom:14px}.side-drawer-card h2{margin:0;color:#08233f}.side-drawer-card p{color:#526b83}.drawer-summary{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin:12px 0 18px}.drawer-summary article{border:1px solid #c9e6ea;background:#f4fbfc;border-radius:14px;padding:10px}.drawer-summary span{display:block;color:#526b83;font-size:11px;text-transform:uppercase;font-weight:800}.drawer-summary strong{font-size:22px;color:#08233f}.drawer-rows{display:grid;gap:12px}.drawer-case{border:1px solid #d5e9ec;border-radius:16px;padding:14px;background:#fff}.drawer-case.drawer-duplicate{border-color:#ffc36b;background:#fff9ef}.drawer-case-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:10px 0}.drawer-case-grid span{background:#f4fbfc;border-radius:10px;padding:8px;font-size:12px}.drawer-case-grid b{display:block;color:#526b83;font-size:10px;text-transform:uppercase}.dup-badge,.dup-warning{display:inline-block;margin-left:8px;background:#fff0d6;color:#ad6500;border-radius:999px;padding:4px 8px;font-weight:800;font-size:11px}.summary-danger{background:#fff0f0!important;border-color:#ffc9c9!important}.summary-good{background:#effbf3!important;border-color:#c7edcf!important}@media(max-width:760px){.drawer-summary,.drawer-case-grid{grid-template-columns:1fr 1fr}.side-drawer-card{width:100vw}}

/* V21 - ajuda das classificações Hapvida */
.classification-help{padding:0;overflow:hidden}.classification-help summary{cursor:pointer;padding:16px 18px;font-weight:900;color:#08233f;background:#f4fbfc}.classification-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;padding:14px 18px 18px}.classification-grid article{border:1px solid #c9e6ea;border-radius:14px;padding:12px;background:#fff}.classification-grid strong{display:block;color:#087f85;margin-bottom:6px}.classification-grid p{font-size:12px;line-height:1.35;color:#344e66;margin:0}@media(max-width:1100px){.classification-grid{grid-template-columns:1fr 1fr}}@media(max-width:650px){.classification-grid{grid-template-columns:1fr}}


/* V24 - legibilidade do painel lateral e cards agrupados */
.side-drawer{background:rgba(8,35,63,.38)}
.side-drawer-card{width:min(860px,94vw);padding:18px 22px;background:#fff;color:#08233f}
.side-drawer-card header{position:sticky;top:0;background:#fff;z-index:2;margin:-18px -22px 14px;padding:18px 22px 14px}
.side-drawer-card h2,.side-drawer-card strong,.drawer-case strong{color:#08233f}
.side-drawer-card p,.side-drawer-card small{color:#415a73}
.drawer-summary{grid-template-columns:repeat(5,minmax(118px,1fr));gap:8px;margin:10px 0 14px}
.drawer-summary article{padding:10px 12px;border-radius:12px;background:#f6fbfc}
.drawer-summary strong{font-size:20px;line-height:1.05}
.drawer-rows{gap:10px}
.drawer-case{padding:12px 14px;border-radius:14px;background:#fff;color:#08233f}
.drawer-case.drawer-duplicate{background:#fffaf1;border-color:#ffb45c}
.drawer-case-head{display:flex;align-items:flex-start;gap:8px;flex-wrap:wrap;margin-bottom:6px}
.drawer-case-grid{grid-template-columns:repeat(4,minmax(115px,1fr));gap:8px;margin:8px 0}
.drawer-case-grid span{background:#eef8fa;color:#08233f;padding:8px 10px;border-radius:10px;min-height:auto;font-size:13px}
.drawer-case-grid b{color:#446078;font-size:10px;margin-bottom:2px}
.drawer-case p{font-size:13px;line-height:1.35;margin:8px 0 10px;color:#263f57}
.dup-badge{background:#ffe6bc;color:#9a5900;margin-left:0;white-space:nowrap}
.compact-detail.contact-table th,.compact-detail.contact-table td{font-size:12px;padding:9px 8px;vertical-align:top}
.contact-table .date-cell{max-width:340px;white-space:normal;line-height:1.35}
.contact-card summary strong,.contact-card td strong{text-transform:none}
@media(max-width:900px){.drawer-summary,.drawer-case-grid{grid-template-columns:1fr 1fr}.side-drawer-card{width:100vw}}
