:root{--navy:#1e354e;--blue:#225479;--ink:#243347;--muted:#748297;--bg:#f5f7fa;--line:#dfe6ee;--shadow:0 1px 2px #1021370b}*{box-sizing:border-box}html{font-family:system-ui,-apple-system,Segoe UI,Arial,sans-serif}body{margin:0;background:var(--bg);color:var(--ink)}[hidden]{display:none!important}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.5;cursor:not-allowed}.auth-shell{min-height:100vh;display:grid;place-items:center;padding:20px}.login-card{width:min(100%,450px);background:white;border:1px solid var(--line);border-radius:16px;padding:38px;text-align:center;box-shadow:0 12px 40px #12253614}.logo{display:inline-block;background:var(--navy);color:#fff;border-radius:8px;font-size:21px;font-weight:800;letter-spacing:1.4px;padding:13px 21px}.logo-small{font-weight:500;font-size:12px;color:#aacce6}.login-card h1{font-size:24px;margin-top:26px}.login-card p,.status{color:var(--muted);font-size:14px;line-height:1.5}.login-footer{border-top:1px solid var(--line);margin-top:24px;padding-top:16px;color:#94a0ae;font-size:12px}.primary-button{border:0;border-radius:8px;background:var(--blue);color:white;padding:13px 18px;font-weight:600}.login-card .primary-button{width:100%;margin-top:16px}.primary-button:hover{background:#153e5d}.primary-button.fitted{width:auto}.secondary-button,.outline-button{border:1px solid #c5d0dc;border-radius:8px;background:#fff;color:#264866;padding:10px 14px;font-size:13px;font-weight:600}.secondary-button{padding:7px 12px}.outline-button:hover{background:#eef4f9}.application{display:flex;min-height:100vh}.sidebar{width:225px;background:var(--navy);color:white;padding:26px 15px;display:flex;flex-direction:column;gap:19px;flex-shrink:0}.sidebar-title{font-weight:800;letter-spacing:1.4px;font-size:20px;padding:7px 14px}.sidebar-title span{font-size:13px;font-weight:500;color:#9cc2dc}.sidebar-section-label{font-size:11px;letter-spacing:.8px;color:#9bb0c4;margin:18px 14px 0}nav{display:grid;gap:5px}.nav-link{width:100%;border:none;background:transparent;color:#c3d0dd;text-align:left;padding:12px 13px;border-radius:9px;font-size:14px}.nav-link.current,.nav-link:hover{background:#325674;color:white}.sidebar-bottom{margin-top:auto;padding:12px;font-size:11px;color:#89a2b8}.content-area{flex:1;min-width:0}.topbar{min-height:73px;background:#fff;border-bottom:1px solid var(--line);padding:16px 30px;display:flex;align-items:center;justify-content:space-between;gap:12px}.user-actions{display:flex;align-items:center;gap:13px;color:#617387;font-size:12px}.role-chip,.pill{border:1px solid var(--line);padding:5px 9px;background:#eef3f8;border-radius:999px;font-size:11px;color:var(--blue)}.page-section{max-width:1170px;margin:0 auto;padding:30px}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:18px}.page-heading h1,.page-section>h1{font-size:27px;margin:0 0 7px}.page-heading p{margin:0 0 20px;color:var(--muted)}.segmented{background:#e7edf2;padding:4px;border-radius:11px;display:flex}.segmented button{border:0;border-radius:7px;padding:9px 14px;background:transparent;color:#526377}.segmented button.active{background:white;color:var(--blue);box-shadow:0 1px 4px #0002}.kpi-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:20px 0}.kpi,.panel{background:#fff;border:1px solid var(--line);border-radius:12px;padding:22px;box-shadow:var(--shadow)}.kpi{display:grid;gap:9px}.kpi span{font-size:13px;color:#5e6b7a}.kpi strong{font-size:28px}.kpi small{font-size:11px;color:#8996a4}.panel{margin:18px 0}.panel h2{font-size:17px;margin:0 0 9px}.panel p{line-height:1.5;color:#66798a;margin:6px 0 14px}.panel-top{display:flex;align-items:center;justify-content:space-between;gap:15px}.muted{color:var(--muted)!important}.small{font-size:12px}.actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.notice{padding:12px 22px;margin:10px 30px 0;border-radius:10px;font-size:13px}.notice-warning{background:#fff7e6;color:#7a4d12;border:1px solid #f1d59e}.notice-ok{background:#edf8f2;color:#215b37;border:1px solid #cce9d5}.form-title{border-top:1px solid var(--line);padding-top:23px;margin:26px 0 17px;font-size:17px}.form-title span{color:var(--blue);margin-right:7px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px 18px}.form-grid label,.filters label{display:grid;gap:6px;font-size:12px;font-weight:600;color:#3e5063}.form-grid b{color:#bd563e}.form-grid input,.form-grid select,.filters input,.filters select,.reason-field{padding:11px 12px;min-width:0;max-width:100%;border:1px solid #c9d3de;border-radius:8px;background:white;color:#233044;font-size:14px}.form-grid input:focus,.form-grid select:focus,.reason-field:focus{outline:2px solid #b5d4ec;outline-offset:1px}.controls-list{display:grid;gap:10px}.control-item{border:1px solid var(--line);border-radius:10px;padding:17px;background:#fcfdff}.control-top{display:flex;justify-content:space-between;align-items:flex-start;gap:15px}.control-top strong{display:block;color:#1f3d59;font-size:13px;margin-bottom:4px}.control-top p{margin:0 0 10px;font-size:13px;color:#435267;line-height:1.5}.control-choices{display:flex;flex-wrap:wrap;gap:8px}.choice{display:flex;align-items:center;gap:5px;padding:9px 12px;border:1px solid #cbd6e0;border-radius:8px;font-size:12px;background:white;cursor:pointer}.choice input{accent-color:#275c82}.choice.selected{background:#ecf4fa;border-color:#6b9cbf;color:#184465;font-weight:600}.choice.disabled{opacity:.65;cursor:default}.control-reason{display:grid;gap:6px;margin-top:12px;font-size:12px;color:#596878}.reason-field{min-height:70px;resize:vertical}.savebar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding-top:20px;margin-top:25px;gap:12px}.savebar>div:first-child{display:grid;gap:5px}.savebar small{color:var(--muted);font-size:12px}.inline-message{min-height:24px;font-size:13px;margin-bottom:12px;color:#23517a}.inline-message.error{color:#a3342b}.inline-message.ok{color:#216b3d}.bars{display:grid;gap:12px;margin-top:20px}.bar-row{display:grid;grid-template-columns:minmax(95px,200px) 1fr 75px;gap:12px;align-items:center;font-size:12px}.track{height:12px;border-radius:6px;background:#eaf0f5;overflow:hidden}.fill{height:100%;background:#7b9dbe;border-radius:6px}.fill.red{background:#ca866d}.bar-row strong{text-align:right;color:#344d63}.table-scroller{overflow:auto}table{width:100%;border-collapse:collapse;min-width:700px;font-size:13px;text-align:left}th{color:#68788b;font-size:12px;background:#f8fafc;padding:13px 11px}td{padding:13px 11px;border-top:1px solid var(--line);color:#445569}td button{white-space:nowrap}.filters{display:flex;flex-wrap:wrap;align-items:end;gap:12px;margin:12px 0 19px}.filters label{min-width:175px}.badge{padding:4px 8px;border-radius:99px;background:#f3f1eb;color:#866320;font-size:11px}.badge.validada{background:#eaf5ec;color:#2b7138}.hidden{display:none!important}@media(max-width:800px){.application{display:block}.sidebar{width:100%;padding:10px;gap:6px}.sidebar-title{font-size:17px}.sidebar-section-label,.sidebar-bottom{display:none}nav{display:flex;flex-wrap:wrap}.nav-link{width:auto;padding:9px;font-size:12px}.topbar{padding:13px 16px;align-items:flex-start;flex-direction:column}.page-section{padding:16px}.page-heading{align-items:flex-start;flex-direction:column}.kpi-grid{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.control-top{display:block}.bar-row{grid-template-columns:85px 1fr 58px}.notice{margin:8px 16px 0}.savebar{align-items:stretch}.panel{padding:17px}.user-actions{flex-wrap:wrap}}
