@import url(https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700&display=swap);:root{--color-bg:#0e0e0f;--color-surface:#1a1a1c;--color-surface-2:#242427;--color-border:#ffffff1f;--color-border-strong:#ffffff38;--color-text:#f5f4f0;--color-text-muted:#b5b0a6;--color-text-faint:#8a857c;--color-primary:#cf9b21;--color-primary-hover:#e0ac34;--color-primary-active:#b0831a;--color-on-primary:#1a1206;--color-primary-text:#cf9b21;--color-accent:#facd12;--color-on-accent:#1a1206;--color-secondary:#221164;--color-on-secondary:#fff;--color-cream:#fff6e1;--color-success:#2fbf71;--color-danger:#e5484d;--color-danger-solid:#c0392b;--color-info:#4c6fff;--color-focus:#e0ac34;--color-focus-ring:#cf9b2140;--color-hover-overlay:#ffffff0f;--color-primary-tint:#cf9b2129;--color-success-tint:#2fbf7129;--color-danger-tint:#e5484d29;--color-success-text:#7ee2a8;--color-danger-text:#ff9b9e;--font-base:"Montserrat",system-ui,-apple-system,sans-serif;--font-display:"Montserrat",system-ui,-apple-system,sans-serif;--text-xs:13px;--text-base:16px;--text-lg:20px;--text-xl:25px;--text-2xl:31px;--text-3xl:39px;--text-hero:48px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-6:24px;--space-8:32px;--space-12:48px;--space-16:64px;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;color-scheme:dark}:root[data-theme=light]{--color-bg:#fdf8ef;--color-surface:#fff;--color-surface-2:#fbf1de;--color-border:#e6decb;--color-border-strong:#d4c9b2;--color-text:#2b2630;--color-text-muted:#6b6577;--color-text-faint:#6e6779;--color-primary:#cf9b21;--color-primary-hover:#b5851a;--color-primary-active:#9a7015;--color-on-primary:#1a1206;--color-primary-text:#8a6712;--color-accent:#facd12;--color-on-accent:#1a1206;--color-secondary:#221164;--color-on-secondary:#fff;--color-cream:#fff6e1;--color-success:#157f45;--color-danger:#c4332e;--color-danger-solid:#c0392b;--color-info:#2b49c9;--color-focus:#8a6712;--color-focus-ring:#8a67124d;--color-hover-overlay:#0000000a;--color-primary-tint:#cf9b2124;--color-success-tint:#157f451f;--color-danger-tint:#c4332e1f;--color-success-text:#0f6e3b;--color-danger-text:#a82824;color-scheme:light}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.password-input-wrap{position:relative}.password-input-wrap input{box-sizing:border-box;padding-right:64px;width:100%}.password-toggle{background:none;border:none;border-radius:4px;color:var(--color-text-muted);cursor:pointer;font-size:.85rem;font-weight:600;padding:4px 8px;position:absolute;right:8px;top:50%;transform:translateY(-50%)}.password-toggle:hover:not(:disabled){background:var(--color-hover-overlay);color:var(--color-text)}.password-toggle:focus-visible{outline:2px solid var(--color-focus);outline-offset:1px}.password-toggle:disabled{cursor:not-allowed;opacity:.5}.password-caps-warning{color:var(--color-danger);display:block;font-size:.8rem;margin-top:4px}.login-container{align-items:center;background:var(--color-bg);display:flex;justify-content:center;min-height:100vh}.login-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:0 10px 40px #0003;max-width:400px;padding:40px;width:100%}.login-card h1{color:var(--color-primary-text);font-size:2.5rem;margin-bottom:8px;text-align:center}.login-card .subtitle{color:var(--color-text-muted);font-size:.9rem;margin-bottom:30px;text-align:center}.form-group{margin-bottom:20px}.form-group label{font-weight:600;margin-bottom:8px}.form-group input{width:100%}.error-message{border:1px solid var(--color-danger)}.info-message{background-color:var(--color-success-tint);border:1px solid var(--color-success);border-radius:var(--radius-sm);color:var(--color-success-text)}.btn-primary,.info-message{margin-bottom:20px;padding:12px}.btn-primary{font-weight:600;width:100%}.link-button{background:none;border:none;color:var(--color-primary-text);cursor:pointer;font-size:.9rem;margin-bottom:15px;padding:0;text-decoration:underline}.link-button:hover{color:var(--color-primary-hover)}.form-footer{font-size:.9rem}.form-footer a:hover{text-decoration:underline}.register-container{align-items:center;background:var(--color-bg);display:flex;justify-content:center;min-height:100vh;padding:20px}.register-card,.success-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:0 10px 40px #0003;max-width:450px;padding:40px;width:100%}.honeypot{height:1px;left:-10000px;overflow:hidden;position:absolute;width:1px}.register-card h1,.success-card h2{color:var(--color-primary-text);font-size:2rem;margin-bottom:8px;text-align:center}.register-card .subtitle{color:var(--color-text-muted);font-size:.9rem;margin-bottom:30px;text-align:center}.success-card{text-align:center}.success-card p{color:var(--color-text-muted);margin:15px 0}.form-group small{color:var(--color-text-muted);display:block;font-size:.8rem;margin-top:4px}.form-group small.password-match{color:var(--color-success)}.form-group small.password-mismatch{color:var(--color-danger)}.form-footer{color:var(--color-text-muted);margin-top:20px;text-align:center}.form-footer a{color:var(--color-primary-text);font-weight:600;text-decoration:none}.sidebar{background:var(--color-surface);border-right:1px solid var(--color-border);display:flex;flex:none;flex-direction:column;height:100vh;overflow-y:auto;position:-webkit-sticky;position:sticky;top:0;transition:width .2s ease;width:240px}.sidebar.collapsed{width:64px}.sidebar-header{align-items:center;display:flex;gap:8px;justify-content:space-between;padding:14px 12px}.sidebar.collapsed .sidebar-header{flex-direction:column;gap:10px}.sidebar-logo{align-items:center;display:inline-flex}.sidebar-logo:hover{text-decoration:none}.logo-img{display:block;height:28px}.logo-fallback{color:var(--color-primary-text);font-family:var(--font-display);font-size:1.3rem;font-weight:800;letter-spacing:.5px}.sidebar-collapse{align-items:center;background:#0000;border:none;border-radius:var(--radius-sm);color:var(--color-text-muted);display:inline-flex;justify-content:center;padding:6px}.sidebar-collapse:hover{background:var(--color-hover-overlay);box-shadow:none}.sidebar-nav{display:flex;flex:1 1;flex-direction:column;gap:2px;padding:8px}.nav-item{align-items:center;background:#0000;border:none;border-radius:var(--radius-sm);color:var(--color-text-muted);cursor:pointer;display:flex;font-family:var(--font-base);font-size:var(--text-base);font-weight:500;gap:12px;padding:9px 10px;text-align:left;text-decoration:none;width:100%}.nav-item:hover{background:var(--color-hover-overlay);box-shadow:none;color:var(--color-text);text-decoration:none}.nav-item.active{background:var(--color-primary-tint);box-shadow:inset 3px 0 0 var(--color-primary);color:var(--color-text)}.nav-item.active .nav-icon{color:var(--color-primary-text)}.nav-icon{align-items:center;color:inherit;display:inline-flex;flex:none}.nav-chevron{color:var(--color-text-faint);display:inline-flex;margin-left:auto;transition:transform .2s ease}.nav-chevron.open{transform:rotate(180deg)}.nav-parent.active-parent{color:var(--color-text)}.admin-group{position:relative}.admin-subnav{display:none;flex-direction:column;gap:2px;padding:2px 0 6px}.admin-subnav.open{display:flex}.admin-subgroup{display:flex;flex-direction:column}.admin-grouplabel{color:var(--color-text-faint);font-size:11px;letter-spacing:.5px;padding:8px 10px 4px 16px;text-transform:uppercase}.nav-subitem{align-items:center;border-radius:var(--radius-sm);color:var(--color-text-muted);display:flex;font-size:14px;gap:8px;padding:6px 10px 6px 22px;text-decoration:none}.nav-subitem:hover{background:var(--color-hover-overlay);text-decoration:none}.nav-subitem.active,.nav-subitem:hover{color:var(--color-text)}.subitem-dot{background:var(--color-text-faint);border-radius:50%;flex:none;height:5px;width:5px}.nav-subitem.active .subitem-dot{background:var(--color-primary)}.sidebar-footer{border-top:1px solid var(--color-border);display:flex;flex-direction:column;gap:6px;padding:10px 8px}.sidebar-account{align-items:center;display:flex;gap:10px;padding:4px 6px}.account-avatar{align-items:center;background:var(--color-primary);border-radius:50%;color:var(--color-on-primary);display:inline-flex;flex:none;font-size:12px;font-weight:700;height:30px;justify-content:center;width:30px}.account-info{display:flex;flex-direction:column;min-width:0}.account-email{color:var(--color-text);font-size:12px;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-role{color:var(--color-text-faint);font-size:11px}.sidebar-logout{align-items:center;background:#0000;border:none;border-radius:var(--radius-sm);color:var(--color-text-muted);cursor:pointer;display:flex;font-family:var(--font-base);font-size:var(--text-base);font-weight:500;gap:12px;padding:9px 10px;text-align:left;width:100%}.sidebar-logout:hover{background:var(--color-hover-overlay);box-shadow:none;color:var(--color-text)}.theme-toggle{align-items:center;background:#0000;border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);color:var(--color-text);cursor:pointer;display:inline-flex;font-size:16px;height:40px;justify-content:center;line-height:1;transition:background-color .2s ease;width:40px}.theme-toggle:hover{background:var(--color-hover-overlay);box-shadow:none}.sidebar.collapsed .account-info,.sidebar.collapsed .nav-chevron,.sidebar.collapsed .nav-label,.sidebar.collapsed .sidebar-logout .nav-label{display:none}.sidebar.collapsed .nav-item,.sidebar.collapsed .sidebar-account,.sidebar.collapsed .sidebar-logout{gap:0;justify-content:center}.sidebar.collapsed .nav-item.active{box-shadow:none}.sidebar.collapsed .admin-subnav{background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:0 10px 28px #0006;display:none;left:100%;min-width:210px;padding:8px;position:absolute;top:0;z-index:50}.sidebar.collapsed .admin-group:focus-within .admin-subnav,.sidebar.collapsed .admin-group:hover .admin-subnav{display:flex}.sidebar.collapsed .admin-subnav .nav-label{display:inline}.sidebar-scrim{display:none}@media (max-width:1024px){.sidebar{left:0;position:fixed;top:0;transform:translateX(-100%);transition:transform .2s ease;z-index:100}.sidebar,.sidebar.collapsed{width:240px}.sidebar.collapsed .account-info,.sidebar.collapsed .nav-chevron,.sidebar.collapsed .nav-label,.sidebar.collapsed .sidebar-logout .nav-label{display:inline}.sidebar.collapsed .nav-item,.sidebar.collapsed .sidebar-account,.sidebar.collapsed .sidebar-logout{gap:12px;justify-content:flex-start}.sidebar.mobile-open{transform:translateX(0)}.sidebar.collapsed .admin-subnav{background:#0000;border:none;box-shadow:none;display:none;min-width:0;padding:2px 0 6px;position:static}.sidebar.collapsed .admin-subnav.open{display:flex}.sidebar-scrim{background:#00000073;display:block;inset:0;opacity:0;pointer-events:none;position:fixed;transition:opacity .2s ease;z-index:90}.sidebar-scrim.open{opacity:1;pointer-events:auto}}.topbar{align-items:center;background:var(--color-bg);border-bottom:1px solid var(--color-border);display:flex;gap:12px;padding:14px 20px;position:-webkit-sticky;position:sticky;top:0;z-index:20}.topbar-menu{background:#0000;border:none;border-radius:var(--radius-sm);color:var(--color-text);display:none;padding:6px}.topbar-menu:hover{background:var(--color-hover-overlay);box-shadow:none}.topbar-title{align-items:baseline;display:flex;gap:2px;min-width:0}.topbar-title h1{font-size:var(--text-xl);margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topbar-crumb{color:var(--color-text-faint);font-size:var(--text-base)}.topbar-actions{margin-left:auto}@media (max-width:1024px){.topbar-menu{display:inline-flex}}.app-shell{background:var(--color-bg);display:flex;min-height:100vh}.app-main{display:flex;flex:1 1;flex-direction:column;min-width:0}.app-content{flex:1 1;min-width:0}.modal-overlay{align-items:center;background:#0009;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal-content{background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:0 10px 40px #0003;max-width:500px;padding:30px;width:90%}.modal-content h3{color:var(--color-text);margin-bottom:20px}.modal-content p{color:var(--color-text-muted);margin-bottom:20px}.modal-content textarea{border:2px solid var(--color-border);border-radius:var(--radius-sm);font-family:Montserrat,sans-serif;margin-bottom:20px;padding:12px;width:100%}.modal-buttons{display:flex;gap:10px;justify-content:flex-end}.modal-buttons button{font-size:.9rem;padding:10px 20px}.dashboard-page{margin:0 auto;max-width:1000px;padding:20px}.dashboard-tabs{border-bottom:2px solid var(--color-primary-text);display:flex;gap:18px;margin-bottom:16px}.dashboard-tabs button{background:none;border:none;color:var(--color-text-muted);cursor:pointer;font-size:15px;padding:8px 2px}.dashboard-tabs button.active{border-bottom:2px solid var(--color-primary-text);color:var(--color-primary-text);font-weight:700}.dashboard-tabs button:disabled{cursor:not-allowed}.summary-cards{display:flex;gap:10px;margin-bottom:16px}.summary-card{border:1px solid var(--color-border);border-radius:var(--radius-md);flex:1 1;padding:12px;text-align:center}.summary-card .value{color:var(--color-text);font-size:22px;font-weight:700}.summary-card .label{color:var(--color-text-muted);font-size:11px}.dashboard-filters{align-items:center;display:flex;gap:6px;margin-bottom:12px}.dashboard-filters input,.dashboard-filters select{flex:1 1;min-width:0}.team-chip{background:var(--color-surface-2);border-radius:var(--radius-sm);color:var(--color-text-muted);font-size:12px;padding:2px 10px}.my-submissions{margin:0 auto;max-width:1000px;padding:20px}.my-submissions-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.submissions-tabs{display:flex;gap:8px;margin-bottom:12px}.submissions-tabs .tab{background:none;border:none;color:var(--color-text-muted);cursor:pointer;padding:8px 4px}.submissions-tabs .tab.active{border-bottom:2px solid var(--color-primary-text);color:var(--color-text);font-weight:600}.submissions-table{border-collapse:collapse;font-size:14px;width:100%}.submissions-table td,.submissions-table th{border-top:1px solid var(--color-border);padding:8px;text-align:left}.submissions-actions button{margin-right:6px}.submissions-note-row td{background:var(--color-danger-tint);color:var(--color-danger-text);font-size:13px}.submissions-empty{color:var(--color-text-muted);padding:24px 0}.status-badge{border-radius:var(--radius-sm);font-size:12px;padding:2px 8px}.status-draft{background:var(--color-surface-2);color:var(--color-text-muted)}.status-submitted{background:var(--color-secondary);color:var(--color-on-secondary)}.status-approved{background:var(--color-success-tint);color:var(--color-success-text)}.status-rejected{background:var(--color-danger-tint);color:var(--color-danger-text)}.kpi-bundle-table{border-collapse:collapse;margin:10px 0;width:100%}.kpi-bundle-table td,.kpi-bundle-table th{border-top:1px solid var(--color-border);padding:6px;text-align:left}.individual-submissions{margin:0 auto;max-width:1000px;padding:20px}.review-filters{align-items:center;display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}.review-status-toggle button{background:none;border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;padding:6px 12px}.review-status-toggle button.active{background:var(--color-secondary);border-color:var(--color-secondary);color:var(--color-on-secondary)}.admin-content{background:var(--color-surface);border-radius:var(--radius-md);box-shadow:0 4px 15px #0000001a;margin:var(--space-6);padding:var(--space-6)}.admin-management h2,.registration-queue h2,.user-management h2{color:var(--color-text);margin-bottom:20px}.registrations-table,.users-table{border-collapse:collapse;margin-top:20px;width:100%}.registrations-table th,.users-table th{background:var(--color-surface-2);border-bottom:2px solid var(--color-border);color:var(--color-text);font-weight:600;padding:12px;text-align:left}.registrations-table td,.users-table td{border-bottom:1px solid var(--color-border);padding:12px}.registrations-table tr:hover,.users-table tr:hover{background:var(--color-surface-2)}.btn-approve{background:var(--color-success);border:none;border-radius:var(--radius-sm);color:var(--color-on-primary);cursor:pointer;font-size:.9rem;margin-right:8px;padding:8px 16px}.btn-approve:hover:not(:disabled){background:var(--color-success);opacity:.85}.btn-reject{background:var(--color-danger-solid);border:none;border-radius:var(--radius-sm);color:var(--color-on-secondary);cursor:pointer;font-size:.9rem;padding:8px 16px}.btn-reject:hover:not(:disabled){background:var(--color-danger)}.error-message{background-color:var(--color-danger-tint);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-danger-text);margin-bottom:20px;padding:12px}.kpi-systems{padding:20px}.kpi-systems h2,.kpi-systems>.btn-primary{margin-bottom:20px}.kpi-systems h2{color:var(--color-text)}.systems-table{border-collapse:collapse;margin-top:20px;width:100%}.systems-table thead{background-color:var(--color-surface-2);border-bottom:2px solid var(--color-primary-text)}.systems-table td,.systems-table th{border-bottom:1px solid var(--color-border);padding:12px;text-align:left}.systems-table th{color:var(--color-text);font-weight:600}.systems-table td button{font-size:12px;margin-right:8px;padding:6px 12px}.btn-primary{border:none;border-radius:var(--radius-sm);cursor:pointer;display:inline-block;font-size:.95rem;padding:10px 20px;width:auto}.btn-primary:hover:not(:disabled){background:var(--color-primary-hover)}.btn-primary:disabled{cursor:not-allowed;opacity:.6}.btn-edit{background:var(--color-primary);border:none;border-radius:var(--radius-sm);cursor:pointer;font-size:.85rem;padding:6px 12px}.btn-edit:hover:not(:disabled){background:var(--color-primary-hover)}.btn-secondary{border:none;border-radius:var(--radius-sm);cursor:pointer;font-size:.85rem;padding:6px 12px}.btn-secondary:hover:not(:disabled){background:var(--color-hover-overlay)}.modal-content form{display:flex;flex-direction:column;gap:15px}.modal-content label{color:var(--color-text);display:flex;flex-direction:column;font-weight:600}.modal-content input,.modal-content textarea{border:2px solid var(--color-border);border-radius:var(--radius-sm);font-family:Montserrat,sans-serif;font-size:.95rem;margin-top:8px;padding:10px}.modal-content textarea{min-height:80px;resize:vertical}.modal-content form>button{font-size:.95rem;margin-top:10px;padding:10px 20px}.user-kpi-assignments{padding:20px}.user-kpi-assignments h2{color:var(--color-text);margin-bottom:20px}.assignments-container{max-width:1200px}.users-list{flex:1 1;min-width:250px}.users-list h3{color:var(--color-text);font-size:16px;margin-bottom:15px}.user-selector{border:1px solid var(--color-border);border-radius:var(--radius-sm);max-height:400px;overflow-y:auto}.user-item{border-bottom:1px solid var(--color-border);cursor:pointer;padding:12px;transition:background-color .2s}.user-item.selected,.user-item:hover{background-color:var(--color-surface-2)}.user-item.selected{border-left:3px solid var(--color-primary-text)}.user-name{color:var(--color-text);font-size:14px;font-weight:600}.user-email{color:var(--color-text-muted);font-size:12px;margin-top:2px}.user-role{color:var(--color-text-faint);font-size:11px;margin-top:2px}.assignments-grid{flex:1 1;min-width:300px}.assignments-grid h3{font-size:16px}.assignment-form h4,.assignments-grid h3{color:var(--color-text);margin-bottom:15px}.assignment-form h4{font-size:14px}.system-checkboxes{display:flex;flex-direction:column;gap:12px}.checkbox-item{align-items:center;border-radius:var(--radius-sm);cursor:pointer;display:flex;padding:8px;transition:background-color .2s}.checkbox-item:hover{background-color:var(--color-surface-2)}.checkbox-item input[type=checkbox]{cursor:pointer;height:18px;margin-right:10px;width:18px}.checkbox-item span{color:var(--color-text);font-size:14px}.system-country{color:var(--color-text-faint);font-size:12px;margin-left:5px}.kpi-library{padding:20px}.kpi-library h2{color:var(--color-text);margin-bottom:10px}.kpi-library .subtitle{color:var(--color-text-muted);font-size:14px;margin-bottom:20px}.system-accordion{border:1px solid var(--color-border);border-radius:var(--radius-sm);margin-bottom:20px;overflow:hidden}.accordion-heading{margin:0}.accordion-header{align-items:center;border:none;border-bottom:1px solid var(--color-border);color:inherit;cursor:pointer;display:flex;font:inherit;gap:12px;padding:15px;text-align:left;transition:background-color .2s;width:100%}.accordion-header,.accordion-header:hover{background-color:var(--color-surface-2)}.accordion-header:focus-visible{outline:2px solid var(--color-focus);outline-offset:-2px}.accordion-title{color:var(--color-text);flex:1 1;font-size:16px;font-weight:600}.toggle-icon{display:inline-block;width:16px}.system-meta{color:var(--color-text-faint);font-size:12px}.accordion-content{padding:15px}.definition-item{margin-bottom:15px}.definition-header{align-items:center;background-color:var(--color-surface);border:none;border-bottom:1px solid var(--color-border);color:inherit;cursor:pointer;font:inherit;gap:10px;padding:12px;text-align:left;transition:background-color .2s;width:100%}.definition-header:hover{background-color:var(--color-surface-2)}.definition-header:focus-visible{outline:2px solid var(--color-focus);outline-offset:-2px}.definition-summary{flex:1 1;font-size:14px}.kpi-type{background-color:var(--color-surface-2);border-radius:var(--radius-sm);color:var(--color-text);display:inline-block;font-size:11px;font-weight:500;margin-left:8px;padding:2px 8px}.definition-details{background-color:var(--color-surface);padding:12px}.detail-row{display:flex;gap:12px;margin-bottom:10px}.detail-row .detail-label{color:var(--color-text);font-weight:600;min-width:120px}.detail-row span{color:var(--color-text);flex:1 1}.scoring-rules{border-top:1px solid var(--color-border);margin-top:15px;padding-top:15px}.scoring-rules h4{color:var(--color-text);font-size:13px;margin:0 0 10px}.rules-table{font-size:12px}.rules-table td,.rules-table th,.rules-table thead{border-bottom:1px solid var(--color-border)}.rules-table td,.rules-table th{padding:8px;text-align:left}.kpi-library .no-data{color:var(--color-text-faint);font-size:12px;padding:8px}.kpi-system-edit-modal{display:flex;flex-direction:column;max-height:80vh;max-width:800px}.kpi-system-edit-modal h2{color:var(--color-text);margin-bottom:20px}.modal-tabs{border-bottom:2px solid var(--color-border);display:flex;gap:10px;margin-bottom:20px}.modal-tab{background:none;border:none;border-bottom:3px solid #0000;color:var(--color-text-muted);cursor:pointer;font-weight:600;padding:12px 20px;transition:all .3s ease}.modal-tab.active{border-bottom-color:var(--color-primary-text);color:var(--color-primary-text)}.modal-tab-content{flex:1 1;overflow-y:auto;padding:20px 0}.definitions-tab,.rules-tab{display:flex;flex-direction:column;gap:20px}.definitions-list{display:flex;flex-direction:column;gap:12px}.definition-item{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:12px}.definition-header{align-items:flex-start;display:flex;gap:12px;justify-content:space-between}.definition-header strong{color:var(--color-text);display:block;margin-bottom:4px}.definition-description{color:var(--color-text-muted);font-size:13px;margin:0}.definition-actions{display:flex;gap:8px}.definition-form{background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-sm);display:flex;flex-direction:column;gap:12px;padding:15px}.definition-form h4{color:var(--color-text);margin:0}.definition-form input,.definition-form textarea{border:1px solid var(--color-border);border-radius:var(--radius-sm);font-family:inherit;font-size:14px;padding:10px}.definition-form textarea{min-height:60px;resize:vertical}.definition-form .kpi-code-preview{color:var(--color-text-muted);display:block;font-size:.85rem;margin:-4px 0 0}.definition-form .kpi-code-preview code{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:.85rem;padding:1px 6px}.definition-form button{border:none;border-radius:var(--radius-sm);cursor:pointer;font-weight:600;padding:8px 16px}.definition-rules-section{margin-bottom:20px}.definition-rules-section h4{color:var(--color-text);font-size:14px;margin-bottom:12px}.rules-table{border-collapse:collapse;font-size:13px;width:100%}.rules-table thead{background-color:var(--color-surface-2);border-bottom:2px solid var(--color-border)}.rules-table th{color:var(--color-text);font-weight:600;padding:10px;text-align:left}.rules-table td{border-bottom:1px solid var(--color-border);padding:10px}.rules-table input{border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:13px;padding:6px;width:100px}.modal-form{gap:15px}.modal-form,.modal-form .form-group{display:flex;flex-direction:column}.modal-form label{color:var(--color-text);font-weight:600;margin-bottom:6px}.modal-form input,.modal-form textarea{border:1px solid var(--color-border);border-radius:var(--radius-sm);font-family:inherit;font-size:14px;padding:10px}.modal-form textarea{min-height:80px;resize:vertical}.roles-management{padding:20px}.roles-management h2{color:var(--color-text);margin-bottom:20px}.role-section{border:1px solid var(--color-border);border-radius:var(--radius-sm);margin-bottom:15px;overflow:hidden}.role-header{align-items:center;background:var(--color-surface-2);border:none;cursor:pointer;display:flex;justify-content:space-between;padding:15px;text-align:left;transition:background-color .2s;width:100%}.role-header:hover{background:var(--color-hover-overlay)}.role-header h3{color:var(--color-text);margin:0}.role-description{color:var(--color-text-muted);font-size:13px;margin:5px 0 0}.toggle-icon{color:var(--color-text-muted);font-size:12px}.role-permissions{background:var(--color-surface);padding:15px}.permission-category{margin-bottom:20px}.permission-category h4{color:var(--color-text);font-size:14px;margin:0 0 10px}.permission-item{align-items:flex-start;border-radius:var(--radius-sm);cursor:pointer;display:flex;gap:10px;padding:8px;transition:background-color .2s}.permission-item:hover{background:var(--color-surface-2)}.permission-item input[type=checkbox]{cursor:pointer;margin-top:3px}.permission-item span{flex:1 1}.permission-item strong{color:var(--color-text);font-size:14px}.permission-item p{color:var(--color-text-muted);font-size:12px;margin:3px 0 0}.supervisor-assignments{padding:20px}.supervisor-assignments h2{color:var(--color-text);margin-bottom:20px}.assignments-container{display:flex;gap:30px}.supervisors-list{flex:0 0 300px}.supervisors-list h3{color:var(--color-text);font-size:16px;margin-bottom:15px}.supervisor-details{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);flex:1 1;padding:20px}.supervisor-details h3{color:var(--color-text);margin-top:0}.supervisor-details .section{border-bottom:1px solid var(--color-border);margin-bottom:25px;padding-bottom:20px}.supervisor-details .section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.supervisor-details h4{color:var(--color-text);font-size:14px;margin:0 0 15px}.supervisees-table{border-collapse:collapse;margin-bottom:15px;width:100%}.supervisees-table th{background:var(--color-surface-2);color:var(--color-text);font-size:13px;font-weight:600;padding:10px;text-align:left}.supervisees-table td{border-bottom:1px solid var(--color-border);padding:10px}.supervisees-table input[type=checkbox]{cursor:pointer}.countries-list{display:flex;flex-wrap:wrap;gap:10px}.country-item{align-items:center;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);display:flex;font-size:14px;gap:8px;padding:8px 12px}.country-item button{background:none;border:none;color:var(--color-text-faint);cursor:pointer;font-size:16px;padding:0}.country-item button:hover{color:var(--color-text)}.supervisor-assignments label{color:var(--color-text);display:block;font-size:14px;font-weight:600;margin-bottom:8px}.supervisor-assignments select{border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:14px;max-width:300px;padding:8px;width:100%}.supervisor-help{color:var(--color-text-muted);font-size:14px;margin:0 0 16px;max-width:70ch}.supervisor-assignments .empty-state{color:var(--color-text-muted);font-style:italic;padding:12px 0}.badge-supervisor{background:var(--color-surface-2);color:var(--color-primary-text)}.user-item .user-name .badge{margin-left:6px;vertical-align:middle}.team-lead-badge{background:var(--color-primary);color:var(--color-on-primary);margin-left:8px;vertical-align:middle}.field-help{color:var(--color-text-muted);font-size:13px;margin:4px 0 0}.report-field-code-preview,.report-field-code-readonly{color:var(--color-text-muted);display:block;font-size:13px;margin:4px 0 8px}.report-field-code-preview code,.report-field-code-readonly code{color:var(--color-primary-text)}.user-management{padding:0}.user-mgmt-controls{display:flex;flex-wrap:wrap;gap:15px;margin-bottom:20px}.user-mgmt-filter,.user-mgmt-search{border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:14px;padding:10px 15px}.user-mgmt-search{flex:1 1;min-width:200px}.user-mgmt-filter{min-width:150px}.user-mgmt-table{border-collapse:collapse;margin-bottom:20px;width:100%}.user-mgmt-table th{background:var(--color-surface-2);border-bottom:2px solid var(--color-border);color:var(--color-text);font-weight:600;padding:12px;text-align:left}.user-mgmt-table td{border-bottom:1px solid var(--color-border);padding:12px}.user-mgmt-table tbody tr:hover{background:var(--color-surface-2)}.user-mgmt-no-data{color:var(--color-text-faint);padding:20px!important;text-align:center}.user-mgmt-actions{display:flex;gap:8px}.btn-edit{color:var(--color-on-primary)}.btn-edit,.btn-edit:hover{background:var(--color-success)}.btn-edit:hover{opacity:.85}.btn-deactivate{color:var(--color-on-secondary)}.btn-deactivate,.btn-deactivate:hover{background:var(--color-danger-solid)}.btn-reactivate{background:var(--color-success);color:var(--color-on-primary)}.btn-reactivate:hover{background:var(--color-success);opacity:.85}.user-mgmt-modal{padding:20px}.user-mgmt-modal h2{color:var(--color-text);font-size:20px;margin-bottom:20px}.user-mgmt-modal-text{color:var(--color-text-muted);line-height:1.6;margin-bottom:20px}.form-group input,.form-group select{border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:14px;padding:10px;width:100%}.form-control-readonly{background:var(--color-surface-2);cursor:not-allowed}.user-mgmt-modal-actions{display:flex;gap:10px;margin-top:20px}.user-mgmt-modal-actions button{flex:1 1;padding:10px}.user-mgmt-error{background:var(--color-danger-tint);border-left:4px solid var(--color-danger);border-radius:var(--radius-sm);color:var(--color-danger-text);margin-bottom:15px;padding:12px}.user-mgmt-loading{color:var(--color-text-muted);padding:20px;text-align:center}.form-control-error{background-color:var(--color-danger-tint)!important;border-color:var(--color-danger)!important;color:var(--color-danger-text)!important}.form-error{color:var(--color-danger);display:block;font-size:12px;margin-top:5px}.admin-management{padding:0}.admin-mgmt-controls{display:flex;flex-wrap:wrap;gap:15px;margin-bottom:20px}.admin-mgmt-filter,.admin-mgmt-search{border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:14px;padding:10px 15px}.admin-mgmt-search{flex:1 1;min-width:200px}.admin-mgmt-filter{min-width:150px}.admin-mgmt-tables-container{border:1px solid var(--color-border);border-radius:var(--radius-sm);overflow:hidden}.admin-mgmt-table-header{background:var(--color-surface);border-collapse:collapse;width:100%}.admin-mgmt-table-header th{background:var(--color-surface-2);border-bottom:2px solid var(--color-border);color:var(--color-text);font-weight:600;padding:12px;text-align:left}.admin-mgmt-section{border-bottom:1px solid var(--color-border)}.admin-mgmt-section:last-child{border-bottom:none}.admin-mgmt-section-header{background:var(--color-surface-2);border-bottom:1px solid var(--color-border);color:var(--color-text);font-weight:600;padding:12px 15px}.admin-mgmt-table{background:var(--color-surface);border-collapse:collapse;width:100%}.admin-mgmt-table td{border-bottom:1px solid var(--color-border);padding:12px}.admin-mgmt-table tbody tr:hover{background:var(--color-surface-2)}.admin-mgmt-no-data{color:var(--color-text-faint);padding:20px;text-align:center}.admin-mgmt-actions{display:flex;gap:8px}.badge{border-radius:var(--radius-md);display:inline-block;font-size:12px;font-weight:600;padding:4px 12px}.badge-admin{background:var(--color-secondary);color:var(--color-on-secondary)}.badge-manager{background:var(--color-primary);color:var(--color-on-primary)}.badge-bd-executive,.badge-country-manager{background:var(--color-surface-2);color:var(--color-primary-text)}.badge-data-viewer{background:var(--color-surface-2);color:var(--color-text-muted)}.badge-active{background:var(--color-success-tint);color:var(--color-success-text)}.badge-inactive{background:var(--color-danger-tint);color:var(--color-danger-text)}.btn{border:none;border-radius:var(--radius-sm);cursor:pointer;font-size:12px;font-weight:600;padding:6px 12px;transition:all .2s}.btn-promote{background:var(--color-primary);color:var(--color-on-primary)}.btn-promote:hover{background:var(--color-primary-active)}.btn-demote{color:var(--color-on-secondary)}.btn-demote,.btn-demote:hover{background:var(--color-secondary)}.btn-demote:hover{opacity:.85}.btn-primary{background:var(--color-primary);color:var(--color-on-primary)}.btn-primary:hover{background:var(--color-primary-active)}.btn-secondary{background:var(--color-surface-2);color:var(--color-text)}.btn-secondary:hover{background:var(--color-border)}.btn:disabled{cursor:not-allowed;opacity:.6}.admin-mgmt-modal{padding:20px}.admin-mgmt-modal h2{color:var(--color-text);font-size:20px;margin-bottom:15px}.admin-mgmt-modal-subtitle{color:var(--color-text-muted);font-size:14px;margin-bottom:20px}.role-info{background:var(--color-surface-2);border-radius:var(--radius-sm);font-size:13px;line-height:1.6;margin-bottom:15px;padding:15px}.role-info strong{color:var(--color-text);display:block;margin-bottom:5px}.role-info p{color:var(--color-text-muted);margin:0}.form-group{margin-bottom:15px}.form-group label{color:var(--color-text);display:block;font-weight:500;margin-bottom:5px}.form-group select{border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:14px;padding:10px;width:100%}.admin-mgmt-warning{background:var(--color-surface-2);border-left:4px solid var(--color-accent);border-radius:var(--radius-sm);color:var(--color-text-muted);font-size:13px;margin-bottom:15px;padding:12px}.admin-mgmt-modal-actions{display:flex;gap:10px;margin-top:20px}.admin-mgmt-modal-actions button{flex:1 1;padding:10px}.admin-mgmt-error{background:var(--color-danger-tint);border-left:4px solid var(--color-danger);border-radius:var(--radius-sm);color:var(--color-danger-text);margin-bottom:15px;padding:12px}.admin-mgmt-loading{color:var(--color-text-muted);padding:20px;text-align:center}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--color-bg);font-family:var(--font-base);line-height:1.6}body,h1,h2,h3,h4,h5,h6{color:var(--color-text)}h1,h2,h3,h4,h5,h6{line-height:1.2}h1,h2{font-family:var(--font-display);font-weight:700}h3,h4,h5,h6{font-family:var(--font-base);font-weight:600}h1{font-size:var(--text-2xl)}h2{font-size:var(--text-xl)}h3{font-size:var(--text-lg)}a{color:var(--color-primary-text);text-decoration:none}a:hover{text-decoration:underline}button{align-items:center;border:none;border-radius:var(--radius-sm);cursor:pointer;display:inline-flex;font-family:var(--font-base);font-size:var(--text-base);font-weight:600;gap:8px;padding:12px 24px;transition:background-color .2s ease,box-shadow .2s ease,opacity .2s ease}button:hover{box-shadow:0 4px 15px #0000004d}button:active{transform:scale(.98)}button:disabled{box-shadow:none;cursor:not-allowed;opacity:.45}input,select,textarea{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);font-family:var(--font-base);font-size:var(--text-base);padding:12px;transition:border-color .2s ease,box-shadow .2s ease}input::placeholder,textarea::placeholder{color:var(--color-text-muted)}input:focus,select:focus,textarea:focus{border-color:var(--color-focus);box-shadow:0 0 0 3px var(--color-focus-ring);outline:none}:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}@media (prefers-reduced-motion:reduce){*,:after,:before{animation:none!important;scroll-behavior:auto!important;transition:none!important}}.app{margin:0 auto;max-width:1200px;padding:20px}@media (prefers-reduced-motion:no-preference){.theme-transition,.theme-transition *,.theme-transition :after,.theme-transition :before{transition:background-color .15s ease,border-color .15s ease,color .15s ease!important}}
/*# sourceMappingURL=main.45ac89fd.css.map*/