
    :root{
      --bg:#edf4fa;--bg2:#f7fbfe;--panel:#ffffff;--panel2:#f6fafe;--line:rgba(18,58,99,.13);
      --text:#14324e;--muted:#64788c;--primary:#1f6fb2;--primary2:#3b8fca;--success:#21885f;--danger:#bd3d55;
      --warning:#c48920;--shadow:0 20px 55px rgba(28,70,108,.15);--radius:20px
    }
    *{box-sizing:border-box}
    html,body{margin:0;min-height:100%;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--text);background:linear-gradient(135deg,rgba(247,251,254,.96),rgba(231,241,249,.94)),url("../images/73405074a9f841ea.webp") center top/cover fixed no-repeat}
    body:after{content:"";position:fixed;inset:0;pointer-events:none;z-index:0;background:linear-gradient(180deg,rgba(244,249,253,.63),rgba(236,245,251,.91) 44%,rgba(246,250,253,.97));}
    body:before{content:"";position:fixed;left:0;right:0;top:0;height:7px;pointer-events:none;z-index:5;background:linear-gradient(90deg,#f4c542 0 33.33%,#214bd6 33.33% 66.66%,#d62c43 66.66% 100%);box-shadow:0 2px 10px rgba(19,50,78,.12)}
    .shell{position:relative;z-index:1}
    button,input,select{font:inherit}
    button{cursor:pointer}
    .shell{width:min(1280px,calc(100% - 28px));margin:0 auto;padding:18px 0 40px}
    .topbar{height:64px;display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:24px}
    .brand{display:flex;align-items:center;gap:12px;border:0;background:transparent;color:var(--text);padding:0;text-align:left}
    .brand-mark{display:none}
    .brand-title{font-size:15px;font-weight:850}.brand-sub{font-size:11px;color:var(--muted);margin-top:2px}
    .brand-copy{min-width:0}
    .brand-overline{font-size:9px;letter-spacing:.14em;color:#4f7190;font-weight:900}
    .brand-crest-wrap{width:58px;height:58px;display:grid;place-items:center;flex:none;border-radius:16px;background:rgba(255,255,255,.9);border:1px solid rgba(31,111,178,.14);box-shadow:0 10px 22px rgba(18,58,99,.12);overflow:hidden}
    .brand-crest{width:56px;height:56px;object-fit:contain}
    .institutional-crest{display:flex;align-items:center;gap:10px;padding:7px 10px 7px 7px;border-radius:17px;background:rgba(255,255,255,.78);border:1px solid rgba(18,58,99,.12);box-shadow:0 12px 28px rgba(18,58,99,.10)}
    .institutional-crest img{width:58px;height:58px;object-fit:contain}
    .institutional-crest span{font-size:9px;font-weight:800;letter-spacing:.07em;color:#436984;white-space:nowrap}
    .venezuela-flag{display:inline-flex;align-items:center;justify-content:center;width:132px;height:14px;margin-top:7px;border-radius:999px;overflow:hidden;background:linear-gradient(180deg,#f4c542 0 33.33%,#214bd6 33.33% 66.66%,#d62c43 66.66% 100%);box-shadow:0 4px 10px rgba(18,58,99,.10)}
    .venezuela-flag span{font-size:7px;letter-spacing:2px;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.35);line-height:1}
    .topbar{height:78px}
    .system-state{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:11px}
    .dot{width:8px;height:8px;border-radius:50%;background:var(--success);box-shadow:0 0 0 5px rgba(49,196,141,.1)}
    .dot.off{background:var(--danger);box-shadow:0 0 0 5px rgba(255,102,126,.08)}
    .dot.busy{background:var(--warning);box-shadow:0 0 0 5px rgba(242,179,79,.08)}

    .screen{display:none}.screen.active{display:block;animation:fade .2s ease}@keyframes fade{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
    .hero{display:grid;grid-template-columns:1.25fr .75fr;gap:28px;align-items:stretch;margin-bottom:26px}
    .hero-card,.panel{border:1px solid var(--line);background:linear-gradient(150deg,rgba(255,255,255,.97),rgba(246,250,253,.97));border-radius:var(--radius);box-shadow:var(--shadow)}
    .hero-copy{padding:38px 38px 34px;min-height:405px;display:flex;flex-direction:column;justify-content:center}
    .eyebrow{display:inline-flex;width:max-content;align-items:center;gap:8px;padding:7px 10px;border:1px solid rgba(91,140,255,.25);border-radius:999px;background:rgba(31,111,178,.08);color:#1f5e95;font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
    h1{margin:18px 0 15px;font-size:clamp(40px,5vw,64px);line-height:.98;letter-spacing:-.055em;max-width:760px}
    .hero-copy p{max-width:680px;color:var(--muted);font-size:15px;line-height:1.72;margin:0}
    .actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}
    .btn{min-height:44px;border-radius:12px;padding:0 15px;border:1px solid transparent;color:var(--text);font-weight:750;font-size:12px;transition:.18s ease}
    .btn:hover{transform:translateY(-1px)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}
    .btn-primary{background:linear-gradient(135deg,var(--primary2),var(--primary));box-shadow:0 12px 28px rgba(91,140,255,.18)}
    .btn-secondary{background:rgba(255,255,255,.035);border-color:var(--line)}
    .btn-danger{background:rgba(255,102,126,.07);border-color:rgba(255,102,126,.17);color:#ffd4dc}
    .btn-quiet{background:transparent;border-color:transparent;color:#537087}
    .stats{padding:24px;display:grid;grid-template-rows:auto repeat(4,1fr);gap:10px}
    .stats-title{font-size:11px;color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-weight:800;margin-bottom:2px}
    .stat{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:16px;border:1px solid var(--line);border-radius:15px;background:rgba(20,50,78,.035)}
    .stat small{display:block;color:var(--muted);font-size:10px;margin-bottom:4px}.stat strong{font-size:24px;letter-spacing:-.03em}.stat-icon{font-size:16px;color:#2c618d}

    .panel-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:22px 24px;border-bottom:1px solid var(--line)}
    .panel-head h2{margin:0;font-size:21px;letter-spacing:-.03em}.panel-head p{margin:5px 0 0;color:var(--muted);font-size:11px}
    .panel-actions{display:flex;gap:8px;flex-wrap:wrap}
    .content{padding:24px}

    .choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
    .choice{padding:24px;border:1px solid var(--line);border-radius:17px;background:rgba(255,255,255,.78);text-align:left;transition:.18s ease}
    .choice:hover{transform:translateY(-2px);border-color:rgba(91,140,255,.35);background:rgba(91,140,255,.045)}
    .choice-icon{width:45px;height:45px;border-radius:13px;display:grid;place-items:center;margin-bottom:16px;font-size:18px;background:rgba(91,140,255,.09);border:1px solid rgba(91,140,255,.15)}
    .choice h3{margin:0 0 7px;font-size:17px}.choice p{margin:0;color:var(--muted);font-size:12px;line-height:1.6}
    .choice-foot{margin-top:20px;color:#bed2ff;font-size:11px;font-weight:800}

    .form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}.field{display:flex;flex-direction:column;gap:7px}.full{grid-column:1/-1}
    label{font-size:11px;font-weight:750;color:#d8e2ef}.required{color:#8db1ff}
    .input{width:100%;min-height:44px;border-radius:11px;border:1px solid rgba(255,255,255,.09);background:rgba(255,255,255,.95);color:var(--text);padding:0 12px;outline:none}
    textarea.input{min-height:90px;padding-top:11px;resize:vertical}.input:focus{border-color:rgba(91,140,255,.6);box-shadow:0 0 0 4px rgba(91,140,255,.1)}
    .help{font-size:10px;color:#78879d;line-height:1.45}
    .role-box{padding:14px;border:1px solid rgba(91,140,255,.15);border-radius:14px;background:rgba(91,140,255,.045);margin-bottom:18px}.role-box strong{font-size:11px}.role-box span{display:block;color:var(--muted);font-size:10px;margin-top:3px}
    .conditional{display:none}.conditional.active{display:block}
    .children{margin-top:22px;padding:18px;border:1px solid var(--line);border-radius:17px;background:rgba(255,255,255,.015)}
    .children-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;margin-bottom:14px}.children-head h3{margin:0;font-size:16px}.children-head p{margin:5px 0 0;color:var(--muted);font-size:10px;line-height:1.5}
    .count-pill{padding:7px 10px;border-radius:999px;border:1px solid rgba(91,140,255,.17);background:rgba(91,140,255,.07);color:#235c8f;font-size:10px;font-weight:800;white-space:nowrap}
    .children-grid{display:grid;gap:12px}.child-card{padding:15px;border:1px solid rgba(255,255,255,.075);border-radius:14px;background:rgba(246,250,253,.92)}
    .child-head{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:12px}.child-title{font-size:11px;font-weight:850}.child-state{font-size:9px;color:#708098}
    .child-grid{display:grid;grid-template-columns:1.45fr .85fr .8fr .8fr;gap:12px}.age-wrap{display:flex;gap:7px;align-items:center}.age-wrap .input{flex:1}
    .form-footer{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap;margin-top:20px;padding-top:18px;border-top:1px solid var(--line)}

    .toolbar{display:flex;gap:9px;flex-wrap:wrap;align-items:center;margin-bottom:15px}.search{flex:1 1 270px;position:relative}.search span{position:absolute;left:12px;top:50%;transform:translateY(-50%);opacity:.5}.search .input{padding-left:35px}
    .summary{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:15px}.chip{padding:8px 10px;border:1px solid var(--line);border-radius:999px;background:rgba(20,50,78,.035);color:var(--muted);font-size:10px}.chip strong{color:var(--text)}
    .table-wrap{border:1px solid var(--line);border-radius:15px;overflow:auto}.table{width:100%;border-collapse:collapse;min-width:1050px}.table th,.table td{padding:12px;border-bottom:1px solid rgba(255,255,255,.055);text-align:left;vertical-align:top;font-size:10px}.table th{background:rgba(255,255,255,.025);color:#bcc8d9;text-transform:uppercase;letter-spacing:.06em;font-size:9px;position:sticky;top:0;z-index:1}.table tbody tr:hover{background:rgba(255,255,255,.78)}.table tbody tr:last-child td{border-bottom:0}
    .kind{display:inline-flex;padding:5px 8px;border-radius:999px;font-size:9px;font-weight:850}.kind.militar{background:rgba(91,140,255,.09);border:1px solid rgba(91,140,255,.15);color:#245a87}.kind.civil{background:rgba(49,196,141,.08);border:1px solid rgba(49,196,141,.15);color:#18734f}
    .children-mini{display:grid;gap:6px;min-width:320px}.children-mini div{padding:7px 8px;border:1px solid rgba(255,255,255,.055);border-radius:8px;background:rgba(255,255,255,.015)}
    .empty{padding:46px;text-align:center;color:var(--muted)}.empty-icon{font-size:28px;margin-bottom:8px;opacity:.5}.empty strong{display:block;color:#1d4568;font-size:12px;margin-bottom:4px}.empty span{font-size:10px}
    .loading{padding:30px;text-align:center;color:var(--muted);font-size:11px}
    .notice{padding:11px 12px;border-radius:11px;font-size:10px;line-height:1.5;margin-bottom:14px;display:none}.notice.show{display:block}.notice.error{background:rgba(255,102,126,.07);border:1px solid rgba(255,102,126,.15);color:#ffd3db}.notice.info{background:rgba(91,140,255,.06);border:1px solid rgba(91,140,255,.15);color:#315f86}
    .toast{position:fixed;right:18px;bottom:18px;max-width:420px;padding:13px 15px;border:1px solid var(--line);border-radius:13px;background:#ffffff;box-shadow:var(--shadow);color:var(--text);font-size:11px;transform:translateY(15px);opacity:0;pointer-events:none;transition:.2s;z-index:100}.toast.show{opacity:1;transform:none}
    .modal{position:fixed;inset:0;display:none;place-items:center;background:rgba(0,0,0,.56);padding:18px;z-index:90}.modal.show{display:grid}.modal-card{width:min(700px,100%);max-height:85vh;overflow:auto;background:#f7fbfe;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow)}.modal-head{display:flex;justify-content:space-between;gap:14px;padding:17px 19px;border-bottom:1px solid var(--line)}.modal-head h3{margin:0;font-size:16px}.modal-body{padding:19px}.detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.detail{padding:11px;border:1px solid rgba(255,255,255,.06);border-radius:10px;background:rgba(255,255,255,.015)}.detail small{display:block;color:#6b8093;font-size:9px;margin-bottom:3px}.detail strong{font-size:11px;word-break:break-word}.detail.full{grid-column:1/-1}
    .footer{padding-top:22px;text-align:center;color:#718497;font-size:9px}

    .mass-import-card{margin-top:18px;padding:17px;border:1px solid var(--line);border-radius:17px;background:linear-gradient(145deg,rgba(91,140,255,.045),rgba(255,255,255,.015));display:flex;align-items:center;justify-content:space-between;gap:18px}
    .mass-import-copy{display:flex;align-items:center;gap:12px;min-width:0}
    .mass-import-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;background:rgba(91,140,255,.09);border:1px solid rgba(91,140,255,.17);color:#1e5a8c;flex:none}
    .mass-import-icon svg{width:20px;height:20px}
    .mass-kicker{font-size:9px;letter-spacing:.1em;color:#91a9c8;font-weight:850}
    .mass-import-card h3{margin:4px 0 5px;font-size:14px;color:#173a5d}
    .mass-import-card p{margin:0;max-width:720px;color:#5f7489;font-size:10px;line-height:1.55}
    .mass-import-actions{display:flex;align-items:center;gap:9px;flex:none}
    .mass-status{font-size:9px;color:#64788c;white-space:nowrap}
    .file-drop{padding:13px;border:1px dashed rgba(111,148,215,.3);border-radius:14px;background:rgba(91,140,255,.025)}
    .file-select-button{width:100%;display:flex;align-items:center;gap:11px;padding:11px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.025);color:var(--text);text-align:left}
    .file-select-button:hover{border-color:rgba(112,155,230,.4);background:rgba(91,140,255,.05)}
    .file-select-button strong{display:block;font-size:11px}.file-select-button small{display:block;margin-top:3px;color:#74839a;font-size:9px}
    .file-select-icon{width:28px;height:28px;border-radius:9px;display:grid;place-items:center;background:rgba(91,140,255,.1);color:#cfe0ff;flex:none}
    .file-selected{margin-top:8px;color:#94a4bb;font-size:9px;word-break:break-word}
    .modal-meta{margin:5px 0 0;color:#7f8da2;font-size:10px}
    .print-modal-card{width:min(1050px,96vw);height:min(84vh,820px)}
    .print-viewer{height:calc(100% - 86px);min-height:420px;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#eef4f9}
    .print-viewer iframe{width:100%;height:100%;border:0;background:#fff}
    .import-summary{padding:13px;border:1px solid rgba(91,140,255,.15);border-radius:12px;background:rgba(91,140,255,.04);color:#cad8ec;font-size:11px}
    .import-warnings{margin-top:10px;color:#f1c2ca;font-size:10px;line-height:1.55}
    .import-preview-wrap{margin-top:12px;overflow:auto;border:1px solid var(--line);border-radius:12px}
    .import-preview{width:100%;min-width:620px;border-collapse:collapse}.import-preview th,.import-preview td{padding:10px;border-bottom:1px solid rgba(255,255,255,.06);font-size:10px;text-align:left}.import-preview th{color:#cbd8ea;background:rgba(255,255,255,.025)}.import-preview td{color:#9aa9bd}
    .action-icon-button{width:34px;height:34px;padding:0!important;display:grid;place-items:center;border-radius:10px}
    .action-icon-button svg{width:15px;height:15px}
    .action-icon-button.disabled{opacity:.32;cursor:not-allowed}
    .actions-group{display:flex;gap:6px;align-items:center;justify-content:flex-start}
    @media(max-width:850px){.mass-import-card{flex-direction:column;align-items:stretch}.mass-import-actions{flex-wrap:wrap}.mass-status{white-space:normal}}

    .home-kicker{display:flex;align-items:center;gap:8px;margin-top:6px;color:#9fb2cd;font-size:10px;font-weight:750;letter-spacing:.04em}
    .home-kicker .mini-dot{width:6px;height:6px;border-radius:50%;background:#5fe0b0;box-shadow:0 0 0 4px rgba(95,224,176,.08)}
    .info-card{min-height:116px}
    .info-card h3{color:#f5f8fd}
    .info-card p{max-width:680px}
    .choice{position:relative;overflow:hidden}
    .choice::after{content:"";position:absolute;inset:auto -30px -70px auto;width:150px;height:150px;border-radius:50%;background:rgba(91,140,255,.05);pointer-events:none}
    .choice:hover{border-color:rgba(113,155,255,.34)!important;background:linear-gradient(145deg,rgba(91,140,255,.09),rgba(255,255,255,.025))!important;transform:translateY(-2px)}
    .choice-icon{transition:.2s ease}
    .choice:hover .choice-icon{transform:scale(1.06)}

    .update-banner{position:fixed;left:50%;bottom:22px;transform:translate(-50%,12px);opacity:0;pointer-events:none;z-index:1000;display:flex;align-items:center;gap:10px;padding:11px 14px;border:1px solid rgba(91,140,255,.24);border-radius:12px;background:rgba(12,22,38,.96);box-shadow:0 18px 45px rgba(0,0,0,.3);color:#e9f0ff;font-size:11px;transition:.22s ease}
    .update-banner.show{opacity:1;transform:translate(-50%,0)}
    .update-banner .pulse{width:7px;height:7px;border-radius:50%;background:#75a3ff;box-shadow:0 0 0 5px rgba(117,163,255,.1)}

    .choice{color:var(--text)!important}
    .choice h3{color:#f7f9fd!important;text-shadow:0 1px 10px rgba(0,0,0,.18)}
    .choice p{color:#61778b!important}
    .choice-foot{color:#235c8f!important}
    .choice-icon{color:#1e5a8c!important;background:linear-gradient(145deg,rgba(91,140,255,.16),rgba(91,140,255,.06));border-color:rgba(125,164,255,.26);box-shadow:0 10px 24px rgba(49,95,208,.12)}
    .choice-icon svg,.stat-icon svg,.info-icon svg{width:21px;height:21px;display:block}
    .stat-icon{width:36px;height:36px;border-radius:11px;display:grid;place-items:center;color:#1e5a8c;background:rgba(31,111,178,.08);border:1px solid rgba(91,140,255,.14)}
    .info-icon{color:#1e5a8c!important}
    .panel-head .role-box strong,.panel-head .role-box span{color:inherit}
    .panel-head .role-box strong{color:#eef4ff!important}
    .panel-head .role-box span{color:#a6b4c9!important}
    .export-note{margin-top:10px;color:#6b8093;font-size:9px}
    .quick-sync{display:inline-flex;align-items:center;gap:7px;padding:7px 9px;border:1px solid rgba(49,196,141,.12);border-radius:999px;background:rgba(49,196,141,.045);color:#a9e5cf;font-size:9px;font-weight:750}
    .quick-sync .sync-dot{width:6px;height:6px;border-radius:50%;background:var(--success);box-shadow:0 0 0 4px rgba(49,196,141,.08)}
    @media(max-width:680px){.choice h3{font-size:15px}.stat-icon{width:34px;height:34px}}

    .records-actions-note{margin:-3px 0 14px;color:#6f8097;font-size:9px;line-height:1.5}
    .record-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 12px;padding:6px;border:1px solid rgba(31,87,135,.13);border-radius:16px;background:rgba(255,255,255,.58);box-shadow:0 8px 22px rgba(24,76,114,.05)}
    .record-tab{appearance:none;border:1px solid transparent;border-radius:11px;padding:11px 16px;background:transparent;color:#47667f;font:inherit;font-size:10px;font-weight:850;letter-spacing:.04em;cursor:pointer;transition:.18s ease}
    .record-tab:hover{background:rgba(31,111,178,.07);color:#174b72}
    .record-tab.active{background:linear-gradient(135deg,#2e86d1,#1f6fb2);color:#fff;box-shadow:0 7px 18px rgba(31,111,178,.18)}
    .record-tab-count{display:inline-flex;min-width:22px;height:20px;align-items:center;justify-content:center;margin-left:6px;padding:0 6px;border-radius:999px;background:rgba(255,255,255,.22);font-size:9px}
    .record-bulk-zone{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:0 0 14px;padding:12px 14px;border:1px solid rgba(199,74,89,.16);border-radius:15px;background:rgba(255,248,249,.62)}
    .record-bulk-copy{color:#6a5360;font-size:9px;line-height:1.5}.record-bulk-copy strong{display:block;color:#6e2534;font-size:10px;margin-bottom:2px}
    .record-bulk-actions{display:flex;gap:7px;flex-wrap:wrap}.record-bulk-actions .btn{min-height:38px}
    .bulk-delete-card{width:min(470px,100%);background:#f8fbfe;border:1px solid #cbdbe8;border-radius:20px;box-shadow:0 26px 80px rgba(15,61,95,.24);overflow:hidden}
    .bulk-delete-head{padding:20px 20px 14px;border-bottom:1px solid #d7e3ec}.bulk-delete-head h3{margin:0;font-size:17px;color:#7a2433}.bulk-delete-head p{margin:6px 0 0;color:#637b90;font-size:10px;line-height:1.55}
    .bulk-delete-body{padding:18px 20px}.bulk-delete-warning{padding:11px 12px;border-radius:12px;background:#fff1f3;border:1px solid #f0c9cf;color:#7a2433;font-size:10px;line-height:1.5;margin-bottom:12px}.bulk-delete-body .input{color:#173d59;background:#fff}
    .bulk-delete-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:14px}.btn-danger-fill{background:linear-gradient(135deg,#cf3046,#a92237)!important;color:#fff!important;border-color:#a92237!important}
    .home-callout{margin-top:12px;padding:16px 18px;border:1px solid rgba(91,140,255,.12);border-radius:16px;background:linear-gradient(140deg,rgba(91,140,255,.045),rgba(255,255,255,.012));color:var(--muted);font-size:10px;line-height:1.6}
    .home-callout strong{color:#dbe5f5}
    .panel-head .panel-actions{justify-content:flex-end}

    .info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:12px}
    .info-card{display:flex;gap:13px;padding:18px;border:1px solid var(--line);border-radius:18px;background:linear-gradient(145deg,rgba(255,255,255,.035),rgba(255,255,255,.015));box-shadow:0 14px 35px rgba(0,0,0,.12)}
    .info-icon{width:40px;height:40px;flex:none;display:grid;place-items:center;border-radius:12px;background:rgba(31,111,178,.08);border:1px solid rgba(91,140,255,.16);color:#bfd2ff;font-size:18px}
    .info-kicker{font-size:9px;letter-spacing:.1em;font-weight:850;color:#8fa4c2}
    .info-card h3{margin:5px 0 6px;font-size:14px}
    .info-card p{margin:0;color:var(--muted);font-size:10px;line-height:1.6}
    @media(max-width:680px){.info-grid{grid-template-columns:1fr}}

    .select-input{appearance:auto}
    .age-danger{border-color:rgba(255,102,126,.55)!important;background:rgba(255,102,126,.075)!important;color:#ffd7de!important}
    .child-card.age-invalid{border-color:rgba(255,102,126,.38);background:rgba(255,102,126,.035)}
    .age-alert{display:none;margin-top:8px;padding:8px 9px;border-radius:9px;background:rgba(255,102,126,.08);border:1px solid rgba(255,102,126,.18);color:#ffd4dc;font-size:10px;line-height:1.45}
    .age-alert.show{display:block}
    .access-card{width:min(430px,100%);background:#f7fbfe;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);overflow:hidden}
    .access-head{padding:20px 20px 14px;border-bottom:1px solid var(--line)}
    .access-head h3{margin:0;font-size:17px}.access-head p{margin:6px 0 0;color:var(--muted);font-size:10px;line-height:1.5}
    .access-body{padding:18px 20px}
    .access-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:13px;background:rgba(91,140,255,.09);border:1px solid rgba(91,140,255,.16);margin-bottom:14px}
    .access-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:14px}
    .field-error{display:none;color:#ffb9c5;font-size:10px;margin-top:7px}
    .field-error.show{display:block}
    .save-lock{display:none;margin-top:8px;color:#ffb9c5;font-size:10px}
    .save-lock.show{display:block}
    .readonly-note{font-size:10px;color:#78879d;line-height:1.45}
    @media(max-width:680px){.access-actions .btn{flex:1}.access-body,.access-head{padding-left:16px;padding-right:16px}}

    @media(max-width:980px){.hero{grid-template-columns:1fr}.child-grid{grid-template-columns:1fr 1fr}}
    @media(max-width:680px){.shell{width:min(100% - 18px,1280px)}.hero-copy{padding:27px 22px}.stats{padding:18px}.choice-grid,.form-grid,.detail-grid{grid-template-columns:1fr}.full{grid-column:auto}.child-grid{grid-template-columns:1fr}.panel-head,.content{padding:17px}.panel-head{align-items:flex-start;flex-direction:column}.panel-actions{width:100%}.panel-actions .btn{flex:1}.form-footer .btn{width:100%}.children-head{flex-direction:column}}

    .hero-card,.panel{backdrop-filter:blur(10px);}
    .hero-card{border-color:rgba(18,58,99,.12)}
    .panel-head{background:linear-gradient(180deg,rgba(245,250,254,.95),rgba(239,247,252,.88))}
    .field label{color:#355d79!important}
    .form-section-title{display:flex;align-items:center;gap:10px;margin-top:2px;padding:10px 13px;border:1px solid rgba(31,111,178,.14);border-radius:12px;background:linear-gradient(90deg,rgba(31,111,178,.11),rgba(255,255,255,.52));color:#174b72;font-size:11px;font-weight:900;letter-spacing:.07em;text-transform:uppercase}
    .form-section-title::before{content:"";width:5px;height:18px;border-radius:999px;background:linear-gradient(180deg,#3b8fca,#1f6fb2);flex:none}
    .representative-section-title{margin-top:4px}
    .input{border-color:#c7d6e3!important;box-shadow:inset 0 1px 2px rgba(18,58,99,.035)}
    .input:focus{border-color:#4b96cc!important;box-shadow:0 0 0 3px rgba(31,111,178,.10)}
    .btn-secondary{background:#f4f8fc!important;border-color:#cbd9e5!important;color:#284e6d!important}
    .btn-primary{background:linear-gradient(135deg,#2f86c0,#1f6fb2)!important}
    .choice,.stat,.info-card,.mass-import-card{border-color:rgba(18,58,99,.12)}
    .stat strong{color:#174a72}
    .table th{background:#1f6fb2!important;color:#fff!important}
    .table td{border-bottom-color:#dbe6ee!important}
    .table tbody tr:hover{background:#f2f8fc!important}
    .kind.militar{background:#e8f2fb;border-color:#c7dced;color:#235c8b}
    .kind.civil{background:#eaf7f1;border-color:#c8e8d8;color:#18734f}
    .modal{background:rgba(20,49,74,.42)}
    .modal-card,.access-card{background:#f8fbfe!important;border-color:#cbdbe8!important}
    .readonly-note,.help,.modal-meta,.export-note,.records-actions-note{color:#637b90!important}
  

    /* ===== IDENTIDAD VISUAL ACTUALIZADA ===== */
    html,body{
      min-height:100%;
      background-color:#dcebf6 !important;
      background-image:linear-gradient(180deg,rgba(231,243,253,.50) 0%,rgba(238,247,253,.64) 42%,rgba(247,251,254,.90) 100%),url("../images/4bb2cb3d82b97204.webp") !important;
      background-size:cover !important;
      background-position:center top !important;
      background-attachment:fixed !important;
    }
    body:after{
      background:
        radial-gradient(circle at 18% 12%,rgba(255,255,255,.22),transparent 28%),
        radial-gradient(circle at 82% 12%,rgba(255,255,255,.18),transparent 30%),
        linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.24) 45%,rgba(255,255,255,.50));
      z-index:0;
    }
    body:before{height:5px;background:linear-gradient(90deg,#f4c542 0 33.33%,#2454c4 33.33% 66.66%,#cf3046 66.66% 100%);box-shadow:0 2px 12px rgba(15,53,92,.18)}
    .shell{width:min(1380px,calc(100% - 30px));padding:16px 0 46px}
    .topbar{
      position:relative;
      z-index:2;
      height:auto;
      min-height:82px;
      padding:10px 14px;
      margin-bottom:20px;
      border:1px solid rgba(31,87,135,.14);
      border-radius:24px;
      background:rgba(255,255,255,.80);
      box-shadow:0 18px 48px rgba(24,76,114,.16),inset 0 1px 0 rgba(255,255,255,.92);
      backdrop-filter:blur(18px) saturate(135%);
      -webkit-backdrop-filter:blur(18px) saturate(135%);
    }
    .brand{padding:4px 6px;border-radius:17px;transition:.2s ease}
    .brand:hover{background:rgba(31,111,178,.06)}
    .brand-crest-wrap{width:62px;height:62px;border-radius:18px;background:rgba(255,255,255,.92);box-shadow:0 9px 24px rgba(17,66,106,.14)}
    .brand-crest{width:60px;height:60px}
    .brand-title{font-size:16px;color:#123f67;letter-spacing:-.015em}
    .brand-sub{font-size:11px;color:#52708a}
    .brand-overline{font-size:9px;color:#426984;letter-spacing:.17em}
    .institutional-crest{padding:6px 11px 6px 6px;border-radius:18px;background:rgba(255,255,255,.86);border:1px solid rgba(31,87,135,.13);box-shadow:0 10px 28px rgba(17,66,106,.12)}
    .institutional-crest img{width:62px;height:62px}
    .venezuela-flag{width:138px;height:15px;margin-top:8px;box-shadow:0 5px 12px rgba(17,66,106,.13)}
    .system-state{padding:8px 11px;border-radius:999px;background:rgba(255,255,255,.7);border:1px solid rgba(31,87,135,.10);color:#52708a;font-weight:650}

    .hero{grid-template-columns:1.35fr .65fr;gap:20px;margin-bottom:20px}
    .hero-card,.panel{
      border-color:rgba(31,87,135,.15);
      background:linear-gradient(145deg,rgba(255,255,255,.91),rgba(248,252,255,.86));
      box-shadow:0 18px 52px rgba(21,75,112,.15),inset 0 1px 0 rgba(255,255,255,.82);
      backdrop-filter:blur(15px) saturate(125%);
      -webkit-backdrop-filter:blur(15px) saturate(125%);
    }
    .hero-copy{padding:34px 38px 32px;min-height:370px}
    .eyebrow{background:rgba(35,111,178,.08);color:#1e5f94;border-color:rgba(35,111,178,.18)}
    h1{color:#103e66;font-size:clamp(38px,4.6vw,58px);line-height:1.01;letter-spacing:-.055em}
    .hero-copy p{color:#587187;font-size:15px;max-width:700px}
    .btn{min-height:45px;border-radius:13px}
    .btn-primary{color:#fff;background:linear-gradient(135deg,#2e86d1,#155b9f);box-shadow:0 12px 26px rgba(21,91,159,.22)}
    .btn-secondary{background:rgba(255,255,255,.82);border-color:rgba(31,87,135,.14);color:#214f73;box-shadow:0 6px 18px rgba(24,76,114,.06)}
    .btn-secondary:hover{background:#fff;border-color:rgba(31,111,178,.22)}
    .btn-danger{color:#9d2940;background:rgba(190,54,80,.07);border-color:rgba(190,54,80,.16)}
    .btn-quiet{color:#52708a}

    .stats{padding:20px}
    .stats-title{color:#56728b}
    .stat{padding:15px 16px;background:rgba(255,255,255,.62);border-color:rgba(31,87,135,.12);box-shadow:0 6px 18px rgba(24,76,114,.05)}
    .stat small{color:#698198}
    .stat strong{color:#123f67}
    .stat-icon{color:#2d709f}

    .panel-head{padding:20px 22px;background:linear-gradient(90deg,rgba(245,250,254,.75),rgba(255,255,255,.58));border-bottom-color:rgba(31,87,135,.12)}
    .panel-head h2{color:#123f67}
    .panel-head p{color:#688096}
    .content{padding:22px}

    .choice{background:rgba(255,255,255,.82);border-color:rgba(31,87,135,.14);box-shadow:0 10px 30px rgba(24,76,114,.07)}
    .choice:hover{background:rgba(255,255,255,.96);border-color:rgba(31,111,178,.30);box-shadow:0 16px 34px rgba(24,76,114,.11)}
    .choice-icon{background:rgba(35,111,178,.08);border-color:rgba(35,111,178,.14);color:#1d679b}
    .choice h3{color:#15476f}
    .choice p{color:#60778d}
    .choice-foot{color:#1e6598}

    .form-grid{padding:20px;border-radius:18px;background:rgba(255,255,255,.42);border:1px solid rgba(31,87,135,.09);box-shadow:inset 0 1px 0 rgba(255,255,255,.72);gap:15px}
    label{color:#234f72;font-size:10.5px;letter-spacing:.015em}
    .required{color:#cc3b4e}
    .input{min-height:45px;border-color:rgba(31,87,135,.16);background:rgba(255,255,255,.95);color:#173f60;box-shadow:0 4px 12px rgba(24,76,114,.035)}
    .input::placeholder{color:#93a4b3}
    .input:focus{border-color:rgba(35,111,178,.55);box-shadow:0 0 0 4px rgba(35,111,178,.11),0 5px 18px rgba(24,76,114,.07)}
    .help{color:#6c8397}
    .role-box{background:linear-gradient(135deg,rgba(35,111,178,.08),rgba(255,255,255,.48));border-color:rgba(35,111,178,.14)}
    .role-box strong{color:#174b72}
    .role-box span{color:#678095}
    .children{background:rgba(255,255,255,.48);border-color:rgba(31,87,135,.11)}
    .child-card{background:rgba(255,255,255,.82);border-color:rgba(31,87,135,.11);box-shadow:0 7px 20px rgba(24,76,114,.045)}
    .child-title{color:#204d70}
    .child-state{color:#71879a}
    .count-pill{background:rgba(35,111,178,.07);border-color:rgba(35,111,178,.14);color:#1d6294}
    .form-footer{border-top-color:rgba(31,87,135,.11)}

    .mass-import-card{background:linear-gradient(135deg,rgba(232,244,252,.82),rgba(255,255,255,.68));border-color:rgba(31,87,135,.13);box-shadow:0 10px 26px rgba(24,76,114,.06)}
    .mass-import-icon{background:rgba(35,111,178,.08);border-color:rgba(35,111,178,.14);color:#1d6698}
    .mass-kicker{color:#5681a0}
    .mass-import-card h3{color:#174b72}
    .mass-import-card p{color:#61798f}
    .mass-status{color:#6a8194}
    .file-drop{border-color:rgba(31,111,178,.28);background:rgba(255,255,255,.45)}
    .file-select-button{background:rgba(255,255,255,.78);border-color:rgba(31,87,135,.12)}
    .file-select-button:hover{background:#fff;border-color:rgba(31,111,178,.25)}
    .file-select-button strong{color:#204f73}
    .file-select-icon{background:rgba(35,111,178,.09);color:#1e699d}
    .file-selected{color:#657e92}

    .table-wrap{border-color:rgba(31,87,135,.13);background:rgba(255,255,255,.62);box-shadow:0 10px 24px rgba(24,76,114,.06)}
    .table th{background:linear-gradient(180deg,#2a6fa8,#205884);color:#fff;border-bottom-color:rgba(255,255,255,.18)}
    .table td{color:#274f6d;border-bottom-color:rgba(31,87,135,.08)}
    .table tbody tr:hover{background:rgba(231,243,252,.7)}
    .children-mini div{background:rgba(255,255,255,.78);border-color:rgba(31,87,135,.08)}
    .empty strong{color:#1c4b6e}

    .notice.info{background:rgba(35,111,178,.065);border-color:rgba(35,111,178,.14);color:#315f82}
    .notice.error{color:#9d3042;background:rgba(190,54,80,.065);border-color:rgba(190,54,80,.13)}
    .modal{background:rgba(19,47,72,.38);backdrop-filter:blur(4px)}
    .modal-card{background:rgba(250,253,255,.97);border-color:rgba(31,87,135,.14);box-shadow:0 26px 80px rgba(15,61,95,.22)}
    .detail{background:rgba(239,247,252,.75);border-color:rgba(31,87,135,.08)}
    .detail strong{color:#1a4668}
    .footer{color:#6b8194}

    @media (max-width:900px){
      .shell{width:min(100% - 18px,1380px)}
      .topbar{padding:9px 10px;border-radius:19px}
      .institutional-crest span{display:none}
      .hero{grid-template-columns:1fr}
      .hero-copy{min-height:0}
      .form-grid{grid-template-columns:1fr;padding:15px}
      .full{grid-column:auto}
      .mass-import-card{flex-direction:column;align-items:stretch}
      .mass-import-actions{flex-wrap:wrap}
    }
    @media (max-width:620px){
      html,body{background-attachment:scroll !important}
      .topbar{align-items:flex-start}
      .brand-crest-wrap,.institutional-crest img{width:52px;height:52px}
      .brand-title{font-size:14px}
      .brand-sub{font-size:10px}
      .system-state{font-size:10px;padding:6px 8px}
      h1{font-size:36px}
      .hero-copy{padding:26px 22px}
      .content{padding:15px}
      .panel-head{padding:16px}
    }



  /* Fondo institucional más visible */
  html,body{
    min-height:100%;
    background-color:#6f8fae !important;
    background-image:
      linear-gradient(180deg,rgba(236,246,255,.10) 0%,rgba(235,245,254,.18) 42%,rgba(233,243,252,.34) 100%),
      url("../images/aa46139dc9b51cd6.webp") !important;
    background-position:center top !important;
    background-size:cover !important;
    background-repeat:no-repeat !important;
    background-attachment:fixed !important;
  }
  body::before{
    content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;
    background:radial-gradient(circle at 50% 16%,rgba(255,255,255,.18),transparent 48%),linear-gradient(180deg,rgba(8,34,60,.03),rgba(8,34,60,.16));
  }
  .app-shell{background:transparent !important}
  .topbar{
    height:92px !important; margin-bottom:20px !important; padding:8px 12px !important;
    border:1px solid rgba(255,255,255,.38); border-radius:22px;
    background:rgba(245,250,255,.46) !important; backdrop-filter:blur(10px) saturate(125%);
    box-shadow:0 16px 45px rgba(16,54,87,.18), inset 0 1px rgba(255,255,255,.55);
  }
  .brand{padding:4px 10px !important;gap:14px !important}
  .brand-crest-wrap{width:68px !important;height:68px !important;border-radius:18px !important;background:rgba(255,255,255,.88) !important;box-shadow:0 10px 22px rgba(16,54,87,.15) !important}
  .brand-crest{width:64px !important;height:64px !important}
  .brand-overline{color:#164f7d !important;font-size:10px !important;letter-spacing:.13em !important}
  .brand-title{color:#0d3557 !important;font-size:18px !important;letter-spacing:-.02em !important}
  .brand-sub{color:#466a84 !important;font-size:11px !important}
  .venezuela-flag{box-shadow:0 5px 12px rgba(11,47,84,.15) !important}
  .personnel-crest-state{
    display:flex !important;align-items:center !important;gap:10px !important;
    min-width:270px;justify-content:flex-end;padding:4px 8px !important;
    color:#123b5e !important;
  }
  .personnel-crest-wrap{
    width:70px;height:70px;border-radius:18px;overflow:hidden;display:grid;place-items:center;flex:none;
    background:rgba(255,255,255,.88);border:1px solid rgba(18,58,99,.16);
    box-shadow:0 10px 24px rgba(18,58,99,.16);
  }
  .personnel-crest{width:66px;height:66px;object-fit:contain}
  .personnel-copy{display:flex;flex-direction:column;gap:3px;text-align:right}
  .personnel-copy strong{font-size:10px;letter-spacing:.08em;color:#143e61}
  .personnel-copy span{font-size:9px;color:#5d7488}
  .personnel-crest-state #statusDot,.personnel-crest-state #statusText{display:none !important}

  /* Paneles translúcidos para dejar ver la aeronave y el cielo */
  .hero-card,.panel{
    background:linear-gradient(145deg,rgba(255,255,255,.76),rgba(237,247,253,.68)) !important;
    backdrop-filter:blur(9px) saturate(120%);
    box-shadow:0 22px 58px rgba(23,60,92,.20) !important;
  }
  .panel-head{background:rgba(255,255,255,.38) !important}
  .content{background:transparent !important}
  .choice{background:rgba(255,255,255,.63) !important;backdrop-filter:blur(7px)}
  .stat{background:rgba(255,255,255,.50) !important}
  .children{background:rgba(255,255,255,.31) !important;backdrop-filter:blur(8px)}
  .child-card{background:rgba(245,250,254,.70) !important}
  .table-wrap{background:rgba(255,255,255,.48) !important;backdrop-filter:blur(8px)}
  .table th{background:rgba(235,244,251,.78) !important;color:#244e70 !important}
  .table td{color:#1c4869 !important;border-bottom-color:rgba(39,82,112,.12) !important}
  .table tbody tr:hover{background:rgba(255,255,255,.82) !important}

  /* Encabezado de registro legible sobre cualquier fondo */
  #registerTitle,.panel-head h2{color:#103a5d !important;text-shadow:none !important}
  #registerTitle{font-size:24px !important;font-weight:900 !important}
  #roleTitle{color:#15486f !important;font-weight:900 !important}
  #roleSubtitle,.panel-head p{color:#55728a !important}
  label{color:#214e6e !important}
  .help{color:#667f93 !important}
  .input{color:#173c59 !important;background:rgba(255,255,255,.88) !important;border-color:rgba(31,82,115,.18) !important}
  .input::placeholder{color:#7890a2 !important}
  .choice h3,.children-head h3{color:#123e60 !important}
  .choice-foot{color:#2a6690 !important}
  .count-pill{color:#195a88 !important;background:rgba(50,130,190,.10) !important}
  .notice.info{background:rgba(229,243,252,.72) !important;color:#2b5b7c !important}

  /* Elementos técnicos de conexión ocultos */
  .internal-info-hidden{display:none !important}
  .footer{color:#46657c !important;background:rgba(255,255,255,.26);border:1px solid rgba(255,255,255,.35);padding:9px 12px !important;border-radius:12px;backdrop-filter:blur(6px)}

  @media (max-width:900px){
    .topbar{height:auto !important;min-height:88px}
    .personnel-copy{display:none}
    .personnel-crest-state{min-width:auto}
  }



  .aviation-crest-wrap,.personnel-crest-wrap{background:transparent!important;border:0!important;box-shadow:none!important;overflow:visible!important}
  .brand-crest{filter:drop-shadow(0 8px 12px rgba(9,45,80,.28))!important}
  .personnel-crest{width:74px!important;height:74px!important;filter:drop-shadow(0 8px 12px rgba(9,45,80,.28))!important}
  .register-person-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important}
  .register-person-grid>.full{grid-column:1/-1!important}
  .register-person-grid .conditional.full{grid-column:1/-1!important}
  .civil-inner-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important}
  .representative-phone-field{max-width:50%}
  .cedula-lookup-wrap{position:relative;display:block}
  .lookup-badge{position:absolute;right:10px;top:12px;font-size:11px;font-weight:800;color:#55728a;background:rgba(238,247,252,.92);border:1px solid rgba(61,116,150,.14);padding:6px 9px;border-radius:9px;pointer-events:none;white-space:nowrap}
  .lookup-badge.loading{color:#2c6e9a;background:#e8f3fa}.lookup-badge.found{color:#116d4b;background:#e9f8ef;border-color:#b9dfcb}.lookup-badge.new{color:#775f20;background:#fff7dc;border-color:#e7daa5}.lookup-badge.error{color:#9e3434;background:#fdeaea;border-color:#efc2c2}
  .cedula-lookup-wrap .input{padding-right:310px!important}
  .panel,.hero-card{background:linear-gradient(145deg,rgba(255,255,255,.60),rgba(232,245,253,.48))!important;backdrop-filter:blur(5px) saturate(125%)!important}
  .panel-head{background:rgba(255,255,255,.28)!important}
  .children{background:rgba(255,255,255,.20)!important}
  .child-card{background:rgba(250,253,255,.56)!important}
  .table-wrap{background:rgba(255,255,255,.30)!important}
  #registerTitle,.panel-head h2{color:#0f4167!important}
  .register-person-grid label{color:#1c4b6b!important}
  @media(max-width:900px){.register-person-grid,.civil-inner-grid{grid-template-columns:1fr!important}.representative-phone-field{max-width:none}.cedula-lookup-wrap .input{padding-right:12px!important}.lookup-badge{position:static;display:block;width:max-content;max-width:100%;margin-top:6px;white-space:normal}}



  #securityVaultModal{z-index:3000!important}
  .vault-card{width:min(560px,calc(100vw - 32px));background:rgba(255,255,255,.96);border:1px solid rgba(15,65,103,.16);border-radius:24px;box-shadow:0 28px 80px rgba(7,45,79,.32);overflow:hidden}
  .vault-head{padding:26px 28px 18px;background:linear-gradient(135deg,rgba(18,72,112,.98),rgba(31,111,178,.94));color:#fff}
  .vault-head h3{margin:6px 0 5px;font-size:22px}.vault-head p{margin:0;color:rgba(255,255,255,.88);line-height:1.45}
  .vault-lock{font-size:34px}.vault-body{padding:24px 28px}.vault-note{padding:12px 14px;border-radius:12px;background:#f1f7fb;border:1px solid #d7e7f2;color:#36566e;font-size:13px;line-height:1.45;margin-bottom:14px}.vault-note.warn{background:#fff8e4;border-color:#eadca8;color:#6c5620}.vault-error{display:none;color:#9b2638;font-size:13px;margin-top:8px}.vault-error.show{display:block}.vault-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:16px;flex-wrap:wrap}.vault-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;background:rgba(224,246,236,.85);color:#146b4b;border:1px solid #b9dfcb;font-size:12px;font-weight:800}



/* Mejor contraste para Objetivo y Función en la pantalla de inicio */
.info-grid .info-card{
  background:rgba(255,255,255,.94)!important;
  border:1px solid rgba(31,79,120,.18)!important;
  box-shadow:0 16px 36px rgba(18,58,99,.16)!important;
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
}
.info-grid .info-kicker{
  color:#174b78!important;
  font-weight:900!important;
}
.info-grid .info-card h3{
  color:#123e63!important;
  text-shadow:none!important;
  font-size:15px!important;
  line-height:1.35!important;
}
.info-grid .info-card p{
  color:#36566f!important;
  font-size:11px!important;
  line-height:1.7!important;
  font-weight:520;
}
.info-grid .info-icon{
  background:rgba(31,111,178,.12)!important;
  border-color:rgba(31,111,178,.2)!important;
  color:#195b8f!important;
  box-shadow:0 8px 18px rgba(31,111,178,.08);
}
@media(max-width:680px){
  .info-grid .info-card{padding:16px!important}
  .info-grid .info-card p{font-size:10.5px!important}
}



.records-pagination{display:flex;align-items:center;justify-content:center;gap:10px;padding:14px 4px 2px;flex-wrap:wrap}
.records-pagination .page-info{font-size:.86rem;font-weight:700;color:#23415a;padding:8px 12px;background:rgba(255,255,255,.78);border:1px solid rgba(74,111,139,.16);border-radius:999px}
.records-pagination .page-btn{min-width:42px;height:38px;border:1px solid rgba(53,89,116,.18);background:rgba(255,255,255,.86);border-radius:10px;color:#17344b;font-weight:800;cursor:pointer;box-shadow:0 4px 12px rgba(18,50,73,.06)}
.records-pagination .page-btn:disabled{opacity:.45;cursor:not-allowed}
.records-pagination .page-btn:not(:disabled):hover{transform:translateY(-1px);box-shadow:0 6px 14px rgba(18,50,73,.10)}
@media(max-width:760px){.records-pagination .page-info{width:100%;text-align:center}.records-pagination{gap:7px}}



body::before{backdrop-filter:none!important}
.panel,.hero,.stat-card,.info-card,.mass-import-card{backdrop-filter:blur(7px)!important}
@media(max-width:900px){.panel,.hero,.stat-card,.info-card,.mass-import-card{backdrop-filter:blur(4px)!important}}


/* ========================================================================
   LOGIN INSTITUCIONAL — acceso seguro con fondo Sukhoi
   ======================================================================== */
.d-none{display:none!important}
.admin-only.role-hidden{display:none!important}

.login-screen{
  position:fixed;
  inset:0;
  z-index:10000;
  min-height:100vh;
  overflow:auto;
  display:grid;
  place-items:center;
  padding:clamp(18px,3vw,34px);
  color:#fff;
  isolation:isolate;
  background:#061321;
}
.login-backdrop{
  position:absolute;
  inset:0;
  z-index:-3;
  background-image:
    linear-gradient(118deg,rgba(2,10,20,.90) 0%,rgba(4,25,47,.72) 44%,rgba(2,10,20,.86) 100%),
    url("../images/73405074a9f841ea.webp");
  background-position:center;
  background-size:cover;
  transform:scale(1.025);
  filter:saturate(1.08) contrast(1.04);
}
.login-backdrop::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 18% 22%,rgba(56,146,220,.20),transparent 25%),
    radial-gradient(circle at 82% 72%,rgba(42,93,184,.18),transparent 32%),
    linear-gradient(180deg,rgba(1,8,18,.05),rgba(1,8,18,.42));
}
.login-backdrop::after{
  content:"";
  position:absolute;
  inset:0;
  opacity:.20;
  background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);
  background-size:52px 52px;
  mask-image:linear-gradient(to bottom,transparent,black 25%,black 75%,transparent);
}
.login-shell{
  width:min(1120px,100%);
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(390px,490px);
  gap:clamp(28px,5vw,72px);
  align-items:center;
}
.login-branding{
  max-width:650px;
  padding:14px 4px;
  text-shadow:0 2px 24px rgba(0,0,0,.42);
}
.login-crest-row{display:flex;align-items:center;gap:14px;margin-bottom:18px}
.login-crest{display:grid;place-items:center;width:92px;height:92px;overflow:visible;background:transparent;border:0;box-shadow:none}
.login-crest img{display:block;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 12px 22px rgba(0,0,0,.34))}
.login-crest-aviation{width:105px;height:118px}
.login-overline{font-size:11px;letter-spacing:.20em;font-weight:900;color:#e4f2ff}
.login-branding h1{margin:10px 0 12px;font-size:clamp(44px,6.2vw,82px);letter-spacing:-.065em;line-height:.94;color:#fff}
.login-branding>p{max-width:620px;margin:0;color:rgba(235,245,255,.87);font-size:15px;line-height:1.72}
.login-stripe{display:grid;grid-template-columns:1fr 1fr 1fr;width:235px;height:5px;border-radius:99px;overflow:hidden;margin-top:25px;box-shadow:0 3px 18px rgba(0,0,0,.25)}
.login-stripe span:nth-child(1){background:#f3c43b}.login-stripe span:nth-child(2){background:#2d63c8}.login-stripe span:nth-child(3){background:#d9364f}
.login-card{
  width:100%;
  padding:30px;
  border:1px solid rgba(210,233,250,.30);
  border-radius:28px;
  background:linear-gradient(145deg,rgba(248,252,255,.97),rgba(227,240,249,.94));
  color:#14324e;
  box-shadow:0 34px 90px rgba(0,0,0,.42),0 1px 0 rgba(255,255,255,.75) inset,0 0 0 1px rgba(4,46,84,.10);
  backdrop-filter:blur(18px) saturate(145%);
  -webkit-backdrop-filter:blur(18px) saturate(145%);
  position:relative;
  overflow:hidden;
}
.login-card::before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(120deg,rgba(255,255,255,.32),transparent 35%,transparent 70%,rgba(53,137,196,.08))}
.login-card-head{display:flex;gap:16px;align-items:flex-start;margin-bottom:23px;position:relative}
.login-card-emblems{display:flex;align-items:center;gap:8px;flex:none;padding-top:1px}
.login-personnel-crest{width:66px;height:66px;display:grid;place-items:center;background:transparent;border:0;box-shadow:none;overflow:visible}
.login-personnel-crest img{display:block;width:66px;height:66px;object-fit:contain;filter:drop-shadow(0 8px 15px rgba(4,32,58,.20))}
.login-card-title{min-width:0}
.login-kicker{font-size:9px;letter-spacing:.16em;font-weight:900;color:#4c7290}
.login-card h2{margin:5px 0 5px;font-size:24px;color:#103e63;letter-spacing:-.035em}
.login-card-head p{margin:0;color:#647d91;font-size:10.5px;line-height:1.52}
.login-card .field{margin-bottom:14px}
.login-card .field label{color:#2a526e!important;font-weight:850}
.login-input{background:rgba(255,255,255,.86)!important;color:#173850!important;min-height:50px!important;border-color:#bed2e0!important;box-shadow:inset 0 1px 2px rgba(16,56,86,.06)}
.login-input:focus{border-color:#3e86b6!important;box-shadow:0 0 0 4px rgba(55,127,179,.12)!important}
.login-input::placeholder{color:#8197a8}
.password-wrap{position:relative}
.password-wrap .login-input{padding-right:82px}
.password-toggle{position:absolute;right:7px;top:8px;height:34px;padding:0 10px;border:1px solid #cfdee9;border-radius:9px;background:#f2f7fb;color:#315b77;font-size:10px;font-weight:800;cursor:pointer}
.password-toggle:hover{background:#e8f2f9}
.login-submit{width:100%;min-height:50px;margin-top:8px;font-size:12px;letter-spacing:.02em;box-shadow:0 12px 24px rgba(36,102,151,.20)}
.login-error{display:none;padding:10px 11px;margin:2px 0 10px;border-radius:11px;border:1px solid #efc8cf;background:#fff1f3;color:#8f3141;font-size:10.5px;line-height:1.45}
.login-error.show{display:block}
.session-user{display:flex;flex-direction:column;gap:1px;min-width:128px;padding:7px 10px;border:1px solid rgba(18,58,99,.12);border-radius:12px;background:rgba(255,255,255,.64)}
.session-user strong{font-size:10px;color:#173f5e}.session-user span{font-size:8px;font-weight:850;letter-spacing:.08em;color:#698198}
.session-logout{min-height:34px;padding:0 11px;font-size:9px}
body[data-auth-role="registrador"] .admin-only{display:none!important}
body[data-auth-role="registrador"] #registerTitle::after{content:" · MODO REGISTRO";font-size:10px;color:#6b8294;letter-spacing:.05em}

@media(max-width:930px){
  .login-shell{grid-template-columns:1fr;gap:20px;max-width:600px}
  .login-branding{text-align:center;margin:auto}.login-crest-row{justify-content:center}
  .login-stripe{margin-left:auto;margin-right:auto}
  .login-branding h1{font-size:clamp(40px,11vw,68px)}
}
@media(max-width:680px){
  .login-screen{padding:16px 11px}.login-card{border-radius:22px;padding:20px}
  .login-branding>p{font-size:12px}.login-crest-aviation{width:84px;height:96px}
  .login-personnel-crest{width:56px;height:56px}.login-personnel-crest img{width:56px;height:56px}
  .login-card-head{gap:11px}.login-card h2{font-size:21px}.login-kicker{font-size:8px}
  .personnel-crest-state{flex-wrap:wrap;justify-content:flex-end}.session-user{order:5}
}

/* ========================================================================
   LOGIN — AJUSTE RESPONSIVO FINAL
   El contenido se escala según viewport sin dominar pantallas pequeñas.
   ======================================================================== */
.login-screen{
  padding:clamp(10px,2.2vw,28px);
}
.login-shell{
  width:min(1040px,94vw);
  max-height:calc(100vh - 24px);
  grid-template-columns:minmax(0,1fr) minmax(330px,430px);
  gap:clamp(18px,3.8vw,46px);
}
.login-branding{
  max-width:560px;
  padding:8px 2px;
}
.login-crest-row{
  margin-bottom:clamp(8px,1.4vh,16px);
}
.login-crest-aviation{
  width:clamp(68px,7vw,92px);
  height:clamp(78px,8vw,104px);
}
.login-overline{
  font-size:clamp(8px,.72vw,11px);
  letter-spacing:clamp(.12em,.18vw,.20em);
}
.login-branding h1{
  margin:clamp(6px,.9vh,10px) 0 clamp(7px,1vh,12px);
  font-size:clamp(34px,4.7vw,64px);
}
.login-branding>p{
  max-width:520px;
  font-size:clamp(10px,.95vw,13px);
  line-height:1.55;
}
.login-stripe{
  width:clamp(150px,18vw,220px);
  height:4px;
  margin-top:clamp(14px,2vh,22px);
}
.login-card{
  width:100%;
  max-height:calc(100vh - 34px);
  padding:clamp(18px,2.2vw,27px);
  border-radius:clamp(18px,2vw,25px);
  overflow:auto;
}
.login-card-head{
  gap:clamp(10px,1.3vw,15px);
  margin-bottom:clamp(14px,1.9vh,21px);
}
.login-card-emblems{
  width:clamp(50px,5.8vw,64px);
  align-items:flex-start;
  justify-content:center;
}
.login-personnel-crest,
.login-personnel-crest img{
  width:clamp(50px,5.8vw,64px);
  height:clamp(50px,5.8vw,64px);
}
.login-kicker{font-size:clamp(7px,.62vw,9px)}
.login-card h2{font-size:clamp(19px,1.8vw,23px)}
.login-card .field{margin-bottom:clamp(10px,1.4vh,14px)}
.login-input{min-height:clamp(44px,5.7vh,50px)!important}
.login-submit{min-height:clamp(44px,5.7vh,50px);margin-top:4px}

@media (max-height:760px) and (min-width:931px){
  .login-shell{max-height:calc(100vh - 14px)}
  .login-branding h1{font-size:clamp(30px,4.1vw,52px)}
  .login-branding>p{font-size:10px}
  .login-card{padding:18px 21px}
  .login-card-head{margin-bottom:12px}
  .login-card .field{margin-bottom:9px}
}

@media (max-width:930px){
  .login-screen{align-items:start;padding-top:clamp(14px,4vh,30px);overflow:auto}
  .login-shell{width:min(620px,94vw);max-height:none;grid-template-columns:1fr;gap:12px}
  .login-branding{max-width:100%;padding:0;text-align:center}
  .login-crest-row{justify-content:center;margin-bottom:5px}
  .login-crest-aviation{width:68px;height:76px}
  .login-branding h1{font-size:clamp(30px,7.5vw,50px)}
  .login-branding>p{margin-inline:auto;max-width:500px}
  .login-stripe{margin-left:auto;margin-right:auto;margin-top:13px}
}

@media (max-width:560px){
  .login-screen{padding:10px 8px 14px}
  .login-shell{width:min(430px,96vw);gap:9px}
  .login-branding h1{font-size:clamp(27px,9vw,40px)}
  .login-branding>p{font-size:10px;line-height:1.45}
  .login-crest-aviation{width:58px;height:66px}
  .login-card{padding:16px;border-radius:17px}
  .login-card-emblems{width:48px}
  .login-personnel-crest,.login-personnel-crest img{width:48px;height:48px}
  .login-card-head{gap:9px;margin-bottom:14px}
  .login-card h2{font-size:19px}
  .login-input{min-height:43px!important}
  .login-submit{min-height:44px}
  .password-wrap .login-input{padding-right:70px}
}

@media (max-width:360px){
  .login-branding>p{display:none}
  .login-stripe{margin-top:9px;width:150px}
  .login-card{padding:13px}
  .login-card h2{font-size:18px}
  .login-card-emblems{width:42px}
  .login-personnel-crest,.login-personnel-crest img{width:42px;height:42px}
  .login-input{min-height:41px!important}
}
