:root{
  --bg:#f4f7fb;--panel:#fff;--text:#172033;--muted:#667085;--line:#dce3eb;
  --navy:#0b2742;--navy-2:#071c31;--brand:#17628f;--brand-2:#2479a8;--brand-soft:#eaf3f9;
  --accent:#c99a2e;--accent-soft:#fff7df;--teal:#147b86;--danger:#b42318;--danger-soft:#fef0ef;
  --ok:#087443;--ok-soft:#eaf8f1;--warning:#a15c00;--warning-soft:#fff4df;
  --shadow:0 8px 24px rgba(16,42,67,.08);--shadow-sm:0 2px 8px rgba(16,42,67,.06);
  --radius:12px;--sidebar:270px;--topbar:68px
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font:14px/1.48 Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;background:var(--bg);color:var(--text)}
a{color:var(--brand);text-decoration:none}a:hover{color:#0d4d76}button,input,select,textarea{font:inherit}

/* Cabecera */
.topbar{height:var(--topbar);background:linear-gradient(110deg,var(--navy-2),var(--navy));color:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 22px;position:sticky;top:0;z-index:50;box-shadow:0 2px 10px rgba(4,20,36,.22)}
.topbar-left,.topbar-right{display:flex;align-items:center;gap:12px}.brand-mark{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;background:linear-gradient(135deg,var(--accent),#e0b54d);color:#142538;font-weight:900;letter-spacing:-.5px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.25)}
.brand-copy{display:flex;flex-direction:column;line-height:1.2}.brand-copy strong{font-size:16px;letter-spacing:.1px}.brand-copy span{font-size:11px;color:#bed0df;margin-top:3px}.brand-copy b{font-weight:700;color:#fff;margin-left:4px}.user-meta{display:flex;flex-direction:column;text-align:right;line-height:1.2}.user-meta strong{font-size:13px}.user-meta span{font-size:10px;color:#bfd0de;margin-top:3px}.top-action{border:1px solid rgba(255,255,255,.16);border-radius:8px;padding:7px 10px;color:#eaf2f8;background:rgba(255,255,255,.05);font-size:12px;font-weight:700}.top-action:hover{background:rgba(255,255,255,.12);color:#fff}.top-action.logout{border-color:rgba(255,214,214,.2)}.menu-toggle{display:none;background:transparent;color:#fff;border:0;font-size:22px;padding:4px 6px;cursor:pointer}

/* Estructura y navegación */
.shell{display:grid;grid-template-columns:var(--sidebar) minmax(0,1fr);min-height:calc(100vh - var(--topbar) - 36px)}.sidebar{background:#fff;border-right:1px solid var(--line);padding:16px 12px 14px;display:flex;flex-direction:column;position:sticky;top:var(--topbar);height:calc(100vh - var(--topbar));overflow-y:auto;z-index:35}.sidebar-head{padding:3px 10px 12px;border-bottom:1px solid #edf1f5;margin-bottom:8px;display:flex;flex-direction:column}.sidebar-head span{font-size:10px;letter-spacing:1.3px;color:#718096;font-weight:800}.sidebar-head small{font-size:11px;color:#98a2b3;margin-top:2px}.nav-menu{display:flex;flex-direction:column;gap:4px;flex:1}.nav-link{min-height:40px;display:flex;align-items:center;gap:10px;padding:9px 11px;border-radius:9px;color:#344054;font-weight:600;transition:.16s ease;border-left:3px solid transparent}.nav-link:hover{background:#f3f7fa;color:var(--navy)}.nav-link.active{background:linear-gradient(90deg,#e8f3f9,#f5f9fc);color:#0a527d;border-left-color:var(--brand);box-shadow:inset 0 0 0 1px #d9eaf4}.nav-link-subtle{font-weight:500;color:#667085}.nav-icon{width:18px;height:18px;display:inline-grid;place-items:center;flex:0 0 18px;color:#6b7f91}.nav-link.active .nav-icon,.nav-link:hover .nav-icon{color:var(--brand)}.nav-icon svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.nav-section{border-top:1px solid #eef2f6;margin-top:4px;padding-top:4px}.nav-section summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;padding:8px 11px;color:#667085;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.55px;border-radius:7px;user-select:none}.nav-section summary::-webkit-details-marker{display:none}.nav-section summary:hover{background:#f7f9fb;color:#344054}.nav-section summary i{font-style:normal;font-size:14px;transition:transform .15s}.nav-section[open] summary i{transform:rotate(180deg)}.nav-section-links{display:flex;flex-direction:column;gap:2px;margin-top:2px}.nav-caption{font-size:9.5px;text-transform:uppercase;letter-spacing:.65px;font-weight:800;color:#98a2b3;padding:10px 12px 3px}.admin-section{margin-top:8px}.sidebar-foot{margin-top:12px;padding:12px 10px 4px;border-top:1px solid #edf1f5;display:flex;flex-direction:column}.sidebar-foot span{font-size:10px;color:#667085;font-weight:700}.sidebar-foot small{font-size:10px;color:#98a2b3;margin-top:2px}.nav-overlay{display:none}

/* Área principal */
.main{padding:22px 26px 28px;min-width:0}.page-context{display:flex;align-items:center;justify-content:space-between;margin:-4px 0 14px;color:#667085}.page-context span{font-size:12px;font-weight:700;color:#344054}.page-context small{font-size:10px;color:#98a2b3}.panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:20px;margin-bottom:18px;box-shadow:var(--shadow-sm)}.narrow{max-width:1040px}.panelhead{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px}h1{font-size:25px;line-height:1.15;margin:0 0 18px;color:#142a40;letter-spacing:-.35px}h2{font-size:17px;margin:0 0 12px;color:#25384d}h3{color:#344054}.panelhead h1,.panelhead h2{margin:0}

/* Dashboard */
.dashboard-hero{display:flex;justify-content:space-between;gap:22px;align-items:center;background:linear-gradient(120deg,var(--navy),#154e73);color:#fff;border-radius:15px;padding:22px 24px;margin-bottom:18px;box-shadow:var(--shadow)}.dashboard-hero h1{color:#fff;margin:0 0 6px;font-size:25px}.dashboard-hero p{margin:0;color:#cbdbe7;max-width:720px}.dashboard-hero .hero-tag{font-size:11px;text-transform:uppercase;letter-spacing:1px;font-weight:800;color:#f0ca6b;margin-bottom:5px}.quick-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.quick-action{display:inline-flex;align-items:center;gap:6px;background:#fff;color:#163d5b;border-radius:8px;padding:8px 11px;font-weight:750;font-size:12px;box-shadow:0 2px 8px rgba(0,0,0,.10)}.quick-action:hover{background:#f4f8fb;color:#0d4d76}.cards{display:grid;grid-template-columns:repeat(6,minmax(125px,1fr));gap:12px;margin-bottom:18px}.card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:15px 16px;box-shadow:var(--shadow-sm);position:relative;overflow:hidden}.card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--brand)}.card:nth-child(2):before{background:#4c7fa1}.card:nth-child(3):before{background:var(--teal)}.card:nth-child(4):before{background:#4768a4}.card:nth-child(5):before{background:var(--accent)}.card:nth-child(6):before{background:#c45f55}.card span{display:block;color:var(--muted);font-size:11px;font-weight:700}.card strong{display:block;font-size:27px;margin-top:3px;color:#162d43;letter-spacing:-.5px}.card small{display:block;color:#98a2b3;font-size:10px;margin-top:2px}

/* Tablas */
table{width:100%;border-collapse:collapse;background:#fff}th,td{padding:10px 9px;border-bottom:1px solid #e8edf2;vertical-align:top;text-align:left}th{font-size:11px;color:#536274;background:#f7f9fb;position:sticky;top:var(--topbar);z-index:2;text-transform:uppercase;letter-spacing:.25px}tbody tr:hover{background:#fafcfe}.tablewrap{overflow:auto;max-height:68vh;border:1px solid #edf1f5;border-radius:9px}.tablewrap table{border-radius:9px}.tablewrap th:first-child,.tablewrap td:first-child{padding-left:12px}

/* Botones */
button,.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid transparent;border-radius:8px;padding:8px 12px;background:var(--brand);color:#fff;cursor:pointer;font-weight:700;line-height:1.2;transition:.15s ease;box-shadow:0 1px 2px rgba(16,42,67,.08)}button:hover,.btn:hover{background:#0f567f;color:#fff;transform:translateY(-1px)}.secondary{background:#eef4f8;color:#244e6d;border-color:#dce7ef}.secondary:hover{background:#e4eef5;color:#173f5e}.danger{background:var(--danger)}.danger:hover{background:#912018}.report{background:#315e89}.small{font-size:11px;padding:6px 9px;border-radius:7px}.inline{display:inline-flex;margin:2px}.nowrap{white-space:nowrap}

/* Formularios */
label{display:flex;flex-direction:column;gap:5px;font-weight:650;color:#344054;font-size:12px}input,select,textarea{width:100%;padding:9px 10px;border:1px solid #cfd8e3;border-radius:8px;background:#fff;color:#172033;outline:none;transition:border .15s,box-shadow .15s}input:focus,select:focus,textarea:focus{border-color:#7db2d0;box-shadow:0 0 0 3px rgba(36,121,168,.12)}input[type=checkbox]{width:auto;align-self:flex-start;transform:scale(1.12);margin:7px}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.span2{grid-column:1/-1}.actions{display:flex;justify-content:flex-end;align-items:end}.search{display:flex;gap:8px;margin:10px 0 15px}.search input{max-width:420px}.search select{max-width:260px}

/* Mensajes y badges */
.alert{padding:11px 13px;border-radius:9px;margin:0 0 14px;border:1px solid #cfe9da;background:var(--ok-soft);color:#0d633d;box-shadow:var(--shadow-sm)}.alert.error{background:var(--danger-soft);border-color:#f2cfcc;color:#912018}.alert.success{background:var(--ok-soft);color:#0d633d}.muted{color:var(--muted);font-size:12px}.badge{display:inline-block;padding:3px 8px;border-radius:999px;background:#edf2f7;color:#425466;font-size:10px;font-weight:800}.badge:where(:not(.role-badge)){border:1px solid #e2e8ef}

/* Login */
.loginbox{max-width:440px;margin:8vh auto;background:#fff;border:1px solid var(--line);border-radius:16px;padding:28px;box-shadow:var(--shadow)}.loginbox:before{content:"GA";display:grid;place-items:center;width:46px;height:46px;border-radius:12px;margin:0 0 18px;background:linear-gradient(135deg,var(--navy),var(--brand));color:#fff;font-weight:900;font-size:16px;box-shadow:0 5px 12px rgba(23,98,143,.2)}.loginbox h1{margin-bottom:8px}.loginbox form{display:grid;gap:14px}.mini{min-width:230px}.mini textarea{min-height:60px}

.twocol{display:grid;grid-template-columns:1fr 1fr;gap:18px}.detailgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.timeline{border-left:3px solid #cbd5e1;padding-left:20px}.timeline>div{margin:0 0 18px;position:relative}.timeline>div:before{content:"";width:10px;height:10px;border-radius:50%;background:var(--brand);position:absolute;left:-26px;top:5px}pre{white-space:pre-wrap;max-width:700px;font-size:11px;background:#f8fafc;padding:8px;border-radius:6px}footer{text-align:center;color:#8793a2;font-size:10px;padding:11px;background:#f7f9fb;border-top:1px solid #e9edf2}

/* Búsquedas avanzadas, paginación y reportes */
.toolbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.advanced-search{display:grid;grid-template-columns:minmax(260px,2fr) repeat(5,minmax(130px,1fr));gap:10px;align-items:end;margin:10px 0 12px;padding:13px;background:#f8fafc;border:1px solid var(--line);border-radius:10px}.advanced-search .search-wide{grid-column:span 2}.filter-actions{display:flex;gap:8px;align-items:flex-end}.result-meta{font-size:11px;color:var(--muted);margin:0 0 8px}.pager{display:flex;justify-content:space-between;align-items:center;margin-top:12px}.empty{text-align:center;color:var(--muted);padding:28px}.report-shell{max-width:1280px;margin:0 auto}.report-actions{display:flex;gap:8px;justify-content:flex-end;margin-bottom:12px;flex-wrap:wrap}.print-report{background:#fff;border:1px solid var(--line);border-radius:12px;padding:28px}.report-header{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;border-bottom:2px solid #1f3f62;padding-bottom:14px;margin-bottom:16px}.report-header h1{margin:0 0 5px}.report-code{font-weight:700;font-size:16px}.person-card{display:grid;grid-template-columns:2fr repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);margin:14px 0 18px}.person-card>div{background:#fff;padding:10px;min-height:58px}.person-card span{display:block;color:var(--muted);font-size:11px;text-transform:uppercase}.person-card strong{font-size:16px}.report-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:16px 0 22px}.report-summary>div{border:1px solid var(--line);border-radius:8px;padding:12px}.report-summary strong{font-size:24px;display:block}.report-summary span{font-size:12px;color:var(--muted)}.report-table{max-height:none;overflow:visible;margin-bottom:20px}.report-table th{position:static}.report-table small{color:var(--muted)}.report-note{padding:10px 12px;background:#f8fafc;border-left:4px solid var(--brand)}.acta-block{border:1px solid var(--line);border-radius:8px;margin:0 0 18px;padding:14px;break-inside:avoid}.acta-title{display:flex;justify-content:space-between;gap:12px;font-size:16px;margin-bottom:5px}.acta-meta{display:flex;gap:18px;color:var(--muted);font-size:12px;margin-bottom:10px}.acta-observations{padding:9px;background:#f8fafc;border-radius:6px}.report-signatures{display:grid;grid-template-columns:1fr 1fr;gap:80px;text-align:center;margin:45px 40px 0;break-inside:avoid}

/* Formato institucional de acta */
.acta-sheet{margin-bottom:24px;page:actaLandscape}.acta-form{width:100%;border-collapse:collapse;margin:0 0 10px;table-layout:fixed}.acta-form th,.acta-form td{border:1px solid #555;padding:6px;vertical-align:top;position:static}.acta-form th{background:#f1f3f5;color:#111;font-size:10px;text-transform:uppercase}.acta-main-title{text-align:center;font-size:16px!important;padding:10px!important;background:#e9ecef!important}.acta-section-title{font-weight:800;background:#dfe5eb;border:1px solid #555;border-bottom:0;padding:6px 8px;margin-top:12px;text-transform:uppercase}.acta-subtitle{font-weight:700;background:#f3f4f6;border:1px solid #777;border-bottom:0;padding:5px 7px;margin-top:10px;font-size:11px}.acta-equipment{font-size:10px}.acta-equipment th{font-size:9px}.signature-cell{height:42px}.hardware-table td,.software-table td{min-height:38px;white-space:pre-wrap}.software-table td{height:70px}.acta-observations-box{border:1px solid #555;min-height:85px;padding:8px;white-space:normal}.acta-disclaimer{border:1px solid #555;margin-top:12px;padding:10px;font-size:10px;text-align:justify;font-weight:500;line-height:1.35;background:#fafafa}.acta-disclaimer::first-line{font-weight:800}.acta-signatures{margin-top:12px}.acta-signatures .signature-row td{height:90px}.acta-trace{font-size:9px;color:var(--muted);text-align:right;margin-top:6px}.acta-sheet small{font-size:8px}.acta-sheet+.acta-sheet{page-break-before:always}

/* Múltiples roles */
.field-title{font-weight:700;color:#344054;margin-bottom:6px}.required-note{font-weight:400;color:var(--muted);font-size:12px}.role-grid{display:grid;grid-template-columns:repeat(3,minmax(150px,1fr));gap:8px}.role-grid.compact{grid-template-columns:repeat(2,minmax(145px,1fr));margin-bottom:10px}.role-check{display:flex;flex-direction:row;align-items:flex-start;gap:6px;padding:9px;border:1px solid var(--line);border-radius:8px;background:#fff;font-weight:400;cursor:pointer}.role-check:hover{background:#f7fafc;border-color:#c5d5e2}.role-check input{margin:4px 3px 0 0;transform:none}.role-check span{display:flex;flex-direction:column;line-height:1.2}.role-check small{font-size:10px;color:var(--muted);margin-top:2px}.role-badge{margin:1px 2px 1px 0;background:#e9f3f9;color:#15577f;border:1px solid #d4e7f2}.danger-badge{background:#fdecec;color:#8b1d1d}.user-actions-cell{min-width:300px}.role-editor{display:inline-block;vertical-align:top;margin:2px}.role-editor>summary{list-style:none}.role-editor>summary::-webkit-details-marker{display:none}.role-editor[open]{display:block;margin:4px 0 10px}.role-editor-form{min-width:420px;max-width:540px;background:#f8fafc;border:1px solid var(--line);border-radius:9px;padding:11px;margin-top:6px}.reset-form input{width:145px;display:inline-block}.reset-form button{vertical-align:top}

@media(max-width:1250px){.cards{grid-template-columns:repeat(3,1fr)}.advanced-search{grid-template-columns:repeat(3,1fr)}.advanced-search .search-wide{grid-column:span 2}.person-card{grid-template-columns:1fr 1fr}}
@media(max-width:980px){:root{--sidebar:235px}.detailgrid{grid-template-columns:1fr 1fr}.user-meta{display:none}.dashboard-hero{align-items:flex-start;flex-direction:column}.quick-actions{justify-content:flex-start}}
@media(max-width:780px){.menu-toggle{display:block}.shell{display:block}.sidebar{position:fixed;left:-285px;top:var(--topbar);width:275px;height:calc(100vh - var(--topbar));box-shadow:10px 0 30px rgba(16,42,67,.18);transition:left .2s ease}.nav-open .sidebar{left:0}.nav-overlay{display:none;position:fixed;inset:var(--topbar) 0 0 0;background:rgba(7,28,49,.35);z-index:30}.nav-open .nav-overlay{display:block}.main{padding:16px 12px}.brand-copy span{display:none}.topbar{padding:0 12px}.top-action{padding:7px 8px}.cards{grid-template-columns:1fr 1fr}.formgrid,.twocol{grid-template-columns:1fr}.span2{grid-column:auto}.advanced-search{grid-template-columns:1fr}.advanced-search .search-wide{grid-column:auto}.filter-actions{grid-column:auto}.person-card,.report-summary{grid-template-columns:1fr}.print-report{padding:14px}.report-header{display:block}.report-signatures{grid-template-columns:1fr;gap:30px}.role-grid,.role-grid.compact{grid-template-columns:1fr 1fr}.role-editor-form{min-width:300px}}
@media(max-width:520px){.cards{grid-template-columns:1fr}.topbar-right .top-action:first-of-type{display:none}.brand-copy strong{font-size:14px}.role-grid,.role-grid.compact{grid-template-columns:1fr}.role-editor-form{min-width:240px}.panel{padding:15px}.dashboard-hero{padding:18px}.quick-action{width:100%;justify-content:center}}

@page actaLandscape{size:A4 landscape;margin:8mm}
@media print{
  body{background:#fff;font-size:11px}.topbar,.sidebar,.nav-overlay,footer,.no-print,.page-context{display:none!important}.shell{display:block;min-height:auto}.main{padding:0}.report-shell{max-width:none}.print-report{border:0;border-radius:0;padding:0}.tablewrap{overflow:visible;max-height:none;border:0}th{position:static;background:#eee!important;color:#000}table{font-size:10px}th,td{padding:5px 4px}.acta-block{page-break-inside:avoid}.report-header{page-break-after:avoid}.report-signatures{page-break-inside:avoid}.badge{border:1px solid #bbb;background:#fff}.person-card>div{padding:6px}.report-summary{margin:10px 0 15px}.report-summary>div{padding:7px}.report-summary strong{font-size:18px}.panel{box-shadow:none;border:0;padding:0}
  .acta-sheet{page-break-after:always;margin:0}.acta-sheet:last-child{page-break-after:auto}.acta-form{font-size:9px;margin-bottom:5px}.acta-form th,.acta-form td{padding:4px;border-color:#222}.acta-main-title{font-size:14px!important;padding:7px!important}.acta-section-title{padding:4px 6px;margin-top:6px}.acta-subtitle{padding:3px 5px;margin-top:5px}.signature-cell{height:30px}.software-table td{height:48px}.acta-observations-box{min-height:55px;padding:6px}.acta-disclaimer{font-size:8.5px;padding:7px;margin-top:6px;line-height:1.25}.acta-signatures{margin-top:6px}.acta-signatures .signature-row td{height:55px}.acta-trace{font-size:7.5px}
}

/* v207.7 - Impresion estable de reportes */
.integral-report{page:reportLandscape}
.acta-equipment-detail{break-inside:avoid;page-break-inside:avoid}

.eyebrow{font-size:11px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:#47718d;margin-bottom:7px}
.tablewrap th{top:0}
.process-steps{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0 24px}
.process-step{flex:1;min-width:135px;padding:12px;background:#f1f5f8;border:1px solid #dce6ed;border-radius:8px;color:#587080;display:flex;align-items:center;gap:9px;font-size:12px}
.process-step b{display:inline-grid;place-items:center;width:25px;height:25px;border-radius:50%;background:#dce7ef}
.process-step.current{background:#e7f5f4;border-color:#11867d;color:#075b55;font-weight:700}
.process-step.current b{background:#11867d;color:white}
.task-card{border:1px solid #dbe5ec;border-radius:10px;padding:18px;margin:14px 0;background:#fbfcfd}
.task-card h3{font-size:16px;margin:0}.task-card .panelhead{margin-bottom:8px}
.operation-form{margin:12px 0}.operation-form>summary{cursor:pointer;font-size:12px;color:#245c7e}
.operation-form[open]>form{margin-top:13px;padding:14px;background:#f1f6f9;border-radius:8px;min-width:230px}
.success-note{padding:12px;background:#e9f5ef;border-left:4px solid #18805a;color:#185339}
.document-fingerprint{font-family:monospace;font-size:9px;overflow-wrap:anywhere;color:#607181;margin-top:16px}
.logout{cursor:pointer;font:inherit}.panel h3{color:#173c56}
@media(max-width:780px){.process-step{min-width:100%;flex:auto}.operation-form[open]>form{min-width:0}.task-card{padding:12px}}
@page reportLandscape{size:A4 landscape;margin:10mm 8mm 10mm 8mm}
@page actaLandscape{size:A4 landscape;margin:7mm 6mm 7mm 6mm}

@media print{
  html,body{width:auto!important;min-width:0!important;height:auto!important;overflow:visible!important}
  body{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;color:#000!important;background:#fff!important;font-size:9pt!important;line-height:1.25!important}
  *{box-shadow:none!important;text-shadow:none!important}
  a,a:visited{color:#000!important;text-decoration:none!important}
  .report-shell{width:100%!important;max-width:none!important;margin:0!important;padding:0!important}
  .print-report{width:100%!important;max-width:none!important;margin:0!important;padding:0!important;border:0!important;background:#fff!important}
  .integral-report{page:reportLandscape}
  .acta-sheet{page:actaLandscape;width:100%!important;max-width:none!important}

  /* Cabecera y ficha de persona */
  .report-header{display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:8mm!important;margin:0 0 4mm!important;padding:0 0 3mm!important;border-bottom:1.2pt solid #1f3f62!important;break-after:avoid!important;page-break-after:avoid!important}
  .report-header h1{font-size:15pt!important;margin:0 0 1.5mm!important}
  .report-header .muted{font-size:7.5pt!important;color:#444!important}
  .report-code{font-size:10pt!important;white-space:nowrap!important}
  .person-card{display:grid!important;grid-template-columns:2fr 1fr 1fr 1fr!important;gap:0!important;margin:0 0 4mm!important;border:1px solid #777!important;background:#777!important;break-inside:avoid!important;page-break-inside:avoid!important}
  .person-card>div{min-height:12mm!important;padding:2.2mm!important;border:0!important}
  .person-card span{font-size:6.8pt!important;color:#444!important}
  .person-card strong{font-size:10.5pt!important}
  .report-summary{display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:3mm!important;margin:0 0 5mm!important;break-inside:avoid!important;page-break-inside:avoid!important}
  .report-summary>div{padding:2.5mm!important;border:1px solid #999!important;border-radius:2mm!important}
  .report-summary strong{font-size:14pt!important}
  .report-summary span{font-size:7.5pt!important;color:#444!important}
  .integral-report h2{font-size:10.5pt!important;margin:4mm 0 2mm!important;break-after:avoid!important;page-break-after:avoid!important}

  /* Tablas de reportes: ancho fijo, cabeceras repetidas y filas no partidas */
  .report-table{display:block!important;width:100%!important;max-height:none!important;overflow:visible!important;margin:0 0 5mm!important;border:0!important}
  .report-table table{width:100%!important;table-layout:fixed!important;border-collapse:collapse!important;border:1px solid #777!important}
  .report-table thead{display:table-header-group!important}
  .report-table tfoot{display:table-footer-group!important}
  .report-table tr{break-inside:avoid!important;page-break-inside:avoid!important}
  .report-table th,.report-table td{padding:1.4mm 1.4mm!important;border:1px solid #aaa!important;vertical-align:top!important;font-size:7pt!important;line-height:1.18!important;white-space:normal!important;overflow-wrap:anywhere!important;word-break:normal!important}
  .report-table th{background:#e9edf2!important;color:#111!important;font-size:6.8pt!important;letter-spacing:0!important}
  .report-table small{font-size:6.5pt!important;color:#444!important}
  .report-table .badge{display:inline-block!important;padding:.6mm 1.2mm!important;font-size:6.5pt!important;white-space:nowrap!important;border:1px solid #777!important;background:#fff!important;color:#000!important}
  .asset-report-table,.access-report-table{table-layout:fixed!important}

  /* Actas: mantener formato institucional sin deformar columnas */
  .acta-sheet{margin:0!important;padding:0!important;page-break-after:always!important;break-after:page!important}
  .acta-sheet:last-child{page-break-after:auto!important;break-after:auto!important}
  .acta-form{width:100%!important;max-width:100%!important;table-layout:fixed!important;border-collapse:collapse!important;margin:0 0 2mm!important}
  .acta-form thead{display:table-header-group!important}
  .acta-form tfoot{display:table-footer-group!important}
  .acta-form tr{break-inside:avoid!important;page-break-inside:avoid!important}
  .acta-form th,.acta-form td{padding:1.25mm 1.4mm!important;border:0.6pt solid #222!important;vertical-align:top!important;font-size:6.8pt!important;line-height:1.16!important;white-space:normal!important;overflow-wrap:anywhere!important;word-break:normal!important}
  .acta-form th{background:#e8ebee!important;color:#111!important;font-size:6.3pt!important;font-weight:800!important}
  .acta-main-title{font-size:11pt!important;padding:2.2mm!important;background:#dfe4e8!important}
  .acta-section-title{font-size:7.4pt!important;padding:1.4mm 1.8mm!important;margin:2.2mm 0 0!important;background:#dfe5eb!important;border:0.6pt solid #222!important;border-bottom:0!important;break-after:avoid!important;page-break-after:avoid!important}
  .acta-subtitle{font-size:6.6pt!important;padding:1.2mm 1.6mm!important;margin:2mm 0 0!important;background:#f0f2f4!important;border:0.6pt solid #333!important;border-bottom:0!important;break-after:avoid!important;page-break-after:avoid!important}
  .acta-equipment th,.acta-equipment td{font-size:6.2pt!important}
  .acta-equipment th{font-size:5.8pt!important}
  .signature-cell{height:8mm!important}
  .hardware-table td{min-height:7mm!important}
  .software-table td{height:15mm!important;min-height:15mm!important}
  .acta-equipment-detail{break-inside:avoid!important;page-break-inside:avoid!important}
  .acta-observations-box{min-height:14mm!important;padding:2mm!important;border:0.6pt solid #222!important;font-size:7pt!important;line-height:1.2!important;break-inside:avoid!important;page-break-inside:avoid!important}
  .acta-disclaimer{margin:2.5mm 0 0!important;padding:1.8mm!important;border:0.6pt solid #222!important;background:#f8f8f8!important;font-size:6.2pt!important;line-height:1.22!important;text-align:justify!important;break-inside:avoid!important;page-break-inside:avoid!important}
  .acta-signatures{margin-top:1.8mm!important;break-inside:avoid!important;page-break-inside:avoid!important}
  .acta-signatures .signature-row td{height:14mm!important}
  .acta-trace{font-size:5.8pt!important;color:#444!important;margin-top:1.4mm!important;break-before:avoid!important;page-break-before:avoid!important}
  .acta-sheet small{font-size:5.7pt!important}

  /* Evitar elementos huerfanos al cambiar de pagina */
  p{orphans:3;widows:3}
}
