.ui-badge{display:inline-flex;align-items:center;gap:5px;padding:3px 10px;border-radius:999px;font-size:var(--fs-xs);font-weight:700;line-height:1.4;white-space:nowrap;border:1px solid transparent}.ui-badge-dot{width:6px;height:6px;border-radius:50%;background:currentColor;flex-shrink:0}.ui-badge-success{background:var(--state-success-bg);border-color:var(--state-success-border);color:var(--state-success-text)}.ui-badge-danger{background:var(--state-danger-bg);border-color:var(--state-danger-border);color:var(--state-danger-text)}.ui-badge-warning{background:var(--state-warning-bg);border-color:var(--state-warning-border);color:var(--state-warning-text)}.ui-badge-info{background:var(--state-info-bg);border-color:var(--state-info-border);color:var(--state-info-text)}.ui-badge-neutral{background:var(--surface-soft-bg);border-color:var(--border-subtle);color:var(--text-secondary)}.ui-stat-tile{display:flex;flex-direction:column;gap:4px;padding:14px 16px;border-radius:14px;background:var(--surface-soft-bg);border:1px solid var(--border-subtle);min-width:0}.ui-stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;align-items:stretch}.ui-stat-grid>.ui-stat-tile{padding:12px 14px}.ui-stat-grid .ui-stat-tile-value{font-size:var(--fs-xl, 1.375rem)}.ui-stat-grid .ui-stat-tile-hint{line-height:1.25}.ui-stat-tile-label{font-size:var(--fs-xs);font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ui-stat-tile-value{font-size:var(--fs-2xl);font-weight:800;color:var(--text-primary);line-height:1.15}.ui-stat-tile-hint{font-size:var(--fs-xs);color:var(--text-tertiary)}.ui-stat-tile-success .ui-stat-tile-value{color:var(--state-success-text)}.ui-stat-tile-danger .ui-stat-tile-value{color:var(--state-danger-text)}.ui-stat-tile-warning .ui-stat-tile-value{color:var(--state-warning-text)}.ui-stat-tile-info .ui-stat-tile-value{color:var(--state-info-text)}.ui-stat-tile-tint.ui-stat-tile-success{background:var(--state-success-bg);border-color:var(--state-success-border)}.ui-stat-tile-tint.ui-stat-tile-success .ui-stat-tile-label{color:var(--state-success-text)}.ui-stat-tile-tint.ui-stat-tile-danger{background:var(--state-danger-bg);border-color:var(--state-danger-border)}.ui-stat-tile-tint.ui-stat-tile-danger .ui-stat-tile-label{color:var(--state-danger-text)}.ui-stat-tile-tint.ui-stat-tile-warning{background:var(--state-warning-bg);border-color:var(--state-warning-border)}.ui-stat-tile-tint.ui-stat-tile-warning .ui-stat-tile-label{color:var(--state-warning-text)}.ui-stat-tile-tint.ui-stat-tile-info{background:var(--state-info-bg);border-color:var(--state-info-border)}.ui-stat-tile-tint.ui-stat-tile-info .ui-stat-tile-label{color:var(--state-info-text)}.ui-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:10px;padding:48px 20px;color:var(--text-secondary)}.ui-empty-state-icon{font-size:2rem;color:var(--text-tertiary)}.ui-empty-state-title{font-size:var(--fs-md);font-weight:700;color:var(--text-primary)}.ui-empty-state-desc{font-size:var(--fs-sm);color:var(--text-secondary);max-width:40ch}.ui-data-table-scroll{overflow-x:auto}:root{font-family:Segoe UI,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}html{zoom:90%}body{margin:0;min-width:320px;min-height:calc(100vh / .9);overflow-x:hidden}#root{width:100%;height:calc(100vh / .9);overflow-x:hidden}.login-page{isolation:isolate;background:#001220;min-height:calc(100vh / .9);display:flex;align-items:center;justify-content:center;font-family:Manrope,Segoe UI,sans-serif;position:relative;overflow:hidden}.login-particles-canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;z-index:0}.login-wrapper{width:100%;max-width:420px;padding:0 20px;position:relative;z-index:2}.login-header{text-align:center;margin-bottom:28px}.login-logo{display:inline-flex;align-items:center;justify-content:center;width:78px;height:78px;border-radius:20px;background:linear-gradient(150deg,#00aeef40,#0054a633);border:1px solid rgba(0,174,239,.35);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);margin-bottom:14px;box-shadow:0 10px 28px #000a1e80}.login-logo i{font-size:2.2rem;color:#fff}.login-title{color:#fff;font-size:2.05rem;font-weight:800;margin:0 0 6px;letter-spacing:-.02em;text-shadow:0 6px 18px rgba(0,16,47,.55)}.login-subtitle{color:#e6f4fff5;font-size:1.05rem;margin:0;font-weight:700;letter-spacing:.01em}.login-card{background:#f9fcfff7;border:1px solid rgba(0,174,239,.15);border-radius:20px;padding:32px 28px;box-shadow:0 20px 60px #00081473;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.login-field{margin-bottom:18px}.login-field--last{margin-bottom:22px}.login-label{display:block;font-weight:600;font-size:.85rem;color:#374151;margin-bottom:6px}.login-input-group{display:flex;align-items:center;border:1px solid #bdd0e8;border-radius:12px;overflow:hidden;background:#f4f8ff;transition:border-color .2s}.login-input-group:focus-within{border-color:#266fdf}.login-icon{padding:0 12px;color:#9ca3af;font-size:.95rem;flex-shrink:0}.login-input{flex:1;border:none;outline:none;padding:12px 12px 12px 0;font-size:.92rem;background:transparent;color:#1f2937}.login-error{background:#fef2f2;color:#dc2626;border:1px solid #fecaca;border-radius:10px;padding:10px 14px;margin-bottom:16px;font-size:.85rem;display:flex;align-items:center;gap:8px}.login-submit{width:100%;padding:12px;background:linear-gradient(135deg,#266fdf,#1d56bf);color:#fff;border:none;border-radius:10px;font-size:.95rem;font-weight:700;cursor:pointer;transition:all .2s;box-shadow:0 8px 18px #154bae57}.login-submit:disabled{background:#93c5fd;cursor:not-allowed;box-shadow:none}.login-submit i{margin-right:8px}.login-footer{text-align:center;margin-top:20px;color:#ffffff73;font-size:.78rem}@media (max-width: 480px){.login-card{padding:24px 18px}.login-title{font-size:1.7rem}.login-logo{width:64px;height:64px}}.route-loading{display:flex;align-items:center;justify-content:center;height:60vh;color:#6b7280;font-size:.95rem;gap:10px}.access-denied{text-align:center;padding-top:60px}.access-denied-icon{display:inline-flex;align-items:center;justify-content:center;width:80px;height:80px;border-radius:50%;background:var(--state-danger-bg);margin-bottom:20px}.access-denied-icon i{font-size:2rem;color:var(--state-danger-text)}.access-denied h2{color:var(--state-danger-text);margin-bottom:8px}.access-denied p{color:var(--form-muted-text);font-size:.95rem}.login-bg-layer{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.login-bg-layer--glow{opacity:.8;background:radial-gradient(600px 400px at 15% 80%,rgba(0,174,239,.12),transparent 70%),radial-gradient(500px 350px at 85% 20%,rgba(0,130,200,.1),transparent 70%),radial-gradient(700px 500px at 50% 50%,rgba(0,84,166,.14),transparent 75%);animation:loginGlowFloat 22s ease-in-out infinite alternate;will-change:transform;z-index:1}.login-bg-layer--vignette{background:radial-gradient(circle at center,#00122000 0,#00122000 30%,#0012204d 70%,#000a1499);z-index:1}@keyframes loginGlowFloat{0%{transform:translateZ(0) scale(1)}to{transform:translate3d(0,-14px,0) scale(1.03)}}@media (prefers-reduced-motion: reduce){.login-bg-layer--glow{animation:none}.login-particles-canvas{display:none}}:root{--bp-sm: 480px;--bp-xs: 640px;--bp-md: 768px;--bp-lg: 1024px;--primary-color: #003d9b;--primary-dark: #0040a2;--primary-container: #0052cc;--bg-sidebar: #001848;--bg-content: #f8f9fb;--bg-card: #ffffff;--text-color: #191c1e;--text-light: #ffffff;--border-color: #c3c6d6;--hover-color: #edeef0;--surface-shadow: 0 4px 12px rgba(0, 0, 0, .05);--surface-shadow-soft: 0 2px 8px rgba(0, 0, 0, .04);--surface-shadow-md: 0 8px 24px rgba(0, 0, 0, .08);--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--header-height: 74px;--sidebar-width: 260px;--app-body-background: #f8f9fb;--app-dot-pattern-color: rgba(0, 61, 155, .04);--header-bg: #ffffff;--header-border: #e1e2e4;--header-surface-bg: #f3f4f6;--header-surface-border: #c3c6d6;--header-surface-hover-bg: #edeef0;--header-surface-hover-border: #c3c6d6;--header-avatar-start: #003d9b;--header-avatar-end: #0040a2;--header-role-bg: #dae2ff;--header-role-border: #b2c5ff;--user-menu-bg: #ffffff;--user-menu-border: #e1e2e4;--user-menu-item-text: #434654;--user-menu-item-icon: #737685;--user-menu-item-hover-bg: #f3f4f6;--user-menu-item-hover-text: #191c1e;--user-menu-danger-text: #93000a;--user-menu-danger-icon: #ba1a1a;--user-menu-danger-hover-bg: #ffdad6;--user-menu-danger-hover-text: #410002;--sidebar-bg: linear-gradient(180deg, #001848 0%, #001030 56%, #000a1e 100%), radial-gradient(circle at 16% 12%, rgba(0, 82, 204, .25), transparent 44%);--sidebar-border: rgba(0, 61, 155, .45);--sidebar-brand-border: rgba(178, 197, 255, .22);--menu-group-header-color: rgba(178, 197, 255, .65);--menu-link-border: transparent;--menu-link-bg: transparent;--menu-link-hover-bg: rgba(255, 255, 255, .07);--menu-link-hover-border: transparent;--menu-link-active-bg: rgba(210, 225, 255, .14);--menu-link-active-border: rgba(178, 197, 255, .85);--submenu-border: rgba(178, 197, 255, .25);--submenu-depth2-border: rgba(178, 197, 255, .18);--submenu-depth3-border: rgba(178, 197, 255, .14);--submenu-bg-depth1: transparent;--submenu-bg-depth2: transparent;--submenu-bg-depth3: transparent;--surface-bg: #ffffff;--surface-border: #e1e2e4;--input-border: #c3c6d6;--input-bg: #f3f4f6;--input-focus-ring: rgba(0, 61, 155, .15);--form-text: #191c1e;--form-muted-text: #434654;--form-label-text: #191c1e;--form-section-border: #e1e2e4;--form-placeholder: #737685;--module-title-border: #c3c6d6;--select-option-bg: #ffffff;--select-option-text: #191c1e;--select-option-selected-bg: #dae2ff;--btn-submit-bg: #003d9b;--btn-secondary-bg: #737685;--btn-secondary-hover-bg: #434654;--btn-success-bg: #006c47;--btn-success-hover-bg: #005235;--btn-danger-bg: #ba1a1a;--btn-danger-hover-bg: #93000a;--btn-neutral-border: #c3c6d6;--btn-neutral-text: #434654;--btn-neutral-hover-bg: #edeef0;--state-success-bg: #dcfce7;--state-success-border: #86efac;--state-success-text: #166534;--state-danger-bg: #fee2e2;--state-danger-border: #fca5a5;--state-danger-text: #991b1b;--state-warning-bg: #fef3c7;--state-warning-border: #fcd34d;--state-warning-text: #b45309;--action-primary-color: #003d9b;--state-info-bg: #dbeafe;--state-info-border: #93c5fd;--state-info-text: #1d4ed8;--badge-primary-bg: #dae2ff;--badge-primary-border: #b2c5ff;--table-head-bg: #edeef0;--table-head-text: #434654;--table-cell-text: #191c1e;--table-row-hover-bg: #f3f4f6;--surface-soft-bg: #f3f4f6;--fs-2xs: .6875rem;--fs-xs: .75rem;--fs-sm: .8125rem;--fs-base: .875rem;--fs-md: 1rem;--fs-lg: 1.125rem;--fs-xl: 1.375rem;--fs-2xl: 1.75rem;--text-primary: var(--text-color);--text-secondary: var(--form-muted-text);--text-tertiary: var(--form-placeholder);--border-subtle: var(--surface-border);--chart-1: var(--primary-color);--chart-2: #60a5fa;--chart-3: var(--btn-success-bg);--chart-4: var(--btn-danger-bg);--chart-5: #7c3aed;--chart-track: var(--table-head-bg)}:root[data-theme=violet]{--primary-color: #3e3b87;--primary-dark: #302d6f;--app-body-background: radial-gradient(1200px 560px at -8% -12%, rgba(84, 81, 160, .22), transparent 64%), radial-gradient(1100px 520px at 108% -14%, rgba(126, 113, 203, .22), transparent 62%), linear-gradient(145deg, #eeebff 0%, #e1dbf8 100%);--header-bg: rgba(243, 240, 255, .93);--header-border: rgba(180, 170, 228, .9);--header-surface-bg: #f7f4ff;--header-surface-border: #cfc5f0;--header-surface-hover-bg: #f0eaff;--header-surface-hover-border: #beb0e9;--header-avatar-start: #4a46a6;--header-avatar-end: #2f2c73;--header-role-bg: #f1ecff;--header-role-border: #d7cbf1;--sidebar-bg: linear-gradient(180deg, #312f6d 0%, #252353 56%, #1b1a3f 100%), radial-gradient(circle at 16% 12%, rgba(123, 112, 217, .32), transparent 44%);--sidebar-border: rgba(121, 113, 183, .42);--menu-group-header-color: #c6bef7;--menu-link-border: rgba(142, 130, 221, .4);--menu-link-bg: rgba(66, 59, 132, .54);--menu-link-hover-bg: rgba(90, 79, 176, .5);--menu-link-hover-border: rgba(162, 149, 244, .72);--submenu-border: rgba(164, 153, 237, .58);--submenu-bg-depth1: rgba(73, 64, 147, .52);--submenu-bg-depth2: rgba(73, 64, 147, .38);--submenu-bg-depth3: rgba(73, 64, 147, .3);--btn-submit-bg: linear-gradient(135deg, #4d49a6 0%, #35317c 100%);--menu-link-active-bg: linear-gradient(135deg, #4d49a6 0%, #302d6f 100%);--menu-link-active-border: #6f6ac2}:root[data-theme=pink]{--primary-color: #b81470;--primary-dark: #8f0f57;--app-body-background: radial-gradient(1200px 560px at -8% -12%, rgba(206, 47, 136, .2), transparent 64%), radial-gradient(1100px 520px at 108% -14%, rgba(233, 101, 176, .22), transparent 62%), linear-gradient(145deg, #fdf0f7 0%, #f6dfe9 100%);--header-bg: rgba(253, 241, 248, .93);--header-border: rgba(225, 169, 202, .92);--header-surface-bg: #fff6fb;--header-surface-border: #f0c6df;--header-surface-hover-bg: #ffeef8;--header-surface-hover-border: #e8b2d4;--header-avatar-start: #ce2f88;--header-avatar-end: #971160;--header-role-bg: #fcebf4;--header-role-border: #f1cbe0;--sidebar-bg: linear-gradient(180deg, #7f124f 0%, #620d3d 56%, #47092c 100%), radial-gradient(circle at 16% 12%, rgba(216, 78, 156, .33), transparent 44%);--sidebar-border: rgba(182, 85, 138, .48);--menu-group-header-color: #f5b9da;--menu-link-border: rgba(228, 130, 187, .45);--menu-link-bg: rgba(126, 25, 79, .56);--menu-link-hover-bg: rgba(170, 41, 112, .56);--menu-link-hover-border: rgba(247, 167, 212, .8);--submenu-border: rgba(241, 167, 210, .58);--submenu-bg-depth1: rgba(140, 28, 88, .53);--submenu-bg-depth2: rgba(140, 28, 88, .4);--submenu-bg-depth3: rgba(140, 28, 88, .33);--btn-submit-bg: linear-gradient(135deg, #c7247d 0%, #92115b 100%);--menu-link-active-bg: linear-gradient(135deg, #ca2f84 0%, #8f0f57 100%);--menu-link-active-border: #dd5b9f}:root[data-theme=slate]{--primary-color: #526d82;--primary-dark: #3e5567;--app-body-background: radial-gradient(1200px 560px at -8% -12%, rgba(102, 130, 154, .2), transparent 64%), radial-gradient(1100px 520px at 108% -14%, rgba(132, 157, 180, .22), transparent 62%), linear-gradient(145deg, #ebf1f5 0%, #dde7ef 100%);--header-bg: rgba(237, 244, 249, .93);--header-border: rgba(176, 196, 213, .9);--header-surface-bg: #f4f8fb;--header-surface-border: #c7d8e6;--header-surface-hover-bg: #edf4f9;--header-surface-hover-border: #b4cbdd;--header-avatar-start: #68859c;--header-avatar-end: #4b6378;--header-role-bg: #ebf2f7;--header-role-border: #cfdeea;--sidebar-bg: linear-gradient(180deg, #314452 0%, #243440 56%, #1a2731 100%), radial-gradient(circle at 16% 12%, rgba(125, 156, 181, .3), transparent 44%);--sidebar-border: rgba(105, 134, 157, .42);--menu-group-header-color: #bdd4e6;--menu-link-border: rgba(132, 163, 189, .4);--menu-link-bg: rgba(56, 80, 97, .56);--menu-link-hover-bg: rgba(78, 111, 136, .54);--menu-link-hover-border: rgba(163, 194, 219, .74);--submenu-border: rgba(156, 185, 207, .55);--submenu-bg-depth1: rgba(62, 89, 108, .52);--submenu-bg-depth2: rgba(62, 89, 108, .38);--submenu-bg-depth3: rgba(62, 89, 108, .32);--btn-submit-bg: linear-gradient(135deg, #66829a 0%, #425a6d 100%);--menu-link-active-bg: linear-gradient(135deg, #68859c 0%, #425a6d 100%);--menu-link-active-border: #86a2b9}:root[data-theme=dark]{--primary-color: #5fa8ff;--primary-dark: #3f7fca;--text-color: #dce8ff;--border-color: #2f3f57;--surface-shadow: 0 14px 34px rgba(0, 0, 0, .35);--surface-shadow-soft: 0 8px 20px rgba(0, 0, 0, .28);--app-body-background: radial-gradient(1200px 560px at -8% -12%, rgba(55, 103, 180, .24), transparent 64%), radial-gradient(1100px 520px at 108% -14%, rgba(72, 97, 143, .2), transparent 62%), linear-gradient(145deg, #1a2230 0%, #101826 100%);--app-dot-pattern-color: rgba(130, 164, 221, .12);--header-bg: rgba(21, 32, 49, .92);--header-border: rgba(68, 90, 122, .85);--header-surface-bg: #24344b;--header-surface-border: #3b4f6b;--header-surface-hover-bg: #2d3f59;--header-surface-hover-border: #4a6284;--header-avatar-start: #5ea5ff;--header-avatar-end: #3f7ac9;--header-role-bg: #26354a;--header-role-border: #3e5573;--user-menu-bg: #223147;--user-menu-border: #3b4f6b;--user-menu-item-text: #d7e4fb;--user-menu-item-icon: #a8b8d3;--user-menu-item-hover-bg: #2f425d;--user-menu-item-hover-text: #ffffff;--user-menu-danger-text: #ff9bab;--user-menu-danger-icon: #ff7d95;--user-menu-danger-hover-bg: #523249;--user-menu-danger-hover-text: #ffd6de;--sidebar-bg: linear-gradient(180deg, #0f1828 0%, #0b121e 56%, #0a1019 100%), radial-gradient(circle at 16% 12%, rgba(101, 144, 214, .26), transparent 44%);--sidebar-border: rgba(86, 114, 153, .35);--sidebar-brand-border: rgba(122, 150, 190, .24);--menu-group-header-color: #9fbee9;--menu-link-border: rgba(107, 134, 177, .35);--menu-link-bg: rgba(33, 49, 76, .6);--menu-link-hover-bg: rgba(62, 96, 149, .52);--menu-link-hover-border: rgba(127, 164, 221, .74);--menu-link-active-bg: linear-gradient(135deg, #4474b4 0%, #2a4878 100%);--menu-link-active-border: #6ea7f7;--submenu-border: rgba(126, 158, 204, .5);--submenu-depth2-border: rgba(126, 158, 204, .42);--submenu-depth3-border: rgba(126, 158, 204, .36);--submenu-bg-depth1: rgba(31, 48, 75, .55);--submenu-bg-depth2: rgba(31, 48, 75, .42);--submenu-bg-depth3: rgba(31, 48, 75, .36);--surface-bg: rgba(27, 38, 56, .92);--surface-border: #3a4e6d;--input-border: #4f678a;--input-bg: rgba(21, 30, 45, .96);--input-focus-ring: rgba(98, 157, 230, .24);--form-text: #e2ecff;--form-muted-text: #b8c9e6;--form-label-text: #d9e8ff;--form-section-border: #4a6487;--form-placeholder: #9fb4d7;--module-title-border: #44628a;--select-option-bg: #1b2a40;--select-option-text: #e3efff;--select-option-selected-bg: #2f5f9a;--table-head-bg: #26364d;--table-head-text: #c3d5f1;--table-cell-text: #e2ecff;--table-row-hover-bg: #2a3f5a;--surface-soft-bg: #253549}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Manrope,Segoe UI,system-ui,sans-serif;color:var(--text-color);background:var(--app-body-background);height:calc(100vh / .9);height:calc(100dvh / .9);overflow:hidden;overflow-x:hidden}.app-container{display:grid;grid-template-areas:"header header" "sidebar main";grid-template-columns:var(--sidebar-width) 1fr;grid-template-rows:var(--header-height) 1fr;height:calc(100vh / .9);height:calc(100dvh / .9)}@media (max-width: 1024px){:root{--sidebar-width: 220px;--header-height: 68px}}@media (max-width: 1024px){body{overflow-y:auto;overflow-x:hidden;height:auto}.app-container{grid-template-areas:"header" "main";grid-template-columns:1fr;grid-template-rows:var(--header-height) 1fr;height:calc(100vh / .9)}}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:#f3f4f6}::-webkit-scrollbar-thumb{background:#c3c6d6;border-radius:99px}::-webkit-scrollbar-thumb:hover{background:#737685}.header-area{grid-area:header;background:var(--header-bg);border-bottom:1px solid var(--header-border);color:var(--text-color);display:flex;justify-content:space-between;align-items:center;padding:0 var(--spacing-lg);gap:12px;position:relative;z-index:50;overflow:visible}.mobile-menu-toggle{display:none;align-items:center;justify-content:center;width:36px;height:36px;border-radius:10px;border:1px solid var(--surface-border);background:var(--surface-bg);color:var(--primary-color);cursor:pointer}.company-logo{font-size:1.55rem;font-weight:700;color:var(--primary-color);letter-spacing:.2px}.header-brand{display:inline-flex;align-items:center;gap:10px;min-width:0}.header-brand-link{text-decoration:none;color:inherit;border-radius:10px;padding:2px 4px}.header-brand-link:focus-visible{outline:2px solid var(--primary-color);outline-offset:1px}.header-brand-logo,.header-brand-logo-svg{width:102px;height:auto;display:block;flex-shrink:0}.header-brand-copy{display:inline-flex;flex-direction:column;min-width:0;line-height:1.05}.header-brand-title{font-size:1.52rem;font-weight:800;letter-spacing:.2px;color:var(--primary-color);white-space:nowrap}.header-brand-subtitle{margin-top:2px;font-size:.82rem;font-weight:700;letter-spacing:.4px;color:var(--form-muted-text);white-space:nowrap}.header-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end;margin-left:auto;padding-right:4px}.header-user-meta,.header-notif-wrapper{position:relative}.header-notif-btn{position:relative;width:38px;height:38px;border-radius:12px;border:1px solid var(--header-surface-border);background:var(--header-surface-bg);color:var(--text-color);cursor:pointer}.header-notif-btn:hover{background:var(--header-surface-hover-bg);border-color:var(--header-surface-hover-border)}.header-notif-btn.open{border-color:var(--menu-link-active-border)}.header-notif-badge{position:absolute;top:-6px;right:-5px;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--btn-danger-bg);color:#fff;font-size:.7rem;font-weight:700;display:inline-flex;align-items:center;justify-content:center;border:1px solid #fff}.header-notif-panel{position:absolute;right:0;top:calc(100% + 8px);width:min(360px,calc(100vw - 16px));background:var(--user-menu-bg);border:1px solid var(--user-menu-border);border-radius:12px;box-shadow:0 14px 30px #0c23492e;z-index:125;overflow:hidden}.header-notif-head{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:10px 12px;border-bottom:1px solid var(--user-menu-border)}.header-notif-head strong{color:var(--text-color);font-size:.9rem}.header-notif-readall{border:none;background:transparent;color:var(--primary-color);font-weight:700;cursor:pointer;font-size:.8rem}.header-notif-list{max-height:min(420px,65vh);overflow-y:auto}.header-notif-item{width:100%;border:none;background:transparent;text-align:left;padding:10px 12px;display:flex;flex-direction:column;gap:3px;cursor:pointer;border-bottom:1px solid var(--user-menu-border)}.header-notif-item:last-child{border-bottom:none}.header-notif-item:hover{background:var(--user-menu-item-hover-bg)}.header-notif-item.unread{background:#1f5fe212}.header-notif-title{color:var(--text-color);font-size:.84rem;font-weight:700}.header-notif-msg{color:var(--user-menu-item-text);font-size:.82rem;line-height:1.3}.header-notif-time{color:var(--user-menu-item-icon);font-size:.74rem}.header-notif-empty{margin:0;padding:14px 12px;color:var(--user-menu-item-icon);font-size:.85rem}.header-toast-stack{position:fixed;top:calc(var(--header-height) + 12px);right:16px;z-index:150;display:flex;flex-direction:column;gap:8px;width:min(340px,calc(100vw - 20px))}.header-toast-item{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;background:var(--user-menu-bg);border:1px solid var(--header-surface-hover-border);border-left:4px solid var(--primary-color);border-radius:12px;box-shadow:0 12px 28px #0c234938;padding:10px 12px;cursor:pointer}.header-toast-item:focus-visible{outline:2px solid var(--primary-color);outline-offset:1px}.header-toast-copy{display:flex;flex-direction:column;gap:2px;min-width:0}.header-toast-copy strong{color:var(--text-color);font-size:.84rem;line-height:1.2}.header-toast-copy p{margin:0;color:var(--user-menu-item-text);font-size:.8rem;line-height:1.3;overflow-wrap:break-word}.header-toast-close{border:none;background:transparent;color:var(--user-menu-item-icon);width:22px;height:22px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0}.header-toast-close:hover{background:var(--user-menu-item-hover-bg)}.header-user-main{display:flex;align-items:center;gap:8px;background:var(--header-surface-bg);border:1px solid var(--header-surface-border);border-radius:999px;padding:7px 10px;cursor:pointer;color:inherit;min-height:38px}.header-user-main:hover{background:var(--header-surface-hover-bg);border-color:var(--header-surface-hover-border)}.header-user-avatar{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:9px;background:linear-gradient(135deg,var(--header-avatar-start) 0%,var(--header-avatar-end) 100%);color:#fff;font-size:.86rem;font-weight:700}.header-user-name{font-weight:700;color:var(--text-color);font-size:.9rem}.header-user-info{display:flex;align-items:flex-start;flex-direction:column;line-height:1.1}.header-user-short{color:var(--user-menu-item-icon);font-size:.74rem;font-weight:600}.header-role-badge{padding:2px 8px;border-radius:999px;border:1px solid var(--header-role-border);background:var(--header-role-bg);font-size:.75rem;font-weight:600;color:var(--text-color)}.header-user-chevron{font-size:.72rem;color:var(--form-muted-text);transition:transform .2s ease;margin-left:2px}.header-user-chevron.open{transform:rotate(180deg)}.header-user-menu{position:absolute;right:0;top:calc(100% + 8px);width:240px;background:var(--user-menu-bg);border:1px solid var(--user-menu-border);border-radius:12px;box-shadow:0 14px 30px #0c23492e;padding:8px;z-index:120}.header-user-menu-item{width:100%;border:none;background:transparent;display:flex;align-items:center;gap:10px;text-align:left;padding:10px;border-radius:10px;color:var(--user-menu-item-text);font-size:.9rem;cursor:pointer}.header-user-menu-item i{width:16px;color:var(--user-menu-item-icon)}.header-user-menu-item:hover{background:var(--user-menu-item-hover-bg);color:var(--user-menu-item-hover-text)}.header-user-menu-item.danger{color:var(--user-menu-danger-text)}.header-user-menu-item.danger i{color:var(--user-menu-danger-icon)}.header-user-menu-item.danger:hover{background:var(--user-menu-danger-hover-bg);color:var(--user-menu-danger-hover-text)}.header-user-menu-separator{height:1px;background:var(--user-menu-border);margin:7px 3px}.header-user-menu-title{margin:4px 10px 8px;font-size:.74rem;text-transform:uppercase;letter-spacing:.7px;color:var(--user-menu-item-icon);font-weight:700}.header-theme-list{display:flex;flex-direction:column;gap:4px}.header-theme-item{width:100%;border:1px solid transparent;border-radius:10px;background:transparent;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:9px 10px;cursor:pointer;color:var(--user-menu-item-text);font-size:.86rem}.header-theme-item:hover{background:var(--user-menu-item-hover-bg)}.header-theme-item.active{background:var(--user-menu-item-hover-bg);border-color:var(--header-surface-hover-border)}.header-theme-left{display:inline-flex;align-items:center;gap:8px}.header-theme-swatch{width:12px;height:12px;border-radius:999px;border:1px solid rgba(255,255,255,.45);box-shadow:0 0 0 1px #1622343d}.header-theme-check{color:var(--primary-color);font-size:.86rem}.header-report-btn,.header-logout-btn{border-radius:12px;padding:9px 18px;font-size:.9rem;font-weight:700;cursor:pointer;transition:all .2s}.header-report-btn{background:#fff;color:var(--primary-color);border:1px solid var(--primary-color)}.header-report-btn:hover{background:var(--badge-primary-bg)}.header-logout-btn{background:var(--primary-color);color:#fff;border:1px solid var(--primary-color)}.header-logout-btn:hover{background:var(--primary-dark)}.sidebar-area{grid-area:sidebar;background:var(--sidebar-bg);border-right:1px solid var(--sidebar-border);overflow-y:auto;overflow-x:hidden;padding:14px 10px;display:flex;flex-direction:column;gap:6px;min-height:0}.sidebar-brand{padding:4px 6px 10px;border-bottom:1px solid var(--sidebar-brand-border);margin-bottom:4px}.sidebar-brand h2{font-size:1.45rem;color:#fff;line-height:1.05;margin:2px 0}.sidebar-brand .sidebar-brand-title{margin:2px 0;line-height:1.05;display:inline-flex;flex-direction:column;gap:6px}.sidebar-brand .sidebar-brand-main{font-size:1.3rem;font-weight:800;letter-spacing:.2px;color:#fff}.sidebar-brand .sidebar-brand-sub{font-size:.78rem;font-weight:600;letter-spacing:.6px;color:#e1eeffeb}.sidebar-brand-link{text-decoration:none;display:inline-block}.main-area{grid-area:main;background:transparent;overflow-y:auto;padding:var(--spacing-md);min-height:0;position:relative;z-index:1}.menu-group{background:transparent;border:none;margin-bottom:0}.menu-group-header{color:var(--menu-group-header-color);font-weight:700;font-size:.67rem;letter-spacing:1.1px;text-transform:uppercase;padding:10px 12px 4px;margin-top:4px}.menu-items{list-style:none;padding:0}.menu-item{margin-bottom:2px}.menu-link{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 12px;text-decoration:none;color:#e1ecffd1;font-size:.9rem;font-weight:500;border-radius:10px;border:none;border-left:3px solid transparent;background:var(--menu-link-bg);transition:background .18s,color .18s,border-color .18s}.menu-link:hover{background:var(--menu-link-hover-bg);color:#f0f7fff5}.menu-link i{width:18px;text-align:center;color:#a0c3ffa6;font-size:.88rem;flex-shrink:0}.menu-link:hover i{color:#d2e6ffe6}.link-label{display:flex;align-items:center;flex:1;gap:10px}.menu-link.active{background:var(--menu-link-active-bg);border-left-color:var(--menu-link-active-border);color:#fff;font-weight:600}.menu-link.active i{color:#fff}.menu-group.single-item .menu-link{border-radius:10px}.submenu-items{max-height:0;overflow:hidden;opacity:0;transition:max-height .32s ease,opacity .28s ease;list-style:none;padding:0 0 0 8px;margin:2px 0 0 14px;border-left:1px solid var(--submenu-border)}.submenu-items.open{max-height:900px;opacity:1}.submenu-item{margin-bottom:2px}.submenu-items.submenu-depth-2{margin-left:12px;padding-left:10px;border-left-style:dashed;border-left-color:var(--submenu-depth2-border)}.submenu-items.submenu-depth-3{margin-left:12px;padding-left:8px;border-left-color:var(--submenu-depth3-border)}.menu-item.depth-0.has-submenu>.menu-link{font-weight:600}.menu-item.depth-1>.menu-link{font-size:.85rem;padding:7px 10px 7px 12px}.menu-item.depth-2>.menu-link{font-size:.82rem;padding:6px 10px 6px 14px}.menu-item.depth-3>.menu-link{font-size:.8rem;padding:6px 10px 6px 16px}.menu-meta{display:inline-flex;align-items:center;gap:6px}.chevron{transition:transform .3s ease;font-size:.68rem;color:#8cafebb3}@media (min-width: 1025px){.app-container{grid-template-columns:74px 1fr}.sidebar-area.sidebar-hover-expand{width:74px;padding:12px 8px;overflow-x:visible;position:relative;z-index:80;transition:width .65s cubic-bezier(.4,0,.2,1),padding .65s cubic-bezier(.4,0,.2,1),box-shadow .7s ease}.sidebar-area.sidebar-hover-expand:hover{width:270px;box-shadow:10px 0 28px #05122e59}.sidebar-area.sidebar-hover-expand .menu-group-header{opacity:0;max-height:0;padding:0;margin:0;overflow:hidden;pointer-events:none;transition:opacity .5s ease,max-height .55s ease,padding .5s ease,margin .5s ease}.sidebar-area.sidebar-hover-expand:hover .menu-group-header{opacity:1;max-height:32px;padding:6px 4px;margin:0 0 2px;pointer-events:auto}.sidebar-area.sidebar-hover-expand .menu-link{justify-content:center;padding:10px 6px;font-size:0;border-left-color:transparent;transition:padding .55s cubic-bezier(.4,0,.2,1),font-size .4s ease,background .18s}.sidebar-area.sidebar-hover-expand .menu-link.active{border-left-color:transparent;border-radius:10px}.sidebar-area.sidebar-hover-expand .menu-link .link-label{justify-content:center;gap:0}.sidebar-area.sidebar-hover-expand .menu-link .link-label i{margin:0;width:auto;font-size:1.05rem;color:#a0c3ffb3}.sidebar-area.sidebar-hover-expand .menu-link.active .link-label i{color:#fff}.sidebar-area.sidebar-hover-expand .menu-link .link-label>:not(i){display:none}.sidebar-area.sidebar-hover-expand .menu-meta,.sidebar-area.sidebar-hover-expand .chevron,.sidebar-area.sidebar-hover-expand .submenu-items{display:none}.sidebar-area.sidebar-hover-expand:hover .menu-link{justify-content:space-between;padding:9px 12px;font-size:.9rem}.sidebar-area.sidebar-hover-expand:hover .menu-link.active{border-left-color:var(--menu-link-active-border)}.sidebar-area.sidebar-hover-expand:hover .menu-link .link-label{justify-content:flex-start;gap:10px}.sidebar-area.sidebar-hover-expand:hover .menu-link .link-label>:not(i){display:inline}.sidebar-area.sidebar-hover-expand:hover .menu-link .link-label i{font-size:.88rem}.sidebar-area.sidebar-hover-expand:hover .menu-meta,.sidebar-area.sidebar-hover-expand:hover .submenu-items{display:block}.sidebar-area.sidebar-hover-expand:hover .menu-meta{display:inline-flex}.sidebar-area.sidebar-hover-expand:hover .chevron{display:inline-block}}@media (min-width: 1025px) and (pointer: coarse){.app-container{grid-template-columns:var(--sidebar-width) 1fr}.sidebar-area.sidebar-hover-expand{width:var(--sidebar-width);padding:12px 10px}.sidebar-area.sidebar-hover-expand .menu-group-header{opacity:1;max-height:32px;padding:6px 4px;margin:0 0 2px;pointer-events:auto}.sidebar-area.sidebar-hover-expand .menu-link{justify-content:space-between;padding:9px 12px;font-size:.9rem}.sidebar-area.sidebar-hover-expand .menu-link.active{border-left-color:var(--menu-link-active-border)}.sidebar-area.sidebar-hover-expand .menu-link .link-label{justify-content:flex-start;gap:10px}.sidebar-area.sidebar-hover-expand .menu-link .link-label i{font-size:.88rem;color:#a0c3ffb3;margin:0;width:auto}.sidebar-area.sidebar-hover-expand .menu-link.active .link-label i{color:#fff}.sidebar-area.sidebar-hover-expand .menu-link .link-label>:not(i){display:inline}.sidebar-area.sidebar-hover-expand .menu-meta{display:inline-flex}.sidebar-area.sidebar-hover-expand .chevron{display:inline-block}.sidebar-area.sidebar-hover-expand .submenu-items{display:block}}.sidebar-area.sidebar-mode-sliding{overflow:hidden}.sidebar-mode-sliding .sidebar-brand{flex-shrink:0}.sliding-menu-shell{position:relative;flex:1;min-height:0;overflow:hidden}.sliding-menu-track{display:flex;height:100%;transition:transform .35s cubic-bezier(.22,1,.36,1);will-change:transform}.sliding-menu-panel{min-width:100%;width:100%;height:100%;overflow-y:auto;overflow-x:hidden;padding-right:2px}.sliding-menu-panel-root{padding-top:2px}.sliding-panel-head{display:flex;align-items:center;gap:8px;margin:2px 2px 10px}.sliding-back-btn{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--menu-link-border);background:var(--menu-link-bg);color:#dceaff;border-radius:10px;padding:7px 10px;font-size:.82rem;font-weight:700;cursor:pointer;transition:all .2s ease}.sliding-back-btn:hover{background:var(--menu-link-hover-bg);border-color:var(--menu-link-hover-border)}.sliding-panel-title{color:var(--menu-group-header-color);font-size:.8rem;letter-spacing:.6px;text-transform:uppercase;font-weight:700}.sliding-parent-link{width:100%;text-align:left;cursor:pointer}.sliding-parent-link .menu-meta i{width:auto}@media (max-width: 1024px){.mobile-menu-toggle{display:inline-flex;flex-shrink:0}.header-actions{padding-right:6px}.header-user-main{padding:6px 8px;min-height:36px}.sidebar-area{position:fixed;top:var(--header-height);left:0;right:auto;bottom:0;width:min(280px,86vw);max-height:none;z-index:60;border-right:1px solid #12366f;border-bottom:none;padding:10px 8px;transform:translate(-102%);transition:transform .6s cubic-bezier(.4,0,.2,1),box-shadow .65s ease;box-shadow:none}.sidebar-area.mobile-open{transform:translate(0);box-shadow:8px 0 24px #030c2059}.sidebar-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000006b;z-index:59;cursor:pointer;animation:fadeInBackdrop .25s ease}@keyframes fadeInBackdrop{0%{opacity:0}to{opacity:1}}.main-area{padding:12px;margin-left:0;overflow-x:hidden}}@media (max-width: 768px){.header-area{padding:0 12px;gap:8px}.company-logo{font-size:1rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.header-brand-logo,.header-brand-logo-svg{width:74px}.header-brand-title{font-size:1rem}.header-brand-subtitle{font-size:.68rem;letter-spacing:.3px}.header-actions{max-width:70%;overflow:visible;gap:6px;padding-right:2px}.header-brand-subtitle,.header-user-name,.header-role-badge,.header-user-short,.header-user-chevron,.header-report-btn{display:none}.header-brand-logo,.header-brand-logo-svg{width:64px}.header-brand-title{font-size:.92rem}.header-user-avatar{width:26px;height:26px}.header-user-main{padding:6px 8px;min-height:34px}.header-user-menu{right:0;width:min(240px,calc(100vw - 16px))}.header-toast-stack{top:calc(var(--header-height) + 8px);right:8px;width:calc(100vw - 16px)}.main-area{padding:10px}.sidebar-brand .sidebar-brand-main{font-size:1.16rem}.sidebar-brand .sidebar-brand-sub{font-size:.72rem}}.rsp-filter-bar{display:flex;gap:10px;flex-wrap:wrap;align-items:flex-end;flex:1}.rsp-filter-search{display:flex;gap:8px;flex:1 1 240px;min-width:0}.rsp-filter-search .form-control{flex:1;min-width:0}.rsp-table-wrap{-webkit-overflow-scrolling:touch}.rsp-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:12px}.rsp-grid-2 .rsp-full{grid-column:1 / -1}.rsp-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0a193c85;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:1000;display:flex;align-items:center;justify-content:center;padding:16px}.rsp-modal{background:var(--surface-bg, #fff);border:1px solid var(--surface-border, #c4d2e5);border-radius:18px;width:100%;max-width:580px;max-height:92vh;overflow-y:auto;box-shadow:var(--surface-shadow, 0 14px 34px rgba(12, 35, 73, .18))}.rsp-modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid var(--surface-border, #c4d2e5);background:var(--table-head-bg, #edf3fc);border-radius:18px 18px 0 0;position:sticky;top:0;z-index:1}.rsp-modal-title{margin:0;color:var(--text-color, #0b1f44);font-size:1rem;font-weight:700}.rsp-modal-subtitle{font-size:.78rem;color:var(--form-muted-text, #5f7495);margin-top:2px}.rsp-modal-close{background:none;border:none;cursor:pointer;font-size:1.2rem;color:var(--form-muted-text, #5f7495);padding:4px 8px;border-radius:8px;line-height:1;transition:background .15s}.rsp-modal-close:hover{background:var(--hover-color, #e9effb);color:var(--text-color, #0b1f44)}.rsp-modal-body{padding:18px 20px;display:flex;flex-direction:column;gap:14px}.rsp-modal-footer{display:flex;justify-content:flex-end;gap:10px;padding-top:6px;flex-wrap:wrap}.rsp-fieldset{border:1px solid var(--surface-border, #c4d2e5);border-radius:12px;padding:14px 16px;margin:0;background:var(--surface-soft-bg, #f7fbff)}.rsp-fieldset legend{font-size:.75rem;font-weight:700;color:var(--primary-color, #1f5fe2);padding:0 8px;letter-spacing:.3px}.rsp-btn-edit{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-width:34px;min-height:34px;padding:5px 10px;border:1px solid var(--primary-color, #1f5fe2);border-radius:8px;background:#fff;color:var(--primary-color, #1f5fe2);font-size:.82rem;font-weight:600;cursor:pointer;transition:all .15s;white-space:nowrap}.rsp-btn-edit:hover{background:var(--primary-color, #1f5fe2);color:#fff}.rsp-btn-del{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-width:34px;min-height:34px;padding:5px 10px;border:1px solid var(--btn-danger-bg, #dc3545);border-radius:8px;background:#fff;color:var(--btn-danger-bg, #dc3545);font-size:.82rem;font-weight:600;cursor:pointer;transition:all .15s;white-space:nowrap}.rsp-btn-del:hover{background:var(--btn-danger-bg, #dc3545);color:#fff}.rsp-btn-search{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:0 18px;height:100%;min-height:42px;border:none;border-radius:12px;background:var(--primary-color, #1f5fe2);color:#fff;font-size:.88rem;font-weight:600;cursor:pointer;transition:background .15s;white-space:nowrap;flex-shrink:0}.rsp-btn-search:hover{background:var(--primary-dark, #1547ac)}.rsp-btn-clear{display:inline-flex;align-items:center;justify-content:center;padding:0 14px;min-height:42px;border:1px solid var(--border-color, #b8c6db);border-radius:12px;background:var(--surface-bg, #fff);color:var(--form-muted-text, #5f7495);font-size:.88rem;font-weight:600;cursor:pointer;transition:all .15s;flex-shrink:0}.rsp-btn-clear:hover{background:var(--hover-color, #e9effb);border-color:var(--primary-color);color:var(--primary-color)}@media (max-width: 640px){.rsp-grid-2{grid-template-columns:1fr}.rsp-modal{max-width:100%;max-height:95vh;border-radius:12px}.rsp-modal-overlay{padding:8px;align-items:flex-end}.rsp-modal-header{border-radius:12px 12px 0 0}.rsp-modal-body{padding:14px 16px}.rsp-col-hide-mobile{display:none}.rsp-btn-edit,.rsp-btn-del{min-width:36px;padding:6px}}@media (max-width: 1024px){.rsp-modal-overlay{padding:12px}}.menu-item.has-fav{position:relative}.menu-item.has-fav>.menu-link{padding-right:34px}.menu-fav-btn{position:absolute;right:6px;top:50%;transform:translateY(-50%);width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:6px;cursor:pointer;color:#a0c3ff99;opacity:0;transition:opacity .15s,color .15s,background .15s}.menu-item.has-fav:hover>.menu-fav-btn,.menu-fav-btn:focus-visible,.menu-fav-btn.is-fav{opacity:1}.menu-fav-btn:hover{background:var(--menu-link-hover-bg);color:#ffd166}.menu-fav-btn.is-fav{color:#f5b82e}.menu-fav-btn:focus-visible{outline:2px solid #ffffff;outline-offset:1px}.menu-fav-btn i{font-size:.82rem}@media (hover: none),(max-width: 1024px){.menu-fav-btn{opacity:.8;width:30px;height:30px;right:4px}.menu-fav-btn.is-fav{opacity:1}}@media (min-width: 1025px) and (pointer: fine){.sidebar-area.sidebar-hover-expand .menu-fav-btn{display:none}.sidebar-area.sidebar-hover-expand:hover .menu-fav-btn{display:flex}.sidebar-area.sidebar-hover-expand .menu-item.has-fav>.menu-link{padding-right:6px}.sidebar-area.sidebar-hover-expand:hover .menu-item.has-fav>.menu-link{padding-right:34px}}.module-container{background-color:transparent;padding:14px 18px;min-height:100%;display:flex;flex-direction:column;gap:10px}.module-title{color:var(--form-label-text);font-size:1.05rem;font-weight:700;border-bottom:2px solid var(--module-title-border);padding-bottom:4px;margin-bottom:0}.form-card{border:1px solid var(--surface-border);border-radius:14px;padding:20px;background:var(--surface-bg);transition:opacity .3s ease,filter .3s ease}.form-card-disabled{opacity:.5;pointer-events:none;filter:grayscale(.3)}.form-card-disabled fieldset{border:none;margin:0;padding:0}.form-row{display:flex;gap:20px;margin-bottom:20px;flex-wrap:wrap}.form-col{flex:1;min-width:300px}.form-section{border:1px solid var(--form-section-border);border-radius:5px;padding:15px;margin:0}.form-section legend{font-weight:700;color:var(--primary-color);padding:0 10px}.form-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-bottom:20px}.form-group{display:flex;flex-direction:column}.form-control{padding:10px 12px;border:1px solid var(--input-border);border-radius:12px;font-size:.9rem;color:var(--form-text);background:var(--input-bg);width:100%}.form-control:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px var(--input-focus-ring)}textarea.form-control{resize:vertical;min-height:60px}.full-width{grid-column:1 / -1}.btn-container{display:flex;justify-content:center;margin-top:10px}.btn{padding:9px 20px;font-size:.95rem;font-weight:600;cursor:pointer;border-radius:10px;transition:all .2s}.btn-primary{background-color:var(--primary-color);color:#fff;border:1px solid var(--primary-color)}.btn-primary:hover{background-color:var(--primary-dark)}.form-card-btn{border:1px solid var(--surface-border);border-radius:16px;padding:14px 20px;background:var(--surface-bg);display:flex;justify-content:center;align-items:center;gap:10px;margin-top:20px}.btn-submit{padding:8px 30px;border-radius:20px;color:#fff;background:var(--btn-submit-bg);border:none;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-submit:hover{background:var(--primary-dark)}.btn-submit:disabled{opacity:.7;cursor:not-allowed}.btn-secondary{background-color:var(--btn-secondary-bg);color:#fff;border:1px solid var(--btn-secondary-bg)}.btn-secondary:hover{background-color:var(--btn-secondary-hover-bg)}.btn-success{background-color:var(--btn-success-bg);color:#fff;border:1px solid var(--btn-success-bg)}.btn-success:hover{background-color:var(--btn-success-hover-bg)}.btn-danger{background-color:var(--btn-danger-bg);color:#fff;border:1px solid var(--btn-danger-bg)}.btn-danger:hover{background-color:var(--btn-danger-hover-bg)}.btn-cancel{padding:8px 30px;border-radius:20px;color:var(--btn-neutral-text);background-color:transparent;border:1px solid var(--btn-neutral-border);font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s;margin-left:10px}.btn-cancel:hover{background-color:var(--btn-neutral-hover-bg)}.table-section-title{text-align:center;color:var(--primary-color);font-weight:600;margin:20px 0 10px}.table-container{overflow-x:auto;width:100%;background:var(--surface-bg);border-radius:14px;box-shadow:var(--surface-shadow);border:1px solid var(--surface-border)}.table-responsive{overflow-x:auto;width:100%;-webkit-overflow-scrolling:touch}.addi-grid-2col{display:grid;grid-template-columns:1fr 1fr;gap:14px}.addi-row-factura{display:grid;grid-template-columns:130px 1fr 160px 30px;gap:8px;margin-bottom:6px}.addi-row-partida{display:grid;grid-template-columns:40px 1fr 150px 34px;gap:8px;align-items:center;margin-bottom:6px}.addi-formula-row{display:grid;grid-template-columns:44px 1fr 190px;padding:12px 16px;align-items:center}@media (max-width: 640px){.addi-grid-2col,.addi-row-factura,.addi-row-partida,.addi-formula-row{grid-template-columns:1fr}}.grid-form-3col{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px}.grid-form-4col{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;gap:10px}.grid-form-end-auto{display:grid;grid-template-columns:minmax(140px,1.5fr) minmax(120px,1fr) minmax(120px,1fr) auto;gap:10px;align-items:end}@media (max-width: 768px){.grid-form-3col,.grid-form-4col,.grid-form-end-auto{grid-template-columns:1fr 1fr}}@media (max-width: 480px){.grid-form-3col,.grid-form-4col,.grid-form-end-auto{grid-template-columns:1fr}}.data-table{width:100%;min-width:max-content;border-collapse:collapse;font-size:.85rem;table-layout:auto}.data-table th,.data-table td{white-space:normal;overflow-wrap:break-word}.data-table th{background-color:var(--table-head-bg);color:var(--table-head-text);padding:10px 12px;text-align:left;font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;border-bottom:2px solid var(--surface-border);position:sticky;top:0;white-space:nowrap}.data-table td{padding:8px 12px;border-bottom:1px solid var(--border-color);color:var(--table-cell-text);vertical-align:middle}.data-table tbody tr{transition:background-color .15s ease-in-out}.data-table tbody tr:hover{background-color:var(--table-row-hover-bg)}.btn-action{background:none;border:1px solid var(--btn-danger-bg);color:var(--btn-danger-bg);min-width:36px;min-height:36px;border-radius:8px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:all .15s}.btn-action:hover{background-color:var(--btn-danger-bg);color:#fff}.checkmark{color:var(--form-muted-text);font-size:.8rem}.filter-card{border:1px solid var(--surface-border);border-radius:14px;padding:14px 16px;background:var(--surface-bg);display:flex;flex-wrap:wrap;gap:16px;align-items:flex-end;box-shadow:var(--surface-shadow-soft)}.filter-group{display:flex;flex-direction:column;gap:5px}.filter-group.flex-grow{flex-grow:1}.filter-label{font-size:.85rem;font-weight:700;color:var(--form-label-text)}.status-badge{padding:3px 10px;border-radius:9999px;font-size:.72rem;font-weight:600;letter-spacing:.03em;display:inline-flex;align-items:center;gap:4px;white-space:nowrap}.status-registrado{background-color:var(--state-warning-bg);color:var(--state-warning-text);border:1px solid var(--state-warning-border)}.status-registrado-btn{background-color:transparent;color:var(--table-cell-text);border:1px solid var(--border-color)}.btn-action-icon{background:none;border:1px solid var(--action-primary-color);color:var(--action-primary-color);min-width:36px;min-height:36px;border-radius:8px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:all .15s}.btn-action-icon:hover{background-color:var(--action-primary-color);color:#fff}.action-buttons{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.btn-sm{padding:5px 12px;font-size:.78rem;font-weight:600;cursor:pointer;border-radius:8px;transition:all .15s;border:1px solid transparent;display:inline-flex;align-items:center;gap:4px;white-space:nowrap}.btn-outline-primary{background-color:#fff;color:var(--primary-color);border-color:var(--primary-color)}.btn-outline-primary:hover{background-color:var(--primary-color);color:#fff}.btn-outline-danger{background-color:#fff;color:var(--btn-danger-bg);border-color:var(--btn-danger-bg)}.btn-outline-danger:hover{background-color:var(--btn-danger-bg);color:#fff}.status-active{background-color:var(--state-success-bg);color:var(--state-success-text);border:1px solid var(--state-success-border)}.status-inactive{background-color:var(--state-danger-bg);color:var(--state-danger-text);border:1px solid var(--state-danger-border)}.status-badge-warning{background-color:var(--state-warning-bg);color:var(--state-warning-text);border:1px solid var(--state-warning-border)}.status-info{background-color:var(--badge-primary-bg);color:var(--primary-color);border:1px solid var(--badge-primary-border)}.badge{display:inline-flex;align-items:center;padding:3px 10px;border-radius:9999px;font-size:.72rem;font-weight:600;letter-spacing:.03em;white-space:nowrap}.badge-primary{background-color:var(--badge-primary-bg);color:var(--primary-color);border:1px solid var(--badge-primary-border)}.supervista-status-row{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:6px}.badge-count{padding:4px 12px;border-radius:9999px;font-size:.82rem;font-weight:600;letter-spacing:.02em}.badge-count-info{background:var(--state-info-bg);color:var(--state-info-text);border:1px solid var(--state-info-border)}.badge-count-warning{background:var(--state-warning-bg);color:var(--state-warning-text);border:1px solid var(--state-warning-border)}.badge-count-success{background:var(--state-success-bg);color:var(--state-success-text);border:1px solid var(--state-success-border)}.badge-count-danger{background:var(--state-danger-bg);color:var(--state-danger-text);border:1px solid var(--state-danger-border)}.badge-count-purple{background:#ede9fe;color:#5b21b6;border:1px solid #c4b5fd}.module-subtitle{font-size:.82rem;color:var(--form-muted-text);margin:0 0 2px;font-weight:400;line-height:1.4}.btn-fab{display:none}@media (max-width: 768px){.btn-fab{display:flex;align-items:center;justify-content:center;position:fixed;bottom:24px;right:20px;width:52px;height:52px;border-radius:9999px;background:var(--primary-color);color:#fff;border:none;font-size:1.4rem;box-shadow:0 4px 16px #003d9b59;cursor:pointer;z-index:200;transition:transform .15s,box-shadow .15s;text-decoration:none}.btn-fab:hover{transform:scale(1.07);box-shadow:0 6px 20px #003d9b73}}.filter-chips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}.filter-chip{display:inline-flex;align-items:center;gap:5px;padding:5px 13px;border-radius:9999px;font-size:.78rem;font-weight:600;letter-spacing:.02em;cursor:pointer;border:1px solid var(--surface-border);background:var(--surface-bg);color:var(--form-muted-text);transition:all .15s;white-space:nowrap;-webkit-user-select:none;user-select:none}.filter-chip:hover{border-color:var(--primary-color);color:var(--primary-color);background:var(--badge-primary-bg)}.filter-chip.active{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.form-stepper{display:flex;align-items:center;gap:0;margin-bottom:8px;overflow-x:auto;padding-bottom:2px}.form-stepper-step{display:flex;align-items:center;gap:8px;flex-shrink:0}.form-stepper-step:not(:last-child):after{content:"";display:block;width:32px;height:2px;background:var(--surface-border);margin:0 4px;flex-shrink:0}.form-stepper-num{width:26px;height:26px;border-radius:9999px;display:inline-flex;align-items:center;justify-content:center;font-size:.72rem;font-weight:700;flex-shrink:0;border:2px solid var(--surface-border);background:var(--surface-bg);color:var(--form-muted-text);transition:all .2s}.form-stepper-label{font-size:.72rem;font-weight:600;color:var(--form-muted-text);white-space:nowrap;letter-spacing:.02em}.form-stepper-step.done .form-stepper-num{background:var(--state-success-bg);border-color:var(--state-success-border);color:var(--state-success-text)}.form-stepper-step.done .form-stepper-label{color:var(--state-success-text)}.form-stepper-step.done:not(:last-child):after{background:var(--state-success-border)}.data-cards-mobile{display:none;flex-direction:column;gap:12px}.data-card{background:var(--surface-bg);border:1px solid var(--surface-border);border-radius:14px;padding:14px 16px;box-shadow:var(--surface-shadow-soft);display:flex;flex-direction:column;gap:8px}.data-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.data-card-id{font-family:monospace;font-size:.78rem;font-weight:700;color:var(--primary-color)}.data-card-date{font-size:.75rem;color:var(--form-muted-text)}.data-card-title{font-size:.92rem;font-weight:700;color:var(--text-color);margin:0}.data-card-meta{display:grid;grid-template-columns:1fr 1fr;gap:4px 12px;font-size:.78rem;color:var(--form-muted-text)}.data-card-meta strong{color:var(--text-color);font-weight:600}.data-card-footer{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-top:8px;border-top:1px solid var(--surface-border);margin-top:2px}@media (max-width: 768px){.data-cards-mobile{display:flex}.table-container{display:none}}.section-title{color:var(--primary-color);font-size:1rem;font-weight:700}.form-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.campanas-metric-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px}.campanas-metric-card{border:1px solid var(--surface-border);background:var(--surface-bg);border-radius:12px;padding:10px 12px;display:flex;flex-direction:column;gap:5px}.campanas-metric-card small{color:var(--form-muted-text);font-size:.78rem;font-weight:700}.campanas-metric-card strong{color:var(--text-color);font-size:.95rem}.campanas-report-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px}.campanas-report-card{border:1px solid var(--surface-border);background:var(--surface-bg);border-radius:10px;padding:10px 12px}.campanas-report-card h4{margin:0 0 8px;color:var(--action-primary-color);font-size:.88rem}.campanas-report-card p{margin:0 0 4px;color:var(--form-text);font-size:.82rem}.campanas-tabs{display:flex;gap:8px;flex-wrap:wrap;border-bottom:1px solid var(--border-color);padding-bottom:8px}.campanas-tabs button{border:1px solid var(--border-color);background:var(--input-bg);color:var(--action-primary-color);border-radius:20px;padding:6px 14px;font-size:.82rem;font-weight:600;cursor:pointer}.campanas-tabs button.active{background:var(--action-primary-color);border-color:var(--action-primary-color);color:#fff}.campanas-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 20px}.campanas-detail-grid p{margin:0;color:var(--form-text);font-size:.85rem}.two-col-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.panel-layout{display:flex;gap:24px;align-items:flex-start}.panel-sidebar{flex:0 0 300px;background:var(--surface-bg);border-radius:12px;border:1px solid var(--surface-border);padding:20px;box-shadow:var(--surface-shadow-soft)}.panel-main{flex:1;min-width:0;background:var(--surface-bg);border-radius:16px;border:1px solid var(--surface-border);padding:24px;box-shadow:var(--surface-shadow)}.toolbar-row{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}.tabs-row{display:flex;gap:0;border-bottom:2px solid var(--border-color);margin-bottom:12px;overflow:visible}.tabs-row button{white-space:nowrap;padding:10px 20px;font-weight:600;font-size:.9rem;background:none;border:none;border-bottom:3px solid transparent;color:var(--form-muted-text);cursor:pointer;transition:color .2s,border-color .2s;user-select:none;-webkit-user-select:none;outline:none;margin-bottom:-2px}.tabs-row button:hover{color:var(--primary-color)}.tabs-row button.active{color:var(--primary-color);border-bottom-color:var(--primary-color)}.audit-layout{display:flex;gap:20px;align-items:flex-start}.audit-modal-columns{display:flex;flex:1;min-height:0;overflow:hidden}.audit-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a80;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:flex-start;justify-content:center;z-index:1000;padding:calc(var(--header-height, 74px) + 8px) 12px 12px;overflow:auto}.audit-modal-dialog{background:#fff;border-radius:16px;width:100%;max-width:960px;max-height:calc(100vh - var(--header-height, 74px) - 20px);box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;display:flex;flex-direction:column;overflow:hidden}.audit-modal-dialog--sm{max-width:480px}.audit-modal-left{flex:3;min-height:0;padding:24px;overflow-y:auto;border-right:1px solid var(--border-color)}.audit-modal-right{flex:2;min-height:0;padding:24px;background:var(--surface-soft-bg);overflow-y:auto}.audit-modal-header{display:flex;justify-content:space-between;align-items:flex-start;padding:20px 24px 16px;border-bottom:1px solid var(--border-color, #e5e7eb);background:#fff;flex-shrink:0}.audit-modal-header-info{flex:1;min-width:0}.audit-modal-title{font-size:1.2rem;font-weight:700;color:var(--text-color, #111827);margin:0 0 3px;line-height:1.3}.audit-modal-subtitle{font-size:.8rem;color:var(--form-muted-text, #64748b);margin:0}.audit-modal-close{background:none;border:none;cursor:pointer;color:#94a3b8;font-size:1.05rem;padding:4px 8px;border-radius:8px;line-height:1;margin-left:12px;flex-shrink:0;transition:background .15s,color .15s}.audit-modal-close:hover{background:#f1f5f9;color:#475569}.audit-modal-footer{display:flex;gap:10px;justify-content:flex-end;align-items:center;padding:14px 24px;border-top:1px solid var(--border-color, #e2e8f0);background:var(--surface-soft-bg, #f8fafc);flex-shrink:0}.audit-section-title{display:flex;align-items:center;gap:7px;font-size:.72rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--primary-color, #003d9b);margin:0 0 14px;padding-bottom:9px;border-bottom:1px solid var(--border-color, #e5e7eb)}.audit-data-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:16px}.audit-data-field{background:var(--surface-soft-bg, #f8fafc);border-radius:9px;padding:9px 13px}.audit-data-field.span-2{grid-column:span 2}.audit-data-label{font-size:.67rem;font-weight:600;letter-spacing:.09em;text-transform:uppercase;color:var(--form-muted-text, #94a3b8);margin-bottom:3px}.audit-data-value{font-size:.9rem;font-weight:600;color:var(--text-color, #111827);line-height:1.3}.audit-timeline{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;position:relative}.audit-timeline:before{content:"";position:absolute;left:11px;top:14px;bottom:14px;width:2px;background:var(--border-color, #e2e8f0);z-index:0}.audit-timeline-item{display:flex;gap:12px;padding-bottom:18px;position:relative}.audit-timeline-item:last-child{padding-bottom:0}.audit-timeline-dot{width:24px;height:24px;border-radius:50%;background:#bfdbfe;border:3px solid var(--surface-soft-bg, #f8fafc);flex-shrink:0;margin-top:2px;z-index:1}.audit-timeline-body{flex:1;min-width:0;padding-top:2px}.audit-timeline-time{font-size:.71rem;color:#94a3b8;font-style:italic;margin-bottom:3px}.audit-timeline-action{font-size:.82rem;color:var(--text-color, #1e293b)}.audit-timeline-action strong{font-weight:700}.audit-timeline-tag{display:inline-block;background:#e0e7ff;color:#4338ca;padding:1px 6px;border-radius:4px;font-size:.69rem;font-weight:600}.audit-timeline-detail{font-size:.78rem;color:var(--form-muted-text, #64748b);margin-top:3px}.audit-timeline-empty{text-align:center;padding:24px 16px;color:#94a3b8;font-size:.85rem;font-style:italic}.module-hero{display:flex;align-items:center;gap:14px}.module-hero-avatar{width:44px;height:44px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;color:#fff;font-weight:700;background:linear-gradient(135deg,#2d79ff,#1c56cb)}.module-hero-copy h2{font-size:2rem;color:var(--text-color);line-height:1.06}.module-hero-copy p{color:var(--form-muted-text);margin-top:4px}.form-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.formulacion-form-panel,.formulacion-table-panel{padding:16px}.formulacion-form{margin-top:12px}.form-actions-left{justify-content:flex-start}.btn-pill{border-radius:10px;padding:8px 14px}.formulacion-alert{border-radius:12px;padding:10px 14px;font-size:.9rem}.dashboard-page{gap:16px}.dashboard-kpi-panel,.dashboard-list-panel,.dashboard-access-panel{background:var(--surface-bg)}.dashboard-panel-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}.dashboard-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.dashboard-kpi-card{border:1px solid var(--surface-border);border-radius:12px;padding:14px;background:var(--surface-bg);display:flex;flex-direction:column;gap:4px}.dashboard-kpi-label{font-size:.86rem;color:var(--form-muted-text)}.dashboard-kpi-value{font-size:2rem;line-height:1.1;color:var(--text-color)}.dashboard-kpi-meta{font-size:.9rem;font-weight:600}.dashboard-kpi-meta.ok{color:var(--state-success-text)}.dashboard-kpi-meta.warn{color:var(--state-warning-text)}.dashboard-kpi-meta.neutral{color:var(--form-muted-text)}.dashboard-two-col{display:grid;grid-template-columns:1fr 1fr;gap:16px}.dashboard-activity-list,.dashboard-pending-list{list-style:none;display:flex;flex-direction:column;gap:0;margin:6px 0 0;padding:0}.dashboard-activity-list li,.dashboard-pending-list li{display:flex;align-items:flex-start;gap:10px;padding:10px 0;border-bottom:1px solid var(--surface-border)}.dashboard-time{min-width:56px;max-width:110px;flex-shrink:0;font-weight:700;color:var(--form-muted-text);overflow-wrap:break-word;word-break:break-word;-webkit-hyphens:auto;hyphens:auto}.dashboard-text{flex:1 1 auto;min-width:0;color:var(--form-text);font-size:.95rem;line-height:1.35}.dashboard-pending-list .dashboard-text small{display:block;font-size:.8rem;color:var(--form-muted-text);margin-top:2px}.dashboard-check{width:16px;color:var(--form-muted-text)}.dashboard-access-grid{margin-top:10px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.dashboard-access-btn{display:block;text-decoration:none;color:var(--text-color);border:1px solid var(--surface-border);border-radius:11px;background:var(--surface-bg);padding:11px 12px;font-weight:600;transition:all .2s ease}.dashboard-access-btn:hover{background:var(--hover-color);border-color:var(--border-color)}.dashboard-empty-row{color:var(--form-muted-text);font-size:.9rem;padding:10px 0}.enhanced-dashboard .dashboard-top-metrics{display:flex;flex-wrap:nowrap;gap:10px;align-items:stretch}.enhanced-dashboard .dashboard-top-metrics>article,.enhanced-dashboard .dashboard-top-metrics>a{flex:1 1 0;min-width:0}.enhanced-dashboard .dashboard-top-metrics>a{display:flex;text-decoration:none}.enhanced-dashboard .dashboard-top-metrics>a>.dashboard-hero-card{flex:1;min-width:0;cursor:pointer}@keyframes db-pulse{0%,to{opacity:1}50%{opacity:.4}}.db-dot-online{display:inline-block;width:8px;height:8px;border-radius:50%;background:#006c47;animation:db-pulse 1.8s ease-in-out infinite;margin-right:5px;vertical-align:middle}.dashboard-hero-card{border-radius:16px;padding:16px 14px 14px;color:var(--text-color);min-height:120px;display:flex;flex-direction:column;justify-content:space-between;background:#fff;border:1px solid var(--surface-border);border-left-width:4px;box-shadow:var(--surface-shadow);transition:box-shadow .2s ease,transform .2s ease}.dashboard-hero-card:hover{box-shadow:var(--surface-shadow-md);transform:translateY(-1px)}.dashboard-hero-card.dark,.dashboard-hero-card.blue{border-left-color:#003d9b}.dashboard-hero-card.indigo{border-left-color:#0052cc}.dashboard-hero-card.cyan{border-left-color:#006c8a}.dashboard-hero-card.red{border-left-color:#ba1a1a}.dashboard-hero-card.green{border-left-color:#006c47}.dashboard-module-breakdown{margin-bottom:20px}.dashboard-module-breakdown .data-table th,.dashboard-module-breakdown .data-table td{padding:10px 14px;font-size:.88rem}.dashboard-hero-kicker{font-size:.68rem;letter-spacing:1.4px;font-weight:700;color:var(--form-muted-text);text-transform:uppercase}.dashboard-hero-card strong{font-size:1.9rem;line-height:1;color:var(--text-color);font-weight:800}.dashboard-hero-card p{font-size:.82rem;color:var(--form-muted-text);margin:0}.dashboard-analytics-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.dashboard-analytics-card{border-radius:24px}.dashboard-block-kicker{display:inline-block;font-size:.8rem;letter-spacing:2px;color:var(--action-primary-color);font-weight:700;margin-bottom:4px}.dashboard-donut-layout{margin-top:16px;display:grid;grid-template-columns:230px 1fr;gap:16px;align-items:center}.dashboard-donut{width:220px;height:220px;border-radius:50%;display:flex;align-items:center;justify-content:center}.dashboard-donut-inner{width:138px;height:138px;border-radius:50%;background:var(--surface-bg);display:flex;align-items:center;justify-content:center;flex-direction:column;color:var(--text-color)}.dashboard-donut-inner strong{font-size:2.8rem;line-height:1}.dashboard-donut-inner span{font-size:.92rem;color:var(--form-muted-text)}.dashboard-summary-list{display:flex;flex-direction:column;gap:10px}.dashboard-summary-item{border:1px solid var(--surface-border);border-radius:16px;padding:11px 14px;display:flex;gap:10px;align-items:center;background:var(--surface-soft-bg)}.dashboard-summary-item .dot{width:14px;height:14px;border-radius:50%}.dashboard-summary-item .dot.dark{background:var(--action-primary-color)}.dashboard-summary-item .dot.red{background:var(--btn-danger-bg)}.dashboard-summary-item .dot.green{background:var(--btn-success-bg)}.dashboard-summary-item .dot.warning{background:var(--state-warning-text)}.dashboard-summary-item strong{display:block;font-size:1.4rem;color:var(--text-color)}.dashboard-summary-item span{color:var(--form-muted-text)}.dashboard-speed-box{border:1px solid var(--surface-border);border-radius:18px;margin-top:16px;padding:16px;background:var(--surface-container-low, #f3f4f6)}.dashboard-speed-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:10px}.dashboard-speed-head strong{font-size:3.2rem;line-height:1;color:var(--primary-color)}.dashboard-speed-head span{color:var(--form-muted-text)}.dashboard-speed-track{height:12px;background:var(--surface-container-highest, #e1e2e4);border-radius:999px;overflow:hidden}.dashboard-speed-track span{display:block;height:100%;background:linear-gradient(90deg,var(--primary-color) 0%,#0052cc 100%);border-radius:999px}.dashboard-speed-meta{margin-top:14px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.dashboard-speed-meta>div{border-radius:14px;background:var(--surface-soft-bg, #f3f4f6);padding:10px 12px;border:1px solid var(--surface-border)}.dashboard-speed-meta strong{display:block;color:var(--text-color);font-size:1.5rem}.dashboard-speed-meta span{color:var(--form-muted-text)}.dashboard-suggestions-list{list-style:none;margin:8px 0 0;padding:0;display:flex;flex-direction:column;gap:10px}.dashboard-suggestions-list li{border-radius:12px;padding:10px 12px;border:1px solid var(--surface-border);background:var(--surface-soft-bg)}.dashboard-suggestions-list li strong{display:block;font-size:.92rem;margin-bottom:4px}.dashboard-suggestions-list li span{color:var(--form-muted-text);font-size:.88rem;line-height:1.35}.dashboard-suggestions-list li.suggestion-alerta{border-color:var(--state-danger-border);background:var(--state-danger-bg)}.dashboard-suggestions-list li.suggestion-ok{border-color:var(--state-success-border);background:var(--state-success-bg)}.dashboard-suggestions-list li.suggestion-info{border-color:var(--state-info-border);background:var(--state-info-bg)}.dashboard-gallery-panel{padding:14px 16px}.dashboard-gallery-strip{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:10px}.dashboard-gallery-item{border:1px solid var(--surface-border);border-radius:12px;background:var(--surface-bg);overflow:hidden}.dashboard-gallery-thumb{display:block;width:100%;border:none;background:var(--hover-color);aspect-ratio:4 / 3}.dashboard-gallery-thumb img{width:100%;height:100%;object-fit:cover;display:block}.dashboard-gallery-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--surface-container-low, #f3f4f6) 0%,var(--surface-container-highest, #e1e2e4) 100%);color:var(--primary-color)}.dashboard-gallery-strip--compact{grid-template-columns:repeat(auto-fill,minmax(136px,1fr));gap:8px}.dashboard-gallery-item--compact .dashboard-gallery-copy{padding:6px 8px 8px}.dashboard-gallery-item--compact .dashboard-gallery-copy strong{font-size:.72rem;line-height:1.15}.dashboard-gallery-item--compact .dashboard-gallery-copy span{font-size:.68rem}.sedes-cell{display:inline-flex;flex-direction:column;align-items:flex-start;gap:6px;max-width:220px}.sedes-badge{display:inline-flex;align-items:center;padding:4px 10px;background:var(--badge-primary-bg);border:1px solid var(--badge-primary-border);color:var(--primary-color);border-radius:999px;font-size:.78rem;font-weight:600;cursor:pointer;transition:background .15s ease,border-color .15s ease;white-space:nowrap}.sedes-badge:hover{background:var(--surface-container-high, #e7e8ea);border-color:var(--primary-color)}.sedes-badge:focus{outline:2px solid var(--primary-color);outline-offset:1px}.sedes-list{list-style:none;margin:0;padding:6px 10px;background:var(--surface-bg);border:1px solid var(--surface-border);border-radius:8px;font-size:.76rem;color:var(--text-color);max-width:220px;max-height:160px;overflow-y:auto}.sedes-list li{padding:2px 0;border-bottom:1px dashed var(--surface-border)}.sedes-list li:last-child{border-bottom:none}.tableros-bi-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:18px;margin-top:18px}.tablero-bi-card{display:flex;gap:14px;padding:18px;background:var(--surface-bg);border:1px solid var(--surface-border);border-top:4px solid #1485d0;border-radius:12px;text-decoration:none;color:inherit;box-shadow:0 2px 6px #10285a0f;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}.tablero-bi-card:hover{transform:translateY(-2px);box-shadow:0 6px 18px #10285a24;text-decoration:none}.tablero-bi-icon{width:56px;height:56px;min-width:56px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.7rem}.tablero-bi-body{display:flex;flex-direction:column;gap:4px;min-width:0}.tablero-bi-title{margin:0;font-size:1.05rem;font-weight:700;color:var(--text-color)}.tablero-bi-desc{margin:0;font-size:.82rem;color:var(--form-muted-text);line-height:1.35}.tablero-bi-link{margin-top:6px;font-size:.8rem;font-weight:600;color:var(--primary-color);display:inline-flex;align-items:center}.dashboard-gallery-copy{padding:8px 10px 10px;display:flex;flex-direction:column;gap:2px}.dashboard-gallery-copy strong{color:var(--text-color);font-size:.86rem}.dashboard-gallery-copy span{color:var(--form-muted-text);font-size:.78rem}@media (max-width: 1024px){.module-container{padding:14px;gap:14px}.filter-card{flex-wrap:wrap;gap:12px}.form-grid,.form-grid-4,.cuadro-grid,.form-grid-2,.dashboard-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-two-col{grid-template-columns:1fr}.enhanced-dashboard .dashboard-top-metrics{flex-wrap:wrap}.enhanced-dashboard .dashboard-top-metrics>article,.enhanced-dashboard .dashboard-top-metrics>a{flex:1 1 calc(33.333% - 8px);min-width:calc(33.333% - 8px)}.dashboard-analytics-grid,.dashboard-donut-layout{grid-template-columns:1fr}.form-row{gap:12px}.form-col{min-width:240px}.audit-layout,.panel-layout{flex-direction:column}.panel-sidebar,.panel-main{width:100%;flex:1 1 auto}.two-col-grid{grid-template-columns:1fr;gap:14px}}@media (max-width: 1100px){.audit-modal-dialog{max-width:860px}.audit-modal-columns{flex-direction:column;overflow-y:auto}.audit-modal-left{border-right:none;border-bottom:1px solid #e5e7eb;padding:16px}.audit-modal-right{padding:16px;border-left:none!important}.audit-details-grid{grid-template-columns:1fr!important}}@media (max-width: 768px){.module-container{padding:10px;gap:12px}.module-title{font-size:1rem}.module-hero{align-items:flex-start;flex-wrap:wrap;gap:10px}.module-hero-copy h2{font-size:1.2rem;word-break:break-word}.module-hero-copy p{font-size:.86rem}.form-grid,.form-grid-4,.form-grid-2,.dashboard-kpi-grid,.dashboard-access-grid,.cuadro-grid{grid-template-columns:1fr}.dashboard-hero-card{min-height:120px}.dashboard-hero-card strong{font-size:2.2rem}.dashboard-hero-card p{font-size:.96rem}.dashboard-donut{width:170px;height:170px;margin:0 auto}.dashboard-donut-inner{width:106px;height:106px}.dashboard-donut-inner strong{font-size:1.7rem}.dashboard-speed-head strong{font-size:2rem}.form-col{min-width:100%}.filter-card{flex-direction:column;align-items:stretch;gap:10px;padding:12px}.filter-group,.filter-group .form-control,.filter-group .btn{width:100%}.btn-container,.form-card-btn{justify-content:stretch}.btn-submit,.btn-cancel{width:100%}.panel-main,.panel-sidebar{padding:14px}.toolbar-row{flex-direction:column;align-items:stretch}.table-container{border-radius:6px;overflow-x:auto;-webkit-overflow-scrolling:touch;background-image:linear-gradient(to right,var(--surface-bg, #fff) 20%,transparent 100%),linear-gradient(to left,var(--surface-bg, #fff) 20%,transparent 100%),linear-gradient(to right,rgba(0,0,0,.07),transparent 70%),linear-gradient(to left,rgba(0,0,0,.07),transparent 70%);background-position:left center,right center,left center,right center;background-size:40px 100%,40px 100%,28px 100%,28px 100%;background-repeat:no-repeat;background-attachment:local,local,scroll,scroll;background-color:var(--surface-bg, #fff)}.data-table{min-width:680px}.data-table th,.data-table td{padding:8px 10px;font-size:.78rem}.audit-modal-columns{flex-direction:column;overflow-y:auto}.audit-modal-left{border-right:none;border-bottom:1px solid #e5e7eb;padding:16px}.audit-modal-right{padding:16px;border-left:none!important}.dashboard-hero-card{width:100%;min-width:0}.audit-modal-backdrop{padding:calc(var(--header-height, 68px) + 6px) 8px 8px}.audit-modal-dialog{max-height:calc(100vh - var(--header-height, 68px) - 14px);border-radius:10px}}@media (max-height: 820px){.audit-modal-backdrop{align-items:flex-start;padding:calc(var(--header-height, 68px) + 4px) 8px 8px}.audit-modal-dialog{max-height:calc(100vh - var(--header-height, 68px) - 12px)}}@media (max-width: 480px){.module-container{padding:8px}.panel-main,.panel-sidebar,.form-card{padding:12px}.enhanced-dashboard .dashboard-top-metrics>article,.enhanced-dashboard .dashboard-top-metrics>a{flex:1 1 calc(50% - 6px);min-width:calc(50% - 6px)}.dashboard-hero-kicker{letter-spacing:1px}.dashboard-hero-card strong,.dashboard-speed-head strong{font-size:1.8rem}.dashboard-donut{width:150px;height:150px}.dashboard-donut-inner{width:94px;height:94px}.data-table{min-width:620px}.audit-modal-left,.audit-modal-right{padding:12px}}.cuadro-file-input{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.cuadro-file-btn{border:1px solid var(--surface-border);background:var(--badge-primary-bg);color:var(--primary-color);border-radius:10px;padding:8px 12px;cursor:pointer;font-weight:600}.cuadro-file-btn input{display:none}.cuadro-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.cuadro-card{border:1px solid var(--surface-border);border-radius:14px;overflow:hidden;background:var(--surface-bg);box-shadow:var(--surface-shadow)}.cuadro-image-btn{display:block;border:none;width:100%;aspect-ratio:1 / 1;padding:0;cursor:pointer;background:var(--badge-primary-bg)}.cuadro-image-btn img{width:100%;height:100%;object-fit:cover;display:block}.cuadro-card-body{padding:10px 12px 12px}.cuadro-card-body strong{display:block;color:var(--text-color)}.cuadro-card-body p{margin-top:5px;color:var(--form-muted-text);font-size:.88rem}.cuadro-gallery-list{display:flex;flex-direction:column;gap:18px}.cuadro-gallery-block{display:flex;flex-direction:column;gap:10px}.cuadro-gallery-title{display:inline-flex;align-items:center;justify-content:center;min-width:200px;max-width:max-content;padding:6px 14px;border:2px solid var(--primary-color);border-radius:8px;background:var(--surface-bg);color:var(--primary-color);font-size:1.05rem;font-weight:700}.cuadro-tabs{position:relative;gap:0;border-bottom:1px solid var(--surface-border);margin-bottom:12px}.cuadro-tab{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;border-bottom:3px solid transparent;border-radius:0;background:transparent;color:var(--form-muted-text);padding:8px 12px;margin:0;font-size:.9rem;font-weight:600;cursor:pointer;line-height:1.2;transition:color .16s ease,border-color .16s ease,background-color .16s ease}.cuadro-tab:hover{color:var(--primary-color);background:var(--badge-primary-bg)}.cuadro-tab.active{color:var(--primary-color);border-bottom-color:var(--primary-color);background:var(--badge-primary-bg)}.cuadro-tab:focus-visible{outline:2px solid var(--primary-color);outline-offset:1px}.cuadro-stack{display:flex;flex-direction:column;gap:14px}.cuadro-stack-card{display:grid;grid-template-columns:260px 1fr;align-items:stretch}.cuadro-stack-card .cuadro-image-btn{aspect-ratio:auto;min-height:220px;max-height:280px}.cuadro-edit-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.cuadro-edit-card{border:1px solid var(--surface-border);background:var(--surface-container-low, #f3f4f6);border-radius:10px;padding:6px;display:flex;flex-direction:column;gap:6px}.cuadro-edit-card.marked{border-color:var(--state-danger-border);background:var(--state-danger-bg)}.cuadro-edit-card img{width:100%;aspect-ratio:1 / 1;object-fit:cover;border-radius:8px}.cuadro-edit-card span{font-size:.82rem;color:var(--form-muted-text);display:inline-flex;align-items:center;gap:6px}.cuadro-month-groups{display:flex;flex-direction:column;gap:16px}.cuadro-month-block h4{color:var(--primary-color);margin-bottom:10px}.cuadro-lightbox{position:fixed;top:0;right:0;bottom:0;left:0;background:#040a14e0;z-index:9000;display:flex;align-items:center;justify-content:center;padding:24px}.cuadro-lightbox-figure{max-width:min(1040px,100%);max-height:100%;margin:0;display:flex;flex-direction:column;gap:10px}.cuadro-lightbox-figure img{max-width:100%;max-height:calc(100vh - 180px);border-radius:10px;border:1px solid rgba(198,214,242,.4);background:#0f1a2a}.cuadro-lightbox-figure figcaption{color:#edf3ff;display:flex;flex-direction:column;gap:4px}.cuadro-lightbox-close{position:fixed;top:16px;right:18px;border:1px solid #d6e2f7;background:#080e1abf;color:#fff;width:36px;height:36px;border-radius:999px;cursor:pointer;font-size:1.15rem;line-height:1}.cuadro-lightbox-nav{position:fixed;top:50%;transform:translateY(-50%);border:1px solid #cfddf6;background:#080e1ab8;color:#fff;width:42px;height:42px;border-radius:999px;cursor:pointer;font-size:1.4rem;line-height:1}.cuadro-lightbox-nav.prev{left:16px}.cuadro-lightbox-nav.next{right:16px}@media (max-width: 1024px){.cuadro-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.cuadro-edit-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.cuadro-stack-card{grid-template-columns:220px 1fr}}@media (max-width: 768px){.cuadro-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cuadro-edit-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.cuadro-stack-card{grid-template-columns:1fr}.cuadro-stack-card .cuadro-image-btn{min-height:200px}}@media (max-width: 480px){.cuadro-grid{grid-template-columns:1fr}.cuadro-edit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.tickets-kanban-board{display:flex;gap:14px;align-items:flex-start;width:100%;overflow-x:auto;overflow-y:visible;padding-bottom:6px}.tickets-kanban-column{background:linear-gradient(180deg,#f8fbff,#eff5fd);border:1px solid #c8d8ec;border-radius:14px;padding:10px;min-height:420px;height:min(68vh,760px);box-shadow:inset 0 1px #ffffffa6;transition:border-color .16s ease,box-shadow .16s ease;flex:1 0 calc((100% - 56px)/5);min-width:220px;display:flex;flex-direction:column;overflow:hidden}.tickets-kanban-column.is-drop-target{border-color:var(--primary-color);box-shadow:0 0 0 3px var(--input-focus-ring)}.tickets-kanban-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;padding:6px 8px;border-radius:10px;background:var(--badge-primary-bg);border:1px solid var(--surface-border)}.tickets-kanban-header h3{margin:0;font-size:.94rem;color:var(--text-color)}.tickets-kanban-header span{min-width:28px;height:24px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:var(--surface-bg);color:var(--primary-color);font-weight:700;font-size:.82rem;border:1px solid var(--surface-border)}.tickets-kanban-list{display:flex;flex-direction:column;gap:10px;overflow-y:auto;padding-right:4px;min-height:0}.tickets-kanban-empty{border:1px dashed var(--surface-border);color:var(--form-muted-text);border-radius:10px;padding:16px;text-align:center;font-size:.88rem;background:var(--surface-bg)}.tickets-kanban-card{border:1px solid var(--surface-border);border-radius:12px;background:var(--surface-bg);padding:10px;box-shadow:var(--surface-shadow);cursor:pointer;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}.tickets-kanban-card:hover{transform:translateY(-2px);border-color:var(--primary-color);box-shadow:var(--surface-shadow-md)}.tickets-kanban-card.is-saving{opacity:.7;pointer-events:none}.tickets-kanban-card-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}.tickets-kanban-card h4{margin:0 0 6px;color:var(--text-color);font-size:.92rem;line-height:1.25}.tickets-kanban-card p{margin:0;color:var(--form-muted-text);font-size:.82rem;line-height:1.35;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.tickets-kanban-card-foot{margin-top:9px;display:flex;justify-content:space-between;gap:8px;color:#58749a;font-size:.75rem}.tickets-state-pill{border:1px solid;border-radius:999px;padding:2px 8px;font-size:.72rem;font-weight:700}.tickets-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0a132599;display:flex;align-items:flex-start;justify-content:center;z-index:1000;padding:calc(var(--header-height, 74px) + 8px) 12px 12px;overflow-y:auto}.tickets-modal-content{width:100%;max-width:980px;background:#fff;border-radius:14px;border:1px solid #c9d9ef;max-height:calc(100vh - var(--header-height, 74px) - 20px);overflow-y:auto;box-shadow:0 14px 34px #08152c3d}.tickets-modal-content-compact{max-width:760px}.tickets-modal-head{padding:14px 16px;background:#f0f6ff;border-bottom:1px solid #d5e2f5;display:flex;justify-content:space-between;align-items:center}.tickets-modal-head h3{margin:0;color:#0f2b57;font-size:1.04rem}.tickets-modal-head button{border:none;background:transparent;font-size:1.45rem;line-height:1;color:#38557f;cursor:pointer}.tickets-modal-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:14px;padding:14px}.tickets-modal-grid-single{grid-template-columns:1fr}.permisos-table-wrap{border-radius:16px;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch}.permisos-table{min-width:1040px}.permission-group-row td{padding-top:14px;padding-bottom:14px;border-bottom:1px solid #dbe5f4;vertical-align:top}.permission-submodule-stack{display:flex;flex-direction:column;gap:8px;align-items:flex-start}.permission-submodule-card{border:1px solid #c5d4e8;border-radius:10px;background:#f9fbff;padding:8px 10px;display:flex;align-items:center;justify-content:flex-start;gap:10px;flex-wrap:nowrap;width:fit-content;max-width:100%}.permission-submodule-name{color:#274a78;font-weight:600;font-size:.9rem;flex:0 1 auto}.permission-actions-inline{display:flex;align-items:center;gap:6px;flex-wrap:nowrap;justify-content:flex-start;min-width:auto}.permission-action-pill{display:inline-flex;align-items:center;gap:4px;font-size:.78rem;color:#284b77}.permission-action-pill input{width:13px;height:13px;accent-color:#2563eb}.permission-action-pill.muted{color:#667f9f}@media (max-width: 1280px){.permission-submodule-card{flex-wrap:wrap}}.tickets-modal-grid h4{margin:0 0 8px;font-size:.95rem;color:#1d365d}.tickets-modal-info{display:flex;flex-direction:column;gap:4px;color:#314d73;font-size:.86rem}.tickets-modal-desc{margin:10px 0 14px;border:1px solid #d7e3f4;background:#f8fbff;border-radius:10px;padding:10px;color:#344d70;white-space:pre-wrap;font-size:.84rem}.tickets-log-list{max-height:420px;overflow-y:auto;padding-right:6px;display:flex;flex-direction:column;gap:10px}.tickets-log-item{border-left:2px solid #c6d7ed;padding-left:10px;color:#345173;font-size:.82rem;display:flex;flex-direction:column;gap:3px}.tickets-log-item small{color:#5d799f}.tickets-modal-empty{border:1px dashed #bed0e8;border-radius:10px;padding:14px;text-align:center;color:#5c789f;background:#f7fbff;font-size:.88rem}.tickets-evidence-link{display:inline-block;font-size:.84rem;color:#1f4d93;margin-bottom:8px}.btn-attach{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border:1.5px dashed #94a3b8;border-radius:6px;background:transparent;color:#475569;font-size:.85rem;cursor:pointer;transition:border-color .15s,color .15s}.btn-attach:hover{border-color:#3b82f6;color:#1d4ed8}.file-list{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-direction:column;gap:4px}.file-list-item{display:flex;align-items:center;gap:6px;font-size:.82rem;color:#334155;background:#f1f5f9;border-radius:5px;padding:4px 8px}.file-list-icon{color:#64748b;flex-shrink:0}.file-list-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-list-size{color:#94a3b8;flex-shrink:0}.file-list-remove{background:none;border:none;color:#ef4444;cursor:pointer;padding:0 2px;font-size:.8rem;flex-shrink:0}.file-list-remove:hover{color:#b91c1c}.tickets-evidence-img{width:100%;max-height:260px;object-fit:contain;border:1px solid #d7e3f4;border-radius:10px;background:#f8fbff;margin-bottom:12px}.mis-impulsos-layout{display:grid;grid-template-columns:minmax(260px,300px) minmax(0,1fr);gap:12px}.mis-impulsos-filters{display:grid;gap:10px;align-content:start}@media (max-width: 1024px){.tickets-kanban-column{min-height:300px;height:min(62vh,640px);min-width:260px}.tickets-modal-grid,.mis-impulsos-layout{grid-template-columns:1fr}}@media (max-width: 768px){.tickets-modal-backdrop{align-items:flex-start;padding:calc(var(--header-height, 68px) + 6px) 8px 8px}.tickets-modal-content{max-height:calc(100vh - var(--header-height, 68px) - 14px)}}@media (min-width: 1200px) and (max-width: 1400px) and (max-height: 800px){.pqrs-module{padding:12px;gap:10px}.pqrs-module .module-title{font-size:1.02rem;margin-bottom:4px;padding-bottom:6px}.pqrs-module .supervista-status-row{gap:8px;margin-bottom:8px}.pqrs-module .badge-count{padding:4px 10px;font-size:.78rem}.pqrs-module .audit-layout{gap:12px}.pqrs-module .form-group{margin-bottom:8px!important}.pqrs-module .form-control{padding:8px 10px;font-size:.84rem}.pqrs-module .btn{padding:7px 14px;font-size:.84rem}.pqrs-module .table-container{max-height:calc(100vh - 280px);overflow:auto}.pqrs-module .data-table th,.pqrs-module .data-table td{padding:8px 10px;font-size:.79rem}.pqrs-module .tickets-modal-backdrop{padding:calc(var(--header-height, 68px) + 6px) 8px 8px}.pqrs-module .tickets-modal-content{max-height:calc(100vh - var(--header-height, 68px) - 14px)}.pqrs-module .tickets-modal-grid{gap:10px;padding:10px}.pqrs-module .tickets-modal-info,.pqrs-module .tickets-modal-desc{font-size:.8rem}}.alert{position:relative;display:flex;align-items:center;gap:10px;padding:14px 18px;border-radius:10px;border-left:4px solid transparent;font-size:.88rem;font-weight:500;line-height:1.45;margin-bottom:16px;animation:alertSlideIn .35s cubic-bezier(.22,1,.36,1);box-shadow:0 4px 14px #0000000f;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.alert:before{font-family:"Font Awesome 6 Free";font-weight:900;font-size:1.1rem;flex-shrink:0}.alert-success{background:linear-gradient(135deg,var(--state-success-bg) 0%,#eafaef 100%);border-left-color:var(--state-success-border);color:var(--state-success-text)}.alert-success:before{content:"";color:var(--state-success-text)}.alert-danger{background:linear-gradient(135deg,var(--state-danger-bg) 0%,#fde8ea 100%);border-left-color:var(--state-danger-border);color:var(--state-danger-text)}.alert-danger:before{content:"";color:var(--state-danger-text)}.alert-warning{background:linear-gradient(135deg,var(--state-warning-bg) 0%,#fff8e1 100%);border-left-color:var(--state-warning-border);color:var(--state-warning-text)}.alert-warning:before{content:"";color:var(--state-warning-text)}.alert-info{background:linear-gradient(135deg,var(--state-info-bg) 0%,#e8f2ff 100%);border-left-color:var(--state-info-border);color:var(--state-info-text)}.alert-info:before{content:"";color:var(--primary-color)}@keyframes alertSlideIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.ocr-overlay{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:32px 24px;border-radius:14px;background:linear-gradient(135deg,#f0f6ff,#e4edfc,#f0f0ff);border:1.5px solid var(--state-info-border);box-shadow:0 8px 32px #1f5fe21a,inset 0 1px #ffffffb3;animation:ocrPulseContainer 2.4s ease-in-out infinite;overflow:hidden}.ocr-overlay:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:repeating-linear-gradient(90deg,transparent,transparent 10px,rgba(31,95,226,.03) 10px,rgba(31,95,226,.03) 11px);pointer-events:none}.ocr-overlay-icon{position:relative;width:56px;height:56px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:linear-gradient(135deg,var(--primary-color) 0%,#3b7dfa 100%);box-shadow:0 6px 20px #1f5fe24d;animation:ocrScanPulse 1.8s ease-in-out infinite}.ocr-overlay-icon i{font-size:1.5rem;color:#fff}.ocr-overlay-title{font-size:1rem;font-weight:700;color:var(--primary-dark);letter-spacing:.02em}.ocr-overlay-subtitle{font-size:.82rem;color:var(--form-muted-text);text-align:center}.ocr-overlay-bar{width:180px;height:4px;border-radius:4px;background:var(--state-info-border);overflow:hidden;position:relative}.ocr-overlay-bar:after{content:"";position:absolute;left:0;top:0;height:100%;width:40%;border-radius:4px;background:linear-gradient(90deg,var(--primary-color),#5396ff);animation:ocrBarSlide 1.6s ease-in-out infinite}@keyframes ocrPulseContainer{0%,to{box-shadow:0 8px 32px #1f5fe21a,inset 0 1px #ffffffb3}50%{box-shadow:0 8px 40px #1f5fe22e,inset 0 1px #ffffffb3}}@keyframes ocrScanPulse{0%,to{transform:scale(1);box-shadow:0 6px 20px #1f5fe24d}50%{transform:scale(1.08);box-shadow:0 8px 28px #1f5fe273}}@keyframes ocrBarSlide{0%{left:-40%}to{left:100%}}.toast-stack{position:fixed;top:calc(var(--header-height, 74px) + 14px);right:20px;z-index:9999;display:flex;flex-direction:column;gap:10px;max-width:420px;width:calc(100% - 40px);pointer-events:none}.toast-item{pointer-events:auto;display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:12px;border-left:4px solid transparent;font-size:.88rem;font-weight:500;line-height:1.45;cursor:pointer;box-shadow:0 8px 30px #0000001f,0 2px 8px #0000000f;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);animation:toastEnter .4s cubic-bezier(.22,1,.36,1);transition:opacity .3s ease,transform .3s ease}.toast-item.toast-leaving{opacity:0;transform:translate(30px)}.toast-icon{font-size:1.2rem;flex-shrink:0}.toast-text{flex:1;min-width:0}.toast-close{flex-shrink:0;width:24px;height:24px;border:none;border-radius:8px;background:transparent;color:inherit;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:.5;transition:opacity .2s,background .2s;font-size:.8rem}.toast-close:hover{opacity:1;background:#00000014}.toast-success{background:linear-gradient(135deg,#ecfdf3,#d1fae5);border-left-color:#34d399;color:#065f46}.toast-success .toast-icon{color:#10b981}.toast-error{background:linear-gradient(135deg,#fef2f2,#fde8e8);border-left-color:#f87171;color:#991b1b}.toast-error .toast-icon{color:#ef4444}.toast-warning{background:linear-gradient(135deg,#fffbeb,#fef3c7);border-left-color:#fbbf24;color:#92400e}.toast-warning .toast-icon{color:#f59e0b}.toast-info{background:linear-gradient(135deg,#eff6ff,#dbeafe);border-left-color:#60a5fa;color:#1e40af}.toast-info .toast-icon{color:#3b82f6}.toast-item:after{content:"";position:absolute;bottom:0;left:4px;right:0;height:3px;border-radius:0 0 12px;background:currentColor;opacity:.2;animation:toastTimer 5s linear forwards}@keyframes toastEnter{0%{opacity:0;transform:translate(40px) scale(.96)}to{opacity:1;transform:translate(0) scale(1)}}@keyframes toastTimer{0%{width:100%}to{width:0%}}@media (max-width: 480px){.toast-stack{right:10px;left:10px;max-width:none;width:auto}}#root,body{font-family:Manrope,Segoe UI,Tahoma,Geneva,Verdana,sans-serif}body{background:var(--app-body-background)}.header-area{background:var(--header-bg);border-bottom:1px solid var(--header-border);box-shadow:0 1px 4px #0000000f}.header-user-main{border-radius:999px;padding:7px 10px;background:var(--header-surface-bg);border-color:var(--header-surface-border)}.header-role-badge{background:var(--header-role-bg);border-color:var(--header-role-border)}.header-logout-btn{border-radius:999px;padding-inline:15px}.sidebar-area{background:var(--sidebar-bg);border-right-color:var(--sidebar-border);box-shadow:2px 0 12px #00000014}.sidebar-brand{border-bottom-color:var(--sidebar-brand-border);margin-bottom:8px;padding-bottom:14px}.sidebar-brand h2{font-size:1.25rem;letter-spacing:.2px}.sidebar-brand .sidebar-brand-title{display:inline-flex;flex-direction:column;gap:6px;line-height:1.05}.sidebar-brand .sidebar-brand-main{font-size:1.28rem;font-weight:800;letter-spacing:.2px}.sidebar-brand .sidebar-brand-sub{font-size:.77rem;font-weight:600;letter-spacing:.65px;color:#e1eeffeb}.menu-group-header{font-size:.7rem;letter-spacing:1px;color:var(--menu-group-header-color)}.menu-link{border-radius:13px;border-color:var(--menu-link-border);background:var(--menu-link-bg)}.menu-link:hover{background:var(--menu-link-hover-bg);border-color:var(--menu-link-hover-border)}.menu-link.active{background:var(--menu-link-active-bg);border-left-color:var(--menu-link-active-border);box-shadow:none}.submenu-link{background:var(--submenu-bg-depth2)}.main-area{padding:20px}.module-container{gap:16px}.module-title{color:var(--text-color);border-bottom-color:var(--module-title-border);margin-bottom:6px}.form-card,.filter-card,.panel-sidebar,.panel-main,.dashboard-kpi-panel,.dashboard-list-panel,.dashboard-access-panel,.table-container{background:var(--surface-bg);border:1px solid var(--surface-border);box-shadow:var(--surface-shadow-soft)}.form-card,.panel-main{border-radius:18px}.panel-sidebar,.filter-card{border-radius:16px}.form-control{border-color:var(--input-border);border-radius:12px;background:var(--input-bg);color:var(--form-text)}.form-control:focus{background:#fff;border-color:var(--primary-color);box-shadow:0 0 0 3px var(--input-focus-ring);outline:none}.form-control::placeholder{color:var(--form-placeholder);opacity:1}select.form-control option{background:var(--select-option-bg);color:var(--select-option-text)}select.form-control option:checked,select.form-control option:hover{background:var(--select-option-selected-bg);color:#fff}.btn,.btn-submit,.btn-cancel,.dashboard-access-btn{border-radius:999px}.btn-submit{background:var(--btn-submit-bg)}.data-table th{background:var(--table-head-bg);color:var(--table-head-text)}.data-table td{color:var(--table-cell-text)}.data-table tbody tr:hover{background:var(--table-row-hover-bg)}.dashboard-hero-card{border-radius:20px;box-shadow:var(--surface-shadow)}.dashboard-summary-item,.dashboard-speed-box,.dashboard-speed-meta>div,.dashboard-suggestions-list li{background:var(--surface-soft-bg)}.app-container{position:relative}.app-container:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;background-image:radial-gradient(var(--app-dot-pattern-color) 1px,transparent 1px);background-size:14px 14px;opacity:.25}.header-area{position:relative;z-index:50}.main-area{position:relative;z-index:1}.module-container>*{animation:identidad-fade-up .32s ease-out both}.module-container>*:nth-child(2){animation-delay:40ms}.module-container>*:nth-child(3){animation-delay:80ms}.module-container>*:nth-child(4){animation-delay:.12s}@keyframes identidad-fade-up{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.submenu-items{border-left-color:var(--submenu-border)}.menu-item.depth-1>.menu-link,.menu-item.depth-2>.menu-link,.menu-item.depth-3>.menu-link{border-color:var(--menu-link-border)}.form-group label,.filter-label,.form-section legend,.table-section-title{color:var(--form-label-text)}.module-container,.form-card,.filter-card,.panel-main,.panel-sidebar,.dashboard-kpi-panel,.dashboard-list-panel,.dashboard-access-panel,.table-container{color:var(--form-text)}.form-section{border-color:var(--form-section-border)}.header-user-short,.checkmark,.dashboard-kpi-label{color:var(--form-muted-text)}@media (prefers-reduced-motion: reduce){.module-container>*{animation:none}}@media (max-width: 768px){.main-area{padding:12px}.app-container:after{opacity:.14}}
