
/* Auditoría Documental — módulo aislado */
#adApp, #adLock { --ad-navy:#0d3a63; --ad-blue:#1f6ea5; --ad-border:#d7e1e9; --ad-bg:#f4f7fa; --ad-good:#176b35; --ad-warn:#8a5200; --ad-bad:#a11b1b; }
.ad-hidden{display:none!important}
.ad-grid{display:grid;gap:1rem}
.ad-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.ad-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.ad-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:.75rem;margin:1rem 0}
.ad-kpi{border:1px solid var(--ad-border);border-radius:12px;background:#fff;padding:.9rem;min-height:88px}
.ad-kpi span{display:block;color:#607384;font-size:.82rem}
.ad-kpi strong{display:block;color:var(--ad-navy);font-size:1.55rem;margin-top:.25rem}
.ad-card{border:1px solid var(--ad-border);border-radius:14px;background:#fff;padding:1rem;margin:.8rem 0;box-shadow:0 2px 8px rgba(13,58,99,.05)}
.ad-card h3,.ad-card h4{color:var(--ad-navy);margin-top:0}
.ad-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;flex-wrap:wrap}
.ad-toolbar{display:flex;gap:.55rem;align-items:center;flex-wrap:wrap;margin:.8rem 0}
.ad-subnav{display:flex;gap:.45rem;flex-wrap:wrap;border-bottom:1px solid var(--ad-border);padding-bottom:.7rem;margin-bottom:1rem}
.ad-subnav button{border:1px solid var(--ad-border);background:#fff;color:var(--ad-navy);border-radius:999px;padding:.55rem .85rem;font-weight:700;cursor:pointer}
.ad-subnav button.active{background:var(--ad-navy);color:#fff;border-color:var(--ad-navy)}
.ad-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}
.ad-form .ad-full{grid-column:1/-1}
.ad-form label{display:grid;gap:.35rem;font-weight:700;color:#2f4354}
.ad-form input,.ad-form select,.ad-form textarea{width:100%;border:1px solid #bccbd6;border-radius:8px;padding:.7rem;background:#fff;color:#162f43}
.ad-form textarea{min-height:86px;resize:vertical}
.ad-help{font-size:.82rem;color:#667b8d;font-weight:400}
.ad-message{border-radius:9px;padding:.75rem .85rem;margin:.65rem 0}
.ad-message.info{background:#eaf3fa;color:#174d74;border:1px solid #b8d4e8}
.ad-message.ok{background:#e7f5eb;color:#176b35;border:1px solid #a8d7b6}
.ad-message.warn{background:#fff3dc;color:#7b4b00;border:1px solid #ecc779}
.ad-message.error{background:#fde9e9;color:#9b1c1c;border:1px solid #efb4b4}
.ad-badges{display:flex;gap:.4rem;flex-wrap:wrap}
.ad-badge{display:inline-flex;align-items:center;border-radius:999px;padding:.28rem .62rem;font-size:.76rem;font-weight:800;background:#e8edf2;color:#3c5264}
.ad-badge.good,.ad-badge.cumple{background:#e5f5ea;color:var(--ad-good)}
.ad-badge.bad,.ad-badge.no-cumple{background:#fde7e7;color:var(--ad-bad)}
.ad-badge.warn,.ad-badge.observado{background:#fff2d8;color:var(--ad-warn)}
.ad-badge.manual{background:#e8effc;color:#31568d}
.ad-badge.pending{background:#edf0f3;color:#5c6d7c}
.ad-badge.closed{background:#dceee3;color:#176b35}
.ad-list{display:grid;gap:.65rem}
.ad-list-item{border:1px solid var(--ad-border);border-radius:11px;padding:.8rem;background:#fff}
.ad-list-item.selected{outline:2px solid #4d91c3;border-color:#4d91c3}
.ad-list-item button.ad-link{background:none;border:0;color:var(--ad-navy);font-weight:800;text-align:left;padding:0;cursor:pointer}
.ad-meta{font-size:.83rem;color:#667b8d;margin-top:.25rem}
.ad-worker-layout{display:grid;grid-template-columns:minmax(230px,320px) minmax(0,1fr);gap:1rem;align-items:start}
.ad-worker-sidebar{position:sticky;top:1rem}
.ad-preview{border:1px dashed #8fb2ca;border-radius:10px;background:#f1f7fb;padding:.85rem}
.ad-preview strong{color:var(--ad-navy)}
.ad-profile-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.45rem}
.ad-check{display:flex!important;grid-template-columns:auto 1fr!important;align-items:center;gap:.45rem!important;border:1px solid var(--ad-border);border-radius:8px;padding:.55rem;background:#fff;font-weight:600!important}
.ad-check input{width:auto!important}
.ad-docs{display:grid;gap:.55rem}
.ad-doc{border:1px solid var(--ad-border);border-radius:10px;padding:.75rem;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.7rem;align-items:center}
.ad-doc-name{font-weight:800;color:#244158;word-break:break-word}
.ad-doc-actions{display:flex;gap:.35rem;flex-wrap:wrap;justify-content:flex-end}
.ad-doc-extracted{font-size:.8rem;color:#536b7d;margin-top:.35rem}
.ad-criteria-group{border:1px solid var(--ad-border);border-radius:12px;background:#fff;margin:.7rem 0;overflow:hidden}
.ad-criteria-group>summary{cursor:pointer;padding:.85rem 1rem;font-weight:850;color:var(--ad-navy);background:#f2f6f9;display:flex;justify-content:space-between;gap:.8rem}
.ad-criteria-group[open]>summary{border-bottom:1px solid var(--ad-border)}
.ad-criterion{display:grid;grid-template-columns:minmax(110px,150px) minmax(180px,1.2fr) minmax(160px,1fr) minmax(190px,1.2fr);gap:.7rem;padding:.85rem;border-bottom:1px solid #edf1f4;align-items:start}
.ad-criterion:last-child{border-bottom:0}
.ad-criterion-code{font-weight:900;color:var(--ad-navy)}
.ad-criterion-title{font-weight:750;color:#253d50}
.ad-criterion small{display:block;color:#65798a;margin-top:.25rem;line-height:1.35}
.ad-criterion select,.ad-criterion textarea{width:100%;border:1px solid #bccbd6;border-radius:7px;padding:.5rem}
.ad-criterion textarea{min-height:56px;resize:vertical}
.ad-criterion-actions{display:flex;gap:.4rem;align-items:flex-end;flex-wrap:wrap}
.ad-table-wrap{overflow:auto;border:1px solid var(--ad-border);border-radius:10px}
.ad-table{width:100%;border-collapse:collapse;font-size:.86rem}
.ad-table th{background:#eef3f7;color:var(--ad-navy);text-align:left;padding:.65rem;white-space:nowrap}
.ad-table td{padding:.65rem;border-top:1px solid #e6edf2;vertical-align:top}
.ad-empty{padding:1.2rem;text-align:center;color:#6b7f8f;border:1px dashed #bdcbd5;border-radius:10px;background:#fafcfd}
.ad-progress{height:8px;border-radius:999px;background:#e5ebf0;overflow:hidden}
.ad-progress>span{display:block;height:100%;background:#2d78aa;width:0;transition:width .25s}
.ad-sensitive{border-left:4px solid #b86d00;background:#fff7e8;padding:.8rem;border-radius:8px;color:#69420a}
.ad-lock{max-width:520px;margin:1rem auto;border:1px solid var(--ad-border);border-radius:14px;padding:1.2rem;background:#fff}
.ad-lock h3{color:var(--ad-navy);margin-top:0}
.ad-status-line{display:flex;gap:.45rem;flex-wrap:wrap;align-items:center}
.ad-file-note{font-size:.8rem;color:#6a7e8e;margin-top:.35rem}
.ad-history-entry{border-left:3px solid #8ca9bd;padding:.55rem .75rem;margin:.45rem 0;background:#f7f9fb;border-radius:0 8px 8px 0}
.ad-history-entry strong{color:#28475f}
.ad-export-note{font-size:.8rem;color:#64798a}
@media(max-width:1050px){
  .ad-worker-layout{grid-template-columns:1fr}
  .ad-worker-sidebar{position:static}
  .ad-criterion{grid-template-columns:1fr 1fr}
}
@media(max-width:720px){
  .ad-grid-2,.ad-grid-3,.ad-form{grid-template-columns:1fr}
  .ad-form .ad-full{grid-column:auto}
  .ad-criterion{grid-template-columns:1fr}
  .ad-doc{grid-template-columns:1fr}
  .ad-doc-actions{justify-content:flex-start}
}

/* Interfaz V1 integrada en DRS */
#auditoria-documental{--ad-navy:#0d3a63;--ad-blue:#1f6ea5;--ad-border:#d7e1e9;--ad-bg:#f4f7fa;--ad-good:#176b35;--ad-warn:#8a5200;--ad-bad:#a11b1b;position:relative}
#auditoria-documental .ad-module-heading,#auditoria-documental .ad-detail-heading,#auditoria-documental .ad-worker-heading,#auditoria-documental .ad-card-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;flex-wrap:wrap}
#auditoria-documental .ad-module-heading h2,#auditoria-documental .ad-detail-heading h3,#auditoria-documental .ad-worker-heading h3{margin:.15rem 0;color:var(--ad-navy)}
#auditoria-documental .ad-header-actions,#auditoria-documental .ad-card-actions,#auditoria-documental .ad-inline-badges{display:flex;gap:.45rem;align-items:center;flex-wrap:wrap}
#auditoria-documental .ad-inline-form,#auditoria-documental .ad-search-row,#auditoria-documental .ad-filter-row{display:flex;gap:.65rem;align-items:end;flex-wrap:wrap}
#auditoria-documental .ad-inline-form label{flex:1;min-width:220px}
#auditoria-documental .ad-status-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem;margin:1rem 0}
#auditoria-documental .ad-status{border-radius:10px;padding:.72rem .8rem;font-weight:750;border:1px solid var(--ad-border);background:#fff}
#auditoria-documental .ad-status.ad-ok,#auditoria-documental .ad-badge.ad-ok,#auditoria-documental .ad-worker-tab em.ad-ok{background:#e5f5ea;color:var(--ad-good);border-color:#a8d7b6}
#auditoria-documental .ad-status.ad-warn,#auditoria-documental .ad-badge.ad-warn,#auditoria-documental .ad-worker-tab em.ad-warn{background:#fff2d8;color:var(--ad-warn);border-color:#ecc779}
#auditoria-documental .ad-status.ad-bad,#auditoria-documental .ad-badge.ad-bad,#auditoria-documental .ad-worker-tab em.ad-bad{background:#fde7e7;color:var(--ad-bad);border-color:#efb4b4}
#auditoria-documental .ad-status.ad-manual,#auditoria-documental .ad-badge.ad-manual,#auditoria-documental .ad-worker-tab em.ad-manual{background:#e8effc;color:#31568d;border-color:#b8c9e7}
#auditoria-documental .ad-status.ad-na,#auditoria-documental .ad-badge.ad-na,#auditoria-documental .ad-worker-tab em.ad-na{background:#f0f1f2;color:#5b6770;border-color:#d8dcdf}
#auditoria-documental .ad-status.ad-pending,#auditoria-documental .ad-badge.ad-pending,#auditoria-documental .ad-worker-tab em.ad-pending{background:#edf0f3;color:#5c6d7c;border-color:#d5dce2}
#auditoria-documental .ad-badge.ad-neutral{background:#edf2f6;color:#314b60;border:1px solid #d2dde5}
#auditoria-documental .ad-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;margin:1rem 0}
#auditoria-documental .ad-kpi{border:1px solid var(--ad-border);border-radius:12px;background:#fff;padding:.9rem;min-height:88px}
#auditoria-documental .ad-kpi span{display:block;color:#607384;font-size:.82rem}
#auditoria-documental .ad-kpi strong{display:block;color:var(--ad-navy);font-size:1.55rem;margin-top:.25rem}
#auditoria-documental .ad-subtabs{display:flex;gap:.45rem;flex-wrap:wrap;border-bottom:1px solid var(--ad-border);padding-bottom:.7rem;margin:1rem 0}
#auditoria-documental .ad-subtab{border:1px solid var(--ad-border);background:#fff;color:var(--ad-navy);border-radius:999px;padding:.55rem .9rem;font-weight:800;cursor:pointer}
#auditoria-documental .ad-subtab.active{background:var(--ad-navy);color:#fff;border-color:var(--ad-navy)}
#auditoria-documental .ad-subpanel{display:none}
#auditoria-documental .ad-subpanel.active{display:block}
#auditoria-documental .ad-two-columns{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(360px,1.2fr);gap:1rem;align-items:start}
#auditoria-documental .ad-card{border:1px solid var(--ad-border);border-radius:14px;background:#fff;padding:1rem;margin:.8rem 0;box-shadow:0 2px 8px rgba(13,58,99,.05)}
#auditoria-documental .ad-form{display:grid;gap:.8rem}
#auditoria-documental .ad-form-two{grid-template-columns:repeat(2,minmax(0,1fr))}
#auditoria-documental .ad-form label,#auditoria-documental fieldset{display:grid;gap:.35rem;font-weight:700;color:#2f4354}
#auditoria-documental .ad-form input,#auditoria-documental .ad-form select,#auditoria-documental .ad-form textarea,#auditoria-documental .ad-search-row input,#auditoria-documental .ad-filter-row input,#auditoria-documental .ad-filter-row select,#auditoria-documental .ad-criteria-table select,#auditoria-documental .ad-criteria-table textarea,#auditoria-documental .ad-inline-form input{width:100%;border:1px solid #bccbd6;border-radius:8px;padding:.68rem;background:#fff;color:#162f43}
#auditoria-documental textarea{resize:vertical}
#auditoria-documental fieldset{border:1px solid var(--ad-border);border-radius:10px;padding:.8rem}
#auditoria-documental legend{padding:0 .4rem;color:var(--ad-navy)}
#auditoria-documental .ad-check-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(185px,1fr));gap:.45rem}
#auditoria-documental .ad-check{display:flex!important;align-items:center;gap:.45rem!important;border:1px solid var(--ad-border);border-radius:8px;padding:.55rem;background:#fff;font-weight:600!important}
#auditoria-documental .ad-check input{width:auto!important;margin:0}
#auditoria-documental .ad-help,#auditoria-documental .ad-muted,#auditoria-documental .ad-meta{font-size:.83rem;color:#667b8d}
#auditoria-documental .ad-list{display:grid;gap:.65rem;max-height:620px;overflow:auto;padding-right:.2rem}
#auditoria-documental .ad-list-card{display:flex;justify-content:space-between;align-items:flex-start;gap:.8rem;border:1px solid var(--ad-border);border-radius:11px;padding:.8rem;background:#fff}
#auditoria-documental .ad-list-card.ad-selected{outline:2px solid #4d91c3;border-color:#4d91c3}
#auditoria-documental .ad-card-title{font-weight:850;color:var(--ad-navy)}
#auditoria-documental .ad-detail{scroll-margin-top:1rem}
#auditoria-documental .ad-section{border:1px solid var(--ad-border);border-radius:12px;background:#fff;margin:.8rem 0;overflow:hidden}
#auditoria-documental .ad-section>summary{cursor:pointer;padding:.85rem 1rem;font-weight:850;color:var(--ad-navy);background:#f2f6f9}
#auditoria-documental .ad-section[open]>summary{border-bottom:1px solid var(--ad-border)}
#auditoria-documental .ad-section-body{padding:1rem}
#auditoria-documental .ad-match{display:flex;justify-content:space-between;align-items:center;gap:1rem;border:1px solid var(--ad-border);border-radius:10px;padding:.75rem;margin:.55rem 0;background:#fff}
#auditoria-documental .ad-match-ok{border-left:4px solid var(--ad-good)}
#auditoria-documental .ad-match-other{border-left:4px solid var(--ad-warn)}
#auditoria-documental .ad-summary-grid,#auditoria-documental .ad-extracted-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:.55rem;margin:.7rem 0}
#auditoria-documental .ad-summary-grid>div,#auditoria-documental .ad-extracted-grid>div{border:1px solid var(--ad-border);border-radius:8px;padding:.62rem;background:#f8fafb}
#auditoria-documental .ad-summary-grid span,#auditoria-documental .ad-extracted-grid span{display:block;font-size:.76rem;color:#6a7d8c}
#auditoria-documental .ad-summary-grid strong,#auditoria-documental .ad-extracted-grid strong{display:block;margin-top:.15rem;color:#263f53}
#auditoria-documental .ad-summary-grid .ad-wide{grid-column:1/-1}
#auditoria-documental .ad-worker-tabs{display:flex;gap:.55rem;overflow:auto;padding:.5rem 0;margin:1rem 0}
#auditoria-documental .ad-worker-tab{min-width:245px;text-align:left;border:1px solid var(--ad-border);border-radius:11px;padding:.75rem;background:#fff;color:#263f53;cursor:pointer}
#auditoria-documental .ad-worker-tab.active{border-color:#2c7bb0;outline:2px solid rgba(44,123,176,.25)}
#auditoria-documental .ad-worker-tab strong,#auditoria-documental .ad-worker-tab span,#auditoria-documental .ad-worker-tab em{display:block}
#auditoria-documental .ad-worker-tab span{font-size:.78rem;color:#687c8c;margin:.2rem 0}
#auditoria-documental .ad-worker-tab em{font-size:.72rem;font-style:normal;font-weight:800;border-radius:999px;padding:.22rem .5rem;width:max-content;border:1px solid transparent}
#auditoria-documental .ad-document-list{display:grid;gap:.7rem;margin-top:1rem}
#auditoria-documental .ad-document-card{border:1px solid var(--ad-border);border-radius:11px;padding:.8rem;background:#fff}
#auditoria-documental .ad-document-head{display:flex;justify-content:space-between;align-items:flex-start;gap:.8rem;flex-wrap:wrap}
#auditoria-documental .ad-criteria-area{border:1px solid var(--ad-border);border-radius:11px;overflow:hidden;margin:.7rem 0}
#auditoria-documental .ad-criteria-area>summary{cursor:pointer;background:#eff4f7;color:var(--ad-navy);font-weight:850;padding:.78rem 1rem;display:flex;justify-content:space-between}
#auditoria-documental .ad-criteria-table-wrap{overflow:auto}
#auditoria-documental .ad-criteria-table{width:100%;border-collapse:collapse;min-width:1050px;font-size:.82rem}
#auditoria-documental .ad-criteria-table th{background:#f7f9fb;color:#254258;text-align:left;padding:.65rem;border-bottom:1px solid var(--ad-border)}
#auditoria-documental .ad-criteria-table td{padding:.65rem;border-bottom:1px solid #e8eef2;vertical-align:top}
#auditoria-documental .ad-criteria-table td:first-child{min-width:190px}
#auditoria-documental .ad-criteria-table small{display:block;color:#687c8c;margin-top:.3rem;line-height:1.35}
#auditoria-documental .ad-history-list{display:grid;gap:.55rem;max-height:520px;overflow:auto}
#auditoria-documental .ad-history-item{border-left:3px solid #8ca9bd;padding:.65rem .8rem;background:#f7f9fb;border-radius:0 8px 8px 0}
#auditoria-documental .ad-history-item>div{display:flex;justify-content:space-between;gap:.7rem;flex-wrap:wrap}
#auditoria-documental .ad-history-item span{font-size:.78rem;color:#6b7e8d}
#auditoria-documental .ad-history-item pre{white-space:pre-wrap;word-break:break-word;font-size:.75rem;margin:.4rem 0 0;color:#445d70}
#auditoria-documental .ad-empty{padding:1.1rem;text-align:center;color:#6b7f8f;border:1px dashed #bdcbd5;border-radius:10px;background:#fafcfd}
#auditoria-documental .ad-message{border-radius:9px;padding:.75rem .85rem;margin:.65rem 0;border:1px solid var(--ad-border)}
#auditoria-documental .ad-message.ad-info{background:#eaf3fa;color:#174d74;border-color:#b8d4e8}
#auditoria-documental .ad-message.ad-success{background:#e7f5eb;color:#176b35;border-color:#a8d7b6}
#auditoria-documental .ad-message.ad-warn{background:#fff3dc;color:#7b4b00;border-color:#ecc779}
#auditoria-documental .ad-message.ad-error{background:#fde9e9;color:#9b1c1c;border-color:#efb4b4}
#auditoria-documental .ad-busy{position:fixed;inset:0;z-index:9999;background:rgba(7,25,40,.52);display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff;font-weight:800;gap:.7rem}
#auditoria-documental .ad-busy.hidden{display:none}
#auditoria-documental .ad-spinner{width:42px;height:42px;border:4px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;animation:ad-spin .8s linear infinite}
@keyframes ad-spin{to{transform:rotate(360deg)}}
@media(max-width:1050px){#auditoria-documental .ad-two-columns{grid-template-columns:1fr}#auditoria-documental .ad-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}#auditoria-documental .ad-status-row{grid-template-columns:1fr}}
@media(max-width:720px){#auditoria-documental .ad-form-two,#auditoria-documental .ad-kpi-grid{grid-template-columns:1fr}#auditoria-documental .ad-list-card,#auditoria-documental .ad-match,#auditoria-documental .ad-document-head{flex-direction:column}#auditoria-documental .ad-card-actions{justify-content:flex-start}}
