*{box-sizing:border-box}body{margin:0;font-family:Segoe UI,Arial,sans-serif;color:#18334c;background:#f4f7fb;display:flex;min-height:100vh}aside{width:235px;background:#103c68;color:#fff;min-height:100vh;padding:26px 18px}.logo{font-size:27px;font-weight:800;letter-spacing:2px;padding-bottom:30px}nav a{display:block;color:#fff;text-decoration:none;padding:13px 10px;border-radius:8px}nav a:hover{background:#235b8d}main{flex:1;padding:24px 34px;min-width:0}header{display:flex;justify-content:space-between;padding:12px 0 24px;border-bottom:1px solid #dce5ef;font-weight:bold}header span{font-weight:normal;color:#7e8fa2}h1{font-size:25px;margin:30px 0 20px}.panel{background:#fff;padding:24px;border:1px solid #e0e8f0;border-radius:12px;box-shadow:0 3px 12px #1232 0 0}.cols{display:grid;grid-template-columns:minmax(0,2fr) minmax(260px,1fr);gap:18px}.cols .panel{overflow:auto}input,select,button{font:inherit;border-radius:7px;padding:10px;border:1px solid #d3dce6;margin:4px 4px 7px 0}button{background:#145d9b;color:#fff;border:0;cursor:pointer}.secondary{background:#eef3f9;color:#16466b}table{border-collapse:collapse;width:100%;font-size:13px}th,td{text-align:left;border-bottom:1px solid #e6edf4;padding:9px}form input{max-width:100%}.notice{background:#e5f0fb;padding:12px;margin:12px 0;border-radius:7px}.login{display:grid;place-items:center}.loginbox{background:white;padding:36px;border-radius:16px;width:min(410px,92vw);box-shadow:0 14px 38px #153c6521;display:grid}.loginbox h1{text-align:center;color:#10558f;letter-spacing:2px}.loginbox p{text-align:center}.loginbox input{width:100%;display:block;margin:7px 0 15px}@media(max-width:800px){body{display:block}aside{min-height:auto;width:auto}.cols{grid-template-columns:1fr}}


/* ===== Login moderno Dekapp ===== */
body.login-page{margin:0;min-height:100vh;display:flex;align-items:center;justify-content:center;background:#e9f2f8;padding:24px;color:#18334c;font-family:Segoe UI,Arial,sans-serif}
.login-shell{width:min(900px,96vw);min-height:430px;background:#fff;border-radius:28px;overflow:hidden;display:grid;grid-template-columns:1.1fr 0.9fr;box-shadow:0 24px 70px rgba(16,60,104,.18)}
.login-brand-panel{background:#f7fafc;padding:42px 40px 36px;display:flex;flex-direction:column;justify-content:space-between;gap:22px}
.brand-card{background:#fff;border:1px solid #dce8f1;border-radius:24px;min-height:128px;display:flex;align-items:center;justify-content:center;padding:18px 24px;box-shadow:0 10px 26px rgba(16,60,104,.07)}
.brand-logo-main{max-width:100%;height:auto;max-height:72px;object-fit:contain}
.brand-copy h1{margin:0;color:#145da0;font-size:29px;letter-spacing:.4px;font-weight:800}
.brand-copy p{margin:8px 0 0;color:#57718c;font-size:17px;font-weight:600}
.brand-footer-card{background:#fff;border:1px solid #dce8f1;border-radius:18px;padding:22px 24px;box-shadow:0 8px 20px rgba(16,60,104,.05)}
.brand-footer-title{font-size:24px;font-weight:800;color:#2a72b7;letter-spacing:.2px}
.brand-footer-sub{margin-top:6px;color:#6b85a0;font-size:14px}
.login-form-panel{background:linear-gradient(180deg,#1767b0 0%,#2ea4dc 100%);padding:44px 42px 36px;display:flex;align-items:center}
.login-form-modern{width:100%;display:flex;flex-direction:column;gap:12px;color:#fff}
.login-form-modern h2{margin:0 0 6px;font-size:26px;font-weight:800}
.login-form-modern label{display:flex;flex-direction:column;gap:8px;font-size:16px;font-weight:600}
.login-form-modern input{width:100%;padding:13px 14px;border-radius:12px;border:1px solid rgba(255,255,255,.55);background:#eef4fb;color:#17385c;font-size:15px;outline:none;box-shadow:inset 0 1px 0 rgba(255,255,255,.65)}
.login-form-modern input:focus{border-color:#8fdcff;box-shadow:0 0 0 3px rgba(193,236,255,.35)}
.login-form-modern button{margin-top:4px;padding:13px 16px;border:0;border-radius:14px;background:linear-gradient(90deg,#1f86d0 0%,#41b7ea 100%);color:#fff;font-size:18px;font-weight:800;cursor:pointer;box-shadow:0 12px 24px rgba(8,74,132,.25)}
.login-form-modern button:hover{filter:brightness(1.03)}
.login-bottom-caption{margin-top:12px;text-align:center;font-size:14px;font-weight:600;opacity:.96}
.login-form-modern .notice{background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.32);color:#fff;padding:11px 12px;border-radius:12px;margin:0 0 4px}
@media(max-width:900px){.login-shell{grid-template-columns:1fr}.login-brand-panel{padding:28px 24px 18px}.login-form-panel{padding:28px 24px}.brand-card{min-height:110px}.brand-logo-main{max-height:60px}}


/* Dekapp login v0.8.5 | Diseño corporativo independiente */
body.dekapp-login{display:flex;align-items:center;justify-content:center;min-height:100vh;margin:0;padding:32px;background:linear-gradient(135deg,#e7f3ff 0%,#d8e8ff 50%,#eff7ff 100%);font-family:"Segoe UI",Arial,sans-serif;color:#092e65}
.dk-card{width:min(1240px,100%);min-height:650px;background:#fff;border-radius:32px;overflow:hidden;box-shadow:0 32px 70px rgba(8,63,129,.17)}
.dk-topbar{height:112px;border-bottom:1px solid #b6cce9;display:flex;align-items:center;justify-content:space-between;padding:18px 55px}
.dk-logo{width:min(288px,53vw);height:auto;max-height:88px;object-fit:contain}
.dk-top-current{font-weight:750;font-size:15px;color:#083a80;border-bottom:3px solid #0877db;padding:8px 2px}
.dk-login-content{display:grid;grid-template-columns:45% 55%;min-height:538px;align-items:center}
.dk-login-form-area{width:100%;max-width:510px;padding:45px 10px 50px 76px}
.dk-login-form-area h1{color:#082c61;font-size:39px;margin:0 0 10px;font-weight:750;letter-spacing:-.8px}
.dk-subtitle{font-size:17px;line-height:1.5;color:#5f799d;max-width:350px;margin:0 0 33px}
.dk-login-form{display:flex;flex-direction:column;gap:10px;max-width:400px}
.dk-login-form>label{font-size:13px;color:#355b85;font-weight:650}
.dk-field{display:flex;gap:12px;align-items:center;height:51px;border:1.5px solid #c4d8f4;border-radius:28px;background:#f2f7fd;padding:0 17px;margin-bottom:9px}
.dk-field>span{font-size:14px;color:#55749a}
.dk-field input{border:0;outline:0;box-shadow:none;min-width:0;width:100%;background:transparent;color:#092e65;padding:0;margin:0;font-size:15px;border-radius:0}
.dk-field:focus-within{border-color:#167cdb;box-shadow:0 0 0 3px #278fe522}
.dk-submit{border:0;border-radius:28px;margin:15px 0 0;width:100%;padding:14px 16px;background:linear-gradient(100deg,#004dba,#157ae0);color:white;font-weight:700;font-size:17px;cursor:pointer}
.dk-submit:hover{filter:brightness(1.08)}.dk-submit span{margin-left:10px}
.dk-credit{color:#7790ac;text-align:center;max-width:400px;font-size:12px;margin:23px 0 0}
.dk-alert{background:#fff3f3;color:#972f39;padding:11px;border-radius:12px;margin:0 0 12px;max-width:400px}
.dk-illustration{padding:35px 45px 35px 0;display:flex;justify-content:center;align-items:center;overflow:hidden}
.dk-illustration img{display:block;max-width:100%;width:680px;height:auto;object-fit:contain}
@media(max-width:850px){body.dekapp-login{padding:14px}.dk-card{min-height:0;border-radius:22px}.dk-topbar{padding:15px 25px;height:88px}.dk-login-content{grid-template-columns:1fr}.dk-login-form-area{max-width:540px;margin:auto;padding:36px 28px 26px}.dk-login-form-area h1{font-size:31px}.dk-illustration{padding:0 30px 28px}.dk-illustration img{width:430px}}

/* Dekapp v0.8.6: login compacto; mantiene estilo e ilustración */
body.dekapp-login{padding:20px}
.dk-card{width:min(950px,100%);min-height:0;border-radius:24px;box-shadow:0 20px 48px rgba(8,63,129,.14)}
.dk-topbar{height:78px;padding:12px 35px}
.dk-logo{width:min(205px,48vw);max-height:60px}
.dk-top-current{font-size:12px;padding:6px 1px;border-bottom-width:2px}
.dk-login-content{min-height:390px;grid-template-columns:47% 53%}
.dk-login-form-area{max-width:400px;padding:28px 12px 30px 48px}
.dk-login-form-area h1{font-size:29px;margin:0 0 7px;letter-spacing:-.4px}
.dk-subtitle{font-size:14px;line-height:1.45;margin:0 0 17px;max-width:300px}
.dk-login-form{gap:6px;max-width:330px}
.dk-login-form>label{font-size:12px}
.dk-field{height:39px;border-radius:21px;padding:0 14px;margin-bottom:5px;gap:10px}
.dk-field input{font-size:13px}
.dk-submit{margin:10px 0 0;padding:10px 14px;font-size:14px;border-radius:22px}
.dk-credit{max-width:330px;font-size:11px;margin:16px 0 0}
.dk-illustration{padding:14px 30px 14px 5px}
.dk-illustration img{width:435px;max-height:340px;object-fit:contain}
@media(max-width:850px){body.dekapp-login{padding:14px}.dk-card{width:min(620px,100%)}.dk-login-content{grid-template-columns:1fr;min-height:0}.dk-topbar{height:72px;padding:11px 24px}.dk-login-form-area{padding:26px 24px 16px;max-width:390px;margin:auto;width:100%}.dk-login-form-area h1{font-size:27px}.dk-illustration{padding:0 24px 22px}.dk-illustration img{width:min(300px,100%);max-height:210px}}
@media(max-height:650px) and (min-width:851px){body.dekapp-login{padding:9px}.dk-card{width:min(880px,100%)}.dk-topbar{height:68px}.dk-login-content{min-height:350px}.dk-illustration img{max-height:300px}}


/* Dekapp v0.8.7 | logo oficial principal */
aside{width:255px;background:#0f3d78;color:#fff;min-height:100vh;padding:22px 18px}
.app-logo{padding-bottom:18px;margin-bottom:8px;border-bottom:1px solid rgba(255,255,255,.12)}
.app-logo img{display:block;max-width:100%;width:190px;height:auto;object-fit:contain;filter:drop-shadow(0 6px 14px rgba(4,28,58,.18))}
nav a{margin:4px 0;font-weight:600}
header{display:flex;justify-content:space-between;align-items:flex-end;gap:18px;padding:8px 0 22px;border-bottom:1px solid #dce5ef}
.header-brand{display:flex;flex-direction:column;gap:4px}
.header-brand strong{font-size:28px;line-height:1;color:#103c68;letter-spacing:-.5px}
.header-brand span{font-size:14px;color:#5c7595;font-weight:500}
.header-meta{font-size:14px;color:#6b7f96}
.dk-logo{width:min(225px,48vw);max-height:72px}
@media(max-width:850px){.app-logo img{width:170px}header{align-items:flex-start;flex-direction:column}.header-brand strong{font-size:24px}.header-meta{font-size:13px}}

/* v0.8.8: ventana menos ancha, altura conservada; logo más visible */
@media (min-width:851px){
  .dk-card{width:min(820px,100%)}
  .dk-topbar{height:78px;padding:7px 30px}
  .dk-logo{width:300px;max-width:60%;max-height:72px;object-fit:contain}
  .dk-login-content{min-height:390px;grid-template-columns:49% 51%}
  .dk-login-form-area{padding:28px 10px 30px 38px}
  .dk-illustration{padding:14px 22px 14px 0}
  .dk-illustration img{width:370px;max-height:340px}
}
@media (max-width:850px){
  .dk-logo{width:min(280px,60vw);max-height:64px}
}

/* Dekapp 0.8.9 | Logo grande sin aumentar el ancho de la ventana */
body.dekapp-login .dk-card{width:min(820px,100%)}
body.dekapp-login .dk-topbar{height:88px;padding:8px 27px}
body.dekapp-login .dk-logo{width:350px;max-width:calc(100% - 125px);height:74px;max-height:74px;object-fit:contain;object-position:left center}
body.dekapp-login .dk-login-content{min-height:390px}
.dk-field-icon{display:block;width:19px;height:19px;object-fit:contain;flex:0 0 19px}
@media(max-width:560px){body.dekapp-login .dk-topbar{height:80px;padding:8px 17px}body.dekapp-login .dk-logo{width:260px;max-width:calc(100% - 100px);height:65px}}
.admin-tabs{display:flex;flex-wrap:wrap;gap:9px;margin:12px 0 22px}.admin-tab{padding:10px 13px;background:white;color:#185993;border:1px solid #d4e4f1;border-radius:9px;text-decoration:none;font-weight:650}.admin-tab.current{background:#0d5caa;color:white}.admin-table-wrap{width:100%;overflow-x:auto}.admin-data{min-width:1100px}.admin-data th{background:#e5f1fa;white-space:nowrap}.admin-data tr:nth-child(even){background:#f7fafc}.admin-data td{max-width:260px;overflow-wrap:anywhere}.admin-data td form{display:inline-block}.admin-data button{white-space:nowrap;padding:7px 9px;font-size:12px}.danger{background:#b53345}.admin-editor{margin-top:24px}.admin-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px}.admin-fields label{display:flex;flex-direction:column;font-size:13px;font-weight:600;color:#294a66}.admin-fields input,.admin-fields select,.admin-fields textarea{width:100%;margin:5px 0 0}.admin-actions{margin-top:18px;display:flex;gap:12px}

/* CONSOLA 1.7.0: navegación lateral desplegable */
.sidebar-nav{display:block}.nav-group{border-radius:11px;margin:7px 0;overflow:hidden}.nav-group summary{list-style:none;cursor:pointer;font-weight:700;padding:13px 14px;color:#e6f3ff;border-radius:9px;background:rgba(255,255,255,.045)}.nav-group summary::-webkit-details-marker{display:none}.nav-group summary:after{content:'⌄';float:right;opacity:.7}.nav-group[open] summary{background:#145c9b;color:white}.nav-subitems{padding:5px 6px 9px 12px}.sidebar-nav .nav-subitems .nav-option{display:block;padding:10px 12px;border-radius:8px;font-size:13px;color:#deebfb;text-decoration:none}.sidebar-nav .nav-subitems .nav-option:hover,.sidebar-nav .nav-subitems .nav-option.active{background:#277bb9;color:#fff}.nav-extra{padding-top:18px;margin-top:16px;border-top:1px solid #ffffff26}.nav-extra a{font-size:13px;color:#dbeeff;display:block;padding:10px 12px;text-decoration:none}.nav-extra a:hover{background:#ffffff20;border-radius:8px}

/* CONSOLA 1.7.1 - menú y opciones compactas con estética azul */
.dekapp-shell{display:flex;background:#f4f8fc;min-height:100vh}
.dk-sidebar{width:270px;flex:0 0 270px;min-height:100vh;position:sticky;top:0;height:100vh;background:#f2f9fd;border-right:1px solid #cce2f0;display:flex;flex-direction:column;padding:16px 10px;color:#0a3f78}
.dk-sidebar .app-logo{background:white;border-radius:17px;border:1px solid #d2e7f4;padding:16px 14px;display:flex;align-items:center;justify-content:center;margin-bottom:20px;box-shadow:0 8px 18px #176dae10}
.dk-sidebar .app-logo img{width:100%;max-height:72px;object-fit:contain}
.sidebar-nav{overflow-y:auto;flex:1;padding:0 0 10px}
.sidebar-nav .menu-top,.sidebar-nav summary{font-size:13px;font-weight:700;display:flex;align-items:center;gap:9px;background:#f9fcff;border:1px solid #cce4f3;border-radius:11px;padding:12px;color:#06477f;margin:6px 0;cursor:pointer;text-decoration:none;list-style:none}
.sidebar-nav summary::-webkit-details-marker{display:none}
.sidebar-nav .menu-top:hover,.sidebar-nav summary:hover,.sidebar-nav .menu-top.active{background:#e1f4ff;border-color:#9bd9ff}
.nav-arrow{font-size:12px;transition:transform .2s}.nav-group[open] .nav-arrow{transform:rotate(90deg)}
.nav-dot{color:#20b5e8;font-size:14px}
.sidebar-nav .nav-subitems{padding:4px 6px 7px 17px}
.sidebar-nav a.nav-option{display:flex;align-items:center;gap:8px;padding:10px 9px;margin:3px 0;color:#255775;background:white;border:1px solid #e0eef5;border-radius:9px;text-decoration:none;font-size:12px}
.sidebar-nav a.nav-option:hover,.sidebar-nav a.nav-option.active{background:#e8f6ff;border-color:#9edbf7;color:#0759a2}
.sidebar-bottom{border-top:1px solid #d5e7f0;padding:15px 4px 2px;display:flex;flex-direction:column;gap:5px;color:#35607d;font-size:12px}
.sidebar-bottom strong{color:#003d80;font-size:13px}.sidebar-bottom small{font-size:11px}.logout-button{margin-top:9px;background:linear-gradient(100deg,#127bc4,#20ade2);padding:11px;text-align:center;border-radius:9px;color:white;text-decoration:none;font-weight:700}
.dk-main{flex:1;min-width:0;padding:18px 25px 35px;background:transparent}
.dk-main-header{display:flex;justify-content:space-between;align-items:flex-start;border:0;padding:1px 0 20px;gap:20px}
.dk-main-header>div:first-child{display:flex;flex-direction:column;gap:5px}.dk-main-header strong{font-size:24px;color:#075797}.dk-main-header span{color:#66849a;font-size:13px}
.user-chip{background:white;border:1px solid #d5eaf5;border-radius:10px;padding:10px 13px;font-size:12px;color:#62839d}.user-chip b{color:#075797;margin-left:6px}
.option-grid{display:grid;grid-template-columns:repeat(2,minmax(230px,1fr));gap:17px;max-width:1100px}
.option-card{display:flex;align-items:flex-start;gap:16px;padding:22px 18px;background:white;border:1px solid #d2e8f3;box-shadow:0 8px 22px #12466a0c;border-radius:16px;text-decoration:none;min-height:111px}
.option-card:hover{border-color:#6fc8f5;transform:translateY(-1px)}.option-icon{flex:0 0 46px;width:46px;height:46px;border-radius:12px;background:linear-gradient(135deg,#1285d2,#2cb8eb);color:#fff;display:grid;place-items:center;font-size:25px}.option-info{display:flex;flex-direction:column;gap:8px;flex:1}.option-info strong{font-size:15px;color:#065596}.option-info small{line-height:1.5;font-size:13px;color:#668398}.option-chevron{font-size:26px;color:#58a9d3}
.welcome-panel{background:white;border:1px solid #d3e8f4;border-radius:18px;min-height:335px;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:36px;box-shadow:0 8px 20px #12466a0d}.welcome-copy{max-width:550px}.eyebrow{color:#199fd5;font-weight:700;letter-spacing:.03em;font-size:12px}.welcome-copy h1{margin:10px 0;color:#063c80;font-size:32px}.welcome-copy p{color:#54728a;line-height:1.65}.welcome-panel img{max-width:40%;width:350px;object-fit:contain}.welcome-links{display:flex;gap:10px;margin-top:22px}.welcome-links a{background:#1287d6;border-radius:10px;padding:11px 16px;color:white;text-decoration:none;font-weight:700;font-size:13px}.welcome-links a+ a{background:#e6f5ff;color:#07568e}
@media(max-width:800px){.dekapp-shell{display:block}.dk-sidebar{position:static;width:100%;height:auto;min-height:0}.sidebar-nav{max-height:260px}.dk-main{padding:18px}.option-grid{grid-template-columns:1fr}.welcome-panel{flex-direction:column;align-items:flex-start;padding:23px}.welcome-panel img{max-width:100%}.dk-main-header{flex-wrap:wrap}}

/* CONSOLA 1.7.2 - tablas y formularios modales */
.dk-data-shell{display:grid;gap:14px}.dk-data-top,.dk-grid-panel{background:white;border:1px solid #d8e8f5;border-radius:17px;box-shadow:0 8px 25px #073b7310}.dk-data-top{padding:18px 22px;display:flex;justify-content:space-between;align-items:center;gap:15px}.dk-data-top strong{display:block;color:#073b80;font-size:19px}.dk-data-top small,.dk-filter-head small{display:block;color:#6886a4;margin-top:4px}.dk-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.dk-toolbar label{font-size:13px;color:#5b7392}.dk-toolbar select{padding:8px}.dk-primary,.dk-light-button{display:inline-block;border:0;border-radius:10px;background:linear-gradient(110deg,#0759c4,#29afe9);color:white;padding:10px 15px;font-weight:700;text-decoration:none;cursor:pointer}.dk-light-button{background:#eaf5fc;color:#064982}.dk-filter-head{display:flex;justify-content:space-between;gap:15px;align-items:center;padding:17px 18px;background:#fafdff}.dk-filter-head strong{color:#064982}.dk-table-scroll{overflow:auto;max-height:60vh}.dk-modern-table{width:100%;border-collapse:separate;border-spacing:0;font-size:13px}.dk-modern-table th{background:#eaf5fc;color:#064982;font-weight:700;white-space:nowrap;position:sticky;top:0;z-index:2}.dk-modern-table th,.dk-modern-table td{border-bottom:1px solid #e5eff7;padding:11px 12px;text-align:left;white-space:nowrap}.dk-modern-table tbody tr:nth-child(even){background:#f6fbff}.dk-modern-table tbody tr:hover{background:#e9f6ff}.dk-modern-table tr[hidden]{display:none}.dk-column-filter{width:125px;max-width:100%;margin:0;padding:7px 8px;font-size:12px;border:1px solid #cde0ef}.dk-filter-row th{top:37px}.dk-row-actions{display:flex;align-items:center;gap:5px}.dk-row-actions form{display:inline;margin:0}.dk-mini{background:#eaf5fc;color:#0751a2;border:0;border-radius:9px;padding:8px 10px;margin:0;cursor:pointer;font-size:12px}.dk-mini.dk-danger{background:#fee8e8;color:#b22535}.dk-table-footer{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;color:#64809d;font-size:13px}.dk-record-dialog{border:0;border-radius:20px;padding:0;width:min(710px,94vw);max-height:90vh;box-shadow:0 30px 80px #001b4270;color:#113d6d}.dk-record-dialog::backdrop{background:#081f3d85}.dk-modal-head{display:flex;justify-content:space-between;align-items:center;padding:18px 25px;background:linear-gradient(110deg,#063f92,#168ddb);color:white}.dk-modal-head h2{margin:0;font-size:22px;color:white}.dk-modal-head small{color:#dceffd}.dk-close{background:#ffffff22;border:0;color:white;border-radius:8px;font-size:28px;cursor:pointer}.dk-modal-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px;padding:23px;overflow:auto;max-height:57vh}.dk-modal-fields label{display:flex;flex-direction:column;gap:5px;font-weight:600;font-size:13px}.dk-modal-fields input,.dk-modal-fields select,.dk-modal-fields textarea{width:100%;margin:0;border:1px solid #ccdfef;border-radius:9px;padding:10px;background:#f8fbff}.dk-modal-fields :disabled{opacity:.75}.dk-modal-foot{padding:15px 23px;display:flex;justify-content:flex-end;gap:10px;border-top:1px solid #dbe7f1}@media(max-width:700px){.dk-modal-fields{grid-template-columns:1fr}.dk-data-top,.dk-filter-head{align-items:flex-start;flex-direction:column}}

/* CONSOLA 1.7.3: legibilidad y marca transparente */
.dk-sidebar{background:#f1f8fd;color:#103f6b}
.dk-sidebar .app-logo{background:#f6fbff;border:1px solid #d2e7f5;padding:14px 12px;border-radius:16px;min-height:100px}
.dk-sidebar .app-logo img{display:block;width:100%;height:auto;max-height:90px;object-fit:contain;filter:none}
.sidebar-nav .menu-top,.sidebar-nav .nav-group>summary{color:#073d75 !important;background:#fff !important;border:1px solid #c9e2f1;font-size:13px;font-weight:750;line-height:1.4;opacity:1;white-space:normal}
.sidebar-nav .nav-group[open]>summary,.sidebar-nav .menu-top.active{background:#0d5ca6 !important;border-color:#0d5ca6 !important;color:#fff !important}
.sidebar-nav .nav-group[open]>summary .nav-dot,.sidebar-nav .menu-top.active .nav-dot{color:#9deaff}
.sidebar-nav .nav-subitems{padding:5px 3px 10px 12px !important}
.sidebar-nav .nav-subitems a.nav-option,.sidebar-nav a.nav-option{display:flex !important;align-items:center;gap:7px;color:#164d78 !important;background:#fff !important;border:1px solid #d4e5f2 !important;padding:10px 12px !important;line-height:1.4;font-weight:600;font-size:12px;opacity:1 !important;text-shadow:none;overflow-wrap:anywhere;min-height:40px}
.sidebar-nav .nav-subitems a.nav-option:hover,.sidebar-nav a.nav-option:hover{background:#e7f4ff !important;color:#064c90 !important;border-color:#70c8f3 !important}
.sidebar-nav .nav-subitems a.nav-option.active,.sidebar-nav a.nav-option.active{background:#d9efff !important;color:#003f83 !important;border-color:#50aee1 !important;box-shadow:inset 3px 0 #0c82d5}
.sidebar-nav .nav-option .nav-dot{color:#16a2d9;flex:none}
.sidebar-nav{scrollbar-color:#a8d1e8 transparent}

/* CONSOLA v1.8.3: marca y sesión lateral compactas */
.dk-sidebar .app-logo{background:#fff!important;min-height:0!important;padding:8px 10px!important;margin-bottom:8px!important;border:1px solid #d2e7f5!important;border-radius:13px!important}
.dk-sidebar .app-logo img{max-height:62px!important;width:100%!important;object-fit:contain!important}
.dk-sidebar .sidebar-bottom{background:#fff;border:1px solid #d2e7f5;border-radius:12px;padding:12px;gap:5px}
.dk-sidebar .sidebar-bottom strong{font-size:12px;line-height:1.4}
.dk-main-header .user-chip{display:none!important}

/* Foto y firma del usuario: dos pestañas compactas */
.dk-user-media{margin:10px 20px;padding:12px;border:1px solid #dbe7f3;border-radius:12px;background:#fff}.dk-media-tabs{display:flex;gap:8px;margin-bottom:10px}.dk-media-pane[hidden]{display:none!important}.dk-media-pane label{display:block;font-size:13px;font-weight:600;color:#23517b}.dk-media-pane input[type=file]{display:block;margin-top:8px;max-width:100%}.dk-user-preview{display:block;margin:12px auto;max-width:100%;max-height:200px;object-fit:contain;border:1px solid #dce8f3;border-radius:9px;padding:5px}.dk-user-preview[hidden]{display:none!important}


/* CONSOLA 1.8.6: el desplazamiento pertenece a las tablas, nunca a toda la ventana. */
html,body{width:100%;max-width:100%;overflow-x:hidden}
.dekapp-shell{width:100%;max-width:100%;min-width:0;overflow-x:clip}
.dk-main{width:0;min-width:0;flex:1 1 0%;max-width:100%;overflow-x:clip}
.dk-data-shell,.dk-data-top,.dk-grid-panel{width:100%;max-width:100%;min-width:0}
.dk-data-top{display:grid;grid-template-columns:minmax(120px,auto) minmax(0,1fr);align-items:start;gap:14px}
.dk-data-top>div:first-child{min-width:0;align-self:center}
.dk-toolbar{display:flex;flex-wrap:wrap;justify-content:flex-end;align-content:start;align-items:center;gap:8px;min-width:0;width:100%;max-width:100%;overflow:visible}
.dk-toolbar>.dk-primary,.dk-toolbar>.dk-light-button,.dk-toolbar>.dk-export-btn,.dk-toolbar>label{flex:0 0 auto;max-width:100%;white-space:nowrap;margin:0}
.dk-toolbar>.dk-primary,.dk-toolbar>.dk-light-button,.dk-toolbar>.dk-export-btn{padding:9px 12px;font-size:12px}
.dk-grid-panel{overflow:hidden}
.dk-filter-head{min-width:0;flex-wrap:wrap}
.dk-filter-actions{display:flex;flex-wrap:wrap;gap:7px}
.dk-table-help{padding:8px 16px;white-space:normal}
.dk-table-scroll{width:100%;max-width:100%;min-width:0;overflow-x:auto!important;overflow-y:auto!important;max-height:60vh;overscroll-behavior-x:contain;scrollbar-gutter:stable;scrollbar-color:#a8cde8 #f2f8fd}
.dk-modern-table{width:max-content;min-width:100%;table-layout:fixed}
.dk-modern-table .dk-column-filter{min-width:0;width:100%;max-width:100%;box-sizing:border-box}
.dk-modern-table th,.dk-modern-table td{overflow:hidden;text-overflow:ellipsis}
.dk-table-footer{flex-wrap:wrap;gap:8px}
@media(max-width:1050px){.dk-data-top{grid-template-columns:minmax(0,1fr)}.dk-toolbar{justify-content:flex-start}}
@media(max-width:650px){.dk-main{padding:14px 10px 25px}.dk-data-top{padding:13px}.dk-toolbar{gap:6px}.dk-toolbar>.dk-primary,.dk-toolbar>.dk-light-button,.dk-toolbar>.dk-export-btn{padding:8px 9px}.dk-table-footer{padding:11px}}

/* v1.8.8: proyecto > menú > opción. */
.sidebar-nav .nav-project-menus{padding-left:11px}
.sidebar-nav .nav-child-group{margin:4px 0}
.sidebar-nav .nav-child-group>summary{padding:9px 10px;font-size:12px;background:#eef7ff!important;color:#135381!important}
.sidebar-nav .nav-child-group[open]>summary{background:#dceefe!important;color:#0a4178!important}
.sidebar-nav .nav-child-group .nav-subitems{padding-left:8px!important}

/* Navegación a tarjetas de opciones por menú */
.nav-child-group summary .nav-menu-link{color:inherit;text-decoration:none;flex:1;display:inline-block;margin:0;padding:0;font:inherit}
.nav-child-group summary .nav-menu-link:hover{text-decoration:underline}
.dk-menu-description{margin:8px 0 22px;color:#506785}

/* v1.8.11: interacciones sin selección accidental */
.sidebar-nav a,.sidebar-nav summary,.option-card,button,.dian-action,.dian-delete{cursor:pointer;user-select:none;-webkit-user-select:none}
.sidebar-nav a:focus,.sidebar-nav summary:focus{outline:2px solid #27a4ea;outline-offset:2px}
.dian-panel{background:white;border:1px solid #d1e5f5;border-radius:14px;padding:22px;margin-bottom:20px;max-width:100%}
.dian-panel h2{font-size:19px;color:#09477e;margin:0 0 10px}.dian-panel p{color:#506785}
#dian-form{display:flex;flex-wrap:wrap;align-items:end;gap:14px;margin-top:20px}#dian-form label{display:flex;flex-direction:column;gap:6px;font-weight:600;color:#174c79}
#dian-form input{padding:9px;border:1px solid #b5d4e8;border-radius:8px;max-width:250px}
.dian-action{display:inline-block;background:#1384ca;color:#fff;border:0;border-radius:8px;padding:11px 16px;text-decoration:none;font-weight:600}
.dian-delete{border:1px solid #df9b9b;color:#a52121;background:white;border-radius:6px;padding:7px 12px}
.dian-table{border-collapse:collapse;min-width:850px;width:100%}.dian-table th,.dian-table td{padding:10px;border-bottom:1px solid #dbe8f0;text-align:left;font-size:13px}
.dian-table th{background:#eaf5fc;color:#174d80}#dian-progress{margin-top:15px;color:#185a86}#dian-progress progress{display:block;width:100%;margin-bottom:8px}

/* ESENORTE 1.8.12: DIAN UI */
.dian-v2-head{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin:0 0 20px}.dian-v2-head h2{margin:0 0 5px;font-size:1.42rem}.dian-v2-head p{margin:0;color:#61748a}.dian-v2-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:20px}.dian-v2-metrics>div{background:white;border:1px solid #dce6f0;border-radius:12px;padding:16px;display:flex;flex-direction:column;gap:7px}.dian-v2-metrics small{color:#677b92}.dian-v2-metrics strong{color:#114376;font-size:1.3rem}.dian-v2-panel{border-radius:14px!important;padding:22px!important;margin-bottom:18px!important}.dian-v2-section{margin-bottom:16px}.dian-v2-section h3{margin:0 0 5px}.dian-v2-section p{margin:0;color:#65798e}.dian-v2-form{display:grid;grid-template-columns:1fr 1fr 1.4fr auto;gap:14px;align-items:end}.dian-v2-form label,.dian-v2-filter label{display:flex;flex-direction:column;gap:7px;font-weight:600;color:#274f77}.dian-v2-form input,.dian-v2-filter input{max-width:100%;min-width:0;border:1px solid #cbd9e8;border-radius:8px;padding:10px;background:#fff}.dian-v2-form button{white-space:nowrap}.dian-v2-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.dian-v2-actions form{margin:0}.dian-action,.dian-delete{cursor:pointer!important;text-decoration:none}.dian-action.outline{background:#fff!important;color:#17558c!important;border:1px solid #abc5dc!important}.dian-action.tiny{padding:7px 11px!important;font-size:.87rem}.dian-v2-progress{margin-top:18px}.dian-v2-progress progress{display:block;width:100%;margin-bottom:8px}.dian-v2-filter{display:flex;align-items:end;gap:10px;flex-wrap:wrap}.dian-v2-filter label{flex:1;min-width:200px}.dian-v2-count{font-size:.9rem;color:#62768b}.dian-v2-detail-scroll{overflow:auto;max-height:60vh}.dian-v2-detail-table{min-width:2600px}.dian-v2-detail-table th{position:sticky;top:0;background:#eaf2fa;z-index:1;white-space:nowrap}.dian-v2-detail-table td{white-space:nowrap;max-width:250px;overflow:hidden;text-overflow:ellipsis}.dian-v2-pages{display:flex;justify-content:center;align-items:center;gap:22px;margin-top:18px}.dian-v2-pages a{color:#145e99;font-weight:600}.dian-v2-pages a:hover{text-decoration:underline}a,button,summary,[role=button],input[type=file]::file-selector-button{cursor:pointer}a,button,summary{user-select:none}@media(max-width:950px){.dian-v2-form{grid-template-columns:1fr 1fr}.dian-v2-metrics{grid-template-columns:1fr}}@media(max-width:600px){.dian-v2-form{grid-template-columns:1fr}}
/* ESENORTE v1.8.13 — detalle DIAN y navegación elegante */
.sidebar-nav .nav-child-group>summary,.sidebar-nav .nav-child-group[open]>summary{background:#f3f9fe!important;color:#174f80!important;border:1px solid #d6e6f2!important;border-radius:9px!important;box-shadow:none!important;text-decoration:none!important;cursor:pointer!important;user-select:none!important;transition:background .15s,border-color .15s;}
.sidebar-nav .nav-child-group[open]>summary{background:#e5f3fc!important;color:#084c82!important;border-left:3px solid #128bd3!important;}
.sidebar-nav .nav-child-group>summary:hover,.sidebar-nav .nav-child-group[open]>summary:hover{background:#d9edfa!important;border-color:#91ccea!important;}
.sidebar-nav .nav-child-group summary .nav-menu-link{text-decoration:none!important;color:inherit!important;cursor:pointer!important;user-select:none!important;}
.sidebar-nav .nav-child-group summary .nav-menu-link:hover{text-decoration:none!important;}
.dian-id{color:#0f74b8}.dian-detail-panel{padding:20px!important}.dian-detail-toolbar{display:flex;align-items:end;gap:12px;flex-wrap:wrap;margin-bottom:12px}.dian-detail-toolbar label{display:flex;flex-direction:column;gap:6px;color:#335875;font-weight:650;font-size:12px}.dian-detail-toolbar .dian-detail-search{flex:1;min-width:230px}.dian-detail-toolbar input,.dian-detail-toolbar select{padding:10px 12px;background:#fff;border:1px solid #cbddeb;border-radius:9px;min-height:40px;color:#244965}.dian-detail-size select{min-width:125px;cursor:pointer}.dian-detail-scroll{overflow:auto;max-height:67vh;overscroll-behavior:contain;border:1px solid #d9e8f3;border-radius:11px;background:#fff}.dian-modern-table{min-width:3000px;border-collapse:separate!important;border-spacing:0!important;width:max-content!important}.dian-modern-table th,.dian-modern-table td{min-width:165px;max-width:280px;padding:11px 13px!important;text-align:left;border-bottom:1px solid #e7eef4!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dian-modern-table th:first-child,.dian-modern-table td:first-child{min-width:105px}.dian-modern-table .dian-head-names th{position:sticky;top:0;background:#15588c!important;color:#fff!important;z-index:5;font-weight:700;font-size:12px;max-width:260px}.dian-modern-table .dian-head-filters th{position:sticky;top:39px;background:#eef6fc!important;z-index:5;padding:7px 8px!important}.dian-modern-table .dian-head-filters input{display:block;width:100%;min-width:140px;border:1px solid #c4ddeb;border-radius:7px;background:#fff;color:#284d66;padding:7px 9px;font-size:12px;box-sizing:border-box}.dian-filter-hint{color:#527894;font-size:11px}.dian-modern-table tbody tr:nth-child(even){background:#f6faff}.dian-modern-table tbody tr:hover{background:#eaf5fd}.dian-modern-table td{font-size:12px;color:#315067}.dian-modern-table .dian-empty{text-align:center;padding:28px!important}.dian-detail-panel .dian-v2-pages{padding-top:10px}.dian-detail-toolbar button{min-height:40px}

/* ESENORTE v1.8.14 — elementos del menú sin selección de texto */
.dk-sidebar .sidebar-nav,
.dk-sidebar .sidebar-nav *,
.dk-sidebar .menu-top,
.dk-sidebar .nav-child-group summary,
.dk-sidebar .nav-child-group summary .nav-menu-link {
  -webkit-user-select:none!important;
  user-select:none!important;
  -webkit-touch-callout:none;
}
.dk-sidebar .sidebar-nav ::selection,
.dk-sidebar .sidebar-nav::selection {background:transparent!important;color:inherit!important;}
.dk-sidebar .sidebar-nav a,
.dk-sidebar .sidebar-nav summary,
.dk-sidebar .sidebar-nav button {cursor:pointer!important;}
.dk-sidebar .nav-child-group summary .nav-menu-link,
.dk-sidebar .nav-child-group summary .nav-menu-link:active,
.dk-sidebar .nav-child-group summary .nav-menu-link:focus {
 background:transparent!important;box-shadow:none!important;outline:none;
 text-decoration:none!important;color:inherit!important;
}
.dk-sidebar .nav-child-group summary:focus-visible,
.dk-sidebar .nav-child-group summary:has(.nav-menu-link:focus-visible) {
 outline:2px solid #258bd0!important;outline-offset:2px!important;
}

/* ESENORTE v1.8.15 — nivel 2 con mayor espacio horizontal. */
@media (min-width:801px) {
  .dk-sidebar {width:310px!important;flex:0 0 310px!important;box-sizing:border-box;}
}
.sidebar-nav .nav-project-menus {padding-left:7px!important;}
.sidebar-nav .nav-child-group {min-width:0;width:100%;box-sizing:border-box;}
.sidebar-nav .nav-child-group>summary {width:100%;box-sizing:border-box;padding-left:12px!important;padding-right:12px!important;}
.sidebar-nav .nav-child-group summary .nav-menu-link {min-width:0;overflow-wrap:anywhere;white-space:normal;}
@media (max-width:800px) {
  .dk-sidebar {width:100%!important;flex:auto!important;}
}

/* Control de Asistencia */
.as-card{background:#fff;border:1px solid #dce6f2;border-radius:14px;padding:24px;margin:0 0 20px;box-shadow:0 3px 14px #0a356a0a}.as-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:15px;margin-top:18px}.as-form label{display:flex;flex-direction:column;gap:7px;color:#254768;font-weight:600}.as-form input:not([type=checkbox]),.as-form select{border:1px solid #c5d4e4;padding:11px;border-radius:8px;font:inherit}.as-form button,.as-card button{border:0;border-radius:8px;background:#155a9f;color:white;padding:12px 16px;cursor:pointer}.as-wide{grid-column:1/-1}.as-wide[hidden]{display:none}.as-scroll{max-width:100%;overflow:auto}.as-card table{border-collapse:collapse;min-width:680px;width:100%}.as-card th,.as-card td{padding:12px;border-bottom:1px solid #e5eef8;text-align:left}.as-card th{background:#eaf2fb;color:#174b7d}.as-ok{color:#15643b}.as-warn{color:#8d5b11}.as-terminal{text-align:center;min-height:450px}.as-face{font-size:95px;color:#1f75b8;padding:24px}.sidebar-nav,.sidebar-nav *{user-select:none;-webkit-user-select:none}.sidebar-nav a,.sidebar-nav summary{cursor:pointer}
