@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2c55a0e60120577a-s.03ez25a9g3i0n.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.3i9rha7jpxn0q.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/ad66f9afd8947f86-s.2o7ko1d-5m1xu.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5476f68d60460930-s.1ee5w62fj497l.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.1way2z9fj6cig.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/1bffadaabf893a1e-s.0szrwpqb9mkwe.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.45535valc9rzk.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Fallback;src:local(Arial);ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.0%;size-adjust:107.12%}.inter_fe8b9d92-module__LINzvG__className{font-family:Inter,Inter Fallback;font-style:normal}.inter_fe8b9d92-module__LINzvG__variable{--font-inter:"Inter", "Inter Fallback"}
@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5ce348bf30bf5439-s.27spqqad3wyeo.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/4fa387ec64143e14-s.3f4zuumv8svu0.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/6306c77e7c8268e4-s.34r5yzckw0h2s.woff2)format("woff2");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7d817b4c03b0c5f1-s.2jyz_zw3a8jit.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/bbc41e54d2fcbd21-s.30bdpjkrtcces.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/797e433ab948586e-s.p.1v5bejj26fx9h.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Mono Fallback;src:local(Arial);ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.0%;size-adjust:134.59%}.geist_mono_8d43a2aa-module__8Li5zG__className{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}.geist_mono_8d43a2aa-module__8Li5zG__variable{--font-geist-mono:"Geist Mono", "Geist Mono Fallback"}
:root{--bg:#f3f6f5;--panel:#fff;--ink:#17312f;--muted:#687b79;--line:#dce6e4;--brand:#123b37;--brand-2:#23756c;--soft:#eef5f4;--danger:#a63d3d;--warning:#9a6217;--success:#36724f;--radius:15px}*{box-sizing:border-box}html,body{background:var(--bg);min-height:100%;color:var(--ink);font-family:var(--font-inter),Inter,Segoe UI,Arial,sans-serif;margin:0}a{color:inherit;text-decoration:none}button,input{font:inherit}.login-page{background:linear-gradient(145deg,#0d302d,#164d47);place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{background:var(--panel);border-radius:22px;width:min(470px,100%);padding:30px;box-shadow:0 24px 80px #0004}.brand-lockup{align-items:center;gap:11px;display:flex}.brand-lockup strong,.brand-lockup small{display:block}.brand-lockup small{color:var(--muted);margin-top:2px;font-size:11px}.brand-mark{width:42px;height:42px;color:var(--brand);background:#d7efe9;border-radius:12px;place-items:center;font-weight:900;display:grid}.login-card h1{margin:7px 0;font-size:26px}.login-card>p,.page-heading p,.panel p{color:var(--muted);font-size:13px;line-height:1.55}.eyebrow{color:var(--brand-2);text-transform:uppercase;letter-spacing:.08em;margin-top:23px;font-size:10px;font-weight:850;display:block}.form-stack{gap:14px;margin-top:18px;display:grid}.form-stack label{text-transform:uppercase;color:var(--muted);gap:6px;font-size:11px;font-weight:800;display:grid}.form-stack input{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:10px;padding:11px 12px}.button{border:1px solid var(--line);cursor:pointer;border-radius:9px;justify-content:center;align-items:center;padding:9px 13px;font-size:12px;font-weight:800;display:inline-flex}.button.primary{background:var(--brand);border-color:var(--brand);color:#fff}.button.secondary{color:var(--brand);background:#fff}.button.ghost{background:#fff}.button:disabled{opacity:.45;cursor:not-allowed}.message{border-radius:10px;margin-top:14px;padding:11px 13px;font-size:12px;font-weight:700}.message.error{color:var(--danger);background:#fae8e8}.message.success{color:var(--success);background:#e5f3ea}.setup-panel{border-top:1px solid var(--line);margin-top:20px;padding-top:15px}.setup-panel summary{color:var(--brand-2);cursor:pointer;font-size:12px;font-weight:800}.setup-panel p{color:var(--muted);font-size:11px}.app-shell{grid-template-columns:260px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{background:var(--brand);color:#fff;flex-direction:column;height:100vh;padding:17px 14px;display:flex;position:sticky;top:0;overflow:hidden}.sidebar-brand{padding:4px 7px 17px}.sidebar-brand small{color:#b8cfcb}.navigation{flex:1;padding-right:3px;overflow:auto}.navigation details{margin:4px 0}.navigation summary{cursor:pointer;color:#b9d0cc;text-transform:uppercase;letter-spacing:.07em;padding:9px 10px;font-size:10px;font-weight:900;list-style:none}.navigation summary::-webkit-details-marker{display:none}.navigation a{color:#dce9e7;border-radius:9px;align-items:center;gap:9px;margin:2px 0;padding:9px 11px;font-size:12px;display:flex}.navigation a:hover{color:#fff;background:#ffffff15}.sidebar-footer{border-top:1px solid #fff2;padding:11px 7px 2px;font-size:10px}.sidebar-footer dl{margin:0}.sidebar-footer dl div{justify-content:space-between;gap:9px;margin:5px 0;display:flex}.sidebar-footer dt{opacity:.72}.sidebar-footer dd{text-align:right;white-space:nowrap;text-overflow:ellipsis;max-width:145px;margin:0;overflow:hidden}.active-state{color:#bff0d1}.blocked-state{color:#ffd5d5}.footer-actions{grid-template-columns:1fr 1fr;gap:6px;margin-top:10px;display:grid}.footer-actions a{text-align:center;background:#ffffff10;border:1px solid #ffffff2c;border-radius:8px;padding:7px 5px;font-weight:800}.main-area{min-width:0}.topbar{z-index:10;border-bottom:1px solid var(--line);background:#fff;justify-content:space-between;align-items:center;height:66px;padding:0 24px;display:flex;position:sticky;top:0}.topbar>div{align-items:center;gap:11px;font-size:11px;display:flex}.topbar form{display:inline-flex}.page-content{max-width:1500px;margin:auto;padding:24px}.page-heading{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:17px;display:flex}.page-heading .eyebrow,.panel .eyebrow{margin-top:0}.page-heading h1,.panel h1{margin:6px 0;font-size:25px}.stat-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:11px;display:grid}.stat-card,.panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:16px}.stat-card{min-height:122px;transition:all .15s;position:relative}.stat-card:hover{border-color:#c5d9d5;transform:translateY(-2px);box-shadow:0 9px 24px #163f3910}.stat-card small{color:var(--muted);text-transform:uppercase;max-width:80%;font-size:10px;font-weight:800;display:block}.stat-card strong{margin-top:14px;font-size:28px;display:block}.stat-card em{color:var(--muted);margin-top:2px;font-size:10px;font-style:normal;display:block}.stat-icon{background:var(--soft);border-radius:9px;place-items:center;width:32px;height:32px;display:grid;position:absolute;top:12px;right:13px}.dashboard-panels{grid-template-columns:1.2fr 1fr;gap:13px;margin-top:14px;display:grid}.panel h2{margin:7px 0;font-size:17px}.panel>a{color:var(--brand-2);font-size:12px;font-weight:800}.table-wrap{padding:0;overflow:auto}table{border-collapse:collapse;width:100%;min-width:760px}th,td{text-align:left;vertical-align:top;border-bottom:1px solid #ebf0ef;padding:12px;font-size:12px}th{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);background:#fbfcfc;font-size:9px}td{text-transform:none}.empty-state{text-align:center;padding:42px}.loading-card{align-items:center;gap:10px;display:flex}.spinner{border:2px solid var(--line);border-top-color:var(--brand-2);border-radius:50%;width:18px;height:18px;animation:.8s linear infinite spin}.standalone-message{place-items:center;min-height:100vh;padding:20px;display:grid}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width:1200px){.stat-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:860px){.app-shell{grid-template-columns:1fr}.sidebar{height:auto;position:relative}.navigation{max-height:44vh}.dashboard-panels{grid-template-columns:1fr}.topbar{position:relative}}@media (max-width:620px){.page-content{padding:15px}.stat-grid{grid-template-columns:1fr}.page-heading{display:block}.page-heading>.button{margin-top:10px}.topbar{padding:0 15px}.topbar>div>span{display:none}}.skip-link{z-index:100;color:var(--brand);background:#fff;border-radius:8px;padding:9px 12px;font-size:12px;font-weight:800;position:fixed;top:10px;left:12px;transform:translateY(-150%);box-shadow:0 8px 24px #0003}.skip-link:focus{transform:translateY(0)}:where(a,button,input,select,textarea,summary):focus-visible{outline:3px solid color-mix(in srgb,var(--brand-2) 55%,white);outline-offset:2px}.mobile-menu-button,.mobile-menu-close,.sidebar-overlay{display:none}.topbar-title{align-items:center;gap:11px;display:flex}.login-loading-overlay{z-index:200;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#082824d9;place-items:center;padding:22px;display:grid;position:fixed;inset:0}.login-loading-panel{width:min(390px,100%);color:var(--ink);text-align:center;background:#fff;border:1px solid #ffffff2e;border-radius:18px;justify-items:center;gap:10px;padding:28px;display:grid;box-shadow:0 24px 80px #0007}.login-loading-spinner{border-width:3px;width:34px;height:34px}.login-loading-panel strong{font-size:18px}.login-loading-panel p{color:var(--muted);margin:0;font-size:12px}.login-loading-panel small{color:var(--muted);font-size:10px;font-weight:700}.login-progress-track{background:#dce8e6;border-radius:999px;width:100%;height:8px;overflow:hidden}.login-progress-bar{border-radius:inherit;background:linear-gradient(90deg,var(--brand),var(--brand-2));width:8%;height:100%;animation:3s cubic-bezier(.2,.7,.25,1) forwards login-progress;display:block}@keyframes login-progress{0%{width:8%}60%{width:72%}to{width:100%}}@media (prefers-reduced-motion:reduce){.login-progress-bar,.spinner{animation-duration:.01ms!important;animation-iteration-count:1!important}}.mfa-card{width:min(540px,100%)}.mfa-flow{gap:14px;margin-top:18px;display:grid}.mfa-user{border:1px solid var(--line);background:#f8fbfa;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;font-size:12px;display:flex}.mfa-user span{color:var(--muted);text-align:right;font-size:10px}.mfa-status{border:1px solid var(--line);color:var(--muted);border-radius:12px;align-items:center;gap:9px;margin-top:18px;padding:13px;font-size:12px;display:flex}.mfa-enroll-intro{gap:12px;display:grid}.mfa-enroll-intro p{color:var(--muted);margin:0;font-size:12px;line-height:1.55}.mfa-enrollment{border:1px solid var(--line);background:#fbfdfc;border-radius:14px;justify-items:center;gap:12px;padding:14px;display:grid}.mfa-qr-wrap{border:1px solid var(--line);background:#fff;border-radius:12px;place-items:center;padding:10px;display:grid}.mfa-qr{width:190px;max-width:100%;height:190px;display:block}.mfa-secret{width:100%;color:var(--muted);gap:7px;font-size:10px;display:grid}.mfa-secret code{overflow-wrap:anywhere;color:var(--ink);background:#eef5f4;border-radius:8px;padding:9px 10px;font-size:11px}.mfa-code-form{margin-top:0}.mfa-code-form input{letter-spacing:.25em;text-align:center;font-size:22px;font-weight:850}.mfa-signout{border-top:1px solid var(--line);justify-content:center;margin-top:14px;padding-top:14px;display:flex}button,input,select,textarea{font:inherit}a,button,input,select,textarea,summary{outline-offset:3px}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid color-mix(in srgb,var(--brand-2) 34%,transparent);outline-offset:2px}input:focus,select:focus,textarea:focus{border-color:color-mix(in srgb,var(--brand-2) 64%,var(--line));box-shadow:0 0 0 3px color-mix(in srgb,var(--brand-2) 10%,transparent)}.button{transition:transform .12s,box-shadow .12s,background .12s,border-color .12s}.button:not(:disabled):active{transform:translateY(1px)}.message:not(.error):not(.success){color:#42645f;background:#eef5f4;border:1px solid #dbe8e5}.table-empty{color:var(--muted);text-align:center;padding:34px 18px!important}.login-card{border:1px solid #ffffff2e}.login-card .brand-lockup strong{letter-spacing:.015em}.login-card .brand-lockup small{font-size:10.5px}.help-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin-bottom:14px;display:grid}.help-card{grid-template-columns:42px minmax(0,1fr);align-items:start;gap:13px;min-height:170px;display:grid}.help-card .eyebrow,.help-quick-actions .eyebrow{margin-top:0}.help-card h2,.help-quick-actions h2{margin:6px 0;font-size:17px}.help-card p,.help-quick-actions p{color:var(--muted);margin:0;font-size:11px;line-height:1.6}.help-card p strong{color:var(--ink)}.help-icon{background:var(--soft);width:42px;height:42px;color:var(--brand);border-radius:11px;place-items:center;display:grid}.help-quick-actions{grid-template-columns:minmax(220px,.7fr) minmax(0,1.3fr);align-items:center;gap:20px;display:grid}.help-action-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.help-action-grid>a{border:1px solid var(--line);min-height:66px;color:var(--ink);background:#fbfcfc;border-radius:11px;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:10px;padding:11px 12px;transition:border-color .14s,background .14s,transform .14s;display:grid}.help-action-grid>a:hover{background:#f5f9f8;border-color:#c9dcd8;transform:translateY(-1px)}.help-action-grid svg{color:var(--brand-2)}.help-action-grid strong,.help-action-grid small{display:block}.help-action-grid strong{font-size:12px}.help-action-grid small{color:var(--muted);margin-top:2px;font-size:9.5px}@media (max-width:900px){.help-grid{grid-template-columns:1fr}.help-card{min-height:0}.help-quick-actions{grid-template-columns:1fr}}@media (max-width:620px){.login-page{padding:16px}.login-card{border-radius:18px;padding:24px 20px}.help-action-grid{grid-template-columns:1fr}}
.navigation{overscroll-behavior:contain;scrollbar-width:none;overflow-y:auto}.navigation::-webkit-scrollbar{display:none}.nav-group{margin:3px 0}.nav-group-trigger{color:#b9d0cc;cursor:pointer;width:100%;font:inherit;text-align:left;text-transform:uppercase;letter-spacing:.07em;background:0 0;border:0;justify-content:space-between;align-items:center;padding:9px 10px;font-size:10px;font-weight:900;display:flex}.nav-chevron{font-size:14px;line-height:1;transition:transform .15s}.nav-group-trigger[aria-expanded=true] .nav-chevron{transform:rotate(180deg)}.nav-group-links{padding:1px 0 5px}.navigation a.active{color:var(--brand);background:#d7efe9;font-weight:800}.nav-icon{text-align:center;width:18px}.dashboard-stat-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.dashboard-stat-grid .stat-card{min-height:128px}.dashboard-stat-grid .stat-card small{max-width:75%}.dashboard-stat-grid .stat-card strong{margin-top:15px;font-size:30px}.tone-danger .stat-icon{color:var(--danger);background:#f9e8e8}.tone-warning .stat-icon{color:var(--warning);background:#fbf0df}.tone-info .stat-icon{color:#366580;background:#e7f0f7}.tone-success .stat-icon{color:var(--success);background:#e5f3ea}.focus-panel{min-height:150px}@media (max-width:1200px){.dashboard-stat-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:860px){.app-shell{grid-template-columns:1fr}.sidebar{z-index:50;width:min(320px,88vw);height:100dvh;transition:transform .2s;position:fixed;inset:0 auto 0 0;transform:translate(-105%);box-shadow:18px 0 42px #071b1845}.mobile-nav-open .sidebar{transform:translate(0)}.mobile-menu-button{border:1px solid var(--line);min-height:40px;color:var(--brand);font:inherit;background:#fff;border-radius:9px;align-items:center;gap:7px;padding:7px 10px;font-size:11px;font-weight:800;display:inline-flex}.mobile-menu-close{z-index:2;color:#fff;background:#ffffff12;border:1px solid #ffffff38;border-radius:9px;place-items:center;width:36px;height:36px;font-size:24px;line-height:1;display:grid;position:absolute;top:10px;right:10px}.sidebar-overlay{z-index:45;opacity:0;pointer-events:none;background:#071b1870;border:0;transition:opacity .2s;display:block;position:fixed;inset:0}.mobile-nav-open .sidebar-overlay{opacity:1;pointer-events:auto}.navigation{max-height:none;overflow-y:auto}.topbar{position:sticky}}@media (max-width:620px){.dashboard-stat-grid{grid-template-columns:1fr}.topbar-title>strong{display:none}.topbar{height:60px}.button{min-height:40px}}
.management-kpis{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:14px;display:grid}.management-kpi{border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);min-height:125px;padding:17px;position:relative;overflow:hidden}.management-kpi:before{content:"";background:var(--brand-2);width:4px;position:absolute;inset:0 auto 0 0}.management-kpi.critical:before{background:var(--danger)}.management-kpi.high:before{background:var(--warning)}.management-kpi.medium:before{background:#4a7895}.management-kpi.success:before{background:var(--success)}.management-kpi small,.management-kpi span{color:var(--muted);font-size:10px;display:block}.management-kpi small{text-transform:uppercase;letter-spacing:.05em;font-weight:850}.management-kpi strong{margin:10px 0 3px;font-size:28px;display:block}.filter-bar{align-items:end;gap:10px;margin:14px 0;padding:12px;display:flex}.filter-bar label,.report-builder label,.approval-form label{color:var(--muted);text-transform:uppercase;gap:5px;font-size:10px;font-weight:800;display:grid}.filter-bar select,.filter-bar input,.report-builder select,.report-builder input,.approval-form textarea{border:1px solid var(--line);min-height:38px;color:var(--ink);font:inherit;background:#fff;border-radius:8px;padding:8px 10px}.management-table-wrap{padding:0;overflow-x:auto}.management-table{min-width:850px}.management-table td{vertical-align:middle}.status-badge{white-space:nowrap;border-radius:999px;padding:5px 8px;font-size:9px;font-weight:850;display:inline-flex}.status-badge.critical,.status-badge.rechazado{color:var(--danger);background:#fae8e8}.status-badge.high,.status-badge.pendiente{color:var(--warning);background:#fbf0df}.status-badge.medium{color:#366580;background:#e7f0f7}.status-badge.aprobado{color:var(--success);background:#e5f3ea}.status-badge.cancelado,.status-badge.borrador{color:var(--muted);background:#edf0ef}.status-badge.en_revision{color:#366580;background:#e7f0f7}.cell-note{color:var(--muted);margin-top:3px;font-size:9px;display:block}.table-link{color:var(--brand-2);white-space:nowrap;font-size:11px;font-weight:800}.table-empty{color:var(--muted);text-align:center;padding:36px}.button.compact{white-space:nowrap;padding:6px 8px;font-size:10px}.approval-list{gap:12px;display:grid}.approval-card{grid-template-columns:minmax(0,1fr) minmax(280px,390px);gap:20px;display:grid}.approval-card h2{margin:9px 0 4px;font-size:17px}.approval-card p{margin:4px 0 9px}.approval-meta{color:var(--muted);align-items:center;gap:9px;font-size:10px;display:flex}.decision-note{border-left:3px solid var(--line);background:var(--soft);padding:8px 10px}.approval-form{border-left:1px solid var(--line);gap:9px;padding-left:18px;display:grid}.approval-form textarea{resize:vertical;text-transform:none}.approval-form>div{justify-content:flex-end;gap:7px;display:flex}.button.approve{color:var(--success);background:#e5f3ea;border-color:#c7dfd1}.button.reject{color:var(--danger);background:#fae8e8;border-color:#edcccc}.report-builder{grid-template-columns:minmax(250px,1.5fr) repeat(3,minmax(145px,.7fr));align-items:end;gap:14px;margin-bottom:14px;display:grid}.report-builder h2{margin:6px 0}.report-builder p{margin:0}.report-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.report-card{min-height:180px}.report-card h2{font-size:16px}.report-card>small{color:var(--brand-2);font-size:10px;font-weight:800}.report-card-top{justify-content:space-between;align-items:center;display:flex}.report-card-top strong{font-size:22px}.report-icon{background:var(--soft);width:34px;height:34px;color:var(--brand-2);border-radius:9px;place-items:center;display:grid}.report-note{margin-top:14px}.report-note p{margin-bottom:0}@media (max-width:1050px){.report-builder{grid-template-columns:1fr 1fr}.report-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:760px){.management-kpis,.report-grid{grid-template-columns:1fr}.filter-bar{flex-direction:column;align-items:stretch}.approval-card{grid-template-columns:1fr}.approval-form{border-top:1px solid var(--line);border-left:0;padding:14px 0 0}.report-builder{grid-template-columns:1fr}}.audit-change-list{gap:.65rem;min-width:min(32rem,75vw);margin:.75rem 0 0;display:grid}.audit-change-list>div{border-top:1px solid var(--line);padding-top:.55rem}.audit-change-list dt{color:var(--muted);text-transform:capitalize;font-size:.75rem;font-weight:700}.audit-change-list dd{overflow-wrap:anywhere;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:.45rem;margin:.25rem 0 0;display:grid}
.security-kpis{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:14px;display:grid}.security-kpi{border:1px solid var(--line);border-left:4px solid var(--brand-2);border-radius:var(--radius);background:var(--panel);min-height:92px;padding:15px 17px}.security-kpi small{color:var(--muted);text-transform:uppercase;font-size:10px;font-weight:850;display:block}.security-kpi strong{margin-top:9px;font-size:25px;display:block}.health-kpi{border-left-color:#268783}.environment-kpi{border-left-color:#4f8550}.compliance-kpi{border-left-color:#725e99}.health-confidentiality{border-left:4px solid #268783}.health-confidentiality p{margin-bottom:0}.environment-guidance{border-left:4px solid #4f8550}.compliance-guidance{border-left:4px solid #725e99}.compliance-table{min-width:1180px}.compliance-entry-form{width:430px;max-height:min(690px,100vh - 90px);overflow-y:auto}.compliance-admin-form{width:360px}.compliance-subform{border:1px solid var(--line);border-radius:10px;gap:9px;padding:12px;display:grid}.compliance-subform+.compliance-subform{margin-top:10px}.compliance-subform>small{color:var(--muted);line-height:1.45}.danger-zone{background:snow;border-color:#edcccc}.archived-row{opacity:.7;background:#f7f8f8}.security-form{margin:14px 0}.security-form-heading{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:16px;display:flex}.security-form-heading h2{margin-bottom:0}.security-form-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;display:grid}.security-form-grid label,.row-entry-form label{color:var(--muted);text-transform:uppercase;gap:6px;font-size:10px;font-weight:800;display:grid}.security-form-grid label.wide{grid-column:1/-1}.security-form-grid input,.security-form-grid select,.security-form-grid textarea,.row-entry-form input,.row-entry-form select,.row-entry-form textarea{border:1px solid var(--line);width:100%;min-height:40px;color:var(--ink);font:inherit;text-transform:none;background:#fff;border-radius:9px;padding:9px 10px}.security-form-grid textarea,.row-entry-form textarea{resize:vertical;min-height:92px}.security-check{border:1px solid var(--line);background:var(--soft);border-radius:9px;align-self:end;align-items:center;min-height:40px;padding:9px 11px;display:flex!important}.security-check input{width:auto;min-height:0;margin:0 8px 0 0}.security-form-actions{border-top:1px solid var(--line);justify-content:flex-end;margin-top:16px;padding-top:14px;display:flex}.evidence-field{gap:7px;min-width:0;display:grid;position:relative}.evidence-field.wide{grid-column:1/-1}.evidence-field>label{color:var(--muted);text-transform:uppercase;font-size:10px;font-weight:800}.evidence-upload-box{background:#f8fbfa;border:1px dashed #afc7c2;border-radius:10px;align-items:center;gap:10px;min-height:54px;padding:9px;display:flex}.evidence-upload-box>input[type=file]{background:0 0;border:0;width:min(210px,42%);min-height:34px;padding:5px;font-size:10px}.evidence-upload-status{text-transform:none;flex:1;min-width:0;display:grid}.evidence-upload-status strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.evidence-upload-status small,.field-success,.field-error{text-transform:none;font-size:9px;font-weight:700}.evidence-upload-status small{color:var(--muted)}.field-success{color:var(--success)}.field-error{color:var(--danger);display:block}.evidence-link-wrap{gap:4px;display:grid}.security-table-wrap{overscroll-behavior-inline:contain;scrollbar-width:none;padding:0;overflow-x:auto}.security-table-wrap::-webkit-scrollbar{display:none}.security-table{min-width:1080px}.security-table td{vertical-align:middle}.record-tools{align-items:center;gap:9px;min-width:160px;display:flex}.record-tools form{margin:0}.link-button{color:var(--brand-2);cursor:pointer;white-space:nowrap;background:0 0;border:0;padding:0;font-size:10px;font-weight:800}.row-details{position:relative}.row-details>summary{color:var(--brand-2);cursor:pointer;white-space:nowrap;font-size:10px;font-weight:800}.row-entry-form{z-index:20;border:1px solid var(--line);background:#fff;border-radius:12px;gap:9px;width:340px;padding:14px;display:grid;position:absolute;top:25px;right:0;box-shadow:0 16px 42px #17312f25}.row-entry-form fieldset{border:1px solid var(--line);border-radius:9px;grid-template-columns:1fr 1fr;gap:7px;margin:0;padding:10px;display:grid}.row-entry-form fieldset legend{color:var(--muted);text-transform:uppercase;font-size:9px;font-weight:850}.row-entry-form fieldset label{color:var(--ink);text-transform:none;align-items:center;gap:6px;font-size:10px;font-weight:650;display:flex}.row-entry-form fieldset input{width:auto;min-height:0}.process-note{margin-top:14px}.process-note p{margin-bottom:0}.process-note a{color:var(--brand-2);font-weight:800}.status-badge.alto,.status-badge.fuera_servicio,.status-badge.requiere_atencion{color:var(--danger);background:#fae8e8}.status-badge.critico{color:#fff;background:#8f2e2e}.status-badge.medio,.status-badge.en_proceso,.status-badge.en_tratamiento,.status-badge.activo{color:var(--warning);background:#fbf0df}.status-badge.bajo,.status-badge.controlado,.status-badge.operativo,.status-badge.cerrado,.status-badge.cerrada,.status-badge.entregado{color:var(--success);background:#e5f3ea}.status-badge.abierto,.status-badge.abierta,.status-badge.investigacion,.status-badge.acciones_abiertas,.status-badge.reemplazo_programado{color:#366580;background:#e7f0f7}.status-badge.vigente,.status-badge.apto,.status-badge.cumple{color:var(--success);background:#e5f3ea}.status-badge.seguimiento,.status-badge.pendiente,.status-badge.apto_con_restricciones,.status-badge.por_vencer{color:var(--warning);background:#fbf0df}.status-badge.vencido,.status-badge.no_apto_temporal,.status-badge.no_apto,.status-badge.no_cumple,.status-badge.peligroso,.status-badge.por_evaluar{color:var(--danger);background:#fae8e8}.status-badge.no_peligroso,.status-badge.notificado,.status-badge.valorizado,.status-badge.dispuesto,.status-badge.retirado{color:var(--success);background:#e5f3ea}.status-badge.almacenado,.status-badge.retiro_programado,.status-badge.en_control,.status-badge.no_aplica{color:#366580;background:#e7f0f7}.status-badge.en_seguimiento,.status-badge.en_renovacion,.status-badge.programada{color:var(--warning);background:#fbf0df}.status-badge.por_evaluar,.status-badge.cancelado,.status-badge.cancelada{color:var(--muted);background:#edf0ef}.status-badge.regulatoria{color:#6a4b8a;background:#eee7f7}.status-badge.cumplida,.status-badge.cerrada{color:var(--success);background:#e5f3ea}.status-badge.vencida,.status-badge.vencido{color:var(--danger);background:#fae8e8}@media (max-width:1050px){.security-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:760px){.security-kpis,.security-form-grid{grid-template-columns:1fr}.security-form-grid label.wide{grid-column:auto}.security-form-heading{flex-direction:column;align-items:stretch}.record-tools{flex-direction:column;align-items:flex-start}.row-entry-form{width:auto;max-height:calc(100vh - 24px);position:fixed;inset:12px;overflow:auto}.evidence-upload-box{flex-direction:column;align-items:stretch}.evidence-upload-box>input[type=file]{width:100%}}.process-tools>summary{font-weight:700}.process-tools-body{gap:.8rem;min-width:min(520px,76vw);padding-top:.7rem;display:grid}.process-gate-summary{border:1px solid var(--border,#dbe3ea);background:#f8fafcbf;border-radius:12px;flex-wrap:wrap;align-items:center;gap:.55rem;padding:.7rem;display:flex}.process-gate-summary>div{gap:.25rem;margin-right:auto;display:grid}.process-metric{gap:.15rem;min-width:86px;display:grid}.process-metric small,.process-gate-summary small{opacity:.72;font-size:.72rem}.process-metric strong{font-size:.9rem}.process-inline-form{align-items:center;gap:.5rem;display:flex}.process-subtool{margin-top:.15rem}.process-timeline{gap:.55rem;margin:.35rem 0 0;padding:0;list-style:none;display:grid}.process-timeline li{background:#f8fafca6;border-left:3px solid;border-radius:0 8px 8px 0;padding:.35rem .6rem}.process-timeline li>div{justify-content:space-between;gap:1rem;display:flex}.process-timeline li small{opacity:.68;white-space:nowrap}.process-timeline li span,.process-timeline li p{margin:.2rem 0 0;font-size:.8rem}.finding-list{gap:.6rem;display:grid}.finding-card{border:1px solid var(--border,#dbe3ea);background:#ffffffb8;border-radius:12px;gap:.35rem;padding:.7rem;display:grid}.finding-heading{justify-content:space-between;align-items:flex-start;gap:.7rem;display:flex}.finding-card p{margin:0;font-size:.82rem}@media (max-width:760px){.process-tools-body{min-width:min(86vw,520px)}.process-timeline li>div{gap:.15rem;display:grid}}.module-modal-backdrop{z-index:260;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0d29256b;place-items:center;padding:22px;display:grid;position:fixed;inset:0}.module-modal{background:#fff;border:1px solid #dce9e6;border-radius:20px;outline:none;width:min(900px,100%);max-height:min(92vh,900px);position:relative;overflow:hidden;box-shadow:0 30px 90px #0a26223d}.extinguisher-record-modal{width:min(980px,100%)}.extinguisher-inspection-modal{width:min(860px,100%)}.module-modal-close{z-index:3;color:#647572;cursor:pointer;background:#fff;border:1px solid #dfe9e7;border-radius:10px;place-items:center;width:36px;height:36px;display:grid;position:absolute;top:18px;right:18px}.module-modal-close:hover{color:#214944;background:#f4f8f7}.module-modal-form{flex-direction:column;max-height:min(92vh,900px);display:flex}.module-modal-header{border-bottom:1px solid var(--line);background:linear-gradient(135deg,#fff 0%,#f7fbfa 100%);flex:none;padding:23px 66px 16px 24px}.module-modal-header .eyebrow{margin:0}.module-modal-header h2{margin:5px 0 4px;font-size:22px}.module-modal-header p{color:var(--muted);margin:0;font-size:11px;line-height:1.5}.module-modal-body{min-height:0;padding:20px 24px;overflow-y:auto}.module-modal-actions{border-top:1px solid var(--line);background:#fbfcfc;flex:none;justify-content:flex-end;gap:9px;padding:14px 24px 20px;display:flex}.extinguisher-record-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.extinguisher-inspection-body{gap:18px;display:grid}.extinguisher-inspection-meta,.extinguisher-inspection-footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;display:grid}.extinguisher-inspection-meta label,.extinguisher-inspection-footer-grid label{color:var(--muted);text-transform:uppercase;gap:6px;font-size:10px;font-weight:800;display:grid}.extinguisher-inspection-meta input,.extinguisher-inspection-footer-grid select,.extinguisher-inspection-footer-grid textarea{border:1px solid var(--line);width:100%;min-height:42px;color:var(--ink);font:inherit;text-transform:none;background:#fff;border-radius:10px;padding:9px 11px}.extinguisher-inspection-footer-grid textarea{resize:vertical;min-height:96px}.extinguisher-inspection-footer-grid .wide{grid-column:1/-1}.extinguisher-condition-fieldset{background:#f8fbfa;border:1px solid #dce9e6;border-radius:14px;margin:0;padding:15px}.extinguisher-condition-fieldset legend{color:#5c7772;letter-spacing:.035em;text-transform:uppercase;padding:0 7px;font-size:10px;font-weight:850}.extinguisher-condition-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;display:grid}.extinguisher-condition-grid label{cursor:pointer;background:#fff;border:1px solid #e1ecea;border-radius:11px;grid-template-columns:20px minmax(0,1fr);align-items:start;gap:10px;min-width:0;padding:11px;display:grid}.extinguisher-condition-grid input{accent-color:#159e96;width:17px;height:17px;margin:2px 0 0}.extinguisher-condition-grid span,.extinguisher-condition-grid strong,.extinguisher-condition-grid small{min-width:0;display:block}.extinguisher-condition-grid strong{color:var(--ink);font-size:11px}.extinguisher-condition-grid small{color:var(--muted);margin-top:3px;font-size:9px;line-height:1.4}@media (max-width:760px){.module-modal-backdrop{align-items:end;padding:10px}.module-modal{border-radius:17px;width:100%;max-height:94vh}.module-modal-form{max-height:94vh}.module-modal-header{padding:19px 58px 14px 17px}.module-modal-body{padding:16px 17px}.module-modal-actions{padding:12px 17px 17px}.extinguisher-record-grid,.extinguisher-inspection-meta,.extinguisher-inspection-footer-grid,.extinguisher-condition-grid{grid-template-columns:1fr}.extinguisher-inspection-footer-grid .wide{grid-column:auto}}.module-record-modal{width:min(980px,100%)}.process-modal{width:min(860px,100%)}.process-summary-modal{width:min(940px,100%)}.process-modal-body{gap:16px;display:grid}.process-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.process-tool-links{flex-wrap:wrap;align-items:center;gap:8px 11px;min-width:230px;display:flex}.process-tool-links .table-link,.process-tool-links .link-button{white-space:nowrap;font-size:10px;font-weight:800}.process-tool-links .process-inline-form{margin:0}.process-summary-modal .finding-card .button{justify-self:start;margin-top:4px}.empty-state.compact{border:1px dashed var(--line);background:#fbfcfc;border-radius:12px;padding:18px}.empty-state.compact p{margin:5px 0 0}@media (max-width:760px){.process-form-grid{grid-template-columns:1fr}.process-form-grid label.wide{grid-column:auto}.process-tool-links{flex-direction:column;align-items:flex-start;min-width:180px}}.compliance-process-modal{width:min(980px,100%)}.compliance-modal-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.module-modal .compliance-entry-form,.module-modal .compliance-admin-form{width:auto;max-height:none;overflow:visible}.module-modal .compliance-subform{min-width:0}.modal-admin-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.attendance-modal{width:min(1040px,100%)}.danger-link{color:#a52b2b!important}@media (max-width:760px){.compliance-modal-grid,.modal-admin-grid{grid-template-columns:1fr}}
.admin-kpi{border-left-color:#526b8a}.admin-kpi-text{text-overflow:ellipsis;white-space:nowrap;overflow:hidden;font-size:18px!important}.admin-table{min-width:1180px}.admin-guidance{border-left:4px solid #526b8a}.filter-bar input,.admin-inline-form input,.admin-inline-form select,.admin-inline-form textarea,.admin-user-card input,.admin-user-card select,.invitation-result input{border:1px solid var(--line);width:100%;min-height:38px;color:var(--ink);font:inherit;background:#fff;border-radius:8px;padding:8px 10px}.invitation-result{border-left:4px solid var(--success);margin:14px 0}.invitation-result h2{margin-bottom:4px}.invitation-result label{color:var(--muted);text-transform:uppercase;gap:6px;font-size:10px;font-weight:800;display:grid}.invitation-result input{color:var(--brand);font-family:var(--font-geist-mono), monospace;text-transform:none}.admin-user-grid,.client-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:14px 0;display:grid}.admin-user-card{align-content:start;gap:11px;display:grid}.permission-button{border-color:color-mix(in srgb, var(--brand-2) 40%, var(--line));background:var(--soft);color:var(--brand);text-align:center}.user-permission-editor{border-left:4px solid var(--brand-2);margin:14px 0}.permission-group-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:14px;display:grid}.permission-group{border:1px solid var(--line);background:#fbfcfc;border-radius:11px;min-width:0;margin:0;padding:12px}.permission-group legend{color:var(--brand);padding:0 5px;font-size:11px;font-weight:850}.permission-option{border-bottom:1px solid var(--line);cursor:pointer;grid-template-columns:18px minmax(0,1fr);gap:9px;padding:10px 0;display:grid}.permission-option:last-child{border-bottom:0}.permission-option input{width:17px;height:17px;accent-color:var(--brand-2);margin:2px 0 0}.permission-option strong,.permission-option small{display:block}.permission-option strong{color:var(--ink);font-size:11px;line-height:1.35}.permission-option small{color:var(--muted);margin-top:4px;font-size:9px;line-height:1.45}.permission-safeguard{color:var(--warning);background:#fff5e7;border-radius:9px;margin-top:12px;padding:11px 12px}.permission-safeguard strong{font-size:11px}.permission-safeguard p{margin:4px 0 0;font-size:10px;line-height:1.45}.admin-user-card>label,.admin-inline-form label{color:var(--muted);text-transform:uppercase;gap:5px;font-size:10px;font-weight:800;display:grid}.admin-card-heading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.admin-card-heading strong,.admin-card-heading small{display:block}.admin-card-heading small{color:var(--muted);margin-top:4px;font-size:10px}.admin-section{margin-top:14px}.admin-fieldset{border:0;min-width:0;margin:0;padding:0}.admin-fieldset:disabled{opacity:.78}.admin-catalog-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.admin-inline-form{gap:9px;display:grid}.admin-inline-form textarea{resize:vertical;text-transform:none;min-height:80px}.admin-catalog-list{gap:8px;margin-top:14px;display:grid}.admin-catalog-list>details{border:1px solid var(--line);background:#fbfcfc;border-radius:10px}.admin-catalog-list>details>summary{cursor:pointer;justify-content:space-between;align-items:center;gap:10px;padding:11px;display:flex}.admin-catalog-list summary span>small{color:var(--muted);margin-top:3px;font-size:9px;display:block}.admin-catalog-actions{gap:10px;padding:0 11px 11px;display:grid}.client-card{align-content:start;gap:12px;display:grid}.client-card dl{grid-template-columns:1fr 1fr;gap:8px;margin:0;display:grid}.client-card dl div{background:var(--soft);border-radius:8px;padding:9px}.client-card dt{color:var(--muted);text-transform:uppercase;font-size:9px;font-weight:800}.client-card dd{margin:5px 0 0;font-size:15px;font-weight:850}.client-controls{border-top:1px solid var(--line);padding-top:10px}.client-controls summary{color:var(--brand-2);cursor:pointer;font-size:11px;font-weight:800}.client-controls form{margin-top:10px}.invite-card{width:min(520px,100%)}.invite-summary{background:var(--soft);border-radius:11px;gap:7px;margin:16px 0;padding:13px;display:grid}.invite-summary div{justify-content:space-between;gap:14px;display:flex}.invite-summary dt{color:var(--muted);text-transform:uppercase;font-size:10px;font-weight:800}.invite-summary dd{text-align:right;margin:0;font-size:11px;font-weight:750}.invite-note{margin:15px 0 0;font-size:10px!important}.password-help{color:var(--muted);font-size:10px;line-height:1.45;display:block}.role-summary-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin:14px 0;display:grid}.role-summary-card{min-height:180px}.role-summary-card.current{border-color:var(--brand-2);box-shadow:0 0 0 2px color-mix(in srgb, var(--brand-2) 16%, transparent)}.role-summary-heading{justify-content:space-between;align-items:center;gap:8px;display:flex}.role-avatar{background:var(--soft);width:34px;height:34px;color:var(--brand);border-radius:10px;place-items:center;font-size:14px;font-weight:900;display:grid}.role-summary-card h2{margin:14px 0 7px;font-size:16px}.role-summary-card p{color:var(--muted);margin:0;font-size:11px;line-height:1.55}.role-matrix-section{margin-top:14px}.role-permission-legend{flex-wrap:wrap;justify-content:flex-end;gap:7px;display:flex}.role-matrix-wrap{scrollbar-width:none;margin-top:14px;overflow-x:auto}.role-matrix-wrap::-webkit-scrollbar{display:none}.role-matrix-table{border-collapse:separate;border-spacing:0;width:100%;min-width:940px}.role-matrix-table th,.role-matrix-table td{border-bottom:1px solid var(--line);text-align:center;vertical-align:middle;padding:11px 9px}.role-matrix-table thead th{color:var(--muted);text-transform:uppercase;font-size:9px;font-weight:850;line-height:1.35}.role-matrix-table thead th:first-child,.role-matrix-table tbody th{text-align:left;width:240px}.role-matrix-table tbody th{color:var(--ink);font-size:11px;line-height:1.35}.role-matrix-table tbody th small{color:var(--brand-2);letter-spacing:.06em;text-transform:uppercase;margin-bottom:3px;font-size:8px;font-weight:850;display:block}.role-matrix-table tbody tr:last-child th,.role-matrix-table tbody tr:last-child td{border-bottom:0}.role-matrix-table .current-role-column{background:color-mix(in srgb, var(--soft) 55%, transparent)}.role-permission-badge{white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;gap:5px;min-height:27px;padding:5px 8px;font-size:9px;font-weight:850;display:inline-flex}.role-permission-badge.allowed{color:var(--success);background:#e5f3ea}.role-permission-badge.limited{color:var(--warning);background:#fff1d9}.role-permission-badge.denied{color:var(--muted);background:#eef1f1}.role-control-note small{color:var(--muted);margin-top:7px;font-size:10px;line-height:1.5;display:block}@media (max-width:1120px){.admin-user-grid,.client-grid,.permission-group-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.role-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:760px){.admin-user-grid,.client-grid,.admin-catalog-grid,.role-summary-grid,.permission-group-grid{grid-template-columns:1fr}.role-summary-card{min-height:0}.role-permission-legend{justify-content:flex-start}}.compact-role-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.role-summary-card.compact{flex-direction:column;min-height:230px;display:flex}.role-summary-card.compact p{flex:1}.role-card-stats{color:var(--muted);flex-wrap:wrap;gap:10px;margin:14px 0 11px;font-size:9.5px;display:flex}.role-card-stats strong{color:var(--ink);font-size:11px}.role-detail-button{gap:6px;width:100%}.role-detail-modal{border:1px solid var(--line);background:#fff;border-radius:18px;flex-direction:column;width:min(760px,100%);max-height:min(84vh,820px);display:flex;overflow:hidden;box-shadow:0 28px 80px #0a262238}.role-detail-header{border-bottom:1px solid var(--line);justify-content:space-between;gap:18px;padding:22px 22px 14px;display:flex}.role-detail-header .eyebrow{margin:0}.role-detail-header h2{margin:5px 0 3px;font-size:21px}.role-detail-header p{color:var(--muted);margin:0;font-size:11px}.role-modal-legend{justify-content:flex-start;padding:12px 22px 4px}.role-detail-groups{padding:10px 22px 20px;overflow:auto}.role-detail-group{border:1px solid var(--line);border-radius:11px;margin-top:13px;overflow:hidden}.role-detail-group h3{color:var(--brand-2);letter-spacing:.055em;text-transform:uppercase;background:#f7f9f8;margin:0;padding:9px 12px;font-size:9px}.role-detail-row{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;padding:10px 12px;font-size:11px;display:grid}.role-detail-row:first-of-type{border-top:0}.role-detail-footer{text-align:right;padding:13px 22px 20px}.settings-overview-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:14px;display:grid}.settings-overview-card{flex-direction:column;gap:13px;min-height:290px;display:flex}.settings-overview-card>div:nth-child(2){flex:1}.settings-overview-card .eyebrow{margin:0}.settings-overview-card h2{margin:5px 0}.settings-card-icon{background:var(--soft);width:48px;height:48px;color:var(--brand);border-radius:12px;place-items:center;font-size:20px;font-weight:850;display:grid;overflow:hidden}.settings-brand-preview{border:1px solid var(--line);background:#fff}.settings-brand-preview img{object-fit:contain;width:100%;height:100%;padding:5px}.settings-card-summary{grid-template-columns:1fr 1fr;gap:8px;margin:0;display:grid}.settings-card-summary div{background:#f7f9f8;border-radius:9px;padding:9px 10px}.settings-card-summary dt{color:var(--muted);text-transform:uppercase;font-size:8px;font-weight:800}.settings-card-summary dd{color:var(--ink);margin:4px 0 0;font-size:11px;font-weight:700}.settings-guidance{margin-top:0}.settings-modal-backdrop{align-items:center;overflow:auto}.settings-modal{border:1px solid var(--line);background:#fff;border-radius:18px;flex-direction:column;width:min(980px,100%);max-height:min(90vh,920px);display:flex;overflow:hidden;box-shadow:0 28px 80px #0a262238}.settings-locations-modal{width:min(1180px,100%)}.settings-modal-header{border-bottom:1px solid var(--line);justify-content:space-between;gap:18px;padding:21px 22px 14px;display:flex}.settings-modal-header .eyebrow{margin:0}.settings-modal-header h2{margin:5px 0 3px;font-size:21px}.settings-modal-header p{color:var(--muted);margin:0;font-size:11px}.settings-modal-body{padding:18px 22px 12px;overflow:auto}.settings-modal-actions{border-top:1px solid var(--line);justify-content:flex-end;align-items:center;gap:8px;padding:13px 22px 20px;display:flex}.company-logo-editor{border:1px solid var(--line);background:#fbfcfc;border-radius:12px;grid-template-columns:110px minmax(0,1fr);align-items:center;gap:18px;margin-bottom:18px;padding:14px;display:grid}.company-logo-preview{border:1px solid var(--line);background:#fff;border-radius:14px;place-items:center;width:100px;height:100px;display:grid;overflow:hidden}.company-logo-preview img{object-fit:contain;width:100%;height:100%;padding:8px}.company-logo-preview span{color:#fff;background:#123b37;border-radius:13px;place-items:center;width:54px;height:54px;font-size:22px;font-weight:850;display:grid}.company-logo-editor strong{font-size:13px;display:block}.company-logo-editor p{color:var(--muted);margin:5px 0 10px;font-size:10px;line-height:1.45}.logo-file-label{align-items:center;gap:8px;color:var(--brand)!important;text-transform:none!important;font-size:10px!important;font-weight:800!important;display:inline-flex!important}.logo-file-label input{min-height:36px}.remove-logo-option{grid-template-columns:18px minmax(0,1fr);align-items:center;margin-top:9px;color:var(--muted)!important;text-transform:none!important;gap:7px!important;font-size:10px!important;font-weight:650!important;display:flex!important}.remove-logo-option input{height:16px;width:16px!important;min-height:16px!important}.settings-identity-grid{grid-template-columns:repeat(2,minmax(0,1fr))}@media (max-width:1120px){.compact-role-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:760px){.compact-role-grid,.settings-overview-grid,.settings-identity-grid{grid-template-columns:1fr}.role-summary-card.compact{min-height:0}.company-logo-editor{grid-template-columns:1fr}.settings-modal-backdrop,.role-detail-backdrop,.about-modal-backdrop{padding:10px}.settings-modal{max-height:94vh}}
.kpi-performance-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:11px;margin-bottom:14px;display:grid}.kpi-performance-card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);min-height:142px;padding:15px;box-shadow:0 7px 20px #17312f08}.kpi-performance-card.kpi-critical{border-top:3px solid var(--danger)}.kpi-performance-card.kpi-warning{border-top:3px solid var(--warning)}.kpi-performance-card.kpi-success{border-top:3px solid var(--success)}.kpi-performance-card.kpi-neutral{border-top:3px solid #9aa9a7}.kpi-card-head{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.kpi-card-head small{color:var(--muted);text-transform:uppercase;letter-spacing:.035em;font-size:10px;font-weight:850}.kpi-performance-card>strong{margin:18px 0 5px;font-size:30px;line-height:1;display:block}.kpi-performance-card p{color:var(--muted);margin:0;font-size:10px}.kpi-status{white-space:nowrap;border-radius:999px;align-items:center;padding:4px 7px;font-size:9px;font-weight:850;display:inline-flex}.kpi-status.success{color:var(--success);background:#e5f3ea}.kpi-status.critical{color:var(--danger);background:#fae8e8}.kpi-status.warning{color:var(--warning);background:#fbf0df}.kpi-status.neutral{color:#60716f;background:#eef2f1}.kpi-layout-two{grid-template-columns:1.4fr .8fr;gap:13px;margin-bottom:14px;display:grid}.kpi-panel{margin-bottom:14px}.kpi-section-heading{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.kpi-section-heading .eyebrow{margin-top:0}.kpi-section-heading h2{margin:6px 0;font-size:18px}.kpi-section-heading p{margin:0}.quality-total{background:var(--soft);min-width:54px;height:54px;color:var(--brand);border-radius:14px;place-items:center;font-size:24px;display:grid}.quality-summary{grid-template-columns:repeat(3,1fr);gap:9px;margin-top:18px;display:grid}.quality-chip{border:1px solid var(--line);border-radius:12px;padding:13px}.quality-chip strong,.quality-chip span{display:block}.quality-chip strong{font-size:23px}.quality-chip span{color:var(--muted);text-transform:uppercase;margin-top:2px;font-size:10px;font-weight:800}.quality-chip.high{background:#fff7f7}.quality-chip.high strong{color:var(--danger)}.quality-chip.medium{background:#fffbf3}.quality-chip.medium strong{color:var(--warning)}.quality-chip.low{background:#f7faf9}.quality-chip.low strong{color:#58706d}.kpi-period-filter{border:1px solid var(--line);background:#fbfcfc;border-radius:12px;align-items:end;gap:10px;margin-top:15px;padding:12px;display:flex}.kpi-period-filter label,.kpi-input-fields label,.kpi-target-fields label{min-width:0;color:var(--muted);text-transform:uppercase;gap:5px;font-size:9px;font-weight:850;display:grid}.kpi-period-filter input,.kpi-period-filter select,.kpi-input-fields input,.kpi-target-fields input{border:1px solid var(--line);width:100%;min-width:0;min-height:39px;color:var(--ink);font:inherit;text-transform:none;background:#fff;border-radius:9px;padding:8px 10px;font-size:12px}.kpi-input-form{gap:10px;margin-top:11px;display:grid}.kpi-input-fields{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;min-width:0;display:grid}.kpi-input-save{white-space:nowrap;justify-self:end}.kpi-table-wrap{border:1px solid var(--line);border-radius:12px;margin-top:12px}.kpi-table-wrap table{min-width:1000px}.kpi-target-list{gap:8px;margin-top:14px;display:grid}.kpi-target-row{border:1px solid var(--line);background:#fcfdfd;border-radius:12px;grid-template-columns:minmax(260px,1.1fr) minmax(0,1.9fr);align-items:center;gap:18px;padding:12px 14px;display:grid}.kpi-target-copy{min-width:0}.kpi-target-copy strong,.kpi-target-copy small,.kpi-target-copy span{display:block}.kpi-target-copy strong{font-size:12px}.kpi-target-copy small{color:var(--muted);margin-top:3px;font-size:10px}.kpi-target-copy span{color:var(--brand-2);margin-top:4px;font-size:9px;font-weight:800}.kpi-target-fields{grid-template-columns:minmax(110px,120px) minmax(130px,145px) minmax(180px,1fr) auto;align-items:end;gap:10px;min-width:0;display:grid}.kpi-target-save{white-space:nowrap;justify-self:end}.kpi-quality-table{border:1px solid var(--line);border-radius:12px;margin-top:14px}.kpi-quality-table table{min-width:1200px}.quality-severity{text-transform:uppercase;border-radius:999px;padding:4px 7px;font-size:9px;font-weight:850;display:inline-flex}.quality-severity.alta{color:var(--danger);background:#fae8e8}.quality-severity.media{color:var(--warning);background:#fbf0df}.quality-severity.baja{color:#60716f;background:#eef2f1}.dashboard-performance-section{margin-top:14px}.dashboard-section-heading{justify-content:space-between;align-items:end;gap:14px;margin-bottom:10px;display:flex}.dashboard-section-heading h2{margin:5px 0 0;font-size:17px}.dashboard-section-heading .eyebrow{margin-top:0}.dashboard-quality-panel{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;margin-top:14px;display:grid}.dashboard-quality-counts{flex-wrap:wrap;gap:8px;display:flex}.dashboard-quality-counts span{border:1px solid var(--line);background:#fff;border-radius:999px;align-items:center;gap:5px;padding:6px 9px;font-size:10px;display:inline-flex}.dashboard-quality-counts b{font-size:12px}.cell-note{color:var(--muted);font-size:10px}.table-empty{text-align:center;color:var(--muted)}@media (max-width:1200px){.kpi-performance-grid{grid-template-columns:repeat(2,1fr)}.kpi-target-row{grid-template-columns:1fr}.kpi-target-fields{grid-template-columns:minmax(110px,140px) minmax(130px,160px) minmax(180px,1fr) auto}}@media (max-width:850px){.kpi-layout-two{grid-template-columns:1fr}.kpi-input-fields,.kpi-target-fields{grid-template-columns:1fr 1fr}.kpi-target-fields .kpi-notes,.kpi-target-save{grid-column:1/-1}.dashboard-quality-panel{grid-template-columns:1fr}}@media (max-width:620px){.kpi-performance-grid{grid-template-columns:1fr}.kpi-period-filter{flex-direction:column;align-items:stretch}.kpi-input-fields{grid-template-columns:1fr}.kpi-input-save{justify-self:stretch}.kpi-target-fields{grid-template-columns:1fr}.kpi-target-fields .kpi-notes,.kpi-target-save{grid-column:auto}.kpi-target-save{justify-self:stretch}.quality-summary{grid-template-columns:1fr}.dashboard-section-heading{flex-direction:column;align-items:flex-start}}
.environmental-dashboard-filter{align-items:end;gap:12px;margin-bottom:14px;padding:13px 15px;display:flex}.environmental-dashboard-filter label{min-width:150px;color:var(--muted);text-transform:uppercase;gap:6px;font-size:10px;font-weight:800;display:grid}.environmental-dashboard-filter select{border:1px solid var(--line);min-height:40px;color:var(--ink);font:inherit;text-transform:none;background:#fff;border-radius:9px;padding:8px 10px}.environmental-dashboard-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.environmental-stat-card{min-height:132px}.environmental-stat-card small{max-width:76%}.environmental-stat-card strong{font-size:30px}.environmental-dashboard-panels{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin-top:14px;display:grid}.environmental-resource-panel{min-height:190px}.environmental-panel-heading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.environmental-panel-heading .eyebrow{margin-top:0}.environmental-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:16px 0;display:grid}.environmental-metrics div{border:1px solid var(--line);background:var(--soft);border-radius:10px;padding:11px}.environmental-metrics dt{color:var(--muted);text-transform:uppercase;font-size:9px;font-weight:800}.environmental-metrics dd{margin:6px 0 0;font-size:16px;font-weight:850}.environmental-resource-panel>a{color:var(--brand-2);font-size:12px;font-weight:800}@media (max-width:1050px){.environmental-dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.environmental-metrics{grid-template-columns:1fr}}@media (max-width:760px){.environmental-dashboard-filter{flex-direction:column;align-items:stretch}.environmental-dashboard-filter label{min-width:0}.environmental-dashboard-grid,.environmental-dashboard-panels{grid-template-columns:1fr}}
.app-shell{grid-template-columns:276px minmax(0,1fr)}.sidebar{--sidebar-accent:#159e96;--sidebar-active:#e6f7f5;--sidebar-ink:#263d3a;--sidebar-muted:#879593;--sidebar-line:#e7eeec;color:var(--sidebar-ink);border-right:1px solid var(--sidebar-line);background:#fff;padding:18px 13px 14px;box-shadow:8px 0 28px #16312d06}.sidebar-brand{border-bottom:1px solid var(--sidebar-line);gap:11px;min-height:58px;margin-bottom:7px;padding:3px 9px 13px}.sidebar .brand-mark{color:#fff;letter-spacing:-.02em;background:#123b37;border-radius:10px;flex:0 0 40px;width:40px;height:40px;font-size:18px;font-weight:800;box-shadow:0 5px 14px #123b3724}.sidebar-brand-copy{min-width:0}.sidebar-brand-copy strong{color:#17312f;letter-spacing:.025em;font-size:14px;font-weight:750;line-height:1.2}.sidebar-brand-copy small,.sidebar .brand-lockup small{color:#8a9896;margin-top:3px;font-size:10.5px;font-weight:500;line-height:1.2}.navigation{padding:4px 3px 8px 1px}.nav-group{margin:1px 0 3px}.nav-group-trigger{color:#8b9795;letter-spacing:.055em;min-height:34px;padding:7px 10px 5px;font-size:11px;font-weight:650;line-height:1.2}.nav-group-trigger:hover{color:#60706d}.nav-chevron{color:#a4afad;flex:none}.nav-group-links{padding:0 0 5px}.navigation a{color:#465a57;border-radius:9px;gap:10px;min-height:43px;margin:1px 0;padding:0 11px 0 12px;font-size:14px;font-weight:450;line-height:1.25;transition:background .14s,color .14s;position:relative}.navigation a:hover{color:#253f3b;background:#f5f8f7}.navigation a.active{background:var(--sidebar-active);color:var(--sidebar-accent);font-weight:600}.navigation a.active:before{content:"";background:var(--sidebar-accent);border-radius:0 3px 3px 0;width:3px;position:absolute;top:8px;bottom:8px;left:0}.nav-icon{color:#71817e;flex:0 0 18px;width:18px;height:18px}.navigation a:hover .nav-icon{color:#526763}.navigation a.active .nav-icon{color:var(--sidebar-accent)}.nav-help-link{margin-top:3px}.sidebar-footer{border-top:1px solid var(--sidebar-line);padding:10px 3px 0;font-size:12px;position:relative}.sidebar-user-menu{position:relative}.user-menu-trigger{width:100%;min-height:54px;color:var(--sidebar-ink);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:10px;grid-template-columns:36px minmax(0,1fr) 18px;align-items:center;gap:10px;padding:7px 8px;display:grid}.user-menu-trigger:hover,.sidebar-user-menu.open .user-menu-trigger{background:#f5f8f7}.user-avatar{color:#147f79;letter-spacing:.02em;background:#e6f7f5;border-radius:50%;place-items:center;width:36px;height:36px;font-size:11px;font-weight:750;display:grid}.user-menu-identity{min-width:0}.user-menu-identity strong,.user-menu-identity small{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.user-menu-identity strong{color:#2a403d;font-size:12.5px;font-weight:650}.user-menu-identity small{color:#899694;margin-top:2px;font-size:10.5px;font-weight:500}.user-menu-chevron{color:#9aa5a3;transition:transform .15s}.sidebar-user-menu.open .user-menu-chevron{transform:rotate(180deg)}.user-menu-popover{z-index:80;background:#fff;border:1px solid #dfe8e6;border-radius:12px;padding:7px;position:absolute;bottom:calc(100% + 8px);left:0;right:0;box-shadow:0 16px 36px #123b3729}.user-menu-company{color:#526763;border-bottom:1px solid #edf2f1;grid-template-columns:20px minmax(0,1fr);align-items:center;gap:9px;margin-bottom:4px;padding:9px 9px 10px;display:grid}.user-menu-company small,.user-menu-company strong{display:block}.user-menu-company small{color:#929d9b;text-transform:uppercase;letter-spacing:.055em;font-size:9.5px;font-weight:600}.user-menu-company strong{color:#2e4440;white-space:nowrap;text-overflow:ellipsis;margin-top:2px;font-size:11.5px;font-weight:650;overflow:hidden}.user-menu-popover>a,.user-menu-popover>.user-menu-info,.user-menu-popover form button{color:#465a57;text-align:left;background:0 0;border:0;border-radius:8px;align-items:center;gap:9px;width:100%;min-height:38px;padding:8px 9px;font-size:12px;font-weight:500;display:flex}.user-menu-popover>a:hover,.user-menu-popover form button:hover{color:#1f4944;background:#f3f7f6}.user-menu-info{color:#7b8987!important}.user-menu-popover form{border-top:1px solid #edf2f1;margin:3px 0 0;padding-top:4px}.user-menu-popover form button{cursor:pointer;color:#7e4444}.topbar-system-status{color:#71817e;font-weight:550;font-size:11px!important}.status-dot{background:#a8b1af;border-radius:50%;width:7px;height:7px}.status-dot.active{background:#48a36f;box-shadow:0 0 0 3px #e7f4eb}.status-dot.blocked{background:#c45a5a;box-shadow:0 0 0 3px #f8eaea}@media (max-width:860px){.app-shell{grid-template-columns:1fr}.sidebar{width:min(300px,88vw);box-shadow:18px 0 42px #071b182e}.mobile-menu-close{color:#526763;background:#fff;border-color:#e2eae8}.mobile-menu-button{color:#31534e}}@media (max-width:620px){.topbar-system-status>span:last-child{display:none}}.sidebar .brand-mark.company-logo{place-items:center;display:grid;overflow:hidden}.sidebar .brand-mark.has-company-logo{box-shadow:none;background:#fff;border:1px solid #e2ebe9;position:relative}.sidebar .brand-mark.has-company-logo img{box-sizing:border-box;object-fit:contain;width:100%;height:100%;padding:4px;display:block}.sidebar .brand-mark.company-logo-fallback{color:#fff;background:linear-gradient(145deg,#123b37,#159e96)}.sidebar .company-logo-initials{letter-spacing:.035em;place-items:center;width:100%;height:100%;font-size:12px;font-weight:800;display:grid}.user-menu-popover>.user-menu-action{color:#465a57;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:9px;width:100%;min-height:38px;padding:8px 9px;font-size:12px;font-weight:500;display:flex}.user-menu-popover>.user-menu-action:hover{color:#1f4944;background:#f3f7f6}.about-modal-backdrop,.role-detail-backdrop,.settings-modal-backdrop{z-index:200;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0d292561;place-items:center;padding:22px;display:grid;position:fixed;inset:0}.about-system-modal{text-align:center;background:#fff;border:1px solid #dfe8e6;border-radius:18px;width:min(440px,100%);padding:34px 34px 28px;position:relative;box-shadow:0 28px 80px #0a262238}.about-modal-close{color:#647572;cursor:pointer;background:#fff;border:1px solid #e2e9e7;border-radius:9px;place-items:center;width:34px;height:34px;line-height:1;text-decoration:none;display:grid}.about-system-modal>.about-modal-close{position:absolute;top:16px;right:16px}.about-modal-close:hover{color:#274b46;background:#f4f7f6}.about-system-mark{color:#fff;background:#123b37;border-radius:14px;place-items:center;width:54px;height:54px;margin:0 auto 14px;font-size:22px;font-weight:800;display:grid;box-shadow:0 8px 20px #123b3729}.about-system-modal .eyebrow{margin:0}.about-system-modal h2{color:#17312f;letter-spacing:.02em;margin:7px 0 4px;font-size:23px}.about-system-subtitle{color:#647572;margin:0;font-size:13px}.about-version{color:#42645f;background:#eef5f4;border-radius:999px;margin-top:12px;padding:5px 9px;font-size:10.5px;font-weight:700;display:inline-flex}.about-system-divider{background:#e9efee;height:1px;margin:22px 0 18px}.about-author{color:#435b57;margin:0;font-size:12.5px;line-height:1.55}.about-author strong{color:#17312f}.about-copyright{color:#899694;margin:10px 0 0;font-size:10.5px}.about-close-button{min-width:100px;margin-top:22px}
