:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:#142033;background:#f5f7fb;line-height:1.45}*{box-sizing:border-box}body{margin:0}a{color:inherit}.ep-body{min-height:100vh;background:linear-gradient(180deg,#eef3f9 0,#f8fafc 320px,#f5f7fb 100%)}.ep-topbar{height:74px;background:#fff;border-bottom:1px solid #dde5ef;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(18px,4vw,56px);position:sticky;top:0;z-index:20}.ep-brand{display:flex;gap:12px;align-items:center;text-decoration:none;min-width:0}.ep-brand img,.ep-brand-mark{width:42px;height:42px;border-radius:12px;object-fit:contain;background:#12243a;color:#fff;display:grid;place-items:center;font-weight:800}.ep-brand>span:last-child{display:grid;min-width:0}.ep-brand strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ep-brand small{color:#6a788b}.ep-secure{font-size:12px;font-weight:700;background:#e9f7ef;color:#237046;padding:8px 11px;border-radius:999px}.ep-nav{display:flex;gap:6px;overflow:auto;background:#fff;border-bottom:1px solid #e5ebf2;padding:9px clamp(14px,4vw,52px);scrollbar-width:none}.ep-nav a{white-space:nowrap;text-decoration:none;font-size:13px;font-weight:700;padding:8px 12px;border-radius:9px}.ep-nav a:hover{background:#eef3f8}.ep-shell{max-width:1180px;margin:0 auto;padding:28px 22px 60px}.ep-hero{display:grid;grid-template-columns:1.4fr .9fr;gap:18px;margin-bottom:20px}.ep-card,.ep-panel{background:#fff;border:1px solid #dde6f0;border-radius:18px;box-shadow:0 8px 28px rgba(20,32,51,.05)}.ep-card{padding:22px}.ep-panel{padding:20px;margin-bottom:18px}.ep-eyebrow{font-size:11px;letter-spacing:.12em;font-weight:800;color:#667991}.ep-title{font-size:clamp(25px,4vw,38px);line-height:1.12;margin:7px 0 8px}.ep-muted{color:#69798d}.ep-summary{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.ep-stat{background:#f5f8fc;border:1px solid #e3eaf2;border-radius:14px;padding:14px}.ep-stat strong{display:block;font-size:22px}.ep-stat small{color:#6c7a8c}.ep-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.ep-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.ep-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}.ep-head h1,.ep-head h2,.ep-head h3{margin:0}.ep-head p{margin:4px 0 0;color:#708095}.ep-link{color:#145ea8;text-decoration:none;font-weight:750;font-size:13px}.ep-list{display:grid;gap:9px}.ep-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border:1px solid #e5eaf1;border-radius:12px;text-decoration:none;background:#fff}.ep-row:hover{border-color:#b8c9db;background:#fbfcfe}.ep-row>span{display:grid;min-width:0}.ep-row strong{overflow:hidden;text-overflow:ellipsis}.ep-row small{color:#758395}.ep-money{text-align:right;font-weight:800}.ep-chip{display:inline-flex;align-items:center;padding:5px 8px;border-radius:999px;font-size:11px;font-weight:800;background:#edf3f9;color:#415a75}.ep-chip.aprobada,.ep-chip.cerrado{background:#e5f5eb;color:#236840}.ep-chip.pendiente{background:#fff4d8;color:#805f00}.ep-chip.rechazada,.ep-chip.anulada{background:#fdeaea;color:#943a3a}.ep-empty{padding:22px;text-align:center;color:#758397;background:#f8fafc;border:1px dashed #cfd9e5;border-radius:13px}.ep-alert{max-width:1180px;margin:0 auto 15px;padding:12px 15px;border-radius:12px;font-weight:650}.ep-alert.ok{background:#e8f6ed;color:#21633c;border:1px solid #bfe2cb}.ep-alert.error{background:#fff0f0;color:#8b3030;border:1px solid #f1c5c5}.ep-login-wrap{max-width:520px;margin:5vh auto}.ep-login{padding:28px}.ep-form{display:grid;gap:14px}.ep-form.grid2{grid-template-columns:repeat(2,minmax(0,1fr))}.ep-form label{display:grid;gap:6px;font-size:13px;font-weight:700;color:#43536a}.ep-form input,.ep-form select,.ep-form textarea{width:100%;border:1px solid #cfd8e4;background:#fff;border-radius:10px;padding:11px 12px;font:inherit;color:#17263a}.ep-form input:focus,.ep-form select:focus,.ep-form textarea:focus{outline:2px solid #b8d6f5;border-color:#3d7dbd}.ep-btn{border:0;border-radius:10px;padding:11px 15px;background:#15385d;color:#fff;font-weight:800;cursor:pointer;text-decoration:none;display:inline-flex;justify-content:center;align-items:center}.ep-btn.secondary{background:#edf3f8;color:#244663}.ep-btn.danger{background:#9a3d3d}.ep-actions{display:flex;gap:9px;flex-wrap:wrap}.ep-table-wrap{overflow:auto;border:1px solid #e1e8f0;border-radius:13px}.ep-table{border-collapse:collapse;width:100%;min-width:680px}.ep-table th,.ep-table td{padding:11px 12px;border-bottom:1px solid #e7ecf2;text-align:left;font-size:13px}.ep-table th{background:#f5f8fb;color:#53657b;font-size:11px;text-transform:uppercase;letter-spacing:.05em}.ep-table tr:last-child td{border-bottom:0}.ep-schedule{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.ep-day{border:1px solid #dde6ef;border-radius:12px;padding:11px;background:#fafcfe;min-height:110px}.ep-day strong{display:block;margin-bottom:7px}.ep-day span{display:block;font-size:12px}.ep-mark-box{display:flex;gap:8px;flex-wrap:wrap}.ep-mark-box form{display:inline}.ep-docs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.ep-doc{display:grid;gap:8px;padding:16px;border:1px solid #dfe7f0;border-radius:14px;text-decoration:none;background:#fff}.ep-doc:hover{border-color:#acc4da}.ep-doc small{color:#728197}.ep-footer{max-width:1180px;margin:0 auto;padding:16px 22px 32px;display:flex;justify-content:space-between;gap:14px;color:#77869a;font-size:12px}.ep-footer form{margin:0}.ep-footer button{border:0;background:none;color:#51657d;text-decoration:underline;cursor:pointer}.validation-summary-errors{background:#fff0f0;border:1px solid #f1c5c5;color:#8b3030;padding:11px 14px;border-radius:10px;margin-bottom:12px}.field-validation-error{color:#a13939;font-size:12px}.ep-print-note{font-size:12px;color:#758397}@media print{.ep-topbar,.ep-nav,.ep-footer,.ep-print-hide{display:none!important}.ep-shell{padding:0}.ep-card,.ep-panel{box-shadow:none;border-color:#ddd}}@media(max-width:820px){.ep-hero,.ep-grid,.ep-grid.three{grid-template-columns:1fr}.ep-schedule{grid-template-columns:repeat(2,minmax(0,1fr))}.ep-docs{grid-template-columns:1fr 1fr}.ep-shell{padding:20px 14px 48px}.ep-topbar{padding:0 14px}.ep-form.grid2{grid-template-columns:1fr}.ep-secure{display:none}}@media(max-width:520px){.ep-docs,.ep-schedule{grid-template-columns:1fr}.ep-brand strong{max-width:190px}.ep-nav{padding-left:8px}.ep-card,.ep-panel,.ep-login{padding:17px;border-radius:14px}.ep-footer{padding:14px;flex-direction:column}.ep-title{font-size:27px}}
