:root{color-scheme:light;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#17211d;background:#eef3f0;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{min-height:40px;border:0;border-radius:8px;padding:0 14px;background:#176b50;color:#fff;display:inline-flex;align-items:center;justify-content:center;gap:8px;cursor:pointer}button:hover{background:#0f5d45}button.secondary{width:42px;padding:0;background:#dfe8e3;color:#17211d}.app-header{position:sticky;top:0;z-index:10;min-height:84px;padding:16px 28px;display:flex;align-items:center;justify-content:space-between;gap:20px;background:#f7faf8f0;border-bottom:1px solid #d7e0db;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.eyebrow{margin:0 0 4px;font-size:12px;font-weight:800;color:#b05323;letter-spacing:0}h1{margin:0;font-size:clamp(22px,3vw,34px);letter-spacing:0}.header-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.layout{display:grid;grid-template-columns:300px minmax(0,1fr);gap:22px;padding:22px;max-width:1500px;margin:0 auto}.sidebar{position:sticky;top:158px;align-self:start;display:grid;gap:12px;max-height:calc(100vh - 170px);overflow-y:auto}.status-card,.metric,.warning,.ok,.pdf-link,.doc-list{border:1px solid #d4ded8;border-radius:8px;background:#fff;padding:16px}.status-card{min-height:150px;display:grid;align-content:space-between;background:linear-gradient(135deg,#fff,#e9f5ee)}.status-top,.metric,.warning,.ok,.pdf-link{display:flex;align-items:center;gap:10px}.status-card strong{font-size:38px}.status-card span,.metric span{color:#5b6862}.metric{justify-content:space-between}.metric svg{color:#176b50}.warning{color:#7c3c12;background:#fff8eb;border-color:#f0d3a8}.ok{color:#176b50;background:#eef9f2}.pdf-link{color:#17211d;text-decoration:none}.doc-list{display:grid;gap:8px}.doc-list-title{display:flex;align-items:center;gap:9px;font-weight:800}.doc-link{min-height:38px;display:grid;grid-template-columns:18px minmax(0,1fr) auto auto;align-items:center;gap:8px;padding:8px;border:1px solid #e3ebe6;border-radius:8px;color:#17211d;text-decoration:none;background:#fbfdfc}.doc-link:hover{border-color:#a8c8ba;background:#f0f7f3}.doc-link span,.doc-link a{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:inherit}.doc-link small{color:#5b6862;font-size:11px}.form-panel{display:grid;gap:18px}.section{background:#fff;border:1px solid #d7e0db;border-radius:8px;padding:18px}.section-title{display:flex;align-items:center;gap:9px;padding-bottom:14px;border-bottom:1px solid #edf1ef;color:#176b50}.section-title h2{margin:0;font-size:17px;color:#17211d}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding-top:16px}.field{display:grid;gap:6px}.grid>.wide{grid-column:1 / -1}.field.wide,.table-block.wide{grid-column:1 / -1}.grid{align-items:start}.field span{min-height:18px;font-size:12px;font-weight:700;color:#52615a}input,select,textarea{width:100%;border:1px solid #cbd7d0;border-radius:8px;background:#fbfdfc;color:#17211d;padding:10px 11px;outline:none}input:focus,select:focus,textarea:focus{border-color:#176b50;box-shadow:0 0 0 3px #176b501f}textarea{resize:vertical}.table-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.checklist{display:grid;gap:8px;padding:14px;border:1px solid #dce8e2;border-radius:8px;background:#f7fbf8}.checklist h3{margin:0 0 4px;font-size:15px}.checklist div{display:flex;align-items:flex-start;gap:8px;color:#405048;font-size:14px}.checklist svg{flex:0 0 auto;margin-top:2px;color:#176b50}.table-heading h3{margin:0;font-size:15px}.icon-button,.ghost-icon{width:38px;height:38px;min-height:38px;padding:0}.ghost-icon{background:transparent;color:#7e4a32}.ghost-icon:hover{background:#fff0e8}.table-scroll{overflow-x:auto;border:1px solid #dce4df;border-radius:8px}table{width:100%;border-collapse:collapse}th{text-align:left;background:#f2f6f4;color:#52615a;font-size:12px}th,td{padding:8px;border-bottom:1px solid #e6ece8}td input{min-width:120px;border-color:transparent;background:#fff}.actions-cell{width:42px}.print-document{display:none}.print-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.print-row{min-height:42px;padding:7px 8px;border:1px solid #333}.print-row span{display:block;font-size:9px;text-transform:uppercase}.print-row strong{display:block;margin-top:4px;font-size:12px;font-weight:600}.print-table th,.print-table td{border:1px solid #333;padding:6px;font-size:10px}.signatures{display:grid;grid-template-columns:repeat(2,1fr);gap:30px;margin-top:46px}.signatures div{min-height:80px;border-top:1px solid #111;padding-top:8px;text-align:center}@media(max-width:980px){.app-header,.layout{padding-left:14px;padding-right:14px}.layout{grid-template-columns:1fr}.sidebar{position:static;grid-template-columns:repeat(2,minmax(0,1fr))}.grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:680px){.app-header{align-items:flex-start;flex-direction:column}.header-actions,.sidebar,.grid{grid-template-columns:1fr;width:100%}.header-actions button{flex:1 1 auto}}.pantalla{display:grid;gap:18px;padding:22px;max-width:1500px;margin:0 auto}.tarjetas{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.tarjeta{display:grid;gap:2px;padding:16px;border:1px solid #d4ded8;border-radius:8px;background:linear-gradient(135deg,#fff,#e9f5ee)}.tarjeta svg{color:#176b50}.tarjeta strong{font-size:26px;line-height:1.15}.tarjeta span{font-size:13px;color:#5b6862}.tarjeta.alerta{background:#fff8eb;border-color:#f0d3a8}.tarjeta.alerta svg{color:#b05323}.barra-filtros{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.barra-filtros select{width:auto;min-width:190px}.buscador{position:relative;flex:1 1 320px;display:flex;align-items:center}.buscador svg{position:absolute;left:11px;color:#7d8a84;pointer-events:none}.buscador input{padding-left:34px}.vacio{display:grid;justify-items:center;gap:12px;padding:56px 20px;border:1px dashed #cbd7d0;border-radius:8px;background:#fbfdfc;color:#5b6862;text-align:center}.vacio svg{color:#9db3a8}.vacio p{margin:0}.tabla-expedientes{background:#fff}.fila-clicable{cursor:pointer}.fila-clicable:hover{background:#f4f9f6}.mono{font-variant-numeric:tabular-nums;white-space:nowrap}.tenue{color:#5b6862;font-size:13px}td em{color:#9aa8a1;font-style:normal}.pendiente{display:block;margin-top:2px;color:#b05323;font-size:11px}.acciones-fila{display:flex;gap:2px}.acciones-derecha{display:flex;justify-content:flex-end}.chip{display:inline-block;padding:3px 9px;border-radius:999px;font-size:12px;font-weight:700;white-space:nowrap;background:#e7eeea;color:#45544d}.chip-borrador{background:#edf1ef;color:#52615a}.chip-revision{background:#fff3dc;color:#8a5216}.chip-presentado{background:#e4eefb;color:#1d4f8a}.chip-aprobado{background:#e2f5ea;color:#12694c}.chip-archivado{background:#eceaea;color:#6b625f}.subcabecera{position:sticky;top:84px;z-index:9;display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:12px 28px;background:#f7faf8f0;border-bottom:1px solid #d7e0db;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.identidad{flex:1 1 260px;display:flex;align-items:center;gap:10px;min-width:0}.codigo{padding:4px 9px;border-radius:6px;background:#e2efe8;color:#12694c;font-size:13px;font-weight:800}.titulo-inline{border-color:transparent;background:transparent;font-size:16px;font-weight:700}.titulo-inline:hover{border-color:#cbd7d0;background:#fbfdfc}.subcabecera select{width:auto;min-width:150px}button.ancho-auto{width:auto;padding:0 14px}.al-final{margin-left:auto}.enlace{min-height:32px;justify-content:flex-start;padding:0;background:transparent;color:#176b50;font-size:13px;font-weight:700;text-align:left}.enlace:hover{background:transparent;text-decoration:underline}.enlace:disabled{color:#9aa8a1;cursor:not-allowed;text-decoration:none}button:disabled{opacity:.6;cursor:not-allowed}.oculto{display:none}.boton-falso{min-height:38px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:8px;background:#176b50;color:#fff;font-size:14px;cursor:pointer}.boton-falso:hover{background:#0f5d45}.doc-link.ausente{opacity:.5}.evento{display:grid;gap:2px;padding:7px 0;border-bottom:1px solid #edf1ef;font-size:13px}.evento:last-child{border-bottom:0}.evento small{color:#7d8a84;font-size:11px}.nota{display:flex;align-items:flex-start;gap:8px;margin:0;padding:11px 13px;border:1px solid #f0d3a8;border-radius:8px;background:#fff8eb;color:#7c3c12;font-size:13px}.nota svg{flex:0 0 auto;margin-top:2px}.contadores-origen{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.contador{display:grid;gap:1px;padding:12px;border:1px solid #dce8e2;border-radius:8px;background:#fbfdfc}.contador strong{font-size:22px;line-height:1.2}.contador span{font-size:12px;color:#5b6862}.contador.extraido{border-color:#b9d4ea;background:#f2f8fd}.contador.extraido svg{color:#1d4f8a}.contador.calculado{border-color:#b6dcc6;background:#f1fbf5}.contador.calculado svg{color:#12694c}.contador.manual svg{color:#5b6862}.contador.pendiente{border-color:#f0d3a8;background:#fff8eb}.contador.pendiente svg{color:#b05323}.bloque{display:block}.propuestas{display:grid;gap:10px;padding:14px;border:1px solid #dce8e2;border-radius:8px;background:#f7fbf8}.propuestas h3,.bloque-pendientes h3{display:flex;align-items:center;gap:7px;margin:0;font-size:15px}.diag{margin:0;font-size:13px}.diag.ok{color:#12694c}.diag.ocr{color:#1d4f8a}.marca-ocr{color:#1d4f8a;font-size:11px;font-weight:700}.diag.aviso{color:#8a5216}.fila-conflicto{background:#fff8eb}.casilla{width:18px;height:18px;padding:0;accent-color:#176b50}.bloque-pendientes{display:grid;gap:6px;margin-top:14px;padding:14px;border:1px solid #e3ebe6;border-radius:8px;background:#fbfdfc}.bloque-pendientes p{margin:0;font-size:13px}.bloque-pendientes ul{margin:4px 0 0;padding-left:18px;display:grid;gap:4px;font-size:14px}.bloque-pendientes li{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px}.chip.conf-alta{background:#e2f5ea;color:#12694c}.chip.conf-media{background:#fff3dc;color:#8a5216}.chip.conf-baja{background:#fdece5;color:#8a2f16}.pantalla-login{min-height:100vh;display:grid;place-items:center;padding:22px}.caja-login{width:min(400px,100%);display:grid;gap:14px;padding:30px;border:1px solid #d4ded8;border-radius:10px;background:#fff;box-shadow:0 18px 40px #10221b14}.caja-login h1{font-size:24px}.caja-login p{margin:0}.caja-login .tenue{margin-bottom:6px}.error-login{display:flex;align-items:center;gap:8px;padding:10px 12px;border:1px solid #f0bda8;border-radius:8px;background:#fdf1ec;color:#8a2f16;font-size:13px}.aviso{position:fixed;right:22px;bottom:22px;z-index:50;max-width:min(440px,calc(100vw - 44px));display:flex;align-items:center;gap:10px;padding:12px 12px 12px 15px;border-radius:8px;box-shadow:0 12px 30px #10221b2e}.aviso-ok{background:#12694c;color:#fff}.aviso-error{background:#8a2f16;color:#fff}.aviso .ghost-icon{color:inherit}.aviso .ghost-icon:hover{background:#ffffff29}@media(max-width:980px){.tarjetas{grid-template-columns:repeat(2,minmax(0,1fr))}.subcabecera{position:static;padding-left:14px;padding-right:14px}.pantalla{padding-left:14px;padding-right:14px}}@media print{@page{size:A4;margin:11mm}body{background:#fff}.app-header,.subcabecera,.pantalla,.aviso,.layout{display:none}.print-codigo{min-height:auto;margin:0 0 12px;padding:0;border:0;text-align:center;font-size:11px}.print-document{display:block;color:#111;font-family:Arial,sans-serif}.print-document h1{text-align:center;font-size:18px;margin-bottom:14px}.print-document h2{margin:14px 0 6px;padding:4px 6px;background:#e8e8e8;border:1px solid #333;font-size:12px}.print-document p{min-height:48px;margin:0 0 8px;padding:8px;border:1px solid #333;font-size:11px}}
