*{box-sizing:border-box;margin:0;padding:0}body{background-color:#f4f6f9;color:#333;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;font-size:16px}a{color:inherit;text-decoration:none}button{cursor:pointer}input,select,textarea{font-family:inherit;font-size:inherit}.login-container{align-items:center;background:linear-gradient(135deg,#036,#0055a5);display:flex;justify-content:center;min-height:100vh}.login-card{background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;max-width:420px;padding:48px;width:100%}.login-header{margin-bottom:32px;text-align:center}.login-header h1{color:#036;font-size:28px;font-weight:700;margin-bottom:8px}.login-header p{color:#666;font-size:14px}.login-error{background-color:#fff0f0;border:1px solid #fcc;border-radius:6px;color:#c00;font-size:14px;padding:12px 16px}.form-group,.login-error{margin-bottom:20px}.form-group label{font-size:14px;margin-bottom:8px}.form-group input{border:1px solid #ddd;border-radius:6px;box-sizing:border-box;font-size:15px;outline:none;padding:12px 16px;transition:border-color .2s;width:100%}.form-group input:focus{border-color:#0055a5;box-shadow:0 0 0 3px #0055a51a}.login-btn{background-color:#036;border:none;border-radius:6px;color:#fff;display:block;font-size:16px;font-weight:600;letter-spacing:.3px;margin-top:12px;padding:14px;transition:background-color .2s;width:100%}.login-btn:hover{background-color:#0055a5}.login-btn:disabled{background-color:#999;cursor:not-allowed}.login-footer{color:#999;font-size:12px;margin-top:32px;text-align:center}.sidebar{background-color:#036;bottom:0;color:#fff;display:flex;flex-direction:column;left:0;min-height:100vh;position:fixed;top:0;width:260px}.sidebar-header{border-bottom:1px solid #ffffff1a;padding:28px 24px}.sidebar-header h2{color:#fff;font-size:20px;font-weight:700;margin-bottom:4px}.sidebar-header p{color:#fff9;font-size:12px}.sidebar-nav{flex:1 1;overflow-y:auto;padding:16px 0}.nav-item{border-left:3px solid #0000;color:#ffffffbf;display:block;font-size:14px;padding:12px 24px;transition:all .2s}.nav-item:hover{background-color:#ffffff14;color:#fff}.nav-item.active{background-color:#ffffff1f;border-left:3px solid #4da6ff;color:#fff;font-weight:600}.sidebar-footer{border-top:1px solid #ffffff1a;padding:20px 24px}.sidebar-user{margin-bottom:12px}.sidebar-user-name{color:#fff;font-size:14px;font-weight:600;margin-bottom:2px}.sidebar-user-role{color:#ffffff80;font-size:11px;letter-spacing:.5px;text-transform:uppercase}.logout-btn{background-color:#ffffff1a;border:1px solid #fff3;border-radius:6px;color:#fff;font-size:13px;padding:9px;transition:background-color .2s;width:100%}.logout-btn:hover{background-color:#fff3}.layout{display:flex;min-height:100vh}.main-content{background-color:#f4f6f9;flex:1 1;margin-left:260px;min-height:100vh;padding:32px}.dashboard-header{margin-bottom:32px}.dashboard-header h1{color:#036;font-size:26px;font-weight:700;margin-bottom:6px}.dashboard-header p{color:#666;font-size:14px}.metrics-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));margin-bottom:40px}.metric-card{background:#fff;border-left:4px solid #0055a5;border-radius:10px;box-shadow:0 2px 8px #0000000f;padding:24px}.metric-card.green{border-left-color:#28a745}.metric-card.orange{border-left-color:#fd7e14}.metric-card.red{border-left-color:#dc3545}.metric-card.purple{border-left-color:#6f42c1}.metric-card.teal{border-left-color:#20c997}.metric-label{color:#666;font-size:13px;font-weight:600;letter-spacing:.4px;margin-bottom:10px;text-transform:uppercase}.metric-value{color:#036;font-size:32px;font-weight:700}.metric-sub{color:#999;font-size:12px;margin-top:6px}.dashboard-section{background:#fff;border-radius:10px;box-shadow:0 2px 8px #0000000f;margin-bottom:24px;padding:24px}.dashboard-section h2{border-bottom:1px solid #eee;color:#036;font-size:16px;font-weight:700;margin-bottom:16px;padding-bottom:12px}.activity-item{align-items:center;border-bottom:1px solid #f5f5f5;display:flex;font-size:14px;justify-content:space-between;padding:10px 0}.activity-item:last-child{border-bottom:none}.activity-action{color:#333}.activity-time{color:#999;font-size:12px}.lifecycle-tabs{display:flex;gap:8px;margin-bottom:28px}.tab-btn{background-color:initial;border:2px solid #036;border-radius:6px;color:#036;cursor:pointer;font-size:14px;font-weight:600;padding:10px 24px;transition:all .2s}.tab-btn.active,.tab-btn:hover{background-color:#036;color:#fff}.lifecycle-card{background:#fff;border-radius:10px;box-shadow:0 2px 8px #0000000f;max-width:600px;padding:32px}.lifecycle-card h2{color:#036;font-size:20px;font-weight:700;margin-bottom:8px}.lifecycle-card p{color:#666;font-size:14px;margin-bottom:24px}.form-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.form-group{display:flex;flex-direction:column;margin-bottom:16px}.form-group label{color:#333;font-size:13px;font-weight:600;margin-bottom:6px}.form-group input,.form-group select{border:1px solid #ddd;border-radius:6px;font-size:14px;outline:none;padding:10px 14px;transition:border-color .2s}.form-group input:focus,.form-group select:focus{border-color:#0055a5;box-shadow:0 0 0 3px #0055a51a}.form-actions{margin-top:24px}.error-message,.success-message{margin-bottom:20px;padding:12px 16px}.btn-danger,.btn-primary{padding:11px 28px}.btn-danger{background-color:#dc3545;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;transition:background-color .2s}.btn-danger:hover{background-color:#bd2130}.btn-danger:disabled{background-color:#999;cursor:not-allowed}.user-select-info{background-color:#f0f4ff;border:1px solid #d0dcff;border-radius:6px;color:#036;font-size:13px;margin-bottom:16px;padding:12px 16px}.groups-layout{grid-gap:24px;align-items:start;display:grid;gap:24px;grid-template-columns:280px 1fr}.groups-sidebar{background:#fff;border-radius:10px;box-shadow:0 2px 8px #0000000f;overflow:hidden}.groups-sidebar h2{border-bottom:1px solid #eee;color:#666;font-size:14px;font-weight:700;letter-spacing:.5px;padding:16px 20px;text-transform:uppercase}.group-item{border-bottom:1px solid #f5f5f5;border-left:3px solid #0000;cursor:pointer;padding:14px 20px;transition:all .2s}.group-item:hover{background-color:#f8f9fa}.group-item.active{background-color:#f0f4ff;border-left-color:#036}.group-item-name{color:#333;font-size:14px;font-weight:600;margin-bottom:2px}.group-item.active .group-item-name{color:#036}.group-item-desc{color:#999;font-size:12px}.group-detail{background:#fff;border-radius:10px;box-shadow:0 2px 8px #0000000f;padding:28px}.group-detail-header{align-items:center;border-bottom:1px solid #eee;display:flex;justify-content:space-between;margin-bottom:24px;padding-bottom:16px}.group-detail-header h2{color:#036;font-size:20px;font-weight:700}.member-count{background:#f0f4ff;border-radius:20px;color:#666;font-size:13px;padding:4px 12px}.members-table{border-collapse:collapse;width:100%}.members-table th{background-color:#f8f9fa;border-bottom:1px solid #eee;color:#666;font-size:12px;font-weight:700;letter-spacing:.5px;padding:12px 16px;text-align:left;text-transform:uppercase}.members-table td{border-bottom:1px solid #f5f5f5;color:#333;font-size:14px;padding:12px 16px}.members-table tr:last-child td{border-bottom:none}.members-table tr:hover td{background-color:#f8f9fa}.add-member-section{align-items:center;border-top:1px solid #eee;display:flex;gap:12px;margin-top:24px;padding-top:20px}.add-member-section select{border:1px solid #ddd;border-radius:6px;flex:1 1;font-size:14px;outline:none;padding:10px 14px}.add-member-section select:focus{border-color:#0055a5;box-shadow:0 0 0 3px #0055a51a}.apps-layout{grid-gap:24px;align-items:start;display:grid;gap:24px;grid-template-columns:280px 1fr}.apps-sidebar{background:#fff;border-radius:10px;box-shadow:0 2px 8px #0000000f;overflow:hidden}.apps-sidebar h2{border-bottom:1px solid #eee;color:#666;font-size:14px;font-weight:700;letter-spacing:.5px;padding:16px 20px;text-transform:uppercase}.app-item{border-bottom:1px solid #f5f5f5;border-left:3px solid #0000;cursor:pointer;padding:14px 20px;transition:all .2s}.app-item:hover{background-color:#f8f9fa}.app-item.active{background-color:#f0f4ff;border-left-color:#036}.app-item-name{color:#333;font-size:14px;font-weight:600;margin-bottom:2px}.app-item.active .app-item-name{color:#036}.app-item-status{color:#999;font-size:12px}.app-detail{background:#fff;border-radius:10px;box-shadow:0 2px 8px #0000000f;padding:28px}.app-detail-header{align-items:center;border-bottom:1px solid #eee;display:flex;justify-content:space-between;margin-bottom:24px;padding-bottom:16px}.app-detail-header h2{color:#036;font-size:20px;font-weight:700}.app-status-badge{background-color:#d4edda;border-radius:20px;color:#155724;font-size:12px;font-weight:600;padding:4px 12px}.users-table{border-collapse:collapse;width:100%}.users-table th{background-color:#f8f9fa;border-bottom:1px solid #eee;color:#666;font-size:12px;font-weight:700;letter-spacing:.5px;padding:12px 16px;text-align:left;text-transform:uppercase}.users-table td{border-bottom:1px solid #f5f5f5;color:#333;font-size:14px;padding:12px 16px}.users-table tr:last-child td{border-bottom:none}.users-table tr:hover td{background-color:#f8f9fa}.btn-remove{background-color:#fff0f0;border:1px solid #fcc;border-radius:4px;color:#c00;cursor:pointer;font-size:12px;font-weight:600;padding:5px 12px;transition:all .2s}.btn-remove:hover{background-color:#fcc}.add-user-section{align-items:center;border-top:1px solid #eee;display:flex;gap:12px;margin-top:24px;padding-top:20px}.add-user-section select{border:1px solid #ddd;border-radius:6px;flex:1 1;font-size:14px;outline:none;padding:10px 14px}.add-user-section select:focus{border-color:#0055a5;box-shadow:0 0 0 3px #0055a51a}.btn-primary{white-space:nowrap}.btn-primary:disabled{background-color:#999;cursor:not-allowed}.no-selection{align-items:center;color:#999;display:flex;font-size:14px;height:200px;justify-content:center}.user-count{background:#f0f4ff;border-radius:20px;color:#666;font-size:13px;padding:4px 12px}.reviews-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:28px}.reviews-header h1{color:#036;font-size:24px;font-weight:700}.campaigns-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));margin-bottom:32px}.campaign-card{background:#fff;border-left:4px solid #036;border-radius:10px;box-shadow:0 2px 8px #0000000f;cursor:pointer;padding:24px;transition:box-shadow .2s}.campaign-card:hover{box-shadow:0 4px 16px #0000001f}.campaign-card.selected{background-color:#f0f4ff;border-left-color:#0055a5}.campaign-card.COMPLETED{border-left-color:#28a745}.campaign-card.CANCELLED{border-left-color:#dc3545}.campaign-name{color:#036;font-size:16px;font-weight:700;margin-bottom:8px}.campaign-meta{color:#666;font-size:12px;margin-bottom:12px}.campaign-status{border-radius:20px;display:inline-block;font-size:11px;font-weight:700;padding:4px 10px;text-transform:uppercase}.status-ACTIVE{background-color:#d1ecf1;color:#0c5460}.status-COMPLETED{background-color:#d4edda;color:#155724}.status-CANCELLED{background-color:#f8d7da;color:#721c24}.review-detail{background:#fff;border-radius:10px;box-shadow:0 2px 8px #0000000f;padding:28px}.review-detail-header{align-items:center;border-bottom:1px solid #eee;display:flex;justify-content:space-between;margin-bottom:24px;padding-bottom:16px}.review-detail-header h2{color:#036;font-size:18px;font-weight:700}.review-table{border-collapse:collapse;width:100%}.review-table th{background-color:#f8f9fa;border-bottom:1px solid #eee;color:#666;font-size:12px;font-weight:700;letter-spacing:.5px;padding:12px 16px;text-align:left;text-transform:uppercase}.review-table td{border-bottom:1px solid #f5f5f5;color:#333;font-size:14px;padding:12px 16px}.review-table tr:last-child td{border-bottom:none}.review-table tr:hover td{background-color:#f8f9fa}.decision-badge{border-radius:20px;display:inline-block;font-size:11px;font-weight:700;padding:4px 10px;text-transform:uppercase}.decision-PENDING{background-color:#fff3cd;color:#856404}.decision-APPROVED{background-color:#d4edda;color:#155724}.decision-REVOKED{background-color:#f8d7da;color:#721c24}.decision-actions{display:flex;gap:8px}.btn-approve{background-color:#d4edda;border:1px solid #c3e6cb;border-radius:4px;color:#155724;cursor:pointer;font-size:12px;font-weight:600;padding:5px 12px;transition:all .2s}.btn-approve:hover{background-color:#c3e6cb}.btn-revoke{background-color:#f8d7da;border:1px solid #f5c6cb;border-radius:4px;color:#721c24;cursor:pointer;font-size:12px;font-weight:600;padding:5px 12px;transition:all .2s}.btn-revoke:hover{background-color:#f5c6cb}.btn-complete{background-color:#28a745;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:background-color .2s}.btn-complete:hover{background-color:#218838}.empty-state{padding:40px}.progress-bar-container{background-color:#eee;border-radius:4px;height:6px;margin-top:12px;overflow:hidden}.progress-bar{background-color:#036;border-radius:4px;height:100%;transition:width .3s}.sod-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:28px}.sod-header h1{color:#036;font-size:24px;font-weight:700}.sod-actions{display:flex;gap:12px}.sod-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:1fr 1fr;margin-bottom:32px}.sod-section{background:#fff;border-radius:10px;box-shadow:0 2px 8px #0000000f;overflow:hidden}.sod-section-header{align-items:center;background-color:#f8f9fa;border-bottom:1px solid #eee;display:flex;justify-content:space-between;padding:16px 20px}.sod-section-header h2{color:#036;font-size:15px;font-weight:700}.sod-table{border-collapse:collapse;width:100%}.sod-table th{background-color:#f8f9fa;border-bottom:1px solid #eee;color:#666;font-size:11px;font-weight:700;letter-spacing:.5px;padding:12px 16px;text-align:left;text-transform:uppercase}.sod-table td{border-bottom:1px solid #f5f5f5;color:#333;font-size:13px;padding:12px 16px}.sod-table tr:last-child td{border-bottom:none}.sod-table tr:hover td{background-color:#f8f9fa}.risk-badge{border-radius:4px;display:inline-block;font-size:11px;font-weight:700;padding:3px 8px;text-transform:uppercase}.risk-LOW{background-color:#d4edda;color:#155724}.risk-MEDIUM{background-color:#fff3cd;color:#856404}.risk-HIGH{background-color:#f8d7da;color:#721c24}.risk-CRITICAL{background-color:#721c24;color:#fff}.violation-status{border-radius:4px;display:inline-block;font-size:11px;font-weight:700;padding:3px 8px;text-transform:uppercase}.status-OPEN{background-color:#f8d7da;color:#721c24}.status-REMEDIATED{background-color:#d4edda;color:#155724}.status-EXCEPTION{background-color:#fff3cd;color:#856404}.violation-actions{display:flex;gap:8px}.btn-remediate{background-color:#d4edda;border:1px solid #c3e6cb;border-radius:4px;color:#155724;cursor:pointer;font-size:11px;font-weight:600;padding:5px 10px;transition:all .2s}.btn-remediate:hover{background-color:#c3e6cb}.btn-exception{background-color:#fff3cd;border:1px solid #ffeeba;border-radius:4px;color:#856404;cursor:pointer;font-size:11px;font-weight:600;padding:5px 10px;transition:all .2s}.btn-exception:hover{background-color:#ffeeba}.btn-scan{background-color:#6f42c1;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:background-color .2s}.btn-scan:hover{background-color:#5a32a3}.btn-scan:disabled{background-color:#999;cursor:not-allowed}.modal{max-width:500px}.modal .form-group input,.modal .form-group select,.modal .form-group textarea{border:1px solid #ddd;border-radius:6px;font-family:inherit;font-size:14px;outline:none;padding:10px 14px}.modal .form-group input:focus,.modal .form-group select:focus,.modal .form-group textarea:focus{border-color:#0055a5;box-shadow:0 0 0 3px #0055a51a}.success-message{background-color:#d4edda;border:1px solid #c3e6cb;border-radius:6px;color:#155724;margin-bottom:16px}.error-message,.success-message{font-size:14px;padding:10px 16px}.empty-state{color:#999;font-size:14px;padding:32px;text-align:center}.scan-result{background-color:#f0f4ff;border:1px solid #d0dcff;border-radius:6px;color:#036;font-size:14px;font-weight:600;margin-bottom:16px;padding:12px 16px}.audit-toolbar{align-items:center;display:flex;flex-wrap:wrap;gap:12px;margin-bottom:24px}.audit-toolbar input,.audit-toolbar select{background-color:#fff;border:1px solid #ddd;border-radius:6px;font-size:14px;outline:none;padding:9px 14px;transition:border-color .2s}.audit-toolbar input:focus,.audit-toolbar select:focus{border-color:#0055a5;box-shadow:0 0 0 3px #0055a51a}.audit-toolbar input{flex:1 1;min-width:200px}.btn-export{background-color:#28a745;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:9px 20px;transition:background-color .2s;white-space:nowrap}.btn-export:hover{background-color:#218838}.btn-refresh{background-color:#0055a5;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:9px 20px;transition:background-color .2s;white-space:nowrap}.btn-refresh:hover{background-color:#036}.audit-table-container{background:#fff;border-radius:10px;box-shadow:0 2px 8px #0000000f;overflow:auto}.audit-table{border-collapse:collapse;font-size:13px;width:100%}.audit-table th{background-color:#f8f9fa;border-bottom:1px solid #eee;color:#666;font-size:11px;font-weight:700;letter-spacing:.5px;padding:12px 16px;text-align:left;text-transform:uppercase;white-space:nowrap}.audit-table td{border-bottom:1px solid #f5f5f5;color:#333;max-width:250px;overflow:hidden;padding:11px 16px;text-overflow:ellipsis;white-space:nowrap}.audit-table tr:last-child td{border-bottom:none}.audit-table tr:hover td{background-color:#f8f9fa}.severity-badge{border-radius:4px;display:inline-block;font-size:11px;font-weight:700;padding:3px 8px;text-transform:uppercase}.severity-INFO{background-color:#d1ecf1;color:#0c5460}.severity-WARN{background-color:#fff3cd;color:#856404}.severity-ERROR{background-color:#f8d7da;color:#721c24}.severity-DEBUG{background-color:#e2e3e5;color:#383d41}.outcome-SUCCESS{color:#28a745;font-weight:600}.outcome-FAILURE{color:#dc3545;font-weight:600}.outcome-SKIPPED{color:#fd7e14;font-weight:600}.audit-meta{align-items:center;color:#666;display:flex;font-size:13px;justify-content:space-between;margin-bottom:12px}.audit-count{color:#036;font-weight:600}.page-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:28px}.page-header h1{color:#036;font-size:24px;font-weight:700}.btn-primary{background-color:#036;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:background-color .2s}.btn-primary:hover{background-color:#0055a5}.table-container{background:#fff;border-radius:10px;box-shadow:0 2px 8px #0000000f;overflow:hidden}table{border-collapse:collapse;width:100%}thead{background-color:#f8f9fa}thead th{border-bottom:1px solid #eee;color:#666;font-size:12px;font-weight:700;letter-spacing:.5px;padding:14px 20px;text-align:left;text-transform:uppercase}tbody td{border-bottom:1px solid #f5f5f5;color:#333;font-size:14px;padding:14px 20px}tbody tr:last-child td{border-bottom:none}tbody tr:hover{background-color:#f8f9fa}.role-badge{border-radius:20px;display:inline-block;font-size:11px;font-weight:700;letter-spacing:.4px;padding:4px 10px;text-transform:uppercase}.role-ADMIN{background-color:#036;color:#fff}.role-PROVISIONER{background-color:#0055a5;color:#fff}.role-DEPROVISIONER{background-color:#6f42c1;color:#fff}.role-APP_OWNER{background-color:#20c997;color:#fff}.role-MANAGER{background-color:#fd7e14;color:#fff}.role-AUDITOR{background-color:#6c757d;color:#fff}.status-badge{border-radius:20px;display:inline-block;font-size:11px;font-weight:600;padding:4px 10px}.status-active{background-color:#d4edda;color:#155724}.status-inactive{background-color:#f8d7da;color:#721c24}.btn-toggle{border:none;border-radius:4px;cursor:pointer;font-size:12px;font-weight:600;padding:6px 14px;transition:opacity .2s}.btn-toggle:hover{opacity:.8}.btn-deactivate{background-color:#f8d7da;color:#721c24}.btn-activate{background-color:#d4edda;color:#155724}.modal-overlay{align-items:center;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal{background:#fff;border-radius:12px;box-shadow:0 20px 60px #0003;max-width:460px;padding:36px;width:100%}.modal h2{color:#036;font-size:20px;font-weight:700;margin-bottom:24px}.modal .form-group{display:flex;flex-direction:column;margin-bottom:16px}.modal .form-group label{color:#333;font-size:13px;font-weight:600;margin-bottom:6px}.modal .form-group input,.modal .form-group select{border:1px solid #ddd;border-radius:6px;font-size:14px;outline:none;padding:10px 14px}.modal .form-group input:focus,.modal .form-group select:focus{border-color:#0055a5;box-shadow:0 0 0 3px #0055a51a}.modal-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:24px}.btn-secondary{background-color:#f8f9fa;border:1px solid #ddd;border-radius:6px;color:#333;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px}.btn-secondary:hover{background-color:#eee}.error-message{background-color:#fff0f0;border:1px solid #fcc;border-radius:6px;color:#c00;font-size:13px;margin-bottom:16px;padding:10px 14px}.app-container{display:flex;min-height:100vh}
/*# sourceMappingURL=main.70e325a6.css.map*/