:root{font-family:Inter,'Segoe UI',Arial,sans-serif;color:#233c61;background:#173a64;--blue:#1665dc;--navy:#173e73;--border:#e5ebf3;--soft:#f5f8fc;--shadow:0 15px 45px #163b7016}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.5;cursor:not-allowed}.stage{min-height:100vh;padding:28px;background:radial-gradient(ellipse at 15% 10%,#365c8d 0,transparent 55%),repeating-linear-gradient(132deg,#24517d2a 0 2px,#0d30612a 3px 8px),#153968}.shell{width:min(1530px,100%);min-height:calc(100vh - 56px);background:#f9fbfd;border-radius:28px;box-shadow:0 20px 80px #0b274e77;display:flex;overflow:hidden;margin:auto;border:1px solid #eff3f8}.sidebar{flex:0 0 255px;background:#fff;border-right:1px solid var(--border);padding:20px 14px;display:flex;flex-direction:column;transition:.2s}.brand{display:flex;align-items:center;gap:10px;padding:0 10px 18px}.brand b{font:700 31px Georgia,serif;color:#0e468d;letter-spacing:1px}.brand small{display:block;font-size:10px;color:#557293}.emblem{font-size:34px;color:#b29132}.banner{border:1px solid var(--border);padding:12px;display:flex;gap:9px;border-radius:11px;margin-bottom:15px;background:#f7faff}.banner strong{font-size:12px;display:block}.banner small{font-size:10px;color:#7a8da6;display:block;margin-top:5px}.dot{border-radius:50%;width:9px;height:9px;background:#e2a84a;margin-top:4px;flex-shrink:0}.sectionLabel{font-size:10px;font-weight:800;letter-spacing:.9px;color:#8190a7;margin:17px 12px 7px}.navitem{width:100%;display:flex;align-items:center;gap:12px;text-align:left;background:transparent;color:#375377;border:0;border-radius:9px;padding:9px 11px;font-size:12px;white-space:nowrap}.navitem:hover{background:#edf4ff}.navitem.active{background:#e6f0ff;color:#075ed2;font-weight:700;border-left:3px solid #0968ff}.navico{width:19px;font-size:17px;text-align:center}.sidebarfoot{margin-top:auto;font-size:11px;color:#6782a2;padding:25px 12px 0}.sidebarfoot small{color:#c07f31}.workspace{flex:1;min-width:0}.topbar{height:70px;display:flex;align-items:center;gap:12px;padding:0 22px;background:#fff;border-bottom:1px solid var(--border)}.iconbtn{border:1px solid var(--border);background:#fff;color:#49658b;border-radius:10px;padding:10px 12px}.searchTop{border:1px solid var(--border);background:#f7f9fc;border-radius:10px;display:flex;align-items:center;gap:10px;padding:9px 12px;min-width:200px;max-width:500px;flex:1}.searchTop>span{font-size:22px;color:#2070ed}.searchTop input{border:0;outline:0;background:transparent;min-width:0;width:100%;font-size:12px;color:#26456b}.searchTop kbd{color:#8696ad;font-size:10px;white-space:nowrap}.headright{display:flex;align-items:center;gap:10px;margin-left:auto}.headright select{border:1px solid var(--border);background:white;border-radius:9px;padding:9px;max-width:260px;color:#2d568a;font-size:12px}.demotag{font-size:9px;color:#aa6716;border:1px solid #f0ddb5;background:#fff6e6;padding:7px;border-radius:8px;white-space:nowrap}.avatar{background:#dceafe;border:2px solid #fff;box-shadow:0 0 0 1px #dee8f8;border-radius:50%;height:35px;width:35px;display:grid;place-items:center;font-weight:700;color:#1c5aab;font-size:11px}main{padding:23px;max-height:calc(100vh - 127px);overflow-y:auto;min-height:500px}.heading{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:20px}.heading h1{margin:0;font-size:23px;color:#1c4e99}.sub{font-size:12px;color:#8b9bb0;margin-top:7px}.btn{border:1px solid #dce6f4;background:white;color:#315b8e;padding:10px 15px;border-radius:9px;font-size:12px;font-weight:650}.btn.primary{background:linear-gradient(135deg,#2b85ff,#135bc4);border-color:#2577e7;color:#fff;box-shadow:0 6px 13px #2775d02a}.btn.ghost{background:#f9fbfe}.btn.danger{color:#b05a27}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}.stat,.panel{background:#fff;border:1px solid var(--border);border-radius:14px;box-shadow:0 3px 10px #24466d08}.stat{padding:19px;display:flex;align-items:center;gap:14px;min-height:100px}.stat .symbol{width:45px;height:45px;display:grid;place-items:center;background:#eaf3ff;border-radius:12px;font-size:24px;color:#226ce3}.stat strong{display:block;font-size:24px;color:#1459bf}.stat small{display:block;font-size:12px;color:#6d809d;margin-top:4px}.twocol{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-bottom:16px}.panel{padding:17px;min-width:0}.panel h3{font-size:15px;color:#0961d3;margin:0 0 17px}.tablewrap{overflow:auto}.table{width:100%;border-collapse:collapse;min-width:630px}.table th{color:#91a0b4;font-size:11px;font-weight:600;text-align:left;border-bottom:1px solid #e8eef6;padding:10px 8px;white-space:nowrap}.table td{color:#496384;font-size:12px;border-bottom:1px solid #eef2f8;padding:11px 8px;max-width:240px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.table tr:last-child td{border-bottom:none}.pill{display:inline-block;color:#1668c9;background:#e9f3ff;border-radius:20px;padding:6px 10px;font-size:10px;font-weight:650}.pill.green{background:#e1f7ea;color:#218457}.pill.gold{background:#fff2d8;color:#a77216}.rowactions{display:flex;gap:4px}.tinybtn{border:1px solid var(--border);background:#f8fbff;border-radius:7px;padding:6px 8px;color:#3572c5;font-size:11px}.bargraph{height:240px;display:flex;align-items:flex-end;justify-content:space-around;padding:18px 5px 25px;border-bottom:1px solid #e6edf6;background:repeating-linear-gradient(to top,#e6edf666 0 1px,transparent 1px 48px);gap:8px}.bar{width:6.5%;position:relative;border-radius:6px 6px 0 0;background:linear-gradient(#318dff,#1269e3);min-height:10px}.bar:after{content:attr(data-month);position:absolute;bottom:-20px;left:50%;transform:translateX(-50%);font-size:10px;color:#6f85a3}.note{background:#eff6ff;border:1px solid #d5e6fa;padding:14px;border-radius:11px;color:#456d9e;font-size:12px;margin-bottom:16px;line-height:1.6}.warning{background:#fff7e9;border-color:#f2e1c4;color:#94631f}.filterrow{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:16px}.field{border:1px solid #dce6f2;border-radius:10px;padding:10px 12px;color:#2a527e;background:#fff;font-size:12px;min-width:170px}.overlay{position:fixed;inset:0;z-index:20;background:#13366277;display:flex;align-items:center;justify-content:center;padding:20px}.overlay[hidden],.toast[hidden]{display:none}.dialog{width:min(790px,100%);max-height:90vh;overflow:auto;background:white;border-radius:18px;padding:24px;box-shadow:0 22px 80px #163b7088}.dialog header{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border);padding-bottom:15px}.dialog h2{margin:0;color:#1e5ba7;font-size:20px}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:15px;padding-top:20px}.formgrid label{font-size:12px;color:#4d6686;display:flex;flex-direction:column;gap:7px;font-weight:600}.formgrid input,.formgrid select,.formgrid textarea{border:1px solid #d9e4f2;padding:11px;border-radius:8px;color:#274b73;outline-color:#2b80eb;background:#fafcff;width:100%}.formgrid textarea{min-height:80px}.dialog footer{display:flex;justify-content:flex-end;gap:10px;padding-top:22px}.assistant{position:fixed;bottom:25px;right:32px;display:flex;align-items:center;gap:12px;border:1px solid #d1ae5b;border-radius:16px;background:linear-gradient(120deg,#134c97,#062e66);color:#fff;box-shadow:0 10px 30px #153b6770;padding:13px 22px;font-size:23px;z-index:3;cursor:pointer}.assistant span{display:flex;flex-direction:column;font-size:13px}.assistant small{font-size:10px;color:#e9eff8;margin-top:4px}.toast{position:fixed;right:25px;top:30px;background:#fff;border:1px solid #bfd4ef;color:#275b9a;box-shadow:var(--shadow);z-index:25;padding:16px 22px;border-radius:12px;font-size:13px}.collapsed .sidebar{flex-basis:75px}.collapsed .brand>div:last-child,.collapsed .banner,.collapsed .sectionLabel,.collapsed .navitem .navtext,.collapsed .sidebarfoot{display:none}.collapsed .navitem{justify-content:center}.collapsed .brand{padding:10px 0 25px;justify-content:center}.collapsed .emblem{font-size:25px}.empty{color:#8a9fb9;font-size:13px;padding:24px;text-align:center}.link{color:#0a69d9;font-weight:700}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.servicecard{padding:20px;background:#fff;border-radius:13px;border:1px solid var(--border)}.servicecard b{color:#1764cb}.servicecard p{font-size:12px;color:#6e87a5}.servicecard strong{font-size:20px;color:#194d8c}@media(max-width:1100px){.stats{grid-template-columns:repeat(2,1fr)}.twocol{grid-template-columns:1fr}.headright .demotag{display:none}}@media(max-width:700px){.stage{padding:0}.shell{border-radius:0;min-height:100vh}.sidebar{flex-basis:67px;padding:14px 5px}.brand>div:last-child,.banner,.sectionLabel,.navtext,.sidebarfoot{display:none}.navitem{justify-content:center}.topbar{padding:0 9px}.headright select{max-width:130px}.avatar{display:none}main{padding:15px;max-height:calc(100vh - 70px)}.stats{gap:8px}.stat{padding:12px;min-height:75px}.stat strong{font-size:18px}.stat .symbol{width:32px;height:32px;font-size:18px}.formgrid{grid-template-columns:1fr}.cards{grid-template-columns:1fr}.assistant{bottom:12px;right:12px;padding:10px 14px}.assistant small{display:none}}

.loginScreen{position:fixed;inset:0;background:radial-gradient(circle at top left,#3b67a2,#143a70);display:grid;place-items:center;z-index:99}.loginScreen[hidden]{display:none}.loginCard{width:min(420px,92%);padding:36px;background:white;border-radius:24px;box-shadow:0 24px 65px #12345a66;display:flex;flex-direction:column;gap:15px}.loginCard h2{color:#1a4e99;margin:0}.loginCard p,.loginCard small{color:#7289a5}.loginLogo{font-size:35px;color:#145cbc;font-weight:800}.loginCard label{display:flex;flex-direction:column;gap:6px;font-size:12px;color:#3d5d85}.loginCard input{border:1px solid #d4e2f3;border-radius:9px;padding:12px;color:#234a7a}.errorText{color:#ba563b;font-size:12px}.segmented{display:flex;gap:2px;background:#edf4fd;border-radius:9px;padding:3px}.segmented .btn{border:0}.segmented .selected{background:#1968d8;color:#fff}.datefilter{font-size:11px;color:#617f9e;display:flex;align-items:center;gap:6px}.datefilter .field{min-width:138px}.cardtop{display:flex;justify-content:space-between;align-items:center}.auditdetail{border-bottom:1px solid #e4eaf4;padding:11px 0;font-size:12px;color:#426589}.auditdetail summary{cursor:pointer}.auditdetail pre{white-space:pre-wrap;overflow:auto;background:#eff5fc;padding:12px;border-radius:8px;color:#214876}.matrix th,.matrix td{text-align:center;min-width:70px}.matrix td:first-child,.matrix th:first-child{text-align:left;min-width:180px}.matrix input{accent-color:#1769d5;width:16px;height:16px}.servicecard h3{font-size:15px;color:#175bb2}.servicecard p{margin:8px 0}.filterrow{margin-bottom:14px}.topbar #username{max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
/* V4: ventanas flotantes, sombras y animación discreta de iconos */
.shell{box-shadow:0 28px 90px #1139668c;animation:windowArrive .45s ease both}.panel,.stat,.servicecard,.dialog{box-shadow:0 9px 30px #28558c12;transition:box-shadow .22s,transform .22s}.panel:hover,.servicecard:hover,.stat:hover{box-shadow:0 16px 38px #28558c21;transform:translateY(-2px)}.dialog{box-shadow:0 30px 105px #183d72a3;animation:windowArrive .23s ease both}.navico,.iconbtn,.stat .symbol{display:inline-block;transition:transform .28s ease,color .2s}.navitem:hover .navico{transform:translateY(-2px) scale(1.17) rotate(-5deg);color:#136ae5}.iconbtn:hover{transform:translateY(-2px);box-shadow:0 8px 20px #2056a02c}.assistant:hover{transform:translateY(-3px);box-shadow:0 17px 34px #153b6782}.assistant{transition:transform .2s,box-shadow .2s}.backupControls{display:flex;gap:12px;align-items:center;margin:18px 0}.uploadbtn{display:inline-flex;align-items:center;cursor:pointer}.appFooter{display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap;padding:10px 25px;background:#fff;border-top:1px solid #e8eef6;color:#7890aa;font-size:11px}.creditSpace{letter-spacing:1px;color:#b4c1d1}main{max-height:calc(100vh - 164px)}@keyframes windowArrive{from{opacity:.5;transform:translateY(9px) scale(.993)}to{opacity:1;transform:translateY(0) scale(1)}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}

/* V4.1 — mismo logotipo en el acceso, menú flotante con scroll independiente */
.loginBrand{justify-content:center;gap:12px;padding:0 0 7px;margin:0 auto;width:100%;}
.loginBrand .emblem{font-size:41px;line-height:1;color:#ba9230;filter:drop-shadow(0 3px 3px #1a559018)}
.loginBrand b{font-size:41px;line-height:1.03}.loginBrand small{font-size:13px;line-height:1.4;margin-top:3px}
.loginCard{padding:34px 30px 30px;box-shadow:0 26px 80px #133a6870}
/* La ventana principal queda quieta: sólo los paneles de navegación y contenido se desplazan. */
.stage{height:100dvh;min-height:0;overflow:hidden;display:flex;align-items:stretch;justify-content:center;}
.shell{height:calc(100dvh - 56px);min-height:0;overflow:hidden;}
.sidebar{flex:0 0 255px;min-height:0;height:auto;margin:12px 0 12px 12px;border:1px solid #e0e9f5;border-radius:19px;background:#fff;box-shadow:0 12px 32px #153c6929,0 2px 8px #17447b12;overflow:hidden;padding:17px 10px 12px;}
.sidebar .brand{flex-shrink:0}.sidebar .banner{flex-shrink:0;margin:0 2px 9px}
.sidebar nav{min-height:0;flex:1 1 auto;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#a6c7ed transparent;padding:3px 4px 14px 0;}
.sidebar nav::-webkit-scrollbar{width:7px}.sidebar nav::-webkit-scrollbar-track{background:transparent}.sidebar nav::-webkit-scrollbar-thumb{background:#b7cfee;border-radius:15px}.sidebar nav::-webkit-scrollbar-thumb:hover{background:#76a4de}
.sidebarfoot{margin-top:0;flex-shrink:0;padding:13px 9px 3px;border-top:1px solid #e9eef5;background:white;}
.workspace{min-height:0;display:flex;flex-direction:column;overflow:hidden}.topbar{flex-shrink:0}main{flex:1 1 auto;min-height:0;max-height:none;overflow-y:auto;overscroll-behavior:contain}.appFooter{flex-shrink:0}
.collapsed .sidebar{flex-basis:75px}.collapsed .sidebar nav{padding-right:0}
@media(max-width:700px){.stage{padding:0;height:100dvh}.shell{height:100dvh;min-height:0}.sidebar{flex-basis:65px;margin:8px 0 8px 7px;padding:10px 3px;border-radius:14px}.sidebar nav{padding:2px 0 10px}.sidebar .brand{padding:10px 0 14px;justify-content:center}.sidebar .emblem{font-size:24px}.loginBrand .emblem{font-size:41px}.loginBrand>div:last-child{display:block}.loginBrand{justify-content:center}.loginBrand b{font-size:37px}.loginBrand small{display:block}.appFooter{padding:8px 12px}main{max-height:none}}

/* V4.2: ventanas de mensajes del sistema, sin confirmaciones nativas del navegador */
.messageOverlay{position:fixed;inset:0;z-index:120;display:flex;align-items:center;justify-content:center;padding:18px;background:rgba(22,54,94,.38);backdrop-filter:blur(5px)}
.messageOverlay[hidden]{display:none!important}
.messageBox{width:min(430px,96vw);background:#fff;border:1px solid #dbe7f8;border-radius:22px;box-shadow:0 30px 90px #1a42665c,0 10px 25px #2c5c9029;padding:30px 30px 25px;text-align:center;animation:windowArrive .23s ease both;color:#28466a}
.messageSymbol{display:grid;place-items:center;margin:0 auto 12px;width:56px;height:56px;border-radius:18px;background:#e8f2ff;color:#2169c9;font-weight:800;font-size:28px}
.messageSymbol[data-kind=error]{background:#fff0ed;color:#b94538}.messageSymbol[data-kind=success]{background:#eaf8ef;color:#26895b}
.messageBox h2{font-size:19px;color:#164e9d;margin:7px 0 10px}.messageBox p{font-size:13px;line-height:1.65;white-space:pre-wrap;overflow-wrap:anywhere;margin:0 0 23px;color:#607c9f}
.messageActions{display:flex;justify-content:center;gap:12px}.messageActions .btn{min-width:115px}
.messageActions [hidden]{display:none}
@media(prefers-reduced-motion:reduce){.messageBox{animation:none}}

.v6document{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:13px;border-bottom:1px solid #e2e8f0}.v6document .sub{font-size:11px}.formgrid input[type=file]{padding:10px;background:#f8fafc;border:1px solid #cbd5e1;border-radius:10px}

/* SIJA V7.1: visor flotante de exportación, independiente de los formularios */
.exportPreviewOverlay{position:fixed;inset:0;z-index:180;background:#153e706c;backdrop-filter:blur(5px);display:grid;place-items:center;padding:22px}
.exportPreviewDialog{display:flex;flex-direction:column;width:min(1100px,97vw);height:min(790px,90vh);background:#fff;border:1px solid #e2eaf7;border-radius:19px;box-shadow:0 35px 100px #173d7288;overflow:hidden;animation:windowArrive .22s ease both}
.exportPreviewHeader{display:flex;align-items:center;justify-content:space-between;padding:20px 23px;border-bottom:1px solid #e4eaf3}
.exportPreviewHeader h2{margin:0;color:#155bb9;font-size:20px}.exportPreviewHeader p{font-size:12px;color:#7089a8;margin:6px 0 0}
.exportPreviewContent{padding:16px;background:#f1f5fb;min-height:0;flex:1;overflow:auto}
.exportPdfFrame{display:block;width:100%;height:100%;min-height:360px;border:1px solid #e3eaf5;background:white;border-radius:10px}
.exportPreviewActions{padding:14px 20px;border-top:1px solid #e4eaf3;display:flex;gap:15px;justify-content:space-between;align-items:center;flex-wrap:wrap;background:white}
.exportPreviewActions span,.exportSheet p{font-size:11px;color:#7387a4}.exportPreviewActions>div{display:flex;gap:10px}
.exportSheet{background:white;border-radius:10px;border:1px solid #dfe9f5;padding:12px}.exportSheetTitle{color:#155bb9;font-weight:700;margin:5px 4px 12px}
.exportSheetScroll{max-height:57vh;overflow:auto}.exportSheet table{border-collapse:collapse;width:100%;font-size:12px}.exportSheet td,.exportSheet th{border:1px solid #dae5f3;padding:9px 12px;white-space:nowrap;text-align:left;color:#365473}.exportSheet thead th{background:#e8f1ff;color:#155bb9;position:sticky;top:0}.exportSheet tbody th{background:#f4f7fc;color:#8298b4}
@media(max-width:650px){.exportPreviewOverlay{padding:5px}.exportPreviewDialog{height:96vh;width:99vw}.exportPreviewActions{justify-content:flex-end}}
/* V7.2 - sólo componentes nuevos */
.v72pre{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.7;background:#f1f5f9;color:#243b53;border-radius:14px;padding:22px;max-height:530px;overflow:auto;font-family:inherit}
.v72cover{position:fixed;inset:0;background:rgba(27,54,93,.5);z-index:99999;display:grid;place-items:center;padding:20px}
.v72modal{width:min(940px,96vw);height:min(92vh,860px);display:flex;flex-direction:column;background:#fff;box-shadow:0 25px 75px rgba(27,54,93,.34);border-radius:20px;overflow:hidden}
.v72modal header,.v72modal footer{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;color:#1b365d}
.v72modal iframe{border:0;flex:1;width:100%;background:#f1f5f9}

/* V7.2.1: misma identidad gráfica en acceso, menú y favicon */
.brand .sijaBrandImage{display:block;width:144px;height:auto;max-width:100%;object-fit:contain}.loginBrand .sijaBrandImage{width:224px;max-width:100%}.collapsed .sidebar .sijaBrandImage{width:44px;max-width:none;object-fit:cover;object-position:left;clip-path:inset(0 calc(100% - 44px) 0 0)}@media(max-width:700px){.sidebar .sijaBrandImage{width:45px;max-width:none;clip-path:inset(0 calc(100% - 45px) 0 0)}.loginBrand .sijaBrandImage{width:210px;clip-path:none}}

/* JAZAIS V7.3.1: identidad oficial; solo ajustes visuales */
.sidebar .brand{padding:9px 6px 15px;justify-content:center;flex-shrink:0}
.sidebar .brand .sijaBrandImage{width:210px;max-width:100%;height:auto;object-fit:contain}
.loginBrand .sijaBrandImage{width:min(340px,100%);max-width:100%;height:auto;object-fit:contain}
.loginBrand{justify-content:center;padding:8px 0 16px}
.collapsed .sidebar .brand .sijaBrandImage{width:210px;max-width:none;clip-path:inset(0 168px 0 0)}
@media(max-width:700px){.sidebar .brand .sijaBrandImage{width:198px;max-width:none;clip-path:inset(0 155px 0 0)}.loginBrand .sijaBrandImage{width:min(300px,100%);clip-path:none}}

/* JAZAIS V7.4 - Fotografías de empleados */
.employee-photo-panel{grid-column:1/-1;background:#f3f7fc;border:1px solid #dce6f3;border-radius:16px;padding:15px;display:grid;gap:10px}
.employee-photo-box{min-height:106px;display:flex;align-items:center;justify-content:center;border-radius:12px;background:#fff;color:#536782}
.employee-photo{width:110px;height:110px;border-radius:50%;object-fit:cover;box-shadow:0 6px 18px #1b365d25}
.employee-photo-upload{display:grid;gap:7px;color:#1b365d}
.employee-photo-upload input{max-width:100%}

/* JAZAIS V7.4.1: foto solamente si el empleado tiene una registrada */
.employee-card-photo[hidden]{display:none!important}
.employee-card-photo{width:100%;height:185px;overflow:hidden;border-radius:12px;margin-bottom:12px;background:#f1f5f9}
.employee-card-photo-img{width:100%;height:100%;object-fit:cover;object-position:center 25%;display:block}

/* V7.4.3: retratos compactos 3:4 tipo pasaporte. Sin alterar otras tarjetas. */
.employee-photo-panel{gap:9px}
.employee-photo-box{min-height:0;max-width:100%;padding:12px;background:#fff}
.employee-photo{width:96px;height:128px;max-width:100%;border-radius:9px;object-fit:cover;object-position:center 30%;box-shadow:0 5px 15px #1b365d20}
.employee-card-photo{width:96px;height:128px;max-width:100%;margin:0 auto 12px;background:transparent;border-radius:9px;box-shadow:0 5px 15px #1b365d20}
.employee-card-photo-img{width:100%;height:100%;object-fit:cover;object-position:center 30%;border-radius:9px}

/* V7.5.1 - contraste de selectores; no afecta datos ni formularios */
.formgrid select,.dialog select,.field,select{color:#1B365D!important;background-color:#FFFFFF!important;-webkit-text-fill-color:#1B365D!important;color-scheme:light;}
select option,select optgroup{color:#1B365D!important;background:#FFFFFF!important;}
select:disabled{color:#64748B!important;-webkit-text-fill-color:#64748B!important;background-color:#F1F5F9!important;}
/* JAZAIS V7.5.2 - Ayuda contextual independiente */
#jazais-help-button,#jazais-form-help{border:1px solid #bfd6f5;border-radius:12px;padding:10px 14px;background:#eff6ff;color:#1858ad;font-weight:700;cursor:pointer;box-shadow:0 4px 12px #1b365d16;white-space:nowrap}#jazais-help-button{margin-left:8px}#jazais-help-button:hover,#jazais-form-help:hover{background:#dbeafe;transform:translateY(-1px)}#jazais-form-help{margin:8px 0 8px 15px;font-size:13px}.jhelp-overlay[hidden]{display:none!important}.jhelp-overlay{position:fixed;inset:0;z-index:40000;display:grid;place-items:center;background:#17345873;padding:22px}.jhelp-panel{background:#fff;color:#284765;border:1px solid #d6e4f5;border-radius:20px;box-shadow:0 24px 80px #1734584d;width:min(730px,96vw);max-height:90vh;display:flex;flex-direction:column;overflow:hidden;animation:jhelp-show .2s ease-out}.jhelp-panel header,.jhelp-panel footer{padding:20px 24px;display:flex;align-items:center;justify-content:space-between;gap:15px}.jhelp-panel header{border-bottom:1px solid #e4ecf7}.jhelp-panel footer{border-top:1px solid #e4ecf7}.jhelp-panel header small{color:#7188a5;font-size:11px;letter-spacing:1px}.jhelp-panel h2{color:#1b4e91;font-size:22px;margin:5px 0}.jhelp-panel h3{color:#1b5bb5;margin:18px 0 7px;font-size:16px}.jhelp-body{padding:4px 24px 22px;overflow-y:auto;line-height:1.7}.jhelp-body p{margin:6px 0 14px}.jhelp-fields{display:grid;gap:9px}.jhelp-fields>div{display:grid;gap:2px;padding:10px 12px;border:1px solid #e2ebf6;border-radius:10px;background:#f8fbff}.jhelp-fields strong{color:#1b4e91}.jhelp-fields span{font-size:13px}.jhelp-note{padding:10px 12px;background:#edf5ff;border-radius:10px;color:#506d8f}.jhelp-close{border:1px solid #d5e2f2;border-radius:11px;background:#fff;color:#1b4e91;font-size:20px;padding:5px 12px;cursor:pointer}.jhelp-done{background:#2563eb;color:#fff;font-size:14px;padding:10px 22px;border:none}@keyframes jhelp-show{from{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}

/* JAZAIS 7.6.1 - presentación visual de investigaciones */
.j76-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:14px 0 18px}.j76-metric{border:1px solid #e2e8f0;background:#fff;border-radius:16px;padding:19px;box-shadow:0 10px 26px #1b365d0d;display:flex;flex-direction:column;gap:6px}.j76-metric span,.j76-metric small{color:#6682a6;font-size:12px}.j76-metric strong{font-size:27px;color:#1956aa}.j76-metric strong.j76-txt{font-size:17px}.j76-page{padding:23px!important}.j76-onboarding{display:flex;gap:15px;align-items:flex-start;background:#eef5ff;border:1px solid #d5e6ff;border-radius:14px;padding:16px;margin-bottom:20px;color:#28538b}.j76-onboarding-icon{display:grid;place-items:center;flex:none;width:35px;height:35px;background:#d8e8ff;border-radius:10px;font-size:19px;font-weight:700}.j76-onboarding strong{color:#1b4c94}.j76-onboarding p{margin:6px 0 0;font-size:13px;line-height:1.7}.j76-tools{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:18px}.j76-tools h3{margin:0;color:#194c90}.j76-tools p{margin:6px 0 0}.j76-actions{display:flex;gap:10px;flex-wrap:wrap}.j76-search{min-width:265px;max-width:100%;height:42px;border:1px solid #d2def0;background:white;border-radius:10px;padding:10px 13px;color:#1b365d}.j76-cardgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:15px}.j76-person-card{padding:18px;border:1px solid #dbe5f4;border-radius:16px;background:#fff;box-shadow:0 8px 20px #1b365d0c;transition:transform .2s,box-shadow .2s}.j76-person-card:hover{transform:translateY(-2px);box-shadow:0 14px 26px #1b365d18}.j76-person-top,.j76-cardline{display:flex;justify-content:space-between;gap:8px;align-items:center}.j76-tag{border-radius:100px;background:#e7f0ff;color:#1765bb;padding:5px 10px;font-size:11px}.j76-tenant{font-size:11px;color:#657d99}.j76-person-card h3{color:#1c4d8d;font-size:18px;margin:18px 0}.j76-cardline{border-top:1px solid #edf2f9;padding:12px 0;font-size:13px;color:#7187a4}.j76-cardline strong{color:#294b77;text-align:right}.j76-cardbuttons{padding-top:12px}.j76-zero,.j76-zero-inline{text-align:center;padding:24px;color:#6b80a0;background:#f5f8fd;border-radius:12px}.j76-section-actions{display:flex;gap:10px;margin-bottom:14px}@media(max-width:800px){.j76-metrics{grid-template-columns:1fr}.j76-tools{flex-direction:column;align-items:stretch}.j76-actions{flex-direction:column}.j76-search{width:100%;min-width:0}}

/* JAZAIS V7.6.2: ayuda detallada por módulo y campo */
.jhelp-panel{width:min(860px,96vw)}.jhelp-topic{background:#f1f6fd;border:1px solid #e1eafa;border-radius:13px;padding:12px 16px;margin:10px 0 16px}.jhelp-topic strong{color:#1c569a}.jhelp-topic p{margin:4px 0}.jhelp-steps{padding-left:23px;display:grid;gap:10px}.jhelp-steps li{padding:7px 9px;background:#f7faff;border:1px solid #e8eef9;border-radius:9px}.jhelp-fields>div{grid-template-columns:minmax(140px,32%) 1fr;align-items:start;gap:12px}.jhelp-body li{color:#385878}@media(max-width:650px){.jhelp-fields>div{grid-template-columns:1fr}}

/* JAZAIS - Vista integral */
.int-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px;margin-top:18px}.int-card,.int-stat,.int-step{border:1px solid #dbe5f2;background:#fff;border-radius:16px;padding:17px;box-shadow:0 8px 28px #22446610;color:#1b365d}.int-card h3{margin:10px 0}.int-card small,.int-card p{color:#647b96}.int-top{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.int-top input{width:min(360px,100%);border:1px solid #c9d8ec;padding:11px;border-radius:9px;color:#1b365d;background:#fff}.int-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:13px;margin-bottom:15px}.int-stat span{display:block;color:#607c9e}.int-stat strong{font-size:24px;color:#1760c4}.int-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;margin-top:16px}.int-step{display:flex;flex-direction:column;gap:12px}.int-step span{color:#526c8a}.int-disabled{background:#f1f5f9;padding:8px 12px;border-radius:9px;color:#7d91aa}.int-top h3{margin:0} 

/* Gestor de agenda y cuentas por cobrar */
.op-search{margin:12px 0 18px;padding:12px 14px;border:1px solid #d4e1f4;border-radius:12px;background:#fff;color:#1b365d;width:min(500px,100%)}

/* Portal JAZAIS · Compartir enlace temporal */
.ps-share-overlay{position:fixed;inset:0;background:rgba(27,54,93,.38);z-index:15000;display:flex;align-items:center;justify-content:center;padding:20px}.ps-share-box{background:#fff;color:#1b365d;width:min(640px,100%);max-height:92vh;overflow:auto;border:1px solid #d8e4f2;border-radius:20px;padding:24px;box-shadow:0 24px 72px rgba(24,54,99,.25)}.ps-share-title{display:flex;align-items:center;justify-content:space-between;gap:12px}.ps-share-title h2{margin:5px 0;font-size:23px;color:#22569b}.ps-share-title small{color:#718bad}.ps-share-box p{line-height:1.55}.ps-share-box label{display:block;margin:12px 0 6px;font-weight:600}.ps-share-box input{display:block;box-sizing:border-box;width:100%;border:1px solid #b9cce6;border-radius:9px;background:#fff;color:#163b6a;padding:12px;font-size:14px}.ps-share-actions,.ps-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.ps-share-actions{margin:16px 0}.ps-share-box #ps-share-feedback{color:#5b708d} .ps-actions .tinybtn{white-space:nowrap}

/* Ventana segura de credenciales */
.pa-modal-backdrop{position:fixed;inset:0;background:rgba(30,55,90,.58);display:flex;align-items:center;justify-content:center;z-index:20000;padding:16px}.pa-modal{background:#fff;border-radius:20px;padding:25px;width:min(650px,100%);max-height:90vh;overflow-y:auto;box-shadow:0 20px 70px #223a6655;color:#1b365d}.pa-modal h2{color:#1853a2;margin:0 0 16px}.pa-credential label{display:block;font-weight:650;margin:14px 0 6px}.pa-inline{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:6px 0}.pa-inline input{flex:1;min-width:160px;background:#f8fbff;color:#1b365d;border:1px solid #c9d8ec;border-radius:9px;padding:10px}.pa-inline button{white-space:nowrap}

/* Menú plegable JAZAIS: sólo presentación, sin modificar permisos o rutas. */
#nav .navgrupo{margin:3px 0 7px}
#nav .navgrupo-boton{width:100%;display:flex;align-items:center;justify-content:space-between;gap:7px;text-align:left;border:1px solid transparent;border-radius:10px;background:transparent;color:#244f86;padding:11px 10px;font-weight:800;letter-spacing:.38px;font-size:10.5px;line-height:1.4;cursor:pointer}
#nav .navgrupo-boton:hover,#nav .navgrupo-boton:focus-visible{background:#eff5ff;border-color:#d8e6f7;outline:none}
#nav .navgrupo.abierto>.navgrupo-boton{background:#e9f2ff;border-color:#d6e6fa;color:#1557ad}
#nav .navgrupo-flecha{font-size:17px;font-weight:600;line-height:1;transition:transform .16s;flex-shrink:0}
#nav .navgrupo.abierto .navgrupo-flecha{transform:rotate(180deg)}
#nav .navgrupo-contenido{padding:3px 0 5px 7px;margin-left:6px;border-left:2px solid #e5edf8}
#nav .navgrupo-contenido[hidden]{display:none!important}
#nav .navgrupo-contenido .navitem{white-space:normal;min-height:36px}
.collapsed #nav .navgrupo-titulo{display:none}
.collapsed #nav .navgrupo-boton{justify-content:center;padding:12px 0}
.collapsed #nav .navgrupo-flecha{transform:rotate(-90deg)}
.collapsed #nav .navgrupo.abierto .navgrupo-flecha{transform:rotate(180deg)}
.collapsed #nav .navgrupo-contenido{padding:3px 0;margin-left:0;border:0}
@media(max-width:700px){#nav .navgrupo-titulo{display:none}#nav .navgrupo-boton{justify-content:center;padding:11px 0}#nav .navgrupo-contenido{margin:0;padding:3px 0;border:0}}
