/* Estilos del módulo independiente Atención Proactiva v14.1-beta.2 */
.ap-module{display:flex;flex-direction:column;gap:1rem}.ap-banner{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start;background:linear-gradient(135deg,#075e4b,#0d7b63);color:#fff;border-radius:24px;padding:1.4rem 1.6rem;box-shadow:0 12px 28px rgba(5,70,55,.18)}.ap-banner h2{margin:.1rem 0;font-size:2rem}.ap-banner p{margin:.25rem 0;max-width:760px}.ap-kicker{display:inline-block;font-size:.78rem;letter-spacing:.05em;text-transform:uppercase;font-weight:800;background:rgba(255,255,255,.16);padding:.35rem .6rem;border-radius:999px}.ap-banner-actions{display:flex;flex-wrap:wrap;gap:.6rem;justify-content:flex-end}.ap-subnav{display:flex;gap:.5rem;flex-wrap:wrap;background:var(--surface,#fff);padding:.65rem;border-radius:18px;border:1px solid var(--border,#d9e5e1)}.ap-subnav-btn{border:1px solid var(--border,#cbdad5);background:transparent;padding:.7rem 1rem;border-radius:999px;font:inherit;font-weight:750;color:var(--text,#16231f);cursor:pointer}.ap-subnav-btn.active{background:#08765f;color:#fff;border-color:#08765f}.ap-status-line{display:flex;gap:1rem;flex-wrap:wrap;padding:0 .25rem;color:var(--muted,#5f6f69);font-size:.93rem}.ap-panel{background:var(--surface,#fff);border:1px solid var(--border,#d6e4df);border-radius:24px;padding:1.35rem;box-shadow:0 12px 30px rgba(20,56,45,.06)}.ap-heading{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start;margin-bottom:1rem}.ap-heading h3{margin:0;font-size:1.5rem}.ap-heading p{margin:.2rem 0 0;color:var(--muted,#61736c)}.ap-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(135px,1fr));gap:.8rem;margin:1rem 0}.ap-stat{background:#edf7f3;border:1px solid #cfe5dc;border-radius:18px;padding:1rem;display:flex;flex-direction:column}.ap-stat strong{font-size:1.7rem;color:#0b6b57}.ap-stat span{font-size:.86rem;color:#536b63}.ap-grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.ap-grid-main{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(340px,.75fr);gap:1rem}.ap-card{border:1px solid var(--border,#d6e4df);border-radius:18px;padding:1rem;background:var(--surface,#fff)}.ap-card h4,.ap-panel h4{margin:.1rem 0 .65rem}.ap-note{border-left:4px solid #a36900;padding:.65rem .8rem;background:#fff7e2;border-radius:8px}.ap-form{display:flex;flex-direction:column;gap:1rem}.ap-form label{display:flex;flex-direction:column;gap:.35rem;font-weight:700}.ap-form input,.ap-form select,.ap-form textarea,.ap-start-options input,.ap-start-options select,.ap-heading input{width:100%;border:1px solid var(--border,#cbdad5);border-radius:12px;background:var(--surface,#fff);color:var(--text,#17251f);padding:.72rem .8rem;font:inherit}.ap-form textarea{resize:vertical}.ap-form fieldset{border:1px solid var(--border,#d4e3de);border-radius:16px;padding:1rem}.ap-form legend{font-weight:800;padding:0 .45rem}.ap-form-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.8rem}.ap-form-grid .span-2{grid-column:span 2}.ap-form-grid .span-3{grid-column:span 3}.ap-form-grid .span-4{grid-column:span 4}.ap-check-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:.55rem}.ap-check{display:flex!important;flex-direction:row!important;align-items:flex-start;gap:.45rem!important;font-weight:600!important;border:1px solid var(--border,#d7e4df);border-radius:12px;padding:.65rem;background:var(--surface,#fff)}.ap-check input{width:auto!important;margin-top:.18rem}.ap-check span{display:flex;flex-direction:column}.ap-check small{font-weight:500;color:var(--muted,#64746e)}.ap-family-preview{display:grid;grid-template-columns:auto auto;gap:.25rem .9rem;padding:.8rem 1rem;border:1px dashed #a9c8bd;border-radius:14px;background:#f4faf7}.ap-family-preview strong{grid-column:1/-1}.ap-family-preview span{color:#526b62}.ap-list{display:flex;flex-direction:column;gap:.7rem;max-height:70vh;overflow:auto}.ap-list-card{display:flex;justify-content:space-between;gap:.7rem;border:1px solid var(--border,#d7e4df);border-radius:15px;padding:.8rem}.ap-list-card>div:first-child{display:flex;flex-direction:column;gap:.22rem}.ap-list-card span,.ap-list-card small{color:var(--muted,#64746e)}.ap-card-actions,.ap-row-actions{display:flex;flex-wrap:wrap;gap:.4rem;align-content:flex-start}.btn-small{padding:.45rem .65rem!important;font-size:.84rem!important}.btn-danger{background:#b42318!important;color:#fff!important;border-color:#b42318!important}.ap-start-options{display:grid;grid-template-columns:minmax(220px,1fr) auto auto minmax(220px,1fr) auto;gap:.7rem;align-items:end}.ap-patient-list{display:flex;flex-direction:column;gap:.75rem}.ap-patient{border:1px solid var(--border,#d3e3dd);border-radius:16px;overflow:hidden;background:var(--surface,#fff)}.ap-patient summary{display:flex;justify-content:space-between;gap:1rem;align-items:center;padding:.85rem 1rem;cursor:pointer;background:#f3f8f6}.ap-patient summary span:first-child{display:flex;flex-direction:column}.ap-patient summary small{color:var(--muted,#61736c)}.ap-patient-body{padding:1rem;display:flex;flex-direction:column;gap:1rem}.ap-status-chip{padding:.3rem .55rem;border-radius:999px;background:#e8ecea;font-size:.8rem;font-weight:800}.ap-status-chip.included{background:#d6f2e4;color:#0b6b57}.ap-measure-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(125px,1fr));gap:.6rem}.ap-table-wrap{overflow:auto;border:1px solid var(--border,#d5e3de);border-radius:16px}.ap-table{width:100%;border-collapse:collapse;min-width:850px}.ap-table th,.ap-table td{padding:.72rem .8rem;border-bottom:1px solid var(--border,#dce7e3);text-align:left;vertical-align:top}.ap-table th{background:#eaf4f1}.ap-table td small{display:block;color:var(--muted,#63736d)}.ap-baseline{margin-top:1rem;padding:1rem;border-radius:16px;background:#eef6ff;border:1px solid #cbdff4}.ap-start-options label{display:flex;flex-direction:column;gap:.35rem;font-weight:700}.sticky-actions{position:sticky;bottom:.5rem;background:var(--surface,#fff);padding:.8rem;border-radius:16px;border:1px solid var(--border,#d4e3de);z-index:5}.hidden{display:none!important}.muted{color:var(--muted,#66766f);font-weight:500}.ap-toast-ok{background:#0b6b57!important}.ap-toast-warn{background:#a36900!important}

@media(max-width:1050px){.ap-grid-main{grid-template-columns:1fr}.ap-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ap-form-grid .span-3,.ap-form-grid .span-4{grid-column:span 2}.ap-start-options{grid-template-columns:1fr auto}.ap-start-options span{display:none}.ap-grid-2{grid-template-columns:1fr}.ap-banner{flex-direction:column}.ap-banner-actions{justify-content:flex-start}}
@media(max-width:650px){.ap-panel{padding:1rem;border-radius:18px}.ap-form-grid{grid-template-columns:1fr}.ap-form-grid .span-2,.ap-form-grid .span-3,.ap-form-grid .span-4{grid-column:span 1}.ap-start-options{grid-template-columns:1fr}.ap-list-card{flex-direction:column}.ap-banner h2{font-size:1.6rem}.ap-banner-actions{width:100%}.ap-banner-actions .btn{width:100%}.ap-subnav{display:grid;grid-template-columns:repeat(2,1fr)}.ap-subnav-btn{border-radius:14px}.ap-status-line{font-size:.82rem}.ap-patient summary{align-items:flex-start}.ap-measure-grid{grid-template-columns:repeat(2,1fr)}}

.ap-print{display:none}.ap-print-page{page-break-after:always;padding:8mm;font-family:Arial,sans-serif;color:#111}.ap-print-page h1{font-size:18px;margin:0 0 8px}.ap-print-page table{width:100%;border-collapse:collapse;font-size:9px}.ap-print-page th,.ap-print-page td{border:1px solid #333;padding:4px;vertical-align:top}.ap-signatures{display:flex;justify-content:space-around;margin-top:32px}.ap-signatures span{border-top:1px solid #222;width:38%;text-align:center;padding-top:5px}.ap-print-disclaimer{font-size:8px;margin-top:12px}
@media print{body>*:not(#printArea){display:none!important}#printArea{display:block!important}.ap-print{display:block!important}.print-area{display:block!important}.ap-print-page{page-break-after:always}}

/* Endurecimiento v14.1-beta.2 */
.ap-filter-bar{display:grid;grid-template-columns:minmax(220px,2fr) repeat(5,minmax(130px,1fr)) auto auto;gap:.55rem;align-items:end;margin:0 0 1rem}.ap-filter-bar input,.ap-filter-bar select{width:100%;border:1px solid var(--border,#cbdad5);border-radius:11px;background:var(--surface,#fff);color:var(--text,#17251f);padding:.62rem .7rem;font:inherit}.ap-badge{display:inline-flex;padding:.25rem .55rem;border-radius:999px;font-size:.78rem;font-weight:850}.ap-badge.closed{background:#d9ede3;color:#086044}.ap-badge.draft{background:#fff2cf;color:#7b5500}.ap-badge.reopened{background:#fbe0d7;color:#8e321d}.btn-warning{background:#a36900!important;color:#fff!important;border-color:#a36900!important}.ap-lock-fieldset{border:0!important;padding:0!important;margin:0!important;display:flex;flex-direction:column;gap:1rem}.ap-lock-fieldset[disabled]{opacity:.88}.ap-lock-fieldset[disabled] input,.ap-lock-fieldset[disabled] select,.ap-lock-fieldset[disabled] textarea{background:#eef1f0;color:#30423b}.ap-audit-list{display:flex;flex-direction:column;gap:.65rem}.ap-audit-card{border:1px solid var(--border,#d3e2dc);border-radius:14px;background:var(--surface,#fff);overflow:hidden}.ap-audit-card summary{display:flex;justify-content:space-between;gap:1rem;padding:.8rem 1rem;cursor:pointer;background:#f2f8f5}.ap-audit-card summary span:last-child{color:var(--muted,#61736c);font-size:.86rem;text-align:right}.ap-audit-detail{padding:1rem}.ap-audit-detail pre{max-height:260px;overflow:auto;background:#12211c;color:#e7f2ed;padding:.75rem;border-radius:10px;font-size:.72rem;white-space:pre-wrap;word-break:break-word}.ap-official-note{font:8px Arial,sans-serif;margin:2mm 0 0;text-align:right;color:#333}.ap-template-canvas{position:relative;width:100%;overflow:hidden}.ap-template-canvas>img{display:block;width:100%;height:auto}.ap-template-anverso{aspect-ratio:3824/2050}.ap-template-reverso{aspect-ratio:3452/1608}.ap-overlay{position:absolute;display:flex;align-items:center;justify-content:center;overflow:hidden;font:700 8px/1.05 Arial,sans-serif;color:#000;z-index:2;word-break:break-word;text-align:center}.ap-overlay-left{justify-content:flex-start;text-align:left;padding:1px 2px}.ap-overlay-center{text-align:center}.ap-overlay-strong{font-weight:900;font-size:9px}.ap-overlay-small{font-size:7px}.ap-overlay-tiny{font-size:5.5px}.ap-overlay-vertical{writing-mode:vertical-rl;transform:rotate(180deg)}.ap-overlay-mark{font-size:11px;font-weight:900;line-height:1}.ap-official-page{page-break-after:always;break-after:page;width:100%;margin:0 auto;color:#000;background:#fff}.ap-official-page:last-child{page-break-after:auto;break-after:auto}

@media(max-width:1100px){.ap-filter-bar{grid-template-columns:repeat(2,minmax(0,1fr))}.ap-filter-bar input:first-child{grid-column:1/-1}}
@media(max-width:650px){.ap-filter-bar{grid-template-columns:1fr}.ap-filter-bar input:first-child{grid-column:auto}.ap-audit-card summary{flex-direction:column}.ap-audit-card summary span:last-child{text-align:left}}

@page{size:340mm 216mm;margin:0}
@media print{
  .ap-official-print{display:block!important;width:100%!important}
  .ap-official-print .ap-official-page{width:287mm;min-height:190mm;display:flex;flex-direction:column;justify-content:flex-start;overflow:hidden}
  .ap-official-print .ap-template-anverso{width:287mm;height:auto}
  .ap-official-print .ap-template-reverso{width:287mm;height:auto}
  .ap-official-note{font-size:6px;margin-top:1mm}
}

/* v14.1 — módulos poblacionales */
.ap-populations {
  margin-top: 1rem;
  border-top: 3px solid var(--primary, #0b6b57);
  padding-top: 1rem;
}
.ap-populations-title {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  align-items: flex-start;
  margin-bottom: .8rem;
}
.ap-populations-title h4 { margin: 0 0 .25rem; }
.ap-populations-title p { margin: 0; color: var(--muted, #5f6f6b); }
.ap-pop-module {
  border: 1px solid #c8d9d4;
  border-radius: 16px;
  background: rgba(255,255,255,.72);
  margin: .8rem 0;
  overflow: clip;
}
.ap-pop-module > summary {
  list-style: none;
  cursor: pointer;
  padding: .85rem 1rem;
  background: #eef7f4;
}
.ap-pop-module > summary::-webkit-details-marker { display: none; }
.ap-pop-module[open] > summary { border-bottom: 1px solid #c8d9d4; }
.ap-pop-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: .8rem;
}
.ap-pop-heading { display: flex; flex-direction: column; gap: .15rem; }
.ap-pop-header small { color: #5f6f6b; font-weight: 500; }
.ap-pop-chips { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: .35rem; }
.ap-pop-chip {
  display: inline-flex;
  align-items: center;
  border-radius: 999px;
  padding: .25rem .55rem;
  background: #e3ece9;
  color: #23463e;
  font-size: .78rem;
  font-weight: 700;
}
.ap-pop-chip.active { background: #d7f1e1; color: #166534; }
.ap-pop-chip.na { background: #f1f3f2; color: #66736f; }
.ap-pop-body { padding: 1rem; }
.ap-pop-body fieldset { margin: .85rem 0; }
.ap-pop-result {
  padding: .8rem 1rem;
  margin: .8rem 0;
  border-left: 5px solid #0f766e;
  background: #e9f6f2;
  border-radius: 8px;
  line-height: 1.55;
}
.ap-assessment-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  gap: .75rem;
}
.ap-assessment-card {
  border: 1px solid #d2dfdb;
  border-radius: 12px;
  padding: .75rem;
  background: #fff;
}
.ap-assessment-card h5 { margin: 0 0 .2rem; font-size: 1rem; }
.ap-assessment-card > small { display: block; color: #66736f; margin-bottom: .55rem; min-height: 2.2em; }
.ap-assessment-card label { margin-bottom: .45rem; }
.ap-pop-stats { margin-top: .7rem; }
[data-theme="dark"] .ap-pop-module,
body.dark .ap-pop-module { background: #15221f; border-color: #39524c; }
[data-theme="dark"] .ap-pop-module > summary,
body.dark .ap-pop-module > summary { background: #20332e; }
[data-theme="dark"] .ap-assessment-card,
body.dark .ap-assessment-card { background: #192925; border-color: #39524c; }
[data-theme="dark"] .ap-pop-result,
body.dark .ap-pop-result { background: #1d3932; }

@media (max-width: 800px) {
  .ap-populations-title,
  .ap-pop-header { flex-direction: column; align-items: stretch; }
  .ap-pop-chips { justify-content: flex-start; }
  .ap-assessment-grid { grid-template-columns: 1fr; }
  .ap-pop-body { padding: .75rem; }
}


/* v14.1-beta.2: IMC, contexto de glucosa y búsqueda CIE-10 */
.ap-derived-field{background:#eef6f3!important;color:#0b6b57!important;font-weight:900}.ap-measure-grid label small{display:block;margin-top:.25rem;color:var(--muted,#63736d);font-weight:500;font-size:.76rem}.ap-diagnosis-picker{position:relative;display:flex;flex-direction:column;gap:.35rem}.ap-diagnosis-picker>label{display:flex;flex-direction:column;gap:.35rem}.ap-diagnosis-results{position:absolute;z-index:40;top:calc(100% - 1.25rem);left:0;right:0;max-height:290px;overflow:auto;border:1px solid var(--border,#cbdad5);border-radius:13px;background:var(--surface,#fff);box-shadow:0 14px 34px rgba(0,0,0,.18)}.ap-diagnosis-option{width:100%;display:grid;grid-template-columns:90px 1fr;gap:.7rem;padding:.65rem .8rem;border:0;border-bottom:1px solid var(--border,#dce7e3);background:transparent;color:var(--text,#17251f);text-align:left;cursor:pointer;font:inherit}.ap-diagnosis-option:hover,.ap-diagnosis-option:focus{background:#eaf5f1;outline:2px solid #0b6b57;outline-offset:-2px}.ap-diagnosis-option strong{color:#0b6b57}.ap-diagnosis-option span{font-weight:650}.ap-diagnosis-empty{padding:.8rem;color:var(--muted,#63736d)}[data-theme="dark"] .ap-diagnosis-results,body.dark .ap-diagnosis-results{background:#172822}[data-theme="dark"] .ap-diagnosis-option:hover,[data-theme="dark"] .ap-diagnosis-option:focus,body.dark .ap-diagnosis-option:hover,body.dark .ap-diagnosis-option:focus{background:#29443a}


/* v14.1-beta.2 — Hoja Diaria oficial con coordenadas SVG */
.ap-template-svg{display:block;width:100%;height:auto;background:#fff;text-rendering:geometricPrecision;shape-rendering:geometricPrecision}
.ap-template-svg .ap-svg-text{font-family:Arial,Helvetica,sans-serif;letter-spacing:0}
.ap-official-page{width:100%;margin:0 auto;background:#fff;overflow:hidden;page-break-after:always;break-after:page}
.ap-official-page:last-child{page-break-after:auto;break-after:auto}
@page{size:340mm 216mm;margin:0}
@media print{
  .ap-official-print{display:block!important;width:340mm!important;margin:0!important;padding:0!important}
  .ap-official-print .ap-official-page{display:block!important;width:340mm!important;height:216mm!important;min-height:216mm!important;margin:0!important;padding:0!important;overflow:hidden!important}
  .ap-official-print .ap-template-svg{display:block!important;width:340mm!important;height:auto!important;margin:0!important;padding:0!important}
  .ap-official-note{display:none!important}
}

/* v14.1-beta.2 — panel diario, guardado visible, revisión de cierre y búsqueda global */
.ap-operational-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.7rem;margin:1rem 0}.ap-operational-strip>div{display:flex;flex-direction:column;padding:.85rem 1rem;border:1px solid var(--border,#d6e4df);border-radius:16px;background:#f2f8f6}.ap-operational-strip strong{font-size:1.55rem;color:#08765f}.ap-operational-strip span{font-size:.82rem;color:var(--muted,#61736c)}
.ap-dashboard-tools{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-bottom:1rem}.ap-queue-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.ap-queue-card{border:1px solid var(--border,#d6e4df);border-radius:18px;padding:1rem;background:var(--surface,#fff)}.ap-queue-card.warning{border-color:#e4bd65}.ap-queue-card.danger{border-color:#dc8c83}.ap-queue-card>header{display:flex;justify-content:space-between;gap:.8rem;align-items:center}.ap-queue-card>header h4{margin:0}.ap-queue-card>header span{min-width:2rem;height:2rem;display:grid;place-items:center;border-radius:999px;background:#e8f4f0;color:#075e4b;font-weight:900}.ap-queue-card ul{list-style:none;padding:0;margin:.7rem 0 0;display:flex;flex-direction:column;gap:.45rem}.ap-queue-card li{display:flex;justify-content:space-between;align-items:center;gap:.6rem;padding:.55rem .6rem;border-radius:11px;background:#f4f8f6}.ap-queue-card li.overdue{background:#fff4d8}.ap-queue-card li.high-risk{background:#fde9e7}.ap-queue-card li span{display:flex;flex-direction:column;min-width:0}.ap-queue-card li strong,.ap-queue-card li small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ap-queue-card li small{color:var(--muted,#61736c)}
.ap-global-search{display:grid;grid-template-columns:minmax(240px,1fr) 180px auto auto;gap:.6rem;margin:1rem 0}.ap-global-search input,.ap-global-search select{width:100%;border:1px solid var(--border,#cbdad5);border-radius:12px;background:var(--surface,#fff);color:var(--text,#17251f);padding:.72rem .8rem;font:inherit}.ap-search-results{display:flex;flex-direction:column;gap:.55rem}.ap-search-results article{display:grid;grid-template-columns:85px 1fr auto;gap:.8rem;align-items:center;padding:.75rem;border:1px solid var(--border,#d6e4df);border-radius:14px}.ap-search-results article>div{display:flex;flex-direction:column;min-width:0}.ap-search-results article small{color:var(--muted,#61736c)}.ap-search-type{font-size:.76rem;font-weight:850;text-transform:uppercase;color:#08765f}
.ap-section-progress{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.6rem;margin:1rem 0}.ap-section-progress-item{appearance:none;width:100%;font:inherit;color:inherit;text-align:left;display:grid;grid-template-columns:1fr 58px;gap:.4rem .7rem;align-items:center;padding:.75rem;border:1px solid var(--border,#d5e3de);border-radius:13px;background:#f5f9f7;cursor:pointer;transition:transform .14s ease,box-shadow .14s ease,border-color .14s ease,background .14s ease}.ap-section-progress-item:hover{transform:translateY(-1px);border-color:#78af9f;box-shadow:0 7px 16px rgba(8,118,95,.12)}.ap-section-progress-item:focus-visible{outline:3px solid rgba(8,118,95,.28);outline-offset:2px}.ap-section-progress-item.incomplete{border-color:#e1b45b;background:#fff9ec}.ap-section-progress-item.incomplete:hover{border-color:#bd7900;background:#fff5d9}.ap-section-progress-item.complete{background:#f1faf6}.ap-section-progress-item.na{cursor:default}.ap-section-progress-item>span{display:flex;justify-content:space-between;gap:.4rem}.ap-section-progress-item small{color:var(--muted,#61736c)}.ap-section-progress-item b{text-align:right;color:#08765f}.ap-progress-track{grid-column:1/-1;height:7px;border-radius:999px;background:#dce8e4;overflow:hidden}.ap-progress-track span{display:block;height:100%;background:#0b8066;border-radius:inherit}.ap-progress-card-action{grid-column:1/-1;font-style:normal;font-size:.76rem;font-weight:800;color:#7d5700}.ap-section-progress-item.complete .ap-progress-card-action{color:#08765f}.ap-section-progress-item.na .ap-progress-card-action{color:var(--muted,#61736c)}
.ap-save-actions{align-items:center}.ap-save-indicator,.ap-backup-indicator{display:inline-flex;align-items:center;padding:.42rem .65rem;border-radius:999px;font-size:.82rem;font-weight:800;background:#dff3ea;color:#086044}.ap-save-indicator.saving{background:#e5eefc;color:#315e9b}.ap-save-indicator.dirty,.ap-save-indicator.dirty.dirty{background:#fff1ca;color:#7b5500}.ap-save-indicator.error{background:#fde3df;color:#a1271d}.ap-backup-indicator{background:#eef3f1;color:#526b62}.ap-backup-indicator.stale{background:#fff0cf;color:#8a5b00}
.ap-modal-backdrop{position:fixed;inset:0;background:rgba(5,24,18,.72);z-index:9999;display:grid;place-items:center;padding:1rem;overflow:auto}.ap-close-review{width:min(1100px,96vw);max-height:94vh;overflow:auto;background:var(--surface,#fff);color:var(--text,#17251f);border-radius:24px;padding:1.2rem;box-shadow:0 24px 80px rgba(0,0,0,.38)}.ap-close-review>header{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start}.ap-close-review h3{font-size:1.65rem;margin:.25rem 0}.ap-close-review p{margin:.2rem 0}.ap-review-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.ap-review-grid article,.ap-review-patients article{border:1px solid var(--border,#d6e4df);border-radius:14px;padding:.8rem}.ap-review-grid dl{display:grid;grid-template-columns:130px 1fr;gap:.35rem}.ap-review-grid dt{font-weight:800}.ap-review-grid dd{margin:0}.ap-review-patients{display:flex;flex-direction:column;gap:.65rem;margin:1rem 0}.ap-review-patients article>header{display:flex;justify-content:space-between;gap:.8rem}.ap-review-patient-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.4rem .8rem}.ap-review-confirm{display:flex;gap:.55rem;align-items:flex-start;font-weight:800;padding:.8rem;border:1px solid #9dcbbd;border-radius:12px;background:#eef8f4}.ap-review-confirm input{width:auto;margin-top:.2rem}
@media(max-width:850px){.ap-operational-strip,.ap-dashboard-tools,.ap-queue-grid,.ap-review-grid,.ap-review-patient-grid{grid-template-columns:1fr}.ap-global-search{grid-template-columns:1fr}.ap-close-review>header{flex-direction:column}.ap-section-progress{grid-template-columns:1fr}}

/* v14.1-beta.2: navegación rápida entre integrantes */
.ap-patient-navigator {
  display: flex;
  align-items: center;
  gap: .55rem;
  flex-wrap: wrap;
  margin: .85rem 0 1rem;
  padding: .75rem;
  border: 1px solid var(--line, #cbd9d5);
  border-radius: 14px;
  background: var(--surface-soft, #f2f8f6);
}
.ap-patient-navigator strong { margin-right: .2rem; }
.ap-patient { scroll-margin-top: 1rem; }
@media (max-width: 700px) {
  .ap-patient-navigator { align-items: stretch; }
  .ap-patient-navigator strong { width: 100%; }
  .ap-patient-navigator .btn { flex: 1 1 12rem; }
}


/* v14.1-beta.2.1 — agenda contenida y localizador de campos faltantes */
.ap-planning-agenda{min-width:0;overflow:hidden}
.ap-planning-agenda .ap-heading{min-width:0}
.ap-planning-agenda .ap-heading>div{min-width:0}
.ap-planning-agenda #ap_week_plans{min-width:0;max-width:165px}
.ap-plan-filter-bar{grid-template-columns:repeat(2,minmax(0,1fr))!important}
.ap-plan-filter-bar>*{min-width:0}
.ap-plan-filter-bar>input:first-child{grid-column:1/-1}
.ap-plan-filter-bar .btn{width:100%}
.ap-planning-agenda .ap-list{max-width:100%;overflow-x:hidden}
.ap-planning-agenda .ap-list-card{min-width:0}
.ap-planning-agenda .ap-list-card>div:first-child{min-width:0}
.ap-planning-agenda .ap-list-card strong,
.ap-planning-agenda .ap-list-card span,
.ap-planning-agenda .ap-list-card small{overflow-wrap:anywhere}

.ap-missing-toolbar{display:flex;align-items:center;justify-content:space-between;gap:.8rem;margin:.35rem 0 1rem;padding:.75rem .9rem;border:1px solid #e5b45f;border-radius:14px;background:#fff8e9}
.ap-missing-toolbar span{font-weight:850;color:#865600}
.ap-missing-field{border:2px solid #dc7b0b!important;background:#fff8ec!important;box-shadow:0 0 0 3px rgba(220,123,11,.12)!important;border-radius:12px}
label.ap-missing-field,.ap-diagnosis-picker.ap-missing-field{padding:.55rem}
fieldset.ap-missing-field{padding:1rem}
details.ap-missing-field>summary{background:#fff1d7}
.ap-missing-note{display:block;margin-top:.32rem;color:#a65300;font-size:.76rem;font-weight:850}
.ap-missing-field input,.ap-missing-field select,.ap-missing-field textarea{border-color:#dc7b0b!important}
@media(max-width:650px){.ap-missing-toolbar{align-items:stretch;flex-direction:column}.ap-missing-toolbar .btn{width:100%}.ap-plan-filter-bar{grid-template-columns:1fr!important}.ap-plan-filter-bar>input:first-child{grid-column:auto}}

/* v14.1-beta.2.2 · control de edición entre pestañas */
.session-readonly-banner{position:sticky;top:0;z-index:99999;padding:.7rem 1rem;background:#fff3cd;color:#5d4100;border-bottom:2px solid #d49b00;text-align:center;font-weight:600}.session-readonly-banner button{margin-left:.75rem;border:1px solid currentColor;border-radius:999px;background:#fff;padding:.35rem .8rem;font-weight:700;cursor:pointer}body[data-session-mode="readonly"] .ap-save-actions,body[data-session-mode="readonly"] [data-action="save-progress"],body[data-session-mode="readonly"] [data-action="save-incomplete"],body[data-session-mode="readonly"] [data-action="save-complete"]{opacity:.65}.ap-progress-na{font-weight:700;color:#5f6b67}.ap-section-progress-item.na .ap-progress-track span{width:100%!important;background:repeating-linear-gradient(45deg,#c7d6d1,#c7d6d1 5px,#edf3f1 5px,#edf3f1 10px)}


.ap-quick-patient-launch{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.1rem;border:1px solid #c8ddd5;border-radius:18px;background:#eef8f4;margin:.35rem 0 .9rem}
.ap-quick-patient-launch strong{display:block;font-size:1rem;color:#0b6b57}
.ap-quick-patient-launch p{margin:.25rem 0 0;color:#4e645d}
.ap-quick-patient-button{white-space:nowrap;font-weight:800}
.ap-quick-patient-card{border:1px solid #d9c18f;border-radius:18px;background:#fff9ec;padding:1rem 1.05rem;margin:0 0 1rem;box-shadow:0 8px 18px rgba(163,105,0,.08)}
.ap-quick-patient-card h4{margin:.1rem 0 .35rem}
.ap-quick-patient-card .actions{margin-top:.8rem}
@media(max-width:650px){.ap-quick-patient-launch{flex-direction:column;align-items:stretch}.ap-quick-patient-button{width:100%}}


.ap-visit-basic-grid{grid-template-columns:repeat(5,minmax(0,1fr))}
@media(max-width:1050px){.ap-visit-basic-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:650px){.ap-visit-basic-grid{grid-template-columns:1fr}}

/* v15.1.7 · borradores múltiples, diagnósticos CIE-10 múltiples y estado longitudinal */
.ap-draft-list{margin:0 0 1rem;padding:1rem;border:1px solid #cbded7;border-radius:18px;background:#f4faf7}
.ap-draft-list h4{margin:.1rem 0 .25rem}
.ap-draft-list .ap-list-card{background:var(--surface,#fff);margin-top:.65rem}
.ap-draft-print-note{display:inline-flex;align-items:center;max-width:13rem;padding:.35rem .55rem;border-radius:10px;background:#f2f4f3;color:#596a64;font-size:.78rem;font-weight:700;line-height:1.2}
.ap-sync-state{display:block;margin-top:.25rem;font-size:.75rem;font-weight:700}
.ap-sync-state.synced{color:#08765f}
.ap-sync-state.pending{color:#8a6200}
.ap-sync-state.error{color:#b42318}


.ap-diagnoses-fieldset{border-color:#cfe0da!important;background:rgba(238,248,244,.45)}
.ap-diagnosis-list{display:grid;grid-template-columns:1fr;gap:.85rem}
.ap-diagnosis-list .ap-diagnosis-picker{margin:0}
.ap-required-text{display:inline-block;margin-left:.35rem;color:#8a4f00;font-size:.78rem;font-weight:800}



.ap-daily-concentrate{border:1px solid #b9d8cd;border-radius:20px;background:#f1f9f6;padding:1rem 1.1rem;margin-bottom:1.2rem}
.ap-daily-concentrate-controls{display:grid;grid-template-columns:minmax(220px,320px) 1fr auto;gap:.85rem;align-items:end}
.ap-daily-concentrate-controls label{display:flex;flex-direction:column;gap:.35rem;font-weight:800}
.ap-daily-concentrate-controls input{width:100%;border:1px solid var(--border,#cbdad5);border-radius:12px;background:var(--surface,#fff);color:var(--text,#17251f);padding:.72rem .8rem;font:inherit}
.ap-daily-summary{display:grid;grid-template-columns:repeat(3,auto auto);gap:.2rem .45rem;align-items:baseline;justify-content:start;padding:.55rem .75rem;border-radius:14px;background:var(--surface,#fff);border:1px solid var(--border,#d5e3de)}
.ap-daily-summary strong{font-size:1.25rem;color:#08765f}.ap-daily-summary span{color:var(--muted,#61736c);margin-right:.5rem}
.ap-daily-preview{margin-top:1rem;border-top:1px solid #c9ddd6;padding-top:1rem}
.ap-daily-preview-table{min-width:1050px}.ap-daily-preview-table input[type=checkbox]{width:1.2rem;height:1.2rem}
@media(max-width:850px){.ap-daily-concentrate-controls{grid-template-columns:1fr}.ap-daily-summary{grid-template-columns:repeat(3,auto auto)}.ap-daily-concentrate-controls .btn{width:100%}}
@media(max-width:520px){.ap-daily-summary{grid-template-columns:auto 1fr}}


/* v15.3.0 — Orquestador Clínico y Biblioteca de Evaluaciones */
.ap-applicability-summary{margin:1rem 0;padding:1rem;border:1px solid var(--border,#cbd5e1);border-radius:14px;background:var(--surface,#fff)}
.ap-applicability-summary header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.7rem}
.ap-applicability-summary h5{margin:.1rem 0 .2rem;font-size:1rem}
.ap-applicability-summary>div{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:.65rem}
.ap-applicability-summary article{display:flex;flex-direction:column;gap:.25rem;padding:.7rem;border-radius:10px;border:1px solid var(--border,#d1d5db)}
.ap-applicability-summary article.applies{border-left:5px solid #08765f;background:rgba(8,118,95,.07)}
.ap-applicability-summary article.not-applies{opacity:.78;background:rgba(100,116,139,.06)}
.ap-applicability-summary article span{font-weight:700;font-size:.82rem}
.ap-applicability-summary article small{line-height:1.35}
.ap-kicker{display:block;text-transform:uppercase;letter-spacing:.08em;font-size:.72rem;font-weight:800;color:var(--muted,#64748b)}
.ap-clinical-orchestrator{margin:1rem 0;padding:1rem;border:1px solid rgba(8,118,95,.35);border-radius:14px;background:linear-gradient(135deg,rgba(8,118,95,.08),rgba(14,165,233,.05))}
.ap-clinical-orchestrator>header{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start;margin-bottom:.8rem}
.ap-clinical-orchestrator h5{font-size:1.05rem;margin:.15rem 0 .25rem}
.ap-clinical-orchestrator p{margin:0}
.ap-orchestrator-alerts{display:grid;gap:.5rem}
.ap-smart-alert{display:flex;flex-direction:column;gap:.18rem;padding:.65rem .75rem;border-radius:9px;border-left:5px solid #64748b;background:rgba(100,116,139,.08)}
.ap-smart-alert.info{border-left-color:#0284c7;background:rgba(2,132,199,.08)}
.ap-smart-alert.warning{border-left-color:#d97706;background:rgba(217,119,6,.10)}
.ap-smart-alert.critical{border-left-color:#b91c1c;background:rgba(185,28,28,.12)}
.ap-assessment-library{display:grid;gap:1rem}
.ap-library-group-title{margin:.2rem 0 .55rem;font-size:1rem}
.ap-library-other{border:1px dashed var(--border,#cbd5e1);border-radius:10px;padding:.7rem}
.ap-library-other>summary{cursor:pointer;font-weight:800}
.ap-assessment-card{display:flex;flex-direction:column;gap:.65rem;border:1px solid var(--border,#cbd5e1);border-radius:12px;padding:.85rem;background:var(--surface,#fff);min-width:0}
.ap-assessment-card.recommended{border-color:rgba(8,118,95,.6);box-shadow:0 0 0 2px rgba(8,118,95,.08)}
.ap-assessment-card.completed{border-color:rgba(22,163,74,.55)}
.ap-assessment-card.overridden{border-color:rgba(100,116,139,.45);opacity:.86}
.ap-assessment-card>header{display:flex;justify-content:space-between;align-items:flex-start;gap:.6rem}
.ap-assessment-card h5{margin:0;font-size:1rem}
.ap-assessment-card header small{display:block;margin-top:.2rem;line-height:1.3}
.ap-instrument-mode{white-space:nowrap;border-radius:999px;padding:.25rem .5rem;font-size:.7rem;font-weight:800;background:rgba(100,116,139,.12)}
.ap-instrument-mode.integrated{background:rgba(22,163,74,.12)}
.ap-instrument-mode.assisted{background:rgba(2,132,199,.12)}
.ap-instrument-mode.external{background:rgba(217,119,6,.12)}
.ap-recommendation-box{display:flex;justify-content:space-between;gap:.8rem;padding:.7rem;border-radius:9px;background:rgba(8,118,95,.08);border:1px solid rgba(8,118,95,.24)}
.ap-recommendation-box.overridden{background:rgba(100,116,139,.08);border-color:rgba(100,116,139,.25)}
.ap-recommendation-box p{margin:.2rem 0}
.ap-recommendation-box small{display:block;line-height:1.35}
.ap-recommendation-actions{display:flex;flex-direction:column;gap:.4rem;min-width:max-content}
.ap-instrument-fields{margin:0;padding:.7rem;border-style:dashed}
.ap-assessment-guidance{margin:.2rem 0}
.ap-history-disclosure{border-top:1px solid var(--border,#e2e8f0);padding-top:.5rem}
.ap-history-disclosure>summary{cursor:pointer;font-weight:700}
.ap-assessment-history{overflow:auto;margin-top:.55rem}
.ap-assessment-history table{width:100%;border-collapse:collapse;font-size:.82rem}
.ap-assessment-history th,.ap-assessment-history td{padding:.4rem;border-bottom:1px solid var(--border,#e2e8f0);text-align:left;vertical-align:top}
.ap-assessment-history td small{display:block}
.ap-care-plan{border-color:rgba(14,116,144,.35);background:rgba(14,116,144,.04)}
.ap-care-plan ol{display:grid;gap:.45rem;padding-left:1.25rem}
.ap-care-plan li{padding:.45rem .55rem;border-left:4px solid #64748b;background:rgba(100,116,139,.06)}
.ap-care-plan li.priority-alta{border-left-color:#b91c1c}
.ap-care-plan li.priority-media{border-left-color:#d97706}
.ap-care-plan li small{display:block;margin-top:.15rem}
@media (max-width:760px){.ap-clinical-orchestrator>header,.ap-recommendation-box,.ap-assessment-card>header{flex-direction:column}.ap-recommendation-actions{flex-direction:row;flex-wrap:wrap}.ap-instrument-mode{white-space:normal}}

/* v15.3.3 — prevención y resolución de duplicados */
.ap-duplicate-badge{display:inline-flex;align-items:center;margin-top:.35rem;padding:.25rem .55rem;border-radius:999px;font-size:.78rem;font-weight:800;line-height:1.15}
.ap-duplicate-badge.possible{background:#fff0e9;color:#a52b1f;border:1px solid #e7a198}
.ap-duplicate-badge.confirmed{background:#e9f6f1;color:#086a55;border:1px solid #9acdbf}
.ap-row-possible-duplicate{background:#fffaf7}
.ap-row-possible-duplicate td:first-child{box-shadow:inset 4px 0 0 #c53a2d}
.ap-duplicate-patient-notice{display:flex;flex-wrap:wrap;gap:.45rem;align-items:center;margin-bottom:1rem}
.ap-duplicate-patient-notice small{display:block;flex-basis:100%}
.ap-duplicate-dialog .ap-modal{max-width:650px}
.ap-duplicate-dialog-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem;margin-top:1rem}
.ap-duplicate-resolution{width:min(1100px,94vw);max-height:92vh;overflow:auto}
.ap-duplicate-candidates{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}
.ap-duplicate-compare-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.ap-duplicate-compare-card{border:1px solid var(--line,#cddbd7);border-radius:16px;padding:1rem;background:#fff}
.ap-duplicate-compare-card header{display:flex;justify-content:space-between;gap:1rem;border-bottom:1px solid var(--line,#cddbd7);padding-bottom:.65rem;margin-bottom:.65rem}
.ap-duplicate-compare-card dl{display:grid;grid-template-columns:minmax(125px,.8fr) 1.5fr;gap:.35rem .7rem;margin:0}
.ap-duplicate-compare-card dt{font-weight:800}.ap-duplicate-compare-card dd{margin:0;overflow-wrap:anywhere}
.ap-radio-line{display:block;padding:.6rem;border:1px solid var(--line,#cddbd7);border-radius:12px;margin:.45rem 0}
@media(max-width:780px){.ap-duplicate-dialog-actions,.ap-duplicate-compare-grid{grid-template-columns:1fr}.ap-duplicate-resolution{width:96vw}.ap-duplicate-compare-card dl{grid-template-columns:1fr}}
