@import url(https://fonts.googleapis.com/css?family=Lato:400,700&display=swap);.toggle-switch-container{align-items:center;display:flex;gap:12px}.toggle-switch{width:48px}.toggle-slider,.toggle-slider:before{transition:all .3s}.toggle-switch input:checked+.toggle-slider{background-color:#667eea}.toggle-switch input:checked+.toggle-slider:before{transform:translateX(24px)}.toggle-switch:hover input:not(:disabled)+.toggle-slider{background-color:#b3b3b3}.toggle-switch:hover input:checked:not(:disabled)+.toggle-slider{background-color:#5569d7}.directory-autocomplete{position:relative;width:100%}.directory-autocomplete-input{border:1px solid #ddd;border-radius:4px;font-size:14px;padding:8px 12px;transition:border-color .2s;width:100%}.directory-autocomplete-input:focus{border-color:#0078d4;box-shadow:0 0 0 3px #0078d41a;outline:none}.directory-autocomplete-input:disabled{background-color:#f5f5f5;cursor:not-allowed}.directory-autocomplete-loading{color:#666;font-size:12px;pointer-events:none;position:absolute;right:12px;top:50%;transform:translateY(-50%)}.directory-autocomplete-dropdown{background:#fff;border:1px solid #ddd;border-radius:4px;box-shadow:0 4px 12px #00000026;max-height:300px;overflow-y:auto}.directory-autocomplete-item{align-items:center;border-bottom:1px solid #f0f0f0;cursor:pointer;display:flex;gap:12px;padding:10px 12px;transition:background-color .15s}.directory-autocomplete-item:last-child{border-bottom:none}.directory-autocomplete-item.selected,.directory-autocomplete-item:hover{background-color:#f5f9fc}.directory-user-icon{align-items:center;background-color:#e8f4fd;border-radius:50%;color:#0078d4;display:flex;flex-shrink:0;height:32px;justify-content:center;width:32px}.directory-user-info{flex:1 1;min-width:0}.directory-user-name{align-items:center;color:#333;display:flex;font-size:14px;font-weight:600;gap:8px}.user-disabled-badge{background-color:#ffc107;border-radius:3px;color:#333;display:inline-block;font-size:10px;font-weight:600;padding:2px 6px;text-transform:uppercase}.directory-user-email{color:#666;font-size:13px}.directory-user-email,.directory-user-meta{margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.directory-user-meta{color:#999;font-size:12px}.directory-user-source{color:#999;flex-shrink:0;font-size:11px;font-weight:600;text-transform:uppercase}.directory-user-tenant{color:#0078d4;color:var(--primary-color,#0078d4);font-size:11px;font-weight:500;margin-top:2px}.asset-form-modal-wrapper{background:#fff;border-radius:8px;display:flex;flex-direction:column;height:85vh;max-width:95vw;min-width:700px;overflow:hidden;width:auto}.asset-form-modal-wrapper .asset-form{display:flex;flex:1 1;flex-direction:column;min-height:0;overflow:hidden;position:relative}.asset-form-modal-wrapper form{display:flex;flex:1 1;flex-direction:column;min-height:0;overflow-y:auto;padding-bottom:70px!important}.asset-form-modal-wrapper .form-actions{background:#fff;border-top:1px solid #e0e0e0;bottom:0;display:flex;gap:10px;justify-content:flex-end;left:0;padding:16px 20px;position:absolute;right:0;z-index:10}.building-form-modal-wrapper{background:#fff;border-radius:8px;display:flex;flex-direction:column;height:85vh;max-width:95vw;min-width:700px;overflow:hidden;position:relative;width:auto}.building-form-modal-wrapper form{display:flex;flex:1 1;flex-direction:column;min-height:0;overflow-y:auto;padding-bottom:70px}.building-form-modal-wrapper .form-actions{background:#fff;border-top:1px solid #e0e0e0;bottom:0;display:flex;gap:10px;justify-content:flex-end;left:0;padding:16px 20px;position:absolute;right:0;z-index:10}@media (max-width:768px){.asset-form-modal-wrapper,.building-form-modal-wrapper{border-radius:0!important;bottom:0!important;height:100vh!important;left:0!important;margin:0!important;max-height:100vh!important;max-width:100vw!important;min-width:0!important;min-width:auto!important;position:fixed!important;right:0!important;top:0!important;width:100vw!important}.asset-form-enhanced .form-container{flex-direction:column!important}.asset-form-enhanced .tab-sidebar{border-bottom:1px solid #e0e0e0;border-right:none!important;display:none!important;padding:15px!important;width:100%!important}.asset-form-enhanced .form-content{flex:initial!important;max-height:none!important;overflow-y:visible!important;overflow-y:initial!important;padding:15px!important}.asset-form-enhanced .form-section{border-bottom:1px solid #e0e0e0;display:block!important;margin-bottom:30px;padding-bottom:20px}.asset-form-enhanced .form-section:last-child{border-bottom:none}}.asset-detail{background:#f5f5f5;min-height:100vh;padding:20px}.detail-header{align-items:center;background:#fff;border-radius:10px;box-shadow:0 2px 10px #00000014;margin-bottom:20px;padding:20px}.detail-actions{display:flex;gap:10px}.detail-content{background:#fff;border-radius:10px;box-shadow:0 2px 10px #00000014;padding:30px}.detail-title{border-bottom:2px solid #f0f0f0;gap:20px;margin-bottom:30px;padding-bottom:20px}.detail-title h1{color:#333;font-size:28px;margin:0}.detail-grid{grid-gap:30px;gap:30px;grid-template-columns:repeat(auto-fit,minmax(350px,1fr))}.detail-section{background:#f8f9fa;border-radius:8px;padding:20px}.detail-section h3{border-bottom:2px solid #e0e0e0;margin:0 0 15px;padding-bottom:10px}.detail-section.full-width{grid-column:1/-1}.detail-field{border-bottom:1px solid #e9ecef;display:flex;padding:8px 0}.detail-field:last-child{border-bottom:none}.detail-field label{color:#666;font-size:14px;font-weight:600;margin-right:15px;min-width:140px}.detail-field span{color:#333;flex:1 1;font-size:14px}.detail-field p{color:#333;font-size:14px;line-height:1.6;margin:0}.status-badge,.type-badge{border-radius:20px;display:inline-block;font-size:13px;font-weight:500;padding:6px 16px}.asset-licenses-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.asset-license-card{align-items:center;background:#fff;border:1px solid #e0e0e0;border-radius:8px;display:flex;gap:12px;padding:12px;transition:box-shadow .2s}.asset-license-card:hover{box-shadow:0 2px 8px #0000001a}.asset-license-icon{align-items:center;background:#f8f9fa;border-radius:8px;display:flex;flex-shrink:0;height:40px;justify-content:center;width:40px}.asset-license-info{flex:1 1;min-width:0}.asset-license-name{color:#333;font-size:14px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.asset-license-vendor{color:#666;font-size:12px}.asset-license-date{color:#999;font-size:11px;margin-top:2px}.asset-license-source{flex-shrink:0}.source-badge{padding:3px 8px}.source-badge.source-manual{background:#e3f2fd;color:#1976d2}.source-badge.source-o365-sync{background:#fff3e0;color:#f57c00}.source-badge.source-google-sync{background:#e8f5e9;color:#388e3c}.asset-license-keys-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.asset-license-key-card{align-items:center;background:#fff;border:1px solid #e0e0e0;border-radius:8px;display:flex;gap:12px;padding:12px;transition:box-shadow .2s}.asset-license-key-card:hover{box-shadow:0 2px 8px #0000001a}.asset-license-key-icon{align-items:center;background:#e3f2fd;border-radius:8px;display:flex;flex-shrink:0;height:40px;justify-content:center;width:40px}.asset-license-key-info{flex:1 1;min-width:0}.asset-license-key-masked{color:#1a1a2e;font-family:Consolas,Monaco,monospace;font-size:13px;font-weight:600}.asset-license-key-name{color:#666;font-size:12px}.asset-license-key-date{color:#999;font-size:11px;margin-top:2px}@media (max-width:768px){.asset-detail{padding:10px}.detail-header{align-items:stretch;flex-direction:column;gap:10px;padding:10px}.detail-header .back-button{margin-bottom:10px;width:100%}.detail-actions{display:flex;flex-direction:column;gap:10px;width:100%}.detail-actions button{width:100%}.detail-content{padding:15px}.detail-title{flex-direction:column!important;gap:15px}.detail-title img{align-self:center;height:100px!important;width:100px!important}.detail-grid{gap:15px;grid-template-columns:1fr}.detail-section{padding:15px}.detail-field{flex-direction:column;padding:8px 0}.detail-field label{font-weight:600;margin-bottom:5px}.detail-field span{word-break:break-word}.status-badge,.type-badge{font-size:12px;padding:4px 8px}.history-table{font-size:12px}.history-table td,.history-table th{padding:5px}.history-table td:nth-child(3),.history-table th:nth-child(3){display:none}}.dashboard{background:#f5f5f5;padding:20px}.resource-cards{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));margin-bottom:30px}.resource-card{border-radius:10px;box-shadow:0 2px 10px #00000014}.resource-card:hover{box-shadow:0 4px 20px #0000001f}.resource-card-header{align-items:center;border-bottom:1px solid #f0f0f0;display:flex;gap:10px;padding:15px}.resource-card-header h3{color:#333;flex:1 1;font-size:16px;margin:0}.resource-card-body{flex:1 1;padding:15px}.resource-description{line-height:1.5}.resource-card-image{align-items:center;display:flex;flex:1 1;justify-content:center;padding:15px}.resource-card-image img{max-height:150px;max-width:100%;object-fit:contain}.resource-card-footer{border-top:1px solid #f0f0f0;padding:15px}.resource-link-btn{background:#667eea;border:none;border-radius:5px;color:#fff;cursor:pointer;display:block;font-size:14px;padding:10px;text-align:center;text-decoration:none;transition:background .2s;width:100%}.resource-link-btn:hover{background:#5a67d8}.chart-list-scroll::-webkit-scrollbar{width:8px}.chart-list-scroll::-webkit-scrollbar-track{background:#f5f5f5;border-radius:4px}.chart-list-scroll::-webkit-scrollbar-thumb{background:#ccc;border-radius:4px}.chart-list-scroll::-webkit-scrollbar-thumb:hover{background:#999}.dashboard-header{margin-bottom:30px}.dashboard-header h2{color:#333;font-size:28px;margin:0 0 20px}.header-stats{margin-bottom:30px}.stat-card{background:#fff;border-radius:10px;box-shadow:0 2px 10px #00000014;flex:1 1;padding:20px 30px}.stat-value{color:#667eea;font-size:36px;font-weight:700;margin-bottom:5px}.stat-label{letter-spacing:.5px;text-transform:uppercase}.dashboard-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));margin-bottom:30px}.chart-card{background:#fff;border-radius:10px;box-shadow:0 2px 10px #00000014;padding:20px}.chart-card h3{border-bottom:2px solid #f0f0f0;color:#333;font-size:18px;margin:0 0 20px;padding-bottom:10px}.chart-container{height:250px;margin-bottom:20px}.chart-container,.pie-chart-container{align-items:center;display:flex;justify-content:center;position:relative}.pie-chart,.pie-chart-container{height:100%;width:100%}.pie-chart{max-width:250px}.pie-slice{cursor:pointer;transition:all .2s}.pie-slice:hover{filter:brightness(1.1);opacity:.8;transform-origin:center}.empty-chart{color:#999;font-size:14px}.chart-legend{display:flex;flex-direction:column;gap:8px}.legend-item{border-radius:4px;font-size:14px;padding:4px 8px;transition:background .2s}.legend-item:hover{background:#f0f0f0}.legend-color{border-radius:4px;flex-shrink:0;height:16px;width:16px}.legend-label{color:#333;flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.legend-value{color:#667eea;font-weight:600}.recent-assets{background:#fff;border-radius:10px;box-shadow:0 2px 10px #00000014;padding:20px}.recent-assets h3{border-bottom:2px solid #f0f0f0;color:#333;font-size:18px;margin:0 0 20px;padding-bottom:10px}.recent-list{display:flex;flex-direction:column;gap:12px}.recent-item{align-items:center;background:#f8f9fa;border:1px solid #0000;border-radius:8px;display:flex;padding:12px;transition:all .2s ease}.recent-item:hover{background:#e9ecef;border-color:#dee2e6;box-shadow:0 2px 4px #0000000d;transform:translateX(4px)}.recent-name{color:#333;flex:1 1;font-weight:500}.recent-type{background:#e3f2fd;border-radius:20px;color:#1976d2;font-size:12px;margin:0 10px;padding:4px 12px}.recent-date{color:#666;font-size:13px}.drill-down-header{align-items:center;background:#fff;border-radius:10px;box-shadow:0 2px 10px #00000014;display:flex;gap:20px;margin-bottom:20px;padding:20px}.back-button{background:#f8f9fa;border:1px solid #dee2e6;color:#333;padding:10px 20px;transition:all .2s}.back-button:hover{background:#e9ecef;transform:translateX(-2px)}.drill-down-header h2{color:#333;font-size:24px;margin:0}.chart-tooltip{background:#000c;border-radius:6px;bottom:10px;color:#fff;font-size:13px;left:50%;padding:8px 12px;pointer-events:none;position:absolute;transform:translateX(-50%);white-space:nowrap;z-index:10}@media (max-width:768px){.header-stats{flex-direction:column}.dashboard-grid{grid-template-columns:1fr}.chart-container{height:200px}}.spreadsheet-overlay{align-items:center;background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.spreadsheet-modal{background:#fff;border-radius:8px;box-shadow:0 10px 40px #0000004d;display:flex;flex-direction:column;height:90vh;max-width:95vw;width:100%}.spreadsheet-header{align-items:center;background:#f8f9fa;border-bottom:2px solid #e0e0e0;border-radius:8px 8px 0 0;display:flex;justify-content:space-between;padding:20px}.spreadsheet-header h2{color:#333;font-size:20px;margin:0}.spreadsheet-actions{align-items:center;display:flex;gap:10px}.changes-indicator{background:#fff3cd;border-radius:4px;color:#856404;font-size:14px;font-weight:500;padding:5px 10px}.spreadsheet-body{flex:1 1;overflow:auto;padding:0}.spreadsheet-table{border-collapse:collapse;font-size:14px;width:100%}.spreadsheet-table thead{background:#f8f9fa;position:-webkit-sticky;position:sticky;top:0;z-index:10}.spreadsheet-table th{background:#f8f9fa;border-bottom:2px solid #dee2e6;border-right:1px solid #e9ecef;color:#495057;font-weight:600;padding:12px 8px;text-align:left}.spreadsheet-table tbody tr{border-bottom:1px solid #e9ecef}.spreadsheet-table tbody tr:hover{background:#f8f9fa}.spreadsheet-table td{border-right:1px solid #f5f5f5;padding:4px;vertical-align:middle}.cell-input,.cell-select{background:#0000;border:1px solid #0000;font-family:inherit;font-size:13px;padding:6px 8px;transition:all .2s;width:100%}.cell-input:hover,.cell-select:hover{background:#f8f9fa;border-color:#dee2e6}.cell-input:focus,.cell-select:focus{background:#fff;border-color:#0078d4;box-shadow:0 0 0 2px #0078d41a;outline:none}.cell-input.edited,.cell-select.edited{background:#fff3cd!important;border-color:#ffc107}.spreadsheet-footer{background:#f8f9fa;border-radius:0 0 8px 8px;border-top:1px solid #e0e0e0;padding:15px 20px}.help-text{color:#6c757d;font-size:13px}@media (max-width:768px){.spreadsheet-modal{border-radius:0;height:100vh;max-width:100vw}.spreadsheet-footer,.spreadsheet-header{border-radius:0}.spreadsheet-table{font-size:12px}.cell-input,.cell-select{font-size:12px;padding:4px 6px}}.column-selector-modal{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.column-selector-content{background:#fff;border-radius:8px;box-shadow:0 4px 20px #00000026;display:flex;flex-direction:column;max-height:80vh;max-width:700px;width:90%}.column-selector-header{align-items:center;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;padding:20px}.column-selector-header h3{align-items:center;display:flex;font-size:18px;font-weight:600;gap:10px;margin:0}.column-selector-header .close-btn{align-items:center;background:#0000;border:none;border-radius:4px;color:#666;cursor:pointer;display:flex;justify-content:center;padding:8px;transition:background .2s,color .2s}.column-selector-header .close-btn:hover{background:#f0f0f0;color:#333}.column-selector-body{display:flex;flex:1 1;flex-direction:column;overflow:hidden}.column-tabs{background:#f5f5f5;border-bottom:1px solid #e0e0e0;display:flex}.column-tabs .tab{background:none;border:none;border-bottom:2px solid #0000;color:#666;cursor:pointer;flex:1 1;font-weight:500;padding:12px;transition:all .2s}.column-tabs .tab:hover{background:#ebebeb}.column-tabs .tab.active{background:#fff;border-bottom-color:#0078d4;color:#0078d4}.column-selector-controls{border-bottom:1px solid #e0e0e0;padding:15px 20px}.column-search{border:1px solid #ddd;border-radius:4px;font-size:14px;margin-bottom:10px;padding:8px 12px;width:100%}.quick-actions{display:flex;gap:15px}.column-selector-list{flex:1 1;overflow-y:auto;padding:20px}.column-category{margin-bottom:20px}.column-category h4{align-items:center;color:#333;display:flex;font-size:14px;font-weight:600;justify-content:space-between;margin:0 0 10px}.category-count{color:#666;font-weight:400}.column-items{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.column-item label{align-items:center;border-radius:4px;cursor:pointer;display:flex;padding:6px 8px;transition:background .2s}.column-item label:hover{background:#f5f5f5}.column-item input[type=checkbox]{margin-right:8px}.column-label{align-items:center;display:flex;flex:1 1;font-size:14px;gap:6px}.default-badge,.required-badge{border-radius:3px;font-size:11px;font-weight:500;padding:2px 6px}.default-badge{background:#e8f4fd;color:#0078d4}.required-badge{background:#ffe4e4;color:#d83b01}.required-column{opacity:.7}.no-results{color:#666;font-style:italic}.column-order-list{flex:1 1;overflow-y:auto;padding:20px}.order-help{background:#f5f5f5;border-radius:4px;color:#666;font-size:14px;margin-bottom:20px;padding:10px}.order-item{align-items:center;background:#fff;border:1px solid #e0e0e0;border-radius:4px;cursor:move;display:flex;gap:12px;margin-bottom:8px;padding:10px 12px;transition:all .2s}.order-item:hover:not(.fixed){background:#f5f5f5;box-shadow:0 2px 4px #0000001a}.order-item.dragging{opacity:.5}.order-item.fixed{background:#fafafa;cursor:not-allowed;opacity:.8}.order-handle{align-items:center;color:#666;display:flex}.order-number{color:#666;font-size:12px;font-weight:500;text-align:center;width:30px}.order-label{flex:1 1;font-size:14px}.fixed-badge{background:#f0f0f0;border-radius:3px;color:#666;font-size:11px;padding:2px 6px}.column-selector-footer{align-items:center;background:#f5f5f5;border-top:1px solid #e0e0e0;display:flex;flex-shrink:0;justify-content:space-between;padding:15px 20px}.column-count{color:#666;font-size:14px}.column-selector-actions{display:flex;gap:10px}@media (max-width:640px){.column-selector-content{max-height:90vh;width:95%}.column-items{grid-template-columns:1fr}.quick-actions{justify-content:space-around}}.view-selector{display:inline-block;position:relative}.view-selector .view-trigger{align-items:center;background:#fff;background:var(--card-bg,#fff);border:1px solid #ddd;border:1px solid var(--border-color,#ddd);border-radius:6px;color:#333;color:var(--text-primary,#333);cursor:pointer;display:flex;font-size:14px;gap:6px;padding:10px 15px;transition:border-color .2s,box-shadow .2s}.view-selector .view-trigger:hover{border-color:#ccc}.view-selector .view-trigger:focus{box-shadow:0 0 0 3px #667eea1a;outline:none}.view-selector .view-trigger.open,.view-selector .view-trigger:focus{border-color:#667eea;border-color:var(--primary-color,#667eea)}.view-selector .view-trigger.has-changes{border-color:#f59e0b;border-color:var(--warning-color,#f59e0b)}.view-selector .trigger-text{align-items:center;display:flex;gap:6px}.view-selector .unsaved-dot{background:#f59e0b;background:var(--warning-color,#f59e0b);border-radius:50%;height:8px;width:8px}.view-selector .trigger-icon{color:#666;color:var(--text-secondary,#666);flex-shrink:0;transition:transform .2s}.view-selector .trigger-icon.rotated{transform:rotate(180deg)}.view-selector .view-dropdown{background:#fff;background:var(--card-bg,#fff);border:1px solid #ddd;border:1px solid var(--border-color,#ddd);border-radius:8px;box-shadow:0 4px 16px #0000001f;left:0;max-height:400px;min-width:220px;overflow:hidden;position:absolute;top:calc(100% + 4px);z-index:1000}.view-selector .dropdown-section{max-height:240px;overflow-y:auto;padding:4px 0}.view-selector .section-label{color:#888;color:var(--text-secondary,#888);font-size:11px;font-weight:600;letter-spacing:.5px;padding:4px 10px;text-transform:uppercase}.view-selector .view-option{align-items:center;background:none;border:none;color:#333;color:var(--text-primary,#333);cursor:pointer;display:flex;font-size:14px;gap:6px;justify-content:space-between;padding:4px 10px;text-align:left;width:100%}.view-selector .view-option:hover{background:#f5f5f5;background:var(--hover-bg,#f5f5f5)}.view-selector .view-option.active{background:#667eea14;color:#667eea;color:var(--primary-color,#667eea)}.view-selector .option-name{align-items:center;display:flex;flex:1 1;gap:6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.view-selector .default-star{color:#f59e0b;color:var(--warning-color,#f59e0b);flex-shrink:0}.view-selector .check-icon{color:#667eea;color:var(--primary-color,#667eea);flex-shrink:0}.view-selector .no-views-message{color:#888;color:var(--text-secondary,#888);font-size:13px;font-style:italic;padding:12px;text-align:center}.view-selector .dropdown-divider{background:#eee;background:var(--border-color,#eee);height:1px;margin:0}.view-selector .dropdown-actions{background:#f9fafb;background:var(--secondary-bg,#f9fafb);display:flex;gap:4px;padding:4px}.view-selector .action-btn{align-items:center;background:none;border:none;border-radius:4px;color:#555;color:var(--text-primary,#555);cursor:pointer;display:flex;flex:1 1;font-size:12px;gap:4px;justify-content:center;padding:4px 8px}.view-selector .action-btn:hover:not(:disabled){background:#eee;background:var(--hover-bg,#eee)}.view-selector .action-btn:disabled{cursor:not-allowed;opacity:.5}.multi-select-type-filter{display:inline-block;position:relative}.multi-select-type-filter .filter-trigger{align-items:center;background:#fff;background:var(--card-bg,#fff);border:1px solid #ddd;border:1px solid var(--border-color,#ddd);border-radius:6px;color:#333;color:var(--text-primary,#333);cursor:pointer;display:flex;font-size:14px;gap:8px;min-width:140px;padding:10px 15px;transition:border-color .2s,box-shadow .2s}.multi-select-type-filter .filter-trigger:hover{border-color:#ccc}.multi-select-type-filter .filter-trigger:focus{box-shadow:0 0 0 3px #667eea1a;outline:none}.multi-select-type-filter .filter-trigger.has-selection,.multi-select-type-filter .filter-trigger.open,.multi-select-type-filter .filter-trigger:focus{border-color:#667eea;border-color:var(--primary-color,#667eea)}.multi-select-type-filter .filter-trigger.has-selection{background:#667eea0d}.multi-select-type-filter .trigger-text{flex:1 1;overflow:hidden;text-align:left;text-overflow:ellipsis;white-space:nowrap}.multi-select-type-filter .trigger-icon{color:#666;color:var(--text-secondary,#666);flex-shrink:0;transition:transform .2s}.multi-select-type-filter .trigger-icon.rotated{transform:rotate(180deg)}.multi-select-type-filter-portal.filter-dropdown{background:#fff;border:1px solid #ddd;border-radius:8px;box-shadow:0 4px 16px #0000001f;max-height:400px;min-width:240px;overflow-y:auto}.multi-select-type-filter-portal .dropdown-header{align-items:center;background:#3b82f6;background:var(--primary-color,#3b82f6);border:none;border-bottom:1px solid #eee;border-bottom:1px solid var(--border-color,#eee);color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:500;justify-content:space-between;padding:4px 10px;text-align:left;width:100%}.multi-select-type-filter-portal .dropdown-header:hover{background:#2563eb;background:var(--primary-hover,#2563eb)}.multi-select-type-filter-portal .dropdown-header .header-text{flex:1 1}.multi-select-type-filter-portal .dropdown-header .check-icon{color:#fff;flex-shrink:0}.multi-select-type-filter-portal .dropdown-options{padding:0}.multi-select-type-filter-portal .option-item{align-items:center;background:#fff;border:none;color:#333;cursor:pointer;display:flex;font-size:14px;gap:6px;padding:4px 10px;text-align:left;width:100%}.multi-select-type-filter-portal .option-item:hover{background:#f0f0f0}.multi-select-type-filter-portal .option-item.selected{background:#e8f0fe}.multi-select-type-filter-portal .option-label{flex:1 1}.multi-select-type-filter-portal .option-item .check-icon{color:#667eea;color:var(--primary-color,#667eea);flex-shrink:0}@media (max-width:600px){.multi-select-type-filter .filter-trigger{min-width:100%}.multi-select-type-filter .filter-dropdown{max-width:calc(100vw - 40px);min-width:100%}}.filter-toggle-btn{align-items:center;background:#fff;background:var(--card-bg,#fff);border:1px solid #ddd;border:1px solid var(--border-color,#ddd);border-radius:6px;color:#333;color:var(--text-primary,#333);cursor:pointer;display:flex;font-size:14px;gap:6px;padding:10px 15px;transition:border-color .2s,box-shadow .2s,background-color .2s;white-space:nowrap}.filter-toggle-btn:hover{background-color:#f5f5f5;background-color:var(--hover-bg,#f5f5f5);border-color:#ccc}.filter-toggle-btn:focus{box-shadow:0 0 0 3px #667eea1a;outline:none}.filter-toggle-btn.has-filters,.filter-toggle-btn:focus{border-color:#667eea;border-color:var(--primary-color,#667eea)}.filter-toggle-btn.has-filters{background:#667eea0d}.filter-toggle-btn.panel-open{border-color:#667eea;border-color:var(--primary-color,#667eea);color:#fff}.filter-badge,.filter-toggle-btn.panel-open{background:#667eea;background:var(--primary-color,#667eea)}.filter-badge{border-radius:9px;display:inline-flex;font-size:11px;height:18px;min-width:18px;padding:0 6px}.filter-toggle-btn.panel-open .filter-badge{background:#fff;color:#667eea;color:var(--primary-color,#667eea)}.filter-panel{animation:slideDown .2s ease-out;background:#fff;background:var(--card-bg,#fff);border:1px solid #ddd;border:1px solid var(--border-color,#ddd);border-radius:8px;box-shadow:0 1px 3px #00000014;margin-bottom:16px;overflow:hidden}.filter-panel-header{align-items:center;background:#f9fafb;background:var(--secondary-bg,#f9fafb);border-bottom:1px solid #eee;border-bottom:1px solid var(--border-color,#eee);display:flex;justify-content:space-between;padding:12px 16px}.filter-panel-title{align-items:center;color:#333;color:var(--text-primary,#333);font-size:13px;font-weight:600}.filter-panel-actions,.filter-panel-title{display:flex;gap:8px}.filter-panel-body{padding:16px}.quick-filters-section{margin-bottom:16px}.filter-section-label{color:#888;color:var(--text-secondary,#888);font-size:11px;font-weight:600;letter-spacing:.5px;margin-bottom:10px;text-transform:uppercase}.quick-filters{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.filter-divider{background:#eee;background:var(--border-color,#eee);height:1px;margin:16px 0}.custom-filters-section{margin-top:8px}.custom-filters-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.filter-rule{align-items:center;background:#f9fafb;background:var(--secondary-bg,#f9fafb);border:1px solid #eee;border:1px solid var(--border-color,#eee);border-radius:6px;display:flex;gap:8px;margin-bottom:8px;padding:10px 12px}.filter-rule:last-child{margin-bottom:0}.filter-rule input,.filter-rule select{background:#fff;background:var(--card-bg,#fff);border:1px solid #ddd;border:1px solid var(--border-color,#ddd);border-radius:4px;color:#333;color:var(--text-primary,#333);font-size:14px;padding:8px 12px}.filter-rule input:focus,.filter-rule select:focus{border-color:#667eea;border-color:var(--primary-color,#667eea);box-shadow:0 0 0 2px #667eea1a;outline:none}.filter-rule .column-select{flex:0 0 160px;min-width:140px}.filter-rule .operator-select{flex:0 0 130px;min-width:110px}.filter-rule .value-input{flex:1 1;min-width:120px}.filter-rule .value-input-date{flex:0 0 150px;min-width:130px}.filter-rule .between-separator{color:#888;color:var(--text-secondary,#888);font-size:13px;padding:0 4px}.filter-rule .remove-btn{align-items:center;background:none;border:none;border-radius:4px;color:#888;color:var(--text-secondary,#888);cursor:pointer;display:flex;flex-shrink:0;height:32px;justify-content:center;padding:0;transition:background-color .15s,color .15s;width:32px}.filter-rule .remove-btn:hover{background:#fee2e2;background:var(--danger-bg,#fee2e2);color:#ef4444;color:var(--danger-color,#ef4444)}.add-filter-btn{align-items:center;background:none;border:1px dashed #ccc;border:1px dashed var(--border-color,#ccc);border-radius:6px;color:#667eea;color:var(--primary-color,#667eea);cursor:pointer;display:inline-flex;font-size:14px;gap:6px;margin-top:8px;padding:8px 14px;transition:background .2s,border-color .2s}.add-filter-btn:hover{background:#667eea0d}.add-filter-btn:focus,.add-filter-btn:hover{border-color:#667eea;border-color:var(--primary-color,#667eea)}.add-filter-btn:focus{box-shadow:0 0 0 2px #667eea1a;outline:none}.clear-all-btn{background:none;border:none;border-radius:4px;color:#ef4444;color:var(--danger-color,#ef4444);cursor:pointer;font-size:13px;padding:6px 12px;transition:background-color .15s}.clear-all-btn:hover{background:#fee2e2;background:var(--danger-bg,#fee2e2);text-decoration:none}.clear-all-btn:focus{box-shadow:0 0 0 2px #ef444433;outline:none}.custom-filters-empty{background:#f9fafb;background:var(--secondary-bg,#f9fafb);border:1px dashed #ddd;border:1px dashed var(--border-color,#ddd);border-radius:6px;color:#888;color:var(--text-secondary,#888);font-size:13px;padding:12px;text-align:center}@media (max-width:900px){.filter-rule{flex-wrap:wrap}.filter-rule .column-select,.filter-rule .operator-select{flex-basis:calc(50% - 4px);flex-grow:1;flex-shrink:1;min-width:120px}.filter-rule .value-input{flex:1 1 100%;margin-top:4px;order:3}.filter-rule .value-input-date{flex-basis:calc(50% - 20px);flex-grow:1;flex-shrink:1}.filter-rule .remove-btn{order:4}}@media (max-width:600px){.quick-filters{align-items:stretch;flex-direction:column}.quick-filters>*{width:100%}.filter-panel-header{align-items:flex-start;flex-direction:column;gap:8px}.filter-panel-actions{justify-content:flex-end;width:100%}.filter-rule .column-select,.filter-rule .operator-select,.filter-rule .value-input,.filter-rule .value-input-date{flex:1 1 100%}}.bulk-progress-modal{max-width:400px;min-width:320px;padding:24px;text-align:center}.bulk-progress-modal h3{color:var(--text-primary);font-size:16px;font-weight:600;margin:0 0 16px}.bulk-progress-bar-container{background:#e2e8f0;background:var(--border-color,#e2e8f0);border-radius:4px;height:8px;overflow:hidden;width:100%}.bulk-progress-bar-fill{background:#4285f4;background:var(--primary-color,#4285f4);border-radius:4px;height:100%;transition:width .3s ease}.bulk-progress-bar-fill.complete{background:#22c55e;background:var(--success-color,#22c55e)}.bulk-progress-stats{color:var(--text-secondary);display:flex;font-size:13px;justify-content:space-between;margin-top:8px}.bulk-progress-status{color:var(--text-muted);font-size:12px;margin-top:8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.inventory-tabs{display:flex;flex-direction:column;height:100%}.asset-form-modal-content{background:#fff;border-radius:8px;box-shadow:0 4px 20px #00000026;display:flex;flex-direction:column;max-height:100%;max-width:900px;overflow:hidden;width:90vw}.asset-form-modal{padding:0}.asset-form input[type=date].placeholder-visible{color:#b0b0b0}.asset-form input[type=date]:not(.placeholder-visible){color:#333}.asset-form input[type=date]:not([value]):not(:focus):before,.asset-form input[type=date][value=""]:not(:focus):before{color:#b0b0b0;content:attr(placeholder);font-style:italic}.asset-form input[type=date]::-webkit-datetime-edit-day-field,.asset-form input[type=date]::-webkit-datetime-edit-month-field,.asset-form input[type=date]::-webkit-datetime-edit-text,.asset-form input[type=date]::-webkit-datetime-edit-year-field{color:#333}.asset-form input[type=date]:invalid::-webkit-datetime-edit-day-field,.asset-form input[type=date]:invalid::-webkit-datetime-edit-month-field,.asset-form input[type=date]:invalid::-webkit-datetime-edit-text,.asset-form input[type=date]:invalid::-webkit-datetime-edit-year-field{color:#b0b0b0}.asset-form input::placeholder,.asset-form select::placeholder,.asset-form textarea::placeholder{color:#b0b0b0;font-style:italic;opacity:.7}.asset-form input::-webkit-input-placeholder,.asset-form textarea::-webkit-input-placeholder{color:#b0b0b0;font-style:italic;opacity:.7}.asset-form input::-moz-placeholder,.asset-form textarea::-moz-placeholder{color:#b0b0b0;font-style:italic;opacity:.7}.inventory-tabs .tab-header{background:#fff;border-bottom:2px solid #e0e0e0;box-shadow:0 2px 4px #0000000d;display:flex;justify-content:space-between}.inventory-tabs .tab-navigation{display:flex;gap:0;max-height:60px;overflow-y:hidden;padding:0 20px}.inventory-tabs .tab-button{background:none;border:none;border-bottom:3px solid #0000;color:#666;cursor:pointer;font-size:15px;font-weight:500;margin-bottom:-2px;padding:15px 25px;position:relative;transition:all .2s}.inventory-tabs .tab-button .tab-icon{margin-right:5px}.inventory-tabs .tab-button .tab-text{display:inline}.inventory-tabs .tab-button:hover{background:#f8f9fa;color:#333}.inventory-tabs .tab-button.active{background:#f8f9fa;border-bottom-color:#667eea;color:#667eea}.inventory-tabs .tab-content{background:#f5f5f5;flex:1 1;overflow:auto}.asset-list,.buildings-list,.inactive-assets,.inventory-tracking,.older-assets{padding:20px}.asset-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:30px}.asset-header h2{color:#333;margin:0}.asset-list .header-actions,.buildings-list .header-actions,.inactive-assets .header-actions,.inventory-tracking .header-actions,.inventory-tracking .header-stats,.older-assets .header-actions{align-items:center;display:flex;gap:10px}.asset-controls{align-items:center;display:flex;flex-wrap:wrap;gap:20px;margin-bottom:20px}.asset-controls .search-box{flex:1 1;min-width:250px}.asset-controls .search-input{border:1px solid #ddd;border-radius:6px;font-size:14px;padding:10px 15px;width:100%}.asset-controls .search-input::placeholder{color:#999;opacity:1}.asset-controls .search-input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.asset-controls .filters{display:flex;gap:10px}.asset-controls .filter-select{background:#fff;border:1px solid #ddd;border-radius:6px;cursor:pointer;font-size:14px;padding:10px 15px}.asset-controls .filter-select:focus{border-color:#667eea;outline:none}.asset-stats{color:#666;font-size:14px}.asset-table-container{background:#fff;border-radius:10px;box-shadow:0 2px 10px #0000001a;overflow:hidden}.asset-table{border-collapse:collapse;width:100%}.asset-table thead{background:#f8f9fa}.asset-table th{border-bottom:2px solid #dee2e6;color:#333;font-size:14px;font-weight:600;padding:15px;text-align:left}.asset-table td{border-bottom:1px solid #dee2e6;font-size:14px;padding:15px}.asset-table tbody tr:hover{background:#f8f9fa}.asset-table tbody tr:last-child td{border-bottom:none}.asset-name{color:#333}.type-badge{background:#e3f2fd;border-radius:20px;color:#1976d2;display:inline-block;font-size:12px;padding:4px 12px}.type-building-access---security{background:#ffebee;color:#c62828}.type-desktop{background:#f3e5f5;color:#7b1fa2}.type-laptop{background:#e3f2fd;color:#1976d2}.type-misc--parts{background:#eceff1;color:#455a64}.type-mobile-devices{background:#e1f5fe;color:#0277bd}.type-network{background:#fff3e0;color:#f57c00}.type-office-equipment{background:#fce4ec;color:#c2185b}.type-other-it-equipment{background:#f5f5f5;color:#616161}.type-server{background:#e8f5e9;color:#388e3c}.type-storage{background:#e0f7fa;color:#00796b}.type-telephony---conferencing{background:#e0f2f1;color:#00796b}.type-other{background:#eceff1;color:#455a64}.asset-list .status-badge{border-radius:20px;display:inline-block;font-size:12px;font-weight:500;padding:4px 12px}.status-active{background:#e8f5e9;color:#2e7d32}.status-inactive{background:#fafafa;color:#757575}.status-maintenance{background:#fff3e0;color:#f57c00}.status-retired{background:#ffebee;color:#c62828}.asset-table .actions{display:flex;gap:8px}.asset-list .error,.asset-list .loading{font-size:16px;padding:40px;text-align:center}.asset-list .error{color:#dc3545}.asset-form{background:#fff;border-radius:10px;box-shadow:0 2px 10px #0000001a;margin:0 auto;max-width:1200px}.asset-form .form-header{border-bottom:1px solid #dee2e6;padding:20px 30px}.asset-form .form-header h2{color:#333;margin:0}.asset-form .form-grid{grid-gap:30px;display:grid;gap:30px;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));padding:30px}.asset-form .form-section{display:flex;flex-direction:column;gap:20px}.asset-form .form-section h3{border-bottom:2px solid #f0f0f0;color:#333;font-size:16px;margin-bottom:10px;padding-bottom:10px}.asset-form .form-section.full-width{grid-column:1/-1}.asset-form .form-group{display:flex;flex-direction:column;gap:6px}.asset-form .form-group label{color:#555;font-size:14px;font-weight:500}.asset-form .form-group input,.asset-form .form-group select,.asset-form .form-group textarea{border:1px solid #ddd;border-radius:6px;font-size:14px;padding:10px 12px;transition:border-color .2s}.asset-form .form-group input:focus,.asset-form .form-group select:focus,.asset-form .form-group textarea:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.asset-form .form-group textarea{font-family:inherit;resize:vertical}.asset-form .form-actions{background:#f8f9fa;border-top:1px solid #dee2e6;display:flex;gap:10px;justify-content:flex-end;padding:20px 30px}@media (max-width:768px){.inventory-tabs .tab-button .tab-text{display:none}.inventory-tabs .tab-button{font-size:18px;padding:12px 15px}.inventory-tabs .tab-button .tab-icon{display:inline-block;margin-right:0}.asset-list,.buildings-list,.inactive-assets,.inventory-tracking,.older-assets{padding:10px}.asset-header{align-items:stretch;flex-direction:column;gap:15px;margin-bottom:20px}.asset-list .header-actions,.buildings-list .header-actions,.inactive-assets .header-actions,.inventory-tracking .header-actions,.inventory-tracking .header-stats,.older-assets .header-actions{flex-direction:column;width:100%}.asset-list .header-actions button,.buildings-list .header-actions button,.inactive-assets .header-actions button,.inventory-tracking .header-actions button,.older-assets .header-actions button{justify-content:center;width:100%}.asset-controls{align-items:stretch;flex-direction:column}.asset-controls .search-box{min-width:0;min-width:auto;width:100%}.asset-controls .filters{flex-direction:column}.asset-controls .filter-select{width:100%}.asset-table-container{-webkit-overflow-scrolling:touch;overflow-x:auto}.asset-table{min-width:800px}.asset-table .actions{gap:4px}.asset-table .actions .btn-sm{font-size:12px;min-height:36px;min-width:44px;padding:8px 10px}.asset-form .form-grid{grid-template-columns:1fr;padding:20px}}@media (max-width:480px){.inventory-tabs .tab-navigation{padding:0 10px}.inventory-tabs .tab-button{font-size:16px;padding:10px 12px}.asset-list,.buildings-list,.inactive-assets,.inventory-tracking,.older-assets{padding:5px}.asset-table-container{border-radius:5px}.asset-table td,.asset-table th{font-size:12px;padding:10px}.asset-table td:nth-child(7),.asset-table td:nth-child(8),.asset-table th:nth-child(7),.asset-table th:nth-child(8){display:none}.asset-table{min-width:600px}.asset-stats{font-size:12px;margin-top:10px;text-align:center}.asset-form .form-grid{gap:20px;padding:15px}.asset-form .form-section h3{font-size:14px}}.import-excel-modal{align-items:center;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.import-excel-modal .modal-overlay{background:#00000080;bottom:0;left:0;position:absolute;right:0;top:0}.import-excel-modal .modal-content{background:#fff;border-radius:10px;box-shadow:0 5px 30px #0000004d;display:flex;flex-direction:column;max-height:85vh;max-width:600px;overflow:hidden;position:relative;width:90%}.import-excel-modal .modal-header{align-items:center;background:#f8f9fa;background:var(--card-header-bg,#f8f9fa);border-bottom:1px solid #dee2e6;display:flex;flex-shrink:0;justify-content:space-between;padding:20px 30px}.import-excel-modal .modal-header h2{color:#333;margin:0}.import-excel-modal .close-button{align-items:center;background:none;border:none;color:#999;cursor:pointer;display:flex;font-size:28px;height:30px;justify-content:center;padding:0;width:30px}.import-excel-modal .close-button:hover{color:#333}.import-excel-modal .modal-body{flex:1 1;min-height:0;overflow-y:auto;padding:30px}.import-section{margin-bottom:30px}.import-section h3{color:#333;font-size:16px;margin-bottom:15px}.import-section .tenant-select{background:#fff;border:1px solid #ddd;border-radius:6px;cursor:pointer;font-size:14px;padding:10px 12px;width:100%}.import-section .tenant-select:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.import-section .help-text{color:#666;font-size:13px;margin-top:8px}.import-section .file-input{display:none}.import-section .file-label{border:2px dashed #ddd;border-radius:6px;color:#666;cursor:pointer;display:block;padding:12px 20px;text-align:center;transition:all .2s}.import-section .file-label:hover{background:#f8f9fa;border-color:#667eea;color:#333}.import-info{background:#f8f9fa;border-radius:6px;margin-bottom:20px;padding:20px}.import-info h4{color:#333;font-size:14px;margin-bottom:12px}.import-info ul{margin:0;padding-left:20px}.import-info li{color:#666;font-size:13px;margin-bottom:6px}.import-section .note{color:#666;font-size:13px;font-style:italic;margin-top:12px}.import-excel-modal .error-message{background:#fee;border-radius:6px;color:#c00;font-size:14px;margin-bottom:20px;padding:12px 15px}.import-excel-modal .modal-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:20px}.import-results{text-align:center}.import-results h3{color:#2e7d32;margin-bottom:20px}.import-results .results-summary{background:#f8f9fa;border-radius:6px;margin-bottom:20px;padding:20px}.import-results .results-summary p{color:#333;font-size:14px;margin:5px 0}.import-results .results-details{margin-bottom:20px}.import-results .result-item{align-items:center;background:#fff;border:1px solid #dee2e6;border-radius:6px;display:flex;justify-content:space-between;margin-bottom:10px;padding:12px 20px}.import-results .result-label{color:#333;font-weight:500}.import-results .result-count{background:#e8f5e9;border-radius:20px;color:#2e7d32;font-size:14px;font-weight:500;padding:4px 12px}.import-results .result-errors{color:#f57c00;font-size:13px;margin-left:10px}.import-errors{background:#fee;border:1px solid #fcc;border-radius:6px;margin-top:20px;padding:15px;text-align:left}.import-errors h4{color:#c00;font-size:14px;margin-bottom:10px}.import-errors ul{margin:0;padding-left:20px}.import-errors li{color:#900;font-size:13px;margin-bottom:5px}.grouped-views{background:#f8f9fa;min-height:100vh;padding:20px}.grouped-header{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;margin-bottom:20px;padding:20px}.header-top{align-items:center;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:15px}.header-top h2{color:#333;font-size:24px;margin:0}.header-stats{color:#666;display:flex;font-size:14px;gap:20px}.header-stats span{background:#f0f4ff;border-radius:4px;padding:5px 10px}.grouped-controls{align-items:center;display:flex;flex-wrap:wrap;gap:20px}.control-group{align-items:center;display:flex;gap:10px}.control-group label{color:#666;font-size:14px;font-weight:500}.group-selector{background:#fff;cursor:pointer;font-size:14px;min-width:180px;padding:6px 12px}.group-selector,.view-toggles{border:1px solid #ddd;border-radius:4px}.view-toggles{display:flex;gap:0;overflow:hidden}.view-btn{background:#fff;border:none;cursor:pointer;font-size:14px;padding:6px 16px;transition:all .2s}.view-btn:not(:last-child){border-right:1px solid #ddd}.view-btn:hover{background:#f8f9fa}.view-btn.active{background:#667eea;color:#fff}.groups-container{display:flex;flex-direction:column;gap:12px}.group-section{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;overflow:hidden;transition:transform .2s}.group-section:hover{box-shadow:0 2px 6px #00000026}.group-header{align-items:center;background:linear-gradient(90deg,#f8f9fa,#fff);border-left:4px solid #667eea;cursor:pointer;display:flex;justify-content:space-between;padding:15px 20px;transition:all .2s}.group-header:hover{background:linear-gradient(90deg,#f0f4ff,#fff)}.group-title{align-items:center;display:flex;gap:12px}.group-icon{font-size:20px}.group-name{color:#333;font-size:16px;font-weight:600}.group-count{background:#667eea;border-radius:12px;color:#fff;font-size:12px;font-weight:700;padding:2px 8px}.group-meta{align-items:center;gap:15px}.group-value{color:#666;font-size:14px;font-weight:500}.expand-icon{align-items:center;background:#667eea1a;border-radius:6px;color:#667eea;display:inline-flex;font-size:20px;font-weight:700;height:28px;justify-content:center;line-height:1;transition:transform .2s ease,color .2s ease,background-color .2s ease;width:28px}.group-header:hover .expand-icon{background:#667eea33;color:#5a67d8}.group-content{background:#fafbfc;border-top:1px solid #e0e0e0;padding:20px}.asset-cards{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.asset-card{background:#fff;border:1px solid #e0e0e0;border-radius:6px;cursor:pointer;padding:15px;transition:all .2s}.asset-card:hover{border-color:#667eea;box-shadow:0 2px 4px #667eea1a;transform:translateY(-2px)}.asset-card .card-header{align-items:flex-start;border-bottom:1px solid #f0f0f0;display:flex;justify-content:space-between;margin-bottom:12px;padding-bottom:10px}.asset-card strong{color:#333;flex:1 1;font-size:14px}.card-details{display:flex;flex-direction:column;gap:6px}.detail-row .label{color:#999;font-weight:500}.detail-row .value{color:#333;flex:1 1;margin-left:10px;text-align:right}.compact-table{border-collapse:collapse;font-size:14px;width:100%}.compact-table thead{background:#f8f9fa}.compact-table th{border-bottom:2px solid #e0e0e0;color:#666;font-weight:600;padding:10px;text-align:left}.compact-table tbody tr{border-bottom:1px solid #f0f0f0;cursor:pointer;transition:background .2s}.compact-table tbody tr:hover{background:#f8f9fa}.compact-table td{color:#333;padding:10px}.clickable-row{cursor:pointer}@media (max-width:768px){.control-group,.grouped-controls{align-items:stretch;flex-direction:column}.asset-cards{grid-template-columns:1fr}}.association-rules-editor{display:flex;flex-direction:column;max-height:80vh}.association-rules-editor .modal-header{border-bottom:1px solid #dee2e6;border-bottom:1px solid var(--border-color);padding:20px 24px}.association-rules-editor .modal-header h2{font-size:20px;font-weight:600;margin:0 0 8px}.association-rules-editor .modal-subtitle{color:#6c757d;color:var(--text-secondary);font-size:14px;margin:0}.association-rules-editor .modal-body{flex:1 1;overflow-y:auto;padding:20px 24px}.association-rules-editor .modal-footer{align-items:center;background:#f8f9fa;background:var(--bg-secondary);border-top:1px solid #dee2e6;border-top:1px solid var(--border-color);display:flex;justify-content:space-between;padding:16px 24px}.association-rules-editor .footer-left,.association-rules-editor .footer-right{display:flex;gap:12px}.rules-list{display:flex;flex-direction:column;gap:16px;margin-bottom:16px}.no-rules{background:var(--bg-secondary);border:1px dashed var(--border-color);padding:32px}.no-rules p{margin:0 0 8px}.no-rules .text-muted{color:#6c757d;color:var(--text-secondary);font-size:13px}.rule-card{background:#fff;background:var(--bg-primary);border:1px solid #dee2e6;border:1px solid var(--border-color);border-radius:8px;transition:border-color .2s}.rule-card:hover{border-color:#adb5bd;border-color:var(--border-hover)}.rule-card.has-error{border-color:#dc3545;border-color:var(--color-error)}.rule-header{align-items:center;background:#f8f9fa;background:var(--bg-secondary);border-bottom:1px solid #dee2e6;border-bottom:1px solid var(--border-color);border-radius:8px 8px 0 0;display:flex;justify-content:space-between;padding:12px 16px}.rule-number{color:#6c757d;color:var(--text-secondary);font-size:13px;font-weight:600}.rule-actions{display:flex;gap:4px}.rule-actions .btn-icon{background:#0000;border:1px solid #dee2e6;border:1px solid var(--border-color);border-radius:4px;color:#6c757d;color:var(--text-secondary);cursor:pointer;padding:4px 8px;transition:all .2s}.rule-actions .btn-icon:hover:not(:disabled){background:#f8f9fa;background:var(--bg-secondary);border-color:#adb5bd;border-color:var(--border-hover);color:#212529;color:var(--text-primary)}.rule-actions .btn-icon:disabled{cursor:not-allowed;opacity:.5}.rule-actions .btn-icon.btn-danger:hover:not(:disabled){background:#f8d7da;background:var(--color-error-light);border-color:#dc3545;border-color:var(--color-error);color:#dc3545;color:var(--color-error)}.rule-body{display:flex;flex-direction:column;gap:12px;padding:16px}.rule-row{flex-wrap:wrap;gap:16px}.rule-field{display:flex;flex-direction:column;gap:6px;min-width:150px}.rule-field.flex-grow{flex:1 1}.rule-field label{color:var(--text-secondary);font-size:12px;font-weight:500}.rule-field input,.rule-field select{background:var(--bg-primary);border:1px solid var(--border-color);font-size:14px;padding:8px 12px;transition:border-color .2s}.rule-field input:focus,.rule-field select:focus{border-color:var(--color-primary)}.rule-field input.input-error{border-color:#dc3545;border-color:var(--color-error)}.target-buttons{display:flex;gap:8px}.target-btn{align-items:center;background:#fff;background:var(--bg-primary);border:1px solid #dee2e6;border:1px solid var(--border-color);border-radius:6px;color:#6c757d;color:var(--text-secondary);cursor:pointer;display:flex;font-size:13px;gap:6px;padding:8px 12px;transition:all .2s}.target-btn:hover{background:#f8f9fa;background:var(--bg-secondary);border-color:#adb5bd;border-color:var(--border-hover)}.target-btn.active{background:#e7f1ff;background:var(--color-primary-light);border-color:#0d6efd;border-color:var(--color-primary);color:#0d6efd;color:var(--color-primary)}.rule-error{align-items:center;background:#f8d7da;background:var(--color-error-light);border-top:1px solid #dc3545;border-top:1px solid var(--color-error);color:#dc3545;color:var(--color-error);display:flex;font-size:13px;gap:6px;padding:8px 16px}.btn-add-rule{border:1px dashed var(--border-color);color:var(--text-secondary);transition:all .2s}.btn-add-rule:hover{background:#e7f1ff;background:var(--color-primary-light);border-color:var(--color-primary);color:var(--color-primary)}.alert-danger{background:#f8d7da;background:var(--color-error-light);border:1px solid #dc3545;border:1px solid var(--color-error);color:var(--color-error)}.association-rules-preview{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1100}.preview-panel{background:#fff;background:var(--bg-primary);border-radius:12px;box-shadow:0 20px 60px #0000004d;max-height:80vh;max-width:800px;width:90%}.preview-header{border-bottom:1px solid #dee2e6;padding:16px 20px}.preview-header h3{font-size:18px}.preview-body{flex:1 1;overflow-y:auto;padding:20px}.preview-section{margin-bottom:24px}.preview-section:last-child{margin-bottom:0}.preview-section h4{color:#6c757d;color:var(--text-secondary)}.preview-section h4 .count{background:#f8f9fa;background:var(--bg-secondary);border-radius:12px;font-size:12px;font-weight:500;padding:2px 8px}.preview-list{display:flex;flex-direction:column;gap:8px}.preview-item{align-items:center;background:#f8f9fa;background:var(--bg-secondary);border-radius:6px;display:flex;justify-content:space-between;padding:10px 12px}.preview-item-name{font-weight:500}.preview-item-meta{color:#6c757d;color:var(--text-secondary);font-size:12px}.preview-empty{background:#f8f9fa;background:var(--bg-secondary);border-radius:6px;color:var(--text-secondary);font-style:italic;padding:16px}.preview-more{color:#6c757d;color:var(--text-secondary);font-size:12px;padding:8px;text-align:center}.preview-footer{background:#f8f9fa;background:var(--bg-secondary);border-radius:0 0 12px 12px;border-top:1px solid #dee2e6;border-top:1px solid var(--border-color);display:flex;justify-content:flex-end;padding:16px 20px}.default-rules-section{margin-bottom:20px}.defaults-toggle{align-items:center;background:#f8f9fa;background:var(--bg-secondary);border:1px solid #dee2e6;border:1px solid var(--border-color);border-radius:6px;color:#6c757d;color:var(--text-secondary);cursor:pointer;display:flex;font-size:13px;font-weight:500;gap:6px;padding:8px 12px;transition:all .2s;width:100%}.defaults-toggle:hover{border-color:#adb5bd;border-color:var(--border-hover);color:#212529;color:var(--text-primary)}.toggle-chevron{flex-shrink:0;transition:transform .2s}.toggle-chevron.expanded{transform:rotate(90deg)}.defaults-collapsible{display:flex;flex-direction:column;gap:8px;margin-top:8px}.rules-section-title{color:#212529;color:var(--text-primary);font-size:14px;font-weight:600;margin:0 0 4px}.rules-section-subtitle{color:#6c757d;color:var(--text-secondary);font-size:13px;margin:0 0 12px}.custom-rules-section{margin-bottom:8px}.rule-card.default-rule{background:#f8f9fa;background:var(--bg-secondary);border-color:#dee2e6;border-color:var(--border-color)}.rule-card.default-rule .rule-header{background:#0000;border-bottom:none;padding:10px 16px 4px}.rule-card.default-rule .rule-header-left{align-items:center;display:flex;gap:8px}.rule-card.rule-disabled{opacity:.5}.rule-badge{align-items:center;border-radius:4px;display:inline-flex;font-size:11px;font-weight:600;gap:4px;letter-spacing:.3px;padding:2px 8px;text-transform:uppercase}.rule-badge.default-badge{background:#e8f4fd;color:#1976d2}.rule-badge.target-badge{background:#fff;background:var(--bg-primary);border:1px solid #dee2e6;border:1px solid var(--border-color);color:#6c757d;color:var(--text-secondary)}.rule-badge.target-badge svg{flex-shrink:0}.rule-summary{align-items:center;display:flex;flex-wrap:wrap;font-size:14px;gap:6px;padding:8px 16px 12px}.rule-summary-field{color:#212529;color:var(--text-primary);font-weight:500}.rule-summary-operator{color:#6c757d;color:var(--text-secondary);font-style:italic}.rule-summary-value{color:#0d6efd;color:var(--color-primary);font-weight:500}.btn-toggle-off,.btn-toggle-on{background:#0000;border:1px solid #dee2e6;border:1px solid var(--border-color);border-radius:4px;cursor:pointer;padding:4px 8px;transition:all .2s}.btn-toggle-on{color:#2e7d32}.btn-toggle-on:hover{background:#e8f5e9;border-color:#2e7d32}.btn-toggle-off{color:#6c757d;color:var(--text-secondary)}.btn-toggle-off:hover{background:#f8f9fa;background:var(--bg-secondary);border-color:#6c757d;border-color:var(--text-secondary)}.add-rule-actions{align-items:stretch;display:flex;gap:12px}.add-rule-actions .btn-add-rule{flex:1 1}.preset-dropdown-wrapper{position:relative}.btn-add-preset{align-items:center;background:#0000;border:1px solid #dee2e6;border:1px solid var(--border-color);border-radius:8px;color:#6c757d;color:var(--text-secondary);cursor:pointer;display:flex;font-size:14px;gap:8px;padding:12px 16px;transition:all .2s;white-space:nowrap}.btn-add-preset:hover{border-color:#0d6efd;border-color:var(--color-primary);color:#0d6efd;color:var(--color-primary)}.preset-dropdown{background:#fff;background:var(--bg-primary);border:1px solid #dee2e6;border:1px solid var(--border-color);border-radius:8px;bottom:calc(100% + 4px);box-shadow:0 8px 24px #0000001f;min-width:280px;overflow:hidden;position:absolute;right:0;z-index:10}.preset-option{align-items:center;background:#0000;border:none;color:#212529;color:var(--text-primary);cursor:pointer;display:flex;font-size:13px;gap:10px;padding:10px 14px;text-align:left;transition:background .15s;width:100%}.preset-option:hover{background:#e7f1ff;background:var(--color-primary-light);color:#0d6efd;color:var(--color-primary)}.preset-option svg{color:#6c757d;color:var(--text-secondary);flex-shrink:0}.preset-option:hover svg{color:#0d6efd;color:var(--color-primary)}:root{--bg-primary:#fff;--bg-secondary:#f8f9fa;--text-primary:#212529;--text-secondary:#6c757d;--border-color:#dee2e6;--border-hover:#adb5bd;--color-primary:#0d6efd;--color-primary-light:#e7f1ff;--color-error:#dc3545;--color-error-light:#f8d7da}.global-badge{align-items:center;border-radius:4px;cursor:help;display:inline-flex;flex-shrink:0;font-size:11px;font-weight:600;letter-spacing:.5px;padding:6px 12px;text-transform:uppercase;white-space:nowrap}.global-badge-settings{background:#667eea26;color:#5b21b6}.global-badge-tool{background:#10b98126;color:#047857}.bulk-edit-header{align-items:center;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:24px}.header-title{gap:12px}.header-title h2{color:#333;font-size:24px;margin:0}.tenant-selector{align-items:center;display:flex;gap:10px}.tenant-label{color:#666;font-size:14px}.loading-text{color:#666;padding:6px 10px}.tenant-dropdown{background:#fff;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500;min-width:200px;padding:8px 12px}.tenant-dropdown:focus{border-color:#0078d4;box-shadow:0 0 0 3px #0078d41a;outline:none}.section-card{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:20px;padding:24px}.section-card h3{color:#333;font-size:18px;font-weight:600;margin:0 0 8px}.section-description{line-height:1.5}.button-group{display:flex;flex-wrap:wrap;gap:10px}.btn{border-radius:4px;gap:8px;padding:10px 20px}.btn:disabled{opacity:.5}.btn-primary{background-color:#0078d4}.btn-primary:hover:not(:disabled){background-color:#106ebe}.btn-secondary{background-color:#f5f5f5;border:1px solid #ddd;color:#333}.btn-secondary:hover:not(:disabled){background-color:#e5e5e5}.file-input{display:none}.file-label{border:2px dashed #ddd;border-radius:6px;color:#666;cursor:pointer;display:inline-block;font-size:14px;margin-bottom:16px;padding:12px 24px;transition:all .2s}.file-label:hover{background:#f8f9fa;border-color:#0078d4;color:#333}.import-preview{margin-top:20px}.import-preview h4{color:#333;font-size:16px;margin:0 0 12px}.preview-table-container{border:1px solid #ddd;border-radius:4px;margin-bottom:16px;max-height:350px;overflow:auto}.preview-table{border-collapse:collapse;font-size:13px;min-width:1400px;width:100%}.preview-table thead{background:#f5f5f5;position:-webkit-sticky;position:sticky;top:0}.preview-table th{border-bottom:2px solid #ddd;color:#333;font-weight:600;padding:10px 12px;text-align:left}.preview-table td{border-bottom:1px solid #eee;color:#555;padding:10px 12px}.preview-table tbody tr:hover{background:#f8f9fa}.preview-table .protected-row{background:#fff8e1}.preview-table .protected-row:hover{background:#fff3cd}.action-badge{border-radius:4px;display:inline-block;font-size:11px;font-weight:600;padding:3px 10px;text-transform:uppercase}.action-badge.update{background:#e3f2fd;color:#1976d2}.action-badge.no-change{background:#f5f5f5;color:#757575}.action-badge.not-found{background:#ffebee;color:#c62828}.action-badge.protected{background:#fff3cd;color:#856404}.validation-errors{background:#ffebee;border:1px solid #ffcdd2;border-radius:4px;margin-bottom:16px;padding:12px 16px}.validation-errors strong{color:#c62828;display:block;margin-bottom:8px}.validation-errors ul{margin:0;padding-left:20px}.validation-errors li{color:#b71c1c;font-size:13px;margin-bottom:4px}.import-actions{display:flex;gap:10px;margin-top:16px}.import-results{border-radius:6px;margin-top:20px;padding:20px}.import-results.all-success{background:#e8f5e9;border:1px solid #c8e6c9}.import-results.has-failures{background:#fff3cd;border:1px solid #ffeeba}.import-results h4{color:#333;margin:0 0 16px}.results-summary{display:flex;flex-wrap:wrap;gap:20px;margin-bottom:16px}.result-item{align-items:center;border-radius:4px;display:flex;font-size:14px;gap:8px;padding:8px 16px}.result-item.success{background:#c8e6c9;color:#2e7d32}.result-item.failed{background:#ffcdd2;color:#c62828}.result-item.skipped{background:#ffe0b2;color:#e65100}.result-item.unchanged{background:#e0e0e0;color:#616161}.result-label{font-weight:500}.result-value{font-weight:700}.failed-details{background:#ffffffb3;border-radius:4px;margin-bottom:16px;padding:12px 16px}.failed-details strong{color:#333;display:block;margin-bottom:8px}.failed-details ul{margin:0;padding-left:20px}.failed-details li{color:#666;font-size:13px;margin-bottom:4px}.custom-attributes-toggle{align-items:center;display:flex;flex-wrap:wrap;gap:12px;margin-bottom:16px}.toggle-switch{display:inline-block;height:24px;position:relative;width:44px}.toggle-switch input{height:0;opacity:0;width:0}.toggle-slider{background-color:#ccc;border-radius:24px;bottom:0;cursor:pointer;left:0;position:absolute;right:0;top:0;transition:.3s}.toggle-slider:before{background-color:#fff;border-radius:50%;bottom:3px;content:"";height:18px;left:3px;position:absolute;transition:.3s;width:18px}.toggle-switch input:checked+.toggle-slider{background-color:#0078d4}.toggle-switch input:checked+.toggle-slider:before{transform:translateX(20px)}.toggle-switch input:disabled+.toggle-slider{cursor:not-allowed;opacity:.5}.toggle-label{color:#333}.toggle-label .loading-indicator{color:#666;font-style:italic}.toggle-hint{background:#f5f5f5;border-radius:4px;color:#666;font-size:12px;padding:4px 8px}.toggle-hint.warning{background:#fff3cd;color:#856404}.validation-warnings{background:#fff3cd;border:1px solid #ffeeba;border-radius:4px;margin-bottom:16px;padding:12px 16px}.validation-warnings strong{color:#856404;display:block;margin-bottom:8px}.validation-warnings ul{margin:0;padding-left:20px}.validation-warnings li{color:#856404;font-size:13px;margin-bottom:4px}.location-warning{background:#fff8e1!important}.warning-icon{color:#f57c00;cursor:help;margin-left:6px}.instructions-card{background:#e3f2fd;border:1px solid #90caf9;border-radius:8px;padding:20px}.instructions-card h4{color:#1565c0;margin:0 0 12px}.instructions-card ol{margin:0 0 12px;padding-left:24px}.instructions-card li{color:#333;font-size:14px;line-height:1.5;margin-bottom:8px}.instructions-card ul{margin:8px 0;padding-left:20px}.instructions-card ul li{margin-bottom:4px}.instructions-card .note{color:#666;font-size:13px;font-style:italic;margin:0}@media (max-width:768px){.bulk-edit-header{align-items:flex-start;flex-direction:column}.tenant-selector{width:100%}.tenant-dropdown{flex:1 1;width:100%}.button-group{flex-direction:column}.button-group .btn{justify-content:center;width:100%}.results-summary{flex-direction:column;gap:10px}.result-item{justify-content:space-between;width:100%}}.stage-indicator{display:flex;gap:4px;margin-bottom:24px}.stage-step{align-items:center;background:#f5f5f5;border-radius:4px;color:#999;display:flex;font-size:13px;font-weight:500;gap:8px;padding:8px 16px}.stage-step.active{background:#0078d4;color:#fff}.stage-step.completed{background:#e8f5e9;color:#2e7d32}.stage-step-number{align-items:center;background:#0000001a;border-radius:50%;display:flex;font-size:12px;font-weight:700;height:22px;justify-content:center;width:22px}.stage-step.active .stage-step-number{background:#ffffff4d}.stage-step.completed .stage-step-number{background:#2e7d3233}.action-cards{gap:16px;margin-bottom:20px}.action-card{border:2px solid #e0e0e0;border-radius:8px;cursor:pointer;flex:1 1;padding:16px}.action-card:hover{border-color:#90caf9}.action-card.selected{background:#f0f7ff;border-color:#0078d4}.action-card.selected.delete{background:#fff5f5;border-color:#e53935}.action-card-header{align-items:center;display:flex;gap:10px;margin-bottom:8px}.action-card-header input[type=radio]{margin:0}.action-card-header h4{font-size:16px;font-weight:600;margin:0}.action-card .recommended-badge{background:#e8f5e9;border-radius:4px;color:#2e7d32;font-size:11px;font-weight:700;padding:2px 8px;text-transform:uppercase}.action-card p{color:#666;font-size:13px;line-height:1.4;margin:0}.options-panel{background:#fff;border:1px solid #e0e0e0;border-radius:8px;margin-bottom:20px;padding:20px}.options-panel h3{color:#333;font-size:16px;font-weight:600;margin:0 0 16px}.option-group{margin-bottom:16px}.option-group-title{color:#666;font-size:12px;font-weight:600;letter-spacing:.5px;margin-bottom:10px;text-transform:uppercase}.option-row{align-items:center;border-radius:4px;display:flex;gap:10px;margin-bottom:4px;padding:8px 12px}.option-row:hover{background:#f8f9fa}.option-row input[type=checkbox]{cursor:pointer;height:18px;width:18px}.option-row label{color:#333;cursor:pointer;flex:1 1;font-size:14px}.option-row.nested{border-left:2px solid #e0e0e0;margin-left:28px;padding-left:12px}.option-row.disabled label{color:#999}.option-hint{color:#888;font-size:12px;font-style:italic;margin-left:28px;padding:4px 12px}.option-callout{background:#e3f2fd;border:1px solid #90caf9;border-radius:6px;color:#1565c0;font-size:13px;line-height:1.5;margin-bottom:16px;padding:12px 16px}.role-selector{margin-bottom:20px}.role-selector label{color:#333;display:block;font-size:14px;font-weight:600;margin-bottom:6px}.role-selector select{background:#fff;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:14px;min-width:250px;padding:8px 12px}.role-selector select:focus{border-color:#0078d4;box-shadow:0 0 0 3px #0078d41a;outline:none}.role-selector .no-roles-warning{align-items:center;color:#e65100;display:flex;font-size:13px;gap:6px}.ticket-input{margin-bottom:20px}.ticket-input label{color:#333;display:block;font-size:14px;font-weight:600;margin-bottom:6px}.ticket-input input{border:1px solid #ddd;border-radius:4px;font-size:14px;padding:8px 12px;width:200px}.ticket-input input:focus{border-color:#0078d4;box-shadow:0 0 0 3px #0078d41a;outline:none}.ticket-input .ticket-hint{color:#888;font-size:12px;margin-top:4px}.preflight-results{margin-bottom:20px}.preflight-section{background:#fff;border:1px solid #e0e0e0;border-radius:8px;margin-bottom:12px;padding:16px}.preflight-section h4{align-items:center;display:flex;font-size:15px;font-weight:600;gap:8px;margin:0 0 12px}.preflight-section h4 .check-pass{color:#2e7d32}.preflight-section h4 .check-fail{color:#c62828}.preflight-section h4 .check-warn{color:#f57c00}.preflight-table{border-collapse:collapse;font-size:13px;width:100%}.preflight-table th{background:#f5f5f5;border-bottom:2px solid #ddd;font-weight:600;padding:8px 12px;text-align:left}.preflight-table td{border-bottom:1px solid #eee;padding:8px 12px}.preflight-table .status-available{color:#2e7d32;font-weight:500}.preflight-table .status-conflict{color:#c62828;font-weight:500}.preflight-table .status-insufficient{color:#e65100;font-weight:500}.preflight-table .status-unknown{color:#999}.progress-container{margin:20px 0}.progress-bar-wrapper{background:#e0e0e0;border-radius:4px;height:8px;margin-bottom:8px;overflow:hidden}.progress-bar-fill{background:#0078d4;border-radius:4px;height:100%;transition:width .3s}.progress-text{color:#666;font-size:13px;text-align:center}.bulk-results{margin-top:20px}.results-banner{border-radius:8px;display:flex;flex-wrap:wrap;gap:20px;margin-bottom:16px;padding:16px 20px}.results-banner.all-success{background:#e8f5e9;border:1px solid #c8e6c9}.results-banner.has-failures{background:#fff3cd;border:1px solid #ffeeba}.results-stat{align-items:center;display:flex;font-size:14px;gap:8px}.results-stat .stat-label{color:#555}.results-stat .stat-value{font-weight:700}.results-stat.success .stat-value{color:#2e7d32}.results-stat.failed .stat-value{color:#c62828}.results-stat.skipped .stat-value{color:#e65100}.password-cell{align-items:center;display:flex;gap:6px}.password-cell code{background:#f5f5f5;border-radius:3px;font-size:12px;padding:2px 6px}.password-cell button{background:none;border:none;color:#0078d4;cursor:pointer;padding:2px}.password-cell button:hover{color:#106ebe}.bulk-operations-container{background:#f5f5f5;display:flex;flex-direction:column;height:100%}.bulk-operations-header{background:#fff;border-bottom:1px solid #e0e0e0;box-shadow:0 2px 4px #0000000d;padding:20px 24px 0}.header-content{margin-bottom:16px}.header-title-row{align-items:center;display:flex;gap:12px}.header-content h2{color:#333;font-size:24px;font-weight:600;margin:0 0 4px}.header-content p{color:#666;font-size:14px;margin:0}.bulk-operations-tabs{display:flex;gap:0}.bulk-operations-tabs .tab-button{align-items:center;background:none;border:none;border-bottom:3px solid #0000;color:#666;cursor:pointer;display:flex;font-size:15px;font-weight:500;gap:8px;margin-bottom:-1px;padding:12px 24px;transition:all .2s}.bulk-operations-tabs .tab-button:hover{background:#f8f9fa;color:#333}.bulk-operations-tabs .tab-button.active{background:#f8f9fa;border-bottom-color:#0078d4;color:#0078d4}.bulk-operations-tabs .tab-button svg{flex-shrink:0}.bulk-operations-content{flex:1 1;overflow:auto;padding:24px}.bulk-operations-content>*{margin-left:auto;margin-right:auto;max-width:1200px}@media (max-width:768px){.bulk-operations-header{padding:16px 16px 0}.header-content h2{font-size:20px}.bulk-operations-tabs .tab-button{font-size:14px;padding:10px 16px}.bulk-operations-tabs .tab-button span{display:none}.bulk-operations-tabs .tab-button svg{margin:0}.bulk-operations-content{padding:16px}}.resource-configuration{background:#f5f6fa;min-height:400px;position:relative}.config-header{background:#fff;border-bottom:2px solid #e9ecef;box-shadow:0 2px 4px #0000001a;padding:15px 20px;position:-webkit-sticky;position:sticky;top:0;z-index:100}.config-header h3{color:#333;font-size:20px;margin:0}.config-actions{align-items:center;gap:10px}.config-message{background:#d4edda;border-radius:4px;color:#155724;font-size:14px;padding:8px 15px}.resource-configuration .btn-primary{align-items:center;background-color:#3b82f6;border:none;border-radius:6px;color:#fff;cursor:pointer;display:inline-flex;font-size:14px;font-weight:500;gap:6px;padding:10px 16px;transition:background-color .2s}.resource-configuration .btn-primary:hover:not(:disabled){background-color:#2563eb}.resource-configuration .btn-primary:disabled{cursor:not-allowed;opacity:.6}.resource-configuration .btn-secondary{align-items:center;background-color:#fff;border:1px solid #d1d5db;border-radius:6px;color:#374151;cursor:pointer;display:inline-flex;font-size:14px;font-weight:500;gap:6px;padding:10px 16px;transition:all .2s}.resource-configuration .btn-secondary:hover:not(:disabled){background-color:#f9fafb;border-color:#9ca3af}.resource-configuration .btn-secondary:disabled{cursor:not-allowed;opacity:.5}.resources-list{display:flex;flex-direction:column;gap:15px;padding:25px 20px 20px}.resource-item{background:#fff;border-radius:8px;box-shadow:0 2px 4px #00000014;transition:all .2s}.resource-item.enabled{box-shadow:0 2px 8px #0000001f}.resource-item.disabled{opacity:.8}.resource-main{align-items:center;display:flex;gap:15px;padding:15px}.resource-toggle{flex-shrink:0}.resource-info{align-items:center;display:flex;flex-grow:1;gap:12px}.resource-icon{background:#f8f9fa;border-radius:6px;height:40px;object-fit:contain;padding:5px;width:40px}.resource-info h4{color:#333;font-size:16px;margin:0 0 4px}.resource-desc{color:#666;font-size:13px;margin:0}.btn-save-individual{background:#28a745;border:none;border-radius:4px;color:#fff;cursor:pointer;padding:8px 12px;transition:all .2s}.btn-save-individual:hover:not(:disabled){background:#218838}.btn-save-individual:disabled{cursor:not-allowed;opacity:.6}.resource-config{border-top:1px solid #e9ecef;padding:0 15px 15px}.config-row{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-top:15px}.config-field{display:flex;flex-direction:column;gap:5px}.config-field label{align-items:center;color:#666;display:flex;font-size:13px;font-weight:500;gap:5px}.config-field input{border:1px solid #ced4da;border-radius:4px;font-size:14px;padding:8px 12px;transition:border-color .2s}.config-field input:focus{border-color:#06c;box-shadow:0 0 0 2px #0066cc1a;outline:none}.config-field input::placeholder{color:#999;opacity:1}.config-field input::-webkit-input-placeholder{color:#999;opacity:1}.config-field input::-moz-placeholder{color:#999;opacity:1}.config-help{background:#f8f9fa;border-radius:4px;margin-top:10px;padding:8px 12px}.config-help small{color:#666;display:block;font-size:12px}.loading{padding:40px}.file-input-group{align-items:center;display:flex;gap:8px}.file-input-group input[type=text]{flex:1 1}.file-input-group .btn-icon{align-items:center;background:#fff;border:1px solid #dee2e6;border-radius:4px;cursor:pointer;display:flex;justify-content:center;padding:6px 10px;transition:all .2s}.file-input-group .btn-icon:hover{background:#f8f9fa;border-color:#adb5bd}.file-input-group .btn-icon:disabled{cursor:not-allowed;opacity:.5}.file-picker{background:#fff;border:1px solid #dee2e6;border-radius:4px;box-shadow:0 4px 12px #00000026;display:flex;flex-direction:column;left:0;margin-top:5px;max-height:300px;overflow:hidden;position:absolute;right:0;top:100%;z-index:1000}.file-picker-header{align-items:center;background:#f8f9fa;border-bottom:1px solid #dee2e6;display:flex;justify-content:space-between;padding:10px 15px}.file-picker-header span{color:#495057;font-size:13px;font-weight:600}.file-picker-header button{background:none;border:none;color:#6c757d;cursor:pointer;font-size:20px;height:20px;line-height:1;padding:0;width:20px}.file-picker-header button:hover{color:#343a40}.file-list{flex:1 1;overflow-y:auto;padding:5px}.file-item{align-items:center;border-radius:4px;cursor:pointer;display:flex;gap:8px;margin:2px 0;padding:8px 10px;transition:background .2s}.file-item:hover{background:#f8f9fa}.file-item svg{color:#6c757d;flex-shrink:0}.file-item span{font-size:13px}.file-item span:first-of-type{color:#212529;flex:1 1}.file-item .file-size{color:#6c757d;font-size:11px}.no-files{color:#6c757d;font-size:13px;padding:20px;text-align:center}.config-field{position:relative}.wizard-modal{display:flex;flex-direction:column;max-height:90vh;max-width:700px}.wizard-header{align-items:center;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;padding:1.25rem 1.5rem}.wizard-header h2{font-size:1.25rem;font-weight:600;margin:0}.wizard-steps{border-bottom:1px solid var(--border-color);display:flex;gap:.5rem;overflow-x:auto;padding:1rem 1.5rem}.wizard-step{align-items:center;border-radius:6px;color:var(--text-secondary);display:flex;font-size:.75rem;gap:.5rem;padding:.5rem .75rem;white-space:nowrap}.wizard-step.active{background:#eff6ff;background:var(--primary-color-light,#eff6ff);color:var(--primary-color)}.wizard-step.completed{color:var(--success-color)}.step-icon{align-items:center;background:var(--hover-bg);border-radius:50%;display:flex;height:24px;justify-content:center;width:24px}.wizard-step.active .step-icon{background:var(--primary-color);color:#fff}.wizard-step.completed .step-icon{background:var(--success-color);color:#fff}.wizard-content{flex:1 1;overflow-y:auto;padding:1.5rem}.step-content{animation:fadeIn .2s ease}.step-content h3{font-size:1.125rem;margin:0 0 .5rem}.step-content>p{color:var(--text-secondary);margin:0 0 1.5rem}.welcome-step{text-align:center}.welcome-icon{color:var(--primary-color)}.welcome-icon,.welcome-step h3{margin-bottom:1rem}.prerequisites{background:var(--hover-bg);border-radius:8px;margin:1.5rem 0;padding:1rem 1.25rem;text-align:left}.prerequisites h4{font-size:.875rem;margin:0 0 .75rem}.prerequisites ul{margin:0;padding-left:1.25rem}.prerequisites li{font-size:.875rem;margin-bottom:.375rem}.info-links{display:flex;gap:1rem;justify-content:center}.info-links a{align-items:center;color:var(--primary-color);display:inline-flex;font-size:.875rem;gap:.375rem;text-decoration:none}.info-links a:hover{text-decoration:underline}.form-group{margin-bottom:1rem}.form-label{display:block;font-weight:500;margin-bottom:.375rem}.form-control,.form-label{color:var(--text-color);font-size:.875rem}.form-control{background:var(--card-bg);border:1px solid var(--border-color);padding:.625rem .75rem;width:100%}.form-control:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px var(--primary-color-light,#3b82f61a)}.form-control.error{border-color:var(--danger-color)}.form-control::placeholder{color:var(--text-secondary)}.help-text{color:var(--text-secondary);display:block}.error-text,.help-text{font-size:.75rem;margin-top:.375rem}.error-text{color:var(--danger-color)}.form-row{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr}@media (max-width:600px){.form-row{grid-template-columns:1fr}}.error-banner,.info-banner{align-items:center;border-radius:6px;display:flex;font-size:.875rem;gap:.5rem;margin-bottom:1rem;padding:.75rem 1rem}.error-banner{background:#fee2e2;background:var(--danger-color-light,#fee2e2);border:1px solid #fecaca;color:#ef4444;color:var(--danger-color,#ef4444)}.credential-instructions{background:var(--hover-bg);border-radius:8px;margin-top:1.5rem;padding:1rem 1.25rem}.credential-instructions h4,.credential-instructions p{font-size:.875rem;margin:0 0 .5rem}.credential-instructions code{background:var(--card-bg);border:1px solid var(--border-color);border-radius:4px;display:inline-block;font-family:var(--font-mono);font-size:.75rem;padding:.25rem .5rem}.test-step .test-section{display:flex;justify-content:center;margin:2rem 0}.test-step .test-results{border-radius:8px;margin-top:1.5rem;padding:1.25rem}.test-step .test-results.success{background:#dcfce7;background:var(--success-color-light,#dcfce7);border:1px solid #86efac}.test-step .test-results.failed{background:#fee2e2;background:var(--danger-color-light,#fee2e2);border:1px solid #fecaca}.test-header{align-items:center;display:flex;font-size:1rem;font-weight:600;gap:.5rem;margin-bottom:1rem}.test-details{display:flex;flex-direction:column;gap:.5rem}.test-item{align-items:center;background:#ffffff80;border-radius:4px;display:flex;font-size:.875rem;justify-content:space-between;padding:.5rem .75rem}.test-item.pass{color:var(--success-color)}.test-item.fail{color:var(--danger-color)}.test-name{text-transform:capitalize}.test-item .test-error{display:block;font-size:.75rem;margin-top:.25rem}.error-message{background:#ffffff80;border-radius:4px;font-size:.875rem;margin-top:1rem;padding:.75rem}.wizard-footer{align-items:center;background:var(--card-bg);border-top:1px solid var(--border-color);display:flex;justify-content:space-between;padding:1rem 1.5rem}.nav-buttons{display:flex;gap:.5rem}.btn-lg{font-size:1rem;padding:.75rem 1.5rem}.btn-lg svg{height:20px;width:20px}.toggle-label{cursor:pointer;gap:.5rem}.toggle-label input[type=checkbox]{height:1rem;width:1rem}.deploy-hint{background:var(--hover-bg);border-radius:6px;color:var(--text-secondary);font-size:.813rem;margin-top:1rem;padding:.75rem}.success-banner{align-items:center;background:#dcfce7;background:var(--success-color-light,#dcfce7);border:1px solid #86efac;border-radius:6px;color:#16a34a;color:var(--success-color,#16a34a);display:flex;font-size:.875rem;gap:.5rem;margin-bottom:1rem;padding:.75rem 1rem}.success-banner .btn-link{margin-left:auto}.review-section{background:var(--hover-bg);border-radius:8px;margin-bottom:1.25rem;padding:1rem 1.25rem}.review-section h4{color:var(--text-secondary);font-size:.875rem;letter-spacing:.05em;margin:0 0 .75rem;text-transform:uppercase}.review-grid{display:flex;flex-direction:column;gap:.375rem}.review-item{align-items:baseline;display:flex;font-size:.875rem;justify-content:space-between;padding:.25rem 0}.review-item span{color:var(--text-secondary)}.review-item strong{max-width:60%;text-align:right;word-break:break-all}.review-warning{color:#d97706;color:var(--warning-color,#d97706);font-size:.75rem;font-weight:400}.discovery-summary{background:#ffffff80;border-radius:4px;margin-top:1rem;padding:.75rem}.discovery-note{align-items:center;display:flex;font-size:.813rem;gap:.375rem;margin:0}.discovery-note,.test-item.skipped{color:var(--text-secondary)}.text-success{color:#16a34a;color:var(--success-color,#16a34a)}.text-warning{color:#d97706;color:var(--warning-color,#d97706)}.btn-link{cursor:pointer;font-size:.813rem;padding:0;text-decoration:underline}.btn-link:hover{opacity:.8}.deployment-guide{max-width:800px;padding:1.5rem}.deployment-guide-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:2rem}.deployment-guide-header h2{align-items:center;color:var(--text-color);display:flex;font-size:1.5rem;gap:.5rem;margin:0}.deployment-guide-header p{color:var(--text-secondary);font-size:.875rem;margin:.5rem 0 0}.path-selection{margin-bottom:2rem}.path-selection h4{color:var(--text-color);font-size:1rem;margin:0 0 .75rem}.path-options{display:flex;gap:1rem}.path-option{align-items:flex-start;background:var(--card-bg);border:2px solid var(--border-color);border-radius:8px;cursor:pointer;display:flex;flex:1 1;gap:.75rem;padding:1rem;text-align:left;transition:border-color .15s,background-color .15s}.path-option.selected,.path-option:hover{border-color:var(--primary-color)}.path-option.selected{background:#eff6ff;background:var(--primary-color-light,#eff6ff)}.path-option strong{color:var(--text-color);display:block;margin-bottom:.25rem}.path-option span{color:var(--text-secondary);font-size:.813rem}.guide-steps{display:flex;flex-direction:column;gap:.75rem}.guide-step{background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;overflow:hidden}.guide-step.completed{border-color:#10b981;border-color:var(--success-color,#10b981)}.guide-step.optional{border-style:dashed}.step-header{align-items:center;cursor:pointer;display:flex;gap:.75rem;padding:1rem 1.25rem;transition:background-color .15s}.step-header:hover{background:var(--hover-bg)}.step-number{background:var(--primary-color);flex-shrink:0;font-size:.875rem;height:32px;width:32px}.guide-step.completed .step-number{background:#10b981;background:var(--success-color,#10b981)}.step-title-area{flex:1 1}.step-title-area h4{color:var(--text-color);font-size:1rem;margin:0}.step-subtitle{color:var(--text-secondary);font-size:.813rem}.optional-badge{background:var(--hover-bg);border-radius:4px;color:var(--text-secondary);display:inline-block;font-size:.688rem;font-weight:500;letter-spacing:.05em;margin-left:.5rem;padding:.125rem .5rem;text-transform:uppercase}.guide-step .step-content{border-top:1px solid var(--border-color);padding:0 1.25rem 1.25rem}.step-instructions{padding-top:1rem}.step-instructions p{color:var(--text-color);font-size:.875rem;line-height:1.5;margin:0 0 1rem}.step-instructions ul{margin:0 0 1rem;padding-left:1.5rem}.step-instructions li{color:var(--text-color);font-size:.875rem;margin-bottom:.375rem}.step-note{background:#fef3c7;background:var(--warning-color-light,#fef3c7);border-radius:6px;color:#92400e;color:var(--warning-color-dark,#92400e);font-size:.813rem;padding:.75rem}.detected-vms{margin-top:.75rem}.detected-vms label{color:var(--text-color);display:block;font-size:.813rem;font-weight:500;margin-bottom:.375rem}.vm-select{border:1px solid #d1d5db;border:1px solid var(--border-color,#d1d5db);border-radius:4px;font-family:monospace;font-family:var(--font-mono,monospace);font-size:.813rem;padding:.5rem;width:100%}.deploy-params input[readOnly]{background:#f3f4f6;background:var(--hover-bg,#f3f4f6);color:#6b7280;color:var(--text-secondary,#6b7280);cursor:default}.deploy-params{grid-gap:.75rem;background:#f9fafb;background:var(--surface-bg,#f9fafb);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:6px;display:grid;gap:.75rem;grid-template-columns:1fr 1fr;margin-bottom:1rem;padding:1rem}.param-row{display:flex;flex-direction:column;gap:.25rem}.param-row label{color:#6b7280;color:var(--text-secondary,#6b7280);font-size:.75rem;font-weight:600;letter-spacing:.025em;text-transform:uppercase}.param-row input{border:1px solid #d1d5db;border:1px solid var(--border-color,#d1d5db);border-radius:4px;font-family:monospace;font-family:var(--font-mono,monospace);font-size:.875rem;padding:.5rem .625rem}.param-row input:focus{border-color:#3b82f6;border-color:var(--primary-color,#3b82f6);box-shadow:0 0 0 2px #3b82f626;outline:none}.param-hint{color:#9ca3af;color:var(--text-tertiary,#9ca3af);font-size:.7rem}.code-block{background:var(--code-bg,#1e1e1e);margin-bottom:1rem;overflow:hidden;position:relative}.code-block pre{font-family:var(--font-mono);font-size:.813rem;line-height:1.5;margin:0;overflow-x:auto;padding:1rem 3rem 1rem 1rem;white-space:pre-wrap;word-break:break-all}.code-block pre,.copy-btn{color:#d4d4d4;color:var(--code-color,#d4d4d4)}.copy-btn{background:#ffffff1a;border:none;border-radius:4px;padding:.375rem;position:absolute;right:.5rem;top:.5rem}.copy-btn:hover{background:#fff3}.step-actions{align-items:center;display:flex;gap:.5rem;margin-bottom:1rem}.info-banner{align-items:flex-start;color:#2563eb;color:var(--info-color,#2563eb);font-size:.813rem;gap:.5rem;padding:.75rem 1rem}.domain-selector{align-items:center;display:flex;font-size:.875rem;gap:.5rem;margin-bottom:.75rem}.domain-selector label{font-weight:500;white-space:nowrap}.domain-selector select{border:1px solid #d1d5db;border:1px solid var(--border-color,#d1d5db);border-radius:4px;font-size:.813rem;min-width:200px;padding:.375rem .5rem}.import-result{align-items:flex-start;border-radius:6px;display:flex;font-size:.813rem;gap:.5rem;margin-top:.75rem;padding:.75rem 1rem}.import-result.success{background:#dcfce7;background:var(--success-color-light,#dcfce7);color:#10b981;color:var(--success-color,#10b981)}.import-result.failed{background:#fee2e2;background:var(--danger-color-light,#fee2e2);color:#ef4444;color:var(--danger-color,#ef4444)}.import-result ul{margin:.5rem 0 0;padding-left:1.25rem}.verify-results{margin-top:1rem}.verify-header{align-items:center;border-radius:6px;display:flex;font-size:.875rem;font-weight:600;gap:.5rem;padding:.75rem 1rem}.verify-header.success{background:#dcfce7;background:var(--success-color-light,#dcfce7);color:#10b981;color:var(--success-color,#10b981)}.verify-header.failed{background:#fee2e2;background:var(--danger-color-light,#fee2e2);color:#ef4444;color:var(--danger-color,#ef4444)}.verify-grid{display:flex;flex-direction:column;gap:.375rem;margin-top:.75rem}.verify-item{align-items:center;border-radius:4px;display:flex;font-size:.813rem;gap:.5rem;padding:.5rem .75rem}.verify-item.pass{color:#10b981;color:var(--success-color,#10b981)}.verify-item.fail{color:#ef4444;color:var(--danger-color,#ef4444)}.verify-error{font-size:.75rem;margin-left:auto;opacity:.8}.dc-status{align-items:center;background:#dcfce7;background:var(--success-color-light,#dcfce7);border-radius:4px;color:#10b981;color:var(--success-color,#10b981);display:flex;font-size:.813rem;gap:.5rem;margin-top:.75rem;padding:.5rem .75rem}.repl-status{border-radius:4px;font-size:.75rem;font-weight:500;margin-left:auto;padding:.125rem .5rem}.repl-status.healthy{background:#dcfce7;background:var(--success-color-light,#dcfce7);color:#059669;color:var(--success-color,#059669)}.repl-status.degraded{background:#fef3c7;background:var(--warning-color-light,#fef3c7);color:#d97706;color:var(--warning-color-dark,#d97706)}.repl-status.unknown{background:var(--hover-bg);color:var(--text-secondary)}.guide-footer{border-top:1px solid var(--border-color);margin-top:2rem;padding-top:1.5rem;text-align:center}.deployment-guide .spinning{animation:spin 1s linear infinite}@media (max-width:600px){.path-options,.step-actions{flex-direction:column}.step-actions{align-items:stretch}}.onprem-domain-list{padding:1rem}.domain-list-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:1.5rem}.domain-list-header h3{align-items:center;color:var(--text-color);display:flex;font-size:1.25rem;gap:.5rem;margin:0}.domain-list-header .subtitle{color:var(--text-secondary);font-size:.875rem;margin:.25rem 0 0}.header-actions{gap:.5rem}.domain-cards{display:flex;flex-direction:column;gap:1rem}.domain-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;overflow:hidden}.domain-card.disabled{opacity:.7}.domain-card-header{align-items:center;cursor:pointer;display:flex;justify-content:space-between;padding:1rem 1.25rem;transition:background-color .15s}.domain-card-header:hover{background:var(--hover-bg)}.domain-info h4{color:var(--text-color);font-size:1rem;font-weight:600;margin:0}.domain-fqdn{color:var(--text-secondary);font-family:var(--font-mono);font-size:.875rem}.domain-status{align-items:center;display:flex;gap:.75rem}.status-badge{border-radius:999px;font-size:.75rem;gap:.375rem;padding:.25rem .75rem}.status-connected{background:#dcfce7;background:var(--success-color-light,#dcfce7);color:#10b981;color:var(--success-color,#10b981)}.status-disconnected{background:#fee2e2;background:var(--danger-color-light,#fee2e2);color:#ef4444;color:var(--danger-color,#ef4444)}.status-warning{background:#fef3c7;background:var(--warning-color-light,#fef3c7);color:#d97706;color:var(--warning-color-dark,#d97706)}.status-unknown{background:var(--hover-bg);color:var(--text-secondary)}.domain-card-details{border-top:1px solid var(--border-color);padding:0 1.25rem 1.25rem}.detail-section{margin-top:1rem}.detail-section h5{color:var(--text-color);font-size:.875rem;font-weight:600;margin:0 0 .75rem}.detail-grid{grid-gap:.75rem;gap:.75rem;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.detail-item{gap:.25rem}.detail-label{font-size:.75rem}.detail-value{color:var(--text-color);font-size:.875rem;word-break:break-all}.test-results{background:var(--hover-bg);border-radius:6px;margin-top:1rem;padding:1rem}.test-results-grid{display:flex;flex-wrap:wrap;gap:.5rem}.test-result{align-items:center;border-radius:4px;display:inline-flex;font-size:.75rem;gap:.375rem;padding:.25rem .75rem}.test-result.success{background:#dcfce7;background:var(--success-color-light,#dcfce7);color:#10b981;color:var(--success-color,#10b981)}.test-result.failed{background:#fee2e2;background:var(--danger-color-light,#fee2e2);color:#ef4444;color:var(--danger-color,#ef4444)}.test-error{color:var(--danger-color);font-size:.75rem;margin-top:.5rem}.domain-actions{border-top:1px solid var(--border-color);display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem;padding-top:1rem}.empty-state{padding:3rem}.empty-state h4{color:var(--text-color);margin:1rem 0 .5rem}.empty-state p{margin:0 0 1.5rem;max-width:400px}.empty-state-actions{display:flex;gap:.75rem}.info-box{background:#eff6ff;background:var(--info-bg,#eff6ff);border:1px solid #bfdbfe;border:1px solid var(--info-border,#bfdbfe);border-radius:8px;margin-top:2rem;padding:1.25rem}.info-box h4{align-items:center;color:#2563eb;color:var(--info-color,#2563eb);display:flex;font-size:1rem;gap:.5rem;margin:0 0 .75rem}.info-box p{color:var(--text-color);font-size:.875rem;margin:0 0 .75rem}.info-box ul{margin:0 0 .75rem;padding-left:1.5rem}.info-box li{color:var(--text-color);font-size:.875rem;margin-bottom:.25rem}.info-box a{align-items:center;color:var(--primary-color);display:inline-flex;font-size:.875rem;gap:.375rem;text-decoration:none}.info-box a:hover{text-decoration:underline}.error-state,.loading-state{align-items:center;color:var(--text-secondary);display:flex;gap:.75rem;justify-content:center;padding:3rem}.inline-edit{align-items:center;display:inline-flex;gap:6px}.inline-edit input,.inline-edit select{border:1px solid #d1d5db;border:1px solid var(--border-color,#d1d5db);border-radius:4px;font-size:.85rem;padding:3px 6px}.sync-server-edit{flex-wrap:wrap}.edit-inline-btn{margin-left:4px;opacity:.4;padding:2px;vertical-align:middle}.edit-inline-btn:hover{opacity:1}.detail-value .btn-sm{font-size:.8rem;padding:2px 8px}.logo-scanner-modal{background:#fff;border-radius:8px;box-shadow:0 4px 20px #00000026;display:flex;flex-direction:column;max-height:80vh;max-width:90vw;width:500px}.logo-scanner-modal .modal-header{align-items:center;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;padding:16px 20px}.logo-scanner-modal .modal-header h2{align-items:center;color:#333;display:flex;font-size:18px;font-weight:600;gap:10px;margin:0}.logo-scanner-modal .modal-header h2 svg{color:#0078d4}.logo-scanner-modal .close-button{background:none;border:none;color:#666;cursor:pointer;font-size:24px;line-height:1;padding:0}.logo-scanner-modal .close-button:hover{color:#333}.logo-scanner-modal .modal-body{flex:1 1;overflow-y:auto;padding:20px}.logo-scanner-step{text-align:center}.logo-scanner-step h3{color:#333;font-size:18px;margin:16px 0 8px}.logo-scanner-step p{color:#666;font-size:14px;margin:0}.logo-scanner-step.scanning .scanner-animation{margin:20px 0}.logo-scanner-step.scanning .scanner-animation svg{color:#0078d4}.spinning{animation:spin 2s linear infinite}.scanning-dots{display:flex;gap:8px;justify-content:center;margin-top:16px}.scanning-dots span{animation:bounce 1.4s ease-in-out infinite both;background:#0078d4;border-radius:50%;height:8px;width:8px}.scanning-dots span:first-child{animation-delay:-.32s}.scanning-dots span:nth-child(2){animation-delay:-.16s}.logo-scanner-step.preview{text-align:left}.preview-header{gap:10px;margin-bottom:16px}.preview-header svg{color:#0078d4}.preview-header h3{flex:1 1;margin:0}.confidence-badge{background:#e7f3ff;color:#0078d4;font-weight:500}.logo-preview-container{align-items:center;background:#f5f5f5;border:1px solid #e0e0e0;border-radius:8px;display:flex;justify-content:center;margin-bottom:12px;min-height:150px;padding:20px}.logo-preview-image{max-height:200px;max-width:100%;object-fit:contain}.ai-reasoning{background:#f9f9f9;border-radius:4px;color:#666;font-size:13px;font-style:italic;margin:8px 0 16px;padding:8px 12px}.alternatives-section{margin:16px 0}.alternatives-section h4{color:#666;font-size:14px;margin:0 0 10px}.alternatives-grid{display:flex;flex-wrap:wrap;gap:10px}.alternative-item{align-items:center;background:#fff;border:2px solid #e0e0e0;border-radius:6px;cursor:pointer;display:flex;height:60px;justify-content:center;padding:4px;transition:border-color .2s;width:60px}.alternative-item:hover{border-color:#0078d4}.alternative-item img{max-height:100%;max-width:100%;object-fit:contain}.preview-actions{margin-top:20px}.logo-scanner-step.cropping{text-align:left}.cropping-header{align-items:center;display:flex;gap:10px;margin-bottom:16px}.cropping-header svg{color:#0078d4}.cropping-header h3{margin:0}.cropper-container{background:#333;border-radius:8px;height:300px;overflow:hidden;position:relative;width:100%}.zoom-control{align-items:center;background:#f5f5f5;border-radius:6px;display:flex;gap:12px;margin:16px 0;padding:12px}.zoom-control label{color:#666;font-size:14px}.zoom-control input[type=range]{-webkit-appearance:none;appearance:none;background:#ddd;border-radius:2px;flex:1 1;height:4px}.zoom-control input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;background:#0078d4;border-radius:50%;cursor:pointer;height:16px;width:16px}.zoom-control span{color:#333;font-size:14px;min-width:50px;text-align:right}.cropping-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:16px}.logo-scanner-step.saving .scanner-animation{margin:20px 0}.logo-scanner-step.saving .scanner-animation svg{color:#0078d4}.logo-scanner-step.error .error-icon{margin:20px 0}.logo-scanner-step.error .error-icon svg{color:#d32f2f}.error-message{color:#d32f2f;margin:8px 0 16px}.scanned-urls{align-items:center;display:flex;flex-wrap:wrap;font-size:13px;gap:8px;margin:16px 0}.scanned-urls span{color:#666}.scanned-urls code{background:#f5f5f5;border-radius:4px;font-size:12px;padding:2px 8px}.error-actions{display:flex;gap:10px;justify-content:center;margin-top:20px}.logo-scanner-modal .btn{align-items:center;border:none;border-radius:4px;cursor:pointer;display:inline-flex;font-size:14px;font-weight:500;gap:6px;padding:8px 16px;transition:background-color .2s}.logo-scanner-modal .btn-primary{background:#0078d4;color:#fff}.logo-scanner-modal .btn-primary:hover{background:#106ebe}.logo-scanner-modal .btn-secondary{background:#f0f0f0;border:1px solid #ddd;color:#333}.logo-scanner-modal .btn-secondary:hover{background:#e0e0e0}.license-keys-container{padding:16px 0}.license-keys-loading{align-items:center;color:#666;display:flex;gap:12px;justify-content:center;padding:40px}.license-keys-loading .spin{animation:spin 1s linear infinite}.license-keys-header{justify-content:flex-end;margin-bottom:12px}.key-actions,.license-keys-header{align-items:center;display:flex;gap:8px}.status-filter{border:1px solid #ddd;border-radius:6px;font-size:13px;padding:6px 12px}.keys-error{align-items:center;background:#fff5f5;border-radius:6px;color:#c0392b;display:flex;gap:10px;margin-bottom:16px;padding:12px 16px}.keys-error button{margin-left:auto}.add-key-section{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;margin-bottom:16px;padding:16px}.license-key-form{background:#fff;border-radius:8px;padding:16px}.key-form-header{align-items:center;color:#0078d4;display:flex;gap:8px;margin-bottom:16px}.key-form-header h4{font-size:15px;font-weight:600;margin:0}.license-key-form .form-row{display:flex;gap:12px;margin-bottom:12px}.license-key-form .form-group{display:flex;flex:1 1;flex-direction:column;gap:4px}.license-key-form .form-group.full-width{flex:1 0 100%}.license-key-form label{color:#555;font-size:13px;font-weight:500}.license-key-form input,.license-key-form textarea{border:1px solid #ddd;border-radius:6px;font-size:14px;padding:8px 12px}.license-key-form input.error{border-color:#e74c3c}.license-key-form .form-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:12px}.form-error{background:#fff5f5;color:#c0392b;font-size:13px;margin-bottom:12px;padding:10px 14px}.field-error{color:#e74c3c}.no-keys{align-items:center;color:#666;display:flex;flex-direction:column;justify-content:center;padding:40px;text-align:center}.no-keys svg{color:#ccc;margin-bottom:12px}.no-keys h4{color:#444;margin:0 0 8px}.no-keys p{font-size:14px;margin:0 0 16px}.keys-list{display:flex;flex-direction:column;gap:8px}.key-item{align-items:center;background:#fff;border:1px solid #e9ecef;border-radius:8px;display:flex;gap:12px;padding:12px 16px;transition:border-color .2s}.key-item:hover{border-color:#ccc}.key-item.status-available{border-left:3px solid #27ae60}.key-item.status-assigned{border-left:3px solid #0078d4}.key-item.status-revoked{border-left:3px solid #95a5a6;opacity:.7}.key-main{flex:1 1;min-width:0}.key-value{align-items:center;display:flex;gap:8px;margin-bottom:4px}.key-icon{color:#0078d4;flex-shrink:0}.masked-key{color:#1a1a2e;font-family:monospace;font-size:14px;font-weight:500;word-break:break-all}.btn-reveal{background:none;border-radius:4px;color:#666;padding:4px;transition:all .2s}.btn-reveal:hover{background:#f0f0f0;color:#0078d4}.key-meta{color:#666;flex-wrap:wrap;font-size:12px;gap:12px}.key-meta,.key-status{align-items:center;display:flex}.key-status{font-weight:500;gap:4px}.key-status.status-available{color:#27ae60}.key-status.status-assigned{color:#0078d4}.key-status.status-revoked{color:#95a5a6}.status-icon.available{color:#27ae60}.status-icon.assigned{color:#0078d4}.status-icon.revoked{color:#95a5a6}.key-expires,.key-notes{color:#888}.key-assignment{align-items:center;background:#e8f4fc;border-radius:6px;color:#0078d4;display:flex;font-size:13px;gap:6px;padding:6px 12px}.key-assignment svg{flex-shrink:0}.assigned-date{color:#666;font-size:11px;margin-left:8px}.source-badge{border-radius:10px;letter-spacing:.3px;margin-left:8px}.source-badge.manual{background:#fef3c7;color:#b45309}.source-badge.provisioning{background:#e0e7ff;color:#4338ca}.key-actions-inline{display:flex;flex-shrink:0;gap:4px}.license-keys-container .btn-icon{align-items:center;background:#f5f5f5;border:none;border-radius:6px;color:#555;cursor:pointer;display:flex;height:32px;justify-content:center;padding:0;transition:all .2s;width:32px}.license-keys-container .btn-icon:hover{background:#e0e0e0;color:#333}.license-keys-container .btn-icon.btn-danger:hover{background:#fee2e2;color:#dc2626}.license-keys-container .btn-icon.btn-warning:hover{background:#fef3c7;color:#d97706}.assign-key-modal .modal-content{max-width:500px}.assign-key-modal .key-info{align-items:center;background:#f8f9fa;border-radius:6px;display:flex;font-family:monospace;font-size:14px;gap:8px;margin-bottom:16px;padding:12px}.assign-key-modal .license-name{color:#666;font-family:inherit;font-size:12px;margin-left:auto}.assignment-type-toggle{display:flex;gap:8px;margin-top:8px}.assignment-type-display{background:#f5f5f5;background:var(--hover-bg,#f5f5f5);border-radius:8px;color:#333;color:var(--text-primary,#333);padding:12px 16px}.assignment-type-display,.toggle-option{align-items:center;display:flex;font-weight:500;gap:8px}.toggle-option{background:#fff;border:2px solid #e0e0e0;border-radius:8px;color:#555;cursor:pointer;flex:1 1;font-size:14px;justify-content:center;padding:12px;transition:all .2s}.toggle-option:hover{border-color:#ccc}.toggle-option.active{background:#e8f4fc;border-color:#0078d4;color:#0078d4}.search-group{margin-top:16px}.search-input-wrapper{position:relative}.search-input-wrapper .search-icon{color:#999;left:12px;position:absolute;top:50%;transform:translateY(-50%)}.search-input-wrapper input{border:1px solid #ddd;border-radius:6px;padding:10px 12px 10px 36px;width:100%}.search-loading{color:#666;padding:8px}.search-results{background:#fff;border:1px solid #ddd;box-shadow:0 4px 12px #0000001a;z-index:100}.search-result{align-items:center;cursor:pointer;display:flex;gap:10px;padding:10px 12px;transition:background .2s}.search-result:hover{background:#f5f5f5}.search-result svg{color:#666;flex-shrink:0}.result-name{color:#333;font-size:14px}.result-email{color:#666;font-size:12px}.selected-value{align-items:center;background:#e8f4fc;border-radius:6px;color:#0078d4;display:flex;font-size:13px;gap:8px;margin-top:8px;padding:8px 12px}.selected-value span{flex:1 1}.selected-value .btn-clear{align-items:center;background:none;border:none;border-radius:4px;color:#0078d4;cursor:pointer;display:flex;justify-content:center;padding:2px}.selected-value .btn-clear:hover{background:#0078d433}.import-keys-modal .modal-content{max-width:600px}.import-keys-modal .license-info{background:#f8f9fa;border-radius:6px;font-size:14px;margin-bottom:16px;padding:10px 14px}.import-instructions{margin-bottom:16px}.import-instructions h4{font-size:14px;font-weight:600;margin:0 0 8px}.import-instructions p{color:#555;font-size:13px;margin:0 0 8px}.import-instructions pre{background:#f5f5f5;border-radius:6px;font-size:12px;margin:0;overflow-x:auto;padding:12px}.import-instructions .hint{color:#888;font-size:12px;margin-top:8px}.file-upload-section{margin-bottom:16px}.file-upload-label{align-items:center;border:2px dashed #ddd;border-radius:8px;color:#666;cursor:pointer;display:flex;flex-direction:column;gap:8px;justify-content:center;padding:24px;transition:all .2s}.file-upload-label:hover{background:#f8f9fa;border-color:#0078d4}.or-divider{align-items:center;color:#999;display:flex;font-size:12px;gap:16px;margin:16px 0}.or-divider:after,.or-divider:before{background:#ddd;content:"";flex:1 1;height:1px}.import-result{padding:16px 0}.result-success{background:#f0fdf4;border-radius:8px;color:#15803d;font-size:15px;gap:10px;padding:16px}.result-success,.result-warning{align-items:center;display:flex;margin-bottom:12px}.result-warning{background:#fffbeb;border-radius:6px;color:#b45309;font-size:13px;gap:8px;padding:10px 14px}.result-errors{background:#fff5f5;border-radius:6px;margin-bottom:16px;padding:12px}.result-errors h5{color:#c0392b;font-size:13px;margin:0 0 8px}.result-errors ul{color:#c0392b;font-size:12px;margin:0;padding-left:20px}.result-errors li{margin-bottom:4px}.result-info.assignment-info{align-items:center;background:#e8f4fc;border-radius:6px;color:#0078d4;display:flex;flex-wrap:wrap;font-size:14px;gap:12px;margin-bottom:12px;padding:12px 16px}.assignment-info .assignment-stat{font-weight:500}.assignment-info .match-detail{align-items:center;border-radius:10px;display:inline-flex;font-size:12px;font-weight:500;padding:2px 8px}.assignment-info .match-detail.directory{background:#d1fae5;color:#065f46}.assignment-info .match-detail.manual{background:#fef3c7;color:#b45309}@media (max-width:640px){.key-actions,.license-keys-header{justify-content:center}.key-actions{flex-wrap:wrap}.key-item{align-items:stretch;flex-direction:column}.key-assignment{margin-top:8px}.key-actions-inline{justify-content:flex-end;margin-top:8px}.license-key-form .form-row{flex-direction:column}}.licensing-container{margin:0 auto;max-width:1400px;padding:20px}.license-toolbar{align-items:center;background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:16px;padding:16px}.toolbar-left,.toolbar-right{align-items:center;display:flex;gap:12px}.toolbar-left{flex:1 1 auto;min-width:0}.toolbar-right{flex:0 0 auto}.view-toggle{border:1px solid var(--border-color);border-radius:6px;display:flex;overflow:hidden}.view-toggle .btn-icon{border:none;border-radius:0}.view-toggle .btn-icon.active{background:var(--primary-color);color:#fff}.sort-select{background:var(--input-bg);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);cursor:pointer;font-size:13px;min-width:0;padding:6px 8px;width:auto}.sort-select:focus{border-color:var(--primary-color);outline:none}.btn-toggle{align-items:center;background:var(--card-bg);border:1px solid var(--border-color);border-radius:6px;color:var(--text-secondary);cursor:pointer;display:inline-flex;font-size:13px;gap:6px;padding:8px 12px;transition:all .2s}.btn-toggle:hover{background:var(--hover-bg);color:var(--text-primary)}.btn-toggle.active{background:#3b82f61a;border-color:var(--primary-color);color:var(--primary-color)}.sort-row{align-items:center;display:flex;gap:8px;margin-bottom:12px}.sort-row label{color:var(--text-secondary);font-size:13px}.sort-row .sort-select{min-width:140px}.results-info{color:var(--text-secondary);font-size:13px;margin-bottom:16px}.license-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.license-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:12px;overflow:hidden;transition:box-shadow .2s,transform .2s}.license-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.license-card.status-over{border-left:4px solid var(--danger-color)}.license-card.status-full{border-left:4px solid var(--warning-color)}.license-card.status-warning{border-left:4px solid #f59e0b}.license-card.status-ok{border-left:4px solid var(--success-color)}.license-card-header{align-items:flex-start;background:var(--card-header-bg);border-bottom:1px solid var(--border-color);display:flex;gap:12px;padding:16px}.license-icon-wrapper{align-items:center;background:#fff;border:1px solid var(--border-color);border-radius:8px;display:flex;justify-content:center;min-height:44px;min-width:44px;padding:8px}.license-icon-wrapper svg{color:var(--primary-color)}.license-icon-wrapper img.license-custom-icon{height:28px;object-fit:contain;width:28px}.license-table-icon{background:#fff;border:1px solid var(--border-color);border-radius:2px;height:20px;object-fit:contain;padding:2px;width:20px}.license-header-info{flex:1 1;min-width:0}.license-header-actions{align-items:center;display:flex;flex-shrink:0;gap:8px}.btn-favorite{align-items:center;background:#0000;border:none;border-radius:4px;color:var(--text-secondary);cursor:pointer;display:flex;justify-content:center;padding:4px;transition:all .2s}.btn-favorite:hover{background:#f59e0b1a;color:#f59e0b}.btn-favorite.is-favorite{color:#f59e0b}.btn-favorite.is-favorite:hover{color:#d97706}.license-name{color:var(--text-primary);font-size:16px;font-weight:600;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.license-vendor{color:var(--text-secondary);font-size:13px}.status-icon.success{color:var(--success-color)}.status-icon.warning{color:var(--warning-color)}.status-icon.danger{color:var(--danger-color)}.license-card-body{padding:16px}.license-stats{display:flex;gap:20px;margin-bottom:16px}.license-stats .stat{display:flex;flex-direction:column}.stat-label{color:var(--text-secondary);font-size:12px}.stat-value{color:var(--text-primary);font-size:18px}.license-utilization{margin-bottom:16px}.utilization-header{color:var(--text-secondary);display:flex;font-size:12px;justify-content:space-between;margin-bottom:6px}.utilization-bar{background:var(--border-color);border-radius:4px;height:8px;overflow:hidden;position:relative}.utilization-fill{border-radius:4px;height:100%;transition:width .3s ease}.utilization-bar.status-ok .utilization-fill,.utilization-fill{background:#22c55e;background:var(--success-color,#22c55e)}.utilization-bar.status-warning .utilization-fill{background:#f59e0b}.utilization-bar.status-full .utilization-fill{background:#22c55e;background:var(--success-color,#22c55e)}.utilization-bar.status-over .utilization-fill{background:#ef4444;background:var(--danger-color,#ef4444)}.utilization-bar.status-unlimited .utilization-fill{background:#9ca3af;background:var(--text-secondary,#9ca3af)}.utilization-text{color:#fff;font-size:10px;font-weight:600;position:absolute;right:8px;text-shadow:0 1px 2px #0000004d;top:50%;transform:translateY(-50%)}.license-meta{display:flex;flex-wrap:wrap;gap:12px}.meta-item{color:var(--text-secondary);font-size:12px}.source-badge{font-size:11px;padding:2px 8px}.source-badge.source-manual{background:var(--primary-color);color:#fff}.source-badge.source-o365{background:#0078d4;color:#fff}.source-badge.source-google{background:#ea4335;color:#fff}.source-badge.source-integrations{background:#9c27b0;color:#fff}.excluded-badge{background:#9ca3af33;color:var(--text-secondary)}.excluded-badge,.unmatched-badge{align-items:center;border-radius:4px;cursor:help;display:inline-flex;font-size:11px;gap:4px;padding:2px 8px}.unmatched-badge{background:#f59e0b26;color:#d97706;font-weight:500}.unmatched-badge svg{flex-shrink:0}.source-badges{flex-wrap:wrap}.license-expiration,.source-badges{align-items:center;display:flex;gap:6px}.license-expiration{color:var(--text-secondary);font-size:12px;margin-top:12px}.license-card-footer{background:var(--card-footer-bg);border-top:1px solid var(--border-color);gap:8px;justify-content:space-between;padding:12px 16px}.license-card-footer,.license-card-footer .visibility-toggle{align-items:center;display:flex}.license-card-footer .card-actions{display:flex;gap:8px}.license-table{background:var(--card-bg);border:1px solid var(--border-color);border-collapse:collapse;border-radius:8px;overflow:hidden;width:100%}.license-table td,.license-table th{border-bottom:1px solid var(--border-color);padding:12px 16px;text-align:left}.license-table th{background:var(--card-header-bg);color:var(--text-secondary);font-size:13px;font-weight:600}.license-table th.sortable{cursor:pointer;transition:background .2s;-webkit-user-select:none;user-select:none}.license-table th.sortable:hover{background:var(--hover-bg);color:var(--text-primary)}.license-table th .sort-header{align-items:center;display:flex;gap:6px}.license-table th .sort-indicator{display:flex;flex-direction:column;gap:1px;opacity:.4}.license-table th.sortable:hover .sort-indicator{opacity:.7}.license-table th .sort-indicator.active{opacity:1}.license-table th .sort-indicator svg{color:var(--text-secondary)}.license-table th .sort-indicator.active svg.active-arrow{color:var(--primary-color)}.license-table .btn-favorite{padding:2px}.license-table .btn-favorite svg{height:14px;width:14px}.license-table tr:hover{background:var(--hover-bg)}.license-name-cell{align-items:center;display:flex;gap:8px}.license-icon{color:var(--primary-color)}.action-buttons{gap:4px}.license-dashboard{margin-bottom:24px}.dashboard-stats{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin-bottom:16px}.stat-card{align-items:center;background:var(--card-bg);border:1px solid var(--border-color);display:flex;gap:12px;padding:16px}.stat-card.primary{background:var(--primary-color);border-color:var(--primary-color);color:#fff}.stat-card.primary .stat-label{color:#fffc}.stat-card.utilization.success{border-left:4px solid var(--success-color)}.stat-card.utilization.info{border-left:4px solid var(--info-color)}.stat-card.utilization.warning{border-left:4px solid var(--warning-color)}.stat-card.utilization.danger{border-left:4px solid var(--danger-color)}.stat-icon{opacity:.8}.stat-content .stat-value{font-size:24px;font-weight:700}.stat-content .stat-label{color:var(--text-secondary);font-size:12px}.dashboard-alerts{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:16px}.alert-item{align-items:center;border-radius:8px;display:flex;font-size:13px;gap:8px;padding:10px 16px}.alert-item.danger{background:#ef44441a;border:1px solid #ef44444d;color:var(--danger-color)}.alert-item.warning{background:#f59e0b1a;border:1px solid #f59e0b4d;color:#d97706}.alert-item.info{background:#3b82f61a;border:1px solid #3b82f64d;color:var(--info-color)}.dashboard-breakdown{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin-bottom:16px}.breakdown-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;padding:16px}.breakdown-card h4{color:var(--text-secondary);font-size:14px;font-weight:600;margin:0 0 12px}.breakdown-list{display:flex;flex-direction:column;gap:8px}.breakdown-item{align-items:center;background:var(--hover-bg);border-radius:6px;padding:8px}.item-name{align-items:center;display:flex;font-size:13px;gap:6px}.item-stats{display:flex;font-size:12px;gap:12px}.item-count{font-weight:600}.item-seats,.sync-info{color:var(--text-secondary)}.sync-info{align-items:center;display:flex;font-size:12px;gap:8px}.dashboard-cost-summary{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:16px}.cost-card{align-items:center;background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;display:flex;gap:12px;min-width:180px;padding:12px 20px}.cost-card.savings{background:#22c55e1a;border-color:#22c55e4d}.cost-icon{color:var(--text-secondary)}.cost-card.savings .cost-icon{color:var(--success-color)}.cost-content{display:flex;flex-direction:column}.cost-label{color:var(--text-secondary);font-size:12px}.cost-value{color:var(--text-primary);font-size:18px;font-weight:600}.cost-value.savings-value{color:var(--success-color)}.savings-opportunities{background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;margin-bottom:16px;overflow:hidden}.savings-header{align-items:center;background:#22c55e1a;border-bottom:1px solid var(--border-color);display:flex;gap:10px;padding:12px 16px}.savings-header.collapsible{border:none;border-radius:8px;cursor:pointer;transition:background .2s;width:100%}.savings-header.collapsible:hover{background:#22c55e26}.savings-opportunities:has(.savings-list) .savings-header.collapsible{border-bottom:1px solid var(--border-color);border-radius:8px 8px 0 0}.savings-header h4{color:var(--success-color);flex:1 1;font-size:14px;font-weight:600;margin:0;text-align:left}.savings-count{background:var(--card-bg);border-radius:12px;color:var(--text-secondary);font-size:12px;padding:4px 10px}.savings-list{padding:8px}.savings-item{align-items:center;border-radius:6px;display:flex;justify-content:space-between;padding:10px 12px;transition:background .2s}.savings-item:hover{background:var(--hover-bg)}.savings-item-info{display:flex;flex-direction:column;gap:2px}.savings-item-info .license-name{font-size:14px;font-weight:500}.savings-item-info .license-vendor{color:var(--text-secondary);font-size:12px}.savings-item-stats{align-items:center;display:flex;gap:12px}.utilization-badge{border-radius:4px;font-size:11px;font-weight:500;padding:4px 8px}.utilization-badge.low{background:#ef44441a;color:var(--danger-color)}.unused-seats{color:var(--text-secondary);font-size:12px}.potential-savings{background:#22c55e1a;border-radius:4px;color:var(--success-color);font-size:12px;font-weight:600;padding:4px 8px}.savings-more{border-top:1px solid var(--border-color);font-size:12px;margin-top:8px;padding:10px;text-align:center}.item-cost,.savings-more{color:var(--text-secondary)}.item-cost{background:var(--hover-bg);border-radius:4px;font-size:11px;padding:2px 6px}.license-settings{padding:20px}.settings-header{border-bottom:1px solid var(--border-color);gap:10px;margin-bottom:20px}.settings-header h3{font-size:18px;font-weight:600}.settings-loading{color:var(--text-secondary);padding:40px;text-align:center}.settings-error{background:#ef44441a;border:1px solid #ef44444d;border-radius:8px;color:var(--danger-color)}.settings-error,.settings-success{align-items:center;display:flex;gap:8px;margin-bottom:16px;padding:12px}.settings-success{background:#22c55e1a;border:1px solid #22c55e4d;border-radius:8px;color:var(--success-color)}.settings-section{background:var(--card-bg);border:1px solid var(--border-color);margin-bottom:24px;padding:16px}.settings-section h4{font-size:14px;margin:0 0 4px}.settings-description{color:var(--text-secondary);font-size:12px;margin:0 0 16px}.settings-row{display:flex;flex-wrap:wrap;gap:20px}.settings-field{flex:1 1;min-width:200px}.settings-field label{display:block;font-size:13px;font-weight:500;margin-bottom:6px}.settings-field .field-hint{color:var(--text-secondary);display:block;font-size:11px;font-weight:400;margin-top:2px}.settings-field input{background:var(--input-bg);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);font-size:14px;padding:8px 12px;width:100%}.settings-field input:focus{border-color:var(--primary-color);box-shadow:0 0 0 2px #3b82f633;outline:none}.input-with-suffix{align-items:center;display:flex}.input-with-suffix input{border-radius:6px 0 0 6px;border-right:none}.input-with-suffix .suffix{background:var(--hover-bg);border:1px solid var(--border-color);border-left:none;border-radius:0 6px 6px 0;color:var(--text-secondary);font-size:13px;padding:8px 12px}.settings-info{align-items:center;background:#3b82f61a;border-radius:8px;color:var(--text-secondary);display:flex;font-size:12px;gap:8px;margin-bottom:20px;padding:12px}.settings-actions{border-top:1px solid var(--border-color);padding-top:16px}.license-detail{flex:1 1;min-height:0;overflow-x:hidden;overflow-y:auto;padding:20px}.detail-sticky-header{background:var(--card-bg);margin:-20px -20px 0;padding:20px 20px 0;position:-webkit-sticky;position:sticky;top:-20px;z-index:10}.detail-sticky-header:after{background:var(--border-color);bottom:0;content:"";height:1px;left:0;position:absolute;right:0}.detail-sticky-header .detail-header,.detail-sticky-header .detail-stats{margin-bottom:16px}.detail-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:24px}.detail-header-actions{align-items:center;display:flex;gap:12px}.detail-header-actions .btn-favorite{padding:6px}.detail-header-actions .btn-favorite svg{height:18px;width:18px}.detail-header-actions .status-icon{align-items:center;border-radius:6px;cursor:help;display:flex;justify-content:center;padding:6px}.detail-header-actions .status-icon.success{background:#10b9811a;color:var(--success-color)}.detail-header-actions .status-icon.warning{background:#f59e0b1a;color:var(--warning-color)}.detail-header-actions .status-icon.danger{background:#ef44441a;color:var(--danger-color)}.detail-title{align-items:center;display:flex;gap:16px}.detail-title h2{font-size:24px;margin:0}.detail-title .vendor{color:var(--text-secondary);font-size:14px}.detail-stats{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(4,1fr);margin-bottom:16px}.detail-stats .stat-card{align-items:center;flex-direction:row;gap:12px;padding:12px 16px;text-align:left}.detail-stats .stat-card .stat-content .stat-value{font-size:20px;font-weight:600}.detail-stats .stat-card .stat-content .stat-label{font-size:11px}.detail-stats .stat-card.status-ok{border-color:var(--success-color)}.detail-stats .stat-card.status-full,.detail-stats .stat-card.status-warning{border-color:var(--warning-color)}.detail-stats .stat-card.status-over{border-color:var(--danger-color)}.detail-info{background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;display:flex;flex-wrap:wrap;gap:8px 24px;margin-bottom:16px;padding:12px 16px}.info-row{align-items:center;flex-direction:row;gap:8px;white-space:nowrap}.info-label{font-size:12px}.info-label:after{content:":"}.info-value{align-items:center;display:inline-flex;font-size:13px;font-weight:500;gap:4px;white-space:nowrap}.info-value.code{background:var(--hover-bg);border-radius:4px;font-family:monospace;font-size:12px;padding:2px 8px}.detail-tabs{border-bottom:1px solid var(--border-color);display:flex;gap:4px;margin-bottom:16px;padding-bottom:0}.detail-tabs .tab-btn{align-items:center;background:#0000;border:none;border-bottom:2px solid #0000;color:var(--text-secondary);cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;margin-bottom:-1px;padding:10px 16px;transition:all .2s}.detail-tabs .tab-btn:hover{background:var(--hover-bg);color:var(--text-primary)}.detail-tabs .tab-btn.active{border-bottom-color:var(--primary-color);color:var(--primary-color)}.detail-tabs .tab-btn .tab-count{background:var(--secondary-bg);border-radius:10px;color:var(--text-secondary);font-size:12px;padding:2px 6px}.detail-tabs .tab-btn.active .tab-count{background:#3b82f626;color:var(--primary-color)}.detail-section.keys-section{margin-bottom:24px;padding:0}.detail-section.concurrent-section{margin-bottom:16px}.detail-section.assignments-section .assignments-list{max-height:none;overflow:visible}.concurrent-info-banner{align-items:flex-start;background:#8b5cf61a;border:1px solid #8b5cf64d;border-radius:8px;color:var(--text-primary);display:flex;gap:12px;padding:14px 16px}.concurrent-info-banner svg{color:#8b5cf6;flex-shrink:0;margin-top:2px}.concurrent-info-banner div{display:flex;flex-direction:column;gap:4px}.concurrent-info-banner strong{color:#7c3aed;font-size:14px}.concurrent-info-banner span{color:var(--text-secondary);font-size:13px}.over-capacity-warning{align-items:flex-start;background:#f59e0b1a;border:1px solid #f59e0b4d;border-radius:8px;color:#d97706;display:flex;font-size:13px;gap:10px;margin-top:12px;padding:12px 16px}.over-capacity-warning svg{flex-shrink:0;margin-top:2px}.section-header{align-items:center;display:flex;gap:16px;justify-content:space-between;margin-bottom:16px}.section-header-actions{align-items:center;flex-shrink:0;gap:12px}.section-header h3{font-size:16px;margin:0}.section-header .count{color:var(--text-secondary);font-weight:400;margin-left:8px}.empty-assignments{align-items:center;background:var(--hover-bg);border-radius:8px;color:var(--text-secondary);display:flex;flex-direction:column;gap:12px;padding:40px;text-align:center}.assignments-search-inline{align-items:center;background:var(--input-bg);border:1px solid var(--border-color);border-radius:6px;display:flex;gap:6px;max-width:200px;min-width:140px;padding:6px 10px}.assignments-search-inline .search-icon{color:var(--text-secondary);flex-shrink:0}.assignments-search-inline .search-input{background:#0000;border:none;color:var(--text-primary);flex:1 1;font-size:13px;min-width:60px;outline:none}.assignments-search-inline .search-input::placeholder{color:var(--text-secondary)}.assignments-search-inline .search-results-count{color:var(--text-secondary);font-size:11px;white-space:nowrap}.no-search-results{align-items:center;color:var(--text-secondary);display:flex;flex-direction:column;gap:8px;padding:32px;text-align:center}.no-search-results p{font-size:14px;margin:0}.assignments-list{display:flex;flex-direction:column;gap:8px}.show-more-btn{align-items:center;background:var(--hover-bg);border:1px dashed var(--border-color);border-radius:8px;color:var(--primary-color);cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:6px;justify-content:center;margin-top:12px;padding:12px;transition:all .2s;width:100%}.show-more-btn:hover{background:#3b82f61a;border-color:var(--primary-color)}.show-more-btn .hidden-count{color:var(--text-secondary);font-weight:400;margin-left:4px}.assignment-row{align-items:center;background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;display:flex;gap:16px;padding:12px 16px}.assignment-info{align-items:center;display:flex;flex:1 1;gap:12px}.assignee-name{font-weight:500}.assignee-email,.assignee-id{align-items:center;color:var(--text-secondary);display:flex;font-size:12px;gap:4px}.assignment-meta{align-items:center;display:flex;gap:12px}.assigned-date{color:var(--text-secondary);font-size:12px}.notes-text{background:var(--hover-bg);border-radius:8px;padding:16px;white-space:pre-wrap}.modal-content.license-modal{display:flex;flex-direction:column;height:85vh;max-height:100%;max-width:650px;width:95vw}.modal-content.license-detail-modal{display:flex;flex-direction:column;max-height:100%;max-width:800px;overflow:hidden}.modal-content.license-delete-modal{max-height:-webkit-fit-content;max-height:fit-content;max-width:450px}.modal-content.license-assign-modal{max-width:550px}.license-modal-container{background:var(--card-bg);border-radius:12px;display:flex;flex-direction:column;height:100%;overflow:hidden;position:relative}.license-modal-header{align-items:center;background:var(--card-header-bg);border-bottom:1px solid var(--border-color);display:flex;flex-shrink:0;justify-content:space-between;padding:16px 20px}.license-modal-header h3{color:var(--text-primary);font-size:18px;font-weight:600;margin:0}.modal-close-btn{background:none;flex-shrink:0;padding:6px}.license-modal-body{flex:1 1;min-height:0;overflow-x:hidden;overflow-y:auto;padding:20px 20px 80px}.license-form{display:flex;flex-direction:column;gap:24px;max-width:100%}.license-form .form-group input,.license-form .form-group select,.license-form .form-group textarea{box-sizing:border-box;min-width:0;padding:10px 12px;width:100%}.license-form .form-group input:focus,.license-form .form-group select:focus,.license-form .form-group textarea:focus{box-shadow:0 0 0 3px #3b82f61a}.license-form .form-group input.error,.license-form .form-group select.error{border-color:var(--danger-color)}.license-form .form-section{display:flex;flex-direction:column;gap:16px;max-width:100%}.license-form .form-section h4{border-bottom:1px solid var(--border-color);color:var(--text-secondary);font-size:14px;font-weight:600;margin:0;padding-bottom:8px}.license-form .form-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(min(200px,100%),1fr))}.license-form .form-group{display:flex;flex-direction:column;gap:6px;max-width:100%;min-width:0}.license-form .form-group label{color:var(--text-primary);font-size:13px;font-weight:500}.license-form .form-actions{background:#fff;background:var(--card-bg,#fff);border-top:1px solid var(--border-color);bottom:0;display:flex;gap:10px;justify-content:flex-end;left:0;padding:16px 20px;position:absolute;right:0;z-index:10}.field-error{color:var(--danger-color)}.form-note{color:var(--text-secondary);font-size:12px;font-style:italic;margin:4px 0 0}.form-section-description{color:var(--text-secondary);font-size:13px;line-height:1.5;margin:0}.license-form .field-hint{color:var(--text-secondary);font-size:12px;line-height:1.4;margin-top:6px}.license-form .toggle-setting{align-items:center;background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border:1px solid var(--border-color);border-radius:8px;cursor:pointer;display:flex;justify-content:space-between;padding:16px;transition:all .2s ease}.license-form .toggle-setting:hover{background:#f0f0f0;background:var(--hover-bg,#f0f0f0);border-color:var(--primary-color)}.license-form .toggle-info{display:flex;flex-direction:column;gap:4px}.license-form .toggle-label-text{color:var(--text-primary);font-size:14px;font-weight:500}.license-form .toggle-description{color:var(--text-secondary);font-size:12px}.license-form .toggle-btn-icon{background:#0000;border:none;color:var(--text-muted);cursor:pointer;padding:0;transition:color .2s ease}.license-form .toggle-btn-icon.active{color:#22c55e;color:var(--success-color,#22c55e)}.autocomplete-wrapper{position:relative}.autocomplete-dropdown{background:var(--card-bg);border:1px solid var(--border-color);border-radius:0 0 6px 6px;border-top:none;box-shadow:0 4px 12px #00000026;max-height:180px}.autocomplete-item{border-bottom:1px solid var(--border-color);color:var(--text-primary);font-size:14px;padding:10px 12px}.autocomplete-item.highlighted,.autocomplete-item:hover{background:var(--hover-bg)}.autocomplete-item .match{color:var(--primary-color);font-weight:600}.checkbox-group{background:var(--hover-bg);border:1px solid var(--border-color);gap:8px;padding:12px}.checkbox-label input[type=checkbox]{accent-color:var(--primary-color);flex-shrink:0;height:18px;width:18px}.checkbox-label span{color:var(--text-primary)}.threshold-settings{background:var(--hover-bg);border-radius:8px;margin-top:8px;padding:16px}.threshold-type-toggle{border:1px solid var(--border-color);border-radius:6px;display:flex;overflow:hidden}.threshold-type-toggle .toggle-btn{background:var(--card-bg);border:none;color:var(--text-secondary);cursor:pointer;flex:1 1;font-size:13px;padding:8px 12px;transition:all .2s}.threshold-type-toggle .toggle-btn:first-child{border-right:1px solid var(--border-color)}.threshold-type-toggle .toggle-btn.active{background:var(--primary-color);color:#fff}.threshold-preview{background:#3b82f61a;border-left:3px solid var(--primary-color);border-radius:6px;color:var(--primary-color);font-size:13px;margin-top:8px;padding:10px 14px}.assignment-form{display:flex;flex-direction:column;gap:20px;padding:20px}.assignment-form .form-header{margin-bottom:4px}.assignment-form .form-header h3{color:var(--text-primary);font-size:18px;font-weight:600;margin:0 0 4px}.assignment-form .form-subtitle{color:var(--text-secondary);font-size:13px;margin:0}.assignment-form .form-group label{color:var(--text-primary);display:block;font-weight:500;margin-bottom:8px}.assignment-form .directory-autocomplete{width:100%}.assignment-form .directory-autocomplete-input{background:var(--input-bg);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);font-size:14px;padding:10px 12px;width:100%}.assignment-form .directory-autocomplete-input:focus{border-color:var(--primary-color);box-shadow:0 0 0 2px #0078d41a;outline:none}.type-toggle{border:1px solid var(--border-color);border-radius:8px;display:flex;overflow:hidden}.toggle-btn{align-items:center;background:var(--card-bg);border:none;color:var(--text-secondary);cursor:pointer;display:flex;flex:1 1;gap:8px;justify-content:center;padding:12px;transition:all .2s}.toggle-btn:first-child{border-right:1px solid var(--border-color)}.toggle-btn.active{background:var(--primary-color);color:#fff}.search-input-wrapper{background:var(--input-bg);gap:8px}.search-loading{color:var(--text-secondary);font-size:13px;padding:8px 0}.search-result-item{gap:12px;padding:12px}.search-result-item>div{display:flex;flex-direction:column;gap:2px}.result-email,.result-id{color:var(--text-secondary);font-size:12px}.selected-assignees-list{display:flex;flex-direction:column;gap:8px;max-height:200px;overflow-y:auto}.selected-assignee-item{align-items:center;background:var(--card-bg);border:1px solid var(--border-color);border-radius:6px;display:flex;justify-content:space-between;padding:10px 12px}.selected-assignee-item.success{background:#28a7451a;border-color:var(--success-color)}.selected-assignee-item.error{background:#dc35451a;border-color:var(--danger-color)}.selected-assignee-item .assignee-info{align-items:center;display:flex;gap:10px}.selected-assignee-item .assignee-info>div{display:flex;flex-direction:column}.selected-assignee-item .name{font-size:14px;font-weight:500}.selected-assignee-item .detail{color:var(--text-secondary);font-size:12px}.selected-assignee-item .status-icon.success{color:var(--success-color)}.selected-assignee-item .error-text{color:var(--danger-color);font-size:12px;font-weight:500}.assignment-form .seats-info{color:var(--text-secondary)}.delete-confirm{align-items:center;display:flex;flex-direction:column;gap:16px}.warning-icon{color:var(--warning-color)}.warning-text{color:var(--text-secondary);font-size:13px}.badge-user{background:#3b82f61a;color:var(--primary-color)}.badge-asset{background:#22c55e1a;color:var(--success-color)}.badge-both{background:#a855f71a;color:#a855f7}.icon-picker-group{max-width:100%}.icon-picker-preview{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.selected-icon{align-items:center;background:var(--hover-bg);border:1px solid var(--border-color);border-radius:8px;display:flex;gap:10px;padding:8px 12px}.icon-preview-image{border-radius:4px;height:32px;object-fit:contain;width:32px}.icon-name{color:var(--text-primary);font-size:13px;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.no-icon-selected{align-items:center;background:var(--hover-bg);border:1px dashed var(--border-color);border-radius:8px;color:var(--text-secondary);display:flex;font-size:13px;gap:8px;padding:8px 12px}.image-picker-modal{display:flex;flex-direction:column;max-height:80vh;max-width:95vw;overflow:hidden;width:600px}.image-grid{grid-gap:12px;gap:12px;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));max-height:400px;padding:16px}.image-option{align-items:center;aspect-ratio:1;background:#f9fafb;background:var(--hover-bg,#f9fafb);border:2px solid #e5e7eb;border:2px solid var(--border-color,#e5e7eb);display:flex;flex-direction:column;justify-content:center;overflow:hidden;transition:border-color .2s,transform .2s}.image-option:hover{transform:scale(1.02)}.image-option.selected,.image-option:hover{border-color:#0078d4;border-color:var(--primary-color,#0078d4)}.image-option.selected{border-width:3px}.image-option img{height:100%;padding:8px}.image-option .image-name{background:#000000b3;bottom:0;color:#fff;font-size:10px;left:0;overflow:hidden;padding:4px;position:absolute;right:0;text-align:center;text-overflow:ellipsis;white-space:nowrap}.selected-badge{background:#0078d4;background:var(--primary-color,#0078d4);right:4px;top:4px}.no-images{color:#6b7280;color:var(--text-secondary,#6b7280);font-size:14px;padding:40px 20px;text-align:center}.image-upload-section{align-items:center;background:var(--hover-bg);border-bottom:1px solid var(--border-color);display:flex;gap:12px;padding:16px}.upload-button{align-items:center;background:var(--primary-color);border-radius:6px;color:#fff;cursor:pointer;display:inline-flex;font-size:13px;font-weight:500;gap:8px;padding:8px 16px;transition:background .2s}.upload-button:hover{background:var(--primary-hover)}.upload-hint{color:var(--text-secondary)}.config-modal-overlay{align-items:center;animation:fadeIn .2s ease-out;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:9999}.config-modal{animation:licensing-slideIn .2s ease-out;background:#fff;background:var(--card-bg,#fff);border-radius:12px;box-shadow:0 20px 40px #0003;display:flex;flex-direction:column;height:85vh;max-width:600px;overflow:hidden;width:95vw}.config-modal.delete-modal{max-width:450px}.config-modal-header{align-items:center;background:var(--card-header-bg);border-bottom:1px solid var(--border-color);border-radius:12px 12px 0 0;display:flex;flex-shrink:0;justify-content:space-between;padding:16px 20px}.config-modal-header h3{font-size:16px;font-weight:600;margin:0}.config-modal-body{flex:1 1;min-height:0;overflow-y:auto;padding:20px}.config-modal-footer{background:var(--card-header-bg);border-radius:0 0 12px 12px;border-top:1px solid var(--border-color);display:flex;flex-shrink:0;gap:12px;justify-content:flex-end;padding:16px 20px}.license-usage-summary{grid-gap:16px;background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:8px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin-bottom:20px;padding:16px}.license-usage-summary .usage-card{background:#fff;background:var(--card-bg,#fff);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:6px;padding:12px 16px}.license-usage-summary .usage-label{color:#6b7280;color:var(--text-secondary,#6b7280);font-size:12px;font-weight:500;letter-spacing:.5px;margin-bottom:4px;text-transform:uppercase}.license-usage-summary .usage-value{color:#111827;color:var(--text-primary,#111827);font-size:18px;font-weight:600}.license-usage-summary .usage-count{color:#0078d4;color:var(--primary-color,#0078d4)}.license-usage-summary .usage-total{color:#6b7280;color:var(--text-secondary,#6b7280);font-size:14px;font-weight:400}.license-usage-summary .usage-note{color:#9ca3af;color:var(--text-muted,#9ca3af);font-size:12px;font-weight:400}.license-usage-summary .usage-warning{color:#dc2626;color:var(--danger-color,#dc2626);font-size:11px;font-weight:500;margin-top:4px}.license-usage-summary .usage-sync-time{color:#9ca3af;color:var(--text-muted,#9ca3af);font-size:11px;grid-column:1/-1;text-align:right}@keyframes licensing-slideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@media (max-width:768px){.license-toolbar{align-items:stretch;flex-direction:column}.toolbar-left,.toolbar-right{justify-content:center}.license-grid{grid-template-columns:1fr}.dashboard-stats,.detail-stats{grid-template-columns:repeat(2,1fr)}.detail-stats .stat-card{flex-direction:column;text-align:center}.detail-info{gap:6px 16px}.info-row,.info-value{white-space:normal}}@media (max-width:480px){.detail-stats{grid-template-columns:1fr}}.integration-permissions-helper{display:flex;flex-direction:column;gap:16px}.capability-selector{display:flex;flex-direction:column;gap:12px}.capability-selector-label{color:#333;color:var(--text-color,#333);font-size:14px;font-weight:600}.capability-options{display:flex;flex-direction:column;gap:8px}.capability-option{align-items:flex-start;background:#fff;background:var(--card-bg,#fff);border:1px solid #e0e0e0;border:1px solid var(--border-color,#e0e0e0);border-radius:8px;cursor:pointer;display:flex;gap:12px;padding:12px;transition:all .15s ease}.capability-option:hover:not(.disabled):not(.base){background:#f8f9fa;background:var(--hover-bg,#f8f9fa);border-color:#0078d4;border-color:var(--primary-color,#0078d4)}.capability-option.selected{background:#0078d40a;border-color:#0078d4;border-color:var(--primary-color,#0078d4)}.capability-option.disabled{cursor:not-allowed;opacity:.6}.capability-option.base{background:#f8f9fa;background:var(--hover-bg,#f8f9fa);cursor:default}.capability-checkbox{flex-shrink:0;margin-top:2px}.checkbox-unchecked{background:#fff;background:var(--card-bg,#fff);border:2px solid #ccc;border:2px solid var(--border-color,#ccc)}.checkbox-checked,.checkbox-unchecked{border-radius:4px;height:18px;width:18px}.checkbox-checked{align-items:center;color:#fff;display:flex;justify-content:center}.capability-content{flex:1 1;min-width:0}.capability-header{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.capability-icon{flex-shrink:0}.capability-name{color:#333;color:var(--text-color,#333);font-size:14px;font-weight:600}.capability-badge{border-radius:4px;font-size:11px;font-weight:500;padding:2px 6px}.base-badge{background:#d1fae5;background:var(--success-light,#d1fae5);color:#059669;color:var(--success-color,#059669)}.coming-soon-badge{background:#fef3c7;background:var(--warning-light,#fef3c7);color:#d97706;color:var(--warning-color,#d97706)}.capability-description{color:#666;color:var(--text-muted,#666);font-size:13px;line-height:1.4;margin:4px 0 0}.permissions-list{border-radius:8px;overflow:hidden}.permissions-list.additional{background:#f59e0b14;border:1px solid #f59e0b4d}.permissions-list.full{background:#0078d40a;border:1px solid #0078d433}.permissions-list.no-additional{background:#10b98114;border:1px solid #10b9814d;padding:12px 16px}.permissions-header{align-items:center;display:flex;font-size:14px;font-weight:600;gap:8px;padding:12px 16px}.permissions-header.warning{background:#f59e0b1f;color:#b45309}.permissions-header.info{background:#0078d414;color:#0078d4}.permissions-header.success{color:#059669}.permissions-body{padding:12px 16px 16px}.permissions-instruction{color:#333;color:var(--text-color,#333);font-size:13px;line-height:1.5;margin:0 0 12px}.permissions-note{color:#666;color:var(--text-muted,#666);font-size:13px;margin:0}.permissions-items{display:flex;flex-direction:column;gap:8px;list-style:none;margin:0 0 16px;padding:0}.permission-item{display:flex;flex-direction:column;font-size:13px;gap:0}.permission-item:before{content:none}.permission-main:before{color:#666;color:var(--text-muted,#666);content:"\2022"}.permission-name{background:#0000000f;border-radius:4px;color:#333;color:var(--text-color,#333);font-family:SF Mono,Monaco,Courier New,monospace;font-size:12px;padding:2px 6px}.permission-copy-btn{align-items:center;background:#0000;border:none;border-radius:4px;color:#666;color:var(--text-muted,#666);cursor:pointer;display:inline-flex;flex-shrink:0;height:22px;justify-content:center;margin-left:4px;padding:0;transition:all .15s ease;width:22px}.permission-copy-btn:hover{background:#0078d41a;color:#0078d4}.permission-copy-btn:active{transform:scale(.95)}.permission-description{color:#666;color:var(--text-muted,#666)}.permission-upgrade-note{color:#d97706;color:var(--warning-color,#d97706);font-size:11px;font-style:italic}.permission-main{align-items:baseline;display:flex;flex-wrap:wrap;gap:6px}.permission-api-badge{background:#0078d4;border-radius:3px;color:#fff;font-size:10px;font-weight:600;margin-left:4px;padding:2px 6px;text-transform:uppercase}.permission-api-note{align-items:flex-start;background:#d977061a;border-left:3px solid #d97706;border-left:3px solid var(--warning-color,#d97706);border-radius:0 4px 4px 0;color:#333;color:var(--text-color,#333);display:flex;font-size:12px;gap:6px;line-height:1.4;margin-left:16px;margin-top:6px;padding:8px 10px}.permission-api-note svg{color:#d97706;color:var(--warning-color,#d97706);flex-shrink:0;margin-top:1px}.btn-copy-permissions{align-items:center;background:#fff;background:var(--card-bg,#fff);border:1px solid #ccc;border:1px solid var(--border-color,#ccc);border-radius:6px;color:#333;color:var(--text-color,#333);cursor:pointer;display:inline-flex;font-size:13px;gap:6px;padding:6px 12px;transition:all .15s ease}.btn-copy-permissions:hover{background:#f5f5f5;background:var(--hover-bg,#f5f5f5);border-color:#0078d4;border-color:var(--primary-color,#0078d4)}.setup-instructions-section{margin-top:8px}.setup-instructions-toggle{align-items:center;background:#f8f9fa;background:var(--hover-bg,#f8f9fa);border:1px solid #e0e0e0;border:1px solid var(--border-color,#e0e0e0);border-radius:8px;color:#333;color:var(--text-color,#333);cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;padding:12px 16px;text-align:left;transition:all .15s ease;width:100%}.setup-instructions-toggle:hover{background:#e0e0e0;background:var(--border-color,#e0e0e0)}.setup-instructions-content{background:#f8f9fa;background:var(--hover-bg,#f8f9fa);border:1px solid #e0e0e0;border:1px solid var(--border-color,#e0e0e0);border-radius:8px;font-size:13px;line-height:1.6;margin-top:12px;padding:16px}.setup-instructions-content h5{color:#333;color:var(--text-color,#333);font-size:15px;margin:0 0 16px}.setup-instructions-content p{margin:16px 0 8px}.setup-instructions-content p:first-of-type{margin-top:0}.setup-instructions-content ol{margin:0 0 0 20px;padding:0}.setup-instructions-content ol li{margin-bottom:6px}.setup-instructions-content ul{margin:8px 0 8px 16px;padding:0}.setup-instructions-content ul li{margin-bottom:4px}.setup-instructions-content code{background:#0000000f;border-radius:4px;font-family:SF Mono,Monaco,Courier New,monospace;font-size:12px;padding:2px 6px}.setup-instructions-content a{align-items:center;color:#0078d4;color:var(--primary-color,#0078d4);display:inline-flex;gap:4px;text-decoration:none}.setup-instructions-content a:hover{text-decoration:underline}.setup-instructions-content .warning-text{color:#d97706;font-weight:600}.setup-instructions-content .permission-list{list-style:none;margin:8px 0;padding:0}.setup-instructions-content .permission-list li{align-items:baseline;display:flex;gap:6px;margin-bottom:4px}.setup-instructions-content .permission-list li:before{color:#666;color:var(--text-muted,#666);content:"\2022"}.scope-copy-box{align-items:flex-start;background:#fff;background:var(--card-bg,#fff);border:1px solid #ddd;border:1px solid var(--border-color,#ddd);border-radius:6px;display:flex;gap:8px;margin:8px 0;padding:12px}.scope-copy-box code{background:#0000;flex:1 1;font-size:11px;line-height:1.5;padding:0;word-break:break-all}.scope-copy-box .btn-copy{align-items:center;background:#0078d4;background:var(--primary-color,#0078d4);border:none;border-radius:4px;color:#fff;cursor:pointer;display:inline-flex;flex-shrink:0;font-size:12px;gap:4px;padding:4px 8px;transition:background .15s ease}.scope-copy-box .btn-copy:hover{background:#106ebe;background:var(--primary-hover,#106ebe)}.directory-sync-instructions-section{margin-top:8px}.info-note{background:#0078d414;border:1px solid #0078d433;border-radius:6px;color:#333;color:var(--text-color,#333);font-size:13px;margin:16px 0 8px;padding:12px}.info-note strong{color:#0078d4;color:var(--primary-color,#0078d4)}.copy-box{margin:12px 0}.copy-label{color:#666;color:var(--text-muted,#666);display:block;font-size:13px;font-weight:500;margin-bottom:8px}.code-block-container{margin:12px 0;position:relative}.code-block{background:#1e1e1e;border-radius:6px;color:#d4d4d4;font-family:SF Mono,Monaco,Courier New,monospace;font-size:12px;line-height:1.5;margin:0;max-width:100%;overflow-x:auto;padding:12px 16px;white-space:pre}.code-block-copy-btn{align-items:center;background:#ffffff1a;border:1px solid #fff3;border-radius:4px;color:#d4d4d4;cursor:pointer;display:inline-flex;font-size:11px;gap:4px;padding:4px 8px;position:absolute;right:8px;top:8px;transition:all .15s ease}.code-block-copy-btn:hover{background:#fff3;border-color:#ffffff4d}.code-block-copy-btn.copied{background:#10b9814d;border-color:#10b98180;color:#10b981}.code-block .comment{color:#6a9955}.code-block .variable{color:#9cdcfe}.code-block .string{color:#ce9178}.code-block .cmdlet{color:#dcdcaa}.code-block .param{color:#569cd6}@media (prefers-color-scheme:dark){.capability-option{background:#2d2d2d;background:var(--card-bg,#2d2d2d);border-color:#444;border-color:var(--border-color,#444)}.capability-option.selected{background:#0078d426}.capability-option.base{background:#3d3d3d;background:var(--hover-bg,#3d3d3d)}.checkbox-unchecked{background:#2d2d2d;background:var(--card-bg,#2d2d2d);border-color:#555;border-color:var(--border-color,#555)}.permission-name{background:#ffffff1a}.setup-instructions-content,.setup-instructions-toggle{background:#3d3d3d;background:var(--hover-bg,#3d3d3d);border-color:#444;border-color:var(--border-color,#444)}.scope-copy-box{background:#2d2d2d;background:var(--card-bg,#2d2d2d);border-color:#444;border-color:var(--border-color,#444)}}@media (max-width:600px){.capability-option{padding:10px}.permissions-body,.permissions-header{padding:10px 12px}.setup-instructions-toggle{font-size:13px;padding:10px 12px}.setup-instructions-content{font-size:12px;padding:12px}.scope-copy-box{flex-direction:column;gap:8px}.scope-copy-box .btn-copy{align-self:flex-end}}.provisioning-config{padding:24px}.provisioning-config .config-header{align-items:flex-start;display:flex;gap:16px;justify-content:space-between;margin-bottom:24px}.provisioning-config .config-header .header-content{flex:1 1}.provisioning-config .config-header .header-actions{flex-shrink:0}.provisioning-config .config-header h3{align-items:center;color:var(--text-primary);display:flex;font-size:1.25rem;gap:10px;margin:0 0 8px}.provisioning-config .config-description{color:var(--text-secondary);font-size:.9rem;margin:0}.provisioning-config .sync-all-btn{align-items:center;display:flex;font-size:13px;gap:6px;padding:8px 12px}.provisioning-config .btn-icon{background:#0000;border:1px solid var(--border-color);border-radius:4px;color:var(--text-secondary);cursor:pointer;min-width:auto;padding:6px;transition:all .15s ease}.provisioning-config .btn-icon:hover:not(:disabled){background:var(--hover-bg);border-color:var(--primary-color);color:var(--primary-color)}.provisioning-config .btn-icon:disabled{cursor:not-allowed;opacity:.5}.provisioning-config .btn-icon.sync-success,.provisioning-config .btn-icon.sync-success:hover:not(:disabled){background:var(--success-color);border-color:var(--success-color);color:#fff}.provisioning-config .empty-state,.provisioning-config .error-state,.provisioning-config .loading-state{align-items:center;color:var(--text-secondary);display:flex;flex-direction:column;gap:12px;justify-content:center;padding:48px 24px;text-align:center}.provisioning-config .empty-state h3{color:var(--text-primary);margin:12px 0 0}.provisioning-config .empty-state p{margin:0;max-width:400px}.provisioning-config .spin{animation:provisioning-config-spin 1s linear infinite}@keyframes provisioning-config-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.provisioning-config .config-card{background:#fff;background:var(--card-bg,#fff);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:8px;margin-bottom:16px;overflow:hidden;transition:box-shadow .2s}.provisioning-config .config-card:hover{box-shadow:0 2px 8px #00000014}.provisioning-config .config-card.expanded{box-shadow:0 4px 12px #0000001a}.provisioning-config .card-header{align-items:center;background:#fff;background:var(--card-bg,#fff);cursor:pointer;display:flex;justify-content:space-between;padding:16px 20px;transition:background-color .2s}.provisioning-config .card-header:hover{background:#f8f9fa;background:var(--hover-bg,#f8f9fa)}.provisioning-config .card-info{align-items:center;display:flex;gap:12px}.provisioning-config .card-icon{color:var(--text-secondary)}.provisioning-config .card-icon.directory{color:#6366f1}.provisioning-config .card-details h4{color:var(--text-primary);font-size:1rem;margin:0}.provisioning-config .card-subtitle{align-items:center;color:var(--text-secondary);display:flex;font-size:.8rem;gap:6px}.provisioning-config .card-actions{align-items:center;color:var(--text-secondary);display:flex;gap:12px}.provisioning-config .card-body{background:#f9fafb;background:var(--bg-secondary,#f9fafb);border-top:1px solid #e5e7eb;border-top:1px solid var(--border-color,#e5e7eb);padding:20px}.provisioning-config .services-header{border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--border-color,#e5e7eb);margin:24px 0 16px;padding-bottom:8px}.provisioning-config .services-header h4{color:var(--text-primary);font-size:1rem;margin:0 0 4px}.provisioning-config .services-header p{color:var(--text-secondary);font-size:.85rem;margin:0}.provisioning-config .integration-list{display:flex;flex-direction:column;gap:16px}.provisioning-config .integration-card{background:#fff;background:var(--card-bg,#fff);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:8px;overflow:hidden;transition:box-shadow .2s}.provisioning-config .integration-card:hover{box-shadow:0 2px 8px #00000014}.provisioning-config .integration-card.expanded{box-shadow:0 4px 12px #0000001a}.provisioning-config .integration-header{align-items:center;background:#fff;background:var(--card-bg,#fff);cursor:pointer;display:flex;justify-content:space-between;padding:16px 20px;transition:background-color .2s}.provisioning-config .integration-header:hover{background:#f8f9fa;background:var(--hover-bg,#f8f9fa)}.provisioning-config .integration-info{align-items:center;display:flex;gap:12px}.provisioning-config .provider-icon{font-size:1.5rem}.provisioning-config .provider-details h4{color:var(--text-primary);font-size:1rem;margin:0}.provisioning-config .sync-status{align-items:center;color:var(--text-secondary);display:flex;font-size:.8rem;gap:6px}.provisioning-config .status-icon.success{color:#22c55e;color:var(--success-color,#22c55e)}.provisioning-config .status-icon.warning{color:#f59e0b;color:var(--warning-color,#f59e0b)}.provisioning-config .integration-actions{align-items:center;color:var(--text-secondary);display:flex;gap:12px}.provisioning-config .unsaved-indicator{background:#fef3c7;border-radius:4px;color:#f59e0b;color:var(--warning-color,#f59e0b);font-size:.75rem;padding:4px 8px}.provisioning-config .integration-body{background:#f9fafb;background:var(--bg-secondary,#f9fafb);border-top:1px solid #e5e7eb;border-top:1px solid var(--border-color,#e5e7eb);padding:20px}.provisioning-config .config-section{background:#fff;background:var(--card-bg,#fff);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:8px;margin-bottom:16px;overflow:hidden}.provisioning-config .section-header{align-items:center;background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--border-color,#e5e7eb);display:flex;gap:10px;padding:14px 16px}.provisioning-config .section-header h5{color:var(--text-primary);font-size:.95rem;margin:0}.provisioning-config .section-content{padding:16px}.provisioning-config .section-hint{color:var(--text-secondary);font-size:.85rem;margin:0 0 12px}.provisioning-config .section-intro{color:var(--text-secondary);font-size:.9rem;line-height:1.5;margin:0 0 16px}.provisioning-config .license-login-url{align-items:center;color:#3b82f6;color:var(--primary-color,#3b82f6);display:inline-flex;font-size:.75rem;gap:4px;margin-left:8px}.provisioning-config .form-group{margin-bottom:16px}.provisioning-config .form-group:last-child{margin-bottom:0}.provisioning-config .form-group label{color:var(--text-primary);display:block;font-size:.85rem;font-weight:500;margin-bottom:6px}.provisioning-config .form-group input,.provisioning-config .form-group select,.provisioning-config .form-group textarea{background:#fff;background:var(--card-bg,#fff);border:1px solid #d1d5db;border:1px solid var(--border-color,#d1d5db);border-radius:6px;color:var(--text-primary);font-size:.9rem;padding:8px 12px;width:100%}.provisioning-config .form-group input:focus,.provisioning-config .form-group select:focus,.provisioning-config .form-group textarea:focus{border-color:#3b82f6;border-color:var(--primary-color,#3b82f6);box-shadow:0 0 0 3px #3b82f61a;outline:none}.provisioning-config .domain-unavailable{align-items:center;background:#fef3c7;background:var(--warning-bg,#fef3c7);border:1px solid #fcd34d;border:1px solid var(--warning-border,#fcd34d);border-radius:6px;color:#92400e;color:var(--warning-text,#92400e);display:flex;font-size:.85rem;gap:8px;padding:10px 12px}.provisioning-config .domain-unavailable svg{flex-shrink:0}.provisioning-config .subsection{margin-bottom:20px}.provisioning-config .subsection:last-child{margin-bottom:0}.provisioning-config .subsection-header{align-items:center;border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--border-color,#e5e7eb);display:flex;justify-content:space-between;margin-bottom:12px;padding-bottom:8px}.provisioning-config .subsection-header span{color:var(--text-primary);font-size:.9rem;font-weight:500}.provisioning-config .template-list{display:flex;flex-direction:column;gap:8px}.provisioning-config .template-item{align-items:center;background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:6px;display:flex;justify-content:space-between;padding:12px}.provisioning-config .template-info{display:flex;flex-direction:column;gap:4px}.provisioning-config .template-info strong{color:var(--text-primary);font-size:.9rem}.provisioning-config .template-desc{color:var(--text-secondary);font-size:.8rem}.provisioning-config .license-count{background:#fff;background:var(--card-bg,#fff);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:10px;color:var(--text-muted);font-size:.75rem;padding:2px 8px}.provisioning-config .template-actions{display:flex;gap:8px}.provisioning-config .empty-hint{background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border-radius:6px;color:var(--text-muted);font-size:.85rem;font-style:italic;margin:0;padding:12px;text-align:center}.provisioning-config .search-box{align-items:center;background:#fff;background:var(--card-bg,#fff);border:1px solid #d1d5db;border:1px solid var(--border-color,#d1d5db);border-radius:6px;display:flex;gap:8px;margin-bottom:12px;padding:8px 12px}.provisioning-config .search-box input{background:#0000;border:none;color:var(--text-primary);flex:1 1;font-size:.85rem;outline:none}.provisioning-config .search-box input::placeholder{color:var(--text-muted)}.provisioning-config .search-box svg{color:var(--text-muted);flex-shrink:0}.provisioning-config .search-clear{align-items:center;background:none;border:none;border-radius:50%;color:var(--text-muted);cursor:pointer;display:flex;justify-content:center;padding:2px;transition:background-color .2s,color .2s}.provisioning-config .search-clear:hover{background:#e5e7eb;background:var(--hover-bg,#e5e7eb);color:var(--text-primary)}.provisioning-config .show-more-btn{align-items:center;background:none;border:1px dashed #d1d5db;border:1px dashed var(--border-color,#d1d5db);border-radius:6px;color:#3b82f6;color:var(--primary-color,#3b82f6);cursor:pointer;display:inline-flex;font-size:.8rem;gap:6px;justify-content:center;margin-top:8px;padding:8px 12px;transition:background-color .2s,border-color .2s;width:100%}.provisioning-config .show-more-btn:hover{background:#f8f9fa;background:var(--hover-bg,#f8f9fa);border-color:#3b82f6;border-color:var(--primary-color,#3b82f6)}.provisioning-config .item-count{background:#f3f4f6;background:var(--bg-secondary,#f3f4f6);border-radius:10px;color:var(--text-muted);font-size:.75rem;padding:2px 8px}.provisioning-config .group-checkboxes,.provisioning-config .license-checkboxes{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}.provisioning-config .checkbox-item{align-items:center;background:#fff;background:var(--card-bg,#fff);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:6px;cursor:pointer;display:flex;gap:10px;padding:10px 12px;transition:background-color .2s,border-color .2s}.provisioning-config .checkbox-item:hover{background:#f8f9fa;background:var(--hover-bg,#f8f9fa)}.provisioning-config .checkbox-item input[type=checkbox]{margin:0;width:auto}.provisioning-config .checkbox-item .license-name{color:var(--text-primary);flex:1 1;font-size:.85rem}.provisioning-config .checkbox-item .license-seats{color:var(--text-muted);font-size:.75rem}.provisioning-config .checkbox-item .group-name{color:var(--text-primary);flex:1 1;font-size:.85rem}.provisioning-config .checkbox-item .group-email{color:var(--text-muted);font-size:.75rem;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.provisioning-config .template-section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.provisioning-config .template-section-header label{align-items:center;display:flex;gap:6px;margin-bottom:0}.provisioning-config .template-counts{align-items:center;display:flex;gap:8px;margin-top:4px}.provisioning-config .template-counts .group-count,.provisioning-config .template-counts .license-count{align-items:center;background:#fff;background:var(--card-bg,#fff);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:10px;color:var(--text-muted);display:inline-flex;font-size:.75rem;gap:4px;padding:2px 8px}.provisioning-config .template-counts .group-count svg,.provisioning-config .template-counts .license-count svg{flex-shrink:0}.provisioning-config .config-footer{border-top:1px solid #e5e7eb;border-top:1px solid var(--border-color,#e5e7eb);display:flex;justify-content:flex-end;margin-top:16px;padding-top:16px}.provisioning-config .toggle-group{padding:0}.provisioning-config .toggle-row{align-items:flex-start;display:flex;gap:20px;justify-content:space-between}.provisioning-config .toggle-label{flex:1 1}.provisioning-config .toggle-label label{color:var(--text-primary);display:block;font-weight:500;margin-bottom:4px}.provisioning-config .toggle-hint{color:var(--text-muted);font-size:13px;line-height:1.4;margin:0}.provisioning-config .toggle-btn{align-items:center;background:#0000;border:none;color:var(--text-muted);cursor:pointer;display:flex;flex-shrink:0;justify-content:center;padding:0;transition:color .2s}.provisioning-config .toggle-btn:hover{color:var(--primary-color)}.provisioning-config .toggle-btn.active{color:#22c55e;color:var(--success-color,#22c55e)}@media (max-width:768px){.provisioning-config{padding:16px}.provisioning-config .group-checkboxes,.provisioning-config .license-checkboxes{grid-template-columns:1fr}.provisioning-config .integration-header{padding:12px 16px}.provisioning-config .integration-body{padding:16px}.provisioning-config .section-content{padding:12px}}.provisioning-config .service-info{padding:16px}.provisioning-config .service-info p{color:var(--text-secondary);line-height:1.5;margin:0 0 16px}.provisioning-config .service-stats{display:flex;gap:24px;margin-top:16px}.provisioning-config .stat-item{align-items:center;background:#f8f9fa;background:var(--background-secondary,#f8f9fa);border-radius:8px;display:flex;flex-direction:column;min-width:100px;padding:16px 24px}.provisioning-config .stat-value{color:var(--text-primary);font-size:1.5rem;font-weight:600}.provisioning-config .stat-label{color:var(--text-secondary);font-size:.8rem;margin-top:4px}.provisioning-config .license-info{background:#f8f9fa;background:var(--background-secondary,#f8f9fa);border-radius:8px;margin-top:16px;padding:16px}.provisioning-config .license-info p{font-size:.9rem;margin:0 0 8px}.provisioning-config .license-info p:last-child{margin-bottom:0}.provisioning-config .agent-type-options{display:flex;flex-direction:column;gap:12px}.provisioning-config .radio-item{align-items:flex-start;background:#f8f9fa;background:var(--background-secondary,#f8f9fa);border:1px solid #e0e0e0;border:1px solid var(--border-color,#e0e0e0);border-radius:8px;cursor:pointer;display:flex;gap:12px;padding:12px 16px;transition:all .2s ease}.provisioning-config .radio-item:hover{background:#f0f0f0;background:var(--background-hover,#f0f0f0);border-color:#0078d4;border-color:var(--primary-color,#0078d4)}.provisioning-config .radio-item input[type=radio]{cursor:pointer;margin-top:4px}.provisioning-config .radio-info{display:flex;flex-direction:column;gap:4px}.provisioning-config .radio-name{color:var(--text-primary);font-weight:500}.provisioning-config .radio-desc{color:var(--text-secondary);font-size:.85rem}.provisioning-config .extension-attributes-list{display:flex;flex-direction:column;gap:10px;margin-bottom:16px}.provisioning-config .extension-attr-item{align-items:center;background:#fff;background:var(--card-bg,#fff);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:6px;display:flex;gap:12px;padding:12px 14px}.provisioning-config .extension-attr-item .attr-friendly-name{background:#f9fafb;background:var(--bg-secondary,#f9fafb);border:1px solid #d1d5db;border:1px solid var(--border-color,#d1d5db);border-radius:6px;color:var(--text-primary);flex:1 1;font-size:.85rem;min-width:150px;padding:8px 10px}.provisioning-config .extension-attr-item .attr-friendly-name:focus{background:#fff;background:var(--card-bg,#fff);border-color:#3b82f6;border-color:var(--primary-color,#3b82f6);box-shadow:0 0 0 2px #3b82f61a;outline:none}.provisioning-config .extension-attr-item .attr-mapping{background:#f9fafb;background:var(--bg-secondary,#f9fafb);border:1px solid #d1d5db;border:1px solid var(--border-color,#d1d5db);border-radius:6px;color:var(--text-primary);cursor:pointer;font-size:.85rem;padding:8px 10px;width:170px}.provisioning-config .extension-attr-item .attr-mapping:focus{border-color:#3b82f6;border-color:var(--primary-color,#3b82f6);box-shadow:0 0 0 2px #3b82f61a;outline:none}.provisioning-config .extension-attr-item .attr-required{align-items:center;border-radius:4px;color:var(--text-secondary);cursor:pointer;display:flex;font-size:.85rem;gap:6px;padding:6px 10px;transition:background-color .15s;white-space:nowrap}.provisioning-config .extension-attr-item .attr-required:hover{background:#f3f4f6;background:var(--hover-bg,#f3f4f6)}.provisioning-config .extension-attr-item .attr-required input[type=checkbox]{cursor:pointer;margin:0;width:auto}.provisioning-config .extension-attr-item .btn-icon.danger{background:#0000;border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:4px;color:var(--text-secondary);cursor:pointer;padding:6px;transition:all .15s}.provisioning-config .extension-attr-item .btn-icon.danger:hover{background:#ef44440d;border-color:#ef4444;border-color:var(--danger-color,#ef4444);color:#ef4444;color:var(--danger-color,#ef4444)}.provisioning-config .add-attr-btn{align-items:center;display:inline-flex;gap:6px}@media (max-width:768px){.provisioning-config .extension-attr-item{flex-wrap:wrap;gap:10px}.provisioning-config .extension-attr-item .attr-friendly-name{flex:1 1 100%;min-width:0}.provisioning-config .extension-attr-item .attr-mapping{flex:1 1;min-width:140px;width:auto}}.modal-content.template-modal{max-height:85vh;max-width:90vw;min-width:800px;width:800px}.template-modal .group-checkboxes,.template-modal .license-checkboxes{grid-gap:8px;box-sizing:border-box;display:grid;gap:8px;grid-template-columns:repeat(2,1fr);overflow-x:hidden;width:100%}.template-modal .checkbox-item{box-sizing:border-box;max-width:100%;min-width:0;overflow:hidden}.template-modal .checkbox-item .group-name,.template-modal .checkbox-item .license-name{flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.template-modal .checkbox-item .group-email{display:none}@media (max-width:800px){.modal-content.template-modal{min-width:auto;width:95vw}.modal-content.template-modal .group-checkboxes,.modal-content.template-modal .license-checkboxes{grid-template-columns:1fr}.modal-content.template-modal .checkbox-item .group-email{display:block}}.provisioning-config .auto-save-status{align-items:center;border-radius:4px;display:inline-flex;font-size:13px;gap:6px;padding:6px 12px}.provisioning-config .auto-save-status.saving{color:#007bff;color:var(--primary-color,#007bff)}.provisioning-config .auto-save-status.saving svg{animation:spin 1s linear infinite}.provisioning-config .auto-save-status.pending{color:#f59e0b;color:var(--warning-color,#f59e0b)}.provisioning-config .auto-save-status.saved{color:#10b981;color:var(--success-color,#10b981)}.ttg-internal-badge{align-items:center;background:linear-gradient(135deg,#ff6b6b,#ff8e53);box-shadow:0 2px 4px #ff6b6b33;color:#fff;cursor:help;display:inline-flex;flex-shrink:0;font-size:11px;letter-spacing:.5px;padding:6px 12px;white-space:nowrap}.audit-log-container{background:var(--background-color);min-height:100vh;padding:20px}.audit-log-header{align-items:center;background:var(--card-bg);border-radius:8px;box-shadow:0 2px 4px #0000000d;display:flex;justify-content:space-between;margin-bottom:20px;padding:20px}.audit-log-header h2{color:var(--text-color);margin:0}.audit-log-header-right{align-items:center;display:flex;gap:16px}.back-button{border-radius:4px;font-size:14px;padding:8px 16px;transition:background-color .2s}.audit-log-stats{color:var(--text-secondary);font-size:14px}.audit-log-filters{background:var(--card-bg);border-radius:8px;box-shadow:0 2px 4px #0000000d;display:flex;flex-direction:column;gap:16px;margin-bottom:20px;padding:20px}.filter-row{align-items:flex-end;display:flex;flex-wrap:wrap;gap:16px}.search-group{flex:1 1;max-width:400px;min-width:250px}.date-range-group{display:flex;flex-direction:column;gap:4px}.date-range-group>label{color:var(--text-secondary);font-size:12px;font-weight:500;text-transform:uppercase}.date-range-inputs{align-items:center;display:flex;gap:8px}.date-separator{color:var(--text-secondary);font-size:14px}.search-input{border-radius:4px;padding:10px 14px}.search-input:focus{box-shadow:0 0 0 2px #3b82f61a}.filter-group input[type=date],.filter-group select{background:var(--input-bg);border:1px solid var(--border-color);border-radius:4px;font-size:14px;min-height:40px;padding:10px 14px}.filter-group input[type=date]:focus,.filter-group select:focus{border-color:var(--primary-color);outline:none}.tenant-select{min-width:180px}.filter-group select:disabled,.tenant-select.disabled-select{background-color:#f3f4f6;background-color:var(--secondary-bg,#f3f4f6);cursor:not-allowed;opacity:.5}.page-size-select{min-width:80px}.filter-group .toggle-switch-container{align-items:center;display:flex;min-height:40px}.clear-filters-btn{align-self:flex-end;background:var(--danger-color);border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;margin-left:auto;min-height:40px;padding:10px 20px;transition:background-color .2s}.clear-filters-btn:hover{background:var(--danger-hover)}.audit-log-table-wrapper{background:var(--card-bg);border-radius:8px;box-shadow:0 2px 4px #0000000d;overflow:hidden}.audit-log-table{border-collapse:collapse;width:100%}.audit-log-table thead{background:var(--table-header-bg);border-bottom:2px solid var(--border-color)}.audit-log-table th{color:var(--text-secondary);font-size:14px;font-weight:600;padding:12px 16px;text-align:left;white-space:nowrap}.audit-log-table th.sortable{cursor:pointer;transition:background-color .2s;-webkit-user-select:none;user-select:none}.audit-log-table th.sortable:hover{background:var(--hover-bg)}.audit-log-table tbody tr{border-bottom:1px solid var(--border-color);cursor:pointer;position:relative;transition:background-color .1s}.audit-log-table tbody tr:hover{background:var(--table-hover-bg)}@media (min-width:481px){.audit-log-table tbody tr:after{color:var(--primary-color);content:"›";font-size:18px;font-weight:700;line-height:1;opacity:0;position:absolute;right:12px;top:50%;transform:translateY(-50%) rotate(0deg);transition:transform .2s ease,color .2s ease,opacity .2s ease}.audit-log-table tbody tr:hover:after{opacity:1}.audit-log-table tbody tr.expanded:after{opacity:1;transform:translateY(-50%) rotate(90deg)}.audit-row.collapsed .detail-expanded,.audit-row.expanded .detail-properties:not(.detail-expanded .detail-properties){display:none}}.audit-log-table td{color:var(--text-color);font-size:14px;padding:12px 16px}.timestamp-cell{color:var(--text-secondary);white-space:nowrap}.action-cell .action-badge{font-size:12px;font-weight:600;letter-spacing:.025em;text-transform:uppercase}.entity-info{display:flex;flex-direction:column;gap:2px}.entity-name{color:var(--text-primary);font-weight:500}.entity-type{color:var(--text-muted);font-size:12px}.details-info{color:var(--text-secondary);font-size:13px}.detail-properties{display:flex;flex-wrap:wrap;gap:12px}.detail-prop{color:var(--text-color);font-family:Courier New,monospace;font-size:13px}.detail-expanded .detail-properties{flex-direction:column;gap:6px}.detail-expanded .detail-prop{background:var(--secondary-bg);border-left:3px solid var(--primary-color);border-radius:2px;padding:4px 8px}.detail-changes,.detail-reason{margin-top:8px}.detail-tag{background:var(--secondary-bg);border-radius:4px;display:inline-block;font-size:11px;margin-top:4px;padding:2px 6px}.user-info{display:flex;flex-direction:column;gap:2px}.user-name{align-items:center;color:var(--text-color);display:flex;gap:6px}.ai-assisted-icon{cursor:help;font-size:14px;opacity:.8}.module-cell{color:var(--text-secondary);text-transform:capitalize}.tenant-col{min-width:140px}.tenant-cell{white-space:nowrap}.tenant-badge{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:4px;color:#fff;display:inline-block;font-size:12px;font-weight:500;max-width:150px;overflow:hidden;padding:4px 8px;text-overflow:ellipsis}.changes-summary{color:var(--text-secondary);font-size:13px}.changed-fields{color:var(--text-muted);font-size:11px;font-style:italic;margin-top:2px}.change-reason{font-size:12px;font-style:italic;margin-top:4px}.no-data{color:var(--text-muted);font-style:italic;padding:40px!important;text-align:center}.audit-log-pagination{align-items:center;background:var(--card-bg);border-radius:8px;box-shadow:0 2px 4px #0000000d;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-top:20px;padding:16px}.page-number{background:var(--secondary-bg);border-radius:4px;color:var(--text-color);font-size:14px;font-weight:500;padding:8px 12px}.page-btn{background:var(--primary-color);border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;padding:8px 16px;transition:all .2s}.page-btn:hover:not(:disabled){background:var(--primary-hover);transform:translateY(-1px)}.page-btn:disabled{background:var(--border-color);color:var(--text-muted);cursor:not-allowed}.page-info{background:var(--secondary-bg);border-radius:4px;color:var(--text-color);font-size:14px;font-weight:500;padding:8px 16px}.audit-log-loading{color:var(--text-secondary)}.audit-log-error,.audit-log-loading{align-items:center;display:flex;font-size:16px;justify-content:center;min-height:400px}.audit-log-error{border-radius:8px;color:var(--danger-color);margin:20px}.audit-log-error,.audit-row.action-delete{background:var(--danger-bg)}.audit-row.action-delete:hover{background:#fecaca}.audit-row.action-create{background:var(--success-bg)}.audit-row.action-create:hover{background:#bbf7d0}@media (max-width:1024px){.audit-log-filters{align-items:stretch;flex-direction:column}.filter-group,.search-input{width:100%}.clear-filters-btn{margin-left:0;margin-top:8px}.audit-log-table{font-size:12px}.audit-log-table td,.audit-log-table th{padding:8px}}@media (max-width:480px){.audit-log-container{padding:10px}.audit-log-header{flex-direction:column;gap:10px;padding:15px}.audit-log-header h2{font-size:18px;order:2}.back-button{align-self:flex-start;font-size:13px;order:1;padding:6px 12px}.audit-log-stats{font-size:12px;order:3;text-align:center}.audit-log-table-wrapper{background:#0000;box-shadow:none}.audit-log-table thead{display:none!important}.audit-log-table{display:block;width:100%}.audit-log-table tbody{display:block}.audit-log-table tbody tr{background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;box-shadow:0 2px 4px #0000000d;display:block;margin-bottom:10px;padding:12px;position:relative;transition:all .2s ease}.audit-log-table tbody tr.collapsed{cursor:pointer;padding:8px 12px}.audit-log-table tbody tr.collapsed:hover{background:var(--table-hover-bg);box-shadow:0 4px 6px #00000014}.audit-log-table tbody tr.collapsed:after,.audit-log-table tbody tr.expanded:after{align-items:center;background:#3b82f61a;border-radius:6px;color:var(--primary-color);content:"›";display:flex;font-size:24px;font-weight:700;height:28px;justify-content:center;line-height:1;position:absolute;right:8px;top:50%;transform-origin:center;transition:transform .2s ease,color .2s ease,background-color .2s ease;width:28px}.audit-log-table tbody tr.collapsed:after{transform:translateY(-50%) rotate(0deg)}.audit-log-table tbody tr.expanded:after{background:#3b82f626;transform:translateY(-50%) rotate(90deg)}.audit-log-table tbody tr:hover:after{background:#3b82f633;color:var(--primary-hover)}.audit-log-table tbody tr.collapsed td{display:none!important}.audit-log-table tbody tr.collapsed td.mobile-summary{display:inline-block!important;padding:4px 8px!important;vertical-align:middle}.audit-log-table tbody tr.collapsed td.mobile-summary:before{display:none!important}.audit-log-table tbody tr.collapsed .timestamp-cell{border:none!important;color:var(--text-secondary);font-size:11px!important;margin-left:auto!important;margin-right:40px!important;order:3;padding:0!important;white-space:nowrap}.audit-log-table tbody tr.collapsed .timestamp-full{display:none}.audit-log-table tbody tr.collapsed .timestamp-short,.audit-log-table tbody tr.expanded .timestamp-full{display:inline}.audit-log-table tbody tr.expanded .timestamp-short{display:none}.audit-log-table tbody tr.collapsed .action-cell{order:1;padding:0!important}.audit-log-table tbody tr.collapsed .action-badge{font-size:10px!important;padding:2px 6px!important}.audit-log-table tbody tr.collapsed .action-type-text{display:none}.audit-log-table tbody tr.collapsed .entity-cell{flex:1 1;order:2;padding:0 8px!important}.audit-log-table tbody tr.collapsed .entity-name{font-size:13px;font-weight:500;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.audit-log-table tbody tr.collapsed .entity-type{display:none}.audit-log-table tbody tr.collapsed{align-items:center;display:flex!important;gap:8px;padding-right:45px!important}.audit-log-table tbody tr.expanded td{border:none!important;display:block!important;padding:4px 0!important;position:relative;text-align:left}.audit-log-table tbody tr.expanded td:before{color:var(--text-secondary);content:attr(data-label);display:block;font-size:11px;font-weight:600;letter-spacing:.025em;margin-bottom:2px;text-transform:uppercase}.audit-log-table .action-cell:before{content:none!important}.audit-log-table .action-badge{border-radius:4px;font-size:11px;padding:3px 8px}.audit-log-table .timestamp-cell{border-bottom:1px solid var(--secondary-bg);color:var(--text-muted);font-size:11px!important;margin-bottom:8px;order:-1;padding-bottom:8px!important}.audit-log-table .timestamp-cell:before{content:none!important}.audit-log-table .entity-info{margin:8px 0}.audit-log-table .entity-name{font-size:14px;font-weight:600}.audit-log-table .entity-type{background:var(--info-bg);border-radius:4px;color:var(--info-color);display:inline-block;font-size:10px;margin-left:6px;padding:2px 6px}.audit-log-table .user-info{font-size:12px}.audit-log-table .user-email{display:none}.audit-log-table .changes-summary{background:var(--secondary-bg);border-radius:4px;font-size:12px;margin-top:4px;padding:6px}.audit-log-table .changed-fields{font-size:10px}.audit-log-filters{gap:10px;padding:12px}.filter-group label{font-size:12px}.filter-group input[type=date],.filter-group select{font-size:13px;padding:6px 10px}.audit-log-pagination{flex-wrap:wrap;gap:8px;padding:12px}.page-btn,.page-info{font-size:13px;padding:6px 12px}.page-info{text-align:center;width:100%}.no-data{font-size:14px;padding:30px!important}.audit-log-error,.audit-log-loading{font-size:14px;min-height:200px}.audit-log-error{margin:10px}}.reorder-modal{background:#fff;border-radius:8px;display:flex;flex-direction:column;height:80vh;max-width:600px;position:relative;width:90vw}.reorder-modal-header{align-items:center;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;padding:20px}.reorder-modal-header h2{color:#333;font-size:20px;margin:0}.reorder-modal-header .close-button{align-items:center;background:none;border:none;color:#666;cursor:pointer;display:flex;justify-content:center;padding:4px;transition:color .2s}.reorder-modal-header .close-button:hover:not(:disabled){color:#333}.reorder-instructions{background:#f5f7fa;border-bottom:1px solid #e0e0e0;padding:15px 20px}.reorder-instructions p{color:#666;font-size:14px;margin:0}.reorder-list{flex:1 1;overflow-y:auto;padding:10px 10px 80px}.reorder-item{align-items:center;background:#fff;border:1px solid #e0e0e0;border-radius:6px;cursor:move;display:flex;gap:12px;margin-bottom:8px;padding:12px;transition:all .2s;-webkit-user-select:none;user-select:none}.reorder-item:hover{background:#f8f9fa;border-color:#667eea}.reorder-item.drag-over{background:#f0f4ff;border-color:#667eea;transform:scale(1.02)}.drag-handle{color:#999}.drag-handle,.item-order{align-items:center;display:flex}.item-order{background:#667eea;border-radius:50%;color:#fff;flex-shrink:0;font-size:14px;font-weight:700;height:30px;justify-content:center;width:30px}.item-content{align-items:center;display:flex;flex:1 1;gap:12px;min-width:0}.item-logo{background:#f5f5f5;border-radius:4px;height:32px;object-fit:contain;padding:4px;width:32px}.item-name{color:#333}.item-id{color:#999;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.item-actions{display:flex;gap:4px}.move-button{align-items:center;background:#fff;border:1px solid #e0e0e0;border-radius:4px;color:#666;cursor:pointer;display:flex;height:28px;justify-content:center;transition:all .2s;width:28px}.move-button:hover:not(:disabled){background:#f0f4ff;border-color:#667eea;color:#667eea}.move-button:disabled{cursor:not-allowed;opacity:.3}.reorder-modal-footer{background:#fff;border-top:1px solid #e0e0e0;bottom:0;display:flex;gap:10px;justify-content:flex-end;left:0;padding:20px;position:absolute;right:0;z-index:10}.cancel-button,.save-button{align-items:center;border-radius:6px;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:6px;padding:8px 16px;transition:all .2s}.save-button{background:#667eea;border:none;color:#fff}.save-button:hover:not(:disabled){background:#5569d7}.save-button:disabled{cursor:not-allowed;opacity:.6}.cancel-button{background:#fff;border:1px solid #e0e0e0;color:#666}.cancel-button:hover:not(:disabled){background:#f5f5f5}@media (max-width:600px){.reorder-modal{max-height:90vh;width:95vw}.reorder-item{padding:10px}.item-logo{height:28px;width:28px}.drag-handle{display:none}}.resource-definition-manager{background:#f5f6fa;min-height:100vh;padding:20px}.manager-header{align-items:center;border-bottom:2px solid #e9ecef;display:flex;justify-content:space-between;margin-bottom:25px;padding-bottom:15px}.manager-header h2{color:#333;font-size:24px;margin:0}.manager-actions{align-items:center;display:flex;gap:10px}.manager-actions .btn-primary{align-items:center;background-color:#3b82f6;border:none;border-radius:6px;color:#fff;cursor:pointer;display:inline-flex;font-size:14px;font-weight:500;gap:6px;padding:10px 16px;transition:background-color .2s}.manager-actions .btn-primary:hover{background-color:#2563eb}.manager-actions .btn-secondary{align-items:center;background-color:#fff;border:1px solid #d1d5db;border-radius:6px;color:#374151;cursor:pointer;display:inline-flex;font-size:14px;font-weight:500;gap:6px;padding:10px 16px;transition:all .2s}.manager-actions .btn-secondary:hover{background-color:#f9fafb;border-color:#9ca3af}.manager-message{background:#d4edda;border-radius:4px;color:#155724;font-size:14px;padding:8px 15px}.resource-manager-loading{color:#666;padding:40px;text-align:center}.definition-form-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.definition-form{background:#fff;border-radius:8px;display:flex;flex-direction:column;max-height:90vh;max-width:800px;overflow:hidden;width:90%}.definition-form form{display:flex;flex:1 1;flex-direction:column;min-height:0;overflow-y:auto}.form-header{align-items:center;background:#fff;border-bottom:1px solid #e9ecef;display:flex;flex-shrink:0;justify-content:space-between;padding:20px}.form-header h3{color:#333;margin:0}.definition-close-button{align-items:center;background:none;border:none;border-radius:4px;color:#666;cursor:pointer;display:flex;justify-content:center;padding:5px;transition:background .2s}.definition-close-button:hover{background:#f0f0f0}.definition-close-button svg{stroke:currentColor;height:20px;width:20px}.form-grid{grid-gap:20px;gap:20px;grid-template-columns:1fr 1fr;padding:20px}.form-field{display:flex;flex-direction:column;gap:5px}.form-field.full-width{grid-column:span 2}.form-field label{color:#333;font-size:14px;font-weight:500}.form-field input[type=number],.form-field input[type=text],.form-field input[type=url],.form-field select,.form-field textarea{border:1px solid #ced4da;border-radius:4px;font-size:14px;padding:8px 12px;transition:border-color .2s}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-color:#06c;box-shadow:0 0 0 2px #0066cc1a;outline:none}.form-field input::placeholder,.form-field textarea::placeholder{color:#999;opacity:1}.form-field input::-webkit-input-placeholder,.form-field textarea::-webkit-input-placeholder{color:#999;opacity:1}.form-field input::-moz-placeholder,.form-field textarea::-moz-placeholder{color:#999;opacity:1}.form-field small{color:#666;font-size:12px}.checkbox-label input[type=checkbox]{margin:0}.image-field{display:flex;gap:5px}.image-field input{flex:1 1}.resource-definition-manager .btn-icon{align-items:center;background:#f8f9fa;border:1px solid #ced4da;border-radius:4px;cursor:pointer;display:flex;justify-content:center;padding:8px;transition:all .2s}.resource-definition-manager .btn-icon:hover{background:#e9ecef;border-color:#adb5bd}.image-preview{border:1px solid #e9ecef;border-radius:4px;height:auto;margin-top:10px;max-width:150px;padding:5px;width:100%}.definition-form .form-actions{background:#fff;border-top:1px solid #e9ecef;bottom:0;display:flex;gap:10px;justify-content:flex-end;margin-top:auto;padding:16px 20px;position:-webkit-sticky;position:sticky}.definition-form .btn-primary{align-items:center;background-color:#3b82f6;border:none;border-radius:6px;color:#fff;cursor:pointer;display:inline-flex;font-size:14px;font-weight:500;gap:6px;padding:10px 20px;transition:background-color .2s}.definition-form .btn-primary:hover:not(:disabled){background-color:#2563eb}.definition-form .btn-primary:disabled{cursor:not-allowed;opacity:.6}.definition-form .btn-secondary{align-items:center;background-color:#fff;border:1px solid #d1d5db;border-radius:6px;color:#374151;cursor:pointer;display:inline-flex;font-size:14px;font-weight:500;gap:6px;padding:10px 20px;transition:all .2s}.definition-form .btn-secondary:hover:not(:disabled){background-color:#f9fafb;border-color:#9ca3af}.definition-form .btn-secondary:disabled{cursor:not-allowed;opacity:.5}.image-picker-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1100}.image-picker{background:#fff;border-radius:8px;display:flex;flex-direction:column;max-height:80vh;max-width:900px;overflow:hidden;width:90%}.picker-header{align-items:center;border-bottom:1px solid #e9ecef;display:flex;justify-content:space-between;padding:20px}.picker-header h3{margin:0}.image-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));overflow-y:auto;padding:20px}.image-option{border:2px solid #0000;border-radius:8px;cursor:pointer;padding:8px;position:relative;text-align:center;transition:all .2s}.image-option:hover{background:#f8f9fa;border-color:#06c}.image-option img{height:80px;margin-bottom:5px;object-fit:contain;width:100%}.image-name{color:#666;display:block;font-size:11px;word-break:break-all}.selected-badge{align-items:center;background:#28a745;border-radius:50%;color:#fff;display:flex;height:24px;justify-content:center;position:absolute;right:5px;top:5px;width:24px}.definitions-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.definition-card{background:#fff;border-radius:8px;box-shadow:0 2px 4px #00000014;padding:15px;transition:all .2s}.definition-card:hover{box-shadow:0 4px 8px #0000001f}.definition-header{align-items:center;display:flex;gap:12px;margin-bottom:12px}.definition-logo{background:#f8f9fa;border-radius:6px;height:40px;object-fit:contain;padding:5px;width:40px}.definition-info{flex:1 1}.definition-info h4{color:#333;font-size:16px;margin:0 0 4px}.definition-id{background:#f0f0f0;border-radius:3px;color:#666;display:inline-block;font-family:monospace;font-size:12px;padding:2px 6px}.definition-actions{display:flex;gap:5px}.definition-actions .btn-icon{background:#0000;border:none;padding:6px}.definition-actions .btn-icon:hover{background:#f0f0f0}.definition-actions .btn-icon.danger{color:#dc3545}.definition-actions .btn-icon.danger:hover{background:#fff5f5}.definition-desc{color:#666;font-size:14px;line-height:1.4;margin:0 0 12px}.definition-meta{color:#666;display:flex;font-size:12px;gap:15px}.meta-item{align-items:center;background:#f8f9fa;border-radius:4px;display:flex;gap:4px;padding:4px 8px}@media (max-width:768px){.resource-definition-manager{padding:10px}.manager-header{align-items:stretch;flex-direction:column;gap:15px}.manager-actions{flex-direction:column;gap:10px}.manager-actions>*{justify-content:center;width:100%}.definition-form{margin:10px;max-height:85vh;max-width:95%;width:95%}.form-header{padding:15px}.form-header h3{font-size:18px}.form-grid{gap:15px;grid-template-columns:1fr;padding:15px}.form-field.full-width{grid-column:1}.form-actions{flex-direction:column-reverse;padding:15px}.form-actions button{justify-content:center;width:100%}.image-picker{max-height:85vh;width:95%}.image-grid,.picker-header{padding:15px}.image-grid{gap:10px;grid-template-columns:repeat(auto-fill,minmax(80px,1fr))}.image-option img{height:60px}.image-name{font-size:10px}.definitions-grid{gap:15px;grid-template-columns:1fr}.definition-card{padding:12px}.definition-header{flex-wrap:wrap}.definition-meta{flex-wrap:wrap;gap:8px}.meta-item{font-size:11px;padding:3px 6px}.definition-close-button,.resource-definition-manager .btn-icon{min-height:44px;min-width:44px}}@media (max-width:480px){.definition-form{border-radius:0;margin:0;max-height:100vh;max-width:100%;width:100%}.form-actions,.form-grid,.form-header{padding:10px}.image-picker{border-radius:0;max-height:100vh;width:100%}.image-grid{grid-template-columns:repeat(3,1fr)}}.resource-defaults-manager{margin:0 auto;max-width:1400px;padding:20px}.resource-defaults-manager .header{margin-bottom:30px}.resource-defaults-manager h2{color:#333;font-size:24px;margin-bottom:10px}.resource-defaults-manager .subtitle{color:#666;font-size:14px;margin:0}.resource-defaults-manager .message{border-radius:4px;font-size:14px;margin-bottom:20px;padding:12px 20px}.resource-defaults-manager .message.success{background-color:#d4edda;border:1px solid #c3e6cb;color:#155724}.resource-defaults-manager .message.error{background-color:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.resource-defaults-manager .loading{color:#666;padding:40px;text-align:center}.resource-defaults-manager .table-container{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;overflow:hidden}.resource-defaults-manager .resources-table{border-collapse:collapse;width:100%}.resource-defaults-manager .resources-table th{background-color:#f8f9fa;border-bottom:2px solid #dee2e6;color:#495057;font-size:13px;font-weight:600;padding:12px;text-align:left;text-transform:uppercase}.resource-defaults-manager .resources-table td{border-bottom:1px solid #dee2e6;padding:12px;vertical-align:middle}.resource-defaults-manager .resources-table tbody tr:hover{background-color:#f8f9fa}.resource-defaults-manager .resource-name{align-items:center;display:flex;gap:10px}.resource-defaults-manager .resource-logo-small{height:24px;object-fit:contain;width:24px}.resource-defaults-manager .service-name{color:#666;font-size:13px}.resource-defaults-manager .url-display{align-items:center;display:flex;gap:6px}.resource-defaults-manager .url-icon{flex-shrink:0}.resource-defaults-manager .url-icon.external{color:#06c}.resource-defaults-manager .url-icon.file{color:#666}.resource-defaults-manager .url-text{color:#333;font-size:13px;max-width:250px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.resource-defaults-manager .not-configured{color:#999;font-size:13px;font-style:italic}.resource-defaults-manager .url-input{border:1px solid #ced4da;border-radius:4px;font-size:13px;padding:6px 10px;transition:border-color .15s ease-in-out;width:100%}.resource-defaults-manager .url-input:focus{border-color:#4caf50;outline:none}.resource-defaults-manager .url-input:disabled{background-color:#f8f9fa;cursor:not-allowed}.resource-defaults-manager .actions{text-align:center}.resource-defaults-manager .btn-icon{background:none;border:none;border-radius:4px;color:#666;cursor:pointer;margin:0 2px;padding:6px;transition:all .2s}.resource-defaults-manager .btn-icon:hover{background-color:#f0f0f0}.resource-defaults-manager .btn-icon.edit:hover{color:#06c}.resource-defaults-manager .btn-icon.save{color:#28a745}.resource-defaults-manager .btn-icon.save:hover{background-color:#28a74520}.resource-defaults-manager .btn-icon.cancel{color:#dc3545}.resource-defaults-manager .btn-icon.cancel:hover{background-color:#dc354520}.resource-defaults-manager .btn-icon:disabled{cursor:not-allowed;opacity:.5}.resource-defaults-manager .configuration-notes{background-color:#f8f9fa;border:1px solid #dee2e6;border-radius:8px;margin-top:30px;padding:20px}.resource-defaults-manager .configuration-notes h3{color:#333;font-size:16px;margin-bottom:15px;margin-top:0}.resource-defaults-manager .configuration-notes ul{margin:0;padding-left:20px}.resource-defaults-manager .configuration-notes li{color:#666;font-size:13px;margin-bottom:8px}@media (max-width:768px){.resource-defaults-manager{padding:10px}.resource-defaults-manager .header{margin-bottom:20px}.resource-defaults-manager h2{font-size:20px}.resource-defaults-manager .subtitle{font-size:13px}.resource-defaults-manager .table-container{-webkit-overflow-scrolling:touch;overflow-x:auto}.resource-defaults-manager .resources-table{min-width:600px}.resource-defaults-manager .resources-table th{font-size:12px;padding:10px}.resource-defaults-manager .resources-table td{font-size:13px;padding:10px}.resource-defaults-manager .resources-table td:nth-child(2),.resource-defaults-manager .resources-table th:nth-child(2){display:none}.resource-defaults-manager .url-input{font-size:16px;padding:8px 10px}.resource-defaults-manager .url-text{max-width:150px}.resource-defaults-manager .btn-icon{align-items:center;display:inline-flex;justify-content:center;min-height:44px;min-width:44px;padding:10px}.resource-defaults-manager .configuration-notes{margin-top:20px;padding:15px}.resource-defaults-manager .configuration-notes h3{font-size:14px}.resource-defaults-manager .configuration-notes li{font-size:12px}}@media (max-width:480px){.resource-defaults-manager{padding:5px}.resource-defaults-manager h2{font-size:18px;margin-bottom:5px}.resource-defaults-manager .message{font-size:13px;padding:10px 15px}.resource-defaults-manager .table-container{background:#0000;box-shadow:none}.resource-defaults-manager .resources-table{display:block;min-width:0;min-width:auto}.resource-defaults-manager .resources-table thead{display:none}.resource-defaults-manager .resources-table tbody{display:block}.resource-defaults-manager .resources-table tr{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;display:block;margin-bottom:10px;padding:15px}.resource-defaults-manager .resources-table td{border:none;display:block;padding:5px 0}.resource-defaults-manager .resources-table td:first-child{border-bottom:1px solid #e0e0e0;font-weight:600;margin-bottom:10px;padding-bottom:10px}.resource-defaults-manager .resources-table td:nth-child(2){display:none}.resource-defaults-manager .resources-table td:nth-child(3){padding:10px 0}.resource-defaults-manager .resources-table td:nth-child(3):before{color:#666;content:"URL: ";font-size:12px;font-weight:600}.resource-defaults-manager .resources-table td:nth-child(4){border-top:1px solid #e0e0e0;padding-top:10px;text-align:right}.resource-defaults-manager .url-display{align-items:flex-start;flex-direction:column;gap:8px}.resource-defaults-manager .url-text{max-width:100%;white-space:normal;word-break:break-all}.resource-defaults-manager .url-input{width:100%}.resource-defaults-manager .configuration-notes{margin-top:15px;padding:12px}.resource-defaults-manager .configuration-notes h3{font-size:13px;margin-bottom:10px}.resource-defaults-manager .configuration-notes ul{padding-left:15px}}.cosmos-monitoring{margin:0 auto;max-width:1400px;padding:20px}.monitoring-header{align-items:flex-start;display:flex;gap:20px;justify-content:space-between;margin-bottom:30px}.monitoring-header h2{align-items:center;color:#333;display:flex;margin:0 0 10px}.monitoring-description{color:#666;font-size:14px;margin:0;max-width:600px}.config-form-container{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;margin-bottom:30px;padding:0}.config-form-header{align-items:center;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;padding:20px}.config-form-header h3{color:#333;margin:0}.config-form{padding:20px}.configs-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));margin-bottom:30px}.config-card{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;padding:20px;transition:transform .2s,box-shadow .2s}.config-card:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.config-card.disabled{background:#f9f9f9;opacity:.6}.config-card-header{align-items:flex-start;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;margin-bottom:15px;padding-bottom:15px}.config-name{align-items:center;display:flex;gap:10px}.config-name h3{color:#333;font-size:18px;margin:0}.status-icon{display:inline-block}.status-icon.status-success{color:#28a745}.status-icon.status-error{color:#dc3545}.status-icon.status-pending{color:#ffc107}.config-details{margin-bottom:15px}.config-detail-row{display:flex;font-size:14px;justify-content:space-between;margin-bottom:8px}.config-detail-row .label{color:#666;font-weight:500}.config-detail-row .value{color:#333;text-align:right}.config-detail-row .value.code{background:#f5f5f5;border-radius:3px;font-family:Courier New,monospace;font-size:12px;padding:2px 6px}.config-detail-row.error .value{color:#dc3545;font-size:12px}.config-actions{border-top:1px solid #e0e0e0;display:flex;gap:8px;padding-top:15px}.config-actions .btn{align-items:center;display:flex;flex:1 1;gap:6px;justify-content:center}.monitoring-info{background:#f8f9fa;border-left:4px solid #667eea;border-radius:6px;margin-top:30px;padding:20px}.monitoring-info h4{color:#333;margin:0 0 15px}.monitoring-info ul{color:#666;margin:0;padding-left:20px}.monitoring-info li{line-height:1.6;margin-bottom:10px}.monitoring-info strong{color:#333}.error-message{background:#f8d7da;border:1px solid #f5c6cb;color:#721c24;padding:15px 20px}@media (max-width:768px){.monitoring-header{align-items:stretch;flex-direction:column}.configs-grid{grid-template-columns:1fr}}.quote-form-modal-wrapper{background:#fff;border-radius:8px;display:flex;flex-direction:column;height:85vh;max-width:1200px;min-width:900px;overflow:hidden;position:relative;width:auto}.quote-form-header{align-items:center;background:#fff;border-bottom:1px solid #e5e7eb;display:flex;flex-shrink:0;justify-content:space-between;padding:20px 24px}.quote-form-header h2{color:#111827;font-size:20px;font-weight:600;margin:0}.close-button{color:#6b7280;padding:4px;transition:all .2s}.close-button:hover{background-color:#f3f4f6;color:#111827}.quote-form{display:flex;flex:1 1;flex-direction:column;min-height:0;overflow-y:auto;padding:16px 16px 80px}.quote-form .form-section{margin-bottom:12px;padding-bottom:12px}.quote-form .form-section h3{color:#111827;font-size:15px;font-weight:600;margin:0 0 8px}.quote-form .form-group{margin-bottom:8px;position:relative}.quote-form .form-group label{font-size:13px;margin-bottom:4px}.required{color:#ef4444}.quote-form .form-group input[type=email],.quote-form .form-group input[type=number],.quote-form .form-group input[type=tel],.quote-form .form-group input[type=text],.quote-form .form-group select,.quote-form .form-group textarea{padding:6px 10px}.quote-form .form-group input.error,.quote-form .form-group select.error,.quote-form .form-group textarea.error{border-color:#ef4444}.quote-form .form-group textarea{min-height:50px}.error-text{color:#ef4444}.char-count,.error-text{display:block;font-size:12px;margin-top:4px}.char-count{color:#9ca3af;text-align:right}.quote-form .form-row{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr;margin-bottom:0}.checkbox-label{font-weight:400}.checkbox-label input[type=checkbox]{width:auto}.cc-email-row{align-items:flex-start;display:flex;gap:8px;margin-bottom:6px}.cc-email-row input{flex:1 1}.cc-emails-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr}.cost-item{background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:4px;margin-bottom:8px;padding:10px}.cost-item-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:6px}.cost-item-header h4{color:#111827;font-size:13px;font-weight:600;margin:0}.subtotal-display{align-items:center;background-color:#f3f4f6;border:1px solid #d1d5db;border-radius:4px;color:#111827;display:flex;font-size:14px;font-weight:600;height:32px;padding:6px 10px}.total-section{border-top:2px solid #e5e7eb;margin-top:12px;padding-top:10px}.total-row{align-items:center;display:flex;justify-content:space-between}.total-label{color:#111827;font-size:18px;font-weight:600}.total-amount{color:#111827;font-size:24px;font-weight:700}.quote-form .form-actions{background:#fff;border-top:1px solid #e5e7eb;bottom:0;display:flex;gap:10px;justify-content:flex-end;left:0;padding:16px 24px;position:absolute;right:0;z-index:10}.quote-form .btn-primary{align-items:center;background-color:#3b82f6;border:none;border-radius:6px;color:#fff;cursor:pointer;display:inline-flex;font-size:14px;font-weight:500;gap:6px;padding:10px 20px;transition:background-color .2s}.quote-form .btn-primary:hover:not(:disabled){background-color:#2563eb}.quote-form .btn-primary:disabled{cursor:not-allowed;opacity:.6}.quote-form .btn-secondary{align-items:center;background-color:#fff;border:1px solid #d1d5db;border-radius:6px;color:#374151;cursor:pointer;display:inline-flex;font-size:14px;font-weight:500;gap:6px;padding:10px 20px;transition:all .2s}.quote-form .btn-secondary:hover:not(:disabled){background-color:#f9fafb;border-color:#9ca3af}.quote-form .btn-secondary:disabled{cursor:not-allowed;opacity:.5}.quote-form .btn-small{font-size:13px;padding:6px 12px}.checkbox-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.checkbox-group{display:flex;flex-direction:column}.autocomplete-dropdown{background:#fff;border:1px solid #d1d5db;border-radius:6px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;left:0;margin-top:4px;max-height:300px;overflow-y:auto;position:absolute;right:0;top:100%;z-index:1000}.autocomplete-item{border-bottom:1px solid #f3f4f6;cursor:pointer;padding:12px 16px;transition:background-color .15s}.autocomplete-item:last-child{border-bottom:none}.autocomplete-item:hover{background-color:#f9fafb}.autocomplete-name{color:#111827;font-weight:500;margin-bottom:4px}.autocomplete-email,.autocomplete-loading{color:#6b7280;font-size:14px}.autocomplete-loading{background:#fff;border:1px solid #d1d5db;border-radius:6px;left:0;margin-top:4px;padding:12px 16px;position:absolute;right:0;top:100%;z-index:1000}.toggle-switch-label{font-weight:400;gap:12px}.toggle-text-container{display:flex;flex-direction:column;gap:2px}.toggle-text-container .toggle-label-text{color:#111827;font-size:14px;font-weight:500}.toggle-text-container .toggle-description{color:#6b7280;font-size:12px;margin:0}@media (max-width:768px){.quote-detail-modal-wrapper,.quote-form-modal-wrapper{border-radius:0!important;height:100vh!important;max-height:100vh!important;max-width:100vw!important;min-width:0!important;min-width:auto!important;width:100vw!important}.quote-form .form-row{grid-template-columns:1fr}.quote-form,.quote-form-header{padding:16px}.cc-emails-grid,.checkbox-row{grid-template-columns:1fr}}.workflow-visualization{background:#fff;border-radius:8px;margin-bottom:16px;padding:0}.workflow-toggle-header{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:8px;color:#111827;cursor:pointer;display:flex;font-size:14px;font-weight:600;justify-content:space-between;padding:12px 16px;transition:all .2s ease;width:100%}.workflow-toggle-header:hover{background:#f9fafb;border-color:#d1d5db}.workflow-toggle-title{align-items:center;display:flex;gap:8px}.workflow-toggle-chevron{color:var(--text-muted);transition:transform .3s ease}.workflow-toggle-chevron.expanded{transform:rotate(90deg)}.workflow-progress-container{background:#fff;border:1px solid #e5e7eb;border-radius:0 0 8px 8px;border-top:none;margin-top:8px;padding:20px 16px;position:relative}.workflow-phases{align-items:center;display:flex;justify-content:space-between;position:relative;z-index:2}.workflow-progress-bar{background:var(--border-color);border-radius:2px;height:4px;left:0;position:absolute;right:0;top:50%;transform:translateY(-50%);z-index:1}.workflow-progress-fill{background:var(--success-color);border-radius:2px;height:100%;transition:width .5s ease}.workflow-phase{align-items:center;display:flex;flex-direction:column;gap:8px;position:relative;transition:transform .2s ease}.workflow-phase.clickable{cursor:pointer}.workflow-phase.clickable:hover{transform:scale(1.1)}.workflow-phase.clickable:focus{border-radius:4px;outline:2px solid var(--primary-color);outline-offset:4px}.phase-icon-container{align-items:center;background:var(--background-color);border:2px solid var(--border-color);border-radius:50%;display:flex;height:40px;justify-content:center;transition:all .3s ease;width:40px}.workflow-phase.completed .phase-icon-container{background:var(--success-color);border-color:var(--success-color)}.workflow-phase.current .phase-icon-container{background:var(--primary-color);border-color:var(--primary-color);box-shadow:0 0 0 4px #3b82f633}.workflow-phase.future .phase-icon-container{background:var(--background-color);border-color:var(--border-color)}.workflow-phase.rejected .phase-icon-container{background:var(--danger-color);border-color:var(--danger-color)}.phase-icon-completed,.phase-icon-current{stroke-width:2;color:#fff}.phase-icon-future{color:#9ca3af;opacity:.6}.phase-icon-rejected{stroke-width:2;color:#fff}.phase-label{word-wrap:break-word;color:var(--text-color);font-size:12px;font-weight:500;max-width:80px;text-align:center}.workflow-phase.future .phase-label{color:var(--text-muted)}.workflow-phase.completed .phase-label{color:var(--success-color);font-weight:600}.workflow-phase.current .phase-label{color:var(--primary-color);font-weight:600}.workflow-phase.rejected .phase-label{color:var(--danger-color);font-weight:600}.workflow-connector{align-items:center;color:var(--border-color);display:flex;flex:1 1;justify-content:center;margin:0 -8px;transition:color .3s ease}.workflow-connector.completed{color:var(--success-color)}.phase-tooltip{background:#1a1a1a;border:1px solid #ffffff1a;border-radius:8px;bottom:-100px;box-shadow:0 8px 24px #0000004d;color:#fff;min-width:180px;padding:12px 16px;pointer-events:none;z-index:10}.phase-tooltip,.phase-tooltip:after{left:50%;position:absolute;transform:translateX(-50%)}.phase-tooltip:after{border-bottom:7px solid #1a1a1a;border-left:7px solid #0000;border-right:7px solid #0000;content:"";height:0;top:-7px;width:0}.tooltip-title{color:#fff;font-size:14px;font-weight:600;margin-bottom:6px}.tooltip-description{color:#e0e0e0;font-size:12px;line-height:1.4;margin-bottom:8px}.tooltip-action{color:#60a5fa;font-size:11px;font-style:italic;font-weight:500}.workflow-rejected-banner{align-items:center;background:#ef44441a;border:1px solid var(--danger-color);border-radius:6px;color:var(--danger-color);display:flex;font-size:14px;font-weight:500;gap:8px;margin-top:16px;padding:12px 16px}.workflow-history-section{border-top:1px solid var(--border-color);margin-top:24px;padding-top:16px}.workflow-history-toggle{align-items:center;background:#0000;border:none;border-radius:6px;color:var(--text-color);cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;padding:8px 12px;text-align:left;transition:background .2s ease;width:100%}.workflow-history-toggle:hover{background:var(--hover-bg)}.history-chevron{margin-left:auto;transition:transform .3s ease}.history-chevron.expanded{transform:rotate(90deg)}.workflow-history-content{background:var(--secondary-bg);border-radius:6px;margin-top:12px;max-height:300px;overflow-y:auto;padding:12px}.history-entry{border-bottom:1px solid var(--border-color);font-size:13px;padding:12px}.history-entry:last-child{border-bottom:none}.history-timestamp{color:var(--text-muted);font-size:12px;margin-bottom:4px}.history-transition{font-weight:600}.history-actor,.history-transition{color:var(--text-color);margin-bottom:4px}.history-actor{font-size:12px}.history-notes{border-left:2px solid var(--border-color);color:var(--text-muted);font-size:12px;font-style:italic;margin-top:4px;padding-left:12px}.workflow-admin-hint{background:#3b82f61a;border:1px solid #3b82f64d;border-radius:6px;color:var(--primary-color);font-size:13px;margin-top:16px;padding:8px 12px;text-align:center}@media (max-width:768px){.workflow-visualization{padding:16px}.workflow-phases{flex-wrap:wrap;gap:16px;justify-content:center}.workflow-connector,.workflow-progress-bar{display:none}.phase-label{font-size:11px;max-width:60px}.phase-icon-container{height:36px;width:36px}.phase-tooltip{font-size:12px;min-width:140px}}@media (max-width:480px){.workflow-visualization{padding:12px}.phase-icon-container{height:32px;width:32px}.phase-label{font-size:10px}.workflow-history-toggle{font-size:13px}.workflow-admin-hint{font-size:12px}}.quote-detail-modal-wrapper{background:#fff;border-radius:8px;display:flex;flex-direction:column;height:85vh;max-width:1000px;min-width:700px;overflow:hidden;position:relative;width:auto}@media (max-width:768px){.quote-detail-modal-wrapper{border-radius:0!important;bottom:0!important;height:100vh!important;left:0!important;margin:0!important;max-height:100vh!important;max-width:100vw!important;min-width:0!important;min-width:auto!important;position:fixed!important;right:0!important;top:0!important;width:100vw!important}}.quote-detail-header{align-items:center;background:#fff;border-bottom:1px solid #e5e7eb;display:flex;flex-shrink:0;justify-content:space-between;padding:20px 24px}.header-title h2{color:#111827;font-size:20px;font-weight:600;margin:0 0 4px}.quote-id{color:#6b7280;font-family:monospace;font-size:13px}.quote-detail-content{flex:1 1;min-height:0;overflow-y:auto;padding:12px}.detail-section{border-bottom:1px solid #e5e7eb;margin-bottom:12px;padding-bottom:12px}.detail-section:last-child{border-bottom:none}.status-section{align-items:center;background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;display:flex;justify-content:space-between;padding:10px}.status-badge{display:flex;gap:8px}.amount-badge{align-items:center;display:flex;gap:6px}.amount-badge .amount{color:#111827;font-size:24px;font-weight:700}.status-label{font-size:14px;font-weight:600;padding:4px 12px;text-transform:uppercase}.status-icon.status-pending,.status-label.status-pending_generation{background-color:#fef3c7;color:#f59e0b}.status-icon.status-draft,.status-label.status-draft{background-color:#e0e7ff;color:#6366f1}.status-icon.status-generated,.status-label.status-generated{background-color:#fef3c7;color:#f59e0b}.status-icon.status-approved,.status-label.status-approved{background-color:#d1fae5;color:#10b981}.status-icon.status-rejected,.status-label.status-rejected{background-color:#fee2e2;color:#ef4444}.status-icon.status-ordered,.status-label.status-ordered{background-color:#dbeafe;color:#3b82f6}.status-icon.status-shipped,.status-label.status-shipped{background-color:#e0f2fe;color:#0ea5e9}.status-icon.status-delivered,.status-label.status-delivered{background-color:#d1fae5;color:#10b981}.detail-section h3{color:#111827;font-size:16px;margin:0 0 8px}.detail-section h4{color:#111827;font-size:15px}.description{color:#374151;font-size:14px;line-height:1.6;margin:0;white-space:pre-wrap}.info-grid{grid-gap:6px;gap:6px}.info-item{grid-gap:4px;align-items:center;display:grid;font-size:13px;gap:4px;grid-template-columns:auto auto 1fr}.info-item.full-width{grid-column:1/-1}.info-item svg{color:#6b7280;flex-shrink:0}.info-label{color:#6b7280;font-weight:500}.info-value{color:#111827}.costs-table{border-radius:6px}.costs-header{border-bottom:1px solid #e5e7eb;color:#374151;font-size:12px;padding:8px 12px}.cost-row{font-size:13px;padding:8px 12px}.cost-description{color:#111827}.cost-subtotal{color:#111827;font-weight:500;text-align:right}.costs-total{grid-gap:12px;background-color:#f9fafb;border-top:2px solid #e5e7eb;display:grid;font-size:15px;font-weight:600;gap:12px;grid-template-columns:1fr auto;padding:8px 12px}.costs-total .total-amount{color:#111827;text-align:right}.timeline{display:flex;flex-direction:column;gap:6px}.timeline-item{grid-gap:4px;align-items:center;display:grid;font-size:13px;grid-template-columns:auto auto 1fr}.timeline-item svg{color:#6b7280}.timeline-label{color:#6b7280;font-weight:500}.timeline-value{color:#111827}.text-green{color:#10b981!important}.text-red{color:#ef4444!important}.text-blue{color:#3b82f6!important}.text-orange{color:#f59e0b!important}.text-purple{color:#9c27b0!important}.text-warning{color:#ff9800!important}.tracking-section{background-color:#fff9e6;border-left:4px solid #ffc107}.tracking-section h4{align-items:center;color:#f57c00;display:flex;gap:8px}.tracking-info{display:flex;flex-direction:column;gap:1rem}.tracking-header{align-items:center;background-color:#fff;border:1px solid #ffc107;border-radius:4px;display:flex;justify-content:space-between;padding:12px}.tracking-number{font-size:16px}.tracking-link{align-items:center;color:#0078d4;display:flex;font-weight:500;gap:4px;text-decoration:none}.tracking-link:hover{text-decoration:underline}.tracking-status{background-color:#fff;border-radius:4px;padding:12px}.tracking-auto{color:#4caf50}.tracking-auto,.tracking-manual{align-items:center;display:flex;gap:8px}.tracking-manual{color:#ff9800}.tracking-detail{color:#666;font-size:14px;margin-top:8px;padding-left:24px}.delivery-notes{background-color:#f5f5f5;border-radius:4px;font-size:14px;padding:12px}.actions-section{background:#fff;border-bottom:none;border-top:1px solid #e5e7eb;flex-shrink:0;margin-bottom:0;padding:16px 20px}.action-buttons{gap:12px;justify-content:flex-end}.btn-success{align-items:center;background-color:#10b981;border:none;border-radius:6px;cursor:pointer;display:inline-flex;font-size:14px;font-weight:500;gap:6px;padding:10px 20px;transition:background-color .2s}.btn-success:hover:not(:disabled){background-color:#059669}.btn-success:disabled{cursor:not-allowed;opacity:.6}.btn-danger{align-items:center;background-color:#ef4444;border:none;border-radius:6px;cursor:pointer;display:inline-flex;font-size:14px;font-weight:500;gap:6px;padding:10px 20px;transition:background-color .2s}.btn-danger:hover:not(:disabled){background-color:#dc2626}.btn-danger:disabled{cursor:not-allowed;opacity:.6}.error-banner{align-items:center;background-color:#fee2e2;border-radius:6px;color:#991b1b;display:flex;font-size:14px;gap:8px;margin-bottom:12px;padding:10px 12px}@media (max-width:768px){.quote-detail-modal{border-radius:0;max-height:100vh;max-width:100%}.quote-detail-header{padding:16px}.header-title h2{font-size:18px}.quote-detail-content{padding:16px}.detail-section{margin-bottom:20px;padding-bottom:20px}.detail-section h3{font-size:16px}.detail-section h4{font-size:15px;margin-bottom:12px}.status-section{align-items:flex-start;flex-direction:column;gap:12px;padding:12px}.amount-badge .amount{font-size:20px}.info-grid{gap:10px;grid-template-columns:1fr}.info-item{display:flex;flex-direction:column;gap:4px}.info-item svg{align-self:flex-start}.info-label{font-weight:600;margin-bottom:2px}.info-value{word-break:break-word}.costs-header{display:none}.cost-row{border-bottom:1px solid #e5e7eb;display:flex;flex-direction:column;gap:4px;padding:12px}.cost-row>span{display:flex;justify-content:space-between}.cost-row>span:before{color:#6b7280;content:attr(data-label);font-weight:500}.cost-description{font-weight:500}.costs-total{font-size:14px;padding:12px}.timeline-item{display:flex;flex-direction:column;gap:4px;padding:8px 0}.timeline-item svg{align-self:flex-start}.timeline-label{font-weight:600}.timeline-value{word-break:break-word}.action-buttons{flex-direction:column}.btn-danger,.btn-success,.btn-warning{justify-content:center;width:100%}}.quote-list-container{margin:0 auto;max-width:1400px;padding:20px}.quote-list-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.quote-list-header h2{color:#111827;flex:1 1;font-size:24px;font-weight:600;margin:0;min-width:0}.quote-controls{align-items:center;display:flex;gap:12px;margin-bottom:24px}.quote-controls .search-box{flex:1 1;min-width:200px}.quote-controls .filter-select{min-width:140px}.filters{display:flex;gap:8px}.quotes-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.quote-card,.quotes-grid{box-sizing:border-box;width:100%}.quote-card{word-wrap:break-word;border:1px solid #e0e0e0;border-radius:8px;overflow:hidden;overflow-wrap:break-word;padding:16px;transition:box-shadow .2s}.quote-card:hover{box-shadow:0 4px 12px #0000001a}.quote-card-header{align-items:center;border-bottom:1px solid #f0f0f0;display:flex;justify-content:space-between;margin-bottom:12px;padding-bottom:12px}.quote-status{align-items:center;display:flex;gap:6px}.status-icon{flex-shrink:0}.status-label{border-radius:4px;font-size:13px;font-weight:500;padding:4px 8px}.status-approved,.status-label.status-approved{background-color:#d1fae5;color:#10b981}.status-label.status-rejected,.status-rejected{background-color:#fee2e2;color:#ef4444}.status-generated,.status-label.status-generated{background-color:#fef3c7;color:#f59e0b}.status-label.status-purchased,.status-purchased{background-color:#dbeafe;color:#3b82f6}.status-label.status-pending,.status-pending{background-color:#f3f4f6;color:#6b7280}.status-expired,.status-label.status-expired{background-color:#f3f4f6;color:#9ca3af}.status-label.status-returned,.status-returned{background-color:#fef3c7;color:#f59e0b}.status-billed,.status-label.status-billed{background-color:#e0f2fe;color:#0369a1}.status-draft,.status-label.status-draft{background-color:#e0e7ff;color:#6366f1}.status-label.status-shipped,.status-shipped{background-color:#9c27b0;color:#fff}.status-icon.status-shipped{color:#9c27b0}.status-delivered,.status-label.status-delivered{background-color:#4caf50;color:#fff}.status-icon.status-delivered{color:#4caf50}.status-completed,.status-label.status-completed{background-color:#4caf50;color:#fff}.status-icon.status-completed{color:#4caf50}.quote-amount{align-items:center;color:#111827;display:flex;font-size:18px;font-weight:600;gap:4px}.quote-card-body h3{color:#111827;font-size:16px;font-weight:600;margin:0 0 8px}.quote-description{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#6b7280;display:-webkit-box;font-size:14px;margin:0 0 12px;overflow:hidden}.quote-meta{color:#6b7280;display:flex;flex-direction:column;font-size:13px;gap:4px}.quote-meta-item strong{color:#374151;font-weight:500}.quote-card-footer{border-top:1px solid #f0f0f0;margin-top:12px;padding-top:12px}.card-footer-actions{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.no-quotes{color:#6b7280;padding:60px 20px;text-align:center}.no-quotes p{font-size:16px;margin-bottom:20px}.quote-list-container .loading{font-size:16px;padding:40px 20px;text-align:center}.quote-table-container{background:#fff;border:1px solid #e0e0e0;border-radius:8px;box-shadow:0 2px 10px #0000001a;overflow:auto}.quote-table{border-collapse:collapse;font-size:14px;width:100%}.quote-table thead{background-color:#f9fafb;border-bottom:2px solid #e5e7eb}.quote-table thead th{color:#374151;font-weight:600;padding:12px 16px;text-align:left;white-space:nowrap}.quote-table thead th.sortable{-webkit-user-select:none;user-select:none}.quote-table thead th.sortable:hover{background-color:#f3f4f6;color:#111827}.quote-table tbody tr{border-bottom:1px solid #f3f4f6;transition:background-color .15s}.quote-table tbody tr:hover{background-color:#f9fafb}.quote-table tbody tr:last-child{border-bottom:none}.quote-table tbody td{color:#111827;padding:12px 16px;vertical-align:middle}.quote-table tbody td.quote-summary{font-weight:500}.quote-table tbody td.actions{white-space:nowrap}.quote-list-container .pagination-controls{align-items:center;background:#fff;border:1px solid #e0e0e0;border-radius:8px;display:flex;gap:16px;justify-content:space-between;margin-bottom:20px;padding:16px}.items-per-page{align-items:center;display:flex;gap:8px;white-space:nowrap}.items-per-page label{color:#6b7280;font-size:14px;font-weight:500}.items-per-page-select{background-color:#fff;border:1px solid #d1d5db;border-radius:4px;cursor:pointer;font-family:inherit;font-size:14px;padding:6px 8px;transition:border-color .2s}.items-per-page-select:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}@media (max-width:768px){.quote-list-container{padding:12px}.quote-list-header{align-items:stretch;flex-direction:column;gap:12px;margin-bottom:12px}.quote-list-header h2{font-size:20px;margin:0}.header-actions{align-items:stretch;display:flex;flex-direction:column;gap:8px}.header-actions button{justify-content:center;width:100%}.view-mode-toggle{display:flex!important;gap:8px!important;width:100%}.view-mode-toggle button{flex:1 1;min-width:0}.quote-controls{align-items:stretch}.filters,.quote-controls{flex-direction:column;gap:8px}.quote-table-container{-webkit-overflow-scrolling:touch;border-radius:5px;overflow-x:auto}.quote-table{min-width:800px}.quote-table td,.quote-table th{font-size:13px;padding:10px}.quotes-grid{gap:12px;grid-template-columns:1fr;width:100%}.quote-card{box-sizing:border-box;min-width:0;padding:12px;width:100%}.quote-card .quote-description,.quote-card .quote-meta-item,.quote-card h3{overflow-wrap:break-word;word-break:break-word}.card-footer-actions{justify-content:flex-end}.quote-list-container .pagination-controls{align-items:stretch;flex-direction:column;gap:12px;padding:12px}.items-per-page{justify-content:center}.items-per-page label{font-size:13px}.items-per-page-select{padding:8px 12px}}.billing-detail-container{display:flex;flex-direction:column;height:100%;max-height:100%;min-height:0;overflow:hidden}.billing-detail-loading{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:60px 20px}.billing-detail-loading .loading-spinner{animation:billing-detail-spin 1s linear infinite;border:3px solid #e0e0e0;border-radius:50%;border-top-color:#007bff;height:40px;margin-bottom:16px;width:40px}@keyframes billing-detail-spin{to{transform:rotate(1turn)}}.billing-detail-error{align-items:center;color:#dc3545;display:flex;flex-direction:column;justify-content:center;padding:60px 20px;text-align:center}.btn-close-error{background:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;margin-top:20px;padding:10px 24px}.btn-close-error:hover{background:#0056b3}.billing-detail-header{align-items:center;border-bottom:1px solid #e0e0e0;display:flex;flex-shrink:0;justify-content:space-between;padding:24px}.detail-header-left{align-items:center;display:flex;gap:16px}.billing-detail-header h2{align-items:center;color:#333;display:flex;font-size:24px;margin:0}.invoice-status-badge{align-items:center;border-radius:20px;display:flex;font-size:14px;font-weight:500;gap:8px;padding:8px 16px}.invoice-status-badge.status-paid{background:#d4edda;color:#155724}.invoice-status-badge.status-sent{background:#d1ecf1;color:#0c5460}.invoice-status-badge.status-void{background:#f8d7da;color:#721c24}.btn-close-modal{align-items:center;background:#0000;border:none;border-radius:4px;color:#666;cursor:pointer;display:flex;justify-content:center;padding:8px;transition:background .2s,color .2s}.btn-close-modal:hover{background:#f8f9fa;color:#333}.billing-detail-body{flex:1 1;min-height:0;overflow-y:auto;padding:24px}.detail-section{margin-bottom:24px}.detail-section h3{color:#333;font-size:18px;font-weight:600;margin-bottom:16px}.detail-row{align-items:center;border-bottom:1px solid #f0f0f0;padding:12px 0}.detail-row:last-child{border-bottom:none}.detail-label{align-items:center;display:flex;font-size:14px;gap:8px}.detail-value{color:#333;font-size:16px}.detail-amount{color:#007bff;font-size:24px;font-weight:600}.line-items-table{background:#f8f9fa;border-radius:8px;overflow-x:auto;padding:16px}.line-items-table table{border-collapse:collapse;width:100%}.line-items-table thead th{border-bottom:2px solid #dee2e6;color:#333;font-size:14px;font-weight:600;padding:12px;text-align:left}.line-items-table tbody td{border-bottom:1px solid #dee2e6;color:#333;font-size:14px;padding:12px}.line-items-table tbody tr:last-child td{border-bottom:none}.line-items-table .amount-column{font-weight:500;text-align:right}.line-items-table tfoot{border-top:2px solid #333}.line-items-table tfoot td{font-size:16px;padding:16px 12px 0}.total-row{font-weight:600}.detail-info-note{background:#e7f3ff;border-left:4px solid #007bff;border-radius:8px;padding:16px}.detail-info-note p{color:#004085;font-size:14px;margin:0}.btn-download-pdf{align-items:center;background:#28a745;border:none;border-radius:4px;color:#fff;cursor:pointer;display:inline-flex;font-size:14px;font-weight:500;gap:8px;padding:12px 24px;text-decoration:none;transition:background .2s}.btn-download-pdf:hover{background:#218838}.btn-download-pdf:disabled{background:#6c757d;cursor:not-allowed}.pdf-error{align-items:center;color:#dc3545;display:flex;font-size:14px;gap:8px;margin-top:12px}.detail-metadata{background:#f8f9fa;border-radius:8px;padding:16px}.metadata-row{display:flex;font-size:13px;justify-content:space-between;padding:8px 0}.metadata-label{color:#666;font-weight:500}.metadata-value{color:#333;font-family:monospace}.billing-detail-footer{background:#fff;border-top:1px solid #e0e0e0;display:flex;flex-shrink:0;gap:12px;justify-content:flex-end;padding:16px 24px}.btn-close{background:#6c757d;color:#fff;font-size:14px;padding:10px 24px;transition:background .2s}.btn-close:hover{background:#5a6268}@media (max-width:768px){.billing-detail-header,.detail-header-left{align-items:flex-start;flex-direction:column;gap:12px}.btn-close-modal{align-self:flex-end}.detail-row{align-items:flex-start;flex-direction:column;gap:8px}.detail-value{text-align:left;width:100%}.line-items-table{overflow-x:auto}.line-items-table table{min-width:400px}.billing-detail-footer{flex-direction:column}.billing-detail-footer button{width:100%}}.billing-container{margin:0 auto;max-width:1400px;padding:20px}.billing-access-denied{margin:0 auto;max-width:600px;padding:60px 20px;text-align:center}.access-denied-icon{color:#dc3545;margin-bottom:20px}.billing-access-denied h2{color:#333;font-size:24px;margin-bottom:16px}.billing-access-denied p{color:#666;line-height:1.6;margin-bottom:12px}.access-hint{background:#f8f9fa;border-left:4px solid #ffc107;border-radius:8px;margin-top:24px;padding:16px}.billing-loading{padding:60px 20px;text-align:center}.billing-loading .loading-spinner{animation:billing-spin 1s linear infinite;border:3px solid #e0e0e0;border-radius:50%;border-top-color:#007bff;height:40px;margin:0 auto 16px;width:40px}@keyframes billing-spin{to{transform:rotate(1turn)}}.billing-error{color:#dc3545;padding:60px 20px;text-align:center}.billing-error .btn-retry{background:#007bff;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;margin-top:16px;padding:10px 20px;transition:background .2s}.billing-error .btn-retry:hover{background:#0056b3}.billing-header{margin-bottom:24px}.billing-header-top{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.billing-header h1{align-items:center;color:#333;display:flex;font-size:28px;margin:0}.billing-view-toggle{display:flex;gap:8px}.billing-view-toggle button{align-items:center;background:#fff;border:1px solid #ddd;border-radius:4px;cursor:pointer;display:flex;justify-content:center;padding:8px 12px;transition:all .2s}.billing-view-toggle button:hover{background:#f8f9fa;border-color:#007bff}.billing-view-toggle button.active{background:#007bff;border-color:#007bff;color:#fff}.billing-summary{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:20px}.summary-stat{background:#fff;border:1px solid #e0e0e0;border-radius:8px;display:flex;flex-direction:column;gap:8px;padding:16px}.stat-label{color:#666;font-size:14px;font-weight:500}.stat-value{color:#333;font-size:24px;font-weight:600}.stat-paid{color:#28a745}.stat-sent{color:#007bff}.stat-void{color:#dc3545}.billing-filters{display:flex;flex-wrap:wrap;gap:12px}.billing-filters .search-input{flex:1 1;min-width:200px}.billing-filters .filter-select{min-width:140px}.ticket-link{border-bottom:1px dotted #007bff;color:#007bff;transition:color .2s,border-color .2s}.ticket-link:hover{border-bottom-color:#0056b3;color:#0056b3}.btn-collapse-items,.btn-expand-items{background:none;border:none;color:#007bff;cursor:pointer;display:inline-block;font-size:12px;margin-top:8px;padding:4px 8px;text-decoration:underline;transition:color .2s}.btn-collapse-items:hover,.btn-expand-items:hover{color:#0056b3}.btn-collapse-items-table,.btn-expand-items-table{background:none;border:none;color:#007bff;cursor:pointer;display:inline-block;font-size:11px;margin-top:6px;padding:2px 6px;text-decoration:underline;transition:color .2s}.btn-collapse-items-table:hover,.btn-expand-items-table:hover{color:#0056b3}.billing-empty{color:#666;padding:60px 20px;text-align:center}.billing-cards{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));margin-top:20px}.invoice-card{background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:20px;transition:box-shadow .2s,transform .2s}.invoice-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.invoice-card-header{align-items:center;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;margin-bottom:16px;padding-bottom:12px}.invoice-number{color:#333;font-size:18px;font-weight:600}.invoice-number.clickable{cursor:pointer;transition:color .2s}.invoice-number.clickable:hover{color:#007bff}.invoice-status{align-items:center;border-radius:20px;display:flex;font-size:13px;font-weight:500;gap:6px;padding:6px 12px}.invoice-status.status-paid{background:#d4edda;color:#155724}.invoice-status.status-sent{background:#d1ecf1;color:#0c5460}.invoice-status.status-void{background:#f8d7da;color:#721c24}.invoice-card-body{margin-bottom:16px}.invoice-date{align-items:center;color:#666;display:flex;font-size:14px;gap:8px;margin-bottom:12px}.invoice-amount{color:#007bff;font-size:24px;font-weight:600;margin-bottom:16px}.invoice-items{display:flex;flex-direction:column;gap:8px}.invoice-item{align-items:start;background:#f8f9fa;border-radius:4px;display:flex;font-size:14px;justify-content:space-between;padding:8px}.item-description{color:#333;flex:1 1}.item-amount{color:#666;font-weight:500;margin-left:12px;white-space:nowrap}.invoice-card-actions{display:flex;gap:8px;justify-content:flex-end}.btn-view{align-items:center;background:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;display:flex;font-size:14px;gap:6px;padding:8px 16px;transition:background .2s}.btn-view:hover{background:#0056b3}.billing-table-container{background:#fff;border:1px solid #e0e0e0;border-radius:8px;margin-top:20px;overflow-x:auto}.billing-table{border-collapse:collapse;width:100%}.billing-table thead{background:#f8f9fa}.billing-table th{border-bottom:2px solid #e0e0e0;color:#333;font-size:14px;font-weight:600;padding:12px 16px;text-align:left}.billing-table td{border-bottom:1px solid #f0f0f0;font-size:14px;padding:12px 16px}.billing-table tbody tr:hover{background:#f8f9fa}.invoice-number-cell{color:#007bff;font-weight:600}.invoice-number-cell.clickable{cursor:pointer;transition:color .2s,-webkit-text-decoration .2s;transition:color .2s,text-decoration .2s;transition:color .2s,text-decoration .2s,-webkit-text-decoration .2s}.invoice-number-cell.clickable:hover{color:#0056b3;text-decoration:underline}.table-item-description{padding:2px 0}.amount-cell{font-weight:500;text-align:right}.btn-table-action{align-items:center;background:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;display:flex;gap:4px;padding:6px 10px;transition:background .2s}.btn-table-action:hover{background:#0056b3}.billing-detail-modal-wrapper{background:#fff;border-radius:8px;display:flex;flex-direction:column;max-height:100%;max-width:900px;min-width:700px;overflow:hidden;width:auto}@media (max-width:768px){.billing-container{padding:12px}.billing-header-top{align-items:flex-start;flex-direction:column;gap:16px}.billing-summary{grid-template-columns:repeat(2,1fr)}.billing-filters{flex-direction:column}.billing-cards{grid-template-columns:1fr}.billing-table-container{overflow-x:scroll}.billing-table{min-width:600px}.billing-detail-modal-wrapper{border-radius:0!important;height:100vh!important;max-height:100vh!important;max-width:100vw!important;min-width:0!important;min-width:auto!important;width:100vw!important}}.ai-ticket-search-container{margin:0 auto;max-width:1400px;padding:20px}.ai-ticket-search-header{margin-bottom:30px}.ai-ticket-search-header .header-content{align-items:center;display:flex;gap:16px;justify-content:space-between;margin-bottom:8px}.ai-ticket-search-header h1{align-items:center;color:#2c3e50;display:flex;font-size:28px;font-weight:600;gap:12px;margin:0}.ai-ticket-search-header .tenant-badge{align-items:center;background:linear-gradient(135deg,#3498db,#2980b9);border-radius:4px;box-shadow:0 2px 4px #3498db33;color:#fff;cursor:help;display:inline-flex;flex-shrink:0;font-size:12px;font-weight:500;gap:6px;padding:6px 12px;white-space:nowrap}.ai-ticket-search-subtitle{color:#7f8c8d;font-size:14px;margin:0}.search-input-wrapper .search-input:focus{border-color:#3498db;box-shadow:0 0 0 3px #3498db1a}.search-actions{display:flex;gap:10px}.filters-section{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr}@media (min-width:768px) and (max-width:1199px){.filters-section{grid-template-columns:repeat(2,1fr)}}@media (min-width:1200px){.filters-section{grid-template-columns:repeat(4,1fr)}}.filter-group label{color:#2c3e50;font-size:14px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.searchable-dropdown{position:relative}.dropdown-search-input{background:#fff;border:1px solid #ddd;border-radius:6px;color:#34495e;font-size:14px;padding:10px 12px;transition:border-color .2s;width:100%}.dropdown-search-input:focus{border-color:#3498db;box-shadow:0 0 0 3px #3498db1a;outline:none}.searchable-dropdown .dropdown-options{background:#fff;border:1px solid #ddd;border-radius:6px;box-shadow:0 4px 12px #00000026;left:0;margin-top:4px;max-height:300px;overflow-y:auto;position:absolute;right:0;top:100%;z-index:1000}.searchable-dropdown .dropdown-option{align-items:center;border-bottom:1px solid #f0f0f0;color:#34495e;cursor:pointer;display:flex;font-size:14px;gap:8px;padding:10px 12px;transition:background .2s}.searchable-dropdown .dropdown-option:last-child{border-bottom:none}.searchable-dropdown .dropdown-option:hover{background:#f8f9fa}.searchable-dropdown .dropdown-option.selected{background:#e3f2fd}.searchable-dropdown .dropdown-option input[type=checkbox]{cursor:pointer}.selected-items{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.selected-tag{align-items:center;background:#3498db;border-radius:4px;color:#fff;display:inline-flex;font-size:13px;gap:6px;padding:4px 8px}.selected-tag button{align-items:center;background:none;border:none;color:#fff;cursor:pointer;display:flex;font-size:18px;height:16px;justify-content:center;line-height:1;margin:0;padding:0;width:16px}.selected-tag button:hover{opacity:.8}.age-filter-row{align-items:center;display:flex;gap:10px}.age-slider{-webkit-appearance:none;appearance:none;background:linear-gradient(90deg,#e0e0e0 0,#3498db);border-radius:3px;cursor:pointer;flex:1 1;height:6px;outline:none}.age-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:#3498db;border-radius:50%;box-shadow:0 2px 4px #3498db4d;cursor:pointer;height:18px;-webkit-transition:transform .2s,box-shadow .2s;transition:transform .2s,box-shadow .2s;width:18px}.age-slider::-webkit-slider-thumb:hover{box-shadow:0 3px 8px #3498db66;transform:scale(1.1)}.age-slider::-moz-range-thumb{background:#3498db;border:none;border-radius:50%;box-shadow:0 2px 4px #3498db4d;cursor:pointer;height:18px;width:18px}.age-value-display{flex-shrink:0}.age-badge{align-items:center;background:#3498db;border-radius:12px;color:#fff;display:inline-flex;font-size:12px;font-weight:500;gap:4px;padding:4px 8px;white-space:nowrap}.age-badge-inactive{background:#e0e0e0;color:#7f8c8d}.age-unit-select{background:#fff;border:1px solid #ddd;border-radius:6px;color:#34495e;cursor:pointer;font-size:13px;outline:none;padding:6px 10px;transition:border-color .2s}.age-unit-select:hover{border-color:#3498db}.age-unit-select:focus{border-color:#3498db;box-shadow:0 0 0 3px #3498db1a}.priority-indicator,.status-indicator{border-radius:50%;display:inline-block;height:10px;margin-right:4px;width:10px}.status-indicator.status-open{background:#e74c3c}.status-indicator.status-pending{background:#f39c12}.status-indicator.status-resolved{background:#27ae60}.status-indicator.status-closed{background:#95a5a6}.status-indicator.status-waiting{background:#9b59b6}.priority-indicator.priority-urgent{background:#e74c3c}.priority-indicator.priority-high{background:#f39c12}.priority-indicator.priority-medium{background:#3498db}.priority-indicator.priority-low{background:#95a5a6}.selected-tag.tag-style{background:#9b59b6}.selected-tag.tag-style svg{margin-right:2px}.dropdown-option svg{color:#9b59b6;flex-shrink:0}.error-message{background:#fee;border:1px solid #fcc;color:#c33}.results-summary{background:#ecf0f1;border-radius:6px;color:#2c3e50;margin-bottom:20px;padding:12px 20px}.results-summary strong{color:#2980b9;font-weight:600}.results-container{gap:15px}.ticket-card{background:#fff;box-shadow:0 2px 4px #0000001a;overflow:hidden;transition:box-shadow .2s}.ticket-card:hover{box-shadow:0 4px 8px #00000026}.ticket-card.expanded{box-shadow:0 4px 12px #00000026}.ticket-header{align-items:flex-start;cursor:pointer;justify-content:space-between;padding:16px 20px;transition:background-color .2s}.ticket-header:hover{background-color:#f8f9fa}.ticket-title{flex:1 1}.ticket-title h3{color:#2c3e50;font-size:16px;font-weight:600;margin:0 0 8px}.ticket-meta{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.ticket-badge,.ticket-priority,.ticket-status{border-radius:12px;font-size:12px;font-weight:500;padding:4px 10px;text-transform:capitalize}.ticket-status{background:#3498db;color:#fff}.status-open{background:#e74c3c}.status-pending{background:#f39c12}.status-resolved{background:#27ae60}.status-closed{background:#95a5a6}.status-unknown{background:#7f8c8d}.ticket-priority{background:#95a5a6;color:#fff}.priority-urgent{background:#e74c3c}.priority-high{background:#f39c12}.priority-medium{background:#3498db}.priority-low{background:#95a5a6}.priority-unknown{background:#7f8c8d}.ticket-badge{background:#ecf0f1;color:#2c3e50}.conversation-badge{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;color:#fff;cursor:help;display:inline-flex;font-size:12px;font-weight:500;gap:4px;padding:4px 10px}.ticket-header-right{align-items:center;display:flex;flex-shrink:0;gap:12px}.ticket-age{align-items:center;background:#f8f9fa;border-radius:12px;color:#7f8c8d;display:inline-flex;font-size:12px;font-weight:500;gap:4px;padding:4px 10px;white-space:nowrap}.ticket-age svg{color:#95a5a6}.expand-button{align-items:center;color:#3498db;display:flex;justify-content:center;padding:4px;transition:background-color .2s}.expand-button:hover{background-color:#ecf0f1}.ticket-details{border-top:1px solid #ecf0f1;padding:0 20px 20px}.ticket-description{margin:16px 0}.ticket-description strong{color:#2c3e50;display:block;font-size:14px;margin-bottom:8px}.ticket-description p{color:#34495e;line-height:1.6;margin:0;white-space:pre-wrap}.conversation-highlights{background:linear-gradient(135deg,#f8f9ff,#f0f4ff);border-left:3px solid #667eea;border-radius:6px;margin:16px 0;padding:12px}.conversation-highlights>svg{color:#667eea;margin-right:8px;vertical-align:middle}.conversation-highlights strong{color:#2c3e50;display:inline-block;font-size:14px;margin-bottom:10px}.conversation-snippet{background:#fff;border-radius:4px;color:#555;font-size:13px;line-height:1.5;margin:8px 0;padding:8px 12px}.conversation-snippet mark{background:gold;border-radius:2px;color:#2c3e50;font-weight:600;padding:2px 4px}.ticket-info-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin:16px 0}.ticket-info-item{align-items:flex-start;color:#34495e;display:flex;font-size:14px;gap:8px}.ticket-info-item svg{color:#7f8c8d;flex-shrink:0;margin-top:2px}.ticket-info-item strong{color:#2c3e50;font-weight:600}.ticket-tags{align-items:center;display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}.ticket-tags svg{color:#7f8c8d}.tag{background:#ecf0f1;border-radius:12px;color:#2c3e50;font-size:12px;font-weight:500;padding:4px 10px}.ticket-actions{border-top:1px solid #ecf0f1;gap:10px;margin-top:16px;padding-top:16px}.btn-freshdesk{align-items:center;background:var(--success-color);border:1px solid var(--success-color);border-radius:6px;color:#fff;display:inline-flex;font-size:13px;gap:6px;padding:6px 12px;transition:all .2s ease}.btn-freshdesk:hover{background:#0ea674;border-color:#0ea674;box-shadow:0 2px 8px #10b9814d;transform:translateY(-1px)}.btn-freshdesk:active{transform:translateY(0)}.ai-insights-toggle{align-items:center;display:flex;gap:10px}.toggle-label{align-items:center;color:#2c3e50;display:flex;gap:6px;-webkit-user-select:none;user-select:none}.toggle-label svg{color:#f39c12}@media (max-width:768px){.ai-ticket-search-container{padding:15px}.ai-ticket-search-header h1{font-size:24px}.search-input-wrapper{align-items:stretch;flex-direction:column}.search-button{width:100%}.filters-section,.ticket-info-grid{grid-template-columns:1fr}}.tenant-ticket-search-container .filters-section{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr}@media (min-width:768px) and (max-width:1023px){.tenant-ticket-search-container .filters-section{grid-template-columns:repeat(2,1fr)}}@media (min-width:1024px){.tenant-ticket-search-container .filters-section{grid-template-columns:repeat(3,1fr)}}.people-search-container{margin:0 auto;max-width:1200px;padding:20px}.people-search-header{margin-bottom:30px}.people-search-header .header-content{align-items:center;display:flex;gap:16px;margin-bottom:8px}.people-search-header h1{align-items:center;color:#2c3e50;display:flex;font-size:28px;font-weight:600;gap:12px;margin:0}.people-search-subtitle{color:#7f8c8d;font-size:14px;margin:0}.tenant-select:focus{border-color:#9b59b6;box-shadow:0 0 0 3px #9b59b61a}.search-section{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:20px;padding:20px}.search-input-wrapper{gap:12px;margin-bottom:15px}.search-icon{color:#7f8c8d;flex-shrink:0}.search-input-wrapper .search-input{border:1px solid #ddd;border-radius:6px;flex:1 1 auto;font-size:15px;min-width:0;padding:12px 16px;transition:border-color .2s;width:100%}.search-input-wrapper .search-input:focus{border-color:#9b59b6;box-shadow:0 0 0 3px #9b59b61a;outline:none}.search-button{padding:12px 24px;white-space:nowrap}.filters-row{align-items:center}.filters-row .org-chart-btn{align-items:center;display:flex;gap:6px;margin-left:auto}.filter-select{border:1px solid #ddd;min-width:180px}.filter-select:focus{border-color:#9b59b6;outline:none}.error-message{background:#fee2e2;border:1px solid #fecaca;color:#dc2626;gap:10px;margin-bottom:20px;padding:12px 16px}.results-container{display:flex;flex-direction:column;gap:12px}.person-card{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;overflow:hidden;transition:box-shadow .2s}.person-card:hover{box-shadow:0 4px 8px #00000026}.person-card.expanded{box-shadow:0 4px 12px #00000026}.person-card.disabled-user{opacity:.7}.person-card.protected-user{border-left:3px solid var(--warning-color)}.person-card.protected-user .person-avatar{background:linear-gradient(135deg,var(--warning-color) 0,var(--warning-hover) 100%)}.person-header{cursor:pointer;gap:16px;padding:16px}.person-avatar,.person-header{align-items:center;display:flex}.person-avatar{background:linear-gradient(135deg,#9b59b6,#8e44ad);border-radius:50%;color:#fff;flex-shrink:0;height:48px;justify-content:center;width:48px}.person-info{flex:1 1;min-width:0}.person-info h3{align-items:center;color:#2c3e50;display:flex;font-size:16px;font-weight:600;gap:8px;margin:0 0 4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.person-info h3 .protected-badge{align-items:center;background:var(--warning-bg);border-radius:50%;color:var(--warning-hover);cursor:help;display:inline-flex;flex-shrink:0;height:22px;justify-content:center;width:22px}.person-info h3 .protected-badge svg{height:14px;width:14px}.person-name-link{background:none;border:none;color:inherit;cursor:pointer;font:inherit;padding:0;text-decoration:none}.person-name-link:hover{color:var(--primary-color);text-decoration:underline}.person-meta{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.person-department,.person-title{align-items:center;color:#7f8c8d;display:flex;font-size:13px;gap:4px}.person-tenant{background:#e0f2fe;border-radius:4px;color:#0369a1;font-size:11px;font-weight:500;padding:2px 8px;text-transform:lowercase}.person-contact-quick{display:flex;gap:8px}.contact-link{align-items:center;background:#f1f5f9;border-radius:50%;color:#64748b;display:flex;height:36px;justify-content:center;transition:all .2s;width:36px}.contact-link:hover{background:#9b59b6;color:#fff}.context-button{align-items:center;background:linear-gradient(135deg,#f5f0ff,#e8e0f0);border:none;border-radius:50%;color:#9b59b6;cursor:pointer;display:flex;height:36px;justify-content:center;transition:all .2s;width:36px}.context-button:hover{background:linear-gradient(135deg,#9b59b6,#8e44ad);color:#fff;transform:scale(1.05)}.context-button svg{flex-shrink:0}.person-details{border-top:1px solid #eee;padding:0 16px 16px}.detail-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.detail-item svg,.detail-section h4{color:#9b59b6}.detail-item a{color:#9b59b6;text-decoration:none}.detail-item a:hover{text-decoration:underline}.source-badge{background:#f1f5f9;padding:4px 8px}.licenses-section{border-top:1px solid #e2e8f0;grid-column:1/-1;margin-top:16px;padding-top:16px}.licenses-section h4{align-items:center;color:#334155;display:flex;font-size:14px;gap:8px;margin:0 0 12px}.licenses-section h4 svg{color:#0078d4}.licenses-loading,.no-licenses{color:#64748b;font-size:13px;font-style:italic;padding:8px 0}.user-licenses-list{display:flex;flex-direction:column;gap:8px}.user-license-item{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;display:flex;gap:10px;padding:8px 12px}.user-license-item .license-icon{align-items:center;background:#fff;border-radius:6px;display:flex;flex-shrink:0;height:28px;justify-content:center;width:28px}.user-license-item .license-icon img{height:20px;object-fit:contain;width:20px}.user-license-item .license-icon svg{color:#0078d4}.user-license-item .license-details{display:flex;flex:1 1;flex-direction:column;gap:2px;min-width:0}.user-license-item .license-name{color:#1e293b;font-size:13px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-license-item .license-vendor{color:#64748b;font-size:11px}.user-license-item .license-source{border-radius:10px;flex-shrink:0;font-size:10px;font-weight:600;padding:2px 8px;text-transform:uppercase}.user-license-item .license-source.source-manual{background:#e0f2fe;color:#0369a1}.user-license-item .license-source.source-o365-sync{background:#fef3c7;color:#d97706}.user-license-item .license-source.source-google-sync{background:#dcfce7;color:#16a34a}.user-license-item .license-source.source-integrations{background:#f3e8ff;color:#9333ea}.license-keys-section{border-top:1px solid #e2e8f0;grid-column:1/-1;margin-top:16px;padding-top:16px}.license-keys-section h4{align-items:center;color:#334155;display:flex;font-size:14px;gap:8px;margin:0 0 12px}.license-keys-section h4 svg{color:#0078d4}.user-license-keys-list{display:flex;flex-direction:column;gap:8px}.user-license-key-item{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;display:flex;gap:10px;padding:8px 12px}.user-license-key-item .license-key-icon{align-items:center;background:#e0f2fe;border-radius:6px;color:#0078d4;display:flex;flex-shrink:0;height:28px;justify-content:center;width:28px}.user-license-key-item .license-key-details{display:flex;flex:1 1;flex-direction:column;gap:2px;min-width:0}.user-license-key-item .license-key-masked{color:#1e293b;font-family:Consolas,Monaco,monospace;font-size:12px;font-weight:600}.user-license-key-item .license-key-name{color:#64748b;font-size:11px}.user-license-key-item .license-key-date{color:#94a3b8;flex-shrink:0;font-size:11px}.usage-stats-section{border-top:1px solid #e2e8f0;grid-column:1/-1;margin-top:16px;padding-top:16px}.usage-stats-section h4{align-items:center;color:#334155;display:flex;font-size:14px;gap:8px;margin:0 0 12px}.usage-stats-section h4 svg{color:#8b5cf6}.usage-stats-section .usage-sync-time{color:#94a3b8;font-size:11px;font-weight:400;margin-left:auto}.usage-stats-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.usage-stat-item{align-items:flex-start;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;display:flex;gap:10px;padding:12px}.usage-stat-item>svg{color:#64748b;flex-shrink:0;margin-top:2px}.usage-stat-details{display:flex;flex-direction:column;gap:2px}.usage-stat-label{color:#64748b;font-size:12px}.usage-stat-value{color:#1e293b;font-size:16px;font-weight:600}.usage-stat-meta{color:#94a3b8;font-size:11px}.stat-meta{color:#64748b;font-size:12px}.usage-sync-timestamp{border-top:1px solid #e2e8f0;color:#94a3b8;font-size:11px;margin-top:8px;padding-top:8px}@media (max-width:768px){.people-search-container{padding:12px}.people-search-header .header-content{align-items:flex-start;flex-direction:column}.search-input-wrapper{flex-wrap:wrap}.search-input-wrapper .search-input{width:100%}.person-header{flex-wrap:wrap}.person-contact-quick{justify-content:flex-end;width:100%}.detail-grid{grid-template-columns:1fr}.detail-footer{flex-wrap:wrap}}.person-detail-modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:10001}.person-detail-modal{background:#fff;background:var(--card-bg,#fff);border-radius:12px;box-shadow:0 20px 60px #0000004d;display:flex;flex-direction:column;max-height:85vh;max-width:800px;overflow:hidden;position:relative;width:100%}.person-detail-modal .modal-close-btn{background:none;border:none;border-radius:6px;color:var(--text-secondary);cursor:pointer;padding:8px;position:absolute;right:16px;top:16px;z-index:10}.person-detail-modal .modal-close-btn:hover{background:var(--secondary-bg);color:var(--text-primary)}.person-detail-modal .modal-error,.person-detail-modal .modal-loading{align-items:center;color:var(--text-secondary);display:flex;gap:12px;justify-content:center;padding:60px 20px}.person-detail-modal .modal-error{color:#dc3545;color:var(--error-color,#dc3545)}.person-modal-header{background:#fff;background:var(--card-bg,#fff);border-bottom:1px solid var(--border-color);gap:20px;padding:24px 24px 16px}.person-avatar-large,.person-modal-header{align-items:center;display:flex;flex-shrink:0}.person-avatar-large{background:linear-gradient(135deg,var(--primary-color),var(--primary-hover));border-radius:50%;color:#fff;font-size:28px;font-weight:600;height:72px;justify-content:center;width:72px}.person-header-info{flex:1 1;min-width:0}.person-header-info h2{color:var(--text-primary);font-size:22px;font-weight:600;margin:0 0 4px}.person-header-info .person-title{color:var(--text-secondary);display:block;font-size:15px}.person-header-info .person-department{color:#999;color:var(--text-tertiary,#999);display:block;font-size:13px;margin-top:2px}.person-detail-modal .person-details{flex:1 1;overflow-y:auto;padding:20px 24px 24px}.person-detail-modal .detail-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(2,1fr)}.person-detail-modal .detail-section{background:#f8f9fa;background:var(--secondary-bg,#f8f9fa);border-radius:8px;padding:16px}.person-detail-modal .detail-section.licenses-section{grid-column:1/-1}.person-detail-modal .detail-section h4{align-items:center;color:var(--text-primary);display:flex;font-size:14px;font-weight:600;gap:8px;margin:0 0 12px}.person-detail-modal .detail-item{align-items:flex-start;display:flex;flex-direction:row;flex-wrap:nowrap;font-size:13px;gap:10px;line-height:1.5;margin-bottom:10px}.person-detail-modal .detail-item:last-child{margin-bottom:0}.person-detail-modal .detail-item>svg{color:#999;color:var(--text-tertiary,#999);flex-shrink:0;margin-top:3px}.person-detail-modal .detail-item>div{flex:1 1;min-width:0}.person-detail-modal .detail-item strong{color:var(--text-secondary);margin-right:4px}.person-detail-modal .detail-item a{color:var(--primary-color);text-decoration:none}.person-detail-modal .detail-item a:hover{text-decoration:underline}.building-link{background:none;border:none;color:#9b59b6;cursor:pointer;font:inherit;padding:0;text-decoration:none}.building-link:hover{text-decoration:underline}.building-match-badge{background:#f0f0f0;background:var(--bg-tertiary,#f0f0f0);border-radius:3px;color:#888;color:var(--text-tertiary,#888);display:inline-block;font-size:10px;letter-spacing:.3px;margin-left:6px;padding:1px 5px;text-transform:uppercase;vertical-align:middle}.building-preview-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1100}.building-preview-content{background:#fff;background:var(--bg-primary,#fff);border-radius:12px;box-shadow:0 20px 60px #0000004d;display:flex;flex-direction:column;max-height:85vh;max-width:900px;overflow-y:auto;position:relative;width:90%}.building-preview-content .detail-header{display:none}.building-preview-content .asset-detail{background:#0000;margin:0;min-height:auto;padding:0}.building-preview-content .detail-content{padding:20px}.building-preview-close{align-items:center;background:#f5f5f5;background:var(--bg-secondary,#f5f5f5);border:none;border-radius:50%;color:#666;color:var(--text-secondary,#666);cursor:pointer;display:flex;height:32px;justify-content:center;position:absolute;right:12px;top:12px;width:32px;z-index:10}.building-preview-close:hover{background:#e0e0e0;background:var(--bg-tertiary,#e0e0e0)}.person-detail-modal .building-link{color:var(--primary-color)}.person-detail-modal .detail-footer{border-top:1px solid var(--border-color);color:#999;color:var(--text-tertiary,#999);display:flex;font-size:12px;gap:16px;margin-top:16px;padding-top:16px}@media (max-width:640px){.person-detail-modal .detail-grid{grid-template-columns:1fr}.person-modal-header{flex-direction:column;text-align:center}.person-header-info{text-align:center}}.modal-content.org-chart-modal{max-width:95vw;width:1400px}.modal-content.org-chart-modal.fullscreen{border-radius:0;height:100vh;left:0;margin:0;max-width:100vw;position:fixed;top:0;width:100vw}.org-chart-modal .modal-header{align-items:center;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;padding:16px 20px}.org-chart-modal .modal-header h3{align-items:center;display:flex;font-size:18px;gap:10px;margin:0}.org-chart-modal .header-actions{align-items:center;display:flex;gap:8px}.root-navigator{align-items:center;background:var(--hover-bg);border-radius:6px;display:flex;gap:4px;margin-right:8px;padding:4px 8px}.root-nav-label{color:var(--text-color);font-size:12px;font-weight:500;min-width:50px;text-align:center}.org-chart-modal .modal-body{display:flex;flex-direction:column;max-height:calc(100vh - 200px);min-height:500px;overflow:hidden;padding:0}.org-chart-modal.fullscreen .modal-body{max-height:calc(100vh - 130px);min-height:calc(100vh - 130px)}.org-chart-toolbar{align-items:center;background:var(--hover-bg);border-bottom:1px solid var(--border-color);display:flex;flex-shrink:0;gap:16px;justify-content:space-between;padding:12px 20px}.toolbar-center,.toolbar-left,.toolbar-right{align-items:center;display:flex;gap:8px}.toolbar-center{gap:4px}.toolbar-divider{background:var(--border-color);height:20px;margin:0 8px;width:1px}.zoom-level{color:var(--text-secondary);font-size:12px;font-weight:500;min-width:48px;text-align:center}.org-search{align-items:center;background:var(--card-bg);border:1px solid var(--border-color);border-radius:6px;display:flex;gap:8px;min-width:240px;padding:6px 12px;position:relative}.org-search svg{color:var(--text-secondary);flex-shrink:0}.org-search input{background:#0000;border:none;color:var(--text-color);font-size:13px;outline:none;width:100%}.org-search input::placeholder{color:var(--text-secondary)}.search-results{background:var(--card-bg);box-shadow:0 8px 24px #00000026;left:0;margin-top:4px;max-height:320px;position:absolute;right:0;top:100%;z-index:1000}.search-result-item{background:#0000;border:none;text-align:left;width:100%}.result-avatar{align-items:center;border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:12px;font-weight:600;height:32px;justify-content:center;width:32px}.result-info{display:flex;flex-direction:column;gap:2px;min-width:0}.result-name{color:var(--text-color);font-size:13px}.result-name,.result-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.result-title{color:var(--text-secondary);font-size:11px}.org-chart-container{background:linear-gradient(90deg,#0000000a 1px,#0000 0) 0 0 /40px 40px,linear-gradient(#0000000a 1px,#0000 0) 0 0 /40px 40px;background-color:var(--body-bg);flex:1 1;overflow:hidden;position:relative}.org-chart-empty,.org-chart-error,.org-chart-loading{align-items:center;display:flex;flex-direction:column;gap:16px;height:100%;justify-content:center;min-height:400px;padding:60px 20px;text-align:center}.org-chart-loading{color:var(--text-secondary)}.org-chart-error{color:var(--danger-color)}.org-chart-error span{color:var(--text-color)}.org-chart-empty svg{color:var(--text-secondary);opacity:.3}.org-chart-empty h4{color:var(--text-color);margin:0}.org-chart-empty p{color:var(--text-secondary);line-height:1.5;margin:0;max-width:400px}.empty-stats{color:var(--text-secondary);display:flex;font-size:12px;gap:20px}.org-chart-tree{align-items:flex-start;display:flex;flex-direction:row;gap:40px;justify-content:center;min-width:-webkit-max-content;min-width:max-content;padding:40px;transition:transform .1s ease-out}.org-tree-branch{align-items:center;display:flex;flex-direction:column}.org-node-wrapper{align-items:center;display:flex;flex-direction:column}.org-node-card{align-items:center;background:var(--card-bg);border:2px solid var(--border-color);border-radius:10px;cursor:default;display:flex;gap:10px;max-width:240px;min-width:180px;padding:12px 16px;position:relative;transition:all .2s}.org-node-card:hover{border-color:var(--primary-color);box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.org-node-card.highlighted{animation:pulse-highlight 1s ease-in-out 3;border-color:var(--warning-color);box-shadow:0 0 0 3px #fbbf244d,0 4px 12px #0000001a}@keyframes pulse-highlight{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}.org-avatar{align-items:center;border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:14px;font-weight:600;height:40px;justify-content:center;width:40px}.org-node-info{flex:1 1;min-width:0}.org-node-name{color:var(--text-color);font-size:14px;font-weight:600}.org-node-name,.org-node-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.org-node-title{color:var(--text-secondary);font-size:11px;margin-top:2px}.collapse-btn{align-items:center;background:var(--hover-bg);border:1px solid var(--border-color);border-radius:6px;cursor:pointer;display:flex;flex-shrink:0;gap:4px;padding:4px 8px;transition:all .15s}.collapse-btn:hover{background:var(--primary-color);border-color:var(--primary-color);color:#fff}.collapse-btn:hover .report-badge{background:#fff3}.report-badge{background:var(--primary-color);border-radius:10px;color:#fff;font-size:11px;font-weight:600;min-width:18px;padding:1px 6px;text-align:center}.org-connector-down{background:#888;height:24px;width:2px}.org-children-row{align-items:center;display:flex;flex-direction:column;position:relative}.org-connector-horizontal{background:#888;height:2px;left:50%;position:absolute;top:0;transform:translateX(-50%)}.org-children-nodes{display:flex;flex-direction:row;gap:24px;padding-top:24px;position:relative}.org-children-nodes>.org-tree-branch{position:relative}.org-children-nodes>.org-tree-branch:before{background:#888;content:"";height:24px;left:50%;position:absolute;top:-24px;transform:translateX(-50%);width:2px}.org-children-row{width:100%}.org-children-row .org-connector-horizontal{min-width:2px;width:calc(100% - 180px)}.org-children-row.single-child .org-connector-horizontal{display:none}.org-chart-filters{align-items:center;background:var(--hover-bg);border-bottom:1px solid var(--border-color);display:flex;flex-wrap:wrap;gap:16px;padding:12px 20px}.filter-group label{color:var(--text-secondary);white-space:nowrap}.filter-group select{background:var(--card-bg);border:1px solid var(--border-color);color:var(--text-color);cursor:pointer;min-width:140px;padding:6px 10px}.filter-group select:focus{border-color:var(--primary-color);outline:none}.btn.has-filters{position:relative}.filter-badge{align-items:center;background:var(--primary-color);border-radius:8px;color:#fff;display:flex;font-size:10px;font-weight:600;height:16px;justify-content:center;min-width:16px;padding:0 4px;position:absolute;right:-4px;top:-4px}.filter-group.filter-checkbox{border-left:1px solid var(--border-color);margin-left:8px;padding-left:16px}.filter-group .checkbox-label{align-items:center;color:var(--text-color);cursor:pointer;display:flex;font-size:13px;gap:8px;white-space:nowrap}.filter-group .checkbox-label input[type=checkbox]{cursor:pointer;height:16px;width:16px}.filter-group .orphan-count{color:var(--text-secondary);font-size:12px;margin-left:4px}.org-preview-card{animation:fadeIn .15s ease-out;background:var(--card-bg);border:1px solid var(--border-color);border-radius:12px;box-shadow:0 8px 32px #00000026;max-width:320px;min-width:280px;pointer-events:auto;position:absolute;z-index:1000}.preview-header{border-bottom:1px solid var(--border-color);gap:12px;padding:16px}.preview-avatar{align-items:center;border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:16px;font-weight:600;height:48px;justify-content:center;width:48px}.preview-identity{flex:1 1;min-width:0}.preview-name-link{align-items:center;background:none;border:none;color:var(--primary-color);cursor:pointer;display:flex;font-size:16px;font-weight:600;gap:6px;padding:0;text-align:left;transition:color .15s}.preview-name-link:hover{color:#2563eb;color:var(--primary-dark,#2563eb);text-decoration:underline}.preview-name-link svg{flex-shrink:0;opacity:.6}.preview-name-link:hover svg{opacity:1}.preview-name{color:var(--text-color);font-size:16px;font-weight:600}.preview-name,.preview-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.preview-title{color:var(--text-secondary);font-size:13px;margin-top:2px}.preview-details{padding:12px 16px}.preview-row{align-items:flex-start;justify-content:space-between;padding:6px 0}.preview-label{color:var(--text-secondary);flex-shrink:0}.preview-value{color:var(--text-color);font-size:12px;text-align:right;word-break:break-word}.preview-value.email{color:var(--primary-color)}.org-chart-modal .modal-footer{align-items:center;border-top:1px solid var(--border-color);display:flex;gap:16px;justify-content:space-between;padding:12px 20px}.org-chart-stats{display:flex;gap:16px}.org-chart-stats span{align-items:center;color:var(--text-secondary);display:flex;font-size:12px;gap:6px}.org-chart-stats .stat-warning{color:#f59e0b;color:var(--warning-color,#f59e0b)}.org-chart-stats .stat-filter{color:var(--primary-color)}.footer-hint{flex:1 1;text-align:center}.footer-hint span{color:var(--text-secondary);font-size:11px;opacity:.7}@media (max-width:1024px){.modal-content.org-chart-modal{max-width:98vw}.org-chart-toolbar{flex-wrap:wrap;gap:12px}.toolbar-left{order:1;width:100%}.org-search{width:100%}.toolbar-center{order:2}.toolbar-right{margin-left:auto;order:3}}@media (max-width:768px){.org-preview-card{display:none}.org-node-card{min-width:140px;padding:10px 12px}.org-avatar{height:32px;width:32px}.org-avatar,.org-node-name{font-size:12px}.org-children-nodes{gap:12px}.footer-hint{display:none}}.manager-btn{align-items:center;background:var(--body-bg);border:1px solid var(--border-color);border-radius:50%;color:var(--text-secondary);cursor:pointer;display:flex;height:20px;justify-content:center;left:50%;opacity:0;padding:0;position:absolute;top:-8px;transform:translateX(-50%);transition:all .15s;width:20px;z-index:2}.org-node-card:hover .manager-btn{opacity:1}.manager-btn:hover{background:var(--primary-color);border-color:var(--primary-color);color:#fff}.levels-dropdown{align-items:center;display:flex;gap:6px}.levels-dropdown label{color:var(--text-secondary);font-size:12px;white-space:nowrap}.levels-dropdown select{background:var(--body-bg);border:1px solid var(--border-color);border-radius:4px;color:var(--text-color);font-size:12px;min-width:60px;padding:4px 8px}.levels-dropdown select:disabled{cursor:not-allowed;opacity:.5}.org-chart-stats .stat-orphan{color:#0891b2;color:var(--info-color,#0891b2)}.org-tree-branch.stagger-down{margin-left:-100px;margin-top:90px}.org-tree-branch.stagger-down:before{height:114px!important;top:-114px!important}.org-chart-tree>.org-tree-branch.root-branch:before{display:none!important}.power-scheduler-container .spin{animation:spin 1s linear infinite}.power-scheduler-container{margin:0 auto;max-width:1600px;padding:20px}.power-scheduler-header{margin-bottom:30px}.power-scheduler-header .header-content{align-items:center;display:flex;gap:16px;justify-content:space-between;margin-bottom:8px}.power-scheduler-header h1{align-items:center;color:#2c3e50;display:flex;font-size:28px;font-weight:600;gap:12px;margin:0}.power-scheduler-subtitle{color:#7f8c8d;font-size:14px;margin:0}.tenant-selector-section{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:20px;padding:20px}.tenant-selector-section label{color:#2c3e50;display:block;font-size:14px;margin-bottom:8px}.tenant-select{background:#fff;border:1px solid #ddd;border-radius:6px;color:#34495e;cursor:pointer;font-size:15px;max-width:400px;padding:12px 16px;transition:border-color .2s;width:100%}.tenant-select:focus{border-color:#3498db;box-shadow:0 0 0 3px #3498db1a;outline:none}.scheduler-toolbar{align-items:center;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;display:flex;gap:20px;justify-content:space-between;margin-bottom:20px;padding:16px 20px}.toolbar-left{flex-shrink:0}.toolbar-filters,.toolbar-left{align-items:center;display:flex;gap:12px}.toolbar-filters{flex-wrap:wrap}.btn-clear,.toolbar-checkbox{white-space:nowrap}.actions-bar{display:flex;gap:12px;margin-bottom:20px}.filters-section{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:20px;padding:20px}.filters-row{gap:20px}.filter-group{gap:6px}.filter-group label{color:#7f8c8d}.power-scheduler-container .filter-select{border:1px solid #ddd;border-radius:6px;cursor:pointer;font-size:14px;min-width:150px;padding:8px 12px}.power-scheduler-container .filter-select:focus{border-color:#3498db;outline:none}.checkbox-group{align-items:center;flex-direction:row}.checkbox-label{color:#7f8c8d}.results-summary{border-bottom:1px solid #eee;color:#7f8c8d;font-size:14px;margin-bottom:15px;padding:12px 0}.tasks-container{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(500px,1fr))}.tasks-table{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;overflow:hidden}.tasks-header-row{grid-gap:12px;background:#f8fafc;border-bottom:2px solid #e2e8f0;color:#64748b;display:grid;font-size:12px;font-weight:600;gap:12px;grid-template-columns:2fr 1fr 1fr 1fr 1fr 1fr 1fr 140px;letter-spacing:.5px;padding:12px 16px;text-transform:uppercase}.tasks-header-row .sortable{cursor:pointer;transition:color .15s;-webkit-user-select:none;user-select:none}.tasks-header-row .sortable:hover{color:#3498db}.task-row{border-bottom:1px solid #eee;transition:background-color .15s}.task-row:last-child{border-bottom:none}.task-row.expanded,.task-row:hover{background:#f8fafc}.task-row.disabled-task{background-color:#f5f5f5;background-color:var(--color-bg-muted,#f5f5f5);opacity:.6}.task-row.disabled-task .task-name{color:#888;color:var(--color-text-muted,#888)}.task-row-main{grid-gap:12px;align-items:center;cursor:pointer;display:grid;gap:12px;grid-template-columns:2fr 1fr 1fr 1fr 1fr 1fr 1fr 140px;padding:12px 16px}.task-col{align-items:center;display:flex;gap:8px;min-width:0}.task-col.name-col{align-items:flex-start;flex-direction:column;gap:4px}.task-col .task-name{color:#2c3e50;font-weight:500;max-width:100%}.task-col .task-name,.task-col .tenant-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-col .frequency-text,.task-col .tenant-name{color:#64748b;font-size:13px}.task-col .next-run-time{color:#2c3e50;font-size:13px}.task-col.actions-col{gap:4px;justify-content:flex-end}.truncated-text{display:inline-block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-muted{color:#9ca3af;font-style:italic}.expand-btn{background:none;border:none;border-radius:4px;color:#94a3b8;cursor:pointer;padding:6px;transition:all .15s}.expand-btn:hover{background:#e2e8f0;color:#64748b}.task-card{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;overflow:hidden;transition:box-shadow .2s}.task-card:hover{box-shadow:0 4px 8px #00000026}.task-card.expanded{box-shadow:0 4px 12px #00000026}.task-card.disabled-task{opacity:.7}.task-header{cursor:pointer;gap:16px;padding:16px}.task-header,.task-icon{align-items:center;display:flex}.task-icon{background:linear-gradient(135deg,#3498db,#2980b9);border-radius:8px;color:#fff;flex-shrink:0;height:48px;justify-content:center;width:48px}.task-info{flex:1 1;min-width:0}.task-info h3{color:#2c3e50;font-size:16px;font-weight:600;margin:0 0 6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-meta{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.power-scheduler-container .status-badge.success{background:#d1fae5;color:#059669}.power-scheduler-container .status-badge.warning{background:#fef3c7;color:#d97706}.power-scheduler-container .status-badge.danger{background:#fee2e2;color:#dc2626}.power-scheduler-container .status-badge.info{background:#dbeafe;color:#2563eb}.power-scheduler-container .status-badge.primary{background:#e0e7ff;color:#4f46e5}.power-scheduler-container .status-badge.secondary{background:#f1f5f9;color:#64748b}.power-scheduler-container .status-badge.muted{background:#e5e7eb;color:#6b7280}.result-badge{align-items:center;border-radius:4px;display:inline-flex;font-size:12px;font-weight:500;gap:4px;padding:4px 8px}.result-badge.success{background:#dcfce7;color:#166534}.result-badge.danger{background:#fee2e2;color:#991b1b}.result-badge.muted{color:#9ca3af}.task-col.result-col{font-size:12px}.frequency-badge,.module-badge,.tenant-badge{align-items:center;background:#f1f5f9;border-radius:12px;color:#64748b;display:inline-flex;font-size:12px;gap:4px;padding:4px 10px}.tenant-badge{background:#e0e7ff;color:#4f46e5}.disabled-badge{background:#fee2e2;border-radius:4px;color:#dc2626;font-size:11px;font-weight:500;padding:2px 8px}.task-next-run{align-items:flex-end;display:flex;flex-direction:column;min-width:120px}.next-run-label{color:#94a3b8;font-size:11px;letter-spacing:.5px;text-transform:uppercase}.next-run-time{color:#2c3e50;font-size:14px;font-weight:500}.task-actions{display:flex;gap:8px}.action-btn{align-items:center;border:none;border-radius:6px;cursor:pointer;display:flex;height:36px;justify-content:center;transition:all .2s;width:36px}.action-btn.test{background:#d1fae5;color:#059669}.action-btn.test:hover:not(:disabled){background:#059669;color:#fff}.action-btn.toggle{background:#fef3c7;color:#d97706}.action-btn.toggle:hover{background:#d97706;color:#fff}.action-btn.toggle.enable-btn{background:#d1fae5;color:#059669}.action-btn.toggle.enable-btn:hover{background:#059669;color:#fff}.action-btn.edit{background:#dbeafe;color:#2563eb}.action-btn.edit:hover{background:#2563eb;color:#fff}.action-btn.delete{background:#fee2e2;color:#dc2626}.action-btn.delete:hover{background:#dc2626;color:#fff}.action-btn:disabled{opacity:.6}.expand-button{background:none;border:none;border-radius:4px;color:#7f8c8d;cursor:pointer;padding:8px;transition:background .2s}.expand-button:hover{background:#f1f5f9}.task-details{animation:slideDown .2s ease-out;border-top:1px solid #eee;padding:0 16px 16px}.detail-grid{grid-gap:24px;gap:24px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));padding-top:16px}.detail-section h4{color:#3498db;font-size:13px;letter-spacing:.5px;margin:0 0 12px;text-transform:uppercase}.detail-item{align-items:flex-start;color:#34495e;font-size:14px;gap:10px;margin-bottom:10px}.detail-item svg{color:#3498db;flex-shrink:0;margin-top:2px}.detail-item strong{color:#7f8c8d;font-weight:500;margin-right:4px}.detail-item.code-block{flex-direction:column}.detail-item pre{background:#f8fafc;border-radius:6px;font-size:12px;margin:0;overflow-x:auto;padding:12px;width:100%}.detail-footer{align-items:center;border-top:1px solid #eee;color:#94a3b8;display:flex;flex-wrap:wrap;font-size:12px;gap:16px;margin-top:16px;padding-top:16px}.version-warning{align-items:center;color:#d97706;display:flex;font-weight:500;gap:4px}.task-form-modal{background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;display:flex;flex-direction:column;height:85vh;max-width:600px;overflow:hidden;position:relative;width:100%}.task-form-modal .modal-header{flex-shrink:0}.task-form-modal .modal-header h2{color:#2c3e50;font-size:20px;margin:0}.close-btn{background:none;border:none;color:#94a3b8;cursor:pointer;font-size:28px;line-height:1;padding:0}.close-btn:hover{color:#64748b}.task-form-modal form{display:flex;flex:1 1;flex-direction:column;min-height:0;overflow-y:auto;padding:24px 24px 90px}.task-form-modal .form-actions{background:#fff;border-top:1px solid #e5e7eb;bottom:0;left:0;padding:16px 24px;position:absolute;right:0;z-index:10}.task-form-modal .form-group input[type=number],.task-form-modal .form-group input[type=text],.task-form-modal .form-group input[type=time],.task-form-modal .form-group select,.task-form-modal .form-group textarea{border:1px solid #ddd;border-radius:6px;font-size:14px;padding:12px 16px;transition:border-color .2s;width:100%}.task-form-modal .form-group input:focus,.task-form-modal .form-group select:focus,.task-form-modal .form-group textarea:focus{border-color:#3498db;box-shadow:0 0 0 3px #3498db1a;outline:none}.task-form-modal .form-group input::placeholder,.task-form-modal .form-group textarea::placeholder{color:#94a3b8;opacity:1}.field-hint.success-hint{color:#16a34a}.field-hint.error-hint{color:#dc2626}.task-scope-toggle{border:1px solid #cbd5e1;border-radius:6px;display:flex;gap:0;overflow:hidden}.task-scope-toggle .toggle-btn{background:#fff;border:none;border-right:1px solid #cbd5e1;color:#64748b;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:all .2s}.task-scope-toggle .toggle-btn:last-child{border-right:none}.task-scope-toggle .toggle-btn:hover{background:#f1f5f9}.task-scope-toggle .toggle-btn.active{background:#3498db;color:#fff}.agent-validation-section{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:16px}.agent-status{align-items:center;gap:12px;padding:12px}.agent-status svg{flex-shrink:0}.agent-status.looking-up{background:#eff6ff;border:1px solid #bfdbfe;color:#1e40af}.agent-status.error{align-items:flex-start;background:#fef2f2;border:1px solid #fecaca;color:#991b1b}.agent-status.success{align-items:flex-start;background:#f0fdf4;border:1px solid #bbf7d0;color:#166534}.agent-help-text{font-size:13px;margin:8px 0 0;opacity:.8}.agent-details{font-family:Courier New,monospace;font-size:13px;margin:4px 0 0;opacity:.8}.task-form-modal .form-group .static-value{background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;color:#64748b;font-size:14px;padding:12px 16px}.task-form-modal .form-group textarea{min-height:80px;resize:vertical}.task-form-modal .form-group .code-input{font-family:Menlo,Monaco,Courier New,monospace;font-size:13px}.task-form-modal .form-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.tool-info{background:#f8fafc;border-radius:6px;margin-bottom:20px;padding:16px}.tool-info p{color:#64748b;font-size:14px;margin:0 0 12px}.tool-info .required-params{font-size:13px}.tool-info .required-params strong{color:#2c3e50;display:block;margin-bottom:6px}.tool-info .required-params ul{color:#64748b;margin:0;padding-left:20px}.tool-info .required-params li{margin-bottom:4px}.days-of-week-grid{display:flex;flex-wrap:wrap;gap:8px}.day-checkbox{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;cursor:pointer;display:flex;gap:6px;padding:8px 12px;transition:all .2s}.day-checkbox:hover{background:#e2e8f0}.day-checkbox input:checked+span{color:#3498db;font-weight:600}.day-checkbox input{accent-color:#3498db;height:16px;width:16px}.inline-checkbox{align-items:center;display:flex;gap:8px;margin-bottom:10px}.end-date-input{border:1px solid #ddd;border-radius:6px;font-size:14px;max-width:200px;padding:10px 12px;width:100%}.end-date-input:focus{border-color:#3498db;box-shadow:0 0 0 3px #3498db1a;outline:none}.assign-section{border-top:1px solid #eee}.radio-label{align-items:center;color:#34495e;cursor:pointer;display:flex;font-size:14px;gap:8px}.radio-label input[type=radio]{accent-color:#3498db;height:16px;width:16px}.assignee-input{border:1px solid #ddd;border-radius:6px;font-size:14px;padding:10px 12px;width:100%}.assignee-input:focus{border-color:#3498db;box-shadow:0 0 0 3px #3498db1a;outline:none}@media (max-width:768px){.power-scheduler-container{padding:12px}.power-scheduler-header .header-content{align-items:flex-start;flex-direction:column}.tasks-container{grid-template-columns:1fr}.tasks-header-row{display:none}.task-row-main{gap:8px;grid-template-columns:1fr}.task-col{padding:4px 0}.task-col.name-col{font-size:15px}.task-col.actions-col{border-top:1px solid #eee;justify-content:flex-start;margin-top:8px;padding-top:8px}.task-col:before{color:#94a3b8;content:attr(data-label);display:block;font-size:11px;margin-bottom:2px;text-transform:uppercase}.task-col.actions-col:before,.task-col.name-col:before{display:none}.task-header{flex-wrap:wrap}.task-next-run{align-items:flex-start;margin-top:8px;width:100%}.task-actions{justify-content:flex-end;margin-top:8px;width:100%}.detail-grid,.task-form-modal .form-row{grid-template-columns:1fr}.actions-bar{flex-wrap:wrap}.filters-row{align-items:stretch;flex-direction:column}.power-scheduler-container .filter-select{width:100%}.ticket-mode-row{align-items:stretch;flex-direction:column;gap:8px}.ticket-mode-row .radio-label{justify-content:flex-start;width:100%}.ticket-update-option{flex-wrap:wrap}.inline-ticket-input{margin-left:0;margin-top:8px;width:100%}}@media (min-width:1400px){.tasks-container{grid-template-columns:repeat(auto-fill,minmax(400px,1fr))}}.ticket-toggle-section{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:16px}.ticket-toggle-header,.toggle-switch-label{align-items:center;display:flex;justify-content:space-between}.toggle-switch-label{cursor:pointer;gap:16px;width:100%}.toggle-label-text{color:#2c3e50;font-size:14px;font-weight:500}.ticket-options{animation:slideDown .2s ease-out;border-top:1px solid #e2e8f0;margin-top:16px;padding-top:16px}.ticket-mode-buttons{background:#f1f5f9;border-radius:8px;display:flex;gap:8px;margin-bottom:16px;padding:4px;width:-webkit-fit-content;width:fit-content}.ticket-mode-buttons .mode-btn{background:#0000;border:none;border-radius:6px;color:#64748b;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;transition:all .2s}.ticket-mode-buttons .mode-btn:hover{background:#ffffff80}.ticket-mode-buttons .mode-btn.active{background:#fff;box-shadow:0 2px 4px #0000001a;color:#3498db}.ticket-integration-section{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;margin-top:16px;padding:16px}.ticket-integration-section>label{color:#2c3e50;display:block;font-weight:600;margin-bottom:12px}.ticket-mode-options{display:flex;flex-wrap:wrap;gap:20px;margin-bottom:16px}.ticket-mode-options .radio-label{align-items:center;background:#fff;border:1px solid #ddd;border-radius:6px;cursor:pointer;display:flex;gap:8px;padding:8px 16px;transition:all .2s ease}.ticket-mode-options .radio-label:hover{border-color:#3498db}.ticket-mode-options .radio-label input[type=radio]:checked+span,.ticket-mode-options .radio-label:has(input:checked){background:#ebf5ff;border-color:#3498db}.existing-ticket-input{margin-top:12px}.existing-ticket-input label{color:#4a5568;display:block;font-size:14px;margin-bottom:6px}.existing-ticket-input input{border:1px solid #ddd;border-radius:6px;font-size:14px;padding:10px 14px;width:200px}.existing-ticket-input input:focus{border-color:#3498db;box-shadow:0 0 0 3px #3498db1a;outline:none}.new-ticket-options{border-top:1px solid #e2e8f0;margin-top:12px;padding-top:12px}.new-ticket-options .form-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr;margin-bottom:12px}.new-ticket-options .form-group{margin-bottom:0}.new-ticket-options .form-group label{color:#4a5568;display:block;font-size:14px;margin-bottom:6px}.new-ticket-options .form-group input,.new-ticket-options .form-group select{border:1px solid #ddd;border-radius:6px;font-size:14px;padding:10px 14px;width:100%}.new-ticket-options .form-group input:focus,.new-ticket-options .form-group select:focus{border-color:#3498db;box-shadow:0 0 0 3px #3498db1a;outline:none}.field-hint{color:#7f8c8d;display:block;font-size:12px;margin-top:4px}.field-hint.warning{color:#d97706;font-weight:500}.tenant-selector-group select.highlight-required{background-color:#fffbeb;border-color:#f59e0b}.tenant-selector-group select.highlight-required:focus{border-color:#f59e0b;box-shadow:0 0 0 3px #f59e0b33}.ticket-section{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:20px;padding:16px}.ticket-section>label{color:#2c3e50;display:block;font-weight:600;margin-bottom:12px}.ticket-mode-row{align-items:center;display:flex;flex-wrap:wrap;gap:24px}.ticket-mode-row .radio-label{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:6px;cursor:pointer;display:flex;gap:8px;padding:8px 16px;transition:all .15s}.ticket-mode-row .radio-label:hover{border-color:#3498db}.ticket-mode-row .radio-label:has(input:checked){background:#ebf5ff;border-color:#3498db}.ticket-mode-row .radio-label input[type=radio]:disabled+span{color:#94a3b8}.ticket-update-option{align-items:center;display:flex;gap:8px}.inline-ticket-input{border:1px solid #ddd;border-radius:4px;font-size:14px;margin-left:8px;padding:6px 10px;width:100px}.inline-ticket-input:focus{border-color:#3498db;box-shadow:0 0 0 2px #3498db33;outline:none}.inline-ticket-input::placeholder{color:#94a3b8}.task-form-modal .form-group input:disabled,.task-form-modal .form-group select:disabled,.task-form-modal .form-group textarea:disabled{background-color:#f1f5f9;color:#94a3b8;cursor:not-allowed}.input-mode-section{margin-bottom:20px}.input-mode-section>label{color:#2c3e50;display:block;font-size:14px;font-weight:500;margin-bottom:10px}.input-mode-toggle{background:#f1f5f9;border-radius:8px;display:flex;gap:8px;padding:4px;width:-webkit-fit-content;width:fit-content}.mode-btn{background:#0000;border:none;color:#64748b;display:flex;font-size:14px;padding:10px 16px}.mode-btn:hover{background:#ffffff80}.mode-btn.active{background:#fff;box-shadow:0 2px 4px #0000001a;color:#3498db}.natural-language-section{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:1px solid #e2e8f0;border-radius:8px;margin-bottom:20px;padding:20px}.natural-language-section label{color:#2c3e50;display:block;font-size:14px;font-weight:500;margin-bottom:8px}.natural-language-section textarea{border:1px solid #ddd;border-radius:6px;font-size:14px;min-height:100px;padding:14px 16px;resize:vertical;transition:border-color .2s;width:100%}.natural-language-section textarea:focus{border-color:#3498db;box-shadow:0 0 0 3px #3498db1a;outline:none}.nl-actions{display:flex;justify-content:flex-end;margin-top:12px}.interpret-btn{align-items:center;background:linear-gradient(135deg,#9b59b6,#8e44ad);border:none;border-radius:6px;color:#fff;cursor:pointer;display:inline-flex;font-size:14px;font-weight:500;gap:8px;padding:10px 20px;transition:all .2s}.interpret-btn:hover:not(:disabled){box-shadow:0 4px 8px #9b59b64d;transform:translateY(-1px)}.interpret-btn:disabled{cursor:not-allowed;opacity:.6}.interpret-error{align-items:center;background:#fee2e2;border:1px solid #fecaca;border-radius:6px;color:#dc2626;display:flex;font-size:14px;gap:8px;margin-top:12px;padding:12px 16px}.command-preview{background:#fff;border:2px solid #dbeafe;border-radius:8px;margin-bottom:20px;overflow:hidden}.preview-header{align-items:center;background:linear-gradient(135deg,#dbeafe,#e0e7ff);border-bottom:1px solid #c7d2fe;display:flex;justify-content:space-between;padding:14px 16px}.preview-header h4{color:#3730a3;font-size:15px;font-weight:600;margin:0}.preview-badges{display:flex;gap:8px}.confidence-badge{align-items:center;border-radius:12px;display:inline-flex;font-size:12px;font-weight:600;padding:4px 10px}.confidence-badge.high{background:#d1fae5;color:#059669}.confidence-badge.medium{background:#fef3c7;color:#d97706}.confidence-badge.low{background:#fee2e2;color:#dc2626}.source-badge{align-items:center;border-radius:12px;display:inline-flex;font-size:12px;font-weight:500;gap:4px;padding:4px 10px}.source-badge.ai{background:#e0e7ff;color:#4f46e5}.source-badge.pattern{background:#f1f5f9;color:#64748b}.preview-content{padding:16px}.human-readable{background:#f8fafc;border-left:4px solid #3498db;border-radius:6px;color:#1e293b;font-size:16px;font-weight:500;margin-bottom:16px;padding:12px 16px}.preview-details{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:16px}.preview-detail{display:flex;flex-direction:column;gap:4px}.preview-detail strong{color:#64748b;font-size:12px;letter-spacing:.5px;text-transform:uppercase}.preview-detail span{color:#1e293b;font-size:14px}.params-preview{margin-bottom:16px}.params-preview h5{color:#64748b;font-size:13px;letter-spacing:.5px;margin:0 0 8px;text-transform:uppercase}.params-preview pre{background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;font-size:13px;margin:0;overflow-x:auto;padding:12px 16px}.missing-params{align-items:flex-start;background:#fef3c7;border:1px solid #fde68a;border-radius:6px;display:flex;gap:10px;margin-bottom:16px;padding:12px 16px}.missing-params svg{color:#d97706;flex-shrink:0;margin-top:2px}.missing-params span{color:#92400e;font-size:14px}.reasoning{background:#f8fafc;border-radius:6px;color:#64748b;font-size:14px;font-style:italic;margin-bottom:16px;padding:12px 16px}.preview-actions{border-top:1px solid #e2e8f0;display:flex;gap:10px;justify-content:flex-end;padding-top:16px}.btn-regenerate{align-items:center;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:6px;color:#64748b;cursor:pointer;display:inline-flex;font-size:14px;gap:6px;padding:8px 16px;transition:all .2s}.btn-regenerate:hover{background:#e2e8f0}.btn-apply{align-items:center;background:linear-gradient(135deg,#059669,#047857);border:none;border-radius:6px;color:#fff;cursor:pointer;display:inline-flex;font-size:14px;font-weight:500;gap:6px;padding:8px 16px;transition:all .2s}.btn-apply:hover{box-shadow:0 4px 8px #0596694d;transform:translateY(-1px)}@media (max-width:768px){.ticket-mode-options{flex-direction:column;gap:8px}.ticket-mode-options .radio-label{justify-content:flex-start;width:100%}.new-ticket-options .form-row{grid-template-columns:1fr}.existing-ticket-input input,.input-mode-toggle{width:100%}.mode-btn{flex:1 1;justify-content:center}.preview-details{grid-template-columns:1fr}.preview-badges{flex-wrap:wrap}}.code-section{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:20px;padding:16px}.code-section>label{color:#2c3e50;display:block;font-weight:600;margin-bottom:12px}.code-editor-container{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.code-editor-panel,.code-preview-panel{background:#fff;border:1px solid #e2e8f0;border-radius:6px;overflow:hidden}.panel-header{align-items:center;background:#f1f5f9;border-bottom:1px solid #e2e8f0;color:#64748b;display:flex;font-size:13px;font-weight:500;justify-content:space-between;padding:10px 14px}.preview-badge{background:#dbeafe;border-radius:10px;color:#2563eb;font-size:11px;font-weight:500;padding:2px 8px}.code-editor-panel .code-input{border:none;border-radius:0;font-family:Menlo,Monaco,Courier New,monospace;font-size:13px;min-height:140px;padding:14px;resize:vertical;width:100%}.code-editor-panel .code-input:focus{box-shadow:none;outline:none}.code-preview{word-wrap:break-word;background:#f8fafc;color:#334155;font-family:Menlo,Monaco,Courier New,monospace;font-size:13px;line-height:1.5;margin:0;max-height:200px;min-height:140px;overflow:auto;padding:14px;white-space:pre-wrap}.tool-lock-hint{background:#dbeafe;color:#1e40af;display:block;font-size:13px;font-weight:500;margin-bottom:12px}.error-hint,.tool-lock-hint{border-radius:4px;padding:8px 12px}.error-hint{background:#fee2e2;color:#dc2626!important;margin-top:8px}.has-error,.input-error{background:#fef2f2!important;border-color:#dc2626!important}.input-error:focus{border-color:#dc2626!important;box-shadow:0 0 0 3px #dc262633!important}.input-valid,.input-valid:focus{border-color:#16a34a!important}.input-valid:focus{box-shadow:0 0 0 3px #16a34a26!important}.json-indicator{align-items:center;display:inline-flex;margin-left:8px;vertical-align:middle}.json-indicator.valid{color:#16a34a}.field-error,.json-indicator.invalid{color:#dc2626}.field-error{align-items:center;background:#fef2f2;border:1px solid #fecaca;border-radius:6px;display:flex;font-size:12px;gap:6px;line-height:1.4;margin-top:6px;padding:8px 12px}.field-error svg{flex-shrink:0}.query-params-display{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:16px;padding:12px 16px}.query-params-display>label{align-items:center;color:#64748b;display:flex;font-size:12px;font-weight:600;gap:6px;letter-spacing:.5px;margin-bottom:10px;text-transform:uppercase}.query-params-list{display:flex;flex-direction:column;gap:6px}.query-param-item{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:4px;display:flex;font-family:Menlo,Monaco,Courier New,monospace;font-size:12px;gap:4px;padding:6px 10px}.query-param-item .param-key{color:#0369a1;font-weight:600}.query-param-item .param-equals{color:#94a3b8}.query-param-item .param-value{color:#16a34a;flex:1 1;word-break:break-all}@media (max-width:768px){.code-editor-container{grid-template-columns:1fr}.code-preview-panel{order:-1}}.task-type-section{margin-bottom:20px}.task-type-selector{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-top:8px}.task-type-card{align-items:flex-start;background:#f8fafc;border:2px solid #e2e8f0;border-radius:8px;cursor:pointer;display:flex;gap:12px;padding:16px;position:relative;transition:all .2s ease}.task-type-card:hover:not(.disabled){background:#f1f5f9;border-color:#3498db;border-color:var(--type-color,#3498db)}.task-type-card.selected{background:#fff;border-color:#3498db;border-color:var(--type-color,#3498db);box-shadow:0 2px 8px #0000001a}.task-type-card.disabled{background:#f1f5f9;cursor:not-allowed;opacity:.6}.task-type-icon{align-items:center;background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;color:#3498db;color:var(--type-color,#3498db);display:flex;flex-shrink:0;height:40px;justify-content:center;width:40px}.task-type-card.selected .task-type-icon{background:#3498db;background:var(--type-color,#3498db);color:#fff}.task-type-info{display:flex;flex:1 1;flex-direction:column;gap:4px}.task-type-name{color:#1e293b;font-size:14px;font-weight:600}.task-type-description{color:#64748b;font-size:12px;line-height:1.4}.task-type-check{color:#3498db;color:var(--type-color,#3498db);position:absolute;right:8px;top:8px}.coming-soon-badge{background:#f59e0b;color:#fff;position:absolute;right:8px;top:8px}.task-type-form{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:20px;padding:20px}.form-section-title{align-items:center;border-bottom:1px solid #e2e8f0;color:#1e293b;display:flex;gap:8px;margin:0 0 16px;padding-bottom:12px}.auto-ticket-form .form-section-title svg,.form-section-title svg{color:#3498db}.ai-command-form .form-section-title svg{color:#9b59b6}.webhook-form .form-section-title svg{color:#27ae60}.copilot-form .form-section-title svg{color:#f39c12}.task-type-form .code-input{background:#f1f5f9;border:1px solid #e2e8f0;font-family:Menlo,Monaco,Courier New,monospace;font-size:13px}.task-type-form .code-input:focus{background:#fff;border-color:#3498db;box-shadow:0 0 0 3px #3498db1a}.coming-soon-overlay{min-height:200px;position:relative}.coming-soon-message{align-items:center;color:#64748b;display:flex;flex-direction:column;justify-content:center;padding:40px 20px;text-align:center}.coming-soon-message svg{color:#f39c12;margin-bottom:16px;opacity:.7}.coming-soon-message p{font-size:16px;font-weight:500;margin:0}.coming-soon-message .sub-text{color:#94a3b8;font-size:14px;font-weight:400;margin-top:8px}@media (max-width:768px){.task-type-selector{grid-template-columns:1fr}.task-type-card{padding:12px}.task-type-icon{height:36px;width:36px}}.task-type-badge{align-items:center;background:color-mix(in srgb,#3498db 15%,#fff);background:color-mix(in srgb,var(--type-color,#3498db) 15%,#fff);border-radius:12px;color:#3498db;color:var(--type-color,#3498db);display:inline-flex;font-size:12px;font-weight:500;gap:6px;padding:4px 10px;white-space:nowrap}.task-type-badge svg{flex-shrink:0}.task-col.type-col{min-width:100px}.mcp-modules-info{align-items:center;background:#f0f9ff;border:1px solid #bae6fd;border-radius:6px;display:flex;flex-wrap:wrap;gap:10px;margin-bottom:16px;padding:10px 12px}.mcp-modules-info .modules-label{color:#0369a1;font-size:12px;font-weight:500}.mcp-modules-info .modules-tags{display:flex;flex-wrap:wrap;gap:6px}.mcp-modules-info .module-tag{background:#fff;border:1px solid #7dd3fc;border-radius:4px;color:#0284c7;cursor:help;display:inline-flex;font-size:11px;padding:2px 8px}.ai-command-actions{align-items:center;display:flex;gap:12px;margin-bottom:16px;margin-top:12px}.ai-command-actions .test-command-btn{align-items:center;display:inline-flex;gap:8px}.ai-command-actions .validation-hint{color:#dc2626;font-size:12px;font-weight:500}.dry-run-error{align-items:center;background:#fef2f2;border:1px solid #fecaca;border-radius:6px;color:#dc2626;display:flex;font-size:13px;gap:8px;margin-bottom:16px;padding:10px 14px}.dry-run-error svg{flex-shrink:0}.dry-run-result{background:#f0fdf4;border:1px solid #86efac;border-radius:8px;margin-bottom:16px;overflow:hidden}.dry-run-result .result-header{align-items:center;background:#dcfce7;border-bottom:1px solid #86efac;display:flex;gap:10px;padding:12px 16px}.dry-run-result .result-header svg{color:#16a34a}.dry-run-result .result-header span{color:#166534;font-weight:500}.dry-run-result .confidence-badge{border-radius:12px;font-size:11px;font-weight:600;margin-left:auto;padding:2px 8px}.dry-run-result .confidence-badge.high{background:#dcfce7;color:#166534}.dry-run-result .confidence-badge.medium{background:#fef9c3;color:#854d0e}.dry-run-result .confidence-badge.low{background:#fee2e2;color:#991b1b}.dry-run-result .result-content{padding:14px 16px}.dry-run-result .human-readable{color:#15803d;font-size:14px;font-style:italic;margin:0 0 12px}.dry-run-result .result-details{display:flex;flex-direction:column;gap:8px}.dry-run-result .detail-row{display:flex;font-size:13px;gap:8px}.dry-run-result .detail-row .label{color:#4b5563;flex-shrink:0;font-weight:500;min-width:80px}.dry-run-result .detail-row .value{color:#1f2937;font-family:SF Mono,Consolas,monospace}.dry-run-result .params-preview{background:#fff;border:1px solid #d1fae5;border-radius:4px;font-family:SF Mono,Consolas,monospace;font-size:11px;line-height:1.4;margin:4px 0 0;max-height:120px;overflow-x:auto;padding:8px 10px}.dry-run-result .reasoning{border-top:1px solid #bbf7d0;color:#4b5563;font-size:12px;font-style:italic;margin:12px 0 0;padding-top:12px}.filter-toggle.system-tasks-toggle{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;color:#64748b;cursor:pointer;display:inline-flex;font-size:13px;gap:6px;padding:6px 12px;transition:all .15s ease}.filter-toggle.system-tasks-toggle:hover{background:#f1f5f9;border-color:#cbd5e1}.filter-toggle.system-tasks-toggle input[type=checkbox]{accent-color:#4a90d9;cursor:pointer;height:14px;margin:0;width:14px}.filter-toggle.system-tasks-toggle span{white-space:nowrap}.system-badge{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:inline-flex;font-size:10px;font-weight:600;letter-spacing:.5px;margin-left:8px;padding:2px 6px;text-transform:uppercase;vertical-align:middle}.task-row.system-task{background:#fafaff}.task-row.system-task:hover{background:#f5f5ff}.action-btn:disabled{cursor:not-allowed;opacity:.4}.action-btn:disabled:hover{background:#0000;transform:none}

/*!
 * Quill Editor v1.3.7
 * https://quilljs.com/
 * Copyright (c) 2014, Jason Chen
 * Copyright (c) 2013, salesforce.com
 */.ql-container{box-sizing:border-box;font-family:Helvetica,Arial,sans-serif;font-size:13px;height:100%;margin:0;position:relative}.ql-container.ql-disabled .ql-tooltip{visibility:hidden}.ql-container.ql-disabled .ql-editor ul[data-checked]>li:before{pointer-events:none}.ql-clipboard{height:1px;left:-100000px;overflow-y:hidden;position:absolute;top:50%}.ql-clipboard p{margin:0;padding:0}.ql-editor{word-wrap:break-word;box-sizing:border-box;height:100%;line-height:1.42;outline:none;overflow-y:auto;padding:12px 15px;tab-size:4;-moz-tab-size:4;text-align:left;white-space:pre-wrap}.ql-editor>*{cursor:text}.ql-editor blockquote,.ql-editor h1,.ql-editor h2,.ql-editor h3,.ql-editor h4,.ql-editor h5,.ql-editor h6,.ql-editor ol,.ql-editor p,.ql-editor pre,.ql-editor ul{counter-reset:list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9;margin:0;padding:0}.ql-editor ol,.ql-editor ul{padding-left:1.5em}.ql-editor ol>li,.ql-editor ul>li{list-style-type:none}.ql-editor ul>li:before{content:"\2022"}.ql-editor ul[data-checked=false],.ql-editor ul[data-checked=true]{pointer-events:none}.ql-editor ul[data-checked=false]>li *,.ql-editor ul[data-checked=true]>li *{pointer-events:all}.ql-editor ul[data-checked=false]>li:before,.ql-editor ul[data-checked=true]>li:before{color:#777;cursor:pointer;pointer-events:all}.ql-editor ul[data-checked=true]>li:before{content:"\2611"}.ql-editor ul[data-checked=false]>li:before{content:"\2610"}.ql-editor li:before{display:inline-block;white-space:nowrap;width:1.2em}.ql-editor li:not(.ql-direction-rtl):before{margin-left:-1.5em;margin-right:.3em;text-align:right}.ql-editor li.ql-direction-rtl:before{margin-left:.3em;margin-right:-1.5em}.ql-editor ol li:not(.ql-direction-rtl),.ql-editor ul li:not(.ql-direction-rtl){padding-left:1.5em}.ql-editor ol li.ql-direction-rtl,.ql-editor ul li.ql-direction-rtl{padding-right:1.5em}.ql-editor ol li{counter-increment:list-0;counter-reset:list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol li:before{content:counter(list-0,decimal) ". "}.ql-editor ol li.ql-indent-1{counter-increment:list-1}.ql-editor ol li.ql-indent-1:before{content:counter(list-1,lower-alpha) ". "}.ql-editor ol li.ql-indent-1{counter-reset:list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-2{counter-increment:list-2}.ql-editor ol li.ql-indent-2:before{content:counter(list-2,lower-roman) ". "}.ql-editor ol li.ql-indent-2{counter-reset:list-3 list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-3{counter-increment:list-3}.ql-editor ol li.ql-indent-3:before{content:counter(list-3,decimal) ". "}.ql-editor ol li.ql-indent-3{counter-reset:list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-4{counter-increment:list-4}.ql-editor ol li.ql-indent-4:before{content:counter(list-4,lower-alpha) ". "}.ql-editor ol li.ql-indent-4{counter-reset:list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-5{counter-increment:list-5}.ql-editor ol li.ql-indent-5:before{content:counter(list-5,lower-roman) ". "}.ql-editor ol li.ql-indent-5{counter-reset:list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-6{counter-increment:list-6}.ql-editor ol li.ql-indent-6:before{content:counter(list-6,decimal) ". "}.ql-editor ol li.ql-indent-6{counter-reset:list-7 list-8 list-9}.ql-editor ol li.ql-indent-7{counter-increment:list-7}.ql-editor ol li.ql-indent-7:before{content:counter(list-7,lower-alpha) ". "}.ql-editor ol li.ql-indent-7{counter-reset:list-8 list-9}.ql-editor ol li.ql-indent-8{counter-increment:list-8}.ql-editor ol li.ql-indent-8:before{content:counter(list-8,lower-roman) ". "}.ql-editor ol li.ql-indent-8{counter-reset:list-9}.ql-editor ol li.ql-indent-9{counter-increment:list-9}.ql-editor ol li.ql-indent-9:before{content:counter(list-9,decimal) ". "}.ql-editor .ql-indent-1:not(.ql-direction-rtl){padding-left:3em}.ql-editor li.ql-indent-1:not(.ql-direction-rtl){padding-left:4.5em}.ql-editor .ql-indent-1.ql-direction-rtl.ql-align-right{padding-right:3em}.ql-editor li.ql-indent-1.ql-direction-rtl.ql-align-right{padding-right:4.5em}.ql-editor .ql-indent-2:not(.ql-direction-rtl){padding-left:6em}.ql-editor li.ql-indent-2:not(.ql-direction-rtl){padding-left:7.5em}.ql-editor .ql-indent-2.ql-direction-rtl.ql-align-right{padding-right:6em}.ql-editor li.ql-indent-2.ql-direction-rtl.ql-align-right{padding-right:7.5em}.ql-editor .ql-indent-3:not(.ql-direction-rtl){padding-left:9em}.ql-editor li.ql-indent-3:not(.ql-direction-rtl){padding-left:10.5em}.ql-editor .ql-indent-3.ql-direction-rtl.ql-align-right{padding-right:9em}.ql-editor li.ql-indent-3.ql-direction-rtl.ql-align-right{padding-right:10.5em}.ql-editor .ql-indent-4:not(.ql-direction-rtl){padding-left:12em}.ql-editor li.ql-indent-4:not(.ql-direction-rtl){padding-left:13.5em}.ql-editor .ql-indent-4.ql-direction-rtl.ql-align-right{padding-right:12em}.ql-editor li.ql-indent-4.ql-direction-rtl.ql-align-right{padding-right:13.5em}.ql-editor .ql-indent-5:not(.ql-direction-rtl){padding-left:15em}.ql-editor li.ql-indent-5:not(.ql-direction-rtl){padding-left:16.5em}.ql-editor .ql-indent-5.ql-direction-rtl.ql-align-right{padding-right:15em}.ql-editor li.ql-indent-5.ql-direction-rtl.ql-align-right{padding-right:16.5em}.ql-editor .ql-indent-6:not(.ql-direction-rtl){padding-left:18em}.ql-editor li.ql-indent-6:not(.ql-direction-rtl){padding-left:19.5em}.ql-editor .ql-indent-6.ql-direction-rtl.ql-align-right{padding-right:18em}.ql-editor li.ql-indent-6.ql-direction-rtl.ql-align-right{padding-right:19.5em}.ql-editor .ql-indent-7:not(.ql-direction-rtl){padding-left:21em}.ql-editor li.ql-indent-7:not(.ql-direction-rtl){padding-left:22.5em}.ql-editor .ql-indent-7.ql-direction-rtl.ql-align-right{padding-right:21em}.ql-editor li.ql-indent-7.ql-direction-rtl.ql-align-right{padding-right:22.5em}.ql-editor .ql-indent-8:not(.ql-direction-rtl){padding-left:24em}.ql-editor li.ql-indent-8:not(.ql-direction-rtl){padding-left:25.5em}.ql-editor .ql-indent-8.ql-direction-rtl.ql-align-right{padding-right:24em}.ql-editor li.ql-indent-8.ql-direction-rtl.ql-align-right{padding-right:25.5em}.ql-editor .ql-indent-9:not(.ql-direction-rtl){padding-left:27em}.ql-editor li.ql-indent-9:not(.ql-direction-rtl){padding-left:28.5em}.ql-editor .ql-indent-9.ql-direction-rtl.ql-align-right{padding-right:27em}.ql-editor li.ql-indent-9.ql-direction-rtl.ql-align-right{padding-right:28.5em}.ql-editor .ql-video{display:block;max-width:100%}.ql-editor .ql-video.ql-align-center{margin:0 auto}.ql-editor .ql-video.ql-align-right{margin:0 0 0 auto}.ql-editor .ql-bg-black{background-color:#000}.ql-editor .ql-bg-red{background-color:#e60000}.ql-editor .ql-bg-orange{background-color:#f90}.ql-editor .ql-bg-yellow{background-color:#ff0}.ql-editor .ql-bg-green{background-color:#008a00}.ql-editor .ql-bg-blue{background-color:#06c}.ql-editor .ql-bg-purple{background-color:#93f}.ql-editor .ql-color-white{color:#fff}.ql-editor .ql-color-red{color:#e60000}.ql-editor .ql-color-orange{color:#f90}.ql-editor .ql-color-yellow{color:#ff0}.ql-editor .ql-color-green{color:#008a00}.ql-editor .ql-color-blue{color:#06c}.ql-editor .ql-color-purple{color:#93f}.ql-editor .ql-font-serif{font-family:Georgia,Times New Roman,serif}.ql-editor .ql-font-monospace{font-family:Monaco,Courier New,monospace}.ql-editor .ql-size-small{font-size:.75em}.ql-editor .ql-size-large{font-size:1.5em}.ql-editor .ql-size-huge{font-size:2.5em}.ql-editor .ql-direction-rtl{direction:rtl;text-align:inherit}.ql-editor .ql-align-center{text-align:center}.ql-editor .ql-align-justify{text-align:justify}.ql-editor .ql-align-right{text-align:right}.ql-editor.ql-blank:before{color:#0009;content:attr(data-placeholder);font-style:italic;left:15px;pointer-events:none;position:absolute;right:15px}.ql-snow .ql-toolbar:after,.ql-snow.ql-toolbar:after{clear:both;content:"";display:table}.ql-snow .ql-toolbar button,.ql-snow.ql-toolbar button{background:none;border:none;cursor:pointer;display:inline-block;float:left;height:24px;padding:3px 5px;width:28px}.ql-snow .ql-toolbar button svg,.ql-snow.ql-toolbar button svg{float:left;height:100%}.ql-snow .ql-toolbar button:active:hover,.ql-snow.ql-toolbar button:active:hover{outline:none}.ql-snow .ql-toolbar input.ql-image[type=file],.ql-snow.ql-toolbar input.ql-image[type=file]{display:none}.ql-snow .ql-toolbar .ql-picker-item.ql-selected,.ql-snow .ql-toolbar .ql-picker-item:hover,.ql-snow .ql-toolbar .ql-picker-label.ql-active,.ql-snow .ql-toolbar .ql-picker-label:hover,.ql-snow .ql-toolbar button.ql-active,.ql-snow .ql-toolbar button:focus,.ql-snow .ql-toolbar button:hover,.ql-snow.ql-toolbar .ql-picker-item.ql-selected,.ql-snow.ql-toolbar .ql-picker-item:hover,.ql-snow.ql-toolbar .ql-picker-label.ql-active,.ql-snow.ql-toolbar .ql-picker-label:hover,.ql-snow.ql-toolbar button.ql-active,.ql-snow.ql-toolbar button:focus,.ql-snow.ql-toolbar button:hover{color:#06c}.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-fill,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-fill,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-fill,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-fill,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke.ql-fill,.ql-snow .ql-toolbar button.ql-active .ql-fill,.ql-snow .ql-toolbar button.ql-active .ql-stroke.ql-fill,.ql-snow .ql-toolbar button:focus .ql-fill,.ql-snow .ql-toolbar button:focus .ql-stroke.ql-fill,.ql-snow .ql-toolbar button:hover .ql-fill,.ql-snow .ql-toolbar button:hover .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-fill,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-fill,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-fill,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-fill,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke.ql-fill,.ql-snow.ql-toolbar button.ql-active .ql-fill,.ql-snow.ql-toolbar button.ql-active .ql-stroke.ql-fill,.ql-snow.ql-toolbar button:focus .ql-fill,.ql-snow.ql-toolbar button:focus .ql-stroke.ql-fill,.ql-snow.ql-toolbar button:hover .ql-fill,.ql-snow.ql-toolbar button:hover .ql-stroke.ql-fill{fill:#06c}.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke-miter,.ql-snow .ql-toolbar button.ql-active .ql-stroke,.ql-snow .ql-toolbar button.ql-active .ql-stroke-miter,.ql-snow .ql-toolbar button:focus .ql-stroke,.ql-snow .ql-toolbar button:focus .ql-stroke-miter,.ql-snow .ql-toolbar button:hover .ql-stroke,.ql-snow .ql-toolbar button:hover .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke-miter,.ql-snow.ql-toolbar button.ql-active .ql-stroke,.ql-snow.ql-toolbar button.ql-active .ql-stroke-miter,.ql-snow.ql-toolbar button:focus .ql-stroke,.ql-snow.ql-toolbar button:focus .ql-stroke-miter,.ql-snow.ql-toolbar button:hover .ql-stroke,.ql-snow.ql-toolbar button:hover .ql-stroke-miter{stroke:#06c}@media (pointer:coarse){.ql-snow .ql-toolbar button:hover:not(.ql-active),.ql-snow.ql-toolbar button:hover:not(.ql-active){color:#444}.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-fill,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke.ql-fill,.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-fill,.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke.ql-fill{fill:#444}.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke-miter,.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke,.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke-miter{stroke:#444}}.ql-snow,.ql-snow *{box-sizing:border-box}.ql-snow .ql-hidden{display:none}.ql-snow .ql-out-bottom,.ql-snow .ql-out-top{visibility:hidden}.ql-snow .ql-tooltip{position:absolute;transform:translateY(10px)}.ql-snow .ql-tooltip a{cursor:pointer;text-decoration:none}.ql-snow .ql-tooltip.ql-flip{transform:translateY(-10px)}.ql-snow .ql-formats{display:inline-block;vertical-align:middle}.ql-snow .ql-formats:after{clear:both;content:"";display:table}.ql-snow .ql-stroke{fill:none;stroke:#444;stroke-linecap:round;stroke-linejoin:round;stroke-width:2}.ql-snow .ql-stroke-miter{fill:none;stroke:#444;stroke-miterlimit:10;stroke-width:2}.ql-snow .ql-fill,.ql-snow .ql-stroke.ql-fill{fill:#444}.ql-snow .ql-empty{fill:none}.ql-snow .ql-even{fill-rule:evenodd}.ql-snow .ql-stroke.ql-thin,.ql-snow .ql-thin{stroke-width:1}.ql-snow .ql-transparent{opacity:.4}.ql-snow .ql-direction svg:last-child{display:none}.ql-snow .ql-direction.ql-active svg:last-child{display:inline}.ql-snow .ql-direction.ql-active svg:first-child{display:none}.ql-snow .ql-editor h1{font-size:2em}.ql-snow .ql-editor h2{font-size:1.5em}.ql-snow .ql-editor h3{font-size:1.17em}.ql-snow .ql-editor h4{font-size:1em}.ql-snow .ql-editor h5{font-size:.83em}.ql-snow .ql-editor h6{font-size:.67em}.ql-snow .ql-editor a{text-decoration:underline}.ql-snow .ql-editor blockquote{border-left:4px solid #ccc;margin-bottom:5px;margin-top:5px;padding-left:16px}.ql-snow .ql-editor code,.ql-snow .ql-editor pre{background-color:#f0f0f0;border-radius:3px}.ql-snow .ql-editor pre{margin-bottom:5px;margin-top:5px;padding:5px 10px;white-space:pre-wrap}.ql-snow .ql-editor code{font-size:85%;padding:2px 4px}.ql-snow .ql-editor pre.ql-syntax{background-color:#23241f;color:#f8f8f2;overflow:visible}.ql-snow .ql-editor img{max-width:100%}.ql-snow .ql-picker{color:#444;display:inline-block;float:left;font-size:14px;font-weight:500;height:24px;position:relative;vertical-align:middle}.ql-snow .ql-picker-label{cursor:pointer;display:inline-block;height:100%;padding-left:8px;padding-right:2px;position:relative;width:100%}.ql-snow .ql-picker-label:before{display:inline-block;line-height:22px}.ql-snow .ql-picker-options{background-color:#fff;display:none;min-width:100%;padding:4px 8px;position:absolute;white-space:nowrap}.ql-snow .ql-picker-options .ql-picker-item{cursor:pointer;display:block;padding-bottom:5px;padding-top:5px}.ql-snow .ql-picker.ql-expanded .ql-picker-label{color:#ccc;z-index:2}.ql-snow .ql-picker.ql-expanded .ql-picker-label .ql-fill{fill:#ccc}.ql-snow .ql-picker.ql-expanded .ql-picker-label .ql-stroke{stroke:#ccc}.ql-snow .ql-picker.ql-expanded .ql-picker-options{display:block;margin-top:-1px;top:100%;z-index:1}.ql-snow .ql-color-picker,.ql-snow .ql-icon-picker{width:28px}.ql-snow .ql-color-picker .ql-picker-label,.ql-snow .ql-icon-picker .ql-picker-label{padding:2px 4px}.ql-snow .ql-color-picker .ql-picker-label svg,.ql-snow .ql-icon-picker .ql-picker-label svg{right:4px}.ql-snow .ql-icon-picker .ql-picker-options{padding:4px 0}.ql-snow .ql-icon-picker .ql-picker-item{height:24px;padding:2px 4px;width:24px}.ql-snow .ql-color-picker .ql-picker-options{padding:3px 5px;width:152px}.ql-snow .ql-color-picker .ql-picker-item{border:1px solid #0000;float:left;height:16px;margin:2px;padding:0;width:16px}.ql-snow .ql-picker:not(.ql-color-picker):not(.ql-icon-picker) svg{margin-top:-9px;position:absolute;right:0;top:50%;width:18px}.ql-snow .ql-picker.ql-font .ql-picker-item[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-font .ql-picker-label[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-header .ql-picker-label[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-size .ql-picker-label[data-label]:not([data-label=""]):before{content:attr(data-label)}.ql-snow .ql-picker.ql-header{width:98px}.ql-snow .ql-picker.ql-header .ql-picker-item:before,.ql-snow .ql-picker.ql-header .ql-picker-label:before{content:"Normal"}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="1"]:before,.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="1"]:before{content:"Heading 1"}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="2"]:before,.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="2"]:before{content:"Heading 2"}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="3"]:before,.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="3"]:before{content:"Heading 3"}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="4"]:before,.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="4"]:before{content:"Heading 4"}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="5"]:before,.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="5"]:before{content:"Heading 5"}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="6"]:before,.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="6"]:before{content:"Heading 6"}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="1"]:before{font-size:2em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="2"]:before{font-size:1.5em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="3"]:before{font-size:1.17em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="4"]:before{font-size:1em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="5"]:before{font-size:.83em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="6"]:before{font-size:.67em}.ql-snow .ql-picker.ql-font{width:108px}.ql-snow .ql-picker.ql-font .ql-picker-item:before,.ql-snow .ql-picker.ql-font .ql-picker-label:before{content:"Sans Serif"}.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=serif]:before,.ql-snow .ql-picker.ql-font .ql-picker-label[data-value=serif]:before{content:"Serif"}.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=monospace]:before,.ql-snow .ql-picker.ql-font .ql-picker-label[data-value=monospace]:before{content:"Monospace"}.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=serif]:before{font-family:Georgia,Times New Roman,serif}.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=monospace]:before{font-family:Monaco,Courier New,monospace}.ql-snow .ql-picker.ql-size{width:98px}.ql-snow .ql-picker.ql-size .ql-picker-item:before,.ql-snow .ql-picker.ql-size .ql-picker-label:before{content:"Normal"}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=small]:before,.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=small]:before{content:"Small"}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=large]:before,.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=large]:before{content:"Large"}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=huge]:before,.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=huge]:before{content:"Huge"}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=small]:before{font-size:10px}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=large]:before{font-size:18px}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=huge]:before{font-size:32px}.ql-snow .ql-color-picker.ql-background .ql-picker-item{background-color:#fff}.ql-snow .ql-color-picker.ql-color .ql-picker-item{background-color:#000}.ql-toolbar.ql-snow{border:1px solid #ccc;box-sizing:border-box;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;padding:8px}.ql-toolbar.ql-snow .ql-formats{margin-right:15px}.ql-toolbar.ql-snow .ql-picker-label{border:1px solid #0000}.ql-toolbar.ql-snow .ql-picker-options{border:1px solid #0000;box-shadow:0 2px 8px #0003}.ql-toolbar.ql-snow .ql-picker.ql-expanded .ql-picker-label,.ql-toolbar.ql-snow .ql-picker.ql-expanded .ql-picker-options{border-color:#ccc}.ql-toolbar.ql-snow .ql-color-picker .ql-picker-item.ql-selected,.ql-toolbar.ql-snow .ql-color-picker .ql-picker-item:hover{border-color:#000}.ql-toolbar.ql-snow+.ql-container.ql-snow{border-top:0}.ql-snow .ql-tooltip{background-color:#fff;border:1px solid #ccc;box-shadow:0 0 5px #ddd;color:#444;padding:5px 12px;white-space:nowrap}.ql-snow .ql-tooltip:before{content:"Visit URL:";line-height:26px;margin-right:8px}.ql-snow .ql-tooltip input[type=text]{border:1px solid #ccc;display:none;font-size:13px;height:26px;margin:0;padding:3px 5px;width:170px}.ql-snow .ql-tooltip a.ql-preview{display:inline-block;max-width:200px;overflow-x:hidden;text-overflow:ellipsis;vertical-align:top}.ql-snow .ql-tooltip a.ql-action:after{border-right:1px solid #ccc;content:"Edit";margin-left:16px;padding-right:8px}.ql-snow .ql-tooltip a.ql-remove:before{content:"Remove";margin-left:8px}.ql-snow .ql-tooltip a{line-height:26px}.ql-snow .ql-tooltip.ql-editing a.ql-preview,.ql-snow .ql-tooltip.ql-editing a.ql-remove{display:none}.ql-snow .ql-tooltip.ql-editing input[type=text]{display:inline-block}.ql-snow .ql-tooltip.ql-editing a.ql-action:after{border-right:0;content:"Save";padding-right:0}.ql-snow .ql-tooltip[data-mode=link]:before{content:"Enter link:"}.ql-snow .ql-tooltip[data-mode=formula]:before{content:"Enter formula:"}.ql-snow .ql-tooltip[data-mode=video]:before{content:"Enter video:"}.ql-snow a{color:#06c}.ql-container.ql-snow{border:1px solid #ccc}.infodocs-upload-modal{max-width:600px;width:100%}.infodocs-upload-modal.modal-lg{max-width:800px}.upload-description{color:var(--text-secondary);font-size:14px;line-height:1.5;margin:0 0 16px}.upload-error{align-items:flex-start;background:#fee2e2;background:var(--danger-bg,#fee2e2);border:1px solid var(--danger-color);border-radius:6px;color:var(--danger-color);display:flex;font-size:14px;gap:8px;margin-bottom:16px;padding:12px}.upload-error svg{flex-shrink:0;margin-top:2px}.upload-section{margin-bottom:16px}.upload-section label{color:var(--text-primary);display:block;font-size:14px;font-weight:500;margin-bottom:8px}.upload-section textarea{background:var(--card-bg);background:var(--input-bg,var(--card-bg));border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);font-family:inherit;font-size:14px;min-height:100px;padding:12px;resize:vertical;transition:border-color .2s,box-shadow .2s;width:100%}.upload-section textarea:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px #3b82f61a;outline:none}.upload-section textarea:disabled{background:var(--secondary-bg);cursor:not-allowed}.file-drop-zone{align-items:center;background:var(--secondary-bg);border:2px dashed var(--border-color);border-radius:8px;cursor:pointer;display:flex;flex-direction:column;justify-content:center;padding:32px 16px;text-align:center;transition:all .2s}.file-drop-zone:hover{background:#dbeafe;background:var(--info-bg,#dbeafe);border-color:var(--primary-color)}.file-drop-zone.has-files{padding:20px 16px}.file-drop-zone svg{color:var(--text-muted);margin-bottom:8px}.file-drop-zone p{color:var(--text-secondary);font-size:14px;margin:0 0 4px}.file-drop-zone .file-types{color:var(--text-muted);font-size:12px}.selected-files{display:flex;flex-direction:column;gap:8px;margin-top:12px}.selected-file{align-items:center;background:var(--secondary-bg);border-radius:6px;display:flex;font-size:13px;gap:8px;padding:8px 12px}.selected-file svg{color:var(--primary-color);flex-shrink:0}.selected-file .file-name{color:var(--text-primary);flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.selected-file .file-size{color:var(--text-muted);font-size:12px}.selected-file .remove-file-btn{align-items:center;background:none;border:none;border-radius:4px;color:var(--text-muted);cursor:pointer;display:flex;justify-content:center;padding:4px;transition:all .2s}.selected-file .remove-file-btn:hover:not(:disabled){background:var(--danger-bg);color:var(--danger-color)}.selected-file .remove-file-btn:disabled{cursor:not-allowed;opacity:.5}.upload-success{padding:24px 0;text-align:center}.upload-success .success-icon{color:var(--success-color);margin-bottom:16px}.upload-success h3{color:var(--text-primary);font-size:18px;margin:0 0 8px}.upload-success p{color:var(--text-secondary);font-size:14px;margin:0}.upload-success .warning-text{color:var(--warning-color);margin-top:8px}.no-updates{color:var(--text-secondary);padding:24px 0;text-align:center}.no-updates p{margin-bottom:16px}.diff-view-container{display:flex;flex-direction:column;gap:16px}.diff-summary{align-items:center;background:var(--secondary-bg);border-radius:6px;color:var(--text-secondary);display:flex;font-size:14px;gap:12px;padding:12px 16px}.diff-summary .count{color:var(--text-primary);font-weight:600}.diff-list{display:flex;flex-direction:column;gap:12px}.diff-item{border:1px solid var(--border-color);border-radius:8px;overflow:hidden;transition:all .2s}.diff-item:hover{border-color:var(--primary-color)}.diff-item-header{align-items:flex-start;background:var(--secondary-bg);cursor:pointer;display:flex;gap:12px;padding:12px 16px}.diff-item-header:hover{background:var(--hover-bg)}.diff-checkbox{accent-color:var(--primary-color);cursor:pointer;flex-shrink:0;height:18px;margin-top:2px;width:18px}.diff-item-info{flex:1 1;min-width:0}.diff-item-title{align-items:center;color:var(--text-primary);display:flex;font-size:14px;font-weight:500;gap:8px;margin:0 0 4px}.diff-item-title .action-badge{align-items:center;border-radius:4px;display:inline-flex;font-size:11px;font-weight:600;padding:2px 6px;text-transform:uppercase}.action-badge.add{background:#d1fae5;background:var(--success-bg,#d1fae5);color:var(--success-color)}.action-badge.update{background:#dbeafe;background:var(--info-bg,#dbeafe);color:var(--primary-color)}.action-badge.remove{background:#fee2e2;background:var(--danger-bg,#fee2e2);color:var(--danger-color)}.action-badge.review{background:#fef3c7;background:var(--warning-bg,#fef3c7);color:var(--warning-color)}.diff-item-section{color:var(--text-muted);font-size:12px}.diff-confidence{align-items:center;background:var(--card-bg);border-radius:4px;color:var(--text-secondary);display:flex;font-size:12px;gap:4px;padding:4px 8px}.confidence-bar{background:var(--border-color);border-radius:2px;height:4px;overflow:hidden;width:60px}.confidence-fill{border-radius:2px;height:100%;transition:width .3s}.confidence-fill.high{background:var(--success-color)}.confidence-fill.medium{background:var(--warning-color)}.confidence-fill.low{background:var(--danger-color)}.diff-item-content{background:var(--card-bg);border-top:1px solid var(--border-color);font-size:13px;padding:12px 16px}.diff-reasoning{color:var(--text-secondary);font-style:italic;margin:0 0 12px}.diff-data{background:var(--secondary-bg);border-radius:6px;color:var(--text-primary);font-family:SF Mono,Monaco,Consolas,monospace;font-size:12px;margin:0;overflow-x:auto;padding:12px;white-space:pre-wrap;word-break:break-word}.diff-actions{border-top:1px solid var(--border-color);justify-content:space-between;padding-top:16px}.diff-actions,.diff-select-all{align-items:center;display:flex}.diff-select-all{color:var(--text-secondary);cursor:pointer;font-size:14px;gap:8px}.diff-select-all input{accent-color:var(--primary-color);cursor:pointer}.diff-buttons{display:flex;gap:12px}.infodoc-selector{position:relative}.infodoc-selector-btn{align-items:center;background:var(--card-bg);background:var(--input-bg,var(--card-bg));border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);cursor:pointer;display:flex;font-size:14px;justify-content:space-between;padding:10px 12px;text-align:left;transition:border-color .2s,box-shadow .2s;width:100%}.infodoc-selector-btn:focus,.infodoc-selector-btn:hover:not(:disabled){border-color:var(--primary-color)}.infodoc-selector-btn:focus{box-shadow:0 0 0 3px #3b82f61a;outline:none}.infodoc-selector-btn:disabled{background:var(--secondary-bg);cursor:not-allowed;opacity:.7}.infodoc-selector-btn.open{border-bottom-left-radius:0;border-bottom-right-radius:0;border-color:var(--primary-color)}.infodoc-selector-btn .placeholder{color:var(--text-muted)}.infodoc-selector-btn .selected{color:var(--text-primary)}.infodoc-selector-btn .dropdown-icon{color:var(--text-muted);flex-shrink:0;transition:transform .2s}.infodoc-selector-btn .dropdown-icon.rotated{transform:rotate(180deg)}.infodoc-dropdown{background:var(--card-bg);border:1px solid var(--primary-color);border-bottom-left-radius:6px;border-bottom-right-radius:6px;border-top:none;box-shadow:0 4px 12px #00000026;left:0;max-height:280px;overflow-y:auto;position:absolute;right:0;top:100%;z-index:100}.infodoc-option{align-items:center;background:none;border:none;color:var(--text-primary);cursor:pointer;display:flex;font-size:14px;gap:8px;padding:10px 12px;text-align:left;transition:background .15s;width:100%}.infodoc-option:hover:not(.disabled){background:var(--hover-bg)}.infodoc-option.selected{background:#dbeafe;background:var(--info-bg,#dbeafe)}.infodoc-option.disabled{color:var(--text-muted);cursor:default;font-style:italic}.infodoc-option.create-new{color:var(--primary-color);font-weight:500}.infodoc-option.create-new svg{color:var(--primary-color)}.infodoc-option-code{background:var(--secondary-bg);border-radius:4px;color:var(--text-secondary);display:inline-block;font-size:12px;font-weight:600;min-width:45px;padding:2px 6px;text-align:center}.infodoc-option-name{flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dropdown-divider{background:var(--border-color);height:1px;margin:4px 0}.new-infodoc-fields{background:var(--secondary-bg);border:1px solid var(--border-color);border-radius:8px;margin-bottom:16px;padding:16px}.new-infodoc-fields .upload-section{margin-bottom:12px}.new-infodoc-fields .upload-section:last-child{margin-bottom:0}.upload-section input[type=text]{background:var(--card-bg);background:var(--input-bg,var(--card-bg));border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);font-size:14px;padding:10px 12px;transition:border-color .2s,box-shadow .2s;width:100%}.upload-section input[type=text]:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px #3b82f61a;outline:none}.upload-section input[type=text]:disabled{background:var(--secondary-bg);cursor:not-allowed}.upload-section input[type=text]::placeholder{color:var(--text-muted)}.toggle-row{flex-wrap:wrap;gap:24px}.keeper-filter-config{background:#fff;background:var(--bg-primary,#fff);border-radius:12px;display:flex;flex-direction:column;max-height:80vh;max-width:700px;min-width:500px;overflow:hidden}.keeper-filter-config.loading{align-items:center;color:#6c757d;color:var(--text-muted,#6c757d);display:flex;gap:12px;justify-content:center;padding:60px}.config-header{background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border-bottom:1px solid #dee2e6;border-bottom:1px solid var(--border-color,#dee2e6);justify-content:space-between;padding:16px 20px}.config-header,.header-title{align-items:center;display:flex}.header-title{gap:10px}.header-title h3{font-size:16px;font-weight:600;margin:0}.config-header .btn-close{align-items:center;background:#0000;border:none;border-radius:6px;color:#6c757d;color:var(--text-muted,#6c757d);cursor:pointer;display:flex;height:32px;justify-content:center;width:32px}.config-header .btn-close:hover{background:#e9ecef;background:var(--bg-hover,#e9ecef);color:#212529;color:var(--text-primary,#212529)}.config-body{flex:1 1;overflow-y:auto;padding:20px}.keeper-filter-config .alert{align-items:center;border-radius:8px;display:flex;font-size:14px;gap:10px;margin-bottom:16px;padding:12px 16px}.keeper-filter-config .alert-danger{background:#fef2f2;border:1px solid #fecaca;color:#dc3545;color:var(--color-error,#dc3545)}.keeper-filter-config .alert-success{background:#f0fdf4;border:1px solid #bbf7d0;color:#16a34a}.config-section{margin-bottom:24px}.config-section h4{color:#212529;color:var(--text-primary,#212529);font-size:14px;font-weight:600;margin:0 0 8px}.toggle-row{align-items:center;cursor:pointer;display:flex;gap:10px;margin-bottom:8px}.toggle-row input[type=checkbox]{cursor:pointer;height:18px;width:18px}.toggle-label{color:#212529;color:var(--text-primary,#212529);font-size:14px;font-weight:500}.filter-rules-list{display:flex;flex-direction:column;gap:12px}.no-rules{background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border:1px dashed #dee2e6;border:1px dashed var(--border-color,#dee2e6);border-radius:8px;color:#6c757d;color:var(--text-muted,#6c757d);padding:32px 20px;text-align:center}.no-rules svg{margin-bottom:8px;opacity:.5}.no-rules p{margin:0}.no-rules .text-muted{font-size:12px;margin-top:4px}.filter-rule-card{background:#fff;background:var(--bg-primary,#fff);border:1px solid #dee2e6;border:1px solid var(--border-color,#dee2e6);border-radius:8px;padding:16px}.rule-row{align-items:flex-end;display:flex;gap:12px}.rule-row+.rule-row{border-top:1px solid #dee2e6;border-top:1px solid var(--border-color,#dee2e6);margin-top:12px;padding-top:12px}.rule-field{flex:1 1;min-width:0}.rule-field.flex-2{flex:2 1}.rule-field label{align-items:center;color:#6c757d;color:var(--text-muted,#6c757d);display:flex;font-size:11px;font-weight:600;gap:4px;letter-spacing:.5px;margin-bottom:6px;text-transform:uppercase}.rule-field input,.rule-field select{background:#fff;background:var(--bg-primary,#fff);border:1px solid #dee2e6;border:1px solid var(--border-color,#dee2e6);border-radius:6px;font-size:13px;padding:8px 10px;width:100%}.rule-field input:focus,.rule-field select:focus{border-color:#0d6efd;border-color:var(--color-primary,#0d6efd);outline:none}.btn-remove{background:#fff;background:var(--bg-primary,#fff);border:1px solid #dee2e6;border:1px solid var(--border-color,#dee2e6);border-radius:6px;color:#6c757d;color:var(--text-muted,#6c757d);cursor:pointer;padding:8px;transition:all .15s ease}.btn-remove:hover{background:#fef2f2;border-color:#dc3545;border-color:var(--color-error,#dc3545);color:#dc3545;color:var(--color-error,#dc3545)}.btn-add-rule{align-items:center;background:#0000;border:1px dashed #dee2e6;border:1px dashed var(--border-color,#dee2e6);border-radius:8px;color:#6c757d;color:var(--text-muted,#6c757d);cursor:pointer;display:flex;font-size:14px;gap:8px;justify-content:center;padding:12px;transition:all .15s ease;width:100%}.btn-add-rule:hover{background:#f0f7ff;border-color:#0d6efd;border-color:var(--color-primary,#0d6efd);color:#0d6efd;color:var(--color-primary,#0d6efd)}.config-footer{background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border-top:1px solid #dee2e6;border-top:1px solid var(--border-color,#dee2e6);display:flex;gap:12px;justify-content:flex-end;padding:16px 20px}.keeper-filter-config .btn{align-items:center;border:1px solid #0000;border-radius:6px;cursor:pointer;display:inline-flex;font-size:14px;font-weight:500;gap:6px;justify-content:center;padding:10px 16px;transition:all .15s ease}.keeper-filter-config .btn:disabled{cursor:not-allowed;opacity:.6}.keeper-filter-config .btn-primary{background:#0d6efd;background:var(--color-primary,#0d6efd);color:#fff}.keeper-filter-config .btn-primary:hover:not(:disabled){background:#0b5ed7}.keeper-filter-config .btn-secondary{background:#fff;background:var(--bg-primary,#fff);border-color:#dee2e6;border-color:var(--border-color,#dee2e6);color:#212529;color:var(--text-primary,#212529)}.keeper-filter-config .btn-secondary:hover:not(:disabled){background:#e9ecef}.picker-modal .modal-subheader{background:#f3f4f6;background:var(--secondary-bg,#f3f4f6);border-bottom:1px solid var(--border-color);color:var(--text-secondary);font-size:13px;padding:8px 20px}.picker-modal .mode-toggle{border-bottom:1px solid var(--border-color);display:flex;gap:8px;padding:16px 20px}.picker-modal .mode-btn{align-items:center;background:var(--card-bg);border:2px solid var(--border-color);border-radius:8px;color:var(--text-primary);cursor:pointer;display:flex;flex:1 1;font-size:14px;font-weight:500;gap:8px;justify-content:center;padding:12px 16px;transition:all .15s ease}.picker-modal .mode-btn:hover{background:var(--hover-bg);border-color:var(--primary-color)}.picker-modal .mode-btn.active{background:#dbeafe;background:var(--info-bg,#dbeafe);border-color:var(--primary-color);color:var(--primary-color)}.picker-modal .link-existing-section{padding:0}.picker-modal .search-box,.sync-link-picker .picker-search{align-items:center;background:var(--card-bg);border:1px solid var(--border-color);border-radius:6px;display:flex;gap:8px;padding:10px 12px}.picker-modal .search-box input,.sync-link-picker .picker-search input{background:#0000;border:none;color:var(--text-primary);flex:1 1;font-size:14px;outline:none}.picker-modal .search-box input::placeholder,.sync-link-picker .picker-search input::placeholder{color:var(--text-muted)}.picker-modal .filter-toggles{display:flex;flex-wrap:wrap;gap:12px;margin-top:12px}.picker-modal .filter-toggle{align-items:center;background:var(--card-bg);border:1px solid var(--border-color);border-radius:16px;color:var(--text-secondary);cursor:pointer;display:flex;font-size:12px;gap:6px;padding:6px 10px;transition:all .15s ease}.picker-modal .filter-toggle:hover{border-color:var(--primary-color)}.picker-modal .filter-toggle.active{background:#dbeafe;background:var(--info-bg,#dbeafe);border-color:var(--primary-color);color:var(--primary-color)}.picker-modal .filter-toggle .hidden-count{color:var(--text-muted);font-size:11px}.picker-modal .results-list{border:1px solid var(--border-color);border-radius:6px;margin-top:12px;max-height:300px;overflow-y:auto}.picker-modal .result-item{align-items:center;border-bottom:1px solid var(--border-color);cursor:pointer;display:flex;gap:12px;padding:12px;transition:background .15s ease}.picker-modal .result-item:last-child{border-bottom:none}.picker-modal .result-item:hover:not(.already-linked){background:var(--hover-bg)}.picker-modal .result-item.selected{background:#dbeafe;background:var(--info-bg,#dbeafe)}.picker-modal .result-item.mismatch:not(.already-linked){background:#fef3c7;background:var(--warning-bg,#fef3c7)}.picker-modal .result-item.mismatch.selected{background:#ffefcc}.picker-modal .result-item.already-linked{background:var(--secondary-bg);cursor:not-allowed;opacity:.7}.picker-modal .result-item.linked{background:#d1fae5;background:var(--success-bg,#d1fae5)}.picker-modal .result-item.suggested{border-left:3px solid var(--primary-color)}.picker-modal .result-icon{color:var(--text-secondary);flex-shrink:0}.picker-modal .result-item.selected .result-icon{color:var(--primary-color)}.picker-modal .result-info{flex:1 1;min-width:0}.picker-modal .result-name{font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.picker-modal .result-meta{color:var(--text-secondary);display:flex;font-size:12px;gap:12px;margin-top:4px}.picker-modal .result-type{background:var(--secondary-bg);border-radius:4px;padding:2px 6px}.picker-modal .linked-badge{background:var(--secondary-bg);border-radius:4px;color:var(--text-secondary);font-size:11px;font-weight:500;padding:2px 8px}.picker-modal .linked-badge.current{background:#d1fae5;background:var(--success-bg,#d1fae5);color:var(--success-color)}.picker-modal .linked-badge.suggested{background:#dbeafe;background:var(--info-bg,#dbeafe);color:var(--primary-color)}.picker-modal .mismatch-indicator{color:var(--warning-color);flex-shrink:0}.picker-modal .empty-state,.picker-modal .loading-state{align-items:center;color:var(--text-secondary);display:flex;gap:8px;justify-content:center;padding:40px 20px}.picker-modal .mismatch-warning{background:#fef3c7;background:var(--warning-bg,#fef3c7);border:1px solid var(--warning-color);border-radius:6px;display:flex;gap:12px;margin-top:16px;padding:12px}.picker-modal .mismatch-warning svg{color:var(--warning-color);flex-shrink:0}.picker-modal .warning-content p{font-size:13px;margin:0 0 8px}.picker-modal .recategorize-option{align-items:center;cursor:pointer;display:flex;font-size:13px;gap:8px}.picker-modal .recategorize-option input{cursor:pointer}.sync-link-picker .picker-source{background:var(--secondary-bg);border-bottom:1px solid var(--border-color);padding:12px 20px}.sync-link-picker .source-label{color:var(--text-muted);font-size:12px;margin-bottom:4px}.sync-link-picker .source-record{font-size:14px}.sync-link-picker .source-meta{color:var(--text-secondary)}.sync-link-picker .picker-current{align-items:center;background:#d1fae5;background:var(--success-bg,#d1fae5);border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;padding:12px 20px}.sync-link-picker .current-link-info{align-items:center;color:var(--success-color);display:flex;font-size:14px;gap:8px}.sync-link-picker .picker-search{align-items:center;background:var(--card-bg);border:1px solid var(--border-color);border-radius:6px;display:flex;gap:8px;margin:16px 20px 0;padding:10px 12px}.sync-link-picker .picker-search input{background:#0000;border:none;color:var(--text-primary);flex:1 1;font-size:14px;outline:none}.sync-link-picker .picker-search input::placeholder{color:var(--text-muted)}.sync-link-picker .picker-toggles{display:flex;flex-wrap:wrap;gap:12px;padding:12px 20px}.sync-link-picker .picker-results{border:1px solid var(--border-color);border-radius:6px;margin:0 20px;max-height:280px;overflow-y:auto}.sync-link-picker .picker-item{align-items:center;border-bottom:1px solid var(--border-color);cursor:pointer;display:flex;gap:12px;padding:12px;transition:background .15s ease}.sync-link-picker .picker-item:last-child{border-bottom:none}.sync-link-picker .picker-item:hover:not(.linked):not(.linked-elsewhere){background:var(--hover-bg)}.sync-link-picker .picker-item.selected{background:#dbeafe;background:var(--info-bg,#dbeafe)}.sync-link-picker .picker-item.linked{background:#d1fae5;background:var(--success-bg,#d1fae5)}.sync-link-picker .picker-item.linked-elsewhere{background:var(--secondary-bg);cursor:not-allowed;opacity:.7}.sync-link-picker .picker-item.suggested{border-left:3px solid var(--primary-color)}.sync-link-picker .picker-item.mismatch:not(.linked):not(.linked-elsewhere){background:#fef3c7;background:var(--warning-bg,#fef3c7)}.sync-link-picker .picker-item-icon{color:var(--text-secondary);flex-shrink:0}.sync-link-picker .picker-item.selected .picker-item-icon{color:var(--primary-color)}.sync-link-picker .picker-item-details{flex:1 1;min-width:0}.sync-link-picker .picker-item-name{font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sync-link-picker .picker-item-meta{color:var(--text-secondary);font-size:12px;margin-top:2px}.sync-link-picker .asset-type.mismatch-type{background:#fef3c7;background:var(--warning-bg,#fef3c7);border-radius:3px;padding:1px 4px}.sync-link-picker .link-badge{border-radius:4px;font-size:11px;font-weight:500;padding:2px 8px}.sync-link-picker .link-badge.current{background:#d1fae5;background:var(--success-bg,#d1fae5);color:var(--success-color)}.sync-link-picker .link-badge.linked-elsewhere{background:var(--secondary-bg);color:var(--text-secondary)}.sync-link-picker .link-badge.suggested{background:#dbeafe;background:var(--info-bg,#dbeafe);color:var(--primary-color)}.sync-link-picker .selected-check{color:var(--primary-color);flex-shrink:0}.sync-link-picker .picker-mismatch-warning{background:#fef3c7;background:var(--warning-bg,#fef3c7);border-top:1px solid var(--warning-color);color:#92400e;display:flex;gap:12px;padding:12px 20px}.sync-link-picker .picker-mismatch-warning svg{color:var(--warning-color);flex-shrink:0}.sync-link-picker .picker-mismatch-warning .warning-content{flex:1 1}.sync-link-picker .picker-mismatch-warning p{font-size:13px;margin:0 0 8px}.sync-link-picker .picker-mismatch-warning .recategorize-option{align-items:center;cursor:pointer;display:flex;font-size:13px;gap:8px}.sync-link-picker .picker-mismatch-warning .recategorize-option input{cursor:pointer;margin:0}.sync-link-picker .picker-empty,.sync-link-picker .picker-error,.sync-link-picker .picker-loading{color:var(--text-secondary);padding:32px 20px;text-align:center}.sync-link-picker .picker-error{color:var(--danger-color);justify-content:center}.contact-editor-modal .contact-role-row,.sync-link-picker .picker-error{align-items:center;display:flex;gap:8px}.contact-editor-modal .contact-role-row select{flex:1 1}.contact-editor-modal .contact-role-row .btn-star-icon{align-items:center;background:none;border:1px solid var(--border-color);border-radius:4px;color:#999;color:var(--text-muted,#999);cursor:pointer;display:flex;justify-content:center;padding:6px;transition:all .15s ease}.contact-editor-modal .contact-role-row .btn-star-icon.starred,.contact-editor-modal .contact-role-row .btn-star-icon:hover{border-color:#ffc107;border-color:var(--warning-color,#ffc107);color:#ffc107;color:var(--warning-color,#ffc107)}.contact-editor-modal .contact-role-row .btn-star-icon.starred{background:#ffc1071a}.editor-modal .modal-header{align-items:center;border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--border-color,#e5e7eb);display:flex;justify-content:space-between;padding:16px 20px}.editor-modal .modal-header h3{color:#1f2937;color:var(--text-primary,#1f2937);font-size:18px;font-weight:600;margin:0}.editor-modal .modal-close-btn{background:none;border:none;border-radius:4px;color:#6b7280;color:var(--text-secondary,#6b7280);cursor:pointer;padding:4px}.editor-modal .modal-close-btn:hover{background:#f3f4f6;background:var(--bg-secondary,#f3f4f6);color:#1f2937;color:var(--text-primary,#1f2937)}.editor-modal .modal-body{max-height:60vh;overflow-y:auto;padding:20px}.editor-modal .modal-footer{align-items:center;border-top:1px solid #e5e7eb;border-top:1px solid var(--border-color,#e5e7eb);display:flex;gap:12px;justify-content:space-between;padding:16px 20px}.editor-modal .modal-footer-right{display:flex;gap:8px;margin-left:auto}.form-grid .full-width{grid-column:1/-1}.boolean-group{grid-gap:8px;display:grid;gap:8px;grid-template-columns:1fr 1fr;padding:4px 0}@media (max-width:480px){.boolean-group{grid-template-columns:1fr}}.bool-field{align-items:center;background:#fff;background:var(--card-bg,#fff);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:6px;cursor:default;display:flex;gap:10px;min-width:0;padding:7px 12px;transition:border-color .15s}.bool-field:hover{border-color:#3b82f6;border-color:var(--primary-color,#3b82f6)}.bool-field-label{color:#1f2937;color:var(--text-primary,#1f2937);flex:1 1;font-size:13px;font-weight:500;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bool-field .btn-remove-field{background:none;border:none;color:#9ca3af;color:var(--text-tertiary,#9ca3af);cursor:pointer;flex-shrink:0;opacity:0;padding:2px;transition:opacity .15s}.bool-field:hover .btn-remove-field{opacity:1}.bool-toggle{align-items:center;cursor:pointer;display:flex;flex-shrink:0}.bool-toggle-track{background:#d1d5db;background:var(--border-color,#d1d5db);border-radius:9px;height:18px;position:relative;transition:background .2s;width:34px}.bool-toggle.active .bool-toggle-track{background:#3b82f6;background:var(--primary-color,#3b82f6)}.bool-toggle-thumb{background:#fff;border-radius:50%;box-shadow:0 1px 2px #00000026;height:14px;left:2px;position:absolute;top:2px;transition:transform .2s;width:14px}.bool-toggle.active .bool-toggle-thumb{transform:translateX(16px)}.form-group label{color:#6b7280;color:var(--text-secondary,#6b7280)}.form-group label .required{color:#ef4444;color:var(--danger-color,#ef4444);margin-left:2px}.field-header{align-items:center;display:flex;gap:8px;justify-content:space-between}.field-header label{flex:1 1;margin-bottom:0}.btn-remove-field{border-radius:4px;color:#9ca3af;color:var(--text-muted,#9ca3af);opacity:.6;padding:4px}.btn-remove-field:hover{background:#fef2f2;background:var(--danger-bg,#fef2f2);color:#ef4444;color:var(--danger-color,#ef4444);opacity:1}.add-field-section{border-top:1px solid #e5e7eb;border-top:1px solid var(--border-color,#e5e7eb);margin-top:16px;padding-top:16px}.add-field-section select{max-width:200px}.form-control{background:#fff;background:var(--card-bg,#fff);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:6px;color:#1f2937;color:var(--text-primary,#1f2937);font-size:14px;padding:8px 12px;transition:border-color .15s,box-shadow .15s}.form-control:focus{border-color:#3b82f6;border-color:var(--primary-color,#3b82f6);box-shadow:0 0 0 3px #3b82f61a;outline:none}.form-control::placeholder{color:#9ca3af;color:var(--text-tertiary,#9ca3af)}textarea.form-control{min-height:80px;resize:vertical}select.form-control{cursor:pointer}.checkbox-label{color:#1f2937;color:var(--text-primary,#1f2937);display:flex;font-size:14px;gap:8px}.checkbox-label input[type=checkbox]{cursor:pointer;height:16px;width:16px}.alert{border-radius:6px;gap:8px}.alert-danger{background:var(--danger-bg,#fef2f2);border:1px solid #ef4444;border:1px solid var(--danger-color,#ef4444);color:#ef4444;color:var(--danger-color,#ef4444)}.btn{transition:all .15s}.btn-primary{background:#3b82f6;background:var(--primary-color,#3b82f6);border-color:#3b82f6;border-color:var(--primary-color,#3b82f6)}.btn-primary:hover:not(:disabled){background:#2563eb;background:var(--primary-hover,#2563eb);border-color:#2563eb;border-color:var(--primary-hover,#2563eb)}.btn-secondary{background:#f3f4f6;background:var(--bg-secondary,#f3f4f6);border-color:#e5e7eb;border-color:var(--border-color,#e5e7eb);color:#1f2937;color:var(--text-primary,#1f2937)}.btn-secondary:hover:not(:disabled){background:#e5e7eb;background:var(--bg-tertiary,#e5e7eb)}.btn-danger{background:#ef4444;background:var(--danger-color,#ef4444);border-color:#ef4444;border-color:var(--danger-color,#ef4444)}.btn-danger:hover:not(:disabled){border-color:#dc2626;border-color:var(--danger-hover,#dc2626)}.btn-sm{font-size:12px;padding:4px 8px}.btn-icon{padding:6px}.btn-icon-danger{background:none;border:none;border-radius:4px;color:#9ca3af;color:var(--text-tertiary,#9ca3af);cursor:pointer;min-width:auto;padding:6px}.btn-icon-danger:hover:not(:disabled){background:#ef44441a;background:var(--danger-bg,#ef44441a);color:#ef4444;color:var(--danger-color,#ef4444)}.btn-icon-danger:disabled{cursor:not-allowed;opacity:.4}.btn-link{background:none;color:#3b82f6;color:var(--primary-color,#3b82f6)}.btn-link:hover{text-decoration:underline}.infrastructure-picker-modal .modal-body{padding:0}.picker-toolbar{align-items:center;border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--border-color,#e5e7eb);display:flex;gap:16px;justify-content:space-between;padding:12px 16px}.picker-toolbar .search-input-wrapper{align-items:center;display:flex;flex:1 1;gap:8px;max-width:300px}.picker-toolbar .search-input-wrapper svg{color:#6b7280;color:var(--text-secondary,#6b7280)}.picker-toolbar .search-input-wrapper .form-control{flex:1 1}.selection-actions{align-items:center;display:flex;gap:8px}.selection-count{color:#6b7280;color:var(--text-secondary,#6b7280);font-size:13px}.picker-location-group{border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--border-color,#e5e7eb)}.picker-location-header{background:#f9fafb;background:var(--bg-secondary,#f9fafb);color:#6b7280;color:var(--text-secondary,#6b7280);font-size:12px;padding:10px 16px;text-transform:uppercase}.picker-items{display:flex;flex-direction:column;gap:4px;padding:8px}.picker-item{gap:12px;padding:10px 12px}.picker-item:hover{background:#f3f4f6;background:var(--bg-secondary,#f3f4f6)}.picker-item.selected{background:#eff6ff;background:var(--primary-bg,#eff6ff)}.picker-item-checkbox{border:2px solid #d1d5db;border:2px solid var(--border-color,#d1d5db);flex-shrink:0}.picker-item.selected .picker-item-checkbox{background:#3b82f6;background:var(--primary-color,#3b82f6);border-color:#3b82f6;border-color:var(--primary-color,#3b82f6)}.picker-item-icon{color:#6b7280;color:var(--text-secondary,#6b7280);flex-shrink:0}.picker-item-name{color:#1f2937;color:var(--text-primary,#1f2937);font-size:14px}.picker-item-meta{align-items:center;margin-top:2px}.picker-item-type{color:#6b7280;color:var(--text-secondary,#6b7280);font-size:12px}.picker-item-details{color:#9ca3af;color:var(--text-tertiary,#9ca3af);font-size:12px}.picker-empty{color:#6b7280;color:var(--text-secondary,#6b7280);padding:40px 20px}.selected-infrastructure-list{flex-direction:column}.selected-infra-item{background:#f3f4f6;background:var(--bg-secondary,#f3f4f6);padding:8px 12px}.selected-infra-item .infra-name{color:#1f2937;color:var(--text-primary,#1f2937)}.selected-infra-item .infra-location{color:#6b7280;color:var(--text-secondary,#6b7280);margin-left:auto}.selected-infra-item .btn-icon{margin-left:8px;padding:4px}.no-infrastructure{color:#9ca3af;color:var(--text-tertiary,#9ca3af)}.modal-md{max-width:600px}.modal-lg{max-width:800px}.cluster-card.clickable,.rack-card.clickable,.vm-host-card.clickable{border:1px solid #0000;transition:all .15s ease}.cluster-card.clickable:hover,.rack-card.clickable:hover,.vm-host-card.clickable:hover{border-color:#3b82f6;border-color:var(--primary-color,#3b82f6);box-shadow:0 2px 8px #3b82f626;transform:translateY(-1px)}.edit-hint-icon{color:#9ca3af;color:var(--text-tertiary,#9ca3af);margin-left:4px;opacity:.6}.clickable:hover .edit-hint-icon{color:#3b82f6;color:var(--primary-color,#3b82f6);opacity:1}.group-info{margin-bottom:16px}.group-description{color:#6b7280;color:var(--text-secondary,#6b7280);font-size:14px;margin:0 0 8px}.assignment-count{color:#3b82f6;color:var(--primary-color,#3b82f6);font-size:13px;font-weight:500;margin:0}.assignment-list{border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:8px;overflow:hidden}.assignment-header{background:#f9fafb;background:var(--bg-secondary,#f9fafb);border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--border-color,#e5e7eb);color:#6b7280;color:var(--text-secondary,#6b7280);font-size:12px;font-weight:600;padding:10px 16px;text-transform:uppercase}.assignment-items{max-height:350px;overflow-y:auto}.assignment-item{align-items:center;border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--border-color,#e5e7eb);cursor:pointer;display:flex;gap:12px;padding:10px 16px;transition:background .15s}.assignment-item:last-child{border-bottom:none}.assignment-item:hover:not(.disabled){background:#f3f4f6;background:var(--bg-secondary,#f3f4f6)}.assignment-item.assigned{background:#eff6ff;background:var(--primary-bg,#eff6ff)}.assignment-item.assigned:hover{background:#dbeafe;background:var(--primary-bg-hover,#dbeafe)}.assignment-item.disabled{cursor:not-allowed;opacity:.5}.item-checkbox{flex-shrink:0;height:18px;position:relative;width:18px}.item-checkbox input[type=checkbox]{cursor:pointer;height:100%;opacity:0;position:absolute;width:100%}.item-checkbox:before{background:#fff;border:2px solid #d1d5db;border:2px solid var(--border-color,#d1d5db);border-radius:4px;content:"";display:block;height:18px;width:18px}.assignment-item.assigned .item-checkbox:before{background:#3b82f6;background:var(--primary-color,#3b82f6);border-color:#3b82f6;border-color:var(--primary-color,#3b82f6)}.item-checkbox svg{color:#fff;left:2px;position:absolute;top:2px}.item-info{align-items:center;display:flex;flex:1 1;gap:8px;min-width:0}.item-name{color:#1f2937;color:var(--text-primary,#1f2937);font-size:14px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.item-type-badge{border-radius:4px;flex-shrink:0;font-size:11px;font-weight:500;padding:2px 6px;text-transform:uppercase}.item-type-badge.host,.item-type-badge.node{background:#e0f2fe;background:var(--info-bg,#e0f2fe);color:#0369a1;color:var(--info-color,#0369a1)}.item-type-badge.guest,.item-type-badge.vm{background:#dcfce7;background:var(--success-bg,#dcfce7);color:#15803d;color:var(--success-color,#15803d)}.item-type-badge.server{background:#f3f4f6;background:var(--bg-secondary,#f3f4f6);color:#6b7280;color:var(--text-secondary,#6b7280)}.item-type-badge.equipment,.item-type-badge.firewall,.item-type-badge.storage,.item-type-badge.switch{background:#fef3c7;background:var(--warning-bg,#fef3c7);color:#b45309;color:var(--warning-color,#b45309)}.item-status{border-radius:4px;flex-shrink:0;font-size:11px;padding:2px 6px}.item-status.decommissioned,.item-status.inactive{background:#fef2f2;background:var(--danger-bg,#fef2f2);color:#dc2626;color:var(--danger-color,#dc2626)}.assigned-elsewhere{color:#9ca3af;color:var(--text-tertiary,#9ca3af);flex-shrink:0;font-size:12px;font-style:italic}.no-items{padding:40px 20px;text-align:center}.form-info-banner,.no-items{color:#6b7280;color:var(--text-secondary,#6b7280);font-size:14px}.form-info-banner{background:#f3f4f6;background:var(--bg-secondary,#f3f4f6);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:6px;margin-bottom:16px;padding:10px 14px}.form-info-banner strong{color:#1f2937;color:var(--text-primary,#1f2937)}.form-info-message{background:#eff6ff;background:var(--info-bg,#eff6ff);border:1px solid #bfdbfe;border:1px solid var(--info-border,#bfdbfe);border-radius:6px;color:#1e40af;color:var(--info-text,#1e40af);font-size:13px;margin-top:16px;padding:12px 14px}.array-field-value{background:#f3f4f6;background:var(--bg-secondary,#f3f4f6);border-radius:4px;color:#1f2937;color:var(--text-primary,#1f2937);flex:1 1;font-size:14px;padding:8px 12px}@media (max-width:640px){.form-grid{grid-template-columns:1fr}.picker-toolbar{align-items:stretch;flex-direction:column}.search-input-wrapper{max-width:none}}.service-account-card .btn-edit-icon,.vendor-card .btn-edit-icon{background:none;border:none;color:#6b7280;color:var(--text-secondary,#6b7280);cursor:pointer;flex-shrink:0;margin-left:4px;padding:2px;transition:color .2s}.service-account-card .btn-edit-icon:hover,.vendor-card .btn-edit-icon:hover{color:#3b82f6;color:var(--primary-color,#3b82f6)}.service-account-card .btn-delete-icon,.vendor-card .btn-delete-icon{background:none;border:none;color:#6b7280;color:var(--text-secondary,#6b7280);cursor:pointer;flex-shrink:0;margin-left:4px;padding:2px;transition:color .2s}.service-account-card .btn-delete-icon:hover,.vendor-card .btn-delete-icon:hover{color:#ef4444;color:var(--danger-color,#ef4444)}.service-account-card .account-detail,.vendor-card .account-detail{color:#6b7280;color:var(--text-secondary,#6b7280);font-size:.85em;line-height:1.4;margin-top:4px}.service-account-card .account-detail .detail-label,.vendor-card .account-detail .detail-label{color:#9ca3af;color:var(--text-tertiary,#9ca3af);font-weight:500}.service-account-card .account-detail a,.vendor-card .account-detail a{color:#3b82f6;color:var(--primary-color,#3b82f6);text-decoration:none}.service-account-card .account-detail a:hover,.vendor-card .account-detail a:hover{text-decoration:underline}.object-field-display{background:#f3f4f6;background:var(--bg-secondary,#f3f4f6);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:6px;padding:12px}.object-properties{display:flex;flex-direction:column;gap:6px}.object-property{display:flex;font-size:13px;gap:8px;line-height:1.4}.object-property .property-key{color:#6b7280;color:var(--text-secondary,#6b7280);font-weight:500;min-width:80px}.object-property .property-value{color:#1f2937;color:var(--text-primary,#1f2937);word-break:break-word}.object-field-display .text-muted{color:#9ca3af;color:var(--text-muted,#9ca3af);font-size:13px;font-style:italic}.wifi-networks-editor .networks-list{display:flex;flex-direction:column;gap:12px;margin-bottom:16px}.wifi-networks-editor .network-item{border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:8px;overflow:hidden}.wifi-networks-editor .network-item.expanded{border-color:#3b82f6;border-color:var(--primary-color,#3b82f6)}.wifi-networks-editor .network-header{align-items:center;background:#f9fafb;background:var(--bg-secondary,#f9fafb);cursor:pointer;display:flex;justify-content:space-between;padding:12px 16px}.wifi-networks-editor .network-header:hover{background:#f3f4f6;background:var(--bg-tertiary,#f3f4f6)}.wifi-networks-editor .network-summary{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.wifi-networks-editor .network-icon{color:#3b82f6;color:var(--primary-color,#3b82f6)}.wifi-networks-editor .network-ssid{color:#1f2937;color:var(--text-primary,#1f2937);font-size:14px;font-weight:600}.wifi-networks-editor .network-details{border-top:1px solid #e5e7eb;border-top:1px solid var(--border-color,#e5e7eb);padding:16px}.wifi-networks-editor .btn-remove-network{background:none;border:none;border-radius:4px;color:#9ca3af;color:var(--text-muted,#9ca3af);cursor:pointer;padding:4px}.wifi-networks-editor .btn-remove-network:hover{background:#fef2f2;background:var(--danger-bg,#fef2f2);color:#ef4444;color:var(--danger-color,#ef4444)}.wifi-networks-editor .btn-add-network{margin-top:8px}.wifi-networks-editor .empty-networks{background:#f9fafb;background:var(--bg-secondary,#f9fafb);border-radius:8px;color:#6b7280;color:var(--text-secondary,#6b7280);padding:24px;text-align:center}.wifi-networks-editor .badge-auth,.wifi-networks-editor .badge-purpose,.wifi-networks-editor .badge-vlan{border-radius:4px;font-size:11px;font-weight:500;padding:2px 8px}.wifi-networks-editor .badge-auth{background:#e3f2fd;background:var(--info-bg,#e3f2fd);color:#1976d2;color:var(--info-color,#1976d2)}.wifi-networks-editor .badge-purpose{background:#e8f5e9;background:var(--success-bg,#e8f5e9);color:#388e3c;color:var(--success-color,#388e3c)}.wifi-networks-editor .badge-vlan{background:#fff3e0;background:var(--warning-bg,#fff3e0);color:#f57c00;color:var(--warning-color,#f57c00)}.wifi-networks-editor .badge-ap{align-items:center;background:#1976d21a;background:var(--primary-light,#1976d21a);color:#1976d2;color:var(--primary-color,#1976d2);display:inline-flex;gap:3px}.ap-linking-section{border-top:1px solid #e5e7eb;border-top:1px solid var(--border-color,#e5e7eb);margin-top:16px;padding-top:16px}.ap-linking-section label{align-items:center;display:flex;gap:6px}.ap-linking-section .field-hint{color:#6b7280;color:var(--text-secondary,#6b7280);font-size:12px;margin:4px 0 10px}.ap-link-grid{display:flex;flex-wrap:wrap;gap:8px}.ap-link-chip{align-items:center;background:#f9fafb;background:var(--bg-secondary,#f9fafb);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:20px;cursor:pointer;display:inline-flex;font-size:12px;gap:6px;padding:6px 12px;transition:all .15s ease}.ap-link-chip:hover{background:#f3f4f6;background:var(--bg-hover,#f3f4f6)}.ap-link-chip.linked,.ap-link-chip:hover{border-color:#1976d2;border-color:var(--primary-color,#1976d2)}.ap-link-chip.linked{background:#1976d21a;background:var(--primary-light,#1976d21a);color:#1976d2;color:var(--primary-color,#1976d2)}.ap-link-chip .ap-name{font-weight:500}.ap-link-chip .ap-ip{border-left:1px solid;font-size:10px;opacity:.7;padding-left:4px}.password-input-group{display:flex;gap:0}.password-input-group .form-control{border-bottom-right-radius:0;border-top-right-radius:0}.password-input-group .btn-toggle-password{background:#f9fafb;background:var(--bg-secondary,#f9fafb);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-bottom-right-radius:6px;border-left:none;border-top-right-radius:6px;color:#6b7280;color:var(--text-secondary,#6b7280);cursor:pointer;padding:0 12px}.password-input-group .btn-toggle-password:hover{background:#f3f4f6;background:var(--bg-tertiary,#f3f4f6);color:#1f2937;color:var(--text-primary,#1f2937)}.certificates-editor{display:flex;flex-direction:column;gap:12px}.certificates-editor .certs-list{display:flex;flex-direction:column;gap:8px}.certificates-editor .cert-item{background:#f9fafb;background:var(--bg-secondary,#f9fafb);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:8px;overflow:hidden}.certificates-editor .cert-item.expanded{border-color:#1976d2;border-color:var(--primary-color,#1976d2)}.certificates-editor .cert-header{align-items:center;cursor:pointer;display:flex;justify-content:space-between;padding:12px 16px;transition:background .15s ease}.certificates-editor .cert-header:hover{background:#f3f4f6;background:var(--bg-hover,#f3f4f6)}.certificates-editor .cert-summary{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.certificates-editor .cert-icon{color:#1976d2;color:var(--primary-color,#1976d2)}.certificates-editor .cert-domain{color:#1f2937;color:var(--text-primary,#1f2937);font-weight:600}.certificates-editor .cert-details{background:#fff;background:var(--card-bg,#fff);border-top:1px solid #e5e7eb;border-top:1px solid var(--border-color,#e5e7eb);padding:16px}.certificates-editor .btn-remove-cert{background:none;border:none;border-radius:4px;color:#9ca3af;color:var(--text-tertiary,#9ca3af);cursor:pointer;padding:6px;transition:all .15s ease}.certificates-editor .btn-remove-cert:hover{background:#fef2f2;background:var(--danger-bg,#fef2f2);color:#dc2626;color:var(--danger-color,#dc2626)}.certificates-editor .btn-add-cert{align-self:flex-start;margin-top:8px}.certificates-editor .empty-certs{background:#f9fafb;background:var(--bg-secondary,#f9fafb);border:1px dashed #e5e7eb;border:1px dashed var(--border-color,#e5e7eb);border-radius:8px;color:#6b7280;color:var(--text-secondary,#6b7280);padding:24px;text-align:center}.certificates-editor .badge-auto-renew,.certificates-editor .badge-expiry,.certificates-editor .badge-type{border-radius:12px;font-size:11px;font-weight:500;padding:2px 8px}.certificates-editor .badge-type{background:#e5e7eb;background:var(--bg-tertiary,#e5e7eb);color:#6b7280;color:var(--text-secondary,#6b7280)}.certificates-editor .badge-expiry.badge-success{background:#dcfce7;background:var(--success-bg,#dcfce7);color:#16a34a;color:var(--success-color,#16a34a)}.certificates-editor .badge-expiry.badge-info{background:#dbeafe;background:var(--info-bg,#dbeafe);color:#2563eb;color:var(--info-color,#2563eb)}.certificates-editor .badge-expiry.badge-warning{background:#fef3c7;background:var(--warning-bg,#fef3c7);color:#d97706;color:var(--warning-color,#d97706)}.certificates-editor .badge-expiry.badge-danger{background:#fee2e2;background:var(--danger-bg,#fee2e2);color:#dc2626;color:var(--danger-color,#dc2626)}.certificates-editor .badge-auto-renew{background:#1976d21a;background:var(--primary-light,#1976d21a);color:#1976d2;color:var(--primary-color,#1976d2)}.certificates-editor .form-row{display:flex;gap:12px;margin-bottom:12px}.certificates-editor .form-group{margin-bottom:12px}.certificates-editor .form-group.flex-1{flex:1 1}.certificates-editor .form-group.flex-2{flex:2 1}.certificates-editor .form-group.flex-half{align-items:flex-end;display:flex;flex:0 0 auto}.certificates-editor .checkbox-label{align-items:center;cursor:pointer;display:flex;gap:8px;padding:8px 0}.certificates-editor .checkbox-label input[type=checkbox]{cursor:pointer;height:18px;width:18px}.common-tasks-editor,.common-tasks-editor .tasks-list{display:flex;flex-direction:column;gap:12px}.common-tasks-editor .task-item{background:#f9fafb;background:var(--bg-secondary,#f9fafb);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:8px;display:flex;gap:12px;padding:16px;transition:all .15s ease}.common-tasks-editor .task-item.dragging{border-color:#1976d2;border-color:var(--primary-color,#1976d2);opacity:.5}.common-tasks-editor .task-drag-handle{align-items:center;color:#9ca3af;color:var(--text-tertiary,#9ca3af);cursor:grab;display:flex;justify-content:center;padding:4px}.common-tasks-editor .task-drag-handle:hover{color:#6b7280;color:var(--text-secondary,#6b7280)}.common-tasks-editor .task-drag-handle:active{cursor:grabbing}.common-tasks-editor .task-fields{display:flex;flex:1 1;flex-direction:column;gap:12px}.common-tasks-editor .task-fields .form-group{margin-bottom:0}.common-tasks-editor .task-fields label{color:#6b7280;color:var(--text-secondary,#6b7280);display:block;font-size:12px;font-weight:600;letter-spacing:.5px;margin-bottom:6px;text-transform:uppercase}.common-tasks-editor .btn-remove-task{align-items:flex-start;background:none;border:none;color:#9ca3af;color:var(--text-tertiary,#9ca3af);cursor:pointer;display:flex;justify-content:center;padding:8px;transition:color .15s ease}.common-tasks-editor .btn-remove-task:hover{color:#dc2626;color:var(--danger-color,#dc2626)}.common-tasks-editor .btn-add-task{align-self:flex-start;margin-top:8px}.common-tasks-editor .empty-tasks{background:#f9fafb;background:var(--bg-secondary,#f9fafb);border:1px dashed #e5e7eb;border:1px dashed var(--border-color,#e5e7eb);border-radius:8px;color:#6b7280;color:var(--text-secondary,#6b7280);padding:24px;text-align:center}.site-access-editor,.site-access-editor .entries-list{display:flex;flex-direction:column;gap:12px}.site-access-editor .entry-item{align-items:flex-start;background:#f9fafb;background:var(--bg-secondary,#f9fafb);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:8px;display:flex;gap:12px;padding:16px}.site-access-editor .entry-item.dragging{border-color:#1976d2;border-color:var(--primary-color,#1976d2);opacity:.5}.site-access-editor .entry-drag-handle{align-items:center;color:#9ca3af;color:var(--text-muted,#9ca3af);cursor:grab;display:flex;flex-shrink:0;padding:8px 4px}.site-access-editor .entry-drag-handle:hover{color:#6b7280;color:var(--text-secondary,#6b7280)}.site-access-editor .entry-drag-handle:active{cursor:grabbing}.site-access-editor .entry-fields{display:flex;flex:1 1;flex-direction:column;gap:12px}.site-access-editor .entry-fields .form-group{margin-bottom:0}.site-access-editor .entry-fields label{align-items:center;color:#6b7280;color:var(--text-secondary,#6b7280);display:flex;font-size:12px;font-weight:500;gap:4px;margin-bottom:4px}.site-access-editor .btn-remove-entry{align-items:flex-start;background:none;border:none;color:#9ca3af;color:var(--text-muted,#9ca3af);cursor:pointer;display:flex;flex-shrink:0;padding:8px}.site-access-editor .btn-remove-entry:hover{color:#dc2626;color:var(--danger-color,#dc2626)}.site-access-editor .btn-add-entry{align-self:flex-start;margin-top:8px}.site-access-editor .empty-entries{background:#f9fafb;background:var(--bg-secondary,#f9fafb);border:1px dashed #e5e7eb;border:1px dashed var(--border-color,#e5e7eb);border-radius:8px;color:#6b7280;color:var(--text-secondary,#6b7280);padding:24px;text-align:center}.facilities-editor-modal .modal-body{max-height:70vh;overflow-y:auto}.facilities-editor-modal .room-details{background:#fff;background:var(--card-bg,#fff);border-top:1px solid #e5e7eb;border-top:1px solid var(--border-color,#e5e7eb);padding:12px 14px}.equipment-picker{display:flex;flex-direction:column;gap:8px}.selected-equipment{display:flex;flex-wrap:wrap;gap:6px}.equipment-tag{align-items:center;background:#f3f4f6;background:var(--bg-secondary,#f3f4f6);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:4px;color:#374151;color:var(--text-primary,#374151);display:inline-flex;font-size:12px;gap:4px;padding:4px 8px}.equipment-tag .remove-equipment{align-items:center;background:none;border:none;color:#6b7280;color:var(--text-secondary,#6b7280);cursor:pointer;display:flex;justify-content:center;opacity:.7;padding:0}.equipment-tag .remove-equipment:hover{color:#ef4444;color:var(--danger-color,#ef4444);opacity:1}.equipment-search-wrapper{position:relative}.equipment-dropdown{background:#fff;background:var(--bg-primary,#fff);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:0 0 6px 6px;border-top:none;box-shadow:0 4px 12px #00000026;left:0;max-height:200px;overflow-y:auto;position:absolute;right:0;top:100%;z-index:1000}.equipment-dropdown-item{align-items:center;border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--border-color,#e5e7eb);cursor:pointer;display:flex;justify-content:space-between;padding:10px 12px}.equipment-dropdown-item:last-child{border-bottom:none}.equipment-dropdown-item:hover{background:#f9fafb;background:var(--bg-secondary,#f9fafb)}.equipment-dropdown-item .equipment-name{color:#1f2937;color:var(--text-primary,#1f2937);font-size:13px}.equipment-dropdown-item .equipment-type{background:#f3f4f6;background:var(--bg-tertiary,#f3f4f6);border-radius:4px;color:#6b7280;color:var(--text-secondary,#6b7280);font-size:11px;padding:2px 6px}.equipment-dropdown-empty{color:#6b7280;color:var(--text-secondary,#6b7280);font-size:13px;padding:12px;text-align:center}.facilities-editor-v2{display:flex;flex-direction:column;gap:24px}.facilities-editor-v2 .section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.facilities-editor-v2 .section-header h4{align-items:center;color:#1f2937;color:var(--text-primary,#1f2937);display:flex;font-size:14px;font-weight:600;gap:8px;margin:0}.diagrams-grid{display:flex;gap:16px;margin:-4px;overflow-x:auto;padding:4px}.diagram-card{background:#fff;background:var(--card-bg,#fff);border:2px solid #e5e7eb;border:2px solid var(--border-color,#e5e7eb);border-radius:8px;cursor:pointer;flex:0 0 auto;max-width:350px;min-width:280px;overflow:hidden;transition:border-color .2s}.diagram-card:hover{border-color:#93c5fd;border-color:var(--primary-light,#93c5fd)}.diagram-card.selected{border-color:#3b82f6;border-color:var(--primary-color,#3b82f6);box-shadow:0 0 0 2px #3b82f633}.diagram-card-header{align-items:center;background:#f9fafb;background:var(--bg-secondary,#f9fafb);border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--border-color,#e5e7eb);display:flex;justify-content:space-between;padding:8px 12px}.diagram-name{align-items:center;cursor:text;display:flex;font-size:13px;font-weight:500;gap:6px}.diagram-name .edit-icon{opacity:0;transition:opacity .2s}.diagram-name:hover .edit-icon{opacity:.6}.diagram-name-input{border:1px solid #3b82f6;border:1px solid var(--primary-color,#3b82f6);border-radius:4px;font-size:13px;font-weight:500;outline:none;padding:2px 6px;width:150px}.btn-crop-diagram,.btn-remove-diagram{align-items:center;background:none;border:none;border-radius:4px;color:#6b7280;color:var(--text-secondary,#6b7280);cursor:pointer;display:flex;justify-content:center;padding:4px;position:relative}.btn-remove-diagram:hover{background:#fee2e2;background:var(--danger-bg,#fee2e2);color:#ef4444;color:var(--danger-color,#ef4444)}.btn-crop-diagram:hover{background:#dbeafe;background:var(--primary-bg,#dbeafe);color:#3b82f6;color:var(--primary-color,#3b82f6)}.btn-crop-diagram .crop-indicator{background:#3b82f6;background:var(--primary-color,#3b82f6);border-radius:50%;height:6px;position:absolute;right:2px;top:2px;width:6px}.diagram-crop-viewport{border-radius:6px}.diagram-crop-modal .crop-container{background:#1a1a2e;background:var(--bg-secondary,#1a1a2e);height:400px;position:relative;width:100%}.diagram-crop-modal .crop-controls{align-items:center;display:flex;gap:16px;padding:12px 0}.diagram-crop-modal .zoom-label{align-items:center;color:#6b7280;color:var(--text-secondary,#6b7280);display:flex;flex:1 1;font-size:13px;gap:8px}.diagram-crop-modal .zoom-slider{flex:1 1;max-width:200px}.diagram-crop-modal .rotation-controls{align-items:center;display:flex;gap:6px}.diagram-crop-modal .rotation-label{color:#6b7280;color:var(--text-secondary,#6b7280);font-size:12px;min-width:30px;text-align:center}.diagram-crop-modal .crop-hint{color:#9ca3af;color:var(--text-tertiary,#9ca3af);font-size:12px;margin:0}.pdf-page-selector-modal .pdf-page-hint{color:#6b7280;color:var(--text-secondary,#6b7280);font-size:13px;margin:0 0 16px}.pdf-page-selector-modal .pdf-page-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(100px,1fr))}.pdf-page-selector-modal .pdf-page-btn{align-items:center;background:#fff;background:var(--bg-primary,#fff);border:2px solid #e5e7eb;border:2px solid var(--border-color,#e5e7eb);border-radius:8px;color:#6b7280;color:var(--text-secondary,#6b7280);cursor:pointer;display:flex;flex-direction:column;gap:6px;padding:16px 12px;transition:all .15s ease}.pdf-page-selector-modal .pdf-page-btn:hover{background:#dbeafe;background:var(--primary-bg,#dbeafe);border-color:#3b82f6;border-color:var(--primary-color,#3b82f6);color:#3b82f6;color:var(--primary-color,#3b82f6)}.pdf-page-selector-modal .pdf-page-number{font-size:13px;font-weight:500}.pdf-page-selector-modal .pdf-page-loading{color:#6b7280;color:var(--text-secondary,#6b7280);padding:24px;text-align:center}.diagram-card-header .badge-pdf{background:#fef3c7;background:var(--warning-bg,#fef3c7);border-radius:3px;color:#d97706;color:var(--warning-color,#d97706);display:inline-block;font-size:9px;font-weight:600;letter-spacing:.5px;margin-left:4px;padding:1px 4px;text-transform:uppercase;vertical-align:middle}.diagram-card .diagram-wrapper{min-height:150px;position:relative}.diagram-card .diagram-image{display:block;height:auto;max-height:200px;object-fit:contain;width:100%}.facilities-editor{grid-gap:24px;display:grid;gap:24px;grid-template-columns:1fr 1fr}@media (max-width:900px){.facilities-editor{grid-template-columns:1fr}}.facilities-editor .diagram-section,.facilities-editor .rooms-section{display:flex;flex-direction:column;gap:12px}.facilities-editor h4{align-items:center;border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--border-color,#e5e7eb);color:#1f2937;color:var(--text-primary,#1f2937);display:flex;font-size:14px;font-weight:600;gap:8px;margin:0;padding-bottom:8px}.diagram-container{display:flex;flex-direction:column;gap:8px}.diagram-wrapper{background:#f9fafb;background:var(--bg-secondary,#f9fafb);border:2px solid #e5e7eb;border:2px solid var(--border-color,#e5e7eb);border-radius:8px;overflow:hidden;position:relative}.diagram-wrapper.placing-marker{border-color:#3b82f6;border-color:var(--primary-color,#3b82f6);cursor:crosshair}.diagram-image{display:block;height:auto;max-height:400px;object-fit:contain;width:100%}.room-marker{align-items:center;cursor:pointer;display:flex;flex-direction:column;position:absolute;transform:translate(-50%,-100%);z-index:10}.room-marker svg{color:#ef4444;color:var(--danger-color,#ef4444);filter:drop-shadow(0 2px 4px rgba(0,0,0,.2))}.room-marker.active svg{animation:pulse 1s infinite;color:#3b82f6;color:var(--primary-color,#3b82f6)}.room-marker .marker-label{background:#fff;background:var(--card-bg,#fff);border-radius:4px;box-shadow:0 1px 3px #0000001a;font-size:10px;font-weight:500;margin-top:2px;padding:2px 6px;white-space:nowrap}.placing-marker-hint{align-items:center;background:#e3f2fd;background:var(--info-bg,#e3f2fd);border-radius:6px;color:#1976d2;color:var(--info-color,#1976d2);display:flex;font-size:13px;gap:12px;padding:8px 12px}.diagram-actions{align-items:center;display:flex;justify-content:space-between}.diagram-filename{color:#6b7280;color:var(--text-secondary,#6b7280);font-size:12px}.diagram-upload-area{align-items:center;background:#f9fafb;background:var(--bg-secondary,#f9fafb);border:2px dashed #e5e7eb;border:2px dashed var(--border-color,#e5e7eb);border-radius:8px;display:flex;flex-direction:column;justify-content:center;padding:40px;text-align:center}.diagram-upload-area .btn-upload{margin-bottom:8px}.upload-hint{color:#9ca3af;color:var(--text-muted,#9ca3af);font-size:12px;margin:0}.rooms-section .rooms-list{display:flex;flex-direction:column;gap:8px;max-height:400px;overflow-x:visible;overflow-y:auto}.rooms-section .room-item{border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:6px;flex-shrink:0}.rooms-section .room-item.expanded{border-color:#3b82f6;border-color:var(--primary-color,#3b82f6)}.rooms-section .room-header{align-items:center;background:#f9fafb;background:var(--bg-secondary,#f9fafb);cursor:pointer;display:flex;justify-content:space-between;padding:10px 14px}.rooms-section .room-header:hover{background:#f3f4f6;background:var(--bg-tertiary,#f3f4f6)}.rooms-section .room-summary{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.rooms-section .room-icon{color:#9ca3af;color:var(--text-muted,#9ca3af)}.rooms-section .room-icon.has-marker{color:#388e3c;color:var(--success-color,#388e3c)}.rooms-section .room-name{color:#1f2937;color:var(--text-primary,#1f2937);font-size:13px;font-weight:500}.rooms-section .room-details{border-top:1px solid #e5e7eb;border-top:1px solid var(--border-color,#e5e7eb);padding:14px}.rooms-section .btn-remove-room{background:none;border:none;border-radius:4px;color:#9ca3af;color:var(--text-muted,#9ca3af);cursor:pointer;padding:4px}.rooms-section .btn-remove-room:hover{background:#fef2f2;background:var(--danger-bg,#fef2f2);color:#ef4444;color:var(--danger-color,#ef4444)}.rooms-section .btn-add-room{margin-top:8px}.rooms-section .empty-rooms{background:#f9fafb;background:var(--bg-secondary,#f9fafb);border-radius:6px;color:#6b7280;color:var(--text-secondary,#6b7280);padding:20px;text-align:center}.rooms-section .badge-floor,.rooms-section .badge-marker,.rooms-section .badge-type{border-radius:4px;font-size:10px;font-weight:500;padding:2px 6px}.rooms-section .badge-type{background:#e3f2fd;background:var(--info-bg,#e3f2fd);color:#1976d2;color:var(--info-color,#1976d2)}.rooms-section .badge-floor{background:#f3f4f6;background:var(--bg-tertiary,#f3f4f6);color:#6b7280;color:var(--text-secondary,#6b7280)}.rooms-section .badge-marker{align-items:center;background:#e8f5e9;background:var(--success-bg,#e8f5e9);color:#388e3c;color:var(--success-color,#388e3c);display:flex;gap:2px}.marker-controls{align-items:center;display:flex;flex-wrap:wrap;gap:6px}.marker-controls .marker-set{color:#388e3c;color:var(--success-color,#388e3c);font-size:12px;font-weight:500}.btn-xs{font-size:11px;padding:2px 8px}.editor-section{border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--border-color,#e5e7eb);margin-bottom:24px;padding-bottom:20px}.editor-section:last-of-type{border-bottom:none;margin-bottom:0;padding-bottom:0}.editor-section h4{align-items:center;color:#1f2937;color:var(--text-primary,#1f2937);display:flex;font-size:14px;font-weight:600;gap:8px;margin:0 0 16px}.editor-section h4 svg{color:#6b7280;color:var(--text-secondary,#6b7280)}.section-header-row{margin-bottom:16px}.section-header-row h4{margin-bottom:0}.services-grid{margin-top:12px}.services-label{color:#6b7280;color:var(--text-secondary,#6b7280);display:block;font-size:13px;font-weight:500;margin-bottom:8px}.services-checkboxes{display:flex;flex-wrap:wrap;gap:12px 24px}.service-checkbox{font-size:13px}.service-checkbox input{margin-right:6px}.array-items{display:flex;flex-direction:column;gap:12px}.array-item-card{background:#f9fafb;background:var(--bg-secondary,#f9fafb);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:8px;padding:12px}.array-item-header{align-items:center;border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--border-color,#e5e7eb);display:flex;justify-content:space-between;margin-bottom:12px;padding-bottom:8px}.array-item-header span{color:#6b7280;color:var(--text-secondary,#6b7280);font-size:13px;font-weight:500}.empty-section{background:#f9fafb;background:var(--bg-secondary,#f9fafb);border:1px dashed #e5e7eb;border:1px dashed var(--border-color,#e5e7eb);border-radius:6px;color:#9ca3af;color:var(--text-muted,#9ca3af);font-size:13px;padding:16px;text-align:center}.btn-outline{background:#0000;border:1px solid #3b82f6;border:1px solid var(--primary-color,#3b82f6);color:#3b82f6;color:var(--primary-color,#3b82f6)}.btn-outline:hover:not(:disabled){background:#eff6ff;background:var(--primary-bg,#eff6ff)}.business-apps-editor .checkbox-group{display:flex;gap:20px}.browser-card .checkbox-group{align-items:center;flex-direction:row}.custom-app-editor .modal-body{max-height:70vh}.link-picker-field{align-items:center;display:flex;gap:12px}.link-picker-field .link-value{background:#f9fafb;background:var(--bg-secondary,#f9fafb);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:6px;color:#6b7280;color:var(--text-secondary,#6b7280);flex:1 1;font-size:13px;padding:8px 12px}.add-category-dropdown select{min-width:180px}.categories-list{display:flex;flex-direction:column;gap:12px}.category-card{border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:8px;overflow:hidden}.category-header{align-items:center;background:#f9fafb;background:var(--bg-secondary,#f9fafb);cursor:pointer;display:flex;gap:12px;padding:12px 16px;transition:background .15s}.category-header:hover{background:#f3f4f6;background:var(--bg-tertiary,#f3f4f6)}.category-header svg:first-child{color:#6b7280;color:var(--text-secondary,#6b7280);flex-shrink:0}.category-label-input{background:#0000;border:none;border-radius:4px;color:#1f2937;color:var(--text-primary,#1f2937);flex:1 1;font-size:14px;font-weight:500;padding:4px 8px}.category-label-input:focus{background:#fff;background:var(--card-bg,#fff);box-shadow:0 0 0 2px #3b82f6;box-shadow:0 0 0 2px var(--primary-color,#3b82f6);outline:none}.category-type-badge{background:#eff6ff;background:var(--primary-bg,#eff6ff);border-radius:4px;color:#3b82f6;color:var(--primary-color,#3b82f6);flex-shrink:0;font-size:11px;padding:2px 8px}.category-count{color:#9ca3af;color:var(--text-muted,#9ca3af);flex-shrink:0;font-size:12px}.category-header>svg:last-child{color:#6b7280;color:var(--text-secondary,#6b7280);flex-shrink:0}.category-body{border-top:1px solid #e5e7eb;border-top:1px solid var(--border-color,#e5e7eb);padding:16px}.machine-list-items{overflow-x:auto}.machine-list-header{border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--border-color,#e5e7eb);color:#6b7280;color:var(--text-secondary,#6b7280);font-size:11px;font-weight:600;padding:8px 0;text-transform:uppercase}.machine-list-header,.machine-list-row{grid-gap:8px;display:grid;gap:8px;grid-template-columns:1fr 140px 100px 120px 100px 1fr 40px;margin-bottom:8px}.machine-list-row .form-control{font-size:13px;padding:6px 8px}.text-list-items{display:flex;flex-direction:column;gap:8px}.text-list-row{grid-gap:8px;display:grid;gap:8px;grid-template-columns:1fr 1fr 40px}.text-list-row .form-control{font-size:13px;padding:6px 10px}.key-value-items{display:flex;flex-direction:column;gap:8px}.key-value-row{grid-gap:8px;align-items:center;display:grid;gap:8px;grid-template-columns:1fr auto 1fr 40px}.key-value-row .form-control{font-size:13px;padding:6px 10px}.key-value-separator{color:#9ca3af;color:var(--text-muted,#9ca3af);font-weight:600}.add-item-btn{margin-top:8px}.service-picker-modal .modal-body{padding:0}.service-picker-list{max-height:400px;overflow-y:auto}.picker-location-header svg{margin-right:6px}.picker-item .legacy-badge{background:#fef3c7;background:var(--warning-bg,#fef3c7);color:#d97706;color:var(--warning-color,#d97706);margin-left:6px}.picker-item .legacy-badge,.picker-item .sso-badge-small{border-radius:3px;font-size:10px;font-weight:500;padding:1px 5px}.picker-item .sso-badge-small{background:#dcfce7;background:var(--success-bg,#dcfce7);color:#16a34a;color:var(--success-color,#16a34a)}.generated-section{background:#f9fafb;background:var(--bg-secondary,#f9fafb);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:8px;padding:16px}.generated-section-header{align-items:center;color:#6b7280;color:var(--text-secondary,#6b7280);display:flex;font-size:12px;font-weight:500;gap:8px;margin-bottom:12px}.generated-section-header svg{height:14px;width:14px}.generated-item{align-items:flex-start;border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--border-color,#e5e7eb);display:flex;gap:12px;padding:8px 0}.generated-item:last-child{border-bottom:none}.generated-item-label{color:#6b7280;color:var(--text-secondary,#6b7280);font-size:12px;font-weight:500;min-width:120px}.generated-item-value{color:#1f2937;color:var(--text-primary,#1f2937);font-size:13px}.section-note{color:#6b7280;color:var(--text-secondary,#6b7280);font-size:11px;font-weight:400;margin-left:auto}.browser-config-section{margin-bottom:16px}.browser-config-section h4{align-items:center;color:#1f2937;color:var(--text-primary,#1f2937);display:flex;font-size:14px;font-weight:600;gap:6px;margin:0 0 12px}.browser-policy-list{display:flex;flex-wrap:wrap;gap:6px}.browser-badge{align-items:center;background:#f3f4f6;background:var(--bg-secondary,#f3f4f6);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:12px;color:#1f2937;color:var(--text-primary,#1f2937);display:inline-flex;font-size:12px;padding:2px 8px}.software-tier{color:#2563eb;color:var(--primary-color,#2563eb);font-size:11px;font-weight:500;margin-left:8px}.software-components,.software-deployment{color:#6b7280;color:var(--text-secondary,#6b7280);font-size:11px;margin-top:2px}.software-components{font-style:italic}.info-banner{align-items:center;background:#eff6ff;background:var(--info-bg,#eff6ff);border:1px solid #bfdbfe;border:1px solid var(--info-border,#bfdbfe);border-radius:6px;color:#1e40af;color:var(--info-text,#1e40af);display:flex;font-size:12px;gap:8px;margin-bottom:16px;padding:10px 14px}.info-banner svg{color:#3b82f6;color:var(--info-icon,#3b82f6);flex-shrink:0}.toggle-chips-container{display:flex;flex-wrap:wrap;gap:8px;padding:8px 0}.toggle-chip{align-items:center;background:#fff;background:var(--card-bg,#fff);border:1.5px solid #e5e7eb;border:1.5px solid var(--border-color,#e5e7eb);border-radius:20px;color:#6b7280;color:var(--text-secondary,#6b7280);cursor:pointer;display:inline-flex;font-size:13px;font-weight:500;gap:6px;padding:8px 14px;transition:all .15s ease;-webkit-user-select:none;user-select:none}.toggle-chip:hover{background:#eff6ff;background:var(--primary-bg,#eff6ff);color:#3b82f6;color:var(--primary-color,#3b82f6)}.toggle-chip.selected,.toggle-chip:hover{border-color:#3b82f6;border-color:var(--primary-color,#3b82f6)}.toggle-chip.selected{background:#3b82f6;background:var(--primary-color,#3b82f6);color:#fff}.toggle-chip.selected:hover{background:#2563eb;background:var(--primary-hover,#2563eb);border-color:#2563eb;border-color:var(--primary-hover,#2563eb);color:#fff}.toggle-chip .chip-check{display:none;height:14px;width:14px}.toggle-chip.selected .chip-check{display:inline-flex}.toggle-chip.chip-sm{border-radius:14px;font-size:12px;padding:5px 10px}.toggle-chip.chip-lg{border-radius:24px;font-size:14px;padding:10px 18px}.toggle-chip-group{display:flex;flex-direction:column;gap:8px}.toggle-chip-group .group-label{color:#6b7280;color:var(--text-secondary,#6b7280);font-size:13px;font-weight:500}.inline-toggle-chips{display:flex;flex-wrap:wrap;gap:8px}.inline-toggle-chip{align-items:center;background:#f9fafb;background:var(--bg-secondary,#f9fafb);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:12px;color:#6b7280;color:var(--text-secondary,#6b7280);cursor:pointer;display:inline-flex;font-size:12px;font-weight:500;gap:4px;padding:4px 10px;transition:all .15s ease;-webkit-user-select:none;user-select:none}.inline-toggle-chip:hover{border-color:#3b82f6;border-color:var(--primary-color,#3b82f6)}.inline-toggle-chip.selected,.inline-toggle-chip.selected.chip-default{background:#eff6ff;background:var(--primary-bg,#eff6ff);border-color:#3b82f6;border-color:var(--primary-color,#3b82f6);color:#3b82f6;color:var(--primary-color,#3b82f6)}.inline-toggle-chip.selected.chip-managed{background:#dcfce7;background:var(--success-bg,#dcfce7);border-color:#16a34a;border-color:var(--success-color,#16a34a);color:#16a34a;color:var(--success-color,#16a34a)}.unified-editor-footer{bottom:0;justify-content:space-between;position:-webkit-sticky;position:sticky;z-index:10}.unified-editor-footer,.unified-editor-footer .footer-left{align-items:center;display:flex;gap:12px}.unified-editor-footer .footer-right{align-items:center;display:flex;gap:8px;margin-left:auto}.toggle-switch{align-items:center;color:#6b7280;color:var(--text-secondary,#6b7280);cursor:pointer;display:flex;font-size:13px;gap:8px;-webkit-user-select:none;user-select:none}.toggle-switch.active{color:#1f2937;color:var(--text-primary,#1f2937)}.toggle-switch-track{background:#d1d5db;background:var(--border-color,#d1d5db);border-radius:10px;flex-shrink:0;height:20px;position:relative;transition:background .2s;width:36px}.toggle-switch.active .toggle-switch-track{background:#3b82f6;background:var(--primary-color,#3b82f6)}.toggle-switch-thumb{background:#fff;border-radius:50%;box-shadow:0 1px 3px #00000026;height:16px;left:2px;position:absolute;top:2px;transition:transform .2s;width:16px}.toggle-switch.active .toggle-switch-thumb{transform:translateX(16px)}.toggle-switch-label{font-weight:500;white-space:nowrap}.toggle-switch-count{background:#e5e7eb;background:var(--bg-tertiary,#e5e7eb);border-radius:10px;color:#6b7280;color:var(--text-secondary,#6b7280);font-size:11px;font-weight:500;padding:1px 6px}.toggle-switch.active .toggle-switch-count{background:#dbeafe;background:var(--primary-bg,#dbeafe);color:#3b82f6;color:var(--primary-color,#3b82f6)}.footer-add-field-select{background:#fff;background:var(--card-bg,#fff);border:1px solid #d1d5db;border:1px solid var(--border-color,#d1d5db);border-radius:6px;color:#3b82f6;color:var(--primary-color,#3b82f6);cursor:pointer;font-size:13px;font-weight:500;max-width:180px;padding:4px 8px}.footer-add-field-select:hover:not(:disabled){background:#f3f4f6;background:var(--hover-bg,#f3f4f6);border-color:#3b82f6;border-color:var(--primary-color,#3b82f6)}.footer-add-field-select:disabled{color:#9ca3af;color:var(--text-tertiary,#9ca3af);cursor:default}.footer-add-field-select:focus{border-color:#3b82f6;border-color:var(--primary-color,#3b82f6);outline:none}.add-field-controls,.create-field-inline{align-items:center;display:flex;gap:4px}.create-field-inline .create-field-input{font-size:13px;height:auto;padding:4px 8px;width:160px}.os-section-header{background:#f9fafb;background:var(--bg-secondary,#f9fafb);border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--border-color,#e5e7eb);color:#6b7280;color:var(--text-secondary,#6b7280);font-size:11px;font-weight:600;letter-spacing:.05em;padding:8px 12px;text-transform:uppercase}.os-tile-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));padding:12px}.os-tile{background:#fff;background:var(--bg-primary,#fff);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:8px;display:flex;flex-direction:column;gap:6px;min-height:80px;padding:12px;transition:border-color .15s,box-shadow .15s}.os-tile.editable{cursor:pointer}.os-tile.editable:hover{border-color:#2563eb;border-color:var(--primary-color,#2563eb);box-shadow:0 1px 4px #2563eb1f}.os-tile.documented{border-left:3px solid #16a34a;border-left:3px solid var(--success-color,#16a34a)}.os-tile.undocumented{border-style:dashed;opacity:.6}.os-tile.undocumented.editable:hover{border-color:#2563eb;border-color:var(--primary-color,#2563eb);border-style:solid;opacity:1}.os-tile-header{align-items:flex-start;display:flex;gap:6px}.os-tile-icon{color:#6b7280;color:var(--text-secondary,#6b7280);flex-shrink:0;margin-top:1px}.os-tile.documented .os-tile-icon{color:#16a34a;color:var(--success-color,#16a34a)}.os-tile-name{color:#1f2937;color:var(--text-primary,#1f2937);flex:1 1;font-size:13px;font-weight:600;line-height:1.3}.os-tile-status{align-items:center;display:flex;gap:4px}.os-tile-detail{color:#6b7280;color:var(--text-secondary,#6b7280);line-height:1.3;overflow:hidden;text-overflow:ellipsis}.os-badge,.os-tile-detail{font-size:11px;white-space:nowrap}.os-badge{align-items:center;border-radius:10px;display:inline-flex;font-weight:500;padding:2px 8px}.os-badge-standard{background:#dcfce7;color:#166534}.os-badge-nonstandard{background:#fef3c7;color:#92400e}.os-badge-undocumented{background:#f3f4f6;background:var(--bg-secondary,#f3f4f6);color:#6b7280;color:var(--text-secondary,#6b7280)}.os-procedure-link{align-items:center;border-radius:4px;color:#2563eb;color:var(--primary-color,#2563eb);cursor:pointer;display:inline-flex;font-size:11px;gap:3px;max-width:100%;overflow:hidden;padding:2px 4px;text-decoration:none;text-overflow:ellipsis;transition:background .15s;white-space:nowrap}.os-procedure-link:hover{background:#eff6ff;background:var(--primary-bg,#eff6ff);text-decoration:underline}.os-tile .notes-icon-btn{margin-left:6px}.os-tile .company-note{font-size:11px;margin-top:4px}.os-procedure-picker{display:flex;flex-direction:column;gap:8px}.os-procedure-picker .os-procedure-chip{align-items:center;background:#eff6ff;background:var(--primary-bg,#eff6ff);border:1px solid #2563eb;border:1px solid var(--primary-color,#2563eb);border-radius:6px;color:#2563eb;color:var(--primary-color,#2563eb);display:inline-flex;font-size:13px;gap:6px;padding:4px 10px}.os-procedure-picker .os-procedure-chip .os-chip-remove{cursor:pointer;opacity:.6;transition:opacity .15s}.os-procedure-picker .os-procedure-chip .os-chip-remove:hover{opacity:1}.os-procedure-picker .os-procedure-actions{display:flex;gap:8px}.os-procedure-picker .os-procedure-actions button{font-size:12px;padding:4px 10px}.os-checklist-container{border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:8px;margin-bottom:16px;overflow:hidden}.os-checklist-container:last-child{margin-bottom:0}.os-empty-section{color:#6b7280;color:var(--text-secondary,#6b7280);font-size:13px;font-style:italic;padding:12px;text-align:center}.filter-group-manager{display:flex;flex-direction:column;max-height:80vh;min-width:600px}.filter-group-manager .modal-header{align-items:center;border-bottom:1px solid #dee2e6;border-bottom:1px solid var(--border-color,#dee2e6);display:flex;justify-content:space-between;padding:20px 24px}.filter-group-manager .modal-header h2{font-size:20px;font-weight:600;margin:0}.filter-group-manager .modal-body{flex:1 1;overflow-y:auto;padding:20px 24px}.filter-group-manager .modal-footer{background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border-top:1px solid #dee2e6;border-top:1px solid var(--border-color,#dee2e6);display:flex;gap:12px;justify-content:flex-end;padding:16px 24px}.groups-list{display:flex;flex-direction:column;gap:12px;margin-bottom:16px}.no-groups{background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border:1px dashed #dee2e6;border:1px dashed var(--border-color,#dee2e6);border-radius:8px;padding:40px 20px;text-align:center}.no-groups svg{color:#6c757d;color:var(--text-secondary,#6c757d);margin-bottom:12px}.no-groups p{margin:0 0 8px}.no-groups .text-muted{color:#6c757d;color:var(--text-secondary,#6c757d);font-size:13px}.group-card{align-items:center;background:#fff;background:var(--bg-primary,#fff);border:1px solid #dee2e6;border:1px solid var(--border-color,#dee2e6);border-radius:8px;display:flex;transition:all .2s}.group-card:hover{border-color:#adb5bd;border-color:var(--border-hover,#adb5bd);box-shadow:0 2px 4px #0000000d}.group-card.has-error{border-color:#dc3545;border-color:var(--color-error,#dc3545)}.group-info{cursor:pointer;flex:1 1;padding:14px 16px}.group-name{align-items:center;display:flex;font-size:14px;font-weight:500;gap:8px}.group-meta{color:#6c757d;color:var(--text-secondary,#6c757d);display:flex;font-size:12px;gap:12px;margin-top:4px}.group-type{background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border-radius:4px;padding:2px 8px;text-transform:capitalize}.group-actions{border-left:1px solid #dee2e6;border-left:1px solid var(--border-color,#dee2e6);display:flex;gap:4px;padding:8px 12px}.group-actions .btn-icon{background:#0000;border:1px solid #0000;border-radius:4px;color:#6c757d;color:var(--text-secondary,#6c757d);cursor:pointer;padding:6px 8px;transition:all .2s}.group-actions .btn-icon:hover:not(:disabled){background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border-color:#dee2e6;border-color:var(--border-color,#dee2e6);color:#212529;color:var(--text-primary,#212529)}.group-actions .btn-icon:disabled{cursor:not-allowed;opacity:.4}.group-actions .btn-icon.btn-danger:hover:not(:disabled){background:#fef2f2;border-color:#dc3545;border-color:var(--color-error,#dc3545);color:#dc3545;color:var(--color-error,#dc3545)}.group-error{background:#fef2f2;border-top:1px solid #fecaca;color:#dc3545;color:var(--color-error,#dc3545);font-size:12px;gap:6px;padding:8px 16px}.btn-add-group,.group-error{align-items:center;display:flex}.btn-add-group{background:#0000;border:1px dashed #dee2e6;border:1px dashed var(--border-color,#dee2e6);border-radius:8px;color:#6c757d;color:var(--text-secondary,#6c757d);cursor:pointer;font-size:14px;gap:8px;justify-content:center;padding:14px;transition:all .2s;width:100%}.btn-add-group:hover{background:#f0f7ff;border-color:#0d6efd;border-color:var(--color-primary,#0d6efd);color:#0d6efd;color:var(--color-primary,#0d6efd)}.group-editor{padding:0}.group-editor h3{font-size:16px;font-weight:600;margin:0 0 20px}.form-group{margin-bottom:16px}.form-group label{color:#6c757d;color:var(--text-secondary,#6c757d);margin-bottom:6px}.form-group input,.form-group select{border:1px solid #dee2e6;border:1px solid var(--border-color,#dee2e6);border-radius:6px;font-size:14px;padding:10px 12px;transition:border-color .2s;width:100%}.form-group input:focus,.form-group select:focus{border-color:#0d6efd;border-color:var(--color-primary,#0d6efd);outline:none}.members-section{margin-top:20px}.members-section>label{color:#6c757d;color:var(--text-secondary,#6c757d);display:block;font-size:13px;font-weight:500;margin-bottom:12px}.members-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.members-column h4{align-items:center;color:#6c757d;color:var(--text-secondary,#6c757d);display:flex;font-size:12px;font-weight:600;gap:6px;letter-spacing:.5px;margin:0 0 8px;text-transform:uppercase}.members-list{border:1px solid #dee2e6;border:1px solid var(--border-color,#dee2e6);border-radius:8px;max-height:200px;overflow-y:auto}.member-item{align-items:center;border-bottom:1px solid #dee2e6;border-bottom:1px solid var(--border-color,#dee2e6);cursor:pointer;display:flex;justify-content:space-between;padding:10px 12px;transition:background .15s}.member-item:last-child{border-bottom:none}.member-item:hover{background:#f8f9fa;background:var(--bg-secondary,#f8f9fa)}.member-item.selected{background:#e7f3ff}.member-item.selected .member-name{font-weight:500}.member-item svg,.member-item.selected .member-name{color:#0d6efd;color:var(--color-primary,#0d6efd)}.member-name{font-size:13px}.empty-message{color:#6c757d;color:var(--text-secondary,#6c757d);font-size:13px;font-style:italic;padding:20px;text-align:center}.editor-actions{border-top:1px solid #dee2e6;border-top:1px solid var(--border-color,#dee2e6);margin-top:24px;padding-top:16px}.alert{align-items:center;border-radius:8px;display:flex;font-size:14px;gap:10px;margin-bottom:16px;padding:12px 16px}.alert-danger{background:#fef2f2;border:1px solid #fecaca;color:#dc3545;color:var(--color-error,#dc3545)}.btn{border:1px solid #0000;padding:10px 16px}.btn-primary{background:#0d6efd;background:var(--color-primary,#0d6efd)}.btn-primary:hover:not(:disabled){background:#0b5ed7}.btn-secondary{background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border-color:#dee2e6;border-color:var(--border-color,#dee2e6);color:#212529;color:var(--text-primary,#212529)}.btn-secondary:hover:not(:disabled){background:#e9ecef}.btn-icon{background:#0000;border:none;color:#6c757d;color:var(--text-secondary,#6c757d);cursor:pointer;padding:8px}.btn-icon:hover{color:#212529;color:var(--text-primary,#212529)}.infodocs-container{margin:0 auto;max-width:1400px;padding:20px}.infodocs-container .page-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:24px}.infodocs-container .header-content h1{align-items:center;color:#1a1a2e;color:var(--text-primary,#1a1a2e);display:flex;font-size:24px;font-weight:600;gap:12px;margin:0 0 8px}.infodocs-container .header-subtitle{color:#666;color:var(--text-secondary,#666);font-size:14px;margin:0}.infodocs-container .header-actions,.infodocs-error-banner{align-items:center;display:flex;gap:8px}.infodocs-error-banner{background:#fff3cd;background:var(--warning-bg,#fff3cd);border:1px solid #ffc107;border:1px solid var(--warning-color,#ffc107);border-radius:8px;color:var(--warning-color);margin-bottom:16px;padding:12px 16px}.infodocs-error-banner button{background:none;border:none;color:inherit;cursor:pointer;font-size:13px;margin-left:auto;text-decoration:underline}.client-list-header{align-items:center;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:16px}.client-list-header .search-box{flex:1 1;min-width:200px}.client-list-controls{align-items:center;display:flex;gap:12px}.btn-ai-update{background:var(--card-bg);border:1px solid var(--border-color);border-radius:6px}.btn-ai-update:hover{background:#ffd70026;border-color:var(--warning-color);box-shadow:0 0 8px #ffd7004d}.btn-ai-update:focus{border-color:var(--warning-color);box-shadow:0 0 0 3px #ffd70033;outline:none}.btn-visibility-toggle{background:#0000;border:none;color:var(--primary-color)}.btn-visibility-toggle:hover{background:var(--hover-bg)}.btn-visibility-toggle.showing-all,.infodocs-client-count{color:var(--text-secondary)}.infodocs-client-count{font-size:13px}.client-card-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.client-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:10px;cursor:pointer;padding:16px;transition:border-color .15s,box-shadow .15s}.client-card:hover{border-color:var(--primary-color);box-shadow:0 2px 8px #00000014}.client-card-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.client-card-name{color:var(--text-primary);font-size:16px;font-weight:600;margin:0 0 4px}.client-card-alias{color:var(--text-muted);font-size:12px;margin-bottom:12px}.client-card-details{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}.client-detail{align-items:center;color:var(--text-secondary);display:flex;font-size:13px;gap:8px}.client-detail svg{color:var(--text-muted);flex-shrink:0}.client-card-stats{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:12px}.client-card-stats .stat-item{align-items:center;color:var(--text-muted);display:flex;font-size:12px;gap:4px}.client-card-stats .stat-item.warning{color:var(--warning-color)}.client-card-footer{border-top:1px solid var(--border-color);padding-top:12px}.client-card-footer .view-link{align-items:center;color:var(--primary-color);display:flex;font-size:13px;font-weight:500;gap:4px}.infodocs-detail-view{background:#fff;background:var(--card-bg,#fff);border:1px solid var(--border-color);border-radius:12px}.infodocs-sticky-header{background:var(--card-bg);border-radius:12px 12px 0 0;position:-webkit-sticky;position:sticky;top:0;z-index:20}.infodocs-client-header{align-items:center;background:var(--secondary-bg);border-bottom:1px solid var(--border-color);display:flex;gap:16px;padding:16px 20px}.back-button{align-items:center;background:var(--primary-color);border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:13px;font-weight:500;gap:6px;padding:8px 14px;transition:background .15s}.back-button:hover{background:var(--primary-hover)}.back-button .back-icon{transform:rotate(180deg)}.selected-client-info{align-items:center;display:flex;flex:1 1;gap:12px}.selected-client-info .client-code{background:var(--info-bg);border-radius:4px;color:var(--primary-color);font-size:12px;font-weight:600;padding:4px 10px}.selected-client-info .client-name{color:var(--text-primary);font-size:18px;font-weight:600}.selected-client-info .contract-badge{align-items:center;border-radius:4px;display:flex;font-size:12px;gap:4px;padding:4px 10px}.selected-client-info .contract-badge.has-contract{background:var(--success-bg);color:var(--success-color)}.selected-client-info .contract-badge.no-contract{background:var(--secondary-bg);color:var(--text-secondary)}.infodocs-tabs{background:var(--card-bg);border-bottom:1px solid var(--border-color);display:flex;gap:4px;overflow-x:auto;padding:12px 20px}.infodocs-tabs .tab-button{align-items:center;background:none;border:none;border-radius:6px;color:var(--text-secondary);cursor:pointer;display:flex;font-size:13px;font-weight:500;gap:6px;padding:10px 16px;transition:all .15s;white-space:nowrap}.infodocs-tabs .tab-button:hover{background:var(--hover-bg);color:var(--text-primary)}.infodocs-tabs .tab-button.active{background:var(--primary-color);color:#fff}.infodocs-tabs .tab-button.has-match{position:relative}.tab-match-indicator{animation:pulse 1.5s ease-in-out infinite;background:var(--warning-color);border-radius:50%;height:8px;position:absolute;right:4px;top:4px;width:8px}.infodocs-tabs .tab-button.active .tab-match-indicator{background:#fff}.infodocs-tabs .tab-button.has-change{position:relative}.tab-change-indicator{animation:pulse 1.5s ease-in-out infinite;background:#17a2b8;background:var(--info-color,#17a2b8);border-radius:50%;height:8px;position:absolute;right:4px;top:4px;width:8px}.infodocs-tabs .tab-button.active .tab-change-indicator{background:#fff}.infodocs-tabs .tab-button.has-filter{position:relative}.tab-filter-indicator{background:#28a745;background:var(--success-color,#28a745);border-radius:50%;height:6px;position:absolute;right:4px;top:4px;width:6px}.infodocs-tabs .tab-button.active .tab-filter-indicator{background:#fff}.infodocs-tab-content{min-height:400px;padding:24px}.infodocs-container .card-header h3{align-items:center;display:flex;font-size:15px;font-weight:600;gap:10px;margin:0}.infodocs-container .card-header h3 svg{color:var(--primary-color)}.tab-infrastructure .card{margin-bottom:20px}.tab-infrastructure .card:last-child{margin-bottom:0}.status-closed-tag,.status-failed-tag{background:var(--danger-bg);border-radius:4px;color:var(--danger-color);font-size:10px;font-weight:600;margin-left:8px;padding:2px 6px;text-transform:uppercase}.location-type-tag{background:var(--secondary-bg);border-radius:4px;color:var(--text-secondary);font-size:11px;font-weight:500;margin-left:8px;padding:2px 8px}.info-section{background:var(--secondary-bg);border:1px solid var(--border-color);border-radius:10px;margin-bottom:20px;padding:20px}.info-section:last-child{margin-bottom:0}.info-section h3{align-items:center;color:var(--text-primary);display:flex;font-size:15px;font-weight:600;gap:10px;margin:0 0 16px}.info-section h3 svg{color:var(--primary-color)}.infodocs-container .info-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}.infodocs-container .info-item{display:flex;flex-direction:column;gap:4px}.infodocs-container .info-item .info-label{color:var(--text-secondary);flex:none!important;font-size:11px;font-weight:500;letter-spacing:.5px;text-transform:uppercase}.infodocs-container .info-item .info-value{color:var(--text-primary);flex:none!important;font-size:14px;word-break:break-word}.infodocs-container .info-item .info-value a{align-items:center;color:var(--primary-color);display:inline-flex;gap:4px;text-decoration:none}.infodocs-container .info-item .info-value a:hover{text-decoration:underline}.infodocs-container .legacy-notebook-link{background:var(--hover-bg);border-radius:4px;font-weight:500;padding:4px 8px}.infodocs-container .legacy-notebook-link:hover{background:var(--primary-light)}.infodocs-container .info-item .info-value.active{color:var(--success-color);font-weight:500}.location-note{background:var(--warning-bg)}.company-note,.location-note{border-radius:6px;color:var(--text-secondary);font-size:13px;margin-bottom:16px;padding:10px 12px}.company-note{background:#e0f2fe;background:var(--info-bg,#e0f2fe);border-left:3px solid #0ea5e9;border-left:3px solid var(--primary-color,#0ea5e9);white-space:pre-wrap}.contacts-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.contact-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;padding:14px}.contact-card.primary{border-left:3px solid var(--primary-color)}.contact-card.billing{border-left:3px solid var(--success-color)}.contact-header{gap:8px;margin-bottom:8px}.btn-star-icon{align-items:center;background:none;border:none;border-radius:4px;color:#999;color:var(--text-muted,#999);cursor:pointer;display:flex;flex-shrink:0;justify-content:center;padding:2px;transition:color .15s ease,background-color .15s ease}.btn-star-icon:hover:not(:disabled){background-color:#ffc1071a}.btn-star-icon.starred,.btn-star-icon:hover:not(:disabled){color:#ffc107;color:var(--warning-color,#ffc107)}.btn-star-icon.featured{color:#0891b2;opacity:1}.btn-star-icon:disabled{cursor:default;opacity:.6}.btn-star-icon:disabled.featured,.btn-star-icon:disabled.starred{opacity:1}.contact-card.is-display-contact{border-color:#ffc107;border-color:var(--warning-color,#ffc107);box-shadow:0 0 0 1px #ffc107;box-shadow:0 0 0 1px var(--warning-color,#ffc107)}.contact-card.is-featured-contact{border-color:#0891b2;box-shadow:0 0 0 1px #0891b2}.display-contact-star.featured{color:#0891b2;opacity:1}.toolbar-saved-views{align-items:center;display:flex;gap:2px}.saved-views-select{background:#fff;background:var(--card-bg,#fff);border:1px solid #ddd;border:1px solid var(--border-color,#ddd);border-radius:4px;color:var(--text-primary);cursor:pointer;font-size:.78rem;max-width:120px;padding:2px 4px}.toolbar-delete-view{color:#dc3545!important;color:var(--danger-color,#dc3545)!important;opacity:.6}.toolbar-delete-view:hover{opacity:1}.save-view-inline{align-items:center;display:flex;gap:4px}.save-view-input{border:1px solid #007bff;border:1px solid var(--primary-color,#007bff);border-radius:4px;font-size:.78rem;outline:none;padding:3px 6px;width:120px}.save-view-inline .btn-sm{font-size:.72rem;padding:2px 8px}.contact-name{color:var(--text-primary);font-size:14px;font-weight:600}.contact-role{background:var(--info-bg);border-radius:4px;color:var(--primary-color);font-size:11px;font-weight:500;padding:2px 6px;text-transform:uppercase}.contact-title{color:var(--text-secondary);font-size:13px;margin-bottom:10px}.contact-details{display:flex;flex-direction:column;font-size:13px;gap:6px}.contact-details a,.contact-details span{align-items:center;color:var(--text-secondary);display:flex;gap:6px;text-decoration:none}.contact-details a:hover{color:var(--primary-color)}.contact-details svg{color:var(--text-muted);flex-shrink:0}.contact-permissions{border-top:1px solid var(--border-color);display:flex;flex-wrap:wrap;gap:4px;margin-top:10px;padding-top:10px}.permission-badge{background:var(--secondary-bg);border-radius:4px;color:var(--text-secondary);font-size:10px;padding:2px 6px}.permissions-list{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}.permission-tag{background:var(--primary-color);border-radius:4px;color:#fff;font-size:12px;gap:4px;padding:4px 8px}.permission-remove,.permission-tag{align-items:center;display:inline-flex}.permission-remove{background:none;border:none;border-radius:50%;color:#ffffffb3;cursor:pointer;justify-content:center;margin:0;padding:0}.permission-remove:hover{background:#fff3;color:#fff}.permission-add-row{display:flex;gap:8px;margin-top:8px}.permission-add-row .form-control{flex:1 1}.permission-add-row .btn{align-items:center;display:inline-flex;flex-shrink:0;justify-content:center;padding:6px 10px}.contact-notes{color:var(--text-muted);font-size:12px;font-style:italic;margin-top:8px}.locations-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.location-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;padding:14px}.location-card.closed{border-style:dashed;opacity:.6}.location-header{gap:8px;margin-bottom:10px}.location-name{color:var(--text-primary);font-size:14px;font-weight:600}.location-type{background:var(--secondary-bg);color:var(--text-secondary)}.status-closed{background:var(--danger-bg);border-radius:4px;color:var(--danger-color);font-size:10px;font-weight:600;padding:2px 6px;text-transform:uppercase}.location-type-badge{background:#eff6ff;background:var(--primary-bg,#eff6ff);border-radius:4px;color:#3b82f6;color:var(--primary-color,#3b82f6);font-size:11px;font-weight:500;padding:2px 8px;white-space:nowrap}.location-type-badge.cloud{background:#e0f2fe;background:var(--info-bg,#e0f2fe);color:#0284c7;color:var(--info-color,#0284c7)}.location-type-badge.headquarters{background:#f0fdf4;background:var(--success-bg,#f0fdf4);color:#16a34a;color:var(--success-color,#16a34a)}.location-type-badge.branch{background:#f1f5f9;background:var(--secondary-bg,#f1f5f9);color:#64748b;color:var(--text-secondary,#64748b)}.location-address{align-items:flex-start;color:var(--text-secondary);display:flex;font-size:13px;gap:6px;line-height:1.5;margin-bottom:8px}.location-address svg{flex-shrink:0;margin-top:3px}.location-address a{color:var(--text-secondary);text-decoration:none}.location-address a:hover{color:#3b82f6;color:var(--primary-color,#3b82f6);text-decoration:underline}.location-phone,.location-tz{align-items:center;color:var(--text-secondary);display:flex;font-size:12px;gap:6px;margin-top:6px}.location-closed-date{color:#94a3b8;color:var(--text-muted,#94a3b8);font-size:12px;font-style:italic;margin-top:8px}.location-closed-date .closed-note{font-style:normal}.location-infra-preview{color:#64748b;color:var(--text-secondary,#64748b);display:flex;font-size:11px;gap:8px;margin-top:8px}.location-infra-preview span{background:#f1f5f9;background:var(--secondary-bg,#f1f5f9);border-radius:3px;padding:2px 6px}.facilities-overview{display:flex;flex-direction:column;gap:16px}.facility-location-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;padding:14px}.facility-location-header{align-items:center;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;margin-bottom:12px;padding-bottom:8px}.facility-location-name{color:var(--text-primary);font-weight:600}.facility-diagrams-row{display:flex;gap:16px;margin-bottom:12px;overflow-x:auto;overflow-y:visible;padding-bottom:8px;padding-top:16px}.facility-diagram-preview{flex:0 0 auto;max-width:300px;overflow:visible;width:300px}.diagram-label{color:var(--text-secondary);font-size:12px;font-weight:600;margin-bottom:6px}.diagram-thumbnail{border:1px solid var(--border-color);border-radius:6px;max-height:200px;max-width:100%;object-fit:contain}.diagram-crop-viewport img{height:auto!important;max-height:none!important;max-width:none!important;object-fit:fill!important}.diagram-with-markers{display:block;margin-top:-8px;overflow:visible;padding-top:20px;position:relative}.diagram-room-marker{color:#ef4444;color:var(--danger-color,#ef4444);cursor:pointer;filter:drop-shadow(0 1px 2px rgba(0,0,0,.3));position:absolute;transform:translate(-50%,-100%);z-index:10}.diagram-room-marker:hover{color:#3b82f6;color:var(--primary-color,#3b82f6);transform:translate(-50%,-100%) scale(1.2)}.diagram-room-marker.highlighted{color:#3b82f6;color:var(--primary-color,#3b82f6);transform:translate(-50%,-100%) scale(1.4);z-index:20}.diagram-room-marker .marker-tooltip{background:#3b82f6;background:var(--primary-color,#3b82f6);border-radius:4px;box-shadow:0 2px 4px #0003;color:#fff;font-size:11px;font-weight:600;left:50%;margin-top:2px;padding:3px 8px;pointer-events:none;position:absolute;top:100%;transform:translateX(-50%);white-space:nowrap}.facility-rooms{margin-top:8px}.rooms-label{color:var(--text-secondary);font-size:12px;font-weight:600;letter-spacing:.5px;margin-bottom:8px;text-transform:uppercase}.rooms-grid{display:flex;flex-wrap:wrap;gap:8px}.room-chip{align-items:center;background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border:1px solid var(--border-color);border-radius:16px;display:inline-flex;font-size:12px;gap:6px;padding:4px 10px}.room-chip .room-name{color:var(--text-primary);font-weight:500}.room-chip .room-type{background:#e9ecef;background:var(--bg-tertiary,#e9ecef);border-radius:8px;color:var(--text-secondary);font-size:10px;padding:1px 6px}.room-chip.more{background:#1976d21a;background:var(--primary-light,#1976d21a);color:var(--primary-color);font-weight:500}.room-chip.has-marker{cursor:pointer;transition:all .15s ease}.room-chip.has-marker:hover{background:#1976d226;background:var(--primary-light,#1976d226)}.room-chip.has-marker:hover,.room-chip.highlighted{border-color:#1976d2;border-color:var(--primary-color,#1976d2)}.room-chip.highlighted{background:#1976d2;background:var(--primary-color,#1976d2);color:#fff}.room-chip.highlighted .room-name{color:#fff}.room-chip.highlighted .room-type{background:#fff3;color:#fff}.room-chip .room-marker-icon{color:var(--primary-color);flex-shrink:0}.room-chip.highlighted .room-marker-icon{color:#fff}.facilities-empty{padding:16px;text-align:center}.location-picker-select{background:#fff;background:var(--card-bg,#fff);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);cursor:pointer;font-size:13px;min-width:180px;padding:6px 10px}.location-picker-select:focus,.location-picker-select:hover{border-color:var(--primary-color)}.location-picker-select:focus{box-shadow:0 0 0 2px #1976d21a;box-shadow:0 0 0 2px var(--primary-light,#1976d21a);outline:none}.vpn-config-section{margin-bottom:16px}.vpn-config-section h4{align-items:center;color:var(--text-primary);display:flex;font-size:14px;font-weight:600;gap:6px;margin:0 0 12px}.vpn-locations-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.vpn-location-card{background:#f9fafb;background:var(--bg-secondary,#f9fafb);border:1px solid var(--border-color);border-radius:8px;padding:12px}.vpn-location-header{align-items:center;border-bottom:1px solid var(--border-color);color:var(--text-secondary);display:flex;font-size:13px;font-weight:600;gap:6px;margin-bottom:10px;padding-bottom:8px}.vpn-details{margin-bottom:10px}.vpn-details:last-child{margin-bottom:0}.vpn-name{color:var(--text-primary);font-size:14px;font-weight:600;margin-bottom:6px}.vpn-info-grid{display:flex;flex-wrap:wrap;gap:8px 16px}.vpn-info-item{display:flex;font-size:13px;gap:4px}.vpn-label{color:var(--text-secondary)}.vpn-value{color:var(--text-primary);font-weight:500}.vpn-notes{color:var(--text-secondary);font-size:12px;font-style:italic;margin-top:8px}.endpoint-config-section{margin-bottom:16px}.endpoint-config-section h4{align-items:center;color:var(--text-primary);display:flex;font-size:14px;font-weight:600;gap:6px;margin:0 0 12px}.endpoint-summary-grid{background:#f9fafb;background:var(--bg-secondary,#f9fafb);border:1px solid var(--border-color);border-radius:8px;display:flex;flex-wrap:wrap;gap:8px 16px;padding:12px}.endpoint-info-item{display:flex;font-size:13px;gap:4px}.endpoint-label{color:var(--text-secondary)}.endpoint-value{color:var(--text-primary);font-weight:500}.endpoint-value a{color:#3b82f6;color:var(--primary-color,#3b82f6);text-decoration:none}.endpoint-value a:hover{text-decoration:underline}.endpoint-notes{color:var(--text-secondary);font-size:12px;font-style:italic;margin-top:8px}.wifi-networks-list{display:flex;flex-direction:column;gap:6px}.wifi-network-item{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.wifi-password{background:#f3f4f6;background:var(--bg-secondary,#f3f4f6);border-radius:4px;color:var(--text-secondary);font-family:monospace;font-size:12px;padding:2px 6px}.admin-accounts-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}.admin-account-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;padding:14px}.account-header{align-items:flex-start;border-bottom:1px solid var(--border-color);justify-content:space-between;margin-bottom:10px;padding-bottom:8px}.account-header .account-type{border-bottom:none;margin-bottom:0;padding-bottom:0}.account-actions{display:flex;gap:4px}.btn-delete-icon,.btn-edit-icon,.btn-facilities-icon,.btn-move-icon{align-items:center;background:#0000;border:none;border-radius:4px;color:var(--text-secondary);cursor:pointer;display:flex;justify-content:center;padding:2px}.btn-edit-icon:hover{background:#6366f11a;background:var(--primary-bg,#6366f11a);color:var(--primary-color)}.btn-facilities-icon:hover{background:#388e3c1a;background:var(--success-bg,#388e3c1a);color:#388e3c;color:var(--success-color,#388e3c)}.btn-delete-icon:hover{background:#dc26261a;background:var(--error-bg,#dc26261a);color:var(--error-color)}.btn-move-icon:hover{background:#0288d11a;color:#0288d1;color:var(--info-color,#0288d1)}.facilities-indicator{align-items:center;background:#e8f5e9;background:var(--success-bg,#e8f5e9);border-radius:4px;color:#388e3c;color:var(--success-color,#388e3c);display:inline-flex;font-size:11px;font-weight:500;gap:3px;padding:2px 6px}.account-type{border-bottom:1px solid var(--border-color);color:var(--text-primary);font-size:13px;font-weight:600;margin-bottom:10px;padding-bottom:8px}.admin-account-card div{color:var(--text-secondary);font-size:13px;margin-bottom:4px}.keeper-ref{color:var(--text-muted);font-size:11px;font-style:italic;margin-top:8px}.notes-list{display:flex;flex-direction:column;gap:8px}.note-item{background:var(--card-bg);border-radius:6px;color:var(--text-secondary);font-size:13px;padding:10px}.nuances-list{margin:0;padding-left:20px}.nuances-list li{line-height:1.5;margin-bottom:6px}.nuances-list li,.text-notes{color:var(--text-secondary);font-size:13px}.text-notes{background:var(--card-bg);border-radius:6px;line-height:1.6;padding:12px;white-space:pre-wrap}.infra-subsection{background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;margin-bottom:12px;padding:14px}.infra-subsection:last-child{margin-bottom:0}.infra-subsection h4{align-items:center;color:var(--text-primary);display:flex;font-size:13px;font-weight:600;gap:8px;margin:0 0 12px}.infra-subsection h4 svg{color:var(--primary-color)}.equipment-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.equipment-grid.commonTasks{gap:12px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.equipment-grid.commonTasks .equipment-card{background:#fff;background:var(--card-bg,#fff);padding:14px}.equipment-grid.commonTasks .equipment-name{border-bottom:1px solid var(--border-color);font-size:14px;font-weight:600;margin-bottom:8px;padding-bottom:8px}.equipment-details .label-hidden{color:var(--text-secondary);display:block;font-size:13px;line-height:1.5;margin-top:4px}.equipment-card{background:var(--secondary-bg);border:1px solid var(--border-color);border-radius:6px;padding:10px 12px}.equipment-grid.project .equipment-card.completed{border-left:3px solid var(--success-color)}.equipment-grid.project .equipment-card.in-progress{border-left:3px solid var(--primary-color)}.equipment-grid.project .equipment-card.planned{border-left:3px solid #6b7280;border-left:3px solid var(--text-muted,#6b7280)}.equipment-grid.project .equipment-card.cancelled{border-left:3px solid #ef4444;border-left:3px solid var(--danger-color,#ef4444)}.equipment-grid.project .equipment-card.on-hold{border-left:3px solid #f59e0b;border-left:3px solid var(--warning-color,#f59e0b)}.cc-card-wrapper{position:relative}.cc-card-wrapper .equipment-grid{display:contents}.cc-card-wrapper.cc-hidden .equipment-card{opacity:.4}.cc-visibility-toggle{align-items:center;background:#ffffffe6;border:none;border-radius:4px;color:#666;cursor:pointer;display:flex;height:28px;justify-content:center;position:absolute;right:6px;top:6px;transition:background .15s,color .15s;width:28px;z-index:2}.cc-visibility-toggle:hover{background:#e5e7eb;color:#333}.cc-card-wrapper.cc-hidden .cc-visibility-toggle{color:#999}.ticket-badge{align-items:center;background:#dbeafe;background:var(--primary-bg,#dbeafe);border-radius:4px;color:#2563eb;color:var(--primary-color,#2563eb);cursor:pointer;display:inline-flex;font-size:11px;font-weight:600;gap:4px;padding:2px 8px;text-decoration:none;transition:background .15s}.ticket-badge:hover{background:#bfdbfe;background:var(--primary-hover-bg,#bfdbfe);text-decoration:none}.status-badge.completed{background:#d1fae5;background:var(--success-bg,#d1fae5);color:#059669;color:var(--success-color,#059669)}.status-badge.in-progress{background:#dbeafe;background:var(--primary-bg,#dbeafe);color:#2563eb;color:var(--primary-color,#2563eb)}.status-badge.draft,.status-badge.pending-approval,.status-badge.planned,.status-badge.scheduled{background:#e5e7eb;background:var(--secondary-bg,#e5e7eb);color:#6b7280;color:var(--text-secondary,#6b7280)}.status-badge.cancelled,.status-badge.failed{background:#fee2e2;background:var(--danger-bg,#fee2e2);color:#dc2626;color:var(--danger-color,#dc2626)}.status-badge.on-hold{background:#fef3c7;background:var(--warning-bg,#fef3c7);color:#b45309;color:var(--warning-dark,#b45309)}.equipment-card.decommissioned,.equipment-card.offline{border-style:dashed;opacity:.6}.equipment-name{color:var(--text-primary);font-size:13px;font-weight:500;margin-bottom:6px}.equipment-details{color:var(--text-secondary);display:flex;flex-wrap:wrap;font-size:12px;gap:8px}.segment-item{background:var(--secondary-bg);border-radius:6px;margin-bottom:8px;padding:10px}.data-missing{padding:12px 0}.data-missing,.empty-state-small{color:var(--text-muted);font-size:13px;font-style:italic}.empty-state-small{background:#f9fafb;background:var(--gray-50,#f9fafb);border-radius:6px;margin-top:8px;padding:12px 16px;text-align:center}.data-table{border-collapse:collapse;table-layout:fixed;width:100%}.data-table td,.data-table th{border-bottom:1px solid var(--border-color);overflow:hidden;padding:8px 12px;text-align:left;text-overflow:ellipsis;vertical-align:top}.data-table th{background:var(--secondary-bg);color:var(--text-secondary);font-size:12px;font-weight:600;position:relative;white-space:nowrap;z-index:1}.data-table td:first-child{overflow:visible}.data-table tbody tr:hover{position:relative;z-index:2}.server-table td:first-child,.server-table th:first-child{min-width:120px;width:18%}.server-table td:nth-child(2),.server-table th:nth-child(2){min-width:100px;width:14%}.server-table td:nth-child(3),.server-table th:nth-child(3){width:18%}.server-table td:nth-child(4),.server-table th:nth-child(4){width:30%}.server-table td:nth-child(5),.server-table th:nth-child(5){min-width:70px;width:10%}.server-table .server-name{font-weight:500;word-break:break-word}.server-table .teamviewer-id{color:var(--text-muted);display:block;font-size:10px;margin-top:2px}.server-table .server-ips{font-family:monospace;font-size:12px;word-break:break-all}.server-table .external-ip{color:var(--text-muted);display:block;font-size:11px}.server-table .server-virt{white-space:nowrap}.server-table .virt-label{border-radius:4px;display:inline-block;font-size:11px;font-weight:600;padding:2px 8px;text-transform:uppercase}.server-table .virt-label.host{background:#dbeafe;background:var(--info-bg,#dbeafe);color:var(--primary-color)}.server-table .virt-label.vm{background:#d1fae5;background:var(--success-bg,#d1fae5);color:var(--success-color)}.server-table .virt-label.physical{background:var(--secondary-bg);color:var(--text-secondary)}.status-badge{display:inline-block;font-size:11px;font-weight:600;letter-spacing:.03em;padding:2px 8px;text-transform:uppercase}.status-badge.active,.status-badge.online{background:#d1fae5;background:var(--success-bg,#d1fae5);color:#059669;color:var(--success-color,#059669)}.status-badge.inactive,.status-badge.offline{background:#fee2e2;background:var(--danger-bg,#fee2e2);color:#dc2626;color:var(--danger-color,#dc2626)}.status-badge.in-repair,.status-badge.maintenance{background:#fef3c7;background:var(--warning-bg,#fef3c7);color:#b45309;color:var(--warning-dark,#b45309)}.status-badge.decommissioned,.status-badge.retired{background:#e5e7eb;background:var(--secondary-bg,#e5e7eb);color:#6b7280;color:var(--text-secondary,#6b7280)}.status-badge.missing{background:#f3e5f5;background:var(--purple-bg,#f3e5f5);color:#7b1fa2;color:var(--purple-color,#7b1fa2)}.status-badge.unknown{background:#e5e7eb;background:var(--secondary-bg,#e5e7eb);color:#9ca3af;color:var(--text-muted,#9ca3af)}.server-table .status-note{color:var(--text-muted);display:block;font-size:11px;margin-top:2px}.reference-badge{background:#eff6ff;border:1px solid #bfdbfe;border-radius:10px;color:#1e40af;display:inline-block;font-size:12px;margin-right:4px;padding:1px 8px}.reference-list .reference-badge{margin-bottom:2px}.reference-field-input{align-items:center}.reference-chips,.reference-field-input{display:flex;flex-wrap:wrap;gap:4px}.reference-chip{align-items:center;background:#eff6ff;border:1px solid #bfdbfe;border-radius:12px;color:#1e40af;display:inline-flex;font-size:13px;gap:4px;padding:2px 8px}.reference-chip .chip-remove{background:none;border:none;color:#6b7280;cursor:pointer;line-height:1;padding:0}.reference-chip .chip-remove:hover{color:#ef4444}.secrets-summary{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:20px}.secrets-summary .summary-stat{background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;min-width:80px;padding:12px 16px;text-align:center}.secrets-summary .summary-stat .stat-value{color:var(--text-primary);display:block;font-size:24px;font-weight:600}.secrets-summary .summary-stat .stat-label{color:var(--text-secondary);font-size:11px;letter-spacing:.5px;text-transform:uppercase}.secrets-summary .summary-stat.pending .stat-value{color:var(--warning-color)}.secrets-summary .summary-stat.migrated .stat-value{color:var(--primary-color)}.secrets-summary .summary-stat.verified .stat-value{color:var(--success-color)}.audit-review-section{border-top:1px solid var(--border-color);margin-top:24px;padding-top:24px}.audit-review-section .review-history{background:var(--hover-bg);border-radius:8px;margin-bottom:20px;padding:16px}.audit-review-section .review-notes{border-top:1px solid var(--border-color);margin-top:12px;padding-top:12px}.audit-review-section .review-notes strong{color:var(--text-secondary);display:block;font-size:12px;letter-spacing:.5px;margin-bottom:6px;text-transform:uppercase}.audit-review-section .review-notes p{color:var(--text-color);margin:0;white-space:pre-wrap}.audit-review-section .review-form{margin-top:16px}.audit-review-section .review-form .form-group{margin-bottom:12px}.audit-review-section .review-form textarea{min-height:80px;resize:vertical}.audit-review-section .review-form .btn{align-items:center;display:inline-flex;gap:6px}.audit-review-section .spinning{animation:spin 1s linear infinite}.change-history-list{display:flex;flex-direction:column;gap:8px}.change-history-entry{background:var(--card-bg);border-left:1px solid var(--border-color);border:1px solid var(--border-color);border-left-width:3px;border-radius:8px;font-size:.83rem;padding:10px 14px}.change-history-entry.action-create{border-left-color:#10b981;border-left-color:var(--success-color,#10b981)}.change-history-entry.action-update{border-left-color:#3b82f6;border-left-color:var(--primary-color,#3b82f6)}.change-history-entry.action-delete{border-left-color:#ef4444;border-left-color:var(--danger-color,#ef4444)}.change-history-entry.action-restore{border-left-color:#f59e0b;border-left-color:var(--warning-color,#f59e0b)}.change-history-entry:hover{background:var(--hover-bg)}.change-history-header{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.change-action-badge{border-radius:3px;display:inline-block;font-size:.7rem;font-weight:600;letter-spacing:.3px;padding:1px 6px;text-transform:uppercase}.change-action-badge.create{background:#28a74526;color:#28a745}.change-action-badge.update{background:#007bff26;color:#007bff}.change-action-badge.delete{background:#dc354526;color:#dc3545}.change-action-badge.verify{background:#6c757d26;color:#6c757d}.change-entity-type{color:var(--text-secondary);font-size:.78rem;text-transform:capitalize}.change-title{color:var(--text-primary);font-size:.82rem;font-weight:500}.change-timestamp{align-items:center;color:var(--text-muted);display:flex;font-size:.75rem;gap:4px;margin-left:auto}.change-history-detail{align-items:baseline;display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}.change-actor{color:var(--text-primary);font-size:.82rem;font-weight:500}.change-reason{color:var(--text-secondary);font-size:.8rem}.change-delta{border-top:1px solid var(--border-color);display:flex;flex-direction:column;gap:3px;margin-top:6px;padding-top:6px}.delta-item{align-items:center;color:var(--text-secondary);display:flex;font-size:.78rem;gap:6px}.delta-field{color:var(--text-primary);font-weight:500;min-width:80px}.delta-old{color:#dc3545;text-decoration:line-through}.delta-new,.delta-old{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.delta-new{color:#28a745}.delta-more{color:var(--text-muted);font-size:.75rem;font-style:italic}.procedures-header{align-items:center;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:16px}.procedures-header-actions{align-items:center;display:flex;gap:12px}.add-procedure-btn{align-items:center;background:#10b981;background:var(--success-color,#10b981);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;flex-shrink:0;height:36px;justify-content:center;padding:0;transition:all .15s;width:36px}.add-procedure-btn:hover{background:var(--success-color);transform:scale(1.05)}.add-procedure-btn svg{stroke-width:2.5}.tab-procedures .procedures-summary{align-items:center;color:var(--text-secondary);display:flex;font-size:14px;gap:8px}.tab-procedures .procedures-summary svg{color:var(--primary-color)}.view-mode-toggle{background:var(--secondary-bg);padding:4px}.view-mode-toggle .btn-icon{color:var(--text-secondary);height:32px;transition:all .15s;width:36px}.view-mode-toggle .btn-icon:hover{background:var(--hover-bg);color:var(--text-primary)}.view-mode-toggle .btn-icon.active{background:var(--card-bg);box-shadow:0 1px 2px #0000001a;color:var(--primary-color)}.procedures-card-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.procedure-card-full{background:var(--card-bg);border:1px solid var(--border-color);border-radius:10px;display:flex;flex-direction:column;padding:16px;transition:border-color .15s,box-shadow .15s}.procedure-card-full:hover{border-color:var(--primary-color);box-shadow:0 2px 8px #00000014}.procedure-card-full.deprecated,.procedure-card-full.outdated{border-style:dashed;opacity:.7}.procedure-card-header{align-items:center;display:flex;gap:8px;margin-bottom:12px}.procedure-icon{color:var(--primary-color);flex-shrink:0}.procedure-badges{display:flex;flex:1 1;flex-wrap:wrap;gap:6px}.procedure-card-title{color:var(--text-primary);font-size:15px;font-weight:600;line-height:1.4;margin:0 0 8px}.procedure-card-summary{color:var(--text-secondary);flex:1 1;font-size:13px;line-height:1.5;margin:0 0 12px}.procedure-card-meta{border-top:1px solid var(--border-color);display:flex;flex-wrap:wrap;gap:16px;padding-top:12px}.procedure-card-meta .meta-item{align-items:center;color:var(--text-muted);display:flex;font-size:12px;gap:6px}.procedure-card-meta .meta-item svg{color:var(--text-muted)}.badge-category{background:var(--info-bg);color:var(--primary-color);font-weight:500;text-transform:capitalize}.badge-category,.badge-status{border-radius:4px;font-size:10px;padding:3px 8px}.badge-status{font-weight:600;text-transform:uppercase}.badge-status.active{background:var(--success-bg);color:var(--success-color)}.badge-status.draft{background:var(--warning-bg);color:var(--warning-color)}.badge-status.deprecated,.badge-status.outdated{background:var(--danger-bg);color:var(--danger-color)}.badge-status.inactive{background:#6b7280;background:var(--muted-bg,#6b7280);color:#fff;opacity:.8}.badge-location{align-items:center;background:#f3e8ff;background:var(--purple-bg,#f3e8ff);border-radius:4px;color:#7c3aed;color:var(--purple-color,#7c3aed);display:inline-flex;font-size:10px;font-weight:500;gap:4px;padding:3px 8px}.badge-location svg{flex-shrink:0}.location-filter-indicator{align-items:center;color:var(--text-secondary);display:inline-flex;font-size:12px;gap:6px;margin-left:8px}.location-filter-indicator .green-dot{background:var(--success-color);border-radius:50%;flex-shrink:0;height:8px;width:8px}.location-filter-indicator .filter-text{color:var(--text-secondary);opacity:.8}.procedures-table-container{overflow-x:auto}.procedures-table{width:100%}.procedures-table .procedure-title-cell{align-items:center;display:flex;gap:8px}.procedures-table .procedure-title-cell svg{color:var(--primary-color);flex-shrink:0}.procedures-table tr.deprecated,.procedures-table tr.outdated{opacity:.6}.vendors-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.vendor-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;padding:14px}.vendor-card.legacy{border-style:dashed;opacity:.7}.vendor-header{align-items:center;display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}.vendor-name{color:var(--text-primary);font-size:14px;font-weight:600}.vendor-category{background:var(--secondary-bg);color:var(--text-secondary);font-size:11px}.legacy-badge,.vendor-category{border-radius:4px;padding:2px 6px}.legacy-badge{background:var(--warning-bg);color:var(--warning-color);font-size:10px;font-weight:600;text-transform:uppercase}.vendor-url{align-items:center;color:var(--primary-color);display:flex;font-size:13px;gap:6px;margin-bottom:8px;text-decoration:none;word-break:break-all}.vendor-url:hover{text-decoration:underline}.vendor-creds{color:var(--text-secondary);font-size:13px;margin-bottom:6px}.sso-badge{background:var(--success-bg);border-radius:4px;color:var(--success-color);display:inline-block;font-size:10px;font-weight:600;margin-bottom:8px;padding:2px 6px}.vendor-contact{color:var(--text-secondary);font-size:12px;margin-bottom:6px}.vendor-notes{border-top:1px solid var(--border-color);color:var(--text-muted);font-size:12px;font-style:italic;margin-top:8px;padding-top:8px}.service-accounts-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.service-account-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;padding:12px}.account-email{color:var(--text-primary);font-size:13px;font-weight:500;margin-bottom:4px;word-break:break-all}.account-purpose{color:var(--text-secondary);font-size:12px}.account-creds{color:var(--text-muted);font-size:11px;margin-top:4px}.projects-list{display:flex;flex-direction:column;gap:12px}.project-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;padding:14px}.project-card.completed{border-left:3px solid var(--success-color)}.project-card.in-progress{border-left:3px solid var(--primary-color)}.project-header{align-items:center;display:flex;gap:10px;margin-bottom:8px}.project-name{color:var(--text-primary);font-size:14px;font-weight:600}.project-status{border-radius:4px;font-size:10px;font-weight:600;padding:2px 6px;text-transform:uppercase}.project-status.completed{background:var(--success-bg);color:var(--success-color)}.project-status.in-progress{background:var(--info-bg);color:var(--primary-color)}.project-card.planned{border-left:3px solid #6b7280;border-left:3px solid var(--text-muted,#6b7280)}.project-status.planned{background:#f3f4f6;background:var(--hover-bg,#f3f4f6);color:#4b5563;color:var(--text-secondary,#4b5563)}.project-card.cancelled{border-left:3px solid #ef4444;border-left:3px solid var(--danger-color,#ef4444)}.project-status.cancelled{background:#fef2f2;background:var(--danger-bg,#fef2f2);color:#ef4444;color:var(--danger-color,#ef4444)}.project-card.on-hold{border-left:3px solid #f59e0b;border-left:3px solid var(--warning-color,#f59e0b)}.project-status.on-hold{background:#fffbeb;background:var(--warning-bg,#fffbeb);color:#f59e0b;color:var(--warning-color,#f59e0b)}.project-date{color:var(--text-muted);font-size:12px;margin-left:auto}.project-notes,.project-summary{color:var(--text-secondary);font-size:13px;line-height:1.5;margin:0}.environments-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}.environment-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;padding:14px}.env-name{color:var(--text-primary);font-size:14px;font-weight:600;margin-bottom:6px}.env-description{color:var(--text-secondary);font-size:13px;margin-bottom:8px}.env-servers,.env-subnets{color:var(--text-muted);font-size:12px}.infodocs-tabs-container{-ms-overflow-style:none;background:var(--card-bg);border-bottom:1px solid var(--border-color);overflow-x:auto;padding:0 20px;scrollbar-width:none}.infodocs-tabs-container::-webkit-scrollbar{display:none}.infodocs-tabs-container .infodocs-tabs{background:none;border-bottom:none;flex-wrap:nowrap;min-width:0;padding:8px 0;white-space:nowrap}.toolbar-icon-btn{align-items:center;background:#f5f5f5;background:var(--bg-secondary,#f5f5f5);border:1px solid var(--border-color);border-radius:4px;color:var(--text-secondary);cursor:pointer;display:flex;height:28px;justify-content:center;transition:all .15s ease;width:28px}.toolbar-icon-btn:hover{background:var(--hover-bg)}.toolbar-icon-btn.has-value,.toolbar-icon-btn:hover{border-color:var(--primary-color);color:var(--primary-color)}.toolbar-icon-btn.has-value{background:#e3f2fd;background:var(--primary-bg,#e3f2fd)}.toolbar-visibility-toggle.showing-all{background:#dbeafe;background:var(--info-bg,#dbeafe);border-color:var(--primary-color);color:var(--primary-color)}.toolbar-search{align-items:center;display:flex;gap:0;transition:all .2s ease}.toolbar-search.expanded{align-items:center;background:#fff;border:1px solid var(--border-color);border-radius:4px;display:flex;height:28px;padding:0 6px 0 0}.toolbar-search.expanded:focus-within{border-color:var(--primary-color)}.toolbar-search.expanded .toolbar-icon-btn{background:#0000;border:none;border-radius:4px 0 0 4px;flex-shrink:0;height:26px;width:26px}.search-input-wrapper{background:#0000;gap:4px;height:28px;justify-content:center}.toolbar-search .search-input-wrapper input{background:#0000;border:none;box-sizing:border-box;color:var(--text-primary);font-size:13px;height:26px;line-height:26px;margin:0;outline:none;padding:0;vertical-align:middle;width:140px}.toolbar-search .search-input-wrapper input::placeholder{color:var(--text-muted)}.toolbar-search .search-clear{align-items:center;background:none;border:none;color:var(--text-muted);cursor:pointer;display:flex;padding:2px}.toolbar-search .search-clear:hover{color:var(--text-secondary)}.toolbar-location-filter{align-items:center;background:#f5f5f5;background:var(--bg-secondary,#f5f5f5);border:1px solid var(--border-color);border-radius:6px;color:var(--text-muted);display:flex;gap:4px;padding:4px 8px;transition:all .15s ease}.toolbar-location-filter.filter-active{background:#2563eb14;border-color:#2563eb66;color:#2563eb}.toolbar-location-filter.filter-active select{color:#2563eb;font-weight:500}.toolbar-location-filter select{background:#0000;border:none;color:var(--text-primary);cursor:pointer;font-size:13px;max-width:120px;padding:2px 4px;text-overflow:ellipsis}.toolbar-location-filter select:focus{outline:none}.toolbar-location-filter select optgroup{color:var(--text-muted);font-size:11px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.toolbar-location-filter select option{color:var(--text-primary);font-size:13px;font-weight:400}.toolbar-filter-settings{background:#0000;border:none;border-radius:4px;color:var(--text-muted);cursor:pointer;margin-left:4px;padding:2px 4px;transition:all .15s ease}.toolbar-filter-settings:hover{background:#fff;background:var(--bg-primary,#fff);color:#0d6efd;color:var(--color-primary,#0d6efd)}.toolbar-schema-config{background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border:1px solid #dee2e6;border:1px solid var(--border-color,#dee2e6);border-radius:6px;color:#6c757d;color:var(--text-muted,#6c757d);cursor:pointer;margin-left:8px;padding:6px 8px;transition:all .15s ease}.toolbar-schema-config:hover{background:#fff;background:var(--bg-primary,#fff);border-color:#0d6efd;border-color:var(--color-primary,#0d6efd);color:#0d6efd;color:var(--color-primary,#0d6efd)}.toolbar-preferences-wrapper{position:relative}.toolbar-user-preferences{background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border:1px solid #dee2e6;border:1px solid var(--border-color,#dee2e6);border-radius:6px;color:#6c757d;color:var(--text-muted,#6c757d);cursor:pointer;margin-left:8px;padding:6px 8px;transition:all .15s ease}.toolbar-user-preferences:hover{background:#fff;background:var(--bg-primary,#fff);border-color:#adb5bd;border-color:var(--border-hover,#adb5bd);color:#0d6efd;color:var(--color-primary,#0d6efd)}.toolbar-user-preferences.active{background:#f0f7ff;border-color:#0d6efd;border-color:var(--color-primary,#0d6efd);color:#0d6efd;color:var(--color-primary,#0d6efd)}.preferences-overlay{bottom:0;left:0;position:fixed;right:0;top:0;z-index:999}@media (max-width:900px){.header-actions,.infodocs-client-header{flex-wrap:wrap}.toolbar-search .search-input-wrapper input{width:120px}}.client-search-box{align-items:center;background:var(--secondary-bg);border:1px solid var(--border-color);border-radius:6px;display:flex;gap:8px;min-width:240px;padding:6px 12px}.client-search-box svg{color:var(--text-muted);flex-shrink:0}.client-search-box input{background:none;border:none;color:var(--text-primary);flex:1 1;font-size:13px;min-width:160px;outline:none}.client-search-box input::placeholder{color:var(--text-muted)}.client-search-box .search-clear{align-items:center;background:none;border:none;color:var(--text-muted);cursor:pointer;display:flex;padding:2px}.client-search-box .search-clear:hover{color:var(--text-secondary)}.search-highlight{background:var(--warning-bg);border-radius:2px;color:var(--text-primary);padding:0 2px}.search-count{color:var(--text-muted);font-size:12px;font-weight:400;margin-left:8px}.search-no-results{align-items:center;color:var(--text-muted);display:flex;flex-direction:column;justify-content:center;padding:48px 20px;text-align:center}.search-no-results svg{margin-bottom:12px;opacity:.5}.search-no-results p{font-size:14px;margin:0}.laptops-table{margin-top:12px}.laptops-table .laptop-user{font-weight:500}.laptops-table .laptop-serial{font-family:monospace;font-size:12px}.bitlocker-key{align-items:center;background:var(--bg-secondary);border-radius:3px;display:inline-flex;font-family:monospace;font-size:11px;gap:4px;margin-right:8px;padding:2px 6px}.jobdiva-section{display:flex;flex-direction:column;gap:24px}.jobdiva-section .subsection{background:var(--bg-secondary);border-radius:6px;padding:12px}.jobdiva-section .subsection h4{color:var(--text-secondary);font-size:14px;font-weight:600;margin:0 0 12px}.offline-machines{display:flex;flex-wrap:wrap;gap:8px}.offline-machine-badge{background:var(--error-bg);border-radius:4px;color:var(--error-text);display:inline-block;font-family:monospace;padding:4px 10px}.jobdiva-notes{margin:0;padding-left:20px}.jobdiva-notes li{color:var(--text-secondary);font-size:13px;margin-bottom:4px}.procedure-card-full{transition:all .2s ease}.procedure-card-full.expanded{grid-column:1/-1}.procedure-card-clickable{cursor:pointer}.expand-icon{color:var(--text-muted);margin-left:auto}.procedure-sections{margin-top:8px}.procedure-section{border-bottom:1px solid var(--border-light);margin-bottom:24px;padding-bottom:16px}.procedure-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.section-title{border-bottom:2px solid #e3f2fd;border-bottom:2px solid var(--primary-light,#e3f2fd);color:var(--primary-color);font-size:15px;font-weight:600;margin:0 0 12px;padding-bottom:8px}.procedure-steps{border-top:1px solid var(--border-light);margin-top:16px;padding-top:16px}.procedure-steps h5{color:var(--text-secondary);font-size:14px;font-weight:600;margin:0 0 12px}.steps-list{margin:0;padding-left:24px}.step-item{border-bottom:1px solid var(--border-light);margin-bottom:12px;padding-bottom:12px}.step-item:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.step-title{color:var(--text-primary);font-weight:500}.step-description{color:var(--text-secondary);font-size:13px;margin:4px 0 0}.procedure-feedback{border-top:1px solid #eee;border-top:1px solid var(--border-light,#eee);margin-top:16px;padding-top:12px}.feedback-actions{align-items:center;display:flex;gap:8px}.feedback-label{color:var(--text-secondary);font-size:12px;margin-right:4px}.feedback-btn{align-items:center;background:#0000;border:1px solid #ddd;border:1px solid var(--border-color,#ddd);border-radius:6px;color:var(--text-secondary);cursor:pointer;display:flex;height:30px;justify-content:center;transition:all .2s;width:30px}.feedback-btn:hover{border-color:var(--primary-color);color:var(--primary-color)}.feedback-btn.active.helpful{background:#28a7451a;border-color:#28a745;color:#28a745}.feedback-btn.active.not-helpful{background:#dc35451a;border-color:#dc3545;color:#dc3545}.feedback-btn.comment-btn.active{border-color:var(--primary-color);color:var(--primary-color)}.feedback-stats{color:var(--text-secondary);font-size:12px;margin-left:4px}.feedback-comment-form{align-items:center;display:flex;gap:8px;margin-top:8px}.feedback-comment-input{border:1px solid var(--border-color);border-radius:6px;flex:1 1;font-size:13px;outline:none;padding:6px 10px}.feedback-comment-input:focus{border-color:var(--primary-color)}.step-image-container{background:#f5f5f5;background:var(--bg-secondary,#f5f5f5);border-radius:6px;display:inline-block;margin-top:12px;padding:8px}.step-image{border-radius:4px;box-shadow:0 2px 8px #0000001a;cursor:pointer;max-height:400px;max-width:100%;transition:transform .2s}.step-image:hover{transform:scale(1.02)}.substeps-list{color:var(--text-secondary);font-size:13px;margin:8px 0 0;padding-left:20px}.substeps-list li{margin-bottom:4px}.step-image{background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border:1px solid var(--border-light);border-radius:8px;margin-top:12px;max-width:600px;overflow:hidden}.step-image a{display:block}.step-image img{cursor:zoom-in;display:block;height:auto;width:100%}.step-image img:hover{opacity:.95}.step-image-caption{background:#fff;background:var(--bg-primary,#fff);border-top:1px solid var(--border-light);color:var(--text-secondary);font-size:12px;font-style:italic;margin:0;padding:8px 12px}.step-image-clickable{cursor:zoom-in;position:relative}.step-image-zoom-hint{background:#0009;border-radius:4px;color:#fff;opacity:0;padding:4px 6px;pointer-events:none;position:absolute;right:12px;top:12px;transition:opacity .2s}.step-image-clickable:hover .step-image-zoom-hint{opacity:1}.image-lightbox-overlay{background:#000000e6;cursor:zoom-out;flex-direction:column;inset:0;position:fixed;z-index:10000}.image-lightbox-overlay,.lightbox-close-btn{align-items:center;display:flex;justify-content:center}.lightbox-close-btn{background:#ffffff26;border:none;border-radius:50%;color:#fff;cursor:pointer;height:40px;position:absolute;right:16px;top:16px;transition:background .2s;width:40px;z-index:10001}.lightbox-close-btn:hover{background:#ffffff4d}.lightbox-image{border-radius:4px;cursor:default;max-height:85vh;max-width:90vw;object-fit:contain}.lightbox-caption{color:#ffffffb3;font-size:13px;margin-top:12px;text-align:center}.procedure-images{border-top:1px solid var(--border-light);margin-top:16px;padding-top:16px}.procedure-images h5{align-items:center;color:var(--text-secondary);display:flex;font-size:14px;font-weight:600;gap:6px;margin:0 0 12px}.images-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.procedure-image-item{background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border:1px solid var(--border-light);border-radius:8px;overflow:hidden}.procedure-image-item a{display:block}.procedure-image-item img{display:block;height:auto;transition:opacity .2s;width:100%}.procedure-image-item img:hover{opacity:.9}.procedure-image-item .image-placeholder{align-items:center;color:#999;color:var(--text-muted,#999);display:flex;flex-direction:column;gap:8px;justify-content:center;padding:24px}.procedure-image-item .image-caption{background:#fff;background:var(--bg-primary,#fff);border-top:1px solid var(--border-light);color:var(--text-secondary);font-size:12px;margin:0;padding:8px 12px}.procedure-expanded{border-top:1px solid var(--border-light);padding:16px}.edit-procedure-btn{align-items:center;background:#0000;border:none;border-radius:4px;color:#999;color:var(--text-muted,#999);cursor:pointer;display:flex;flex-shrink:0;height:28px;justify-content:center;padding:0;transition:all .15s;width:28px}.edit-procedure-btn:hover{background:#e3f2fd;background:var(--primary-light,#e3f2fd);color:#1976d2;color:var(--primary-color,#1976d2)}.delete-procedure-btn{align-items:center;background:#0000;border:none;border-radius:4px;color:#999;color:var(--text-muted,#999);cursor:pointer;display:flex;flex-shrink:0;height:28px;justify-content:center;padding:0;transition:all .15s;width:28px}.delete-procedure-btn:hover{background:var(--danger-bg);color:#dc3545;color:var(--error-color,#dc3545)}.delete-procedure-btn:disabled{cursor:not-allowed;opacity:.5}.version-history-btn{align-items:center;background:#0000;border:none;border-radius:4px;color:#999;color:var(--text-muted,#999);cursor:pointer;display:flex;flex-shrink:0;height:28px;justify-content:center;padding:0;transition:all .15s;width:28px}.version-history-btn.active,.version-history-btn:hover{background:#e3f2fd;background:var(--primary-light,#e3f2fd);color:#1976d2;color:var(--primary-color,#1976d2)}.version-history-modal{max-height:80vh;max-width:850px;width:95%}.version-history-modal .modal-body{max-height:calc(80vh - 60px);overflow-y:auto;padding:16px 20px}.version-list{display:flex;flex-direction:column;gap:8px}.version-entry{background:#fff;background:var(--card-bg,#fff);border-left:3px solid #1976d2;border:1px solid var(--border-color);border-left:3px solid var(--primary-color,#1976d2);border-radius:8px;font-size:.83rem;gap:12px;justify-content:space-between;padding:10px 14px}.version-entry,.version-info{align-items:center;display:flex}.version-info{flex-wrap:wrap;gap:10px}.version-number{color:#1976d2;color:var(--primary-color,#1976d2);font-size:.85rem;font-weight:700;min-width:28px}.version-date{align-items:center;color:var(--text-secondary);display:flex;font-size:.78rem;gap:4px}.version-author{color:var(--text-primary);font-size:.82rem;font-weight:500}.version-reason{color:var(--text-muted);flex:1 1;font-size:.76rem;font-style:italic;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.version-restore-btn{flex-shrink:0;white-space:nowrap}.version-pagination{align-items:center;color:var(--text-secondary);display:flex;font-size:.82rem;gap:12px;justify-content:center;padding:10px 0 4px}.version-pagination button{font-size:.8rem;padding:4px 12px}.copy-procedure-btn{align-items:center;background:#0000;border:none;border-radius:4px;color:#999;color:var(--text-muted,#999);cursor:pointer;display:flex;flex-shrink:0;height:28px;justify-content:center;padding:0;transition:all .15s;width:28px}.copy-procedure-btn:hover{background:#e3f2fd;background:var(--primary-light,#e3f2fd);color:#1976d2;color:var(--primary-color,#1976d2)}.copy-procedure-btn.copied{background:#d4edda;background:var(--success-bg,#d4edda);color:#28a745;color:var(--success-color,#28a745)}.procedure-actions-cell{align-items:center;display:flex;gap:4px}.procedure-actions-cell .btn-icon{height:24px;width:24px}.procedures-table .actions-column{text-align:center;width:100px}.procedure-editor-overlay{align-items:center;background:#0009;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:9999}.procedure-editor-modal{background:#fff;background:var(--card-bg,#fff);border-radius:12px;box-shadow:0 20px 60px #0000004d;display:flex;flex-direction:column;max-height:90vh;max-width:800px;overflow:hidden;width:100%}.editor-header{background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border-bottom:1px solid var(--border-light)}.editor-header h3{align-items:center;display:flex;font-size:16px;font-weight:600;gap:8px;margin:0}.editor-close{align-items:center;background:#0000;border:none;border-radius:6px;color:var(--text-secondary);cursor:pointer;display:flex;height:32px;justify-content:center;padding:0;transition:all .2s;width:32px}.editor-close:hover{background:#fee;background:var(--danger-bg,#fee);color:#dc3545;color:var(--danger-color,#dc3545)}.editor-content{flex:1 1;overflow-y:auto;padding:20px}.editor-field{margin-bottom:16px}.editor-field label{color:var(--text-secondary);display:block;font-size:12px;font-weight:600;letter-spacing:.5px;margin-bottom:6px;text-transform:uppercase}.editor-field input{background:#fff;background:var(--input-bg,#fff);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);font-size:14px;padding:10px 12px;width:100%}.editor-field input:focus,.editor-field select:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px #1976d21a;box-shadow:0 0 0 3px var(--primary-light,#1976d21a);outline:none}.editor-field select{background:#fff;background:var(--input-bg,#fff);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);cursor:pointer;font-size:14px;padding:10px 12px;width:100%}.editor-field-row{display:flex;gap:16px;margin-bottom:16px}.editor-field-row .editor-field{flex:1 1;margin-bottom:0}.status-select.status-inactive{background-color:#fff3cd;background-color:var(--warning-bg,#fff3cd);border-color:#ffc107;border-color:var(--warning-color,#ffc107);color:#856404;color:var(--warning-text,#856404)}.field-label-row{align-items:center;display:flex;justify-content:space-between;margin-bottom:6px}.field-label-row label{margin-bottom:0}.btn-ai-generate{align-items:center;background:linear-gradient(135deg,#1976d2,#1565c0);background:linear-gradient(135deg,var(--primary-color,#1976d2),var(--primary-dark,#1565c0));border:none;border-radius:4px;color:#fff;cursor:pointer;display:inline-flex;font-size:12px;font-weight:500;gap:6px;padding:4px 10px;transition:all .2s}.btn-ai-generate:hover:not(:disabled){box-shadow:0 2px 6px #1976d24d;transform:translateY(-1px)}.btn-ai-generate:disabled{cursor:not-allowed;opacity:.5;transform:none}.btn-ai-generate svg{stroke:#fff}.summary-textarea{background:#fff;background:var(--input-bg,#fff);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);font-family:inherit;font-size:14px;min-height:70px;padding:10px 12px;resize:vertical;width:100%}.summary-textarea:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px #1976d21a;box-shadow:0 0 0 3px var(--primary-light,#1976d21a);outline:none}.editor-info{background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border-radius:6px;color:var(--text-secondary);display:flex;font-size:12px;gap:20px;margin-bottom:20px;padding:10px 12px}.editor-sections{display:flex;flex-direction:column;gap:16px}.section-editor-item{background:#fafafa;background:var(--bg-secondary,#fafafa);border:1px solid var(--border-color);border-radius:8px;overflow:hidden}.section-editor-header{align-items:center;background:#e3f2fd;background:var(--primary-light,#e3f2fd);border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;padding:12px 16px}.section-title-input{background:#fff;border:1px solid var(--border-color);border-radius:4px;flex:1 1;font-size:14px;font-weight:600;margin-right:12px;padding:8px 12px}.section-title-input:focus{border-color:var(--primary-color);box-shadow:0 0 0 2px #1976d21a;box-shadow:0 0 0 2px var(--primary-light,#1976d21a);outline:none}.section-move-btn{background:#fff;border:1px solid var(--border-color);border-radius:4px;color:var(--text-secondary);cursor:pointer;font-size:14px;height:28px;padding:0;transition:all .2s;width:28px}.section-move-btn:hover:not(:disabled){background:var(--primary-color);border-color:var(--primary-color);color:#fff}.section-move-btn:disabled{cursor:not-allowed;opacity:.3}.section-remove-btn{align-items:center;background:#fff;border:1px solid #dc3545;border:1px solid var(--danger-color,#dc3545);border-radius:4px;color:#dc3545;color:var(--danger-color,#dc3545);cursor:pointer;display:flex;height:28px;justify-content:center;padding:0;transition:all .2s;width:28px}.section-remove-btn:hover{background:#dc3545;background:var(--danger-color,#dc3545);color:#fff}.section-steps{background:#fff;padding:16px}.section-steps .add-step-btn{justify-content:center;margin-top:12px;width:100%}.add-section-btn{align-items:center;background:#1976d2;background:var(--primary-color,#1976d2);border:none;border-radius:6px;color:#fff;cursor:pointer;display:inline-flex;font-size:14px;font-weight:500;gap:6px;justify-content:center;margin-top:8px;padding:10px 16px;transition:background .2s}.add-section-btn:hover{background:#1565c0;background:var(--primary-dark,#1565c0)}.editor-mode-toggle{background:#f5f5f5;background:var(--bg-secondary,#f5f5f5);border-radius:8px;display:flex;gap:8px;margin-bottom:16px;padding:8px}.mode-btn{align-items:center;background:#fff;border:1px solid var(--border-color);border-radius:6px;color:var(--text-secondary);cursor:pointer;display:inline-flex;font-size:13px;font-weight:500;gap:6px;padding:8px 16px;transition:all .2s}.mode-btn:hover{color:var(--primary-color)}.mode-btn.active,.mode-btn:hover{border-color:var(--primary-color)}.mode-btn.active{background:var(--primary-color);color:#fff}.document-mode-editor{display:flex;flex-direction:column;gap:12px}.document-mode-hint{align-items:flex-start;background:#e3f2fd;background:var(--info-bg,#e3f2fd);border-radius:6px;color:#0d47a1;color:var(--info-text,#0d47a1);display:flex;font-size:13px;gap:8px;padding:12px}.document-mode-hint svg{flex-shrink:0;margin-top:2px}.document-mode-editor .quill{background:#fff;border-radius:8px}.document-mode-editor .ql-container{font-size:14px;min-height:300px}.document-mode-editor .ql-editor{min-height:300px}.document-mode-editor .ql-editor.ql-blank:before{color:#999;color:var(--text-muted,#999);font-style:normal}.document-image-uploading{align-items:center;background:#e3f2fd;background:var(--info-bg,#e3f2fd);border-radius:6px;color:#0d47a1;color:var(--info-text,#0d47a1);display:flex;font-size:13px;gap:6px;padding:8px 12px}.document-mode-editor .ql-editor img{border-radius:4px;height:auto;margin:8px 0;max-width:100%}.document-mode-actions{display:flex;gap:8px;justify-content:flex-end}.convert-btn{align-items:center;background:#28a745;background:var(--success-color,#28a745);border:none;border-radius:6px;color:#fff;cursor:pointer;display:inline-flex;font-size:14px;font-weight:500;gap:6px;padding:10px 20px;transition:background .2s}.convert-btn:hover:not(:disabled){background:#218838;background:var(--success-dark,#218838)}.convert-btn:disabled{cursor:not-allowed;opacity:.6}.parse-error{align-items:center;background:#f8d7da;background:var(--danger-bg,#f8d7da);border:1px solid #f5c6cb;border:1px solid var(--danger-border,#f5c6cb);border-radius:6px;color:#dc3545;color:var(--danger-color,#dc3545);display:flex;font-size:13px;gap:8px;padding:10px 12px}.editor-steps{border:1px solid var(--border-color);border-radius:8px;overflow:hidden}.editor-steps-header{align-items:center;background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;padding:12px 16px}.editor-steps-header h4{font-size:14px;font-weight:600;margin:0}.add-step-btn{align-items:center;background:#28a745;background:var(--success-color,#28a745);border:none;border-radius:4px;color:#fff;cursor:pointer;display:inline-flex;font-size:12px;gap:4px;padding:6px 12px;transition:background .2s}.add-step-btn:hover{background:#218838;background:var(--success-dark,#218838)}.no-steps{color:var(--text-secondary);padding:40px 20px;text-align:center}.steps-editor-list{max-height:none}.section-steps .steps-editor-list{max-height:350px;overflow-y:auto}.step-editor-item{border-bottom:1px solid var(--border-light);padding:16px}.step-editor-item:last-child{border-bottom:none}.step-editor-header{align-items:center;display:flex;gap:10px;margin-bottom:12px}.step-number{background:#1976d2;background:var(--primary-color,#1976d2);display:flex;font-size:12px;height:28px;width:28px}.step-move-btns{display:flex;gap:4px}.step-move-btns button{background:#f0f0f0;background:var(--bg-secondary,#f0f0f0);border:1px solid var(--border-color);border-radius:4px;color:var(--text-secondary);cursor:pointer;font-size:12px;height:24px;padding:0;transition:all .2s;width:24px}.step-move-btns button:hover:not(:disabled){background:#e3f2fd;background:var(--primary-light,#e3f2fd);color:var(--primary-color)}.step-move-btns button:disabled{cursor:not-allowed;opacity:.3}.remove-step-btn{background:#0000;border:1px solid #dc3545;border:1px solid var(--danger-color,#dc3545);border-radius:4px;color:#dc3545;color:var(--danger-color,#dc3545);cursor:pointer;margin-left:auto;padding:4px 8px;transition:all .2s}.remove-step-btn:hover{background:#dc3545;background:var(--danger-color,#dc3545);color:#fff}.step-editor-fields{display:flex;flex-direction:column;gap:10px;padding-left:38px}.step-title-input{border:1px solid var(--border-color);border-radius:4px;font-size:14px;font-weight:500;padding:8px 10px;width:100%}.step-title-input:focus{border-color:var(--primary-color);outline:none}.step-desc-input{border:1px solid var(--border-color);border-radius:4px;font-size:13px;min-height:50px;padding:8px 10px;resize:vertical;width:100%}.step-desc-input:focus{border-color:var(--primary-color);outline:none}.substeps-editor{background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border-radius:6px;padding:10px}.substeps-header{align-items:center;color:var(--text-secondary);display:flex;font-size:12px;font-weight:500;justify-content:space-between;margin-bottom:8px}.substeps-header button{align-items:center;background:#1976d2;background:var(--primary-color,#1976d2);border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;height:20px;justify-content:center;padding:0;transition:background .2s;width:20px}.substeps-header button:hover{background:#1565c0;background:var(--primary-dark,#1565c0)}.substep-editor-item{align-items:center;display:flex;gap:8px;margin-bottom:6px}.substep-bullet{color:var(--text-secondary);font-size:14px}.substep-editor-item input{border:1px solid var(--border-color);border-radius:4px;flex:1 1;font-size:13px;padding:6px 8px}.substep-editor-item input:focus{border-color:var(--primary-color);outline:none}.substep-editor-item button{align-items:center;background:#0000;border:none;color:var(--text-secondary);cursor:pointer;display:flex;height:20px;justify-content:center;padding:0;transition:color .2s;width:20px}.substep-editor-item button:hover{color:#dc3545;color:var(--danger-color,#dc3545)}.step-image-upload{align-items:center;display:flex;gap:8px;margin-top:4px}.step-image-upload.drop-target{border:2px dashed #0000;border-radius:6px;margin:4px -8px 0;padding:6px 8px;transition:border-color .2s,background .2s}.step-image-upload.drag-over{background:#1976d20d;border-color:#1976d2;border-color:var(--primary-color,#1976d2)}.upload-hint-text{color:#999;color:var(--text-tertiary,#999);font-size:11px;font-style:italic}.upload-image-btn{align-items:center;background:#f0f0f0;background:var(--bg-secondary,#f0f0f0);border:1px dashed var(--border-color);border-radius:4px;color:var(--text-secondary);cursor:pointer;display:inline-flex;font-size:12px;gap:4px;padding:6px 10px;transition:all .2s}.upload-image-btn:hover:not(:disabled){background:#e3f2fd;background:var(--primary-light,#e3f2fd);border-color:#1976d2;border-color:var(--primary-color,#1976d2);color:#1976d2;color:var(--primary-color,#1976d2)}.upload-image-btn:disabled{cursor:not-allowed;opacity:.6}.upload-hint{color:#999;color:var(--text-muted,#999);font-size:11px;font-style:italic}.step-image-preview{align-items:center;background:var(--success-bg);border:1px solid #c3e6cb;border-radius:4px;display:flex;gap:8px;padding:6px 10px}.step-image-preview .image-filename{align-items:center;color:var(--success-color);display:flex;font-size:12px;gap:4px}.step-image-preview .remove-image-btn{align-items:center;background:#0000;border:none;border-radius:4px;color:var(--success-color);cursor:pointer;display:flex;height:20px;justify-content:center;padding:0;transition:all .15s;width:20px}.step-image-preview .remove-image-btn:hover{background:#dc35451a;color:#dc3545;color:var(--error-color,#dc3545)}.editor-footer{align-items:center;background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border-top:1px solid var(--border-light);gap:12px}.cancel-btn{background:#0000;border:1px solid var(--border-color);border-radius:6px;color:var(--text-secondary);cursor:pointer;font-size:14px;padding:10px 20px;transition:all .2s}.cancel-btn:hover{background:#f0f0f0;background:var(--bg-secondary,#f0f0f0);color:var(--text-primary)}.save-btn{align-items:center;background:#1976d2;background:var(--primary-color,#1976d2);border:none;border-radius:6px;color:#fff;cursor:pointer;display:inline-flex;font-size:14px;font-weight:500;gap:6px;padding:10px 20px;transition:background .2s}.save-btn:hover:not(:disabled){background:#1565c0;background:var(--primary-dark,#1565c0)}.save-btn:disabled{cursor:not-allowed;opacity:.5}.tab-enduser{display:flex;flex-direction:column;gap:0}.policies-list{list-style-type:disc;margin:0;padding-left:20px}.policies-list li{color:var(--text-secondary);font-size:13px;line-height:1.5;margin-bottom:8px}.policies-list li:last-child{margin-bottom:0}.field-notes-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.field-note-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;padding:14px}.field-note-location{align-items:center;border-bottom:1px solid var(--border-color);color:var(--text-primary);display:flex;font-size:14px;font-weight:600;gap:8px;margin-bottom:10px;padding-bottom:8px}.field-note-location svg{color:var(--primary-color)}.field-note-list{list-style-type:disc;margin:0;padding-left:16px}.field-note-list li{color:var(--text-secondary);font-size:13px;line-height:1.5;margin-bottom:6px}.field-note-list li:last-child{margin-bottom:0}.network-quick-ref-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.network-quick-ref-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;padding:14px}.network-quick-ref-card.location-closed{border-style:dashed;opacity:.7}.network-location-header{align-items:center;border-bottom:1px solid var(--border-color);color:var(--text-primary);display:flex;font-size:14px;font-weight:600;gap:8px;margin-bottom:12px;padding-bottom:8px}.network-location-header svg{color:var(--primary-color)}.network-quick-details{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}.quick-detail{display:flex;font-size:13px;gap:8px}.quick-detail .detail-label{color:var(--text-secondary);font-weight:500;min-width:60px}.quick-detail .detail-value{color:var(--text-primary);font-family:monospace}.wifi-ssids{background:var(--secondary-bg);border-radius:6px;padding:10px}.wifi-header{align-items:center;color:var(--text-secondary);display:flex;font-size:12px;font-weight:500;gap:6px;margin-bottom:8px}.wifi-header svg{color:var(--primary-color)}.ssid-item{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:4px}.ssid-item:last-child{margin-bottom:0}.ssid-badge{align-items:center;background:var(--info-bg);border-radius:4px;color:var(--primary-color);display:inline-flex;font-size:12px;font-weight:500;gap:4px;padding:4px 8px}.ssid-purpose{color:var(--text-muted);font-size:11px;font-weight:400}.common-tasks-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.common-task-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;padding:14px}.task-name{border-bottom:1px solid var(--border-color);color:var(--text-primary);font-size:14px;font-weight:600;margin-bottom:8px;padding-bottom:8px}.task-procedure{color:var(--text-secondary);font-size:13px;line-height:1.5}.standard-software-section{border-top:1px solid var(--border-color);margin-top:16px;padding-top:16px}.standard-software-section h4{align-items:center;color:var(--text-secondary);display:flex;font-size:13px;font-weight:600;gap:6px;margin-bottom:12px}.software-grid{display:flex;flex-wrap:wrap;gap:8px}.software-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:6px;display:flex;flex-direction:column;gap:4px;padding:8px 12px}.software-name{align-items:center;color:var(--text-primary);display:flex;font-size:13px;font-weight:500;gap:6px}.software-version{background:var(--bg-secondary);border-radius:4px;color:var(--text-muted);font-size:11px;font-weight:400;padding:1px 6px}.software-notes{color:var(--text-secondary);font-size:12px}.wifi-networks-subsection{background:var(--bg-secondary);border-radius:8px;margin-bottom:16px;padding:12px}.wifi-networks-grid{display:flex;flex-wrap:wrap;gap:10px}.wifi-network-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:6px;max-width:300px;min-width:200px;padding:10px 14px}.wifi-network-ssid{align-items:center;color:var(--text-primary);display:flex;font-size:14px;font-weight:600;gap:6px;margin-bottom:6px}.wifi-network-ssid svg{color:var(--primary-color)}.wifi-network-badges{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:4px}.wifi-network-badges .badge{border-radius:4px;font-size:10px;font-weight:500;padding:2px 6px}.wifi-network-badges .badge-auth{background:#e3f2fd;background:var(--info-bg,#e3f2fd);color:#1976d2;color:var(--info-color,#1976d2)}.wifi-network-badges .badge-purpose{background:#e8f5e9;background:var(--success-bg,#e8f5e9);color:#388e3c;color:var(--success-color,#388e3c)}.wifi-network-badges .badge-vlan{background:#fff3e0;background:var(--warning-bg,#fff3e0);color:#f57c00;color:var(--warning-color,#f57c00)}.wifi-network-notes{color:var(--text-secondary);font-size:12px;margin-top:4px}.wifi-network-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:6px}.wifi-notes-icon{color:#9ca3af;color:var(--text-muted,#9ca3af);cursor:help;padding:2px}.wifi-notes-icon:hover{color:#3b82f6;color:var(--primary-color,#3b82f6)}.wifi-network-badges .badge-freq{background:#f3f4f6;background:var(--bg-secondary,#f3f4f6);color:#6b7280;color:var(--text-secondary,#6b7280)}.wifi-network-badges .badge-ap{align-items:center;background:#eff6ff;background:var(--primary-bg,#eff6ff);color:#3b82f6;color:var(--primary-color,#3b82f6);display:inline-flex;gap:3px}.wifi-item-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:4px}.wifi-item-badges{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:4px}.wifi-item-badges .badge{border-radius:3px;font-size:9px;font-weight:500;padding:1px 5px}.badge-auth-sm{background:#e3f2fd;background:var(--info-bg,#e3f2fd);color:#1976d2;color:var(--info-color,#1976d2)}.badge-purpose-sm{background:#e8f5e9;background:var(--success-bg,#e8f5e9);color:#388e3c;color:var(--success-color,#388e3c)}.badge-freq-sm{background:#f3f4f6;background:var(--bg-secondary,#f3f4f6);color:#6b7280;color:var(--text-secondary,#6b7280)}.badge-ap-sm{align-items:center;background:#eff6ff;background:var(--primary-bg,#eff6ff);color:#3b82f6;color:var(--primary-color,#3b82f6);display:inline-flex;gap:2px}.certificates-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.certificate-card-new{background:#fff;background:var(--card-bg,#fff);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:8px;padding:12px 14px;transition:border-color .15s ease}.certificate-card-new:hover{border-color:#3b82f6;border-color:var(--primary-color,#3b82f6)}.certificate-card-new.expiring{border-left:3px solid #f59e0b;border-left:3px solid var(--warning-color,#f59e0b)}.certificate-card-new.expiring-soon{background:#fef2f2;background:var(--danger-bg-light,#fef2f2);border-left:3px solid #ef4444;border-left:3px solid var(--danger-color,#ef4444)}.certificate-card-new.expired{background:#fee2e2;background:var(--danger-bg,#fee2e2);border-left:3px solid #dc2626;border-left:3px solid var(--danger-color,#dc2626)}.cert-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:8px}.cert-domain-row{align-items:center;display:flex;flex:1 1;gap:8px}.cert-icon{color:#16a34a;color:var(--success-color,#16a34a);flex-shrink:0}.certificate-card-new.expired .cert-icon,.certificate-card-new.expiring-soon .cert-icon{color:#dc2626;color:var(--danger-color,#dc2626)}.cert-domain-name{color:#1f2937;color:var(--text-primary,#1f2937);font-size:14px;font-weight:600;word-break:break-all}.cert-notes-icon{color:#9ca3af;color:var(--text-muted,#9ca3af);cursor:help;flex-shrink:0;padding:2px}.cert-notes-icon:hover{color:#3b82f6;color:var(--primary-color,#3b82f6)}.cert-info-row{margin-bottom:8px}.cert-badges{display:flex;flex-wrap:wrap;gap:6px}.cert-badge{align-items:center;border-radius:4px;display:inline-flex;font-size:11px;font-weight:500;padding:3px 8px}.cert-badge.cert-type{background:#dbeafe;background:var(--info-bg,#dbeafe);color:#2563eb;color:var(--info-color,#2563eb);letter-spacing:.3px;text-transform:uppercase}.cert-badge.cert-issuer{background:#f3f4f6;background:var(--bg-secondary,#f3f4f6);color:#6b7280;color:var(--text-secondary,#6b7280)}.cert-badge.cert-auto{background:#dcfce7;background:var(--success-bg,#dcfce7);color:#16a34a;color:var(--success-color,#16a34a)}.cert-expiry-row{align-items:center;border-top:1px solid #f3f4f6;border-top:1px solid var(--border-light,#f3f4f6);color:#6b7280;color:var(--text-secondary,#6b7280);display:flex;font-size:12px;gap:6px;padding-top:8px}.cert-expiry-row svg{flex-shrink:0}.cert-expiry-row.expiring{color:#f59e0b;color:var(--warning-color,#f59e0b)}.cert-expiry-row.expiring-soon{color:#ef4444;color:var(--danger-color,#ef4444);font-weight:500}.cert-expiry-row.expired{color:#dc2626;color:var(--danger-color,#dc2626);font-weight:600}.expiry-text{flex:1 1}.expiry-date{color:#9ca3af;color:var(--text-muted,#9ca3af);font-size:11px}@media (max-width:768px){.infodocs-container{padding:12px}.infodocs-client-header,.infodocs-container .page-header{flex-direction:column;gap:12px}.infodocs-client-header{align-items:flex-start}.selected-client-info{flex-wrap:wrap}.infodocs-tabs{padding:8px 12px}.infodocs-tabs .tab-button{font-size:12px;padding:8px 12px}.secrets-summary{flex-direction:column}}.client-card-badges{align-items:center;display:flex;gap:6px}.btn-visibility{align-items:center;background:#0000;border:1px solid #e0e0e0;border:1px solid var(--border-color,#e0e0e0);border-radius:6px;color:#888;color:var(--text-secondary,#888);cursor:pointer;display:flex;height:28px;justify-content:center;opacity:.6;padding:0;transition:all .2s ease;width:28px}.client-card:hover .btn-visibility{opacity:1}.btn-visibility:hover{background:#f0f0f0;background:var(--bg-hover,#f0f0f0);border-color:#667eea;border-color:var(--primary-color,#667eea);color:#667eea;color:var(--primary-color,#667eea)}.status-inactive-label{background:#9ca3af33;color:#888;color:var(--text-secondary,#888)}.status-active-label,.status-inactive-label{align-items:center;border-radius:4px;display:flex;font-size:11px;gap:4px;padding:2px 8px}.status-active-label{background:#10b98126;color:var(--success-color)}.client-card.client-inactive{background:#f8f9fa;background:var(--bg-muted,#f8f9fa);border-style:dashed;opacity:.7}.client-card.client-inactive:hover{opacity:.85}.table tbody tr.row-inactive{background:#f8f9fa;background:var(--bg-muted,#f8f9fa);opacity:.7}.table tbody tr.row-inactive:hover{opacity:.85}.btn-visibility-sm{align-items:center;background:#0000;border:none;cursor:pointer;display:inline-flex;padding:0}.btn-visibility-sm:hover .status-badge{opacity:.8}.version-selector{align-items:center;background:#f0f4f8;background:var(--bg-subtle,#f0f4f8);border-radius:6px;color:#6c757d;color:var(--text-muted,#6c757d);display:inline-flex;font-size:13px;gap:6px;margin-left:16px;padding:4px 8px}.version-selector svg{flex-shrink:0}.version-selector select{background:#0000;border:none;color:#212529;color:var(--text-primary,#212529);cursor:pointer;font-size:13px;max-width:280px;padding:2px 4px}.version-selector select:focus{outline:none}.version-selector select:disabled{cursor:wait;opacity:.6}.version-readonly-banner{align-items:center;background:linear-gradient(135deg,#fff3cd,#ffeaa7);border:1px solid #ffc107;border-radius:8px;color:var(--warning-color);display:flex;font-size:14px;gap:12px;margin:0 0 16px;padding:12px 20px}.version-readonly-banner svg{color:var(--warning-color);flex-shrink:0}.version-readonly-banner span{flex:1 1}.version-readonly-banner strong{font-weight:600}.btn-return-current{align-items:center;background:var(--card-bg);border:1px solid #d39e00;border-radius:6px;color:var(--warning-color);cursor:pointer;display:inline-flex;font-size:13px;font-weight:500;padding:6px 12px;transition:all .15s ease;white-space:nowrap}.btn-return-current:hover{background:var(--warning-color);border-color:var(--warning-color);color:var(--text-color)}.version-banner-actions{align-items:center;display:flex;gap:8px}.btn-restore-version{align-items:center;background:var(--success-color);border:1px solid #28a745;border-radius:6px;color:#fff;cursor:pointer;display:inline-flex;font-size:13px;font-weight:500;gap:6px;padding:6px 12px;transition:all .15s ease;white-space:nowrap}.btn-restore-version:hover{background:var(--success-color);border-color:var(--success-color)}.btn-restore-version svg{flex-shrink:0}.infodocs-tab-content.readonly-mode{pointer-events:none}.infodocs-tab-content.readonly-mode .btn,.infodocs-tab-content.readonly-mode .btn-icon,.infodocs-tab-content.readonly-mode button:not(.tab-button):not(.btn-return-current),.infodocs-tab-content.readonly-mode input,.infodocs-tab-content.readonly-mode select,.infodocs-tab-content.readonly-mode textarea{cursor:not-allowed;opacity:.5}.infodocs-tab-content.readonly-mode{pointer-events:auto}.infodocs-tab-content.readonly-mode>*{pointer-events:none}.infodocs-tab-content.readonly-mode .data-table,.infodocs-tab-content.readonly-mode .procedure-item,.infodocs-tab-content.readonly-mode .section-card{pointer-events:auto}.infodocs-tab-content.readonly-mode .btn,.infodocs-tab-content.readonly-mode [role=button],.infodocs-tab-content.readonly-mode a.btn,.infodocs-tab-content.readonly-mode button,.infodocs-tab-content.readonly-mode input,.infodocs-tab-content.readonly-mode select,.infodocs-tab-content.readonly-mode textarea{pointer-events:none!important}.diff-badge{border-radius:3px;display:inline-block;font-size:10px;font-weight:600;letter-spacing:.5px;margin-left:8px;padding:2px 6px;text-transform:uppercase;vertical-align:middle}.diff-badge.diff-new{background:var(--success-bg);border:1px solid #c3e6cb;color:var(--success-color)}.diff-badge.diff-removed{background:var(--danger-bg);border:1px solid #f5c6cb;color:var(--danger-color)}.diff-badge.diff-changed{background:var(--warning-bg);border:1px solid #ffeeba;color:var(--warning-color)}.diff-strikethrough{opacity:.7;text-decoration:line-through}.diff-card-new{background:linear-gradient(90deg,#28a7450d,#0000)!important;border-left:4px solid #28a745!important}.diff-card-removed{background:linear-gradient(90deg,#dc35450d,#0000)!important;border-left:4px solid #dc3545!important;opacity:.8}.diff-card-changed{background:linear-gradient(90deg,#ffc1070d,#0000)!important;border-left:4px solid #ffc107!important}.diff-section-new{background:linear-gradient(90deg,#28a74508,#0000);border-left:4px solid #28a745;padding-left:16px}.diff-section-removed{background:linear-gradient(90deg,#dc354508,#0000);border-left:4px solid #dc3545;opacity:.8;padding-left:16px}.diff-section-changed{background:linear-gradient(90deg,#ffc10708,#0000);border-left:4px solid #ffc107;padding-left:16px}.diff-value{align-items:center;display:inline-flex;gap:4px}.diff-value-new{color:var(--success-color)}.diff-value-removed{color:var(--danger-color)}.diff-value-changed{color:var(--warning-color)}.diff-current-value{margin-left:8px;opacity:.9}.diff-current-summary,.diff-current-value{color:var(--text-muted);font-size:.85em;font-style:italic}.diff-current-summary{border-top:1px dashed #ddd;margin-top:8px;padding-top:8px}.diff-item-new{background:#28a74514}.diff-item-new,.diff-item-removed{border-radius:4px;margin:-4px -8px;padding:4px 8px}.diff-item-removed{background:#dc354514}.diff-item-changed{background:#ffc10714;border-radius:4px;margin:-4px -8px;padding:4px 8px}.contact-card .diff-badge,.location-card .diff-badge{margin-left:0;position:absolute;right:8px;top:8px}.contact-card,.location-card{position:relative}.diff-card-changed,.diff-card-new,.diff-card-removed{padding-right:70px!important}.tab-passwords{padding:0}.passwords-header{align-items:center;display:flex;flex-wrap:wrap;gap:16px;margin-bottom:16px}.passwords-summary{align-items:center;color:var(--text-primary);display:flex;font-weight:500;gap:8px}.passwords-summary .folder-path{border-left:1px solid var(--border-color);color:var(--text-secondary);font-size:.9em;font-weight:400;margin-left:4px;padding-left:8px}.passwords-summary .configured-badge{background:#48bb781a;border:1px solid #48bb784d;border-radius:12px;color:var(--success-color);font-size:.75em;font-weight:500;padding:2px 8px}.passwords-search{align-items:center;background:#fff;background:var(--input-bg,#fff);border:1px solid var(--border-color);border-radius:6px;display:flex;flex:1 1;gap:8px;max-width:300px;padding:6px 10px}.passwords-search input{background:#0000;border:none;color:var(--text-primary);flex:1 1;font-size:13px;outline:none}.passwords-search button{align-items:center;background:none;border:none;color:var(--text-secondary);cursor:pointer;display:flex;padding:2px}.passwords-search button:hover{color:var(--text-primary)}.passwords-admin-actions{align-items:center;display:flex;gap:8px}.filter-active-badge{align-items:center;background:#4299e126;border-radius:50%;color:#4299e1;color:var(--primary-color,#4299e1);display:flex;height:20px;justify-content:center;width:20px}.keeper-filter-modal{max-width:700px;width:90vw}.keeper-filter-modal .keeper-filter-config{border-radius:0;max-height:none}.passwords-warning{align-items:center;background:#ffc1071a;border:1px solid #ffc1074d;border-radius:6px;color:var(--warning-color);display:flex;font-size:13px;gap:8px;margin-bottom:16px;padding:10px 14px}.passwords-list{display:flex;flex-direction:column;gap:8px}.password-card{align-items:center;background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;display:flex;gap:12px;padding:12px 16px;transition:border-color .15s,box-shadow .15s}.password-card:hover{border-color:var(--primary-color);box-shadow:0 2px 8px #00000014}.password-card-icon{align-items:center;border-radius:8px;color:#fff;display:flex;flex-shrink:0;height:40px;justify-content:center;width:40px}.password-card-content{flex:1 1;min-width:0}.password-card-title{color:var(--text-primary);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.password-card-meta{align-items:center;color:var(--text-secondary);display:flex;font-size:12px;gap:10px;margin-top:4px}.type-badge{border:1px solid;border-radius:4px;font-size:11px;font-weight:500;letter-spacing:.3px;padding:2px 8px;text-transform:uppercase}.last-modified{gap:4px}.btn-reveal,.last-modified{align-items:center;display:flex}.btn-reveal{background:var(--primary-color);border:none;border-radius:6px;color:#fff;cursor:pointer;flex-shrink:0;font-size:13px;font-weight:500;gap:6px;padding:8px 14px;transition:background .15s}.btn-reveal:hover{background:var(--primary-hover)}.btn-reveal:disabled{cursor:not-allowed;opacity:.6}.infodocs-reveal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.infodocs-reveal-content{background:var(--card-bg);border-radius:12px;box-shadow:0 20px 40px #0003;max-height:90vh;max-width:500px;overflow-y:auto;width:100%}.infodocs-reveal-content.reveal-modal{max-width:480px}.infodocs-reveal-content.config-modal{max-width:450px}.infodocs-reveal-content .reveal-header{align-items:center;border-bottom:1px solid var(--border-color);display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;padding:16px 20px}.infodocs-reveal-content .reveal-header h3{color:var(--text-primary);font-size:18px;font-weight:600;margin:0}.reveal-header-info{align-items:center;display:flex;gap:10px}.reveal-type-icon{align-items:center;border-radius:6px;color:#fff;display:flex;height:32px;justify-content:center;width:32px}.auto-hide-timer{background:#0000000d;border-radius:4px;font-size:12px;gap:6px;padding:4px 10px}.auto-hide-timer,.infodocs-reveal-close{align-items:center;color:var(--text-secondary);display:flex}.infodocs-reveal-close{background:none;border:none;border-radius:4px;cursor:pointer;justify-content:center;padding:4px}.infodocs-reveal-close:hover{background:#0000000d;color:var(--text-primary)}.infodocs-reveal-content .reveal-body{padding:20px}.infodocs-reveal-content .reveal-footer{border-top:1px solid var(--border-color);display:flex;gap:10px;justify-content:flex-end;padding:16px 20px}.reveal-error,.reveal-loading{align-items:center;color:var(--text-secondary);display:flex;flex-direction:column;gap:16px;justify-content:center;padding:40px 20px;text-align:center}.reveal-error{color:var(--danger-color)}.credential-fields{display:flex;flex-direction:column;gap:16px}.credential-field{display:flex;flex-direction:column;gap:4px}.credential-field label{color:var(--text-secondary);font-size:12px;font-weight:500;letter-spacing:.5px;text-transform:uppercase}.field-value-row{align-items:center;background:#f8f9fa;background:var(--input-bg,#f8f9fa);border:1px solid var(--border-color);border-radius:6px;display:flex;gap:8px;padding:10px 12px}.field-value-row .field-value{color:var(--text-primary);flex:1 1;font-family:SF Mono,Consolas,monospace;font-size:14px;word-break:break-all}.field-value.masked{color:var(--text-secondary);letter-spacing:2px}.field-value a{align-items:center;color:var(--primary-color);display:flex;gap:4px;text-decoration:none}.field-value a:hover{text-decoration:underline}.field-actions{align-items:center;display:flex;gap:4px}.copy-btn,.toggle-btn{align-items:center;background:none;border:none;border-radius:4px;color:var(--text-secondary);cursor:pointer;display:flex;justify-content:center;padding:6px;transition:all .15s}.copy-btn:hover,.toggle-btn:hover{background:#0000000d;color:var(--text-primary)}.copy-btn.copied{color:var(--success-color)}.credential-notes .notes-content{background:#f8f9fa;background:var(--input-bg,#f8f9fa);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);font-size:14px;line-height:1.5;padding:12px;position:relative;white-space:pre-wrap}.credential-notes .copy-btn{position:absolute;right:8px;top:8px}.totp-field .totp-display{align-items:center;display:flex;flex:1 1;gap:12px}.totp-field .totp-code{background:#f7fafc;background:var(--bg-secondary,#f7fafc);border-radius:8px;color:#4299e1;color:var(--primary-color,#4299e1);font-family:SF Mono,Monaco,Inconsolata,Roboto Mono,monospace;font-size:24px;font-weight:600;letter-spacing:4px;min-width:140px;padding:8px 16px;text-align:center}.totp-field .totp-code.expiring{animation:pulse .5s ease-in-out infinite;color:var(--danger-color)}.totp-field .totp-timer{align-items:center;display:flex;gap:8px;min-width:80px}.totp-field .totp-progress{background:#4299e1;background:var(--primary-color,#4299e1);border-radius:2px;height:4px;min-width:40px;transition:width 1s linear}.totp-field .totp-progress.expiring{background:var(--danger-color)}.totp-field .totp-countdown{color:#718096;color:var(--text-secondary,#718096);font-size:12px;min-width:24px}.config-modal .form-group{margin-bottom:20px}.config-modal .form-group label{color:var(--text-primary);display:block;font-weight:500;margin-bottom:6px}.config-modal .form-group input{background:#fff;background:var(--input-bg,#fff);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);font-size:14px;padding:10px 12px;transition:border-color .15s;width:100%}.config-modal .form-group input:focus{border-color:var(--primary-color);outline:none}.config-modal .form-group input:disabled{background:#f5f5f5;background:var(--input-disabled-bg,#f5f5f5);cursor:not-allowed}.config-modal .form-help{color:var(--text-secondary);font-size:12px;line-height:1.4;margin-top:6px}.config-note{align-items:flex-start;background:#4299e11a;border-radius:6px;color:var(--primary-color);display:flex;font-size:13px;gap:8px;padding:12px}.config-note svg{flex-shrink:0;margin-top:1px}.config-status{background:#48bb781a;border-radius:8px;gap:16px;margin-bottom:16px;padding:20px}.config-status-icon{align-items:center;background:var(--success-color);border-radius:50%;color:#fff;display:flex;flex-shrink:0;height:48px;justify-content:center;width:48px}.config-status-text{display:flex;flex-direction:column;gap:4px}.config-status-text strong{color:var(--text-primary);font-size:16px}.config-status-text span{color:var(--text-secondary);font-size:13px}.config-warning{align-items:center;background:#ed893626;border:1px solid #ed89364d;border-radius:6px;color:var(--warning-color);display:flex;font-size:13px;gap:8px;padding:12px}.config-warning svg{color:var(--warning-color);flex-shrink:0}.sync-status-badge{align-items:center;border-radius:12px;gap:4px;transition:all .15s ease;white-space:nowrap}.sync-status-badge[role=button]:hover{box-shadow:0 2px 4px #0000001a;transform:translateY(-1px)}.sync-status-badge[role=button]:focus{outline:2px solid var(--primary-color);outline-offset:2px}.sync-status-synced{background:var(--success-bg);border:1px solid #28a74533;color:var(--success-color)}.sync-status-differs{background:var(--warning-bg);border:1px solid #85640433;color:var(--warning-color)}.sync-status-unlinked{background:var(--secondary-bg);border:1px solid #6c757d33;color:var(--text-muted)}.sync-link-btn{align-items:center;background:#0000;border:none;border-radius:4px;cursor:pointer;display:inline-flex;justify-content:center;padding:4px;transition:all .15s ease}.sync-link-btn:hover{background:var(--secondary-bg);transform:scale(1.1)}.sync-link-btn:focus{outline:2px solid var(--primary-color);outline-offset:2px}.sync-link-synced{color:var(--success-color)}.sync-link-differs{color:var(--warning-color)}.sync-link-unlinked{color:var(--text-muted)}.sync-summary{display:flex;flex-wrap:wrap;font-size:12px;gap:12px}.sync-summary-item{align-items:center;display:inline-flex;gap:4px}.sync-summary-synced{color:var(--success-color)}.sync-summary-differs{color:var(--warning-color)}.sync-summary-unlinked{color:var(--text-muted)}.list-row .sync-indicator{align-items:center;display:flex;gap:4px}.sync-modal{max-width:900px}.sync-modal-content{padding:20px}.sync-category{margin-bottom:24px}.sync-category-header{border-bottom:1px solid var(--border-color);margin-bottom:12px;padding:12px 0}.sync-category-title{font-size:15px;gap:8px}.sync-category-count{color:var(--text-muted);font-size:12px;font-weight:400;margin-left:8px}.sync-items-list{display:flex;flex-direction:column;gap:8px}.sync-item{align-items:center;background:var(--card-bg);border:1px solid var(--border-color);border-radius:6px;display:flex;gap:12px;padding:10px 12px;transition:all .15s ease}.sync-item.selected,.sync-item:hover{border-color:var(--primary-color)}.sync-item.selected{background:var(--info-bg)}.sync-item-details{min-width:0}.sync-item-action{align-items:center;background:var(--secondary-bg);border-radius:4px;color:var(--text-muted);display:flex;font-size:12px;gap:6px;padding:4px 8px}.sync-item-action.create{background:var(--success-bg);color:var(--success-color)}.sync-item-action.update{background:var(--info-bg);color:var(--info-color)}.sync-item-action.link{background:var(--warning-bg);color:var(--warning-color)}.sync-differences{background:var(--secondary-bg);border-radius:4px;font-size:12px;margin-top:8px;padding:8px 12px}.sync-difference-row{grid-gap:8px;display:grid;gap:8px;grid-template-columns:100px 1fr 1fr;padding:4px 0}.sync-difference-row:not(:last-child){border-bottom:1px solid var(--border-color)}.sync-difference-field{color:var(--text-muted);font-weight:500}.sync-difference-infodocs{color:var(--primary-color)}.sync-difference-target{color:var(--text-secondary)}.sync-progress{display:flex;flex-direction:column;gap:8px;padding:20px;text-align:center}.sync-progress-bar{background:var(--secondary-bg);border-radius:2px;height:4px;overflow:hidden}.sync-progress-fill{background:var(--primary-color);height:100%;transition:width .3s ease}.sync-progress-text{color:var(--text-secondary);font-size:13px}.sync-results{padding:20px}.sync-results-summary{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(3,1fr);margin-bottom:20px}.sync-result-stat{background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;padding:16px;text-align:center}.sync-result-stat.success{background:var(--success-bg);border-color:var(--success-color)}.sync-result-stat.failed{background:var(--danger-bg);border-color:var(--danger-color)}.sync-result-count{font-size:28px;font-weight:700;margin-bottom:4px}.sync-result-label{color:var(--text-secondary);font-size:12px}.sync-record-editor{background:var(--card-bg);border-radius:8px;display:flex;flex-direction:column;max-height:80vh;overflow:hidden}.editor-header{border-bottom:1px solid var(--border-color);flex-shrink:0;justify-content:space-between;padding:16px 20px}.editor-header,.editor-title{align-items:center;display:flex}.editor-title{color:var(--text-primary);font-size:16px;font-weight:600;gap:10px}.editor-title svg{color:var(--primary-color)}.editor-body{flex:1 1;overflow-y:auto;padding:20px}.editor-section{margin-bottom:20px}.editor-section:last-child{margin-bottom:0}.section-label{align-items:center;color:var(--text-muted);display:flex;font-size:12px;justify-content:space-between;letter-spacing:.5px;margin-bottom:10px;text-transform:uppercase}.section-label .btn-link{font-size:12px;font-weight:400;text-transform:none}.contact-preview,.infra-preview,.location-preview{background:var(--secondary-bg);border-radius:6px;padding:12px}.contact-name,.infra-name,.location-name{color:var(--text-primary);font-weight:600;margin-bottom:4px}.contact-meta,.infra-meta,.location-meta{color:var(--text-secondary);font-size:13px;margin-bottom:4px}.contact-role,.infra-location,.location-address{color:var(--text-muted);font-size:12px}.location-type{background:var(--info-bg);border-radius:4px;color:var(--primary-color);display:inline-block;font-size:11px;font-weight:500;margin-right:6px;padding:2px 6px}.location-status{color:var(--text-muted);font-size:11px}.editor-section .search-box{align-items:center;background:var(--secondary-bg);border:1px solid var(--border-color);border-radius:6px;display:flex;gap:10px;margin-bottom:12px;padding:10px 12px}.editor-section .search-box svg{color:var(--text-muted);flex-shrink:0}.editor-section .search-box input{background:none;border:none;color:var(--text-primary);flex:1 1;font-size:14px;outline:none}.btn-clear,.editor-section .search-box input::placeholder{color:var(--text-muted)}.btn-clear{align-items:center;background:none;border:none;cursor:pointer;display:flex;padding:2px}.btn-clear:hover{color:var(--text-primary)}.infodocs-asset-picker,.infodocs-building-list,.infodocs-user-list{display:flex;flex-direction:column;gap:4px;max-height:250px;overflow-y:auto}.infodocs-asset-option,.infodocs-building-option,.infodocs-user-option{align-items:center;background:var(--card-bg);border:1px solid var(--border-color);border-radius:6px;cursor:pointer;display:flex;gap:10px;padding:10px 12px;text-align:left;transition:all .15s ease;width:100%}.infodocs-asset-option:hover,.infodocs-building-option:hover,.infodocs-user-option:hover{background:var(--info-bg);border-color:var(--primary-color)}.infodocs-asset-option svg,.infodocs-building-option svg,.infodocs-user-option svg{color:var(--text-muted);flex-shrink:0}.infodocs-asset-option-details,.infodocs-building-option-details,.infodocs-user-option-details{flex:1 1;min-width:0}.infodocs-asset-option-name,.infodocs-building-option-name,.infodocs-user-option-name{color:var(--text-primary);font-weight:500;margin-bottom:2px}.infodocs-asset-option-meta,.infodocs-building-option-meta,.infodocs-user-option-email{color:var(--text-secondary);font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.no-results{color:var(--text-muted);font-size:13px;padding:20px;text-align:center}.no-results .btn-link{display:block;margin-top:8px}.more-results{color:var(--text-muted);font-size:12px;padding:8px;text-align:center}.selected-asset,.selected-building,.selected-user{align-items:center;background:var(--info-bg);border:1px solid var(--primary-color);border-radius:6px;display:flex;gap:12px;padding:12px}.selected-asset svg,.selected-building svg,.selected-user svg{color:var(--primary-color);flex-shrink:0}.asset-details,.building-details,.user-details{flex:1 1;min-width:0}.asset-name,.building-name,.user-name{color:var(--text-primary);font-weight:600;margin-bottom:2px}.asset-meta,.building-meta,.user-email{color:var(--text-secondary);font-size:12px}.editor-tabs{background:var(--secondary-bg);border-radius:6px;margin-bottom:16px;padding:4px}.editor-tab{background:none;border-radius:4px;flex:1 1;font-size:13px;gap:6px;justify-content:center;padding:8px 12px;transition:all .15s ease}.editor-tab:hover{background:var(--card-bg);color:var(--text-primary)}.editor-tab.active{background:var(--card-bg);box-shadow:0 1px 3px #0000001a}.create-preview{background:var(--success-bg);border:1px solid #28a74540;border-radius:6px;padding:12px}.preview-row{display:flex;gap:12px;padding:4px 0}.preview-row:not(:last-child){border-bottom:1px solid var(--border-color)}.preview-label{color:var(--text-muted);font-size:12px;width:80px}.preview-value{color:var(--text-primary);flex:1 1;font-size:13px}.differences-section{margin-top:12px}.differences-toggle{align-items:center;border:1px solid #85640420;border-radius:6px;color:var(--warning-color);cursor:pointer;display:flex;font-size:13px;gap:8px;padding:8px 12px;text-align:left;width:100%}.differences-toggle,.differences-toggle:hover{background:var(--warning-bg)}.differences-list{background:var(--secondary-bg);border-radius:6px;font-size:12px;margin-top:8px;padding:12px}.differences-header{border-bottom:1px solid var(--border-color);color:var(--text-muted);font-size:10px;font-weight:600;letter-spacing:.3px;padding-bottom:8px;text-transform:uppercase}.difference-row,.differences-header{grid-gap:8px;display:grid;gap:8px;grid-template-columns:80px 1fr 1fr 40px}.difference-row{align-items:center;padding:8px 0}.difference-row:not(:last-child){border-bottom:1px solid var(--border-color)}.differences-list.simple .difference-row{grid-template-columns:80px 1fr auto 1fr}.diff-field{color:var(--text-secondary);font-weight:500}.diff-infodocs{color:var(--primary-color);word-break:break-word}.diff-directory,.diff-target{color:var(--text-muted);word-break:break-word}.diff-arrow{color:var(--text-muted);font-size:11px}.diff-checkbox{align-items:center;display:flex;justify-content:center}.diff-checkbox input{cursor:pointer;height:16px;width:16px}.differences-note{border-top:1px solid var(--border-color);color:var(--text-muted);font-size:11px;font-style:italic;margin-top:10px;padding-top:10px}.editor-error{background:var(--danger-bg);border:1px solid var(--danger-color);font-size:13px;margin-top:12px;padding:10px 12px}.editor-footer{border-top:1px solid var(--border-color);display:flex;flex-shrink:0;gap:10px;justify-content:flex-end;padding:16px 20px}.editor-footer .btn{align-items:center;display:inline-flex;gap:6px}.procedure-viewer-modal .editor-content{overflow-y:auto;padding:20px}.procedure-viewer-meta{display:flex;gap:8px;margin-bottom:12px}.pv-meta-tag{align-items:center;background:#f3f4f6;background:var(--bg-secondary,#f3f4f6);border-radius:10px;color:#6b7280;color:var(--text-secondary,#6b7280);display:inline-flex;font-size:12px;font-weight:500;padding:2px 10px}.pv-meta-tag.pv-inactive{background:#fef2f2;color:#991b1b}.procedure-viewer-summary{background:#f9fafb;background:var(--bg-secondary,#f9fafb);border-left:3px solid #2563eb;border-left:3px solid var(--primary-color,#2563eb);border-radius:6px;color:#4b5563;color:var(--text-secondary,#4b5563);font-size:14px;line-height:1.5;margin-bottom:16px;padding:10px 12px}.procedure-viewer-section{margin-bottom:16px}.pv-section-title{border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--border-color,#e5e7eb);color:#1f2937;color:var(--text-primary,#1f2937);font-size:14px;font-weight:600;margin:0 0 8px;padding-bottom:4px}.pv-step-list{margin:0;padding-left:24px}.pv-step{line-height:1.5;margin-bottom:10px}.pv-step-title{color:#1f2937;color:var(--text-primary,#1f2937);font-size:14px;font-weight:600}.pv-step-description{color:#6b7280;color:var(--text-secondary,#6b7280);font-size:13px;margin-top:2px}.pv-substep-list{list-style-type:disc;margin:4px 0 0;padding-left:20px}.pv-substep{color:#374151;color:var(--text-primary,#374151);font-size:13px;line-height:1.5}.pv-step-image{margin-top:6px}.pv-step-image img{border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:6px;cursor:pointer;max-height:300px;max-width:100%}.pv-empty{color:#6b7280;color:var(--text-secondary,#6b7280);font-size:14px;font-style:italic;padding:24px;text-align:center}.sync-modal-overlay{align-items:center;background:#00000080;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:1000}.sync-modal{background:var(--card-bg);border-radius:12px;box-shadow:0 20px 60px #0000004d;display:flex;flex-direction:column;max-height:90vh;max-width:800px;width:100%}.sync-modal .modal-header{align-items:center;border-bottom:1px solid var(--border-color);display:flex;flex-shrink:0;justify-content:space-between;padding:20px 24px}.sync-modal .modal-header h3{align-items:center;display:flex;font-size:18px;font-weight:600;gap:10px;margin:0}.sync-modal .modal-header h3 svg{color:var(--primary-color)}.sync-modal-content{flex:1 1;overflow-y:auto;padding:20px 24px}.sync-modal .modal-footer{border-top:1px solid var(--border-color);display:flex;flex-shrink:0;gap:12px;justify-content:flex-end;padding:16px 24px}.sync-error{align-items:center;background:var(--danger-bg);border:1px solid var(--danger-color);border-radius:8px;color:var(--danger-color);display:flex;gap:10px;margin-bottom:16px;padding:12px 16px}.sync-error span{flex:1 1}.sync-loading{align-items:center;color:var(--text-secondary);display:flex;flex-direction:column;justify-content:center;padding:60px 20px}.sync-loading svg{color:var(--primary-color);margin-bottom:16px}.sync-loading p{font-size:15px;margin:0}.sync-summary-header{align-items:center;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;margin-bottom:16px;padding:12px 0}.sync-summary-title{align-items:center;color:var(--text-primary);display:flex;font-size:14px;font-weight:500;gap:8px}.sync-count{background:var(--secondary-bg);border-radius:10px;color:var(--text-muted);font-size:12px;font-weight:400;padding:2px 8px}.sync-category{border:1px solid var(--border-color);border-radius:8px;margin-bottom:20px;overflow:hidden}.sync-category-header{align-items:center;background:var(--secondary-bg);border:none;cursor:pointer;display:flex;justify-content:space-between;padding:14px 16px;text-align:left;width:100%}.sync-category-header:hover{background:var(--hover-bg)}.sync-category-title{align-items:center;color:var(--text-primary);display:flex;font-size:14px;font-weight:600;gap:10px}.sync-category-title svg{color:var(--primary-color)}.sync-modal .sync-item,.sync-modal .sync-items-list{background:var(--card-bg);padding:12px}.sync-modal .sync-item{align-items:center;border:1px solid var(--border-color);border-radius:6px;display:flex;flex-wrap:wrap;gap:12px;margin-bottom:8px}.sync-modal .sync-item:last-child{margin-bottom:0}.sync-modal .sync-item.selected{background:var(--info-bg);border-color:var(--primary-color)}.sync-modal .sync-item.disabled{cursor:not-allowed;opacity:.6}.sync-item-checkbox{flex-shrink:0}.sync-item-checkbox input{cursor:pointer;height:18px;width:18px}.sync-item-checkbox input:disabled{cursor:not-allowed}.sync-item-icon{color:var(--text-muted);flex-shrink:0}.sync-item-details{flex:1 1;min-width:150px}.sync-item-name{color:var(--text-primary);font-weight:500;margin-bottom:2px}.sync-item-meta{color:var(--text-secondary);font-size:12px}.sync-item-note{color:var(--text-muted);font-style:italic}.btn-expand{background:none;border:none;border-radius:4px;color:var(--text-muted);cursor:pointer;padding:4px}.btn-expand:hover{background:var(--secondary-bg);color:var(--text-primary)}.sync-item-differences{background:var(--secondary-bg);border-radius:4px;font-size:12px;margin-top:8px;padding:10px 12px;width:100%}.diff-row-compact{align-items:center;display:flex;gap:8px;padding:4px 0}.diff-row-compact:not(:last-child){border-bottom:1px solid var(--border-color)}.diff-row-compact .diff-field{color:var(--text-muted);font-weight:500;min-width:80px}.diff-row-compact .diff-value{color:var(--text-primary)}.diff-row-compact .diff-arrow{color:var(--text-muted)}.sync-matched-note{align-items:center;color:var(--success-color);display:flex;font-size:13px;gap:8px;padding:10px 12px}.sync-empty{color:var(--text-muted);font-size:13px;padding:20px;text-align:center}.sync-warning{align-items:flex-start;background:var(--warning-bg);border:1px solid #85640440;border-radius:8px;color:var(--warning-color);display:flex;font-size:13px;gap:10px;margin-top:16px;padding:12px 16px}.sync-warning svg{flex-shrink:0;margin-top:2px}.sync-results-header{align-items:center;border-radius:8px;display:flex;flex-direction:column;margin-bottom:20px;padding:24px}.sync-results-header.success{background:var(--success-bg);color:var(--success-color)}.sync-results-header.partial{background:var(--warning-bg);color:var(--warning-color)}.sync-results-header h4{font-size:18px;margin:12px 0 0}.sync-results-details{margin-top:20px}.result-line{align-items:center;display:flex;font-size:14px;gap:8px;padding:8px 0}.result-line.success{color:var(--success-color)}.result-line.failed{color:var(--danger-color)}.result-failures{margin-bottom:8px}.failure-detail{color:var(--text-muted);font-size:12px;padding:4px 0 4px 22px}.header-actions{flex-shrink:0;margin-left:auto}.btn-sync{align-items:center;display:inline-flex;font-size:13px;font-weight:500;gap:6px;padding:6px 12px}.btn-sync svg{flex-shrink:0}.btn-sync:hover{background:var(--primary-color);border-color:var(--primary-color);color:#fff}.btn-sync:hover svg{animation:spin 1s linear infinite}.btn-sync.is-syncing{cursor:wait;opacity:.7}.section-header-row{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-bottom:12px}.section-header-row h3{align-items:center;display:flex;gap:8px;margin:0}.subsection-header-row{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-bottom:8px}.subsection-header-row h4{align-items:center;display:flex;font-size:14px;gap:6px;margin:0}.section-actions{align-items:center;display:flex;gap:4px}.section-actions .btn-sm{padding:4px 6px}.section-actions .btn-icon{align-items:center;display:flex;height:28px;justify-content:center;padding:0;width:28px}.btn-link-icon{align-items:center;background:#0000;border:none;border-radius:4px;color:#666;color:var(--text-secondary,#666);cursor:pointer;display:inline-flex;justify-content:center;margin-left:4px;padding:2px;transition:all .15s ease}.btn-link-icon:hover{background:#4285f41a;color:#4285f4;color:var(--primary-color,#4285f4)}.btn-link-icon:focus{box-shadow:0 0 0 2px #4285f44d;outline:none}.sync-badge{border-radius:50%;justify-content:center;margin-left:6px;padding:2px}.sync-badge.synced{color:var(--success-color)}.sync-badge.differs{color:var(--warning-color)}.sync-badge.orphaned{color:var(--danger-color);cursor:pointer}.sync-badge.orphaned:hover{color:var(--danger-hover)}.sync-badge.suggestion{color:#4285f4;color:var(--primary-color,#4285f4);opacity:.7}.sync-badge.unlinked{color:var(--text-muted);opacity:.6}.sync-badge.unlinked.has-suggestion{color:#4285f4;color:var(--primary-color,#4285f4);opacity:.5}.suggested-match-badge{align-items:center;background:color-mix(in srgb,#4285f4 10%,#0000);background:color-mix(in srgb,var(--primary-color,#4285f4) 10%,#0000);border:1px solid color-mix(in srgb,#4285f4 30%,#0000);border:1px solid color-mix(in srgb,var(--primary-color,#4285f4) 30%,#0000);border-radius:12px;color:#4285f4;color:var(--primary-color,#4285f4);cursor:pointer;display:inline-flex;font-size:11px;gap:4px;margin-bottom:4px;max-width:100%;overflow:hidden;padding:2px 8px;text-overflow:ellipsis;white-space:nowrap}.suggested-match-badge:hover{background:color-mix(in srgb,#4285f4 20%,#0000);background:color-mix(in srgb,var(--primary-color,#4285f4) 20%,#0000);border-color:#4285f4;border-color:var(--primary-color,#4285f4)}.suggested-match-badge span{overflow:hidden;text-overflow:ellipsis}.server-table .sync-col{text-align:center;width:70px}.server-table .sync-col .btn-link-icon{margin-left:0}.protected-badge{align-items:center;color:#f59e0b;color:var(--warning-color,#f59e0b);cursor:help;display:inline-flex;flex-shrink:0}.contact-header{align-items:center;display:flex;flex-wrap:wrap;gap:6px}.contact-header .btn-link-icon,.contact-header .sync-badge{flex-shrink:0}.location-header{align-items:center;display:flex;flex-wrap:wrap;gap:6px}.location-header .btn-link-icon,.location-header .sync-badge{flex-shrink:0}.equipment-name{align-items:center;display:flex;flex-wrap:wrap;gap:4px}.equipment-name .btn-link-icon,.equipment-name .sync-badge{flex-shrink:0}.link-picker-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.link-picker-modal{background:#fff;background:var(--card-bg,#fff);border-radius:12px;box-shadow:0 8px 32px #0003;display:flex;flex-direction:column;max-height:80vh;max-width:600px;width:90%}.link-picker-header{align-items:center;border-bottom:1px solid #e0e0e0;border-bottom:1px solid var(--border-color,#e0e0e0);display:flex;justify-content:space-between;padding:16px 20px}.link-picker-header h3{align-items:center;display:flex;font-size:18px;font-weight:600;gap:8px;margin:0}.link-picker-source{background:#f5f5f5;background:var(--bg-secondary,#f5f5f5);border-bottom:1px solid #e0e0e0;border-bottom:1px solid var(--border-color,#e0e0e0);padding:12px 20px}.source-label{color:#666;color:var(--text-secondary,#666);font-size:12px;margin-bottom:4px}.source-record{font-size:14px}.source-meta{color:#666;color:var(--text-secondary,#666)}.link-picker-current{align-items:center;background:var(--success-bg);border-bottom:1px solid #e0e0e0;border-bottom:1px solid var(--border-color,#e0e0e0);display:flex;justify-content:space-between;padding:10px 20px}.current-link-info{align-items:center;color:var(--success-color);display:flex;font-size:13px;gap:6px}.link-picker-search{align-items:center;border-bottom:1px solid #e0e0e0;border-bottom:1px solid var(--border-color,#e0e0e0);display:flex;gap:8px;padding:12px 20px}.link-picker-search input{background:#0000;border:none;flex:1 1;font-size:14px;outline:none}.link-picker-results{flex:1 1;max-height:350px;overflow-y:auto;padding:8px 0}.link-picker-empty,.link-picker-error,.link-picker-loading{color:#666;color:var(--text-secondary,#666);padding:24px 20px;text-align:center}.link-picker-error{align-items:center;color:var(--danger-color);display:flex;gap:8px;justify-content:center}.link-picker-item{align-items:flex-start;cursor:pointer;display:flex;gap:12px;padding:10px 20px;transition:background .15s ease}.link-picker-item:hover{background:#f5f5f5;background:var(--bg-secondary,#f5f5f5)}.link-picker-item.selected{background:#4285f41a}.link-picker-item.linked{background:var(--success-bg);cursor:default}.link-picker-item.suggested{border-left:3px solid #4285f4;border-left:3px solid var(--primary-color,#4285f4)}.link-picker-item-icon{align-items:center;background:#f5f5f5;background:var(--bg-secondary,#f5f5f5);border-radius:50%;color:#666;color:var(--text-secondary,#666);display:flex;flex-shrink:0;height:32px;justify-content:center;width:32px}.link-picker-item-details{flex:1 1;min-width:0}.link-picker-item-name{font-weight:500;margin-bottom:2px}.link-picker-item-meta{color:#666;color:var(--text-secondary,#666);font-size:12px}.link-badge{border-radius:10px;flex-shrink:0;font-size:11px;font-weight:500;padding:2px 8px}.link-badge.current{background:var(--success-color);color:#fff}.link-badge.suggested{background:#4285f4;background:var(--primary-color,#4285f4);color:#fff}.selected-check{color:#4285f4;color:var(--primary-color,#4285f4);flex-shrink:0}.link-picker-footer{border-top:1px solid #e0e0e0;border-top:1px solid var(--border-color,#e0e0e0);display:flex;gap:8px;justify-content:flex-end;padding:12px 20px}.link-picker-footer .btn{align-items:center;display:flex;gap:6px}.sync-error-banner{align-items:center;background:var(--warning-bg);border:1px solid #ffc107;border-radius:6px;color:var(--warning-color);display:flex;gap:8px;margin-bottom:16px;padding:10px 16px}.sync-error-banner svg{flex-shrink:0}.sync-error-banner span{flex:1 1}.sync-error-banner button{background:none;border:none;color:inherit;cursor:pointer;font-size:13px;padding:4px 8px;text-decoration:underline}.sync-error-banner button:hover{color:var(--warning-hover)}.sync-blocked-banner{background:var(--danger-bg);border:1px solid #f5c6cb;border-radius:8px;color:var(--danger-color);display:flex;gap:12px;margin-bottom:16px;padding:16px}.sync-blocked-banner>svg{flex-shrink:0;margin-top:2px}.sync-blocked-content{flex:1 1}.sync-blocked-content strong{display:block;font-size:14px;margin-bottom:8px}.sync-blocked-content p{font-size:13px;margin:0 0 8px}.sync-blocked-list{font-size:13px;margin:8px 0;padding-left:20px}.sync-blocked-list li{margin-bottom:4px}.sync-blocked-action{color:var(--text-muted);font-style:italic}.sync-status-banner.synced{background:var(--success-bg);color:var(--success-color)}.sync-status-banner.differs{background:var(--warning-bg);color:var(--warning-color)}.sync-status-banner.unlinked{background:var(--secondary-bg);color:var(--text-secondary)}.linked-name-link{background:none;border:none;color:var(--primary-color);cursor:pointer;font:inherit;padding:0;text-decoration:underline}.linked-name-link:hover{color:var(--primary-hover);text-decoration:none}.linked-record-link{align-items:center;color:inherit;display:inline-flex;gap:2px;text-decoration:underline;-webkit-text-decoration-style:dotted;text-decoration-style:dotted}.linked-record-link:hover{color:var(--primary-color);-webkit-text-decoration-style:solid;text-decoration-style:solid}.sync-status-banner .linked-record-link{color:inherit}.sync-status-banner .linked-record-link:hover{opacity:.8}.linked-preview-modal .linked-preview-content{display:flex;flex-direction:column;max-height:85vh;max-width:900px;overflow-y:auto;position:relative;width:90%}.linked-preview-body{display:flex;flex:1 1;flex-direction:column;overflow:hidden;padding:0}.linked-preview-body .detail-header{display:none}.linked-preview-body .asset-detail,.linked-preview-body .building-detail{background:#0000;display:flex;flex-direction:column;height:100%;margin:0;min-height:auto;overflow:hidden;padding:0}.linked-preview-body .detail-content{border-radius:0;box-shadow:none;display:flex;flex-direction:column;height:100%;overflow:hidden;padding:0}.linked-preview-body .detail-title{background:#fff;background:var(--card-bg,#fff);border-bottom:1px solid var(--border-color);flex-shrink:0;margin:0;padding:16px 20px;position:-webkit-sticky;position:sticky;top:0;z-index:10}.linked-preview-body .detail-title h1{font-size:20px;margin:0 0 8px}.linked-preview-body .detail-grid{grid-gap:16px;display:grid;flex:1 1;gap:16px;grid-template-columns:repeat(2,1fr);overflow-y:auto;padding:20px}.linked-preview-body .detail-section{margin:0;padding:16px}.linked-preview-body .detail-section h3{font-size:14px;margin-bottom:12px;padding-bottom:8px}.linked-preview-body .detail-field{padding:6px 0}.linked-preview-body .detail-field label{font-size:12px;min-width:110px}.linked-preview-body .detail-field span{font-size:13px}.linked-preview-body .detail-section.full-width{grid-column:1/-1}.linked-preview-modal .infodocs-reveal-close{background:#fff;background:var(--card-bg,#fff);border-radius:50%;box-shadow:0 2px 8px #0000001a;padding:6px;position:absolute;right:12px;top:12px;z-index:20}.linked-preview-modal .infodocs-reveal-close:hover{background:var(--secondary-bg)}.linked-preview-body .detail-title button[title="Delete image"]{display:none!important}.sync-field-indicator{background:var(--secondary-bg);border-radius:6px;font-size:12px;margin-top:8px;padding:8px 10px}.sync-values{align-items:center;display:flex;gap:8px}.sync-value{border-radius:4px;flex:1 1;padding:4px 8px;transition:all .15s}.sync-value.active{background:var(--info-bg);color:var(--primary-color);font-weight:500}.sync-value.inactive{color:var(--text-muted)}.sync-direction-btn{align-items:center;background:var(--card-bg);border:1px solid var(--border-color);border-radius:50%;color:var(--primary-color);cursor:pointer;display:flex;height:28px;justify-content:center;padding:0;transition:all .15s;width:28px}.sync-direction-btn:hover{background:var(--primary-color);border-color:var(--primary-color);color:#fff;transform:scale(1.1)}.link-options-section{background:var(--secondary-bg);border-top:1px solid var(--border-color);margin:16px -20px 0;padding:16px 20px}.link-options{display:flex;flex-direction:column;gap:8px}.link-option{align-items:center;background:var(--card-bg);border:1px solid var(--border-color);border-radius:6px;cursor:pointer;display:flex;gap:10px;padding:12px;transition:all .15s}.link-option.selected,.link-option:hover{border-color:var(--primary-color)}.link-option.selected{background:var(--info-bg)}.link-option input[type=radio]{cursor:pointer;margin:0}.link-option span{font-size:13px}.link-option .inline-select{flex:1 1;font-size:12px;margin-left:8px;max-width:200px;padding:6px 8px}.search-section .section-help{color:var(--text-secondary);font-size:13px;margin-bottom:12px}.search-input-wrapper{align-items:center;background:var(--card-bg);border:1px solid var(--border-color);border-radius:6px;display:flex;gap:10px;padding:10px 12px}.search-input-wrapper input{background:#0000;border:none;color:var(--text-primary);flex:1 1;font-size:14px;outline:none}.search-results{border-radius:6px;max-height:250px}.search-result-item{align-items:center;border-bottom:1px solid var(--border-color);display:flex;gap:10px;padding:10px 12px;transition:background .15s}.search-result-item:last-child{border-bottom:none}.search-result-item:focus,.search-result-item:hover{background:var(--info-bg);outline:none}.result-details{flex:1 1;min-width:0}.result-name{color:var(--text-primary);display:block;font-weight:500}.result-meta{color:var(--text-secondary);display:block;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.search-empty{color:var(--text-muted);font-size:13px;padding:20px;text-align:center}.selected-user-banner{align-items:center;background:var(--info-bg);border:1px solid var(--primary-color);border-radius:6px;display:flex;gap:12px;margin-bottom:20px;padding:12px}.selected-info{flex:1 1;min-width:0}.selected-info strong{display:block;font-weight:600}.selected-info span{color:var(--text-secondary);display:block;font-size:12px}.type-specific-fields{border-top:1px dashed var(--border-color);margin-top:16px;padding-top:16px}.type-specific-fields h5{align-items:center;color:var(--text-muted);display:flex;font-size:12px;font-weight:600;gap:6px;letter-spacing:.5px;margin:0 0 12px;text-transform:uppercase}.ip-list{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.ip-tag{background:var(--info-bg);border:1px solid var(--primary-color);border-radius:4px;font-family:monospace;font-size:12px;gap:4px;padding:4px 8px}.ip-tag,.ip-tag button{align-items:center;display:flex}.ip-tag button{background:none;border:none;color:var(--text-muted);cursor:pointer;justify-content:center;padding:0}.ip-tag button:hover{color:var(--danger-color)}.ip-input-row{display:flex;gap:8px}.ip-input-row input{flex:1 1}.ssid-list{display:flex;flex-direction:column;gap:8px}.ssid-item-edit{align-items:flex-start;display:flex;gap:8px}.ssid-item-edit input{flex:1 1}.btn-edit-mode{align-items:center;background:#f5f5f5;background:var(--background-secondary,#f5f5f5);border:1px solid #e0e0e0;border:1px solid var(--border-color,#e0e0e0);border-radius:6px;color:#666;color:var(--text-secondary,#666);cursor:pointer;display:flex;font-size:13px;font-weight:500;gap:6px;padding:6px 12px;transition:all .15s ease}.btn-edit-mode:hover{background:#ebebeb;background:var(--background-hover,#ebebeb);border-color:#ccc;border-color:var(--border-color-dark,#ccc)}.btn-edit-mode.active{background:#4285f4;background:var(--primary-color,#4285f4);border-color:#4285f4;border-color:var(--primary-color,#4285f4);color:#fff}.btn-edit-mode.active:hover{background:#3367d6;background:var(--primary-hover,#3367d6);border-color:#3367d6;border-color:var(--primary-hover,#3367d6)}.btn-edit-mode .btn-label{font-size:13px}.btn-edit-icon{align-items:center;background:#0000;border:none;border-radius:4px;color:#666;color:var(--text-secondary,#666);cursor:pointer;display:inline-flex;justify-content:center;margin-left:2px;padding:2px;transition:all .15s ease}.btn-edit-icon:hover{background:#34a8531a;color:#34a853;color:var(--success-color,#34a853)}.btn-edit-icon:focus{box-shadow:0 0 0 2px #34a8534d;outline:none}.contact-header .btn-edit-icon,.equipment-name .btn-edit-icon,.location-header .btn-edit-icon{flex-shrink:0}.btn-delete-icon{align-items:center;background:none;border:none;border-radius:4px;color:#666;color:var(--text-secondary,#666);cursor:pointer;display:inline-flex;height:20px;justify-content:center;margin-left:2px;padding:0;transition:color .15s ease,background .15s ease;width:20px}.btn-delete-icon:hover{background:#dc35451a;color:#dc3545;color:var(--error-color,#dc3545)}.btn-delete-icon:focus{box-shadow:0 0 0 2px #dc35454d;outline:none}.contact-header .btn-delete-icon,.equipment-name .btn-delete-icon,.location-header .btn-delete-icon{flex-shrink:0}.server-table .sync-col .btn-delete-icon,.server-table .sync-col .btn-edit-icon{margin-left:2px}.notes-icon-btn{align-items:center;background:#e3f2fd;background:var(--info-bg,#e3f2fd);border:none;border-radius:4px;color:#1976d2;color:var(--info-color,#1976d2);cursor:pointer;display:inline-flex;flex-shrink:0;height:22px;justify-content:center;margin-left:6px;padding:0;position:relative;transition:all .15s ease;width:22px}.notes-icon-btn:hover{background:#1976d2;background:var(--info-color,#1976d2);color:#fff}.notes-icon-btn:focus{box-shadow:0 0 0 2px #1976d24d;outline:none}.notes-tooltip{background:#fff;background:var(--bg-primary,#fff);border:1px solid #e0e0e0;border:1px solid var(--border-color,#e0e0e0);border-radius:6px;bottom:calc(100% + 8px);box-shadow:0 4px 12px #00000026;color:#1a1a2e;color:var(--text-primary,#1a1a2e);font-size:12px;left:50%;line-height:1.5;max-width:280px;min-width:150px;padding:10px 12px;pointer-events:none;position:absolute;transform:translateX(-50%);white-space:pre-wrap;word-break:break-word;z-index:1000}.notes-tooltip:after{border:6px solid #0000;border-top:6px solid var(--bg-primary,#fff)}.notes-tooltip:after,.notes-tooltip:before{content:"";left:50%;position:absolute;top:100%;transform:translateX(-50%)}.notes-tooltip:before{border:7px solid #0000;border-top:7px solid var(--border-color,#e0e0e0)}.notes-modal{background:#fff;background:var(--bg-primary,#fff);border-radius:8px;box-shadow:0 8px 32px #0003;max-width:500px;min-width:300px}.notes-modal .modal-header{align-items:center;border-bottom:1px solid #e0e0e0;border-bottom:1px solid var(--border-light,#e0e0e0);display:flex;justify-content:space-between;padding:16px 20px}.notes-modal .modal-header h3{color:#1a1a2e;color:var(--text-primary,#1a1a2e);font-size:16px;font-weight:600;margin:0}.notes-modal .modal-close-btn{align-items:center;background:#0000;border:none;border-radius:4px;color:#666;color:var(--text-secondary,#666);cursor:pointer;display:flex;height:28px;justify-content:center;padding:0;transition:all .15s;width:28px}.notes-modal .modal-close-btn:hover{background:#f5f5f5;background:var(--bg-secondary,#f5f5f5);color:#1a1a2e;color:var(--text-primary,#1a1a2e)}.notes-modal .modal-body{padding:20px}.notes-modal .notes-content{color:#1a1a2e;color:var(--text-primary,#1a1a2e);font-size:14px;line-height:1.6;white-space:pre-wrap;word-break:break-word}.photos-icon-btn{align-items:center;background:#e8f5e9;background:var(--success-bg,#e8f5e9);border:none;border-radius:4px;color:#2e7d32;color:var(--success-color,#2e7d32);cursor:pointer;display:inline-flex;flex-shrink:0;font-size:11px;font-weight:500;gap:3px;height:22px;justify-content:center;margin-left:6px;padding:0 6px;transition:all .15s ease}.photos-icon-btn:hover{background:#2e7d32;background:var(--success-color,#2e7d32);color:#fff}.photos-icon-btn:focus{box-shadow:0 0 0 2px #2e7d324d;outline:none}.photos-icon-btn .photos-count{font-size:10px}.photo-gallery-modal{display:flex;flex-direction:column;max-height:90vh;max-width:900px;overflow:hidden;width:95vw}.photo-gallery-modal .modal-header{align-items:center;border-bottom:1px solid #e0e0e0;border-bottom:1px solid var(--border-light,#e0e0e0);display:flex;flex-shrink:0;justify-content:space-between;padding:16px 20px}.photo-gallery-modal .modal-header h3{align-items:center;color:#1a1a2e;color:var(--text-primary,#1a1a2e);display:flex;font-size:16px;font-weight:600;gap:8px;margin:0}.photo-gallery-modal .photo-counter{color:#666;color:var(--text-secondary,#666);font-size:12px;font-weight:400;margin-left:8px}.photo-gallery-modal .modal-header-actions{align-items:center;display:flex;gap:8px}.photo-gallery-modal .btn-back-to-grid{align-items:center;background:#f5f5f5;background:var(--bg-secondary,#f5f5f5);border:1px solid #e0e0e0;border:1px solid var(--border-color,#e0e0e0);border-radius:4px;color:#666;color:var(--text-secondary,#666);cursor:pointer;display:flex;height:32px;justify-content:center;transition:all .15s;width:32px}.photo-gallery-modal .btn-back-to-grid:hover{background:#1a73e8;background:var(--primary-color,#1a73e8);border-color:#1a73e8;border-color:var(--primary-color,#1a73e8);color:#fff}.photo-gallery-modal .modal-body{flex:1 1;overflow:auto;padding:20px}.photo-mosaic-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.photo-mosaic-item{aspect-ratio:1;background:#f5f5f5;background:var(--bg-secondary,#f5f5f5);border-radius:8px;cursor:pointer;overflow:hidden;position:relative;transition:transform .15s ease,box-shadow .15s ease}.photo-mosaic-item:hover{box-shadow:0 4px 12px #00000026;transform:scale(1.02)}.photo-mosaic-item:focus{box-shadow:0 0 0 3px #1a73e8;box-shadow:0 0 0 3px var(--primary-color,#1a73e8);outline:none}.photo-mosaic-item img{height:100%;object-fit:cover;width:100%}.photo-mosaic-item.photo-error{align-items:center;color:#666;color:var(--text-secondary,#666);display:flex;justify-content:center}.photo-mosaic-item.photo-error:after{content:"Failed to load";font-size:12px}.photo-mosaic-overlay{background:linear-gradient(#0000,#000000b3);bottom:0;left:0;opacity:0;padding:8px 10px;position:absolute;right:0;transition:opacity .15s ease}.photo-mosaic-item:hover .photo-mosaic-overlay{opacity:1}.photo-filename-preview{color:#fff;display:block;font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.photo-focused-view{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:400px;position:relative}.photo-focused-view .focused-photo{border-radius:8px;box-shadow:0 4px 20px #0003;max-height:60vh;max-width:100%;object-fit:contain}.photo-focused-view .photo-error{align-items:center;color:#666;color:var(--text-secondary,#666);flex-direction:column;gap:12px;justify-content:center;min-height:300px}.photo-nav-btn{align-items:center;background:#ffffffe6;border:none;border-radius:50%;box-shadow:0 2px 8px #00000026;color:#1a1a2e;color:var(--text-primary,#1a1a2e);cursor:pointer;display:flex;height:48px;justify-content:center;position:absolute;top:50%;transform:translateY(-50%);transition:all .15s ease;width:48px}.photo-nav-btn:hover{background:#fff;box-shadow:0 4px 12px #0003}.photo-nav-btn.prev{left:12px}.photo-nav-btn.next{right:12px}.focused-photo-info{margin-top:16px;text-align:center}.focused-photo-info .photo-filename{color:#1a1a2e;color:var(--text-primary,#1a1a2e);display:block;font-size:14px;font-weight:500}.focused-photo-info .photo-date{color:#666;color:var(--text-secondary,#666);display:block;font-size:12px;margin-top:4px}.focused-photo-info .primary-label{border-radius:12px;box-shadow:0 1px 3px #0003;display:inline-flex;font-size:12px;font-weight:600;gap:4px;margin-top:8px;padding:4px 10px}.focused-photo-info .primary-label,.photo-mosaic-item .primary-badge{align-items:center;background:linear-gradient(135deg,gold,#ffb700);color:#333}.photo-mosaic-item .primary-badge{border-radius:50%;box-shadow:0 2px 4px #0000004d;display:flex;height:24px;justify-content:center;position:absolute;right:8px;top:8px;width:24px;z-index:5}.photo-mosaic-item.is-primary{box-shadow:0 0 0 3px #ffc107,0 2px 8px #0000001a;box-shadow:0 0 0 3px var(--warning-color,#ffc107),0 2px 8px #0000001a}.photo-upload-section{border-top:1px solid #e0e0e0;border-top:1px solid var(--border-light,#e0e0e0);margin-top:24px;padding-top:20px}.photo-upload-section h4{align-items:center;color:#1a1a2e;color:var(--text-primary,#1a1a2e);display:flex;font-size:14px;font-weight:600;gap:8px;margin:0 0 16px}.photo-upload-section .photo-count-badge{align-items:center;background:#e8f5e9;background:var(--success-bg,#e8f5e9);border-radius:10px;color:#2e7d32;color:var(--success-color,#2e7d32);display:inline-flex;font-size:11px;font-weight:500;height:20px;justify-content:center;min-width:20px;padding:0 6px}.photo-list{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.photo-list-item{align-items:center;background:#f5f5f5;background:var(--bg-secondary,#f5f5f5);border-radius:6px;display:flex;gap:12px;padding:8px 12px}.photo-list-item .photo-thumbnail{background:#e8e8e8;background:var(--bg-tertiary,#e8e8e8);border-radius:4px;flex-shrink:0;height:48px;overflow:hidden;width:48px}.photo-list-item .photo-thumbnail img{height:100%;object-fit:cover;width:100%}.photo-list-item .photo-info{flex:1 1;min-width:0}.photo-list-item .photo-name{color:#1a1a2e;color:var(--text-primary,#1a1a2e);display:block;font-size:13px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.photo-list-item .photo-date{color:#666;color:var(--text-secondary,#666);display:block;font-size:11px;margin-top:2px}.photo-list-item .btn-remove-photo{align-items:center;background:#0000;border:none;border-radius:4px;color:#666;color:var(--text-secondary,#666);cursor:pointer;display:flex;flex-shrink:0;height:28px;justify-content:center;transition:all .15s ease;width:28px}.photo-list-item .btn-remove-photo:hover{background:#ffebee;background:var(--danger-bg,#ffebee);color:#c62828;color:var(--danger-color,#c62828)}.photo-list-item .photo-actions{align-items:center;display:flex;gap:4px}.photo-list-item .btn-set-primary{align-items:center;background:#0000;border:none;border-radius:4px;color:#666;color:var(--text-secondary,#666);cursor:pointer;display:flex;flex-shrink:0;height:28px;justify-content:center;transition:all .15s ease;width:28px}.photo-list-item .btn-set-primary:hover{background:#fff3cd;background:var(--warning-bg,#fff3cd);color:#e6a400;color:var(--warning-color,#e6a400)}.photo-list-item .btn-set-primary:disabled{cursor:not-allowed;opacity:.5}.photo-list-item.is-primary{background:#d4edda;background:var(--success-bg,#d4edda);border:1px solid #c3e6cb;border:1px solid var(--success-border,#c3e6cb)}.photo-list-item .photo-thumbnail{position:relative}.photo-list-item .primary-badge{align-items:center;background:#e6a400;background:var(--warning-color,#e6a400);border-radius:50%;box-shadow:0 1px 2px #0003;color:#fff;display:flex;height:18px;justify-content:center;position:absolute;right:2px;top:2px;width:18px}.photo-list-item .primary-label{background:#28a745;background:var(--success-color,#28a745);border-radius:3px;color:#fff;display:inline-block;font-size:10px;font-weight:600;margin-left:8px;padding:2px 6px;text-transform:uppercase}.photo-upload-actions{display:flex;gap:8px}.btn-upload-photo{gap:6px}.btn-upload-photo,.isp-designation{align-items:center;display:inline-flex}.isp-designation{background:#e8e8e8;background:var(--secondary-bg,#e8e8e8);border-radius:3px;color:#666;color:var(--text-secondary,#666);font-size:10px;font-weight:600;letter-spacing:.3px;margin-left:6px;padding:2px 6px;text-transform:uppercase}.isp-designation.primary{background:#d1fae5;background:var(--success-bg,#d1fae5);color:#059669;color:var(--success-color,#059669)}.isp-designation.backup{background:#fef3c7;background:var(--warning-bg,#fef3c7);color:#b45309;color:var(--warning-dark,#b45309)}.isp-designation.failover{background:#dbeafe;background:var(--info-bg,#dbeafe);color:#2563eb;color:var(--primary-color,#2563eb)}.storage-type-badge{align-items:center;border-radius:4px;display:inline-flex;font-size:10px;font-weight:600;letter-spacing:.5px;margin-left:8px;padding:2px 8px;text-transform:uppercase}.storage-type-badge.nas{background:#e3f2fd;background:var(--info-bg,#e3f2fd);color:#1565c0;color:var(--info-color,#1565c0)}.storage-type-badge.san{background:#f3e5f5;background:var(--purple-bg,#f3e5f5);color:#7b1fa2;color:var(--purple-color,#7b1fa2)}.storage-type-badge.array{background:#f5f5f5;background:var(--secondary-bg,#f5f5f5);color:#666;color:var(--text-secondary,#666)}.storage-type-badge.das{background:#fff3e0;background:var(--warning-bg,#fff3e0);color:#e65100;color:var(--warning-dark,#e65100)}.rack-badge,.rack-tag{align-items:center;background:#e8e8e8;background:var(--secondary-bg,#e8e8e8);border-radius:3px;color:#666;color:var(--text-secondary,#666);display:inline-flex;font-size:10px;font-weight:500;margin-left:6px;padding:2px 6px}.rack-tag{margin-left:0;margin-top:4px}.access-type-badge{align-items:center;border-radius:4px;display:inline-flex;font-size:10px;font-weight:600;letter-spacing:.5px;margin-left:8px;padding:2px 8px;text-transform:uppercase}.access-type-badge.controller{background:#e8f5e9;background:var(--success-bg,#e8f5e9);color:#2e7d32;color:var(--success-color,#2e7d32)}.access-type-badge.nvr{background:#e3f2fd;background:var(--info-bg,#e3f2fd);color:#1565c0;color:var(--info-color,#1565c0)}.access-type-badge.keypad,.access-type-badge.reader{background:#f5f5f5;background:var(--secondary-bg,#f5f5f5);color:#666;color:var(--text-secondary,#666)}.phone-type-badge{align-items:center;border-radius:4px;display:inline-flex;font-size:10px;font-weight:600;letter-spacing:.5px;margin-left:8px;padding:2px 8px;text-transform:uppercase}.phone-type-badge.cloud{background:#e3f2fd;background:var(--info-bg,#e3f2fd);color:#1565c0;color:var(--info-color,#1565c0)}.phone-type-badge.pbx{background:#f5f5f5;background:var(--secondary-bg,#f5f5f5);color:#666;color:var(--text-secondary,#666)}.phone-type-badge.voip{background:#e8f5e9;background:var(--success-bg,#e8f5e9);color:#2e7d32;color:var(--success-color,#2e7d32)}.cluster-item{background:#fff;background:var(--card-bg,#fff);border:1px solid #e0e0e0;border:1px solid var(--border-color,#e0e0e0);border-radius:8px;margin-bottom:12px;padding:12px}.phone-systems-list{display:flex;flex-direction:column;gap:12px}.cluster-card,.phone-system-item{background:#fff;background:var(--card-bg,#fff);border:1px solid #e0e0e0;border:1px solid var(--border-color,#e0e0e0);border-radius:8px;padding:12px}.cluster-card,.cluster-header{margin-bottom:8px}.cluster-header{align-items:center;display:flex;gap:8px}.cluster-name{color:#333;color:var(--text-primary,#333);font-weight:600}.cluster-type-badge{background:#e8e8e8;background:var(--secondary-bg,#e8e8e8);color:#666;color:var(--text-secondary,#666);font-size:10px;font-weight:500;padding:2px 6px}.cluster-type-badge,.dynamic-badge{align-items:center;border-radius:3px;display:inline-flex}.dynamic-badge{background:#e3f2fd;background:var(--info-bg,#e3f2fd);color:#1565c0;color:var(--info-color,#1565c0);font-size:9px;font-weight:600;letter-spacing:.5px;margin-left:8px;padding:2px 8px;text-transform:uppercase}.cluster-details{display:flex;flex-direction:column;gap:6px}.cluster-guests,.cluster-nodes,.cluster-storage,.vm-guests{align-items:center;display:flex;flex-wrap:wrap;font-size:13px;gap:6px}.detail-label{color:#666;color:var(--text-secondary,#666);min-width:50px}.member-tag{align-items:center;border-radius:4px;display:inline-flex;font-size:11px;font-weight:500;padding:2px 8px}.member-tag.host{background:#f3e5f5;background:var(--purple-bg,#f3e5f5);color:#7b1fa2;color:var(--purple-color,#7b1fa2)}.member-tag.guest{background:#e3f2fd;background:var(--info-bg,#e3f2fd);color:#1565c0;color:var(--info-color,#1565c0)}.vm-host-card{background:#fff;background:var(--card-bg,#fff);border:1px solid #e0e0e0;border:1px solid var(--border-color,#e0e0e0);border-radius:8px;margin-bottom:8px;padding:12px}.vm-host-header{align-items:center;display:flex;gap:8px;margin-bottom:8px}.vm-host-name{color:#333;color:var(--text-primary,#333);font-weight:600}.platform-badge{align-items:center;background:#e8e8e8;background:var(--secondary-bg,#e8e8e8);border-radius:3px;color:#666;color:var(--text-secondary,#666);display:inline-flex;font-size:10px;font-weight:500;padding:2px 6px}.rack-card{background:#fff;background:var(--card-bg,#fff);border:1px solid #e0e0e0;border:1px solid var(--border-color,#e0e0e0);border-radius:8px;margin-bottom:8px;padding:12px}.rack-header{align-items:center;display:flex;gap:8px;margin-bottom:8px}.rack-name{color:#333;color:var(--text-primary,#333);font-weight:600}.rack-count{color:#666;color:var(--text-secondary,#666);font-size:12px}.rack-items{display:flex;flex-wrap:wrap;gap:6px}.rack-item-tag{align-items:center;background:#f5f5f5;background:var(--secondary-bg,#f5f5f5);border-radius:4px;color:#666;color:var(--text-secondary,#666);display:inline-flex;font-size:11px;font-weight:500;padding:2px 8px}.rack-item-tag.server{background:#f3e5f5;background:var(--purple-bg,#f3e5f5);color:#7b1fa2;color:var(--purple-color,#7b1fa2)}.rack-item-tag.storage{background:#e3f2fd;background:var(--info-bg,#e3f2fd);color:#1565c0;color:var(--info-color,#1565c0)}.rack-item-tag.switch{background:#e8f5e9;background:var(--success-bg,#e8f5e9);color:#2e7d32;color:var(--success-color,#2e7d32)}.rack-item-tag.firewall{background:#fff3e0;background:var(--warning-bg,#fff3e0);color:#e65100;color:var(--warning-dark,#e65100)}.rack-item-tag.accessPoint{background:#e0f7fa;background:var(--cyan-bg,#e0f7fa);color:#00838f;color:var(--cyan-color,#00838f)}.synced-fields-section .section-header{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-bottom:12px}.synced-fields-section .section-header h4{align-items:center;color:#333;color:var(--text-primary,#333);display:flex;font-size:13px;font-weight:600;gap:6px;margin:0}.synced-fields-section .section-header h4 svg{color:#4285f4;color:var(--primary-color,#4285f4)}.section-subtitle{color:#999;color:var(--text-muted,#999);font-size:11px;font-weight:400;margin-left:6px}.add-field-btn{align-items:center;display:flex;font-size:11px;gap:4px;padding:4px 8px}.add-field-btn svg{height:12px;width:12px}.add-field-dropdown{border-radius:6px;max-height:250px;min-width:180px;top:calc(100% + 4px)}.add-field-dropdown button{background:none;border:none;color:#333;color:var(--text-primary,#333);cursor:pointer;display:block;font-size:13px;padding:8px 12px;text-align:left;transition:background .15s;width:100%}.add-field-dropdown button:hover{background:#e3f2fd;background:var(--info-bg,#e3f2fd)}.add-field-dropdown button:not(:last-child){border-bottom:1px solid #f0f0f0;border-bottom:1px solid var(--border-light,#f0f0f0)}.add-field-dropdown .no-fields{color:#999;color:var(--text-muted,#999);font-size:12px;font-style:italic;padding:12px;text-align:center}.synced-fields-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.field-category-section{margin-bottom:16px}.field-category-section:last-child{margin-bottom:0}.field-category-header{border-bottom:1px solid #f0f0f0;border-bottom:1px solid var(--border-light,#f0f0f0);color:#666;color:var(--text-secondary,#666);font-size:12px;font-weight:600;letter-spacing:.5px;margin:0 0 10px;padding-bottom:6px;text-transform:uppercase}.infodocs-fields-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.loading-fields{color:#999;color:var(--text-muted,#999)}.loading-fields svg.spinning{animation:spin 1s linear infinite}.synced-field{position:relative}.synced-field .field-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:4px}.synced-field .field-header label{color:#666;color:var(--text-secondary,#666);font-size:12px;font-weight:500;margin:0}.btn-remove-field{align-items:center;background:none;border:none;border-radius:3px;color:#999;color:var(--text-muted,#999);cursor:pointer;display:flex;height:18px;justify-content:center;opacity:0;padding:0;transition:all .15s;width:18px}.synced-field:hover .btn-remove-field{opacity:1}.btn-remove-field:hover{background:#ffebee;background:var(--danger-bg,#ffebee);color:#dc3545;color:var(--danger-color,#dc3545)}.synced-fields-empty{background:#f5f5f5;background:var(--secondary-bg,#f5f5f5);border-radius:6px;color:#999;color:var(--text-muted,#999);font-size:13px;font-style:italic;padding:16px;text-align:center}.modal-description{color:#666;color:var(--text-secondary,#666);font-size:13px;line-height:1.5;margin-bottom:16px}.site-access-entries{display:flex;flex-direction:column;gap:16px}.site-access-entry{background:#fff;background:var(--card-bg,#fff);border:1px solid #e0e0e0;border:1px solid var(--border-color,#e0e0e0);border-radius:8px;padding:12px}.site-access-entry .entry-header{align-items:flex-start;display:flex;gap:12px;margin-bottom:12px}.site-access-entry .location-select{flex:1 1}.site-access-entry .location-select label{align-items:center;color:var(--text-secondary);display:flex;font-size:11px;gap:4px;margin-bottom:4px}.add-entry-btn{align-self:flex-start}.nuances-items{display:flex;flex-direction:column;gap:12px}.nuance-item{align-items:flex-start;display:flex;gap:8px}.nuance-bullet{color:#6366f1;color:var(--primary-color,#6366f1);font-size:18px;line-height:1;padding-top:8px}.nuance-item textarea{flex:1 1;min-height:56px;resize:vertical}.nuance-actions{display:flex;flex-direction:column;gap:2px}.nuance-actions .btn-sm{font-size:11px;min-width:24px;padding:2px 4px}.nuance-actions .btn-icon{height:24px;width:24px}.add-item-btn{align-self:flex-start}.company-editor-modal .form-section{margin-bottom:20px}.company-editor-modal .section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.company-editor-modal .section-header h4{color:var(--text-primary);font-size:14px;font-weight:600;margin:0}.company-editor-modal .fields-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(2,1fr)}.company-editor-modal .fields-grid .form-group.full-width{grid-column:1/-1}.add-field-container,.add-field-dropdown-wrapper{position:relative}.add-field-dropdown{background:#fff;background:var(--card-bg,#fff);border:1px solid #e0e0e0;border:1px solid var(--border-color,#e0e0e0);border-radius:8px;box-shadow:0 4px 12px #00000026;margin-top:4px;max-height:300px;min-width:200px;overflow-y:auto;position:absolute;right:0;top:100%;z-index:100}.add-field-dropdown .dropdown-item{align-items:center;background:#0000;border:none;color:var(--text-primary);cursor:pointer;display:flex;font-size:13px;gap:8px;padding:8px 12px;text-align:left;transition:background .15s;width:100%}.add-field-dropdown .dropdown-item:hover{background:#6366f11a;background:var(--primary-bg,#6366f11a)}.add-field-dropdown .dropdown-item.custom-field{color:var(--text-secondary)}.add-field-dropdown .dropdown-divider{background:#e0e0e0;background:var(--border-color,#e0e0e0);height:1px;margin:4px 0}.add-field-dropdown .create-field-item{color:#6366f1;color:var(--primary-color,#6366f1);font-weight:500}.field-badge{background:#f5f5f5;background:var(--secondary-bg,#f5f5f5);border-radius:4px;color:var(--text-secondary);font-size:10px;margin-left:auto;padding:2px 6px}.field-badge.custom{background:#e0f2fe;background:var(--info-bg,#e0f2fe);color:#0ea5e9;color:var(--info-color,#0ea5e9)}.create-field-modal-overlay{align-items:center;background:#0006;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1100}.create-field-modal{background:#fff;background:var(--card-bg,#fff);border-radius:12px;box-shadow:0 8px 24px #0003;max-width:400px;padding:24px;width:90%}.create-field-modal h4{font-size:18px;font-weight:600;margin:0 0 8px}.create-field-modal .modal-description{margin-bottom:16px}.create-field-modal .modal-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:16px}.loading-fields{align-items:center;color:var(--text-secondary);display:flex;font-size:13px;gap:8px;padding:16px}.infrastructure-picker-modal .picker-toolbar{align-items:center;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:16px}.infrastructure-picker-modal .search-input-wrapper{align-items:center;display:flex;flex:1 1;gap:8px;min-width:200px}.infrastructure-picker-modal .search-input-wrapper svg{color:var(--text-secondary)}.infrastructure-picker-modal .search-input-wrapper input{flex:1 1}.infrastructure-picker-modal .selection-actions{align-items:center;display:flex;gap:12px}.infrastructure-picker-modal .selection-count{color:var(--text-secondary);font-size:13px}.infrastructure-picker-list{border:1px solid var(--border-color);border-radius:8px;max-height:400px;overflow-y:auto}.picker-location-group{border-bottom:1px solid var(--border-color)}.picker-location-group:last-child{border-bottom:none}.picker-location-header{background:#f5f5f5;background:var(--bg-secondary,#f5f5f5);color:var(--text-secondary);font-size:13px;font-weight:600;padding:8px 12px;position:-webkit-sticky;position:sticky;top:0;z-index:1}.picker-items{padding:4px}.picker-item{align-items:center;border-radius:6px;cursor:pointer;display:flex;gap:10px;padding:8px 12px;transition:background .15s}.picker-item:hover{background:#f0f0f0;background:var(--hover-bg,#f0f0f0)}.picker-item.selected{background:#e0f2fe;background:var(--primary-light,#e0f2fe)}.picker-item.inactive{opacity:.6}.picker-item-checkbox{align-items:center;background:#fff;border:2px solid var(--border-color);border-radius:4px;display:flex;height:18px;justify-content:center;width:18px}.picker-item.selected .picker-item-checkbox{background:#0ea5e9;background:var(--primary-color,#0ea5e9);border-color:#0ea5e9;border-color:var(--primary-color,#0ea5e9);color:#fff}.picker-item-icon{color:var(--text-secondary)}.picker-item-info{flex:1 1;min-width:0}.picker-item-name{font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.picker-item-meta{color:var(--text-secondary);display:flex;font-size:12px;gap:8px}.picker-item-type{background:#f5f5f5;background:var(--bg-secondary,#f5f5f5);border-radius:4px;padding:2px 6px}.picker-item-details{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.picker-empty{color:var(--text-secondary);padding:32px;text-align:center}.infrastructure-selection{display:flex;flex-direction:column;gap:12px}.selected-infrastructure-list{display:flex;flex-wrap:wrap;gap:8px}.selected-infra-item{align-items:center;background:#f5f5f5;background:var(--bg-secondary,#f5f5f5);border-radius:6px;display:flex;font-size:13px;gap:8px;padding:6px 10px}.selected-infra-item .infra-name{font-weight:500}.selected-infra-item .infra-location{color:var(--text-secondary);font-size:12px}.selected-infra-item .btn-icon{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:2px}.selected-infra-item .btn-icon:hover{color:#ef4444;color:var(--danger-color,#ef4444)}.no-infrastructure{color:var(--text-secondary);font-size:13px;font-style:italic}.vendor-card.editable{cursor:pointer;transition:box-shadow .15s}.vendor-card.editable:hover{box-shadow:0 0 0 2px #0ea5e9;box-shadow:0 0 0 2px var(--primary-color,#0ea5e9)}.service-account-card.editable{cursor:pointer;transition:box-shadow .15s}.service-account-card.editable:hover{box-shadow:0 0 0 2px #0ea5e9;box-shadow:0 0 0 2px var(--primary-color,#0ea5e9)}.item-notes-icon{color:var(--text-secondary);cursor:pointer}.item-notes-icon:hover{color:#0ea5e9;color:var(--primary-color,#0ea5e9)}.section-header-editable{align-items:center;display:flex;justify-content:space-between}.section-header-editable h3{margin:0}.modal-footer-right,.section-header-actions{display:flex;gap:8px}.modal-footer-right{margin-left:auto}.vendor-linked-infra{border-top:1px solid var(--border-color);display:flex;flex-wrap:wrap;gap:4px;margin-top:8px;padding-top:8px}.linked-infra-badge{background:#f5f5f5;background:var(--bg-secondary,#f5f5f5);color:var(--text-secondary)}.linked-infra-badge svg{height:12px;width:12px}.notes-icon{align-items:center;color:var(--text-secondary);display:inline-flex;margin-left:auto}.notes-icon:hover{color:#0ea5e9;color:var(--primary-color,#0ea5e9)}.account-header{align-items:center;display:flex;gap:8px}.vendor-infrastructure{border-top:1px solid var(--border-color);color:var(--text-secondary);font-size:12px;margin-top:8px;padding-top:8px}.file-storages-list{display:flex;flex-direction:column;gap:12px}.linked-infrastructure-badges{border-top:1px solid #e0e0e0;border-top:1px solid var(--border-color,#e0e0e0);display:flex;flex-wrap:wrap;gap:6px;margin-top:8px;padding-top:8px}.linked-infra-badge{align-items:center;background:#f0f0f0;background:var(--secondary-bg,#f0f0f0);border-radius:4px;color:#666;color:var(--text-secondary,#666);display:inline-flex;font-size:11px;font-weight:500;gap:4px;padding:2px 8px}.linked-infra-badge svg{flex-shrink:0}.facility-diagram-preview.clickable{cursor:pointer;transition:transform .15s ease,box-shadow .15s ease}.facility-diagram-preview.clickable:hover{box-shadow:0 4px 12px #00000026;transform:scale(1.02)}.facility-diagram-preview.clickable:focus{box-shadow:0 0 0 3px #1a73e8;box-shadow:0 0 0 3px var(--primary-color,#1a73e8);outline:none}.diagram-gallery-modal{display:flex;flex-direction:column;max-height:90vh;max-width:1000px;overflow:hidden;width:95vw}.diagram-gallery-modal .modal-header{align-items:center;border-bottom:1px solid #e0e0e0;border-bottom:1px solid var(--border-light,#e0e0e0);display:flex;flex-shrink:0;justify-content:space-between;padding:16px 20px}.diagram-gallery-modal .modal-header h3{align-items:center;color:#1a1a2e;color:var(--text-primary,#1a1a2e);display:flex;font-size:16px;font-weight:600;gap:8px;margin:0}.diagram-gallery-modal .modal-header-actions{align-items:center;display:flex;gap:8px}.diagram-gallery-modal .modal-body{flex:1 1;overflow:auto;padding:20px}.diagram-mosaic-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.diagram-mosaic-item{background:#f5f5f5;background:var(--bg-secondary,#f5f5f5);border:2px solid #e0e0e0;border:2px solid var(--border-color,#e0e0e0);border-radius:8px;cursor:pointer;overflow:hidden;position:relative;transition:transform .15s ease,box-shadow .15s ease}.diagram-mosaic-item:hover{border-color:#1a73e8;border-color:var(--primary-color,#1a73e8);box-shadow:0 4px 12px #00000026;transform:scale(1.02)}.diagram-mosaic-item:focus{box-shadow:0 0 0 3px #1a73e8;box-shadow:0 0 0 3px var(--primary-color,#1a73e8);outline:none}.diagram-mosaic-item img{display:block;height:auto;max-height:200px;object-fit:contain;width:100%}.diagram-mosaic-overlay{background:linear-gradient(#0000,#000000b3);bottom:0;color:#fff;left:0;padding:8px 12px;position:absolute;right:0}.diagram-name-preview{display:block;font-size:13px;font-weight:500}.diagram-mosaic-overlay .room-count{display:block;font-size:11px;margin-top:2px;opacity:.8}.diagram-focused-view{align-items:center;display:flex;flex-direction:column;position:relative}.diagram-focused-wrapper{display:block;max-width:100%;position:relative;width:100%}.diagram-focused-wrapper .focused-diagram{border-radius:8px;display:block;max-height:65vh;max-width:100%;object-fit:contain}.diagram-focused-wrapper .diagram-crop-viewport .focused-diagram{max-height:none}.diagram-room-marker-large{color:#ef4444;color:var(--danger-color,#ef4444);cursor:pointer;filter:drop-shadow(0 2px 4px rgba(0,0,0,.4));position:absolute;transform:translate(-50%,-100%);z-index:10}.diagram-room-marker-large:hover{color:#3b82f6;color:var(--primary-color,#3b82f6);transform:translate(-50%,-100%) scale(1.2);z-index:20}.marker-label-large{background:#3b82f6;background:var(--primary-color,#3b82f6);border-radius:4px;box-shadow:0 2px 6px #0000004d;color:#fff;font-size:12px;font-weight:600;left:50%;margin-top:4px;opacity:0;padding:3px 10px;pointer-events:none;position:absolute;top:100%;transform:translateX(-50%);transition:opacity .15s ease;white-space:nowrap}.diagram-room-marker-large:hover .marker-label-large{opacity:1}.desktop-config-subsection{border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--border-color,#e5e7eb);margin-bottom:16px;padding-bottom:16px}.desktop-config-subsection:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.desktop-config-subsection h4{align-items:center;color:#6b7280;color:var(--text-secondary,#6b7280);display:flex;font-size:13px;font-weight:600;gap:6px;letter-spacing:.5px;margin:0 0 10px;text-transform:uppercase}.desktop-config-subsection h4 svg{color:#3b82f6;color:var(--primary-color,#3b82f6)}.desktop-config-content{display:flex;flex-direction:column;gap:8px}.badge-list{align-items:flex-start;display:flex;flex-wrap:wrap;gap:8px}.app-badge{align-items:center;background:#fff;background:var(--card-bg,#fff);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:6px;color:#1f2937;color:var(--text-primary,#1f2937);display:inline-flex;flex-wrap:wrap;font-size:13px;font-weight:500;gap:6px;padding:6px 12px}.app-badge.browser-badge{border-left:3px solid #3b82f6;border-left:3px solid var(--primary-color,#3b82f6)}.badge-tag{border-radius:4px;font-size:10px;font-weight:500;letter-spacing:.3px;padding:2px 6px;text-transform:uppercase}.badge-tag.default{background:#eff6ff;background:var(--primary-bg,#eff6ff);color:#3b82f6;color:var(--primary-color,#3b82f6)}.badge-tag.managed{background:#dcfce7;background:var(--success-bg,#dcfce7);color:#16a34a;color:var(--success-color,#16a34a)}.badge-tag.version{background:#f3f4f6;background:var(--bg-secondary,#f3f4f6);color:#6b7280;color:var(--text-secondary,#6b7280)}.badge-tag.tier{background:#dbeafe;background:var(--info-bg,#dbeafe);color:#2563eb;color:var(--info-color,#2563eb)}.badge-components{color:#6b7280;color:var(--text-secondary,#6b7280);display:block;font-size:11px;font-style:italic;margin-top:2px}.suite-header{align-items:center;display:flex;gap:8px;margin-bottom:8px}.suite-name{color:#1f2937;color:var(--text-primary,#1f2937);font-size:14px;font-weight:600}.suite-services-list{display:flex;flex-wrap:wrap;gap:6px}.service-badge{align-items:center;background:#eff6ff;background:var(--primary-bg,#eff6ff);border:1px solid #bfdbfe;border:1px solid var(--primary-light,#bfdbfe);border-radius:12px;color:#3b82f6;color:var(--primary-color,#3b82f6);display:inline-flex;font-size:12px;font-weight:500;padding:4px 10px}.collab-badges,.telephony-badges{display:flex;flex-wrap:wrap;gap:6px}.collab-badge,.telephony-badge{align-items:center;background:#fff;background:var(--card-bg,#fff);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:12px;color:#1f2937;color:var(--text-primary,#1f2937);display:inline-flex;font-size:12px;font-weight:500;padding:4px 10px}.custom-apps-list{flex-wrap:wrap;gap:6px}.custom-app-name{align-items:center;background:#fef3c7;background:var(--warning-bg,#fef3c7);border:1px solid #fde68a;border:1px solid var(--warning-light,#fde68a);border-radius:12px;color:#92400e;color:var(--warning-dark,#92400e);display:inline-flex;font-size:12px;font-weight:500;padding:4px 10px}.desktop-config-notes-banner{align-items:flex-start;background:#eff6ff;background:var(--info-bg,#eff6ff);border:1px solid #bfdbfe;border:1px solid var(--info-border,#bfdbfe);border-radius:6px;color:#1e40af;color:var(--info-text,#1e40af);display:flex;font-size:13px;gap:8px;margin-bottom:16px;padding:12px 14px;white-space:pre-wrap}.desktop-config-notes-banner svg{color:#3b82f6;color:var(--info-icon,#3b82f6);flex-shrink:0;margin-top:2px}.custom-apps-list{display:flex;flex-direction:column;gap:24px}.custom-app-card-full{background:#f8fafc;background:var(--bg-secondary,#f8fafc);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:8px;overflow:hidden}.custom-app-header-full{align-items:center;background:#fff;background:var(--card-bg,#fff);border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--border-color,#e5e7eb);display:flex;justify-content:space-between;padding:12px 16px}.custom-app-header-full h4{align-items:center;color:#1f2937;color:var(--text-primary,#1f2937);display:flex;font-size:16px;font-weight:600;gap:8px;margin:0}.custom-app-header-full h4 svg{color:#3b82f6;color:var(--primary-color,#3b82f6)}.app-type-badge{background:#f3f4f6;background:var(--bg-secondary,#f3f4f6);border-radius:4px;color:#6b7280;color:var(--text-secondary,#6b7280);font-size:11px;font-weight:500;letter-spacing:.3px;padding:2px 8px;text-transform:uppercase}.custom-app-actions{display:flex;gap:4px}.custom-app-linked-service{align-items:center;background:#eff6ff;background:var(--info-bg,#eff6ff);border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--border-color,#e5e7eb);display:flex;font-size:13px;gap:8px;padding:10px 16px}.custom-app-linked-service .field-label{color:#6b7280;color:var(--text-secondary,#6b7280);flex-shrink:0;font-weight:600}.custom-app-linked-service .field-value{align-items:center;color:#1f2937;color:var(--text-primary,#1f2937);display:flex;font-weight:500;gap:10px}.custom-app-linked-service .admin-url-link{align-items:center;background:#fff;background:var(--card-bg,#fff);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:4px;color:#3b82f6;color:var(--primary-color,#3b82f6);display:inline-flex;font-size:12px;font-weight:500;gap:4px;padding:3px 8px;text-decoration:none;transition:all .15s ease}.custom-app-linked-service .admin-url-link:hover{background:#3b82f6;background:var(--primary-color,#3b82f6);border-color:#3b82f6;border-color:var(--primary-color,#3b82f6);color:#fff}.credentials-summary-row{background:#fff;background:var(--card-bg,#fff);border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--border-color,#e5e7eb);display:flex;flex-wrap:wrap;gap:24px;padding:12px 16px}.cred-item{display:flex;flex-direction:column;gap:2px}.cred-label{color:#9ca3af;color:var(--text-muted,#9ca3af);font-size:10px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.cred-value{color:#1f2937;color:var(--text-primary,#1f2937);font-size:13px;font-weight:500}.custom-app-category-section{background:#f8fafc;background:var(--bg-secondary,#f8fafc);padding:16px}.custom-app-category-section+.custom-app-category-section{border-top:1px solid #e5e7eb;border-top:1px solid var(--border-color,#e5e7eb)}.category-section-title{color:#2563eb;color:var(--primary-color,#2563eb);font-size:14px;font-weight:600;margin:0 0 12px}.harvester-table-wrapper{background:#fff;background:var(--card-bg,#fff);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:6px;overflow-x:auto}.harvester-table{border-collapse:collapse;font-size:13px;width:100%}.harvester-table th{background:#f8fafc;background:var(--bg-secondary,#f8fafc);border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--border-color,#e5e7eb);color:#6b7280;color:var(--text-secondary,#6b7280);font-weight:600;padding:10px 12px;text-align:left;white-space:nowrap}.harvester-table td{border-bottom:1px solid #f3f4f6;border-bottom:1px solid var(--border-light,#f3f4f6);color:#1f2937;color:var(--text-primary,#1f2937);padding:10px 12px}.harvester-table tr:last-child td{border-bottom:none}.harvester-table .ip-cell{color:#6b7280;color:var(--text-secondary,#6b7280);font-family:SF Mono,Monaco,Inconsolata,monospace;font-size:12px}.harvester-table .status-badge{align-items:center;border-radius:4px;display:inline-flex;font-size:11px;font-weight:500;padding:2px 8px;text-transform:capitalize}.harvester-table .status-badge.functional{background:#dcfce7;background:var(--success-bg,#dcfce7);color:#16a34a;color:var(--success-color,#16a34a)}.harvester-table .status-badge.offline{background:#fee2e2;background:var(--danger-bg,#fee2e2);color:#dc2626;color:var(--danger-color,#dc2626)}.harvester-table .status-badge.maintenance{background:#fef3c7;background:var(--warning-bg,#fef3c7);color:#d97706;color:var(--warning-color,#d97706)}.harvester-table .status-badge.retired{background:#f3f4f6;background:var(--bg-secondary,#f3f4f6);color:#9ca3af;color:var(--text-muted,#9ca3af)}.offline-machines-badges{display:flex;flex-wrap:wrap;gap:8px}.offline-machine-badge{align-items:center;background:#fff;background:var(--card-bg,#fff);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:6px;color:#1f2937;color:var(--text-primary,#1f2937);display:inline-flex;font-family:SF Mono,Monaco,Inconsolata,monospace;font-size:12px;font-weight:500;padding:6px 12px}.kv-list-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.kv-item{display:flex;flex-direction:column;gap:2px}.kv-key{color:#6b7280;color:var(--text-secondary,#6b7280);font-size:12px;font-weight:500}.kv-value{color:#1f2937;color:var(--text-primary,#1f2937);font-size:13px}.custom-app-notes-section{background:#f8fafc;background:var(--bg-secondary,#f8fafc);border-top:1px solid #e5e7eb;border-top:1px solid var(--border-color,#e5e7eb);padding:16px}.notes-section-title{color:#6b7280;color:var(--text-secondary,#6b7280);font-size:14px;font-weight:600;margin:0 0 8px}.notes-bullet-list{list-style-type:disc;margin:0;padding-left:20px}.notes-bullet-list li{margin-bottom:4px}.notes-bullet-list li,.notes-text{color:#1f2937;color:var(--text-primary,#1f2937);font-size:13px;line-height:1.6}.notes-text{margin:0}.poweruser-setup-summary{margin-top:16px}.poweruser-setup-summary .section-header-row{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.poweruser-setup-summary .section-actions{align-items:center;display:flex;gap:12px}.setup-meta{color:var(--text-muted);font-size:12px}.setup-summary-grid{grid-gap:12px 24px;display:grid;gap:12px 24px;grid-template-columns:repeat(3,1fr)}.setup-summary-grid .config-item{display:flex;flex-direction:column;gap:6px}.setup-summary-grid .config-item-wide{grid-column:1/-1}.setup-summary-grid .config-label{color:var(--text-muted);font-size:11px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.setup-summary-grid .config-value{align-items:center;display:flex;gap:6px}.setup-status-badge{align-items:center;border-radius:4px;display:inline-flex;font-size:13px;font-weight:500;gap:5px;padding:4px 10px}.setup-status-badge.enabled{background:#d1fae5;background:var(--success-bg,#d1fae5);color:#059669;color:var(--success-color,#059669)}.setup-status-badge.disabled{background:#f3f4f6;background:var(--hover-bg,#f3f4f6);color:#9ca3af;color:var(--text-muted,#9ca3af)}.setup-status-badge svg{flex-shrink:0}.integration-badges,.module-badges{align-items:center;display:flex;flex-wrap:wrap;gap:6px}.integration-badge,.module-badge{align-items:center;border-radius:4px;display:inline-flex;font-size:12px;font-weight:500;gap:4px;padding:3px 8px}.integration-badge.enabled,.module-badge.enabled{background:#d1fae5;background:var(--success-bg,#d1fae5);color:#059669;color:var(--success-color,#059669)}.integration-badge.disabled,.module-badge.disabled{background:#f3f4f6;background:var(--hover-bg,#f3f4f6);color:#9ca3af;color:var(--text-muted,#9ca3af)}.modules-disabled-count{background:var(--hover-bg);border-radius:4px;color:var(--text-muted);cursor:help;font-size:12px;padding:3px 6px}.setup-summary-empty{background:var(--hover-bg);border-radius:6px;padding:12px}.setup-summary-empty p{color:var(--text-secondary);font-size:13px;margin:0}.setup-badge{align-items:center;border-radius:12px;display:inline-flex;font-size:12px;font-weight:500;gap:4px;padding:2px 8px}.setup-badge.enabled{background:#d1fae5;background:var(--success-bg,#d1fae5);color:#059669;color:var(--success-color,#059669)}.setup-badge.disabled{background:#f3f4f6;background:var(--hover-bg,#f3f4f6);color:#9ca3af;color:var(--text-muted,#9ca3af)}.setup-badge.provider{background:#dbeafe;background:var(--info-bg,#dbeafe);color:#2563eb;color:var(--info-color,#2563eb)}.setup-badge.badge-sm{font-size:11px;padding:1px 6px}@media (max-width:768px){.setup-summary-grid{grid-template-columns:1fr}}.tab-poweruser-setup{padding:0}.setup-tab-header{align-items:center;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;margin-bottom:24px;padding-bottom:16px}.setup-tab-header .header-title{align-items:center;display:flex;gap:10px}.setup-tab-header .header-title h2{color:var(--text-primary);font-size:18px;font-weight:600;margin:0}.setup-tab-header .header-title svg{color:var(--warning-color)}.setup-tab-header .header-actions{align-items:center;display:flex;gap:16px}.setup-not-configured{align-items:center;background:var(--secondary-bg);border:1px dashed var(--border-color);border-radius:8px;display:flex;flex-direction:column;justify-content:center;padding:48px 24px;text-align:center}.setup-not-configured svg{color:var(--text-muted);margin-bottom:16px}.setup-not-configured h3{color:var(--text-primary);font-size:16px;margin:0 0 8px}.setup-not-configured p{color:var(--text-secondary);font-size:14px;margin:0;max-width:400px}.setup-detail-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.detail-label{font-size:12px;letter-spacing:.5px;text-transform:uppercase}.detail-value{align-items:center;display:flex;font-size:14px;gap:8px}.detail-value .provider-value{font-weight:500}.sync-status-badge{border-radius:4px;display:inline-flex;font-size:11px;font-weight:500;margin-left:6px;padding:2px 6px}.sync-status-badge.badge-success{background:var(--success-bg);color:var(--success-color)}.sync-status-badge.badge-error{background:#fee2e2;background:var(--danger-bg,#fee2e2);color:#dc2626;color:var(--danger-color,#dc2626)}.sync-status-badge.badge-warning{background:var(--warning-bg);color:var(--warning-color)}.sync-status-badge.badge-info{background:var(--info-bg);color:var(--info-color)}.sync-status-badge.badge-default{background:var(--hover-bg);color:var(--text-muted)}.modules-grid{display:flex;flex-wrap:wrap;gap:8px}.module-chip{align-items:center;border-radius:20px;display:inline-flex;font-size:13px;font-weight:500;gap:6px;padding:6px 12px;transition:all .15s ease}.module-chip.enabled{background:#d1fae5;background:var(--success-bg,#d1fae5);border:1px solid #0000;color:#059669;color:var(--success-color,#059669)}.module-chip.disabled{background:#f3f4f6;background:var(--hover-bg,#f3f4f6);border:1px solid var(--border-color);color:#9ca3af;color:var(--text-muted,#9ca3af)}.integrations-container{display:flex;flex-direction:column;gap:20px}.integration-group h4{color:var(--text-secondary);font-size:14px;font-weight:600;margin:0 0 12px}.integration-cards{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.integration-card{background:#fff;background:var(--card-bg,#fff);border:1px solid var(--border-color);border-radius:8px;padding:16px;transition:border-color .15s ease}.integration-card:hover{border-color:var(--primary-color)}.integration-card.disabled{opacity:.6}.integration-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.integration-name{align-items:center;color:var(--text-primary);display:flex;font-size:14px;font-weight:600;gap:8px}.integration-icon{align-items:center;display:flex;height:24px;justify-content:center;width:24px}.integration-capabilities{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.capability-tag{border-radius:4px;display:inline-flex;font-size:11px;font-weight:500;padding:2px 8px}.capability-tag.enabled{background:#dbeafe;background:var(--info-bg,#dbeafe);color:#2563eb;color:var(--info-color,#2563eb)}.capability-tag.disabled{background:var(--hover-bg);color:var(--text-muted)}.integration-meta{border-top:1px solid #e5e7eb;border-top:1px solid var(--border-light,#e5e7eb);display:flex;flex-wrap:wrap;gap:8px 16px;padding-top:10px}.integration-meta .meta-item{align-items:center;color:var(--text-muted);display:flex;font-size:12px;gap:4px}.notifications-grid{display:flex;flex-wrap:wrap;gap:8px}.notification-chip{align-items:center;border-radius:20px;display:inline-flex;font-size:13px;font-weight:500;gap:6px;padding:6px 12px}.notification-chip.enabled{background:#d1fae5;background:var(--success-bg,#d1fae5);color:#059669;color:var(--success-color,#059669)}.notification-chip.disabled{color:#9ca3af;color:var(--text-muted,#9ca3af)}.notification-chip.disabled,.setup-empty-state{background:#f3f4f6;background:var(--hover-bg,#f3f4f6)}.setup-empty-state{align-items:center;border-radius:6px;color:var(--text-muted);display:flex;gap:10px;padding:16px}.setup-empty-state p{font-size:13px;margin:0}.secure-modules-container{display:flex;flex-direction:column;gap:16px}.secure-modules-summary-bar{background:#eff6ff;background:var(--info-bg,#eff6ff);border-radius:6px;display:flex;gap:24px;padding:12px 16px}.secure-modules-summary-bar .summary-stat{color:var(--text-secondary);font-size:13px}.secure-modules-summary-bar .summary-stat strong{color:var(--text-primary)}.secure-modules-list{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.secure-module-card{background:#fff;background:var(--card-bg,#fff);border:1px solid var(--border-color);border-radius:8px;padding:14px}.secure-module-header{align-items:center;border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--border-light,#e5e7eb);display:flex;gap:8px;margin-bottom:10px;padding-bottom:10px}.secure-module-header svg{color:#f59e0b;color:var(--warning-color,#f59e0b)}.secure-module-name{color:var(--text-primary);flex:1 1;font-size:14px;font-weight:600}.secure-module-count{background:#f3f4f6;background:var(--hover-bg,#f3f4f6);border-radius:10px;color:var(--text-muted);font-size:12px;padding:2px 8px}.secure-module-users{display:flex;flex-direction:column;gap:6px}.secure-module-user{align-items:center;background:#f9fafb;background:var(--hover-bg,#f9fafb);border-radius:4px;display:flex;font-size:13px;gap:8px;padding:6px 8px}.secure-module-user svg{color:var(--text-muted);flex-shrink:0}.secure-module-user .user-name{color:var(--text-primary);font-weight:500}.secure-module-user .user-email{color:var(--text-muted);font-size:12px;margin-left:auto}.secure-module-badges{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.secure-module-badge{align-items:center;background:#fef3c7;background:var(--warning-bg,#fef3c7);border-radius:12px;color:#92400e;color:var(--warning-color-dark,#92400e);display:inline-flex;font-size:12px;font-weight:500;gap:6px;padding:4px 10px}.secure-module-badge .secure-module-user-count{align-items:center;background:#f59e0b;background:var(--warning-color,#f59e0b);border-radius:9px;color:#fff;display:inline-flex;font-size:11px;font-weight:600;height:18px;justify-content:center;min-width:18px;padding:0 5px}.secure-modules-total{color:var(--text-muted);font-size:12px;margin-left:4px}.composite-view-sections{display:flex;flex-direction:column;gap:16px}.composite-view-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(380px,1fr))}.composite-source-section{margin-bottom:8px}.composite-source-card{background:#fff;background:var(--card-bg,#fff);border:1px solid #e2e8f0;border:1px solid var(--border-light,#e2e8f0);border-radius:8px;overflow:hidden}.composite-source-card .composite-source-label{background:#f8fafc;background:var(--bg-secondary,#f8fafc);border-bottom:1px solid #e2e8f0;border-bottom:1px solid var(--border-light,#e2e8f0);margin:0;padding:10px 16px}.composite-source-card .key-value-grid{border:none;border-radius:0;padding:12px 16px}.composite-source-card .empty-state-small{color:#9ca3af;color:var(--text-muted,#9ca3af);font-size:13px;padding:12px 16px}.composite-source-card .info-item{align-items:flex-start;text-align:left}.composite-source-card .info-grid-container{padding:12px 16px}.composite-source-card .custom-app-card-full{border:none;border-radius:0}.key-value-grid .kv-grid-content{grid-gap:12px 24px;display:grid;gap:12px 24px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.key-value-grid .kv-item{display:flex;flex-direction:column;gap:2px}.key-value-grid .kv-item .kv-label{color:#9ca3af;color:var(--text-muted,#9ca3af);font-size:11px;font-weight:600;letter-spacing:.3px;text-transform:uppercase}.key-value-grid .kv-item .kv-value{color:#1f2937;color:var(--text-primary,#1f2937);font-size:13px;font-weight:500;word-break:break-word}.key-value-grid .kv-item .kv-value a{color:#3b82f6;color:var(--primary-color,#3b82f6);text-decoration:none}.key-value-grid .kv-item .kv-value a:hover{text-decoration:underline}.composite-source-label{align-items:center;color:#475569;color:var(--text-secondary,#475569);display:flex;font-size:14px;font-weight:600;gap:6px;margin:0 0 8px}.composite-location-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.composite-location-card{background:#fff;background:var(--card-bg,#fff);border:1px solid #e2e8f0;border:1px solid var(--border-light,#e2e8f0);border-radius:8px;padding:12px 16px}.composite-location-card.location-closed{opacity:.6}.composite-location-header{align-items:center;border-bottom:1px solid #e2e8f0;border-bottom:1px solid var(--border-light,#e2e8f0);color:#1e293b;color:var(--text-primary,#1e293b);display:flex;font-size:14px;font-weight:600;gap:6px;margin-bottom:12px;padding-bottom:8px}.composite-source-in-location{margin-bottom:8px}.composite-source-locations{display:flex;flex-direction:column;gap:12px}.composite-source-location-group{margin-bottom:4px}.view-alias-location-groups{display:flex;flex-direction:column;gap:12px}.view-location-group{margin-bottom:4px}.view-location-header{align-items:center;color:#475569;color:var(--text-secondary,#475569);display:flex;font-size:13px;font-weight:600;gap:6px;margin-bottom:8px}.view-location-header.compact{font-size:12px;margin-bottom:6px}.view-location-keyed-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.view-location-keyed-card{background:#fff;background:var(--card-bg,#fff);border:1px solid #e2e8f0;border:1px solid var(--border-light,#e2e8f0);border-radius:8px;padding:12px}.view-location-keyed-list{font-size:13px;line-height:1.5;margin:4px 0 0 20px;padding:0}.view-location-keyed-list li{margin-bottom:2px}.completeness-overall{display:flex;flex-direction:column;gap:12px;margin-bottom:20px}.completeness-bar-group{display:flex;flex-direction:column;gap:4px}.completeness-bar-label{color:var(--text-primary);display:flex;font-size:.82rem;font-weight:500;justify-content:space-between}.completeness-bar-value{color:var(--text-secondary);font-weight:400}.completeness-bar{background:#e9ecef;background:var(--bg-secondary,#e9ecef);border-radius:4px;height:8px;overflow:hidden}.completeness-bar-fill{border-radius:4px;height:100%;transition:width .4s ease}.completeness-bar-fill.incomplete{background:#e67e22}.completeness-bar-fill.complete{background:#27ae60}.completeness-bar-fill.recommended{background:#3498db}.completeness-bar-fill.recommended.complete{background:#27ae60}.completeness-class-list{display:flex;flex-direction:column;gap:4px}.completeness-tab-group{margin-bottom:8px}.completeness-tab-group:last-child{margin-bottom:0}.completeness-tab-header{border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--border-color,#e5e7eb);color:#6b7280;color:var(--text-secondary,#6b7280);font-size:.8rem;font-weight:600;letter-spacing:.04em;margin-bottom:2px;padding:8px 4px 4px;text-transform:uppercase}.completeness-class-row{border-radius:6px;overflow:hidden}.completeness-class-row.has-gaps{background:#f8f9fa;background:var(--bg-secondary,#f8f9fa)}.completeness-class-header{align-items:center;display:flex;font-size:.82rem;justify-content:space-between;padding:6px 10px}.completeness-class-header:hover{background:#00000008;background:var(--hover-bg,#00000008)}.completeness-class-name{align-items:center;display:flex;font-weight:500;gap:4px}.completeness-class-name .chevron-expanded{transform:rotate(90deg);transition:transform .15s ease}.completeness-item-count{color:var(--text-secondary);font-size:.78rem;font-weight:400}.completeness-class-bars{display:flex;gap:6px}.completeness-mini-bar{align-items:center;background:#e9ecef;background:var(--bg-tertiary,#e9ecef);border-radius:3px;display:inline-flex;height:16px;justify-content:center;overflow:hidden;position:relative;width:60px}.completeness-mini-bar .mini-bar-fill{background:#e67e22;border-radius:3px;height:100%;left:0;position:absolute;top:0}.completeness-mini-bar.complete .mini-bar-fill{background:#27ae60}.completeness-mini-bar.recommended .mini-bar-fill{background:#3498db}.completeness-mini-bar.recommended.complete .mini-bar-fill{background:#27ae60}.completeness-mini-bar .mini-bar-text{color:#fff;font-size:.7rem;font-weight:600;position:relative;text-shadow:0 0 3px #0006;z-index:1}.completeness-missing-detail{font-size:.8rem;padding:6px 10px 10px 28px}.missing-group{margin-bottom:8px}.missing-group-label{color:var(--text-secondary);font-size:.75rem;font-weight:600;letter-spacing:.3px;margin-bottom:4px;text-transform:uppercase}.missing-item-row{align-items:center;display:flex;flex-wrap:wrap;gap:4px;padding:2px 0}.missing-item-name{color:var(--text-primary);font-weight:500;margin-right:4px}button.missing-item-name.clickable{background:none;border:none;color:#2563eb;color:var(--accent-primary,#2563eb);cursor:pointer;font:inherit;font-weight:500;padding:0;text-decoration:underline;-webkit-text-decoration-style:dotted;text-decoration-style:dotted;text-underline-offset:2px}button.missing-item-name.clickable:hover{color:#1d4ed8;color:var(--accent-hover,#1d4ed8);-webkit-text-decoration-style:solid;text-decoration-style:solid}@keyframes audit-highlight-pulse{0%{box-shadow:0 0 0 2px #ef444499}50%{box-shadow:0 0 8px 3px #ef44444d}to{box-shadow:0 0 0 2px #ef444499}}.audit-highlight{animation:audit-highlight-pulse 1.2s ease-in-out 3;border-radius:6px;scroll-margin-top:80px}.missing-field-tag{border-radius:3px;display:inline-block;font-size:.72rem;font-weight:500;padding:1px 6px}.missing-field-tag.required{background:#fdedeb;border:1px solid #e6b0aa;color:#c0392b}.missing-field-tag.recommended{background:#eaf2f8;border:1px solid #aed6f1;color:#2471a3}.data-table .col-type-checkbox{min-width:40px;text-align:center;width:50px}.data-table th.col-type-checkbox{font-size:14px;font-weight:700}.data-table .icon-success{color:#16a34a}.data-table .icon-muted{color:#d1d5db}.grouped-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}@media (max-width:768px){.grouped-grid{grid-template-columns:1fr}}.grouped-grid .group-card{background:#fff;background:var(--bg-primary,#fff);border:1px solid #e5e7eb;border:1px solid var(--border-primary,#e5e7eb);border-radius:8px;display:flex;flex-direction:column;overflow:visible}.grouped-grid .group-header-cell{align-items:center;background:#f0f1f3;background:var(--bg-secondary,#f0f1f3);border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--border-primary,#e5e7eb);display:flex;gap:8px;justify-content:flex-start;padding:8px 12px;width:100%}.grouped-grid .group-name{color:#1a1a2e;color:var(--text-primary,#1a1a2e);font-size:14px;font-weight:600}.grouped-grid .group-add-btn{align-items:center;background:#fff;background:var(--bg-primary,#fff);border:1px solid #d1d5db;border:1px solid var(--border-primary,#d1d5db);border-radius:4px;color:#6b7280;color:var(--text-secondary,#6b7280);cursor:pointer;display:none;font-size:14px;font-weight:600;height:22px;justify-content:center;line-height:1;transition:all .15s ease;width:22px}.grouped-grid .group-header-cell:hover .group-add-btn{display:inline-flex}.grouped-grid .group-add-btn:hover{background:#4f46e5;background:var(--accent-primary,#4f46e5);border-color:#4f46e5;border-color:var(--accent-primary,#4f46e5);color:#fff}.grouped-grid .group-card .data-table{border:none;border-radius:0;margin:0;table-layout:auto;width:100%}.grouped-grid .group-card .data-table thead th{font-size:12px;padding:4px 6px;white-space:nowrap}.grouped-grid .group-card .data-table td,.grouped-grid .group-card .data-table th{vertical-align:middle}.grouped-grid .group-card .data-table td:first-child,.grouped-grid .group-card .data-table th:first-child{width:100%}.grouped-grid .group-card .col-actions{min-width:60px;padding:4px;width:60px}.grouped-grid .group-item-row td:first-child{padding-left:12px}.grouped-grid-toggle{background:none;border:1px solid #d1d5db;border:1px solid var(--border-primary,#d1d5db);border-radius:6px;color:#4f46e5;color:var(--accent-primary,#4f46e5);cursor:pointer;font-size:13px;font-weight:500;grid-column:1/-1;padding:8px 16px;text-align:center;transition:background .15s}.grouped-grid-toggle:hover{background:#f8f9fa;background:var(--bg-secondary,#f8f9fa)}.action-buttons-toolbar{align-items:center;background:#fff;background:var(--bg-primary,#fff);border-radius:6px;box-shadow:0 1px 4px #0000001f;display:inline-flex;flex-shrink:0;gap:2px;padding:3px 5px;z-index:2}.action-buttons-toolbar button{align-items:center;background:#0000;border:none;border-radius:5px;color:#555;color:var(--text-secondary,#555);cursor:pointer;display:inline-flex;height:26px;justify-content:center;padding:0;transition:all .15s ease;width:26px}.action-buttons-toolbar .btn-edit-icon:hover{background:#34a8531f;color:#34a853;color:var(--success-color,#34a853)}.action-buttons-toolbar .btn-delete-icon:hover{background:#dc35451f;color:#dc3545;color:var(--error-color,#dc3545)}.action-buttons-toolbar .btn-link-icon:hover{background:#4285f41f;color:#4285f4;color:var(--primary-color,#4285f4)}.action-buttons-toolbar .btn-move-icon:hover{background:#0288d11f;color:#0288d1;color:var(--info-color,#0288d1)}.action-buttons-toolbar .btn-facilities-icon:hover{background:#f59e0b1f;color:#f59e0b;color:var(--warning-color,#f59e0b)}.contact-card,.equipment-card,.grouped-card-container>div,.info-grid,.key-value-grid,.location-card,.service-account-card,.vendor-card,.wifi-network-card{position:relative}.account-header,.contact-header,.equipment-name,.grouped-card-container [class*=-header],.info-grid-header,.kv-grid-header,.location-header,.vendor-name-row,.wifi-network-header{padding-right:40px}.account-header>.action-buttons-toolbar,.contact-header>.action-buttons-toolbar,.equipment-name>.action-buttons-toolbar,.grouped-card-container [class*=-header]>.action-buttons-toolbar,.info-grid-header>.action-buttons-toolbar,.kv-grid-header>.action-buttons-toolbar,.location-header>.action-buttons-toolbar,.vendor-name-row>.action-buttons-toolbar,.wifi-network-header>.action-buttons-toolbar{position:absolute;right:6px;top:6px}.bullet-item{position:relative}.bullet-item>.action-buttons-toolbar{position:absolute;right:4px;top:50%;transform:translateY(-50%)}td.col-actions .action-buttons-toolbar{background:#0000;box-shadow:none;padding:0;position:static}.action-buttons-toolbar.hover-only-toolbar{opacity:0;pointer-events:none;transition:opacity .15s ease,visibility .15s ease;visibility:hidden}.bullet-item:focus-within>.action-buttons-toolbar.hover-only-toolbar,.bullet-item:hover>.action-buttons-toolbar.hover-only-toolbar,.contact-card:focus-within .action-buttons-toolbar.hover-only-toolbar,.contact-card:hover .action-buttons-toolbar.hover-only-toolbar,.equipment-card:focus-within .action-buttons-toolbar.hover-only-toolbar,.equipment-card:hover .action-buttons-toolbar.hover-only-toolbar,.grouped-card-container>div:focus-within .action-buttons-toolbar.hover-only-toolbar,.grouped-card-container>div:hover .action-buttons-toolbar.hover-only-toolbar,.info-grid:focus-within .action-buttons-toolbar.hover-only-toolbar,.info-grid:hover .action-buttons-toolbar.hover-only-toolbar,.key-value-grid:focus-within .action-buttons-toolbar.hover-only-toolbar,.key-value-grid:hover .action-buttons-toolbar.hover-only-toolbar,.location-card:focus-within .action-buttons-toolbar.hover-only-toolbar,.location-card:hover .action-buttons-toolbar.hover-only-toolbar,.service-account-card:focus-within .action-buttons-toolbar.hover-only-toolbar,.service-account-card:hover .action-buttons-toolbar.hover-only-toolbar,.vendor-card:focus-within .action-buttons-toolbar.hover-only-toolbar,.vendor-card:hover .action-buttons-toolbar.hover-only-toolbar,.wifi-network-card:focus-within .action-buttons-toolbar.hover-only-toolbar,.wifi-network-card:hover .action-buttons-toolbar.hover-only-toolbar,tr:focus-within .action-buttons-toolbar.hover-only-toolbar,tr:hover .action-buttons-toolbar.hover-only-toolbar{opacity:1;pointer-events:auto;visibility:visible}.btn-add-icon.hover-only-add{opacity:0;pointer-events:none;transition:opacity .15s ease,visibility .15s ease;visibility:hidden}.os-section-header:focus-within .btn-add-icon.hover-only-add,.os-section-header:hover .btn-add-icon.hover-only-add,.section-header-row:focus-within .btn-add-icon.hover-only-add,.section-header-row:hover .btn-add-icon.hover-only-add,.subsection-header-row:focus-within .btn-add-icon.hover-only-add,.subsection-header-row:hover .btn-add-icon.hover-only-add{opacity:1;pointer-events:auto;visibility:visible}td.col-actions-hover-only,th.col-actions-hover-only{min-width:28px;padding:2px 4px;width:28px}.os-tile.hover-editable{cursor:pointer;transition:box-shadow .15s ease}.os-tile.hover-editable:hover{box-shadow:0 0 0 2px #0ea5e9;box-shadow:0 0 0 2px var(--primary-color,#0ea5e9)}.schema-editor{max-width:1400px;padding:20px}.schema-editor.loading-state{align-items:center;color:#6c757d;color:var(--text-muted,#6c757d);display:flex;gap:12px;justify-content:center;padding:60px}.schema-editor-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:24px}.schema-editor-header .header-content h1{align-items:center;color:#1a1a2e;color:var(--text-primary,#1a1a2e);display:flex;font-size:24px;font-weight:600;gap:12px;margin:0 0 8px}.schema-editor-header .header-content h1 svg{color:#0d6efd;color:var(--color-primary,#0d6efd);flex-shrink:0}.schema-editor-header .header-subtitle{color:#666;color:var(--text-secondary,#666);font-size:14px;margin:0}.schema-editor-content{padding-top:20px}.schema-editor .alert{align-items:center;border-radius:8px;display:flex;font-size:14px;gap:10px;margin-bottom:16px;padding:12px 16px}.schema-editor .alert-danger{background:#fef2f2;border:1px solid #fecaca;color:#dc3545;color:var(--color-error,#dc3545)}.schema-editor .alert-success{background:#f0fdf4;border:1px solid #bbf7d0;color:#16a34a}.config-section{margin-bottom:32px}.config-section h3{color:#212529;color:var(--text-primary,#212529);font-size:16px;font-weight:600;margin:0 0 8px}.section-description{color:#6c757d;color:var(--text-muted,#6c757d)}.navigation-mode-options{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.mode-option{cursor:pointer;display:block}.mode-option input{display:none}.mode-content{align-items:flex-start;background:#fff;background:var(--bg-primary,#fff);border:2px solid #dee2e6;border:2px solid var(--border-color,#dee2e6);border-radius:12px;display:flex;gap:16px;padding:16px;transition:all .2s}.mode-option:hover .mode-content{border-color:#adb5bd;border-color:var(--border-hover,#adb5bd)}.mode-option.selected .mode-content{background:#f0f7ff;border-color:#0d6efd;border-color:var(--color-primary,#0d6efd)}.mode-icon{align-items:center;background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border-radius:10px;color:#6c757d;color:var(--text-muted,#6c757d);display:flex;height:48px;justify-content:center;width:48px}.mode-option.selected .mode-icon{background:#0d6efd;background:var(--color-primary,#0d6efd);color:#fff}.mode-option.disabled{cursor:not-allowed;opacity:.6}.mode-option.disabled .mode-content{pointer-events:none}.coming-soon-badge{background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border:1px solid #dee2e6;border:1px solid var(--border-color,#dee2e6);color:#6c757d;color:var(--text-muted,#6c757d);font-size:11px;letter-spacing:.5px}.mode-details{flex:1 1}.mode-details strong{display:block;font-size:15px;margin-bottom:4px}.mode-details span{color:#6c757d;color:var(--text-muted,#6c757d);display:block;font-size:13px;margin-bottom:8px}.mode-example{border-radius:6px;color:#495057;color:var(--text-secondary,#495057);font-family:monospace;font-size:12px;padding:8px 12px}.category-filter,.mode-example{background:#f8f9fa;background:var(--bg-secondary,#f8f9fa)}.category-filter{align-items:center;border:1px solid #e0e0e0;border:1px solid var(--border-color,#e0e0e0);border-radius:8px;display:flex;gap:12px;margin-bottom:16px;padding:12px 16px}.category-filter .filter-label{color:#6c757d;color:var(--text-secondary,#6c757d);font-size:13px;font-weight:500;white-space:nowrap}.category-filter .filter-buttons{display:flex;flex:1 1;flex-wrap:wrap;gap:8px}.category-filter .filter-btn{background:#fff;border:1px solid #dee2e6;border:1px solid var(--border-color,#dee2e6);border-radius:6px;color:#6c757d;color:var(--text-secondary,#6c757d);cursor:pointer;font-size:13px;font-weight:500;padding:6px 12px;transition:all .15s ease}.category-filter .filter-btn:hover{background:#e9ecef;background:var(--bg-hover,#e9ecef);border-color:#adb5bd;border-color:var(--border-hover,#adb5bd);color:#333;color:var(--text-primary,#333)}.category-filter .filter-btn.active{background:#0d6efd;background:var(--color-primary,#0d6efd);border-color:#0d6efd;border-color:var(--color-primary,#0d6efd);color:#fff}.category-filter .filter-btn.active:hover{background:#0b5ed7;background:var(--color-primary-dark,#0b5ed7);border-color:#0b5ed7;border-color:var(--color-primary-dark,#0b5ed7)}.category-filter .filter-btn-toggle{align-items:center;display:flex;gap:4px}.category-filter .filter-btn-toggle.active{background:#7c3aed;border-color:#7c3aed;color:#fff}.category-filter .filter-btn-toggle.active:hover{background:#6d28d9;border-color:#6d28d9}.object-class-item.view-highlighted{background:#f5f3ff;border-left:3px solid #8b5cf6}.object-classes-list{display:flex;flex-direction:column;gap:8px}.object-class-item{align-items:center;background:#fff;background:var(--bg-primary,#fff);border:1px solid #dee2e6;border:1px solid var(--border-color,#dee2e6);border-radius:8px;display:flex;gap:12px;padding:12px 16px;transition:all .15s}.object-class-item:hover{border-color:#adb5bd;border-color:var(--border-hover,#adb5bd)}.object-class-item.dragging{background:#f0f7ff;border-color:#0d6efd;border-color:var(--color-primary,#0d6efd);opacity:.5}.object-class-item.hidden-class{background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);opacity:.6}.drag-handle{color:#6c757d;color:var(--text-muted,#6c757d);cursor:grab;padding:4px}.drag-handle:active{cursor:grabbing}.drag-handle.disabled{cursor:not-allowed;opacity:.4}.object-class-item.drag-disabled{cursor:default}.class-icon{align-items:center;background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border-radius:6px;color:#495057;color:var(--text-secondary,#495057);display:flex;height:32px;justify-content:center;width:32px}.class-label-input{border:1px solid #dee2e6;border:1px solid var(--border-color,#dee2e6);border-radius:6px;flex:1 1;font-size:14px;min-width:150px;padding:8px 12px;transition:border-color .2s}.class-label-input:focus{border-color:#0d6efd;border-color:var(--color-primary,#0d6efd);outline:none}.class-key{font-family:monospace;font-size:12px}.class-key,.visibility-toggle{color:#6c757d;color:var(--text-muted,#6c757d)}.visibility-toggle{align-items:center;background:#fff;background:var(--bg-primary,#fff);border:1px solid #dee2e6;border:1px solid var(--border-color,#dee2e6);border-radius:6px;cursor:pointer;display:flex;height:36px;justify-content:center;transition:all .15s;width:36px}.visibility-toggle:hover{border-color:#adb5bd;border-color:var(--border-hover,#adb5bd)}.visibility-toggle.visible{color:#198754;color:var(--color-success,#198754)}.visibility-toggle.hidden{color:#6c757d;color:var(--text-muted,#6c757d)}.sync-legend,.visibility-toggle.hidden{background:#f8f9fa;background:var(--bg-secondary,#f8f9fa)}.sync-legend{grid-gap:12px;border-radius:8px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));padding:16px}.sync-legend-item{display:flex;flex-direction:column;gap:2px}.sync-legend-item strong{color:#212529;color:var(--text-primary,#212529);font-size:13px}.sync-legend-item span{color:#6c757d;color:var(--text-muted,#6c757d);font-size:12px}.schema-editor-footer{align-items:center;border-top:1px solid #dee2e6;border-top:1px solid var(--border-color,#dee2e6);display:flex;justify-content:space-between;margin-top:24px;padding:20px 0}.footer-left,.footer-right{align-items:center;display:flex;gap:12px}.unsaved-indicator{color:#ffc107;color:var(--color-warning,#ffc107);font-style:italic}.schema-editor .btn{align-items:center;border:1px solid #0000;border-radius:6px;cursor:pointer;display:inline-flex;font-size:14px;font-weight:500;gap:6px;justify-content:center;padding:10px 16px;transition:all .2s}.schema-editor .btn:disabled{cursor:not-allowed;opacity:.6}.schema-editor .btn-primary{background:#0d6efd;background:var(--color-primary,#0d6efd);color:#fff}.schema-editor .btn-primary:hover:not(:disabled){background:#0b5ed7}.schema-editor .btn-secondary{background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border-color:#dee2e6;border-color:var(--border-color,#dee2e6);color:#212529;color:var(--text-primary,#212529)}.schema-editor .btn-secondary:hover:not(:disabled){background:#e9ecef}.spinner-small{animation:spin .8s linear infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:14px;width:14px}.schema-editor-tabs{border-bottom:2px solid #e0e0e0;display:flex;gap:8px;margin-bottom:20px}.schema-tab{align-items:center;background:none;border:none;border-bottom:3px solid #0000;color:#666;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;margin-bottom:-2px;padding:12px 20px;transition:all .2s ease}.schema-tab:hover{background:#f8f9fa;color:#333}.schema-tab.active{border-bottom-color:#007bff;color:#007bff}.tab-badge{align-items:center;background:#0d6efd;background:var(--color-primary,#0d6efd);border-radius:10px;color:#fff;display:inline-flex;font-size:11px;font-weight:600;height:20px;justify-content:center;min-width:20px;padding:0 6px}.class-category-badge{background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border-radius:4px;color:#6c757d;color:var(--text-muted,#6c757d);font-size:11px;letter-spacing:.5px;padding:2px 8px;text-transform:uppercase}.alert-close{background:#0000;border:none;cursor:pointer;margin-left:auto;opacity:.6;padding:4px}.alert-close:hover{opacity:1}.templates-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));margin-bottom:24px}.template-config-item{background:#fff;background:var(--bg-primary,#fff);border:1px solid #dee2e6;border:1px solid var(--border-color,#dee2e6);border-radius:8px;padding:16px}.template-item-header{align-items:center;display:flex;gap:10px;margin-bottom:12px}.template-item-label{flex:1 1;font-weight:500}.template-select{background:#fff;background:var(--bg-primary,#fff);border:1px solid #dee2e6;border:1px solid var(--border-color,#dee2e6);border-radius:6px;cursor:pointer;font-size:14px;padding:10px 12px}.template-select:focus{border-color:#0d6efd;border-color:var(--color-primary,#0d6efd);outline:none}.template-description{color:#6c757d;color:var(--text-muted,#6c757d);font-size:12px;margin-top:8px}.template-legend{background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border-radius:8px;margin-top:24px;padding:16px}.template-legend h4{font-size:14px;font-weight:600;margin:0 0 12px}.template-legend-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.template-legend-item{display:flex;flex-direction:column;gap:2px}.template-legend-item strong{font-size:13px}.template-legend-item span{color:#6c757d;color:var(--text-muted,#6c757d);font-size:12px}.field-management-layout{display:flex;flex-direction:column;gap:24px}.field-object-type-selector{align-items:center;display:flex;gap:12px}.field-object-type-selector label{color:#495057;color:var(--text-secondary,#495057);font-weight:500}.field-object-type-selector select{border:1px solid #dee2e6;border:1px solid var(--border-color,#dee2e6);border-radius:6px;flex:1 1;font-size:14px;max-width:300px;padding:10px 12px}.field-management-content,.field-management-list{display:flex;flex-direction:column;gap:20px}.field-group h4{align-items:center;color:#212529;color:var(--text-primary,#212529);display:flex;font-size:14px;font-weight:600;gap:8px;margin:0 0 12px}.field-management-item{align-items:center;background:#fff;background:var(--bg-primary,#fff);border:1px solid #dee2e6;border:1px solid var(--border-color,#dee2e6);border-radius:6px;display:flex;justify-content:space-between;margin-bottom:6px;padding:10px 14px}.field-management-item.syncable{border-left:3px solid #198754}.field-management-item.local{border-left:3px solid #0d6efd;border-left:3px solid var(--color-primary,#0d6efd)}.field-reorder-buttons{display:flex;flex-direction:column;gap:2px;margin-right:8px}.field-reorder-buttons .btn-reorder{background:none;border:1px solid #dee2e6;border:1px solid var(--border-color,#dee2e6);border-radius:3px;color:#6b7280;color:var(--text-secondary,#6b7280);cursor:pointer;font-size:10px;line-height:14px;padding:0 4px;transition:background .15s,color .15s}.field-reorder-buttons .btn-reorder:hover:not(:disabled){background:#f3f4f6;background:var(--bg-secondary,#f3f4f6);color:#111827;color:var(--text-primary,#111827)}.field-reorder-buttons .btn-reorder:disabled{cursor:default;opacity:.3}.field-management-info{align-items:center;display:flex;flex:1 1;gap:12px;justify-content:flex-start;min-width:0}.field-management-info .field-label{font-weight:500;min-width:120px}.field-management-info .field-label-input{background:#0000;border:1px solid #0000;border-radius:4px;color:#212529;color:var(--text-primary,#212529);font-size:13px;font-weight:500;min-width:120px;padding:2px 6px}.field-management-info .field-label-input:hover{border-color:#dee2e6;border-color:var(--border-color,#dee2e6)}.field-management-info .field-label-input:focus{background:#fff;border-color:#0d6efd;border-color:var(--color-primary,#0d6efd);outline:none}.field-management-info .field-key{background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border-radius:3px;color:#6c757d;color:var(--text-muted,#6c757d);font-family:monospace;font-size:11px;padding:2px 6px}.field-management-actions{align-items:center;display:flex;flex-shrink:0;gap:8px}.field-management-actions .visibility-tier-select{-webkit-appearance:auto;appearance:auto;border:1px solid #0000;border-radius:4px;cursor:pointer;font-size:11px;font-weight:600;padding:3px 8px}.field-management-actions .field-type-select{-webkit-appearance:auto;appearance:auto;background:#f9fafb;border:1px solid #d1d5db;border-radius:4px;color:#374151;cursor:pointer;font-size:11px;padding:3px 8px;width:80px}.field-management-actions .field-options-btn{align-items:center;display:inline-flex;font-size:11px;gap:2px;justify-content:center;min-width:40px;padding:2px 6px}.field-management-actions .field-options-btn.active{background:#7c3aed;border-color:#7c3aed;color:#fff}.field-type-badge.reference{background:#eff6ff;border:1px solid #bfdbfe;border-radius:4px;color:#2563eb;display:inline-flex;font-size:11px;font-weight:600;padding:2px 8px;white-space:nowrap}.field-type-badge.reference .inverse-badge{background:#dbeafe;border-radius:3px;color:#1e40af;font-size:9px;padding:1px 4px}.inline-options-editor{display:flex;flex-direction:column;gap:2px;padding:4px 0;width:100%}.field-options-modal-overlay{align-items:center;background:#0006;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1050}.field-options-modal{background:#fff;border-radius:12px;box-shadow:0 20px 60px #0003;max-height:80vh;max-width:90vw;overflow-y:auto;padding:20px;width:520px}.field-type-badge.reference{align-items:center;display:flex;gap:4px}.reference-target-select{max-width:140px}.reference-cardinality-select,.reference-target-select{background:#f3f4f6;border:1px solid #d1d5db;border-radius:4px;font-size:11px;padding:2px 4px}.reference-cardinality-select{width:60px}.field-options-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.field-options-header h4{align-items:center;color:#374151;display:flex;font-size:13px;font-weight:600;gap:6px;margin:0}.field-options-list{display:flex;flex-direction:column;gap:4px}.field-option-row{align-items:center;display:flex;gap:6px}.field-option-row .option-value{flex:1 1;font-family:monospace;font-size:12px;padding:4px 8px}.field-option-row .option-label{flex:2 1;font-size:12px;padding:4px 8px}.field-options-footer{align-items:center;display:flex;justify-content:space-between;margin-top:8px}.field-management-actions .btn-icon{align-items:center;background:#fff;background:var(--bg-primary,#fff);border:1px solid #dee2e6;border:1px solid var(--border-color,#dee2e6);border-radius:4px;color:#6c757d;color:var(--text-muted,#6c757d);cursor:pointer;display:flex;height:28px;justify-content:center;padding:0;transition:all .15s;width:28px}.field-management-actions .btn-icon:hover:not(:disabled){background:#fffbeb;border-color:#ffc107;border-color:var(--color-warning,#ffc107);color:#ffc107;color:var(--color-warning,#ffc107)}.field-management-actions .btn-icon:disabled{cursor:not-allowed;opacity:.5}.field-management-item.selected{background:#fff8e1;border-color:#ffc107;border-color:var(--color-warning,#ffc107)}.field-management-actions .btn-danger-outline,.field-management-actions .btn-outline{align-items:center;border-radius:4px;cursor:pointer;display:flex;font-size:12px;gap:4px;padding:4px 10px;transition:all .15s;white-space:nowrap}.field-management-actions .btn-outline{background:#fff;background:var(--bg-primary,#fff);border:1px solid #dee2e6;border:1px solid var(--border-color,#dee2e6);color:#6c757d;color:var(--text-muted,#6c757d)}.field-management-actions .btn-outline:hover:not(:disabled){background:#fff8e1;border-color:#ffc107;border-color:var(--color-warning,#ffc107);color:#856404;color:var(--color-warning,#856404)}.field-management-actions .btn-danger-outline{background:#fff;background:var(--bg-primary,#fff);border:1px solid #dc3545;color:#dc3545}.field-management-actions .btn-danger-outline:hover:not(:disabled){background:#dc3545;color:#fff}.field-management-actions .btn-danger-outline:disabled,.field-management-actions .btn-outline:disabled{cursor:not-allowed;opacity:.5}.field-impact-results{background:#fff;background:var(--bg-primary,#fff);border:1px solid #dee2e6;border:1px solid var(--border-color,#dee2e6);border-radius:8px;margin-top:24px;padding:20px}.field-impact-results h4{align-items:center;color:#ffc107;color:var(--color-warning,#ffc107);display:flex;font-size:16px;gap:10px;margin:0 0 20px}.impact-stats{display:flex;gap:24px;margin-bottom:20px}.impact-stat{align-items:center;background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border-radius:8px;display:flex;flex-direction:column;padding:16px 24px}.impact-stat.warning{background:#fff3cd}.impact-stat .stat-value{color:#212529;color:var(--text-primary,#212529);font-size:28px;font-weight:700}.impact-stat.warning .stat-value{color:#ffc107;color:var(--color-warning,#ffc107)}.impact-stat .stat-label{color:#6c757d;color:var(--text-muted,#6c757d);font-size:12px;margin-top:4px}.affected-clients{margin-bottom:20px}.affected-clients h5{font-size:14px;font-weight:600;margin:0 0 12px}.affected-clients ul{list-style:none;margin:0;padding:0}.affected-clients li{align-items:center;border-bottom:1px solid #dee2e6;border-bottom:1px solid var(--border-color,#dee2e6);display:flex;gap:12px;padding:10px 12px}.affected-clients li:last-child{border-bottom:none}.affected-clients li strong{min-width:150px}.affected-clients .sample-values{color:#6c757d;color:var(--text-muted,#6c757d);font-family:monospace;font-size:12px}.affected-clients .more-clients{color:#6c757d;color:var(--text-muted,#6c757d);font-style:italic}.removal-options{border-top:1px solid #dee2e6;border-top:1px solid var(--border-color,#dee2e6);padding-top:20px}.removal-options h5{font-size:14px;font-weight:600;margin:0 0 12px}.removal-action-selector{display:flex;gap:12px;margin-bottom:16px}.removal-action-selector label{align-items:flex-start;border:2px solid #dee2e6;border:2px solid var(--border-color,#dee2e6);border-radius:8px;cursor:pointer;display:flex;flex:1 1;flex-direction:column;gap:4px;padding:16px;transition:all .15s}.removal-action-selector label input{display:none}.removal-action-selector label:hover{border-color:#adb5bd;border-color:var(--border-hover,#adb5bd)}.removal-action-selector label.selected{background:#f0f7ff;border-color:#0d6efd;border-color:var(--color-primary,#0d6efd)}.removal-action-selector label span{color:#6c757d;color:var(--text-muted,#6c757d);font-size:12px}.archive-reason{margin-bottom:16px}.archive-reason label{color:#495057;color:var(--text-secondary,#495057);display:block;font-size:13px;margin-bottom:8px}.archive-reason input{border:1px solid #dee2e6;border:1px solid var(--border-color,#dee2e6);border-radius:6px;font-size:14px;padding:10px 12px;width:100%}.removal-actions{display:flex;gap:12px;justify-content:flex-end}.schema-editor .btn-danger{background:#dc3545;background:var(--color-error,#dc3545);color:#fff}.schema-editor .btn-danger:hover:not(:disabled){background:#bb2d3b}.schema-editor .btn-warning{background:#ffc107;background:var(--color-warning,#ffc107);color:#212529}.schema-editor .btn-warning:hover:not(:disabled){background:#ffca2c}.schema-editor .btn-sm{font-size:13px;padding:8px 12px}.archives-loading{gap:12px}.archives-empty,.archives-loading{align-items:center;color:#6c757d;color:var(--text-muted,#6c757d);display:flex;justify-content:center;padding:48px}.archives-empty{flex-direction:column;text-align:center}.archives-empty h4{color:#212529;color:var(--text-primary,#212529);font-size:18px;margin:16px 0 8px}.archives-empty p{margin:0;max-width:400px}.archives-list{display:flex;flex-direction:column;gap:12px}.archive-item{align-items:center;background:#fff;background:var(--bg-primary,#fff);border:1px solid #dee2e6;border:1px solid var(--border-color,#dee2e6);border-radius:8px;display:flex;flex-wrap:wrap;gap:16px;padding:16px}.archive-item.restored{background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);opacity:.6}.archive-item-header{align-items:center;display:flex;flex:1 1;gap:16px;min-width:200px}.archive-field-info{display:flex;flex-direction:column;gap:4px}.archive-field-info strong{font-size:15px}.archive-object-type{color:#6c757d;color:var(--text-muted,#6c757d);font-family:monospace;font-size:12px}.archive-meta{color:#495057;color:var(--text-secondary,#495057);display:flex;font-size:13px;gap:16px}.archive-item-details{color:#6c757d;color:var(--text-muted,#6c757d);display:flex;font-size:12px;gap:16px}.archive-item-actions{margin-left:auto}.restored-badge{background:#d1e7dd;border-radius:4px;color:#0f5132;font-size:13px;gap:6px;padding:6px 12px}.restored-badge,.sync-badge{align-items:center;display:inline-flex}.sync-badge{-webkit-appearance:none;appearance:none;background:none;border:1px solid #0000;border-radius:4px;cursor:pointer;font-family:inherit;font-size:10px;font-weight:500;gap:4px;line-height:1.4;padding:3px 8px;transition:all .15s}.sync-badge.synced{background:#d1fae5;color:#065f46}.sync-badge.synced:hover{background:#a7f3d0;border-color:#6ee7b7}.sync-badge.local{background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);color:#6c757d;color:var(--text-muted,#6c757d)}.sync-badge.local:hover{background:#e9ecef;border-color:#adb5bd;border-color:var(--border-hover,#adb5bd)}.field-count-badge{align-items:center;background:#e0e7ff;border:1px solid #0000;border-radius:4px;color:#4338ca;cursor:pointer;display:inline-flex;font-size:11px;font-weight:500;padding:3px 8px;transition:all .15s}.field-count-badge:hover{background:#c7d2fe;border-color:#a5b4fc}.btn-configure{align-items:center;background:#fff;background:var(--bg-primary,#fff);border:1px solid #dee2e6;border:1px solid var(--border-color,#dee2e6);border-radius:6px;color:#6c757d;color:var(--text-muted,#6c757d);cursor:pointer;display:flex;height:32px;justify-content:center;transition:all .15s;width:32px}.btn-configure:hover{background:#f0f7ff;border-color:#0d6efd;border-color:var(--color-primary,#0d6efd);color:#0d6efd;color:var(--color-primary,#0d6efd)}.field-config-panel{animation:slideIn .25s ease-out;background:#fff;background:var(--bg-primary,#fff);box-shadow:-8px 0 32px #00000026;display:flex;flex-direction:column;height:100vh;max-width:90vw;position:fixed;right:0;top:0;width:500px;z-index:1100}@keyframes slideIn{0%{opacity:0;transform:translateX(100%)}to{opacity:1;transform:translateX(0)}}.field-config-header{align-items:center;background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border-bottom:1px solid #dee2e6;border-bottom:1px solid var(--border-color,#dee2e6);display:flex;justify-content:space-between;padding:20px 24px}.field-config-header h3{align-items:center;display:flex;font-size:18px;font-weight:600;gap:10px;margin:0}.field-config-content{flex:1 1;overflow-y:auto;padding:24px}.field-config-footer{background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border-top:1px solid #dee2e6;border-top:1px solid var(--border-color,#dee2e6);display:flex;justify-content:flex-end;padding:16px 24px}.sync-status-banner{align-items:center;border-radius:8px;display:flex;font-size:14px;gap:10px;margin-bottom:20px;padding:14px 16px}.sync-status-banner.can-sync{background:#d1e7dd;color:#0f5132}.sync-status-banner.no-sync{background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border:1px solid #dee2e6;border:1px solid var(--border-color,#dee2e6);color:#495057;color:var(--text-secondary,#495057)}.field-summary{display:flex;gap:16px;margin-bottom:24px}.field-summary .summary-stat{align-items:center;background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border-radius:8px;display:flex;flex:1 1;flex-direction:column;padding:16px;text-align:center}.field-summary .stat-value{color:#0d6efd;color:var(--color-primary,#0d6efd);font-size:32px;font-weight:700}.field-summary .stat-label{color:#6c757d;color:var(--text-muted,#6c757d);font-size:12px;margin-top:4px}.fields-section{margin-bottom:24px}.fields-section h4{align-items:center;color:#212529;color:var(--text-primary,#212529);display:flex;font-size:15px;font-weight:600;gap:8px;margin:0 0 8px}.fields-section h4 .field-count{color:#6c757d;color:var(--text-muted,#6c757d);font-weight:400}.fields-section-description{color:#6c757d;color:var(--text-muted,#6c757d);font-size:13px;margin:0 0 16px}.fields-grid{display:flex;flex-direction:column;gap:8px}.field-item{align-items:center;background:#fff;background:var(--bg-primary,#fff);border:1px solid #dee2e6;border:1px solid var(--border-color,#dee2e6);border-radius:6px;display:flex;justify-content:space-between;padding:12px 14px}.field-item.syncable{border-left:3px solid #198754}.field-item.local{border-left:3px solid #0d6efd;border-left:3px solid var(--color-primary,#0d6efd)}.field-info{display:flex;flex-direction:column;gap:2px}.field-label{color:#212529;color:var(--text-primary,#212529);font-size:14px;font-weight:500}.field-key{color:#6c757d;color:var(--text-muted,#6c757d);font-family:monospace;font-size:11px}.field-meta{align-items:center;display:flex;gap:8px}.field-type{background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border-radius:4px;color:#6c757d;color:var(--text-muted,#6c757d);font-size:11px;font-weight:500;padding:2px 8px}.field-type.type-text{background:#e0e7ff;color:#4338ca}.field-type.type-array{background:#fef3c7;color:#92400e}.field-type.type-list,.field-type.type-select{background:#dcfce7;color:#166534}.field-type.type-date{background:#fce7f3;color:#9d174d}.field-type.type-textarea{background:#e0f2fe;color:#0369a1}.field-type.type-object{background:#f3e8ff;color:#7c3aed}.field-type.type-status{background:#fef2f2;color:#dc2626}.field-category{color:#6c757d;color:var(--text-muted,#6c757d);font-size:11px}.field-mapping{color:#0d6efd;color:var(--color-primary,#0d6efd);font-family:monospace;font-size:11px}.field-options{font-size:11px;font-style:italic}.field-options,.no-fields-message{color:#6c757d;color:var(--text-muted,#6c757d)}.no-fields-message{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:48px;text-align:center}.no-fields-message p{color:#212529;color:var(--text-primary,#212529);font-size:15px;margin:16px 0 8px}.no-fields-message .text-muted{font-size:13px;margin:0}.add-field-section{border-top:1px solid #e9ecef;border-top:1px solid var(--border-light,#e9ecef);margin-top:12px;padding-top:12px}.add-field-form{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.add-field-form .form-control{font-size:12px;max-width:160px;padding:5px 8px}.add-field-form .form-control:first-child{font-family:monospace;max-width:140px}.add-field-form .field-type-select{font-size:12px;max-width:100px;padding:5px 8px}.no-fields-message .add-field-form{justify-content:center;margin-top:12px}.snapshot-create-section{background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border-radius:8px;margin-bottom:32px;padding:20px}.snapshot-create-section h4{align-items:center;display:flex;font-size:15px;font-weight:600;gap:8px;margin:0 0 16px}.snapshot-create-form{align-items:center;display:flex;gap:12px}.snapshot-description-input{border:1px solid #dee2e6;border:1px solid var(--border-color,#dee2e6);border-radius:6px;flex:1 1;font-size:14px;padding:10px 14px}.snapshot-description-input:focus{border-color:#0d6efd;border-color:var(--color-primary,#0d6efd);outline:none}.snapshot-hint{align-items:center;background:#e0f2fe;border-radius:6px;color:#0369a1;display:flex;font-size:13px;gap:8px;margin-top:12px;padding:10px 14px}.snapshot-hint.warning{background:#fef3c7;color:#92400e}.snapshots-section{margin-top:24px}.snapshots-section h4{align-items:center;display:flex;font-size:15px;font-weight:600;gap:8px;margin:0 0 16px}.count-badge{align-items:center;background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border-radius:10px;color:#6c757d;color:var(--text-muted,#6c757d);display:inline-flex;font-size:11px;font-weight:600;height:20px;justify-content:center;min-width:20px;padding:0 6px}.snapshots-list{display:flex;flex-direction:column;gap:12px}.snapshot-item{background:#fff;background:var(--bg-primary,#fff);border:1px solid #dee2e6;border:1px solid var(--border-color,#dee2e6);border-radius:8px;padding:16px}.snapshot-item,.snapshot-item-header{align-items:center;display:flex;gap:16px}.snapshot-item-header{flex:1 1}.snapshot-number{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:8px;color:#fff;display:flex;font-size:16px;font-weight:700;height:48px;justify-content:center;width:48px}.snapshot-info{flex:1 1}.snapshot-date{color:#212529;color:var(--text-primary,#212529);font-size:14px;font-weight:500;margin-bottom:4px}.snapshot-meta{display:flex;flex-wrap:wrap;font-size:12px;gap:8px}.snapshot-reason{border-radius:4px;font-weight:500;padding:2px 8px;text-transform:capitalize}.snapshot-reason.manual{background:#dbeafe;color:#1e40af}.snapshot-reason.pre-restore{background:#fef3c7;color:#92400e}.snapshot-reason.pre-change{background:#dcfce7;color:#166534}.snapshot-description{font-style:italic}.snapshot-description,.snapshot-item-summary{color:#6c757d;color:var(--text-muted,#6c757d)}.snapshot-item-summary{display:flex;font-size:12px;gap:12px}.snapshot-item-summary span{background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border-radius:4px;padding:4px 8px}.snapshot-item-actions{display:flex;gap:8px}.impact-modal-overlay{align-items:center;animation:fadeIn .15s ease-out;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1200}.impact-modal{animation:modalSlideIn .2s ease-out;background:#fff;background:var(--bg-primary,#fff);border-radius:12px;box-shadow:0 20px 60px #0000004d;display:flex;flex-direction:column;max-height:80vh;max-width:90vw}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.impact-modal-header{align-items:center;border-bottom:1px solid #dee2e6;border-bottom:1px solid var(--border-color,#dee2e6);display:flex;justify-content:space-between;padding:20px 24px}.impact-modal-header h3{align-items:center;color:#212529;color:var(--text-primary,#212529);display:flex;font-size:18px;font-weight:600;gap:10px;margin:0}.impact-modal-close{align-items:center;background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border:none;border-radius:6px;color:#6c757d;color:var(--text-muted,#6c757d);cursor:pointer;display:flex;height:32px;justify-content:center;transition:all .15s;width:32px}.impact-modal-close:hover{background:#e9ecef;background:var(--bg-hover,#e9ecef);color:#212529;color:var(--text-primary,#212529)}.impact-modal-content{flex:1 1;overflow-y:auto;padding:24px}.impact-modal-footer{border-top:1px solid #dee2e6;border-top:1px solid var(--border-color,#dee2e6);display:flex;gap:12px;justify-content:flex-end;padding:16px 24px}.impact-summary{display:flex;gap:16px;margin-bottom:24px}.impact-summary-stat{align-items:center;background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border-radius:10px;display:flex;flex:1 1;flex-direction:column;padding:20px;text-align:center}.impact-summary-stat.warning{background:#fff3cd;border:1px solid #ffc107}.impact-summary-stat.danger{background:#fee2e2;border:1px solid #f87171}.impact-summary-stat.success{background:#d1fae5;border:1px solid #10b981}.impact-summary-stat .stat-value{color:#212529;color:var(--text-primary,#212529);font-size:36px;font-weight:700;line-height:1}.impact-summary-stat.warning .stat-value{color:#d97706}.impact-summary-stat.danger .stat-value{color:#dc2626}.impact-summary-stat.success .stat-value{color:#059669}.impact-summary-stat .stat-label{color:#6c757d;color:var(--text-muted,#6c757d);font-size:13px;margin-top:8px}.impact-warning{align-items:flex-start;background:#fef3c7;border:1px solid #fcd34d;border-radius:8px;display:flex;gap:12px;margin-bottom:24px;padding:16px}.impact-warning svg{color:#d97706;flex-shrink:0}.impact-warning-content{flex:1 1}.impact-warning-content strong{color:#92400e;display:block;margin-bottom:4px}.impact-warning-content p{color:#92400e;font-size:14px;margin:0}.impacted-profiles{margin-top:20px}.impacted-profiles h4{align-items:center;display:flex;font-size:15px;font-weight:600;gap:8px;margin:0 0 16px}.impacted-profiles-list{display:flex;flex-direction:column;gap:8px;max-height:300px;overflow-y:auto}.impacted-profile-item{align-items:center;background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border:1px solid #dee2e6;border:1px solid var(--border-color,#dee2e6);border-radius:6px;display:flex;justify-content:space-between;padding:12px 16px}.impacted-profile-name{color:#212529;color:var(--text-primary,#212529);font-weight:500}.impacted-profile-tenant{background:#fff;background:var(--bg-primary,#fff);border-radius:4px;color:#6c757d;color:var(--text-muted,#6c757d);font-family:monospace;font-size:12px;padding:2px 8px}.impacted-profile-value{color:#495057;color:var(--text-secondary,#495057);font-family:monospace;font-size:13px;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.more-profiles-indicator{background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border-radius:6px;font-style:italic;padding:12px}.more-profiles-indicator,.no-impact-state{color:#6c757d;color:var(--text-muted,#6c757d);text-align:center}.no-impact-state{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:40px}.no-impact-state svg{color:#10b981;margin-bottom:16px}.no-impact-state h4{color:#212529;color:var(--text-primary,#212529);font-size:16px;margin:0 0 8px}.no-impact-state p{font-size:14px;margin:0}.template-preview-modal-overlay{align-items:center;animation:fadeIn .15s ease-out;background:#0009;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1200}.template-preview-modal{animation:modalSlideIn .2s ease-out;background:#fff;background:var(--bg-primary,#fff);border-radius:12px;box-shadow:0 20px 60px #0000004d;display:flex;flex-direction:column;max-height:90vh;max-width:95vw}.template-preview-header{align-items:center;background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border-bottom:1px solid #dee2e6;border-bottom:1px solid var(--border-color,#dee2e6);display:flex;justify-content:space-between;padding:20px 24px}.template-preview-header h3{align-items:center;display:flex;font-size:18px;font-weight:600;gap:10px;margin:0}.template-preview-content{flex:1 1;overflow-y:auto;padding:24px}.preview-container{grid-gap:24px;display:grid;gap:24px;grid-template-columns:1fr 1fr;min-height:400px}.preview-panel{border:1px solid #dee2e6;border:1px solid var(--border-color,#dee2e6);border-radius:8px;display:flex;flex-direction:column;overflow:hidden}.preview-panel-header{align-items:center;background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border-bottom:1px solid #dee2e6;border-bottom:1px solid var(--border-color,#dee2e6);display:flex;font-size:13px;font-weight:500;gap:8px;padding:12px 16px}.preview-panel-content{background:#fff;background:var(--bg-primary,#fff);flex:1 1;overflow-y:auto;padding:16px}.template-demo{padding:16px}.template-demo-placeholder{align-items:center;background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border:2px dashed #dee2e6;border:2px dashed var(--border-color,#dee2e6);border-radius:8px;color:#6c757d;color:var(--text-muted,#6c757d);display:flex;flex-direction:column;justify-content:center;padding:40px;text-align:center}.template-demo-placeholder svg{margin-bottom:12px;opacity:.5}.template-demo-placeholder p{font-size:14px;margin:0}.template-demo-grid{grid-gap:12px;display:grid;gap:12px}.template-demo-grid.key-value{grid-template-columns:repeat(2,1fr)}.template-demo-grid.data-table{grid-template-columns:1fr}.template-demo-grid.card-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}.template-demo-item{background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border:1px solid #dee2e6;border:1px solid var(--border-color,#dee2e6);border-radius:6px;padding:12px}.template-demo-item .demo-label{color:#6c757d;color:var(--text-muted,#6c757d);font-size:11px;margin-bottom:4px;text-transform:uppercase}.template-demo-item .demo-value{color:#212529;color:var(--text-primary,#212529);font-size:14px}.btn-analyze,.btn-preview{align-items:center;border-radius:5px;cursor:pointer;display:inline-flex;font-size:12px;font-weight:500;gap:4px;justify-content:center;padding:6px 12px;transition:all .15s;white-space:nowrap}.btn-analyze{background:#fef3c7;border:1px solid #fcd34d;color:#92400e}.btn-analyze:hover:not(:disabled){background:#fde68a;border-color:#fbbf24}.btn-analyze:disabled{cursor:not-allowed;opacity:.5}.btn-preview{background:#e0e7ff;border:1px solid #a5b4fc;color:#4338ca}.btn-preview:hover:not(:disabled){background:#c7d2fe;border-color:#818cf8}.btn-preview:disabled{cursor:not-allowed;opacity:.5}.template-select-row{align-items:center;display:flex;gap:12px}.template-select-row select{flex:1 1}.template-select-row select.view-locked{background:#f5f5f5;background:var(--bg-secondary,#f5f5f5);cursor:not-allowed;opacity:.6}.template-select-row .view-badge{align-items:center;background:#dbeafe;background:var(--info-bg,#dbeafe);border:1px solid #3b82f6;border:1px solid var(--info-color,#3b82f6);border-radius:4px;color:#3b82f6;color:var(--info-color,#3b82f6);display:inline-flex;flex-shrink:0;font-size:10px;font-weight:700;letter-spacing:.5px;padding:2px 8px;white-space:nowrap}.form-row{align-items:center;gap:12px;margin-bottom:16px}.form-row:last-child{margin-bottom:0}.form-group{display:flex;flex:1 1;flex-direction:column;gap:6px}.form-group label{color:#495057;color:var(--text-secondary,#495057);font-size:13px}.form-group input,.form-group select,.form-group textarea{border:1px solid #dee2e6;border:1px solid var(--border-color,#dee2e6);border-radius:6px;font-size:14px;padding:10px 12px}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#0d6efd;border-color:var(--color-primary,#0d6efd);outline:none}.loading-inline{color:#6c757d;color:var(--text-muted,#6c757d);display:flex;padding:12px}.loading-inline .spinner-small{border-color:#0d6efd #0000001a #0000001a;border-top-color:var(--color-primary,#0d6efd)}.empty-state{color:#6c757d;color:var(--text-muted,#6c757d);padding:48px 24px}.empty-state svg{margin-bottom:16px}.empty-state h4{color:#212529;color:var(--text-primary,#212529);font-size:16px;margin:0 0 8px}.empty-state p{font-size:14px;margin:0;max-width:300px}.object-class-item .class-actions{align-items:center;display:flex;gap:8px;margin-left:auto}@media (max-width:768px){.preview-container{grid-template-columns:1fr}.template-preview-modal{border-radius:0;height:100%;max-height:100%;width:100%}}.modal-overlay{animation:fadeIn .15s ease-out;z-index:1200}.modal{animation:modalSlideIn .2s ease-out;background:#fff;background:var(--bg-primary,#fff);border-radius:12px;box-shadow:0 20px 60px #0000004d;display:flex;flex-direction:column;max-height:85vh;max-width:90vw}.modal-header{border-bottom:1px solid #dee2e6;border-bottom:1px solid var(--border-color,#dee2e6);padding:20px 24px}.modal-header h3{align-items:center;color:#212529;color:var(--text-primary,#212529);display:flex;font-size:18px;font-weight:600;gap:10px;margin:0}.modal-body{padding:24px}.modal-footer{border-top:1px solid #dee2e6;border-top:1px solid var(--border-color,#dee2e6);padding:16px 24px}.impact-modal{width:600px}.template-preview-modal{width:900px}.impact-stat.highlight{background:#e0f2fe;border:1px solid #7dd3fc}.impact-stat.highlight .stat-value{color:#0369a1}.profiles-list{display:flex;flex-direction:column;gap:8px;max-height:250px;overflow-y:auto}.profile-item{background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border:1px solid #dee2e6;border:1px solid var(--border-color,#dee2e6);border-radius:6px;justify-content:space-between;padding:12px 16px}.profile-item,.profile-name{align-items:center;display:flex}.profile-name{color:#212529;color:var(--text-primary,#212529);font-weight:500;gap:6px}.profile-details{align-items:center;color:#6c757d;color:var(--text-muted,#6c757d);display:flex;font-size:12px;gap:12px}.record-count{background:#fff;background:var(--bg-primary,#fff);border-radius:4px;padding:2px 8px}.sample-values{font-family:monospace;font-size:11px;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.safe-to-remove{align-items:center;background:#d1fae5;border:1px solid #6ee7b7;color:#065f46;display:flex;font-weight:500;gap:10px}.preview-info,.safe-to-remove{border-radius:8px;padding:16px}.preview-info{background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);margin-bottom:20px}.preview-info p{font-size:14px;margin:0 0 8px}.preview-info .preview-description{color:#6c757d;color:var(--text-muted,#6c757d);font-size:13px}.preview-section{margin-bottom:20px}.preview-section h4{align-items:center;display:flex;font-size:14px;font-weight:600;gap:8px;margin:0 0 12px}.preview-placeholder{background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border:1px solid #dee2e6;border:1px solid var(--border-color,#dee2e6);border-radius:8px;padding:24px}.preview-placeholder.display-preview,.preview-placeholder.form-preview{display:flex;flex-direction:column;gap:8px}.key-value-demo .demo-row{border-bottom:1px solid #dee2e6;border-bottom:1px solid var(--border-color,#dee2e6);display:flex;padding:8px 0}.key-value-demo .demo-row:last-child{border-bottom:none}.key-value-demo .label{color:#6c757d;color:var(--text-muted,#6c757d);flex:0 0 120px;font-weight:500}.key-value-demo .value{color:#212529;color:var(--text-primary,#212529);flex:1 1}.card-grid-demo{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(2,1fr)}.card-grid-demo .demo-card{background:#fff;background:var(--bg-primary,#fff);border:1px solid #dee2e6;border:1px solid var(--border-color,#dee2e6);border-radius:6px;display:flex;flex-direction:column;gap:4px;padding:12px}.card-grid-demo .badge{align-self:flex-start;background:#d1fae5;border-radius:3px;color:#065f46;display:inline-block;font-size:10px;padding:2px 6px}.card-grid-demo .name{font-weight:500}.card-grid-demo .detail{color:#6c757d;color:var(--text-muted,#6c757d);font-size:12px}.snapshot-create-form{background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border-radius:8px;margin-bottom:24px;padding:20px}.snapshot-create-form h4{align-items:center;display:flex;font-size:15px;font-weight:600;gap:8px;margin:0 0 16px}.snapshot-name{color:#212529;color:var(--text-primary,#212529);font-size:14px;font-weight:500}.field-loading-state{align-items:center;color:#6c757d;color:var(--text-muted,#6c757d);display:flex;gap:12px;justify-content:center;padding:48px}.separator{color:#dee2e6;color:var(--border-color,#dee2e6);margin:0 4px}.remove-confirm-modal{width:500px}.remove-confirm-modal .warning-text{align-items:flex-start;background:#fef3c7;border-radius:8px;color:#92400e;display:flex;gap:12px;margin-bottom:20px;padding:16px}.archived-classes-list{display:flex;flex-direction:column;gap:8px;margin-top:12px}.archived-class-item{align-items:center;background:#fff;border:1px solid #fecaca;border-radius:6px;display:flex;justify-content:space-between;padding:10px 12px}.archived-class-info{align-items:center;display:flex;font-size:13px;gap:8px}.archived-class-label{color:#212529;color:var(--text-primary,#212529);font-weight:500}.archived-date{color:#6c757d;color:var(--text-muted,#6c757d);font-size:12px}.archived-class-actions{display:flex;gap:8px}.archived-class-actions .btn-sm{align-items:center;border-radius:4px;cursor:pointer;display:flex;font-size:12px;gap:4px;padding:4px 10px}.archived-class-actions .btn-outline{background:#fff;border:1px solid #dee2e6;border:1px solid var(--border-color,#dee2e6);color:#212529;color:var(--text-primary,#212529)}.archived-class-actions .btn-outline:hover{background:#f3f4f6}.archived-class-actions .btn-danger{background:#fee2e2;border:1px solid #fca5a5;color:#991b1b}.archived-class-actions .btn-danger:hover{background:#fecaca}.archive-sub-tabs{border-bottom:1px solid #dee2e6;border-bottom:1px solid var(--border-color,#dee2e6);display:flex;gap:4px;margin-bottom:16px;padding-bottom:8px}.archive-sub-tab{align-items:center;background:none;border:none;border-bottom:2px solid #0000;color:#6c757d;color:var(--text-muted,#6c757d);cursor:pointer;display:flex;font-size:13px;font-weight:500;gap:6px;padding:6px 14px;transition:color .15s,border-color .15s}.archive-sub-tab:hover{color:#212529;color:var(--text-primary,#212529)}.archive-sub-tab.active{border-bottom-color:#991b1b;color:#991b1b}.archive-sub-tab .sub-tab-count{background:#fee2e2;border-radius:10px;color:#991b1b;font-size:11px;font-weight:600;padding:1px 6px}.nesting-badge{align-items:center;border:1px solid #0000;border-radius:4px;cursor:pointer;display:inline-flex;font-size:10px;font-weight:500;gap:4px;padding:3px 8px;transition:all .15s}.nesting-badge.nested{background:#fef3c7;color:#92400e}.nesting-badge.nested:hover{background:#fde68a;border-color:#fbbf24}.nesting-badge.not-nested{background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);color:#6c757d;color:var(--text-muted,#6c757d)}.nesting-badge.not-nested:hover{background:#e9ecef;border-color:#adb5bd;border-color:var(--border-hover,#adb5bd)}.nesting-modal{width:420px}.nesting-options{display:flex;flex-direction:column;gap:10px}.nesting-option{align-items:flex-start;background:#fff;background:var(--bg-primary,#fff);border:2px solid #dee2e6;border:2px solid var(--border-color,#dee2e6);border-radius:10px;cursor:pointer;display:flex;gap:12px;padding:14px 16px;transition:all .15s}.nesting-option:hover{background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border-color:#adb5bd;border-color:var(--border-hover,#adb5bd)}.nesting-option.selected{background:#f0f7ff;border-color:#0d6efd;border-color:var(--color-primary,#0d6efd)}.nesting-option-radio{align-items:center;border:2px solid #dee2e6;border:2px solid var(--border-color,#dee2e6);border-radius:50%;display:flex;flex-shrink:0;height:22px;justify-content:center;margin-top:1px;transition:all .15s;width:22px}.nesting-option.selected .nesting-option-radio{background:#0d6efd;background:var(--color-primary,#0d6efd);border-color:#0d6efd;border-color:var(--color-primary,#0d6efd);color:#fff}.nesting-option-details{flex:1 1}.nesting-option-details strong{color:#212529;color:var(--text-primary,#212529);display:block;font-size:14px;font-weight:600;margin-bottom:4px}.nesting-option-details span{color:#6c757d;color:var(--text-muted,#6c757d);display:block;font-size:12px}.nesting-option-details code{background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border-radius:3px;color:#495057;color:var(--text-secondary,#495057);font-size:11px;padding:1px 4px}.sync-modal{width:480px}.sync-options{display:flex;flex-direction:column;gap:10px}.sync-option{align-items:flex-start;background:#fff;background:var(--bg-primary,#fff);border:2px solid #dee2e6;border:2px solid var(--border-color,#dee2e6);border-radius:10px;cursor:pointer;display:flex;gap:12px;padding:14px 16px;transition:all .15s}.sync-option:hover{background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border-color:#adb5bd;border-color:var(--border-hover,#adb5bd)}.sync-option.selected{background:#f0f7ff;border-color:#0d6efd;border-color:var(--color-primary,#0d6efd)}.sync-option-radio{align-items:center;border:2px solid #dee2e6;border:2px solid var(--border-color,#dee2e6);border-radius:50%;display:flex;flex-shrink:0;height:22px;justify-content:center;margin-top:1px;transition:all .15s;width:22px}.sync-option.selected .sync-option-radio{background:#0d6efd;background:var(--color-primary,#0d6efd);border-color:#0d6efd;border-color:var(--color-primary,#0d6efd);color:#fff}.sync-option-details{flex:1 1}.sync-option-details strong{color:#212529;color:var(--text-primary,#212529);display:block;font-size:14px;font-weight:600;margin-bottom:4px}.sync-option-details span{color:#6c757d;color:var(--text-muted,#6c757d);display:block;font-size:12px}.sync-option.disabled{cursor:not-allowed;opacity:.55}.sync-option.disabled,.sync-option.disabled:hover{background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border-color:#dee2e6;border-color:var(--border-color,#dee2e6)}.sync-option-constraint{color:#b45309!important;color:var(--text-warning,#b45309)!important;font-size:11px!important;font-style:italic}.sync-option-hint{color:#0d6efd!important;color:var(--color-primary,#0d6efd)!important;font-size:11px!important}.sync-category-empty{border:2px dashed #dee2e6;border:2px dashed var(--border-color,#dee2e6);border-radius:10px;color:#6c757d;color:var(--text-muted,#6c757d);font-size:13px;padding:20px 16px;text-align:center}.sync-category-empty p{margin:0}.sync-category-actions{border-top:1px solid #dee2e6;border-top:1px solid var(--border-color,#dee2e6);display:flex;justify-content:space-between;margin-top:14px;padding-top:14px}.sync-category-actions .btn{align-items:center;display:inline-flex;gap:4px}.sync-target-tabs{border-bottom:1px solid #dee2e6;border-bottom:1px solid var(--border-color,#dee2e6);display:flex;gap:8px;margin-bottom:20px;padding-bottom:12px}.sync-target-tab{align-items:center;background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border:1px solid #dee2e6;border:1px solid var(--border-color,#dee2e6);border-radius:8px;color:#212529;color:var(--text-primary,#212529);cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;padding:10px 20px;transition:all .2s ease}.sync-target-tab:hover{background:#e9ecef}.sync-target-tab.active{background:#0d6efd;background:var(--color-primary,#0d6efd);border-color:#0d6efd;border-color:var(--color-primary,#0d6efd);color:#fff}.sync-target-tab .mapping-count{background:#0000001a;border-radius:10px;font-size:12px;padding:2px 8px}.sync-target-tab.active .mapping-count{background:#fff3}.sync-actions-bar{align-items:center;background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border-radius:8px;display:flex;gap:12px;margin-bottom:20px;padding:12px 16px}.sync-actions-bar .refresh-info{color:#6c757d;color:var(--text-muted,#6c757d);font-size:13px}.source-config-card{background:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;margin-bottom:20px;padding:14px 16px}.source-config-header{align-items:center;color:#1e40af;display:flex;font-size:13px;font-weight:600;gap:8px;margin-bottom:10px}.source-config-details{display:flex;flex-wrap:wrap;gap:24px}.source-config-item{display:flex;flex-direction:column;gap:2px}.source-config-label{color:#6b7280;font-size:11px;font-weight:600;letter-spacing:.3px;text-transform:uppercase}.source-config-value{color:#1e3a5f;font-size:14px;font-weight:500}.sync-mappings-list{display:flex;flex-direction:column;gap:16px}.sync-mapping-card{background:#fff;border:1px solid #dee2e6;border:1px solid var(--border-color,#dee2e6);border-radius:8px;padding:16px}.sync-mapping-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.mapping-class-info{align-items:center;display:flex;gap:12px}.mapping-class-info h4{color:#212529;color:var(--text-primary,#212529);font-size:15px;font-weight:600;margin:0}.mapping-direction-badge{border-radius:4px;font-size:12px;font-weight:500;padding:4px 10px}.mapping-direction-badge[data-direction=push]{background:#dbeafe;color:#1d4ed8}.mapping-direction-badge[data-direction=pull]{background:#fef3c7;color:#92400e}.mapping-direction-badge[data-direction=bidirectional]{background:#d1fae5;color:#065f46}.mapping-description{color:#6c757d;color:var(--text-muted,#6c757d);font-size:13px;margin:0 0 16px}.direction-select{background:#fff;border:1px solid #dee2e6;border:1px solid var(--border-color,#dee2e6);border-radius:4px;color:#212529;color:var(--text-primary,#212529);font-size:13px;padding:6px 12px}.field-mappings-table{background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border-radius:6px;overflow:hidden}.field-mapping-header{background:#e9ecef;color:#6c757d;color:var(--text-muted,#6c757d);font-size:11px;font-weight:600;letter-spacing:.5px;padding:10px 12px;text-transform:uppercase}.field-mapping-header,.field-mapping-row{grid-gap:8px;display:grid;gap:8px;grid-template-columns:36px 1fr 60px 1fr 90px 36px}.field-mapping-row{align-items:center;border-bottom:1px solid #e9ecef;padding:8px 12px}.field-mapping-row:last-child{border-bottom:none}.field-mapping-row.hidden-field{opacity:.5}.field-mapping-row.hidden-field .field-label-input{text-decoration:line-through}.field-mapping-row .remote-field{color:#212529;color:var(--text-primary,#212529);font-size:13px}.field-mapping-row .visibility-toggle{align-items:center;background:none;border:none;color:#6c757d;color:var(--text-muted,#6c757d);cursor:pointer;display:flex;justify-content:center;padding:2px}.field-mapping-row .visibility-toggle.visible{color:#0d6efd;color:var(--color-primary,#0d6efd)}.field-mapping-row .field-label-input{background:#0000;border:1px solid #0000;border-radius:4px;color:#212529;color:var(--text-primary,#212529);font-size:13px;padding:4px 6px;width:100%}.field-mapping-row .field-label-input:focus{background:#fff;border-color:#0d6efd;border-color:var(--color-primary,#0d6efd);outline:none}.field-direction-select{cursor:pointer;padding:4px 8px;text-align:center}.field-direction-select,.field-type-select{background:#fff;border:1px solid #dee2e6;border:1px solid var(--border-color,#dee2e6);border-radius:4px;font-size:12px}.field-type-select{color:#212529;color:var(--text-primary,#212529);padding:3px 6px}.read-only-indicator{color:#9ca3af;cursor:help;font-size:14px;text-align:center}.transform-badge{align-items:center;background:#dbeafe;border-radius:4px;color:#1d4ed8;cursor:help;display:inline-flex;font-size:11px;font-weight:600;height:20px;justify-content:center;width:20px}.infodocs-only-fields{align-items:center;border-top:1px dashed #dee2e6;border-top:1px dashed var(--border-color,#dee2e6);display:flex;flex-wrap:wrap;gap:8px;margin-top:12px;padding-top:12px}.infodocs-only-label{color:#6c757d;color:var(--text-muted,#6c757d);font-size:12px;font-weight:500}.infodocs-only-field{background:#f3f4f6;border:1px solid #0000;border-radius:4px;color:#6b7280;font-size:12px;padding:3px 8px;transition:background-color .15s,border-color .15s}.infodocs-only-field.linkable{cursor:pointer}.infodocs-only-field.linkable:hover{background-color:#e8f4fd;border-color:#3498db;color:#2980b9}.link-field-icon{margin-left:4px;opacity:0;transition:opacity .15s;vertical-align:middle}.infodocs-only-field.linkable:hover .link-field-icon{opacity:1}.link-field-dropdown{background:#fff;border:1px solid #ddd;border-radius:4px;box-shadow:0 2px 8px #0000001f;left:0;margin-top:4px;max-height:200px;min-width:200px;overflow-y:auto;position:absolute;top:100%;z-index:100}.link-field-dropdown-item{cursor:pointer;font-size:12px;padding:6px 10px;white-space:nowrap}.link-field-dropdown-item:hover{background-color:#f0f0f0}.unlink-field-btn{background:none;border:none;color:#999;cursor:pointer;opacity:.4;padding:2px 4px;transition:opacity .15s,color .15s;vertical-align:middle}.unlink-field-btn:hover{color:#e74c3c;opacity:1}.non-syncable-section{background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border-radius:8px;margin-top:24px;padding:16px}.non-syncable-section h4{align-items:center;color:#212529;color:var(--text-primary,#212529);display:flex;font-size:14px;font-weight:600;gap:8px;margin:0 0 8px}.non-syncable-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.non-syncable-badge{background:#f3f4f6;border:1px solid #e5e7eb;border-radius:4px;color:#6b7280;font-size:12px;padding:4px 10px}.sync-mappings-footer{border-top:1px solid #dee2e6;border-top:1px solid var(--border-color,#dee2e6);display:flex;justify-content:flex-end;margin-top:24px;padding-top:16px}.template-preview-modal.large{max-width:900px;width:90%}.template-preview-modal.fullwidth{max-height:90vh;max-width:1400px;min-height:60vh;width:95vw}.template-preview-modal.fullwidth .modal-header{align-items:center;background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border-bottom:1px solid #dee2e6;border-bottom:1px solid var(--border-color,#dee2e6);display:flex;gap:16px;padding:16px 24px}.template-preview-modal.fullwidth .modal-header h3{align-items:center;display:flex;flex-shrink:0;font-size:18px;font-weight:600;gap:10px;margin:0}.template-preview-modal.fullwidth .modal-header-info{align-items:center;display:flex;flex:1 1;gap:12px}.template-preview-modal.fullwidth .template-badge{background:#0d6efd;background:var(--color-primary,#0d6efd);border-radius:4px;color:#fff;font-size:12px;font-weight:500;padding:4px 10px}.template-preview-modal.fullwidth .field-count-badge{align-items:center;background:#e9ecef;background:var(--bg-tertiary,#e9ecef);border-radius:4px;color:#6c757d;color:var(--text-secondary,#6c757d);display:flex;font-size:12px;gap:4px;padding:4px 10px}.template-preview-modal.fullwidth .modal-body{background:#f5f5f5;flex:1 1;overflow:auto;padding:24px}.template-preview-modal.fullwidth .preview-render-area{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;min-height:300px;padding:20px}.template-preview-modal.fullwidth .preview-warning-box{align-items:center;color:#6c757d;color:var(--text-muted,#6c757d);display:flex;flex-direction:column;justify-content:center;padding:60px 40px;text-align:center}.template-preview-modal.fullwidth .preview-warning-box svg{color:#f59e0b;margin-bottom:12px}.template-preview-modal.fullwidth .preview-warning-box p{font-size:16px;margin:0 0 4px}.template-preview-modal.fullwidth .preview-warning-box small{color:#999;color:var(--text-muted,#999)}.template-preview-modal.fullwidth .modal-footer{align-items:center;background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border-top:1px solid #dee2e6;border-top:1px solid var(--border-color,#dee2e6);display:flex;gap:12px;justify-content:flex-end;padding:16px 24px}.preview-empty{color:#6c757d;color:var(--text-muted,#6c757d);padding:40px;text-align:center}.empty-value{color:#999;color:var(--text-muted,#999)}.preview-kv-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.preview-kv-row{background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border:1px solid #e9ecef;border:1px solid var(--border-color,#e9ecef);border-radius:6px;display:flex;justify-content:space-between;padding:10px 14px}.preview-kv-label{color:#6c757d;color:var(--text-secondary,#6c757d);font-size:13px;font-weight:500}.preview-kv-value{color:#333;color:var(--text-primary,#333);font-size:13px;font-weight:500;max-width:60%;text-align:right;word-break:break-word}.preview-bullet-list{list-style:disc;margin:0;padding:0 0 0 20px}.preview-bullet-list li{color:#333;color:var(--text-primary,#333);padding:6px 0}.preview-table-wrapper{overflow-x:auto}.preview-data-table{border-collapse:collapse;font-size:13px;width:100%}.preview-data-table th{background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border-bottom:2px solid #dee2e6;border-bottom:2px solid var(--border-color,#dee2e6);color:#495057;color:var(--text-secondary,#495057);font-weight:600;padding:10px 12px;text-align:left;white-space:nowrap}.preview-data-table td{border-bottom:1px solid #e9ecef;border-bottom:1px solid var(--border-color,#e9ecef);color:#333;color:var(--text-primary,#333);padding:10px 12px}.preview-data-table tr:hover td{background:#f8f9fa;background:var(--bg-hover,#f8f9fa)}.preview-card-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.preview-card{background:#fff;border:1px solid #e0e0e0;border:1px solid var(--border-color,#e0e0e0);border-radius:8px;box-shadow:0 1px 3px #0000000d;overflow:hidden}.preview-card-header{align-items:center;background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border-bottom:1px solid #e9ecef;border-bottom:1px solid var(--border-color,#e9ecef);display:flex;justify-content:space-between;padding:12px 16px}.preview-card-header strong{color:#333;color:var(--text-primary,#333);font-size:14px}.preview-status-badge{border-radius:4px;font-size:11px;font-weight:600;padding:3px 8px;text-transform:capitalize}.preview-status-badge.active,.preview-status-badge.enabled,.preview-status-badge.online,.preview-status-badge.operational,.preview-status-badge.running{background:#d1fae5;color:#065f46}.preview-status-badge.disabled,.preview-status-badge.inactive,.preview-status-badge.offline{background:#fee2e2;color:#991b1b}.preview-card-body{padding:12px 16px}.preview-card-field{border-bottom:1px solid #f0f0f0;border-bottom:1px solid var(--border-color,#f0f0f0);display:flex;font-size:13px;justify-content:space-between;padding:6px 0}.preview-card-field:last-child{border-bottom:none}.preview-field-label{color:#6c757d;color:var(--text-muted,#6c757d)}.preview-field-value{color:#333;color:var(--text-primary,#333);font-weight:500;max-width:60%;text-align:right;word-break:break-word}.preview-field-count{align-items:center;color:#6c757d;color:var(--text-muted,#6c757d);display:flex;font-size:13px;gap:6px;margin-top:8px}.preview-field-count svg{opacity:.7}.preview-generate-section{align-items:center;background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border:1px dashed #0ea5e9;border-radius:12px;display:flex;flex-direction:column;gap:12px;margin-bottom:20px;padding:32px}.preview-generate-section .btn-primary{align-items:center;display:flex;font-size:15px;font-weight:500;gap:8px;padding:12px 24px}.preview-generate-section .btn-primary:disabled{cursor:not-allowed;opacity:.6}.preview-generate-section .spin{animation:spin 1s linear infinite}.preview-warning{color:#b45309}.preview-error,.preview-warning{align-items:center;display:flex;font-size:13px;gap:8px;margin:0}.preview-error{color:#dc2626}.preview-section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.preview-section-header h4{align-items:center;display:flex;font-size:14px;font-weight:600;gap:8px;margin:0}.preview-section-header .btn-sm{align-items:center;display:flex;font-size:12px;gap:4px;padding:4px 10px}.preview-render-area{background:#fff;background:var(--bg-primary,#fff);border:1px solid #dee2e6;border:1px solid var(--border-color,#dee2e6);border-radius:8px;max-height:500px;min-height:200px;overflow-y:auto;padding:16px}.preview-render-area .card-grid,.preview-render-area .equipment-grid,.preview-render-area .vendor-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.preview-render-area .data-table{border-collapse:collapse;width:100%}.preview-render-area .data-table td,.preview-render-area .data-table th{border-bottom:1px solid #dee2e6;border-bottom:1px solid var(--border-color,#dee2e6);padding:10px 12px;text-align:left}.preview-render-area .data-table th{background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);font-size:13px;font-weight:600}.preview-placeholder{align-items:center;color:#6c757d;color:var(--text-muted,#6c757d);display:flex;flex-direction:column;justify-content:center;padding:40px;text-align:center}.preview-placeholder svg{margin-bottom:12px;opacity:.5}.preview-placeholder p{font-size:14px;margin:0 0 4px}.preview-placeholder small{font-size:12px;opacity:.8}.sync-badge.view-source{background:#fef3c7;color:#92400e}.sync-badge.view-source:hover{background:#fde68a;border-color:#f59e0b}.field-count-badge:disabled,.nesting-badge.disabled,.sync-badge.disabled{cursor:default;opacity:.45;pointer-events:none}.system-class-banner{align-items:center;background:#f3f4f6;border:1px solid #d1d5db;border-radius:8px;color:#4b5563;display:flex;font-size:13px;gap:8px;margin-bottom:16px;padding:12px 16px}.view-config-form{background:#fffbeb;border:1px solid #fde68a;border-radius:8px;margin-top:12px;padding:12px}.source-class-picker{background:#fff;border:1px solid #e5e7eb;border-radius:6px;display:flex;flex-direction:column;gap:4px;max-height:200px;overflow-y:auto;padding:8px}.source-class-option{align-items:center;border-radius:4px;cursor:pointer;display:flex;font-size:13px;gap:8px;margin:0;padding:6px 8px}.source-class-option:hover{background:#f3f4f6}.source-class-option.selected{background:#fef3c7}.source-class-option input[type=checkbox]{margin:0}.view-config-detail{background:#fffbeb;border:1px solid #fde68a;border-radius:8px;display:flex;flex-direction:column;gap:12px;padding:16px}.view-config-row{align-items:flex-start;display:flex;gap:12px}.view-config-label{color:#6b7280;flex-shrink:0;font-size:13px;font-weight:500;min-width:120px}.view-config-value{color:#111827;font-size:13px}.view-sources-list{display:flex;flex-direction:column;gap:6px}.view-source-item{background:#fff;border:1px solid #e5e7eb;border-radius:4px;gap:6px;padding:4px 8px}.view-config-toggle,.view-source-item{align-items:center;display:flex;font-size:13px}.view-config-toggle{color:#374151;cursor:pointer;gap:8px}.view-config-toggle input[type=checkbox]{margin:0}.view-config-detail select.form-control{flex:1 1;font-size:13px;max-width:300px;padding:4px 8px}.view-config-detail .source-class-picker{max-height:300px}.create-class-modal{width:560px}.create-class-modal .form-help-text{color:#9ca3af;color:var(--text-tertiary,#9ca3af);font-size:11px;line-height:1.3;margin-top:2px}.create-class-modal .form-group label{color:#212529;color:var(--text-primary,#212529);font-size:13px;font-weight:600;margin-bottom:4px}.create-class-modal .form-row{display:flex;gap:12px}.create-class-modal .form-control.auto-derived{background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border-style:dashed;color:#6c757d;color:var(--text-muted,#6c757d)}.create-class-modal .form-control.auto-derived:focus{background:#fff;background:var(--bg-primary,#fff);border-style:solid;color:#212529;color:var(--text-primary,#212529)}.create-class-modal .source-class-picker{max-height:200px;overflow-y:auto}.field-removal-actions{border-top:1px solid #dee2e6;border-top:1px solid var(--border-color,#dee2e6);margin-top:20px;padding-top:16px}.field-removal-actions h4{color:#212529;color:var(--text-primary,#212529);font-size:14px;font-weight:600;margin:0 0 12px}.removal-options{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.removal-option{align-items:flex-start;border:1px solid #dee2e6;border:1px solid var(--border-color,#dee2e6);border-radius:6px;cursor:pointer;display:flex;gap:10px;padding:10px 12px;transition:all .15s ease}.removal-option:hover{background:#f8f9fa;background:var(--bg-secondary,#f8f9fa)}.removal-option.selected{background:#fffbeb;border-color:#f59e0b}.removal-option input[type=radio]{accent-color:#f59e0b;margin-top:3px}.removal-option-details{display:flex;flex-direction:column;gap:2px}.removal-option-details strong{color:#212529;color:var(--text-primary,#212529);font-size:13px}.removal-option-details span{color:#6c757d;color:var(--text-muted,#6c757d);font-size:12px}.archive-reason-input{margin-top:8px}.archive-reason-input label{color:#6c757d;color:var(--text-muted,#6c757d);display:block;font-size:12px;font-weight:500;margin-bottom:4px}.archive-reason-input input{border:1px solid #dee2e6;border:1px solid var(--border-color,#dee2e6);border-radius:4px;font-size:13px;padding:6px 10px;width:100%}.migration-config{display:flex;flex-direction:column;gap:10px;margin-top:8px}.migration-strategy,.migration-target{display:flex;flex-direction:column;gap:4px}.migration-strategy label,.migration-target label{color:#6c757d;color:var(--text-muted,#6c757d);font-size:12px;font-weight:500}.migration-strategy select,.migration-target select{border:1px solid #dee2e6;border:1px solid var(--border-color,#dee2e6);border-radius:4px;font-size:13px;padding:6px 10px}.template-slot-summary{align-items:center;border-top:1px solid #e9ecef;border-top:1px solid var(--border-light,#e9ecef);display:flex;gap:8px;margin-top:8px;padding-top:8px}.slot-field-count{color:#64748b;color:var(--text-secondary,#64748b);font-size:12px}.slot-field-count.empty{color:#94a3b8;color:var(--text-muted,#94a3b8);font-style:italic}.template-slot-summary .btn-sm{align-items:center;display:inline-flex;font-size:11px;gap:4px;padding:3px 8px}.field-config-modal{max-height:90vh;max-width:1000px}.field-config-body{grid-gap:20px;display:grid;gap:20px;grid-template-columns:280px 1fr;max-height:60vh;min-height:400px;overflow:hidden}.field-config-available,.field-config-configured{overflow-y:auto}.field-config-available h4,.field-config-configured h4{color:#1e293b;color:var(--text-primary,#1e293b);font-size:13px;font-weight:600;margin:0 0 4px}.field-config-hint{color:#94a3b8;color:var(--text-muted,#94a3b8);font-size:11px;margin:0 0 8px}.field-config-list{display:flex;flex-direction:column;gap:4px}.field-config-available-item{align-items:center;background:#fff;background:var(--card-bg,#fff);border:1px solid #e9ecef;border:1px solid var(--border-light,#e9ecef);border-radius:4px;display:flex;font-size:12px;gap:6px;padding:6px 8px}.field-config-available-item:hover{background:#eff6ff;background:var(--primary-bg,#eff6ff);border-color:#3b82f6;border-color:var(--primary-color,#3b82f6)}.field-config-available-item .field-config-label{flex:1 1;font-weight:500}.field-config-available-item .field-config-key{color:#94a3b8;color:var(--text-muted,#94a3b8);font-family:monospace;font-size:10px}.field-config-add-buttons{display:flex;gap:4px}.field-config-add-buttons .btn-xs{font-size:10px;padding:2px 6px;white-space:nowrap}.field-config-add-buttons .btn-xs.secondary{border-color:#a855f7;border-color:var(--purple-color,#a855f7);color:#a855f7;color:var(--purple-color,#a855f7)}.field-config-section{margin-bottom:16px}.field-config-section+.field-config-section{border-top:1px solid #e9ecef;border-top:1px solid var(--border-light,#e9ecef);padding-top:12px}.field-config-badges{display:flex;flex-wrap:wrap;gap:6px}.badge-toggle{align-items:center;background:#fff;background:var(--card-bg,#fff);border:1px solid #dee2e6;border:1px solid var(--border-color,#dee2e6);border-radius:4px;cursor:pointer;display:inline-flex;font-size:12px;gap:4px;padding:3px 8px;-webkit-user-select:none;user-select:none}.badge-toggle.active{background:#eff6ff;background:var(--primary-bg,#eff6ff);border-color:#3b82f6;border-color:var(--primary-color,#3b82f6);color:#3b82f6;color:var(--primary-color,#3b82f6)}.badge-toggle input{display:none}.notes-display-toggle{border:1px solid #d1d5db;border:1px solid var(--border-color,#d1d5db);border-radius:6px;display:inline-flex;overflow:hidden}.notes-display-toggle .toggle-option{align-items:center;background:#f9fafb;background:var(--bg-secondary,#f9fafb);border:none;color:#6b7280;color:var(--text-secondary,#6b7280);cursor:pointer;display:inline-flex;font-size:13px;gap:6px;padding:6px 14px;transition:all .15s ease}.notes-display-toggle .toggle-option:first-child{border-right:1px solid #d1d5db;border-right:1px solid var(--border-color,#d1d5db)}.notes-display-toggle .toggle-option:hover:not(.active){background:#f3f4f6;background:var(--bg-hover,#f3f4f6)}.notes-display-toggle .toggle-option.active{background:#3b82f6;background:var(--primary-color,#3b82f6);color:#fff}.data-table-options{display:flex;flex-direction:column;gap:8px}.dt-option-row{align-items:center;display:flex;gap:8px}.dt-option-label{color:#6b7280;color:var(--text-secondary,#6b7280);flex:0 0 100px;font-size:13px;font-weight:500}.dt-option-select{flex:1 1;font-size:13px;max-width:220px;padding:4px 8px}.dt-option-select-sm{font-size:13px;padding:4px 8px;width:110px}.dt-option-input{font-size:13px;padding:4px 8px;width:80px}.dt-option-hint{color:#9ca3af;color:var(--text-secondary,#9ca3af);font-size:12px}.field-config-ordered-list{display:flex;flex-direction:column;gap:4px}.field-config-ordered-item{align-items:center;background:#eff6ff;background:var(--primary-bg,#eff6ff);border:1px solid #e9ecef;border:1px solid var(--border-light,#e9ecef);border-radius:4px;display:flex;font-size:12px;gap:8px;padding:6px 8px}.field-config-ordered-item.secondary{background:#faf5ff;border-color:#e9d5ff}.field-order-num{color:#94a3b8;color:var(--text-muted,#94a3b8);font-size:10px;font-weight:600;min-width:16px;text-align:center}.field-config-ordered-item .field-config-label{flex:1 1;font-weight:500}.field-config-ordered-item .field-config-key{color:#94a3b8;color:var(--text-muted,#94a3b8);font-family:monospace;font-size:10px}.field-config-item-actions{display:flex;gap:2px}.field-config-item-actions .btn-xs{line-height:1;padding:2px 4px}.field-config-item-actions .btn-danger{color:#dc2626;color:var(--error-color,#dc2626)}.field-config-empty{border:1px dashed #e9ecef;border:1px dashed var(--border-light,#e9ecef);border-radius:4px;color:#94a3b8;color:var(--text-muted,#94a3b8);font-size:12px;font-style:italic;padding:12px;text-align:center}.field-config-preview{background:#f8fafc;background:var(--secondary-bg,#f8fafc);border:1px solid #e9ecef;border:1px solid var(--border-light,#e9ecef);border-radius:4px;max-height:200px;overflow-y:auto;padding:12px}.preview-info-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.preview-info-block{background:#fff;background:var(--card-bg,#fff);border:1px solid #e9ecef;border:1px solid var(--border-light,#e9ecef);border-radius:6px;padding:10px 12px}.preview-info-header{border-bottom:1px solid #e9ecef;border-bottom:1px solid var(--border-light,#e9ecef);font-size:13px;font-weight:600;margin-bottom:8px;padding-bottom:6px}.preview-info-row{display:flex;font-size:12px;justify-content:space-between;padding:3px 0}.preview-info-label{color:#64748b;color:var(--text-secondary,#64748b)}.preview-info-value{color:#1e293b;color:var(--text-primary,#1e293b);font-weight:500}.preview-card-secondary{border-top:1px solid #e9ecef;border-top:1px solid var(--border-light,#e9ecef);margin-top:6px;padding-top:6px}.preview-card-field.secondary{font-size:11px;opacity:.8}.schedule-picker{background:#f8f9fa;border:1px solid #e5e7eb;border-radius:8px;display:flex;flex-direction:column;gap:16px;padding:16px}.schedule-picker.disabled{opacity:.6;pointer-events:none}.quick-options{display:flex;flex-wrap:wrap;gap:8px}.quick-option-btn{background:#fff;border:1px solid #d1d5db;border-radius:16px;color:#374151;cursor:pointer;font-size:12px;padding:6px 12px;transition:all .15s ease}.quick-option-btn:hover:not(:disabled){background:#667eea;border-color:#667eea;color:#fff}.quick-option-btn:disabled{cursor:not-allowed;opacity:.5}.datetime-inputs{display:flex;gap:16px}.datetime-inputs .input-group{flex:1 1}.input-group{display:flex;flex-direction:column;gap:6px}.input-label{align-items:center;color:#6b7280;display:flex;font-size:12px;font-weight:500;gap:6px}.input-label svg{color:#9ca3af}.date-input,.time-input{background:#fff;border:1px solid #d1d5db;border-radius:6px;color:#1f2937;font-size:14px;padding:10px 12px;transition:border-color .15s ease,box-shadow .15s ease}.date-input:focus,.time-input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.date-input:disabled,.time-input:disabled{background:#f3f4f6;color:#9ca3af;cursor:not-allowed}.timezone-selector{margin-top:4px}.timezone-dropdown-container{position:relative}.timezone-trigger{align-items:center;background:#fff;border:1px solid #d1d5db;border-radius:6px;color:#1f2937;cursor:pointer;display:flex;font-size:14px;justify-content:space-between;padding:10px 12px;transition:border-color .15s ease;width:100%}.timezone-trigger:hover:not(:disabled){border-color:#9ca3af}.timezone-trigger:disabled{background:#f3f4f6;color:#9ca3af;cursor:not-allowed}.timezone-dropdown{background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 4px 12px #0000001a;left:0;margin-top:4px;max-height:240px;overflow-y:auto;position:absolute;right:0;top:100%;z-index:10}.timezone-option{align-items:center;background:none;border:none;color:#374151;cursor:pointer;display:flex;font-size:13px;justify-content:space-between;padding:10px 12px;text-align:left;transition:background .1s ease;width:100%}.timezone-option:hover{background:#f3f4f6}.timezone-option.selected{background:#eef2ff;color:#667eea;font-weight:500}.tz-label{flex:1 1}.tz-offset{color:#9ca3af;font-family:monospace;font-size:12px}.timezone-option.selected .tz-offset{color:#667eea}.schedule-preview{align-items:center;background:#eef2ff;border:1px solid #c7d2fe;border-radius:6px;display:flex;gap:8px;padding:12px}.preview-label{color:#6366f1;font-size:13px;font-weight:500}.preview-value{color:#1f2937;font-size:14px;font-weight:600}@media (max-width:480px){.datetime-inputs{flex-direction:column}.quick-options{justify-content:center}}.scheduled-tasks-list{padding:16px 0}.scheduled-tasks-loading{align-items:center;color:#6b7280;display:flex;gap:12px;justify-content:center;padding:48px}.scheduled-tasks-loading .spinning{animation:spin 1s linear infinite}.scheduled-tasks-filters{align-items:center;background:#f8f9fa;border-radius:8px;display:flex;gap:16px;margin-bottom:16px;padding:12px 16px}.filter-group{align-items:center;gap:8px}.filter-group label{color:#6b7280;font-size:13px}.filter-group select{border:1px solid #d1d5db;color:#1f2937;font-size:13px;padding:6px 12px}.scheduled-tasks-error{align-items:center;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#b91c1c;display:flex;gap:12px;margin-bottom:16px;padding:12px 16px}.scheduled-tasks-error button{background:#fff;border:1px solid #fecaca;border-radius:4px;color:#b91c1c;cursor:pointer;font-size:12px;margin-left:auto;padding:4px 12px}.scheduled-tasks-empty{align-items:center;color:#6b7280;display:flex;flex-direction:column;justify-content:center;padding:64px 32px;text-align:center}.scheduled-tasks-empty svg{color:#d1d5db;margin-bottom:16px}.scheduled-tasks-empty h3{color:#374151;font-size:18px;margin:0 0 8px}.scheduled-tasks-empty p{font-size:14px;margin:0 0 8px}.scheduled-tasks-empty .hint{color:#9ca3af;font-size:13px}.scheduled-tasks-table{overflow-x:auto}.scheduled-tasks-table table{border-collapse:collapse;width:100%}.scheduled-tasks-table th{background:#f9fafb;border-bottom:1px solid #e5e7eb;color:#6b7280;font-size:12px;font-weight:600;letter-spacing:.05em;padding:12px 16px;text-align:left;text-transform:uppercase}.scheduled-tasks-table th.sortable{cursor:pointer;transition:color .15s;-webkit-user-select:none;user-select:none}.scheduled-tasks-table th.sortable:hover{color:#3b82f6;color:var(--primary-color,#3b82f6)}.scheduled-tasks-table td{border-bottom:1px solid #f3f4f6;padding:16px;vertical-align:middle}.scheduled-tasks-table tr:hover td{background:#f9fafb}.task-cell .task-info{align-items:center;display:flex;gap:12px}.task-cell .task-icon{align-items:center;border-radius:10px;display:inline-flex;height:36px;justify-content:center;width:36px}.task-cell .task-icon.provision-user{background:#0078d41a;color:#0078d4;color:var(--primary-color,#0078d4)}.task-cell .task-icon.password-reset{background:#ff98001a;color:#f57c00}.task-cell .task-icon.deprovision-user{background:#ef44441a;color:#ef4444}.task-cell .task-details{display:flex;flex-direction:column;gap:2px}.task-cell .task-name{color:#1f2937;font-size:14px;font-weight:500}.task-cell .task-type{color:#6b7280;font-size:12px}.target-cell .target-info{align-items:center;display:flex;gap:8px}.target-cell .target-info svg{color:#9ca3af}.target-cell .target-info>div{display:flex;flex-direction:column;gap:2px}.target-cell .target-name{color:#1f2937;font-size:14px}.target-cell .target-email{color:#6b7280;font-size:12px}.target-cell .no-target{color:#9ca3af}.schedule-cell .schedule-info{align-items:center;color:#374151;display:flex;font-size:13px;gap:8px}.schedule-cell svg{color:#9ca3af}.status-cell .status-badge{align-items:center;border-radius:16px;display:inline-flex;font-size:12px;font-weight:500;gap:6px;padding:4px 10px}.creator-cell .creator-name{color:#6b7280;font-size:13px}.actions-cell{width:48px}.task-actions{position:relative}.action-menu-trigger{align-items:center;background:none;border:none;border-radius:6px;color:#6b7280;cursor:pointer;display:flex;height:32px;justify-content:center;transition:background .15s ease;width:32px}.action-menu-trigger:hover{background:#f3f4f6;color:#374151}.action-menu{background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 4px 12px #0000001a;margin-top:4px;min-width:160px;overflow:hidden;position:absolute;right:0;top:100%;z-index:10}.action-menu-item{align-items:center;background:none;border:none;color:#374151;cursor:pointer;display:flex;font-size:13px;gap:10px;padding:10px 14px;text-align:left;transition:background .1s ease;width:100%}.action-menu-item:hover{background:#f3f4f6}.action-menu-item.danger{color:#dc2626}.action-menu-item.danger:hover{background:#fef2f2}.action-menu-item.disabled{color:#9ca3af;cursor:default}.delete-confirmation{align-items:center;display:flex;flex-direction:column;padding:24px;text-align:center}.delete-confirmation h3{color:#1f2937;font-size:18px;margin:16px 0 8px}.delete-confirmation p{color:#6b7280;font-size:14px;margin:0 0 24px}.delete-confirmation .modal-actions{display:flex;gap:12px;width:100%}.delete-confirmation .modal-actions .btn{flex:1 1}.btn-danger{background:#dc2626;border-color:#dc2626}.btn-danger:hover:not(:disabled){background:#b91c1c;border-color:#b91c1c}.view-mode-toggle{background:#f3f4f6;background:var(--bg-secondary,#f3f4f6);border-radius:6px;gap:2px;margin-left:auto;padding:2px}.view-mode-toggle .btn-icon{background:#0000;border:none;color:#6b7280;color:var(--text-secondary,#6b7280);padding:6px 10px}.view-mode-toggle .btn-icon.active,.view-mode-toggle .btn-icon:hover{color:#3b82f6;color:var(--primary-color,#3b82f6)}.view-mode-toggle .btn-icon.active{background:#fff;box-shadow:0 1px 2px #0000000d}.calendar-view{border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb)}.calendar-header{background:#f9fafb;background:var(--bg-secondary,#f9fafb);border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--border-color,#e5e7eb)}.calendar-nav .btn-icon{border:1px solid #d1d5db;border:1px solid var(--border-color,#d1d5db);color:#6b7280;color:var(--text-secondary,#6b7280)}.calendar-nav .btn-icon:hover{border-color:#3b82f6;border-color:var(--primary-color,#3b82f6);color:#3b82f6;color:var(--primary-color,#3b82f6)}.calendar-title{color:#1f2937;color:var(--text-primary,#1f2937)}.calendar-weekdays{background:#f9fafb;background:var(--bg-secondary,#f9fafb);border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--border-color,#e5e7eb)}.calendar-weekday{color:#6b7280;color:var(--text-secondary,#6b7280)}.calendar-day{border-bottom:1px solid #f3f4f6;border-bottom:1px solid var(--border-color,#f3f4f6);border-right:1px solid #f3f4f6;border-right:1px solid var(--border-color,#f3f4f6)}.calendar-day.other-month{background:#f9fafb;background:var(--bg-secondary,#f9fafb)}.calendar-day.other-month .day-number{color:#9ca3af;color:var(--text-muted,#9ca3af)}.calendar-day.today{background:#eff6ff}.calendar-day.today .day-number{background:#3b82f6;background:var(--primary-color,#3b82f6)}.day-number{color:#1f2937;color:var(--text-primary,#1f2937)}.day-tasks{display:flex;flex-direction:column;gap:2px}.calendar-task{align-items:center;background:#f3f4f6;border-left:2px solid;border-radius:3px;cursor:pointer;display:flex;font-size:11px;gap:4px;overflow:hidden;padding:2px 4px;text-overflow:ellipsis;white-space:nowrap}.calendar-task:hover{opacity:.8}.calendar-task-name{color:#374151;color:var(--text-primary,#374151);flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis}.more-tasks{color:#6b7280;color:var(--text-secondary,#6b7280);cursor:pointer;font-size:10px;padding:2px 4px}.more-tasks:hover{color:#3b82f6;color:var(--primary-color,#3b82f6)}.week-header{background:#f9fafb;background:var(--bg-secondary,#f9fafb);border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--border-color,#e5e7eb)}.week-day-header{border-right:1px solid #f3f4f6;border-right:1px solid var(--border-color,#f3f4f6)}.week-day-header.today{background:#eff6ff}.weekday-name{color:#6b7280;color:var(--text-secondary,#6b7280)}.weekday-date{color:#1f2937;color:var(--text-primary,#1f2937)}.week-day-header.today .weekday-date{color:#3b82f6;color:var(--primary-color,#3b82f6)}.week-day-column{border-right:1px solid #f3f4f6;border-right:1px solid var(--border-color,#f3f4f6)}.week-task{background:#f9fafb;border-left:3px solid;border-radius:6px;cursor:pointer;padding:8px;transition:transform .2s ease,box-shadow .2s ease}.week-task:hover{box-shadow:0 2px 8px #0000001a;transform:translateY(-1px)}.week-task-time{color:#6b7280;color:var(--text-secondary,#6b7280);font-size:11px;font-weight:600;margin-bottom:4px}.week-task-title{align-items:center;color:#1f2937;color:var(--text-primary,#1f2937);display:flex;font-size:13px;font-weight:500;gap:6px}.week-task-title span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.week-task-status{font-size:11px;font-weight:500;margin-top:4px}.week-no-tasks{color:#9ca3af;color:var(--text-muted,#9ca3af);font-size:12px;padding:16px 8px;text-align:center}.provisioning-container{margin:0 auto;max-width:1400px;padding:20px}.provisioning-header{align-items:flex-start;display:flex;gap:20px;justify-content:space-between;margin-bottom:20px}.provisioning-header .header-content h2{align-items:center;color:var(--text-primary);display:flex;font-size:1.5rem;gap:10px;margin:0 0 8px}.provisioning-header .header-content p{color:var(--text-secondary);margin:0}.provisioning-header .header-actions{display:flex;gap:8px}.feature-status-banner{align-items:center;background:#fff8e1;border:1px solid #ffcc02;border-radius:8px;color:#856404;display:flex;font-size:14px;gap:10px;margin-bottom:20px;padding:12px 16px}.feature-status-banner strong{font-weight:600}.provisioning-tabs{border-bottom:2px solid var(--border-color);display:flex;gap:4px;margin-bottom:20px;padding-bottom:0}.provisioning-tabs .tab-button{align-items:center;background:#0000;border:none;border-bottom:2px solid #0000;color:var(--text-secondary);cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;margin-bottom:-2px;padding:12px 20px;transition:all .2s}.provisioning-tabs .tab-button:hover{color:var(--primary-color)}.provisioning-tabs .tab-button.active{border-bottom-color:var(--primary-color);color:var(--primary-color)}.provisioning-container .error-state,.provisioning-container .loading-state{align-items:center;color:var(--text-secondary);display:flex;flex-direction:column;gap:16px;justify-content:center;padding:60px 20px}.provisioning-container .error-state{color:var(--danger-color)}.provisioning-container .spinning{animation:provisioning-spin 1s linear infinite}@keyframes provisioning-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.provisioning-container .access-denied{align-items:center;color:var(--text-secondary);display:flex;flex-direction:column;gap:16px;justify-content:center;padding:80px 20px;text-align:center}.provisioning-container .access-denied h3{color:var(--text-primary);margin:0}.provisioning-container .access-denied p{margin:0}.provisioning-container .access-denied .access-hint{color:var(--text-muted);font-size:.875rem}.role-list{background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;padding:20px}.role-toolbar{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.role-count{color:var(--text-secondary);font-size:14px}.role-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.role-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;padding:16px;transition:all .2s}.role-card:hover{border-color:var(--primary-color);box-shadow:0 2px 8px #00000014}.role-card.is-default{border-color:var(--success-color)}.role-card-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:12px}.role-card-header h4{color:var(--text-primary);font-size:1rem;margin:0}.default-badge{align-items:center;background:var(--success-bg);border-radius:4px;color:var(--success-color);display:flex;font-size:12px;font-weight:500;gap:4px;padding:4px 8px}.role-card-body{margin-bottom:16px}.role-description{color:var(--text-secondary);font-size:14px;line-height:1.5;margin:0 0 12px}.role-templates{display:flex;flex-wrap:wrap;gap:8px}.role-templates .no-templates{color:var(--text-muted);font-size:13px;font-style:italic}.role-templates .template-badge{background:#f8f9fa;background:var(--surface-color,#f8f9fa);border:1px solid var(--border-color);border-radius:6px;display:flex;flex-direction:column;font-size:12px;gap:2px;padding:6px 10px}.role-templates .template-badge .template-name{color:var(--text-primary);font-weight:500}.role-templates .template-badge .template-service{color:var(--text-muted);font-size:11px}.role-details{display:flex;flex-direction:column;gap:8px}.detail-row{display:flex;font-size:13px;justify-content:space-between}.detail-label{color:var(--text-secondary)}.detail-value{color:var(--text-primary)}.role-card-actions{border-top:1px solid var(--border-color);display:flex;gap:8px;padding-top:12px}.provisioning-container .empty-state{align-items:center;color:var(--text-secondary);display:flex;flex-direction:column;gap:16px;justify-content:center;padding:60px 20px;text-align:center}.provisioning-container .empty-state h3{color:var(--text-primary);margin:0}.provisioning-container .empty-state p{margin:0;max-width:400px}.provisioning-container .empty-state .hint{color:var(--text-muted);font-size:.875rem}.provisioning-container .empty-state code{background:var(--code-bg);border-radius:4px;font-size:.875rem;padding:2px 6px}.role-form{display:flex;flex-direction:column;gap:16px}.role-form .form-row{align-items:flex-end;display:flex;gap:16px}.role-form .form-row .form-group:first-child{flex:1 1}.role-form .form-checkbox{flex-shrink:0}.role-form .form-checkbox label{align-items:center;color:var(--text-secondary);cursor:pointer;display:flex;font-size:13px;gap:8px;padding:10px 0;white-space:nowrap}.role-form .form-checkbox input[type=checkbox]{accent-color:var(--primary-color);height:16px;width:16px}.role-form .templates-container{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));padding:12px}.role-form .service-templates{background:var(--card-bg);border:1px solid var(--border-color);border-radius:6px;overflow:hidden}.role-form .service-label{align-items:center;background:var(--input-bg);color:var(--text-secondary);cursor:pointer;display:flex;font-size:12px;font-weight:600;gap:8px;letter-spacing:.5px;padding:10px 12px;text-transform:uppercase;transition:background-color .15s}.role-form .service-label:hover{background:var(--hover-bg)}.role-form .service-label .service-toggle{color:var(--text-muted);margin-left:auto}.role-form .service-label .selected-badge{background:#0000;border-radius:0;color:var(--primary-color);font-size:11px;font-weight:500;height:auto;letter-spacing:normal;margin-left:auto;position:static;text-transform:none;width:auto}.role-form .service-templates.collapsed .template-grid{display:none}.role-form .provider-icon{font-size:1rem}.role-form .template-grid{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));padding:12px}.role-form .template-option{align-items:center;background:var(--card-bg);border:1px solid var(--border-color);border-radius:6px;cursor:pointer;display:flex;gap:8px;min-width:140px;padding:8px 12px;transition:all .15s}.role-form .template-option:hover{border-color:var(--primary-color)}.role-form .template-option.selected{background:#0078d414;border-color:var(--primary-color)}.role-form .template-option input[type=checkbox],.role-form .template-option input[type=radio]{display:none}.role-form .template-option .template-info{flex:1 1;min-width:0}.role-form .template-option .template-name{color:var(--text-primary);display:block;font-size:13px;font-weight:500;margin-bottom:2px}.role-form .template-option .template-counts{align-items:center;color:var(--text-muted);display:flex;font-size:11px;gap:8px}.role-form .template-option .template-counts svg{margin-right:2px}.role-form .template-option .check-icon{color:var(--primary-color);flex-shrink:0}.role-form .template-option .template-description{color:var(--text-muted);display:block;font-size:11px;font-style:italic;margin-top:2px}.role-form .template-option .template-groups-preview{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}.role-form .template-option .template-groups-preview .group-tag{background:#0078d41a;border-radius:3px;color:var(--primary-color);display:inline-block;font-size:10px;padding:1px 6px;white-space:nowrap}.role-form .onprem-template-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}.role-form .empty-templates{background:var(--input-bg);border:1px solid var(--border-color);border-radius:6px;color:var(--text-muted);font-size:13px;padding:20px;text-align:center}.role-form .collapsible-section{background:var(--card-bg);border:1px solid var(--border-color);border-radius:6px}.role-form .collapsible-header{align-items:center;background:#0000;border:none;color:var(--text-primary);cursor:pointer;display:flex;font-size:13px;font-weight:500;gap:8px;padding:10px 12px;text-align:left;width:100%}.role-form .collapsible-header:hover{background:#00000008}.role-form .collapsible-header .collapse-icon{align-items:center;color:var(--text-secondary);display:flex}.role-form .collapsible-header .selected-count{color:var(--primary-color);font-size:12px;font-weight:500;margin-left:auto}.role-form .collapsible-section .templates-container{border-top:1px solid var(--border-color)}.role-form .collapsible-section .empty-templates{border:none;border-radius:0 0 6px 6px;border-top:1px solid var(--border-color)}.deprovision-modal .form-group,.password-reset-modal .form-group,.provision-modal .form-group,.provisioning-container .form-group{display:flex;flex-direction:column;gap:6px}.deprovision-modal .form-group label,.password-reset-modal .form-group label,.provision-modal .form-group label,.provisioning-container .form-group label{color:var(--text-primary);font-size:14px;font-weight:500}.deprovision-modal .form-group input[type=text],.deprovision-modal .form-group textarea,.password-reset-modal .form-group input[type=text],.password-reset-modal .form-group textarea,.provision-modal .form-group input[type=text],.provision-modal .form-group textarea,.provisioning-container .form-group input[type=text],.provisioning-container .form-group textarea{background:var(--input-bg);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);font-size:14px;padding:10px 12px}.deprovision-modal .form-group input:focus,.deprovision-modal .form-group textarea:focus,.password-reset-modal .form-group input:focus,.password-reset-modal .form-group textarea:focus,.provision-modal .form-group input:focus,.provision-modal .form-group textarea:focus,.provisioning-container .form-group input:focus,.provisioning-container .form-group textarea:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px #0078d41a;outline:none}.deprovision-modal .form-group textarea,.password-reset-modal .form-group textarea,.provision-modal .form-group textarea,.provisioning-container .form-group textarea{min-height:80px;resize:vertical}.deprovision-modal .form-hint,.password-reset-modal .form-hint,.provision-modal .form-hint,.provisioning-container .form-hint{color:var(--text-muted);font-size:12px;margin-top:4px}.deprovision-modal .form-checkbox label,.password-reset-modal .form-checkbox label,.provision-modal .form-checkbox label,.provisioning-container .form-checkbox label{align-items:center;cursor:pointer;display:flex;gap:8px}.deprovision-modal .form-checkbox input[type=checkbox],.password-reset-modal .form-checkbox input[type=checkbox],.provision-modal .form-checkbox input[type=checkbox],.provisioning-container .form-checkbox input[type=checkbox]{accent-color:var(--primary-color);height:16px;width:16px}.checkbox-grid{grid-gap:8px;background:var(--input-bg);border:1px solid var(--border-color);border-radius:6px;display:grid;gap:8px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));max-height:200px;overflow-y:auto;padding:12px}.checkbox-item{align-items:center;cursor:pointer;display:flex;font-size:13px;gap:8px}.checkbox-item input[type=checkbox]{accent-color:var(--primary-color);height:14px;width:14px}.sku-label{color:var(--text-muted);font-size:11px}.deprovision-modal .form-error,.password-reset-modal .form-error,.provision-modal .form-error,.provisioning-container .form-error{align-items:center;background:var(--danger-bg);border-radius:6px;color:var(--danger-color);display:flex;font-size:14px;gap:8px;padding:12px}.deprovision-modal .info-message,.password-reset-modal .info-message,.provision-modal .info-message,.provisioning-container .info-message{background:var(--info-bg);border-radius:6px;color:var(--info-color);font-size:14px;line-height:1.5;padding:12px}.deprovision-modal .form-actions,.password-reset-modal .form-actions,.provision-modal .form-actions,.provisioning-container .form-actions{border-top:1px solid var(--border-color);display:flex;gap:12px;justify-content:flex-end;padding-top:12px}.integration-sections{margin-top:8px}.integration-sections .section-header{align-items:center;color:var(--text-primary);display:flex;font-size:15px;font-weight:600;gap:8px;margin-bottom:4px}.integration-section{background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;margin-top:12px;overflow:hidden}.integration-section .integration-header{align-items:center;background:var(--input-bg);border-bottom:1px solid #0000;cursor:pointer;display:flex;justify-content:space-between;padding:12px 16px;transition:background-color .2s}.integration-section .integration-header:hover{background:var(--hover-bg)}.integration-section.expanded .integration-header{border-bottom-color:var(--border-color)}.integration-section .integration-info{align-items:center;display:flex;gap:10px}.integration-section .provider-icon{font-size:1.2rem}.integration-section .service-name{color:var(--text-primary);font-weight:500}.integration-section .sync-badge{background:#fff3cd;border-radius:10px;color:#856404;font-size:11px;font-weight:500;padding:2px 8px}.integration-section .integration-toggle{color:var(--text-muted)}.integration-section .integration-body{padding:16px}.integration-section .empty-message{background:var(--input-bg);border-radius:6px;color:var(--text-muted);font-size:14px;padding:20px;text-align:center}.integration-section .config-subsection{margin-bottom:16px}.integration-section .config-subsection:last-child{margin-bottom:0}.integration-section .subsection-header{align-items:center;border-bottom:1px solid var(--border-color);color:var(--text-secondary);display:flex;font-size:13px;font-weight:500;gap:8px;margin-bottom:8px;padding-bottom:6px}.integration-section .subsection-hint{color:var(--text-muted);font-size:12px;margin:0 0 8px}.integration-section .template-item{align-items:flex-start;flex-direction:column;gap:4px;padding:8px 12px}.integration-section .template-item input[type=checkbox]{align-self:flex-start;margin-top:2px}.integration-section .template-info{display:flex;flex-direction:column;gap:2px}.integration-section .template-name{color:var(--text-primary);font-weight:500}.integration-section .template-desc{color:var(--text-muted);font-size:11px}.integration-section .license-name{flex:1 1}.integration-section .license-seats{color:var(--text-muted);font-size:11px;margin-left:4px}.protected-users-list{background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;padding:20px}.protected-users-header{align-items:flex-start;display:flex;gap:20px;justify-content:space-between;margin-bottom:20px}.protected-users-header .header-info{flex:1 1}.protected-users-header h3{align-items:center;color:var(--text-primary);display:flex;font-size:1.1rem;gap:8px;margin:0 0 8px}.protected-users-header p{color:var(--text-secondary);font-size:14px;margin:0}.protected-users-table-container{overflow-x:auto}.protected-users-table{border-collapse:collapse;width:100%}.protected-users-table td,.protected-users-table th{border-bottom:1px solid var(--border-color);padding:12px;text-align:left}.protected-users-table th{background:var(--table-header-bg);color:var(--text-secondary);font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.protected-users-table tbody tr:hover{background:var(--table-hover-bg)}.user-info-cell{align-items:center;display:flex;gap:10px}.user-info-cell svg{color:var(--text-muted)}.user-name{color:var(--text-primary);font-weight:500}.user-email{color:var(--text-muted);display:block;font-size:12px}.date-cell,.protected-by,.protection-reason{color:var(--text-secondary);font-size:13px}.date-cell{align-items:center;display:flex;gap:6px}.modal-content.provisioning-modal{max-width:1100px;width:90vw}.provisioning-modal-container{background:var(--card-bg);border-radius:8px;display:flex;flex-direction:column;max-height:100%;overflow:hidden}.provisioning-modal-header{align-items:center;border-bottom:1px solid var(--border-color);display:flex;flex-shrink:0;justify-content:space-between;padding:16px 20px}.provisioning-modal-header h3{color:var(--text-primary);font-size:1.1rem;margin:0}.modal-close-btn{align-items:center;background:#0000;border:none;border-radius:4px;color:var(--text-secondary);cursor:pointer;display:flex;height:32px;justify-content:center;transition:all .2s;width:32px}.modal-close-btn:hover{background:var(--hover-bg);color:var(--text-primary)}.provisioning-modal-body{flex:1 1;min-height:0;overflow-y:auto;padding:20px}.delete-confirm{padding:20px;text-align:center}.delete-confirm .warning-icon{color:var(--warning-color);margin-bottom:16px}.delete-confirm p{color:var(--text-primary);margin:0 0 12px}.delete-confirm .warning-text{color:var(--text-secondary);font-size:14px}.delete-confirm .error-message{background:var(--danger-bg);border-radius:6px;color:var(--danger-color);font-size:14px;margin:16px 0;padding:12px}.modal-actions{justify-content:center;margin-top:24px}.provisioning-modal-footer{background:var(--bg-secondary);border-top:1px solid var(--border-color);display:flex;flex-shrink:0;gap:12px;justify-content:flex-end;padding:16px 24px}.user-job-info{color:var(--text-muted);font-size:12px}.form-textarea{background:var(--input-bg);border:1px solid var(--border-color);border-radius:6px;font-family:inherit;font-size:14px;padding:10px 12px;resize:vertical;width:100%}.form-textarea:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px #3b82f61a;outline:none}.protection-info-list{font-size:13px;margin:8px 0 0;padding-left:20px}.empty-state-action{margin-top:16px}.provisioning-actions{padding:20px 0}.action-cards{display:flex;flex-wrap:wrap;gap:24px}.action-card{align-items:center;background:var(--card-bg);border:1px solid var(--border-color);border-radius:12px;display:flex;flex:1 1 250px;flex-direction:column;max-width:320px;min-width:250px;padding:24px;text-align:center;transition:all .2s}.action-card:hover{border-color:var(--primary-color);box-shadow:0 4px 12px #00000014}.action-icon{align-items:center;border-radius:16px;display:inline-flex;height:64px;justify-content:center;margin-bottom:16px;width:64px}.action-icon.provision{background:#0078d41a;color:var(--primary-color)}.action-icon.password{background:#ff98001a;color:#f57c00}.action-icon.edit{background:#4caf501a;color:#4caf50}.action-card h4{color:var(--text-primary);font-size:1.1rem;margin:0 0 8px}.action-card p{color:var(--text-secondary);font-size:14px;line-height:1.5;margin:0 0 20px}.permission-notice{align-items:center;background:var(--warning-bg);border-radius:8px;color:var(--warning-color);display:flex;font-size:14px;gap:8px;margin-top:24px;padding:12px 16px}.provision-modal-container{position:relative;width:560px}.password-reset-container,.provision-modal-container{background:var(--card-bg);border-radius:12px;display:flex;flex-direction:column;max-height:85vh;max-width:90vw;overflow:hidden}.password-reset-container{width:480px}.password-reset-header,.provision-modal-header{align-items:center;border-bottom:1px solid var(--border-color);display:flex;flex-shrink:0;justify-content:space-between;padding:20px 24px}.password-reset-header h3,.provision-modal-header h3{align-items:center;color:var(--text-primary);display:flex;font-size:1.25rem;gap:10px;margin:0}.provision-steps{background:var(--bg-secondary);border-bottom:1px solid var(--border-color);display:flex;flex-shrink:0;gap:8px;justify-content:center;padding:20px 24px}.step{align-items:center;border-radius:20px;color:var(--text-muted);display:flex;font-size:13px;gap:8px;padding:8px 16px}.step.active{background:var(--primary-color);color:#fff}.step.completed{background:var(--success-bg);color:var(--success-color)}.step-number{align-items:center;background:currentColor;border-radius:50%;color:#fff;display:inline-flex;font-size:11px;font-weight:600;height:20px;justify-content:center;width:20px}.step.active .step-number,.step.completed .step-number{background:#fff3}.password-reset-body,.provision-modal-body{flex:1 1;min-height:0;overflow-y:auto;padding:24px}.password-reset-error,.provision-error{align-items:center;background:var(--danger-bg);border-radius:8px;color:var(--danger-color);display:flex;font-size:14px;gap:8px;margin-bottom:20px;padding:12px 16px}.provision-step-content .form-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.provision-step-content .form-group{margin-bottom:16px}.provision-step-content .form-group:last-child{margin-bottom:0}.provision-step-content input,.provision-step-content select{background:var(--input-bg);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);font-size:14px;padding:10px 12px;width:100%}.provision-step-content input:focus,.provision-step-content select:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px #0078d41a;outline:none}.role-preview{background:var(--bg-secondary);border-radius:8px;margin-top:20px;padding:16px}.role-preview h4{color:var(--text-secondary);font-size:14px;margin:0 0 12px}.preview-item{color:var(--text-primary);font-size:13px;margin-bottom:6px}.preview-item.preview-empty{color:var(--text-muted);font-style:italic}.preview-templates{display:flex;flex-direction:column;gap:12px;margin-bottom:12px}.preview-template{background:var(--card-bg);border:1px solid var(--border-color);border-radius:6px;padding:12px}.preview-template strong{color:var(--text-primary);font-size:14px}.template-service{color:var(--text-muted);font-size:12px;margin-left:8px}.template-details{color:var(--text-secondary);display:flex;font-size:12px;gap:12px;margin-top:6px}.preview-totals{border-top:1px solid var(--border-color);color:var(--primary-color);font-size:13px;font-weight:500;margin-top:12px;padding-top:12px}.preview-totals .hover-hint{color:var(--text-secondary);font-size:11px;font-style:italic;font-weight:400}.license-warnings{background:#f59e0b14;border:1px solid #f59e0b;border:1px solid var(--warning-color,#f59e0b);border-radius:6px;margin-top:16px;padding:12px}.license-warnings .warning-header{align-items:center;color:#f59e0b;color:var(--warning-color,#f59e0b);display:flex;font-weight:600;gap:8px;margin-bottom:8px}.license-warnings .warning-list{color:var(--text-primary);font-size:13px;margin:0;padding-left:20px}.license-warnings .warning-item{margin-bottom:4px}.license-warnings .warning-item.capacity{color:#f59e0b;color:var(--warning-color,#f59e0b)}.license-warnings .warning-item.inactive{color:var(--text-muted)}.license-warnings .warning-note{color:var(--text-muted);font-size:12px;font-style:italic;margin:8px 0 0}.email-preview-group label{align-items:center;display:flex;gap:6px}.email-preview{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);font-family:monospace;font-family:var(--font-mono,monospace);font-size:14px;min-height:20px;padding:10px 12px}.email-preview.warning{background:#f59e0b0d;border-color:#f59e0b;border-color:var(--warning-color,#f59e0b)}.form-warning{align-items:flex-start;background:#f59e0b1a;border-radius:4px;color:#f59e0b;color:var(--warning-color,#f59e0b);font-size:12px;gap:6px;line-height:1.4;margin:8px 0 0;padding:8px 10px}.form-warning svg{flex-shrink:0;margin-top:2px}.warning-input{background:#f59e0b0d;border-color:#f59e0b!important;border-color:var(--warning-color,#f59e0b)!important}.warning-input:focus{box-shadow:0 0 0 2px #f59e0b33}.email-input-wrapper{align-items:center;display:flex;position:relative}.email-input-wrapper input{flex:1 1;padding-right:100px}.email-status{align-items:center;display:flex;font-size:12px;font-weight:500;gap:4px;pointer-events:none;position:absolute;right:10px}.email-status.checking{color:var(--text-muted)}.email-status.available{color:#22c55e;color:var(--success-color,#22c55e)}.error-input{background:#ef44440d;border-color:#ef4444!important;border-color:var(--danger-color,#ef4444)!important}.error-input:focus{box-shadow:0 0 0 2px #ef444433}.success-input{border-color:#22c55e!important;border-color:var(--success-color,#22c55e)!important}.success-input:focus{box-shadow:0 0 0 2px #22c55e33}.form-group .form-error{align-items:flex-start;background:#ef44441a;border-radius:4px;color:#ef4444;color:var(--danger-color,#ef4444);display:flex;font-size:12px;gap:6px;line-height:1.4;margin:8px 0 0;padding:8px 10px}.form-group .form-error svg{flex-shrink:0;margin-top:2px}.email-placeholder{color:var(--text-muted);font-family:inherit;font-style:italic}.summary-email{color:var(--primary-color)!important;font-family:monospace;font-family:var(--font-mono,monospace)}.provision-summary{background:var(--bg-secondary);border-radius:8px;margin-top:24px;padding:16px}.provision-summary h4{color:var(--text-secondary);font-size:14px;margin:0 0 12px}.summary-row{display:flex;font-size:13px;justify-content:space-between;margin-bottom:6px}.summary-row span:first-child{color:var(--text-secondary)}.summary-row span:last-child{color:var(--text-primary);font-weight:500}.password-reset-success,.provision-success{padding:20px 0;text-align:center}.success-icon{align-items:center;background:var(--success-bg);border-radius:50%;color:var(--success-color);display:inline-flex;height:80px;justify-content:center;margin-bottom:20px;width:80px}.password-reset-success h4,.provision-success h4{color:var(--text-primary);font-size:1.25rem;margin:0 0 20px}.credentials-box{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;margin-bottom:16px;padding:16px}.credential-row{align-items:center;display:flex;justify-content:space-between;padding:8px 0}.credential-row:not(:last-child){border-bottom:1px solid var(--border-color)}.credential-label{color:var(--text-secondary);font-size:13px}.credential-value{color:var(--text-primary);font-size:14px;font-weight:500}.password-display{align-items:center;display:flex;gap:8px}.password-display code{background:var(--code-bg);border-radius:4px;color:var(--text-primary);font-family:monospace;font-size:14px;padding:6px 12px}.password-notice{background:var(--bg-secondary);border-radius:6px;color:var(--text-secondary);display:flex;font-size:13px;gap:12px;line-height:1.5;padding:12px;text-align:left}.password-notice svg{color:var(--text-muted);flex-shrink:0;margin-top:2px}.password-notice p{margin:0 0 8px}.password-notice p:last-child{margin-bottom:0}.password-notice .security-reminder{color:var(--text-muted);font-size:12px}.copy-all-section{align-items:center;background:#f3f4f6;background:var(--bg-secondary,#f3f4f6);border:1px dashed var(--border-color);border-radius:8px;display:flex;flex-direction:column;margin:16px 0;padding:16px}.copy-all-btn{align-items:center;display:flex;gap:8px;padding:10px 20px}.copy-hint{color:var(--text-muted);font-size:12px;margin:8px 0 0}.result-details{color:var(--text-secondary);font-size:13px;margin-top:8px}.provision-success.partial-success .success-icon{background:#fef3c7;color:#d97706}.provision-success.partial-success h4{color:#d97706}.result-warnings{background:#fffbeb;border:1px solid #fcd34d;margin-top:16px;padding:16px}.result-warnings strong{color:#92400e;font-size:14px}.warnings-list{color:#b45309;font-size:13px;margin:0;padding-left:20px}.warnings-list .warning-item{margin-bottom:4px}.warning-note{color:#92400e;font-size:12px;font-style:italic;margin:12px 0 0}.password-reset-footer,.provision-modal-footer{display:flex;gap:12px;justify-content:flex-end;padding:16px 24px;position:relative;z-index:1}.modal-footer-with-ticket,.password-reset-footer,.provision-modal-footer{background:var(--bg-secondary);border-top:1px solid var(--border-color);flex-shrink:0}.modal-footer-with-ticket .ticket-footer-section{background:#f9fafb;background:var(--surface-color,#f9fafb);border-bottom:1px solid var(--border-color);padding:12px 24px}.modal-footer-with-ticket .ticket-footer-section .ticket-toggle-row{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.modal-footer-with-ticket .ticket-footer-section .form-hint{color:var(--text-muted);font-size:12px;margin-bottom:0;margin-top:6px}.modal-footer-with-ticket .button-footer-section{display:flex;gap:12px;justify-content:flex-end;padding:16px 24px}.modal-footer-with-options{background:var(--bg-secondary);border-top:1px solid var(--border-color);flex-shrink:0}.modal-footer-with-options .footer-options-section{background:#f9fafb;background:var(--surface-color,#f9fafb);border-bottom:1px solid var(--border-color);padding:12px 24px}.modal-footer-with-options .footer-toggles-row{align-items:center;display:flex;flex-wrap:wrap;gap:24px}.modal-footer-with-options .footer-toggle-group{align-items:center;display:flex;gap:8px}.modal-footer-with-options .footer-toggle-text{align-items:center;color:var(--text-secondary);display:flex;font-size:13px;gap:4px}.modal-footer-with-options .footer-toggle-text svg{color:var(--primary-color)}.modal-footer-with-options .ticket-number-input{background:var(--input-bg);border:1px solid var(--border-color);border-radius:4px;color:var(--text-primary);font-size:13px;padding:4px 8px;width:80px}.modal-footer-with-options .ticket-number-input:focus{border-color:var(--primary-color);outline:none}.modal-footer-with-options .footer-expanded-section{border-top:1px solid var(--border-color);margin-top:12px;padding-top:12px}.modal-footer-with-options .footer-hint{color:var(--text-muted);font-size:12px;margin-bottom:0;margin-top:8px}.modal-footer-with-options .button-footer-section{display:flex;gap:12px;justify-content:flex-end;padding:16px 24px}.user-search-section{margin-bottom:20px;position:relative}.user-search-section p{color:var(--text-secondary);font-size:14px;margin:0 0 12px}.search-input-row{display:flex;gap:8px}.search-input-row input{border:1px solid var(--border-color);border-radius:6px;flex:1 1;font-size:14px;padding:10px 12px}.search-results{border:1px solid var(--border-color);border-radius:8px;margin-top:12px;max-height:200px;overflow:hidden;overflow-y:auto}.search-result-item{cursor:pointer;padding:12px 16px;transition:background .2s}.search-result-item:hover{background:var(--hover-bg)}.search-result-item:not(:last-child){border-bottom:1px solid var(--border-color)}.search-result-item .user-name{color:var(--text-primary);font-weight:500}.search-result-item .user-email{color:var(--text-muted);font-size:12px}.selected-user-card{align-items:center;background:var(--bg-secondary);border-radius:8px;display:flex;justify-content:space-between;margin-bottom:20px;padding:16px}.selected-user-card .user-info .user-name{color:var(--text-primary);font-weight:500}.selected-user-card .user-info .user-email{color:var(--text-muted);font-size:13px}.reset-warning{background:var(--warning-bg);border-radius:8px;color:var(--warning-color);display:flex;gap:12px;padding:16px}.reset-warning svg{flex-shrink:0;margin-top:2px}.reset-warning p{font-size:14px;line-height:1.5;margin:0}.action-icon.deprovision{background:#ef44441a;color:#ef4444}.deprovision-container{background:var(--card-bg);border-radius:12px;display:flex;flex-direction:column;max-height:85vh;max-width:90vw;overflow:hidden;width:480px}.deprovision-header{align-items:center;border-bottom:1px solid var(--border-color);display:flex;flex-shrink:0;justify-content:space-between;padding:20px 24px}.deprovision-header h3{align-items:center;color:var(--text-primary);display:flex;font-size:1.25rem;gap:10px;margin:0}.deprovision-body{flex:1 1;min-height:0;overflow-y:auto;padding:24px}.deprovision-error{align-items:center;background:var(--danger-bg);border-radius:8px;color:var(--danger-color);display:flex;font-size:14px;gap:8px;margin-bottom:20px;padding:12px 16px}.deprovision-footer{background:var(--bg-secondary);border-top:1px solid var(--border-color);display:flex;flex-shrink:0;gap:12px;justify-content:flex-end;padding:16px 24px}.search-result-item.protected{background:#ef44440d}.search-result-item .user-name{align-items:center;display:flex;gap:6px}.protected-icon,.protected-warning{color:var(--warning-color)}.protected-warning{background:var(--warning-bg);border-radius:8px;display:flex;gap:12px;margin-bottom:20px;padding:16px}.protected-warning svg{flex-shrink:0;margin-top:2px}.protected-warning strong{display:block;margin-bottom:4px}.protected-warning p{font-size:13px;line-height:1.5;margin:0}.storage-usage-section{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:6px;margin-bottom:12px;padding:10px 12px}.storage-usage-header{align-items:center;color:var(--text-secondary);display:flex;font-size:12px;font-weight:500;gap:6px;margin-bottom:8px}.storage-usage-header svg{height:14px;width:14px}.storage-loading{align-items:center;color:var(--text-secondary);display:flex;font-size:13px;gap:8px}.storage-loading .spinner-sm{animation:spin .8s linear infinite;border:2px solid var(--border-color);border-radius:50%;border-top-color:var(--primary-color);display:inline-block;height:14px;width:14px}.storage-error{align-items:center;color:var(--text-secondary);display:flex;font-size:12px;gap:6px}.storage-stats{display:flex;flex-wrap:wrap;gap:6px 16px}.storage-stat{align-items:center;display:flex;font-family:var(--ttg-font-body);font-size:13px;gap:6px}.storage-stat svg{color:var(--text-secondary);flex-shrink:0;height:14px;width:14px}.storage-stat .usage-label{color:var(--text-secondary);font-size:13px;font-weight:400}.storage-stat .usage-value{color:var(--text-primary);font-size:13px;font-weight:600}.storage-stat .usage-detail{color:var(--text-secondary);font-size:12px;font-weight:400}.storage-permission-hint{align-items:center;border-top:1px solid var(--border-color);color:var(--text-secondary);display:flex;font-size:11px;gap:6px;margin-top:8px;padding-top:8px}.storage-usage-header .sync-time{align-items:center;color:var(--text-tertiary);display:flex;font-size:10px;font-weight:400;gap:3px;margin-left:auto}.storage-not-available{color:var(--text-secondary);font-size:11px;font-style:italic}.form-section{margin-bottom:20px}.section-label{color:var(--text-primary);display:block;font-size:14px;font-weight:600;margin-bottom:12px}.section-label .required{color:var(--danger-color)}.action-options{display:flex;flex-direction:column;gap:12px}.action-option{align-items:flex-start;background:var(--card-bg);border:2px solid var(--border-color);border-radius:8px;cursor:pointer;display:flex;gap:12px;padding:16px;transition:all .2s}.action-option.selected,.action-option:hover{border-color:var(--primary-color)}.action-option.selected{background:#0078d40d}.action-option.danger.selected{background:#ef44440d;border-color:var(--danger-color)}.action-option.disabled{cursor:not-allowed;opacity:.6}.action-option.disabled:hover{border-color:var(--border-color)}.action-option input[type=radio]{accent-color:var(--primary-color);margin-top:2px}.action-option.danger input[type=radio]{accent-color:var(--danger-color)}.option-title{align-items:center;color:var(--text-primary);display:flex;font-weight:600;gap:8px;margin-bottom:4px}.option-desc{color:var(--text-secondary);font-size:13px;line-height:1.5}.recommended-badge{background:var(--success-bg);color:var(--success-color)}.admin-required-badge,.recommended-badge{border-radius:4px;font-size:10px;font-weight:600;padding:2px 6px;text-transform:uppercase}.admin-required-badge{background:var(--warning-bg);color:var(--warning-color)}.options-list{background:var(--bg-secondary);border-radius:8px;display:flex;flex-direction:column;gap:12px;padding:16px}.checkbox-option{align-items:center;color:var(--text-primary);cursor:pointer;display:flex;font-size:14px;gap:10px}.checkbox-option input[type=checkbox]{accent-color:var(--primary-color);height:16px;width:16px}.deprovision-body textarea{background:var(--input-bg);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);font-family:inherit;font-size:14px;padding:12px;resize:vertical;width:100%}.deprovision-body textarea:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px #0078d41a;outline:none}.delete-warning{background:var(--danger-bg);border-radius:8px;color:var(--danger-color);display:flex;gap:12px;margin-top:20px;padding:16px}.delete-warning svg{flex-shrink:0;margin-top:2px}.delete-warning strong{display:block;margin-bottom:4px}.delete-warning p{font-size:13px;line-height:1.5;margin:0}.deprovision-success{padding:20px 0;text-align:center}.deprovision-success h4{color:var(--text-primary);font-size:1.25rem;margin:0 0 20px}.result-details{background:var(--bg-secondary);border-radius:8px;margin-bottom:16px;padding:16px}.result-row{display:flex;justify-content:space-between;padding:8px 0}.result-row:not(:last-child){border-bottom:1px solid var(--border-color)}.result-label{color:var(--text-secondary);font-size:13px}.result-value{color:var(--text-primary);font-size:14px;font-weight:500}.result-warnings{background:var(--warning-bg);border-radius:8px;color:var(--warning-color);font-size:13px;padding:12px 16px;text-align:left}.result-warnings strong{display:block;margin-bottom:8px}.result-warnings ul{margin:0;padding-left:20px}.result-warnings li{margin-bottom:4px}@media (max-width:768px){.provisioning-header{flex-direction:column}.role-grid{grid-template-columns:1fr}.role-toolbar{align-items:stretch;flex-direction:column;gap:12px}.protected-users-table td,.protected-users-table th{font-size:13px;padding:8px}.action-cards,.deprovision-modal .form-actions,.password-reset-modal .form-actions,.provision-modal .form-actions,.provisioning-container .form-actions{flex-direction:column}.action-card{max-width:none}.provision-step-content .form-row{grid-template-columns:1fr}.provision-steps{flex-wrap:wrap}.step-label{display:none}.asset-assignment-section .asset-list,.provision-modal .asset-list{max-height:150px}}.asset-assignment-section{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;margin:20px 0;padding:16px}.asset-assignment-section h4{align-items:center;color:var(--text-primary);display:flex;font-size:15px;font-weight:600;gap:8px;margin:0 0 8px}.asset-assignment-section .section-hint{color:var(--text-secondary);font-size:13px;margin:0 0 16px}.assets-loading,.no-assets-message{color:var(--text-secondary);font-size:14px;padding:20px;text-align:center}.asset-search{align-items:center;background:var(--input-bg);border:1px solid var(--border-color);border-radius:6px;display:flex;gap:8px;margin-bottom:12px;padding:8px 12px}.asset-search input{background:#0000;border:none;color:var(--text-primary);flex:1 1;font-size:14px;outline:none}.asset-search svg{color:var(--text-muted);flex-shrink:0}.asset-assignment-section .asset-list,.provision-modal .asset-list{background:var(--card-bg);border:1px solid var(--border-color);border-radius:6px;max-height:200px;overflow-y:auto}.asset-type-group{border-bottom:1px solid var(--border-color)}.asset-type-group:last-child{border-bottom:none}.asset-type-header{background:var(--bg-secondary);color:var(--text-secondary);font-size:12px;font-weight:600;letter-spacing:.5px;padding:8px 12px;position:-webkit-sticky;position:sticky;text-transform:uppercase;top:0}.asset-item{align-items:center;border-bottom:1px solid var(--border-color);cursor:pointer;display:flex;gap:10px;padding:10px 12px;transition:background .2s}.asset-item:last-child{border-bottom:none}.asset-item:hover{background:var(--hover-bg)}.asset-item.selected{background:#0078d414}.asset-item input[type=checkbox]{accent-color:var(--primary-color);flex-shrink:0;height:16px;width:16px}.asset-info{display:flex;flex-direction:column;gap:2px;overflow:hidden}.asset-name{color:var(--text-primary);font-size:14px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.asset-serial{color:var(--text-secondary);font-size:12px}.selected-assets-count{background:#0078d41a;border-radius:6px;color:var(--primary-color);font-size:13px;font-weight:500;margin-top:12px;padding:8px 12px;text-align:center}.welcome-email-section{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;margin:20px 0;padding:16px}.welcome-email-toggle{align-items:flex-start;cursor:pointer;display:flex;gap:12px}.welcome-email-toggle input[type=checkbox]{accent-color:var(--primary-color);flex-shrink:0;height:18px;margin-top:2px;width:18px}.welcome-email-toggle .toggle-content{flex:1 1}.welcome-email-toggle .toggle-header{align-items:center;color:var(--text-primary);display:flex;font-size:15px;font-weight:600;gap:8px}.welcome-email-toggle .toggle-header svg{color:var(--primary-color)}.welcome-email-toggle .toggle-description{color:var(--text-secondary);font-size:13px;margin:4px 0 0}.welcome-email-result{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.welcome-email-result strong{align-items:center;display:flex;gap:6px}.welcome-email-result.success .email-sent{color:#28a745;color:var(--success-color,#28a745)}.welcome-email-result.success .email-scheduled{color:#4a90d9;color:var(--primary-color,#4a90d9)}.welcome-email-result .email-error{color:#dc3545;color:var(--error-color,#dc3545)}.assigned-assets-list,.welcome-email-result .email-skipped{color:var(--text-secondary)}.assigned-assets-list{font-size:13px;margin:8px 0 0;padding:0 0 0 20px}.assigned-assets-list li{margin:4px 0}.license-keys-section{background:#f0f9ff;border:1px solid #bae6fd;border-radius:8px;margin-top:12px;padding:12px 16px}.license-keys-section strong{align-items:center;color:#0369a1;display:flex;gap:6px}.license-keys-section strong svg{color:#0284c7}.assigned-keys-list{display:flex;flex-direction:column;gap:8px;margin-top:10px}.license-key-row{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:6px;display:flex;gap:12px;padding:8px 12px}.license-key-row .key-license-name{color:var(--text-primary);font-weight:500;min-width:150px}.license-key-row .key-value{background:#f8fafc;border-radius:4px;color:#334155;flex:1 1;font-family:monospace;font-size:13px;padding:4px 8px}.license-key-row .btn-icon{flex-shrink:0}.key-notice{color:#64748b;font-size:12px;font-style:italic;margin:10px 0 0}.result-row.license-keys-revoked{align-items:flex-start;flex-direction:column;gap:4px}.revoked-keys-list{color:var(--text-secondary);font-size:13px;list-style:none;margin:4px 0 0 16px;padding:0}.revoked-keys-list li{color:var(--text-secondary);font-family:monospace;font-size:12px;margin:2px 0}.revoked-keys-list li:before{color:var(--text-muted);content:"•";margin-right:6px}.backup-email-section{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;margin:16px 0;padding:12px 16px}.backup-email-header{align-items:center;color:var(--text-secondary);display:flex;font-size:13px;font-weight:600;gap:8px;margin-bottom:8px}.backup-email-header svg{color:var(--primary-color)}.backup-loading{color:var(--text-muted);font-size:13px;font-style:italic}.backup-email-display{align-items:flex-start;display:flex;gap:8px}.backup-email-list{display:flex;flex-direction:column;gap:6px}.backup-email-row{align-items:center;display:flex;gap:8px}.backup-email-value{align-items:center;color:var(--text-primary);display:flex;font-size:14px;font-weight:500;gap:6px}.backup-email-value .primary-badge{background:var(--primary-color);border-radius:3px;color:#fff;font-size:10px;font-weight:600;padding:2px 6px;text-transform:uppercase}.delete-email-btn{color:var(--text-muted);opacity:.6;transition:opacity .2s,color .2s}.delete-email-btn:hover:not(:disabled){color:#dc3545;color:var(--danger-color,#dc3545);opacity:1}.delete-email-btn:disabled{cursor:not-allowed;opacity:.3}.add-email-btn{background:none;border:none;color:var(--primary-color);cursor:pointer;font-size:13px;padding:4px 0}.add-email-btn:hover:not(:disabled){text-decoration:underline}.add-email-btn:disabled{cursor:not-allowed;opacity:.5}.no-backup-email{align-items:center;color:var(--text-muted);display:flex;font-size:13px;gap:12px}.no-backup-email .btn-link{background:none;border:none;color:var(--primary-color);cursor:pointer;font-size:13px;padding:0}.no-backup-email .btn-link:hover{text-decoration:underline}.backup-email-edit{display:flex;flex-direction:column;gap:8px}.backup-email-edit input{border:1px solid var(--border-color);border-radius:6px;font-size:14px;padding:8px 12px}.backup-email-edit input:focus{border-color:var(--primary-color);outline:none}.backup-email-actions{display:flex;gap:8px;justify-content:flex-end}.reset-method-section{margin:16px 0}.reset-method-label{color:var(--text-primary);display:block;font-size:14px;font-weight:600;margin-bottom:10px}.reset-method-options{display:flex;flex-direction:column;gap:8px}.reset-method-option{align-items:flex-start;background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;cursor:pointer;display:flex;gap:12px;padding:12px 16px;transition:all .2s}.reset-method-option:hover{background:var(--hover-bg);border-color:var(--primary-color)}.reset-method-option.selected{background:#0078d40d;border-color:var(--primary-color)}.reset-method-option.disabled{cursor:not-allowed;opacity:.5}.reset-method-option.disabled:hover{background:var(--card-bg);border-color:var(--border-color)}.reset-method-option input[type=radio]{accent-color:var(--primary-color);margin-top:2px}.reset-method-option .option-content{display:flex;flex:1 1;gap:12px}.reset-method-option .option-content svg{color:var(--primary-color);flex-shrink:0;margin-top:2px}.reset-method-option .option-content strong{color:var(--text-primary);display:block;font-size:14px;margin-bottom:4px}.reset-method-option .option-content p{color:var(--text-secondary);font-size:12px;margin:0}.self-service-info{background:#0078d414;border-radius:8px;display:flex;gap:12px;margin-top:16px;padding:16px}.self-service-info svg{color:var(--primary-color);flex-shrink:0;margin-top:2px}.self-service-info p{color:var(--text-primary);font-size:14px;line-height:1.5;margin:0 0 8px}.self-service-info p:last-child{margin-bottom:0}.self-service-info .info-note{color:var(--text-secondary);font-size:13px;font-style:italic}.self-service-info .template-section{border-top:1px solid #0078d433;margin-top:16px;padding-top:16px}.self-service-info .template-header{align-items:center;color:var(--text-secondary);display:flex;font-size:13px;gap:6px;margin-bottom:8px}.self-service-info .template-box{background:#fffc;border:1px solid var(--border-color);border-radius:6px;padding:12px 80px 12px 12px;position:relative}.self-service-info .template-box pre{word-wrap:break-word;color:var(--text-primary);font-family:inherit;font-size:13px;line-height:1.5;margin:0;white-space:pre-wrap}.self-service-info .copy-template-btn{align-items:center;display:flex;font-size:12px;gap:4px;padding:4px 10px;position:absolute;right:8px;top:8px}.email-password-suboption{background:#10b9810f;border:1px solid #10b98126;border-radius:8px;margin-left:40px;margin-top:8px;padding:12px 16px;transition:all .2s ease}.email-password-suboption:not(.disabled):hover{background:#10b9811a;border-color:#10b98140}.email-password-suboption.disabled{background:var(--background-secondary);border-color:var(--border-color);opacity:.6}.email-toggle-row{align-items:center;display:flex;gap:12px}.email-toggle-label{align-items:center;color:var(--text-primary);display:flex;font-size:14px;font-weight:500;gap:8px}.email-toggle-label svg{color:#10b981}.email-password-suboption.disabled .email-toggle-label svg{color:var(--text-tertiary)}.email-toggle-hint{color:var(--text-secondary);font-size:13px;margin-left:52px;margin-top:6px}.email-toggle-hint strong{color:var(--text-primary)}.no-recovery-hint{color:var(--text-tertiary);font-style:italic}.password-email-sent{background:#10b9811a;border:1px solid #10b9814d;border-radius:8px;display:flex;gap:12px;margin-top:16px;padding:16px}.password-email-sent svg{color:#10b981;flex-shrink:0;margin-top:2px}.password-email-sent p{color:var(--text-primary);font-size:14px;margin:0 0 4px}.password-email-sent p:last-child{margin-bottom:0}.password-email-error{background:#ef44441a;border:1px solid #ef44444d;border-radius:8px;display:flex;gap:10px;margin-top:16px;padding:12px 16px}.password-email-error svg{color:#ef4444;flex-shrink:0}.password-email-error p{color:#b91c1c;font-size:14px;margin:0}.sspr-status-section{align-items:center;display:flex;flex-wrap:wrap;gap:8px;margin:8px 0 12px}.sspr-status-label{color:var(--text-secondary);font-size:13px}.sspr-status-badge{align-items:center;border-radius:12px;display:inline-flex;font-size:12px;font-weight:500;gap:4px;padding:3px 10px}.sspr-status-badge.sspr-enabled{background:#10b98126;border:1px solid #10b9814d;color:#059669}.sspr-status-badge.sspr-disabled{background:#ef44441a;border:1px solid #ef444440;color:#dc2626}.sspr-status-badge.sspr-unknown{background:#9ca3af26;border:1px solid #9ca3af4d;color:#6b7280}.sspr-provider{color:var(--text-secondary);font-size:12px}.sspr-warning{background:#f59e0b1a;border:1px solid #f59e0b40;border-radius:6px;display:flex;gap:8px;margin-bottom:12px;padding:10px 14px}.sspr-warning svg{color:#d97706;flex-shrink:0}.sspr-warning span{color:#92400e;font-size:13px;line-height:1.4}.edit-section-tabs{border-bottom:1px solid var(--border-color);display:flex;gap:4px;margin:16px 0;padding-bottom:0}.section-tab{align-items:center;background:#0000;border:none;border-bottom:2px solid #0000;color:var(--text-secondary);cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:6px;margin-bottom:-1px;padding:10px 16px;transition:all .2s}.section-tab.active,.section-tab:hover{color:var(--primary-color)}.section-tab.active{border-bottom-color:var(--primary-color)}.section-tab:disabled{cursor:not-allowed;opacity:.5}.section-tab:disabled:hover{color:var(--text-secondary)}.coming-soon-badge{background:var(--warning-bg);border-radius:4px;color:var(--warning-color);font-weight:500;padding:2px 6px}.loading-user-details{align-items:center;color:var(--text-secondary);display:flex;justify-content:center;padding:40px}.edit-properties-form{margin-top:16px}.edit-properties-form .form-description{color:var(--text-secondary);font-size:14px;margin:0 0 20px}.office-location-input{display:flex;flex-direction:column;gap:8px}.office-location-input input,.office-location-input select{width:100%}.manager-input-wrapper{position:relative}.clear-manager-btn{font-size:12px;padding:4px 8px;position:absolute;right:8px;top:50%;transform:translateY(-50%)}.phone-input-wrapper{align-items:center;display:flex;position:relative}.phone-input-wrapper input{flex:1 1;padding-right:36px}.phone-format-dropdown-container{position:absolute;right:4px;top:50%;transform:translateY(-50%);z-index:10}.phone-format-btn{color:var(--text-muted);opacity:.7;padding:4px 6px;transition:opacity .2s}.phone-format-btn:hover{color:#06c;color:var(--primary-color,#06c);opacity:1}.phone-format-dropdown{background:#fff;background:var(--card-bg,#fff);border:1px solid #ddd;border:1px solid var(--border-color,#ddd);border-radius:8px;box-shadow:0 4px 12px #00000026;margin-top:4px;min-width:220px;overflow:hidden;position:absolute;right:0;top:100%;z-index:9999}.phone-format-dropdown .dropdown-header,.phone-format-dropdown .phone-format-header{background:#f8f9fa;background:var(--surface-color,#f8f9fa);border-bottom:1px solid #ddd;border-bottom:1px solid var(--border-color,#ddd);color:var(--text-muted);font-size:11px;font-weight:600;padding:8px 12px;text-transform:uppercase}.phone-format-dropdown .dropdown-item,.phone-format-dropdown .phone-format-option{align-items:center;background:#0000;border:none;color:var(--text-primary);cursor:pointer;display:flex;font-size:13px;gap:8px;padding:8px 12px;text-align:left;transition:background .15s;width:100%}.phone-format-dropdown .dropdown-item:hover,.phone-format-dropdown .phone-format-option:hover{background:#f0f0f0;background:var(--surface-color,#f0f0f0)}.phone-format-dropdown .dropdown-item.default,.phone-format-dropdown .phone-format-option.default{background:#e7f3ff;background:var(--primary-light,#e7f3ff)}.phone-format-dropdown .dropdown-item .format-label,.phone-format-dropdown .phone-format-option .format-label{flex:1 1;font-family:monospace}.phone-format-dropdown .dropdown-item .format-region,.phone-format-dropdown .phone-format-option .format-region{background:#f0f0f0;background:var(--surface-color,#f0f0f0);border-radius:4px;color:var(--text-muted);font-size:11px;padding:2px 6px}.phone-format-dropdown .dropdown-item .default-badge,.phone-format-dropdown .phone-format-option .format-default-badge{background:#e7f3ff;background:var(--primary-light,#e7f3ff);border-radius:4px;color:#06c;color:var(--primary-color,#06c);font-size:10px;font-weight:600;padding:2px 6px}.change-role-section{margin-top:16px;position:relative}.role-result-section{padding:20px;text-align:center}.role-result-section h4{color:var(--text-primary);margin:0 0 8px}.role-result-section .role-name{color:var(--text-secondary);margin:0 0 16px}.role-change-preview{padding:8px 0}.role-preview-section{background:#f8f9fa;background:var(--surface-color,#f8f9fa);border:1px solid var(--border-color);border-radius:8px;margin:16px 0;padding:16px}.role-preview-section .preview-header{color:var(--text-primary);font-size:14px;font-weight:600;margin:0 0 12px}.role-preview-section .preview-item{margin-bottom:12px}.role-preview-section .preview-item:last-child{margin-bottom:0}.role-preview-section .preview-label{align-items:center;color:var(--text-secondary);display:flex;font-size:13px;font-weight:500;gap:6px;margin-bottom:6px}.role-preview-section .preview-label svg{color:var(--primary-color)}.role-preview-section .preview-list{color:var(--text-primary);font-size:13px;list-style:disc;margin:0;padding-left:24px}.role-preview-section .preview-list li{margin-bottom:4px}.role-preview-section .preview-item.empty .preview-value.muted{color:var(--text-secondary);font-size:13px;font-style:italic;margin-left:20px}.role-preview-section .role-description{border-top:1px solid var(--border-color);color:var(--text-secondary);font-size:13px;font-style:italic;margin:12px 0 0;padding-top:12px}.role-action-section{background:#f8f9fa;background:var(--surface-color,#f8f9fa);border:1px solid var(--border-color);border-radius:8px;margin-top:20px;padding:16px}.role-action-section.apply-section{background:#e7f3ff;background:var(--primary-light,#e7f3ff);border-color:#06c;border-color:var(--primary-color,#06c)}.role-action-section.replace-section{background:#fef2f2;background:var(--error-bg,#fef2f2);border-color:#dc2626;border-color:var(--error-color,#dc2626)}.role-action-section .action-header{align-items:center;display:flex;gap:10px;margin-bottom:8px}.role-action-section .action-header h4{color:var(--text-primary);font-size:15px;font-weight:600;margin:0}.role-action-section .action-header.warning svg{color:#dc2626;color:var(--error-color,#dc2626)}.role-action-section .action-description{color:var(--text-secondary);font-size:14px;line-height:1.5;margin:0 0 12px}.ttg-internal-badge{background:#fef3cd;background:var(--warning-bg,#fef3cd);border-radius:4px;color:#856404;color:var(--warning-color,#856404);font-size:10px;font-weight:600;margin-left:auto;padding:3px 8px;text-transform:uppercase}.role-change-warning{background:var(--warning-bg);border-radius:8px;color:var(--warning-color);display:flex;font-size:14px;gap:12px;margin-top:16px;padding:12px 16px}.role-change-warning svg{flex-shrink:0;margin-top:2px}.role-change-warning ul{margin:8px 0 0;padding-left:20px}.role-change-warning li{margin-bottom:4px}.current-role-display{background:#f8f9fa;background:var(--surface-color,#f8f9fa);border-radius:6px;padding:8px 12px}.role-badge{align-items:center;background:#0078d41a;background:var(--primary-light,#0078d41a);color:var(--primary-color);display:inline-flex;font-size:13px;padding:4px 10px}.custom-attributes-section{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;margin:20px 0;overflow:hidden}.custom-attributes-section .collapsible-header{align-items:center;background:#0000;border:none;color:var(--text-primary);cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;padding:12px 16px;text-align:left;width:100%}.custom-attributes-section .collapsible-header:hover{background:var(--bg-tertiary)}.custom-attributes-section .collapse-icon{align-items:center;color:var(--text-secondary);display:flex}.custom-attributes-section .filled-count{background:var(--bg-tertiary);border-radius:10px;color:var(--text-secondary);font-size:12px;font-weight:400;margin-left:auto;padding:2px 8px}.custom-attributes-section .custom-attributes-content{padding:0 16px 16px}.custom-attributes-section .section-hint{color:var(--text-secondary);font-size:13px;margin:0 0 12px}.custom-attributes-section .custom-attributes-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(2,1fr)}.custom-attributes-section .custom-attributes-grid .form-group{margin:0}.custom-attributes-section .custom-attributes-grid label{color:var(--text-secondary);display:block;font-size:13px;font-weight:500;margin-bottom:4px}.custom-attributes-section .custom-attributes-grid input{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);font-size:14px;padding:8px 12px;width:100%}.custom-attributes-section .custom-attributes-grid input:focus{border-color:var(--primary-color);box-shadow:0 0 0 2px #0078d41a;outline:none}@media (max-width:600px){.custom-attributes-section .custom-attributes-grid{grid-template-columns:1fr}}.ticket-linking-section.compact{background:#f9fafb;background:var(--surface-color,#f9fafb);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:8px;margin-top:16px;padding:16px}.ticket-toggle-row{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.ticket-toggle-row .toggle-switch-container{margin:0}.ticket-toggle-text{align-items:center;color:var(--text-primary);display:flex;font-size:14px;gap:6px}.ticket-toggle-text svg{color:var(--text-secondary);flex-shrink:0}.ticket-number-input{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);font-size:14px;padding:6px 10px;width:100px}.ticket-number-input:focus{border-color:var(--primary-color);box-shadow:0 0 0 2px #0078d41a;outline:none}.ticket-number-input::placeholder{color:var(--text-muted)}.ticket-linking-section.compact .form-hint{color:var(--text-muted);font-size:12px;margin-bottom:0;margin-top:6px}.license-warning-modal{padding:8px 0}.license-warning-modal .warning-header{align-items:flex-start;background:#fff8e6;background:var(--warning-bg,#fff8e6);border-radius:8px;display:flex;gap:12px;margin-bottom:16px;padding:12px 16px}.license-warning-modal .warning-header svg{color:#d97706;color:var(--warning-color,#d97706);flex-shrink:0;margin-top:2px}.license-warning-modal .warning-header p{color:#d97706;color:var(--warning-color,#d97706);font-size:14px;line-height:1.5;margin:0}.unavailable-licenses-list{list-style:none;margin:0 0 16px;padding:0}.unavailable-licenses-list li{align-items:center;background:#f8f9fa;background:var(--surface-color,#f8f9fa);border-radius:6px;display:flex;font-size:14px;gap:10px;margin-bottom:8px;padding:10px 14px}.unavailable-licenses-list li:last-child{margin-bottom:0}.unavailable-licenses-list .license-name{color:var(--text-primary);flex:1 1;font-weight:500}.unavailable-licenses-list .license-status{align-items:center;color:#dc2626;color:var(--error-color,#dc2626);display:flex;font-size:13px;font-weight:500;gap:6px}.unavailable-licenses-list .license-status.unknown{color:var(--text-muted)}.unavailable-licenses-list .license-count{background:#e5e7eb;background:var(--bg-tertiary,#e5e7eb);border-radius:4px;color:var(--text-muted);font-size:12px;padding:2px 8px}.sync-notice{align-items:center;background:#eff6ff;background:var(--info-bg,#eff6ff);border-radius:6px;color:#2563eb;color:var(--info-color,#2563eb);display:flex;font-size:13px;gap:8px;padding:10px 14px}.sync-notice svg{flex-shrink:0}.sync-notice .sync-age{font-weight:500}.license-warning-modal .modal-actions{border-top:1px solid var(--border-color);display:flex;gap:10px;justify-content:flex-end;margin-top:20px;padding-top:16px}.license-warning-modal .modal-actions .btn-secondary{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);cursor:pointer;font-size:14px;padding:8px 16px;transition:background .15s,border-color .15s}.license-warning-modal .modal-actions .btn-secondary:hover{background:var(--surface-color);border-color:var(--text-muted)}.license-warning-modal .modal-actions .btn-warning{background:#d97706;background:var(--warning-color,#d97706);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:background .15s}.license-warning-modal .modal-actions .btn-warning:hover{background:#b45309;background:var(--warning-dark,#b45309)}.scheduling-section{background:#f9fafb;background:var(--surface-color,#f9fafb);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:8px;margin-top:16px;padding:16px}.scheduling-toggle-row{align-items:center;display:flex;gap:12px}.scheduling-toggle-text{align-items:center;color:var(--text-primary);display:flex;font-size:14px;font-weight:500;gap:6px}.scheduling-toggle-text svg{color:#6b7280;color:var(--text-muted,#6b7280)}.schedule-picker-container{margin-top:16px}.scheduled-success-info{padding:16px 0;text-align:center}.scheduled-success-info p{color:var(--text-secondary);margin:8px 0}.scheduled-success-info p strong{color:var(--text-primary)}.scheduled-time-display{align-items:center;background:#eff6ff;background:var(--info-bg,#eff6ff);border-radius:8px;color:#2563eb;color:var(--info-color,#2563eb);display:inline-flex;font-size:16px;font-weight:500;gap:8px;margin:12px 0;padding:12px 20px}.scheduled-time-display svg{color:inherit}.scheduled-role-info{font-size:14px;margin-top:8px}.scheduled-hint{color:#6b7280;color:var(--text-muted,#6b7280);font-size:13px;margin-top:16px}.onprem-target-section{background:#f8f9fa;background:var(--surface-subtle,#f8f9fa);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:8px;margin-top:24px;padding:16px}.onprem-target-section h4{align-items:center;color:var(--text-primary);display:flex;font-size:15px;font-weight:600;gap:8px;margin:0 0 8px}.onprem-target-section .section-hint{color:var(--text-secondary);font-size:13px;margin:0 0 16px}.target-options{display:flex;flex-direction:column;gap:10px}.target-option{align-items:center;background:#fff;background:var(--surface-color,#fff);border:2px solid #e5e7eb;border:2px solid var(--border-color,#e5e7eb);border-radius:8px;cursor:pointer;display:flex;gap:12px;padding:12px 16px;transition:all .15s ease}.target-option:hover{background:#f0f7ff;background:var(--surface-hover,#f0f7ff)}.target-option.selected,.target-option:hover{border-color:#3b82f6;border-color:var(--primary-color,#3b82f6)}.target-option.selected{background:#eff6ff;background:var(--surface-active,#eff6ff)}.target-option input[type=radio]{accent-color:#3b82f6;accent-color:var(--primary-color,#3b82f6);height:18px;margin:0;width:18px}.target-option svg{color:var(--text-secondary);flex-shrink:0}.target-option.selected svg{color:#3b82f6;color:var(--primary-color,#3b82f6)}.target-option .hybrid-icons{align-items:center;color:var(--text-secondary);display:flex;gap:4px}.target-option.selected .hybrid-icons{color:#3b82f6;color:var(--primary-color,#3b82f6)}.target-option .option-info{display:flex;flex-direction:column;gap:2px}.target-option .option-title{color:var(--text-primary);font-size:14px;font-weight:500}.target-option .option-description{color:var(--text-muted);font-size:12px}.domain-selection{border-top:1px solid #e5e7eb;border-top:1px solid var(--border-color,#e5e7eb);margin-top:16px;padding-top:16px}.domain-selection label{color:var(--text-primary);display:block;font-size:14px;font-weight:500;margin-bottom:6px}.domain-selection select{background:#fff;background:var(--surface-color,#fff);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:6px;color:var(--text-primary);font-size:14px;padding:10px 12px;width:100%}.domain-selection select:focus{border-color:#3b82f6;border-color:var(--primary-color,#3b82f6);box-shadow:0 0 0 2px #3b82f633;outline:none}.onprem-warning{align-items:flex-start;background:#fffbeb;border:1px solid #fcd34d;border-radius:6px;color:#92400e;display:flex;font-size:13px;gap:8px;margin-top:12px;padding:10px 12px}.onprem-warning svg{color:#f59e0b;flex-shrink:0}.service-type-badge{background:#f3f4f6;background:var(--surface-subtle,#f3f4f6);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:4px;color:var(--text-secondary);font-size:11px;font-weight:500;margin-left:auto;padding:2px 8px;text-transform:uppercase}.grant-access-section{margin-top:16px}.grant-access-section .form-description{color:var(--text-secondary);font-size:14px;margin:0 0 20px}.grant-access-section .form-section{margin-bottom:20px}.grant-access-section .section-label{align-items:center;color:var(--text-primary);display:flex;font-size:14px;font-weight:600;gap:6px;margin-bottom:12px}.grant-access-section .selected-recipient{align-items:center;background:#f8f9fa;background:var(--surface-color,#f8f9fa);border:1px solid var(--border-color);border-radius:8px;display:flex;justify-content:space-between;padding:12px 16px}.grant-access-section .selected-recipient span{font-size:14px}.grant-access-section .options-list{display:flex;flex-direction:column;gap:12px}.grant-access-section .checkbox-option{align-items:center;cursor:pointer;display:flex;font-size:14px;gap:10px}.grant-access-section .checkbox-option input[type=checkbox]{cursor:pointer;height:18px;width:18px}.grant-access-section .checkbox-option svg{color:var(--text-secondary)}.grant-access-section .nested-option{margin-left:28px;padding-top:8px}.grant-access-section .calendar-level-select{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);font-size:14px;max-width:350px;padding:8px 12px;width:100%}.grant-access-section .scheduling-section{border-top:1px solid var(--border-color);margin-top:20px;padding-top:16px}.grant-access-section .scheduling-toggle-row{align-items:center;display:flex;gap:12px;margin-bottom:12px}.grant-access-section .scheduling-toggle-text{align-items:center;display:flex;font-size:14px;font-weight:500;gap:6px}.grant-access-section .schedule-picker-container{background:#f8f9fa;background:var(--surface-color,#f8f9fa);border-radius:8px;margin-top:12px;padding:16px}.grant-access-section .form-error{color:#dc2626;color:var(--error-color,#dc2626)}.provision-success .result-value.success{color:#16a34a;color:var(--success-color,#16a34a)}.provision-success .result-value.error{color:#dc2626;color:var(--error-color,#dc2626)}.properties-scheduling{border-top:1px solid var(--border-color);margin-top:20px;padding-top:16px}.properties-scheduling .scheduling-toggle-row{align-items:center;display:flex;gap:12px;margin-bottom:12px}.properties-scheduling .scheduling-toggle-text{align-items:center;display:flex;font-size:14px;font-weight:500;gap:6px}.properties-scheduling .schedule-picker-container{background:#f8f9fa;background:var(--surface-color,#f8f9fa);border-radius:8px;margin-top:12px;padding:16px}.properties-scheduling .form-error{color:#dc2626;color:var(--error-color,#dc2626)}.template-list{background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;padding:20px}.template-toolbar{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.template-count{color:var(--text-secondary);font-size:14px}.template-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.template-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;padding:16px;transition:all .2s}.template-card:hover{border-color:var(--primary-color);box-shadow:0 2px 8px #00000014}.template-card.is-default{border-color:var(--success-color)}.template-card.is-system{background:#f8f9fa;background:var(--surface-color,#f8f9fa)}.template-card-header{align-items:flex-start;display:flex;gap:12px;justify-content:space-between;margin-bottom:12px}.template-title{align-items:center;display:flex;flex:1 1;gap:8px;min-width:0}.template-title h4{color:var(--text-primary);font-size:1rem;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.template-badges{display:flex;flex-shrink:0;gap:6px}.system-badge{align-items:center;background:#e3f2fd;background:var(--info-bg,#e3f2fd);border-radius:4px;color:#1565c0;color:var(--info-color,#1565c0);display:flex;font-size:11px;font-weight:500;gap:4px;padding:3px 8px}.template-card-body{margin-bottom:16px}.template-description{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:var(--text-secondary);display:-webkit-box;font-size:14px;line-height:1.5;margin:0 0 12px;overflow:hidden}.template-meta{display:flex;gap:8px}.template-type-badge{background:#f8f9fa;background:var(--surface-color,#f8f9fa);border:1px solid var(--border-color);border-radius:4px;color:var(--text-secondary);font-size:12px;padding:4px 10px}.template-card-actions{border-top:1px solid var(--border-color);display:flex;gap:8px;padding-top:12px}.template-card-actions .btn-spinner{animation:btn-spin .8s linear infinite;border:2px solid var(--border-color);border-radius:50%;border-top-color:var(--primary-color);display:inline-block;height:14px;width:14px}@keyframes btn-spin{to{transform:rotate(1turn)}}.template-card-actions button:disabled{cursor:not-allowed;opacity:.6}.template-editor{display:flex;flex-direction:column;gap:20px}.editor-tabs{border-bottom:2px solid var(--border-color);display:flex;gap:4px;margin-bottom:10px}.editor-tab{align-items:center;background:#0000;border:none;border-bottom:2px solid #0000;color:var(--text-secondary);cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;margin-bottom:-2px;padding:12px 20px;transition:all .2s}.editor-tab.active,.editor-tab:hover{color:var(--primary-color)}.editor-tab.active{border-bottom-color:var(--primary-color)}.editor-error{align-items:center;background:#ffebee;background:var(--danger-bg,#ffebee);border-radius:6px;color:var(--danger-color);display:flex;font-size:14px;gap:8px;padding:12px 16px}.editor-content-tab,.editor-settings-tab{display:flex;flex-direction:column;gap:20px}.subject-input-wrapper{display:flex;gap:8px}.subject-input-wrapper .form-control{flex:1 1}.variable-btn{flex-shrink:0}.variable-picker{background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;box-shadow:0 4px 16px #0000001f;max-height:400px;overflow:hidden;position:absolute;width:400px;z-index:100}.variable-picker-header{align-items:center;border-bottom:1px solid var(--border-color);display:flex;font-weight:500;justify-content:space-between;padding:12px 16px}.variable-picker-header button{background:none;border:none;color:var(--text-secondary);cursor:pointer;font-size:18px}.variable-list{max-height:280px;overflow-y:auto}.variable-item{background:none;border:none;cursor:pointer;display:flex;flex-direction:column;gap:2px;padding:10px 16px;text-align:left;transition:background .15s;width:100%}.variable-item:hover{background:#f8f9fa;background:var(--surface-color,#f8f9fa)}.variable-name{color:var(--primary-color);font-family:monospace;font-size:13px;font-weight:500}.variable-desc{color:var(--text-secondary);font-size:12px}.variable-example{color:var(--text-muted);font-size:11px;font-style:italic}.variable-picker-footer{background:#f8f9fa;background:var(--surface-color,#f8f9fa);border-top:1px solid var(--border-color);padding:10px 16px}.variable-picker-footer code{background:#eee;background:var(--code-bg,#eee);border-radius:3px;font-size:11px;padding:2px 6px}.editor-label-row{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.editor-label-row label{margin-bottom:0}.editor-view-toggle{align-items:center;display:flex;gap:8px}.html-source-editor{display:flex;flex-direction:column;gap:8px}.readonly-notice{align-items:center;background:#e3f2fd;background:var(--info-bg,#e3f2fd);border-radius:6px;color:#1565c0;color:var(--info-color,#1565c0);display:flex;font-size:13px;gap:8px;padding:10px 14px}.html-textarea{font-family:Consolas,Monaco,Courier New,monospace;font-size:13px;line-height:1.5;min-height:400px;overflow-x:auto;resize:vertical;tab-size:2;white-space:pre}.quill-wrapper{border:1px solid var(--border-color);border-radius:8px;overflow:hidden}.quill-wrapper .ql-toolbar{background:var(--surface-color,#f8f9fa);border:none;border-bottom:1px solid var(--border-color)}.quill-wrapper .ql-container{border:none;min-height:300px}.quill-wrapper .ql-editor{min-height:300px}.form-group label{align-items:center;display:flex;justify-content:space-between}.form-hint{color:var(--text-muted);font-size:12px;margin-top:4px}.checkbox-group{background:#f8f9fa;background:var(--surface-color,#f8f9fa);border-radius:8px;padding:12px 16px}.checkbox-label{align-items:center;cursor:pointer;display:flex!important;font-weight:400!important;gap:10px}.checkbox-label input{height:18px;width:18px}.editor-actions{border-top:1px solid var(--border-color);display:flex;gap:12px;justify-content:flex-end;padding-top:20px}.template-preview{display:flex;flex-direction:column;gap:20px}.template-preview.error,.template-preview.loading{align-items:center;color:var(--text-secondary);display:flex;flex-direction:column;gap:16px;justify-content:center;padding:60px 20px}.preview-sample-data{background:#f8f9fa;background:var(--surface-color,#f8f9fa);border-radius:8px;padding:16px}.preview-sample-data h4{color:var(--text-primary);font-size:14px;margin:0 0 12px}.sample-data-form{align-items:flex-end;display:flex;flex-wrap:wrap;gap:12px}.sample-field{display:flex;flex-direction:column;gap:4px;min-width:150px}.sample-field label{color:var(--text-secondary);font-size:12px}.sample-field.checkbox label{align-items:center;cursor:pointer;display:flex;font-size:13px;gap:8px}.sample-field.checkbox input{margin:0}.preview-controls{align-items:center;display:flex;gap:16px;justify-content:space-between}.content-toggle,.view-mode-toggle{background:#f8f9fa;background:var(--surface-color,#f8f9fa);border-radius:6px;display:flex;gap:4px;padding:4px}.content-btn,.view-btn{background:#0000;border:none;border-radius:4px;color:var(--text-secondary);cursor:pointer;padding:8px 12px;transition:all .15s}.content-btn:hover,.view-btn:hover{background:var(--border-color)}.content-btn.active,.view-btn.active{background:var(--card-bg);box-shadow:0 1px 3px #0000001a;color:var(--primary-color)}.preview-subject{background:#f8f9fa;background:var(--surface-color,#f8f9fa);border-radius:6px;font-size:14px;padding:12px 16px}.preview-frame{background:#fff;border:1px solid var(--border-color);border-radius:8px;overflow:hidden;transition:width .3s}.preview-frame.desktop{width:100%}.preview-frame.mobile{margin:0 auto;width:375px}.preview-iframe{border:none;height:500px;width:100%}.preview-text{word-wrap:break-word;font-family:monospace;font-size:13px;line-height:1.6;margin:0;max-height:500px;overflow-y:auto;padding:20px;white-space:pre-wrap}.template-select{position:relative;width:100%}.template-select.disabled{opacity:.6;pointer-events:none}.template-select-control{align-items:center;background:var(--card-bg);border:1px solid var(--border-color);border-radius:6px;cursor:pointer;display:flex;justify-content:space-between;min-height:42px;padding:8px 12px;transition:border-color .15s}.template-select-control:hover,.template-select.open .template-select-control{border-color:var(--primary-color)}.template-select-value{flex:1 1;min-width:0}.selected-template{align-items:center;display:flex;gap:8px}.selected-template .template-name{font-weight:500}.selected-template .default-indicator{color:var(--text-muted);font-size:12px}.template-select .placeholder{color:var(--text-muted)}.template-select-actions{align-items:center;display:flex;gap:4px}.template-select .clear-btn{background:#0000;border:none;border-radius:4px;color:var(--text-muted);cursor:pointer;padding:4px}.template-select .clear-btn:hover{background:var(--surface-color);color:var(--text-primary)}.template-select .dropdown-icon{color:var(--text-muted);transition:transform .2s}.template-select.open .dropdown-icon{transform:rotate(180deg)}.template-select-dropdown{background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;box-shadow:0 4px 16px #0000001f;left:0;margin-top:4px;overflow:hidden;position:absolute;right:0;top:100%;z-index:100}.template-search{border-bottom:1px solid var(--border-color);padding:8px}.template-options{max-height:280px;overflow-y:auto}.template-option{align-items:center;cursor:pointer;display:flex;justify-content:space-between;padding:10px 12px;transition:background .15s}.template-option:hover{background:#f8f9fa;background:var(--surface-color,#f8f9fa)}.template-option.selected{background:#e3f2fd;background:var(--primary-bg,#e3f2fd)}.template-option.empty,.template-option.loading{color:var(--text-muted);cursor:default;font-style:italic}.template-option.empty:hover{background:#0000}.option-content{flex:1 1;min-width:0}.option-main{align-items:center;display:flex;gap:8px}.option-name{font-weight:500}.option-main .default-badge,.option-main .system-badge{border-radius:3px;font-size:10px;padding:2px 6px}.option-main .default-badge{background:var(--success-bg);color:var(--success-color)}.option-main .system-badge{background:#e3f2fd;background:var(--info-bg,#e3f2fd);color:#1565c0;color:var(--info-color,#1565c0)}.option-description{color:var(--text-muted);font-size:12px;margin-top:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.template-option .check-icon{color:var(--primary-color);flex-shrink:0}.template-default-note{background:#f8f9fa;background:var(--surface-color,#f8f9fa);border-top:1px solid var(--border-color);color:var(--text-muted);padding:8px 12px;text-align:center}.user-activity-dashboard{margin:0 auto;max-width:1400px;padding:20px}.user-activity-dashboard .error-container,.user-activity-dashboard .loading-container,.user-activity-dashboard .no-data-container{align-items:center;color:#666;display:flex;flex-direction:column;justify-content:center;padding:60px 20px;text-align:center}.user-activity-dashboard .error-container span,.user-activity-dashboard .loading-container span{margin-top:12px}.user-activity-dashboard .error-container{color:#dc3545}.user-activity-dashboard .error-container .btn-retry{background:#dc3545;border:none;border-radius:4px;color:#fff;cursor:pointer;margin-top:16px;padding:8px 16px}.user-activity-dashboard .error-container .btn-retry:hover{background:#c82333}.user-activity-dashboard .no-data-container h2{color:#333;margin:16px 0 8px}.user-activity-dashboard .no-data-container p{line-height:1.6;max-width:500px}.user-activity-dashboard .no-data-container .hint{color:#888;font-size:.9em;margin-top:16px}.user-activity-dashboard .spinning{animation:spin 1s linear infinite}.user-activity-dashboard .header{align-items:center;border-bottom:1px solid #eee;display:flex;justify-content:space-between;margin-bottom:16px;padding-bottom:16px}.user-activity-dashboard .header-title{align-items:center;display:flex;gap:12px}.user-activity-dashboard .header-title h1{color:#333;font-size:1.5rem;margin:0}.user-activity-dashboard .provider-badge{border-radius:12px;font-size:.75rem;font-weight:500;padding:4px 10px;text-transform:uppercase}.user-activity-dashboard .provider-badge.microsoft{background:#0078d4;color:#fff}.user-activity-dashboard .provider-badge.google{background:#4285f4;color:#fff}.user-activity-dashboard .header-actions{display:flex;gap:8px}.user-activity-dashboard .btn-refresh{align-items:center;background:#f8f9fa;border:1px solid #dee2e6;border-radius:4px;color:#495057;cursor:pointer;display:flex;gap:6px;padding:8px 12px}.user-activity-dashboard .btn-refresh:hover:not(:disabled){background:#e9ecef}.user-activity-dashboard .btn-refresh:disabled{cursor:not-allowed;opacity:.6}.user-activity-dashboard .activity-tabs{border-bottom:1px solid #dee2e6;display:flex;gap:4px;margin-bottom:24px;padding-bottom:0}.user-activity-dashboard .activity-tab{align-items:center;background:#0000;border:none;border-bottom:3px solid #0000;color:#6c757d;cursor:pointer;display:flex;font-size:.9rem;font-weight:500;gap:8px;margin-bottom:-1px;padding:12px 20px;transition:all .2s ease}.user-activity-dashboard .activity-tab:hover{background:#f8f9fa;color:#495057}.user-activity-dashboard .activity-tab.active{background:#0000;border-bottom-color:#0078d4;color:#0078d4}.user-activity-dashboard .tab-content{animation:fadeIn .2s ease}.user-activity-dashboard .summary-section{margin-bottom:32px}.user-activity-dashboard .quick-stats-section h2,.user-activity-dashboard .security-section h2,.user-activity-dashboard .services-section h2,.user-activity-dashboard .summary-section h2,.user-activity-dashboard .users-section h2{color:#333;font-size:1.1rem;margin:0 0 16px}.user-activity-dashboard .summary-cards{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.user-activity-dashboard .summary-card{align-items:center;background:#fff;border:1px solid #e9ecef;border-radius:8px;box-shadow:0 1px 3px #0000000d;display:flex;gap:16px;padding:20px}.user-activity-dashboard .summary-card svg{color:#6c757d}.user-activity-dashboard .card-content{display:flex;flex-direction:column}.user-activity-dashboard .card-value{color:#333;font-size:1.5rem;font-weight:600}.user-activity-dashboard .card-label{color:#6c757d;font-size:.85rem}.user-activity-dashboard .quick-stats-section{margin-bottom:32px}.user-activity-dashboard .quick-stats-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.user-activity-dashboard .quick-stat{align-items:center;background:#fff;border:1px solid #e9ecef;border-radius:8px;display:flex;gap:12px;padding:16px}.user-activity-dashboard .quick-stat svg{color:#6c757d;flex-shrink:0}.user-activity-dashboard .quick-stat.highlight{background:linear-gradient(135deg,#e8f4f8,#f0f7ff);border-color:#0078d4}.user-activity-dashboard .quick-stat.highlight svg{color:#0078d4}.user-activity-dashboard .stat-details{display:flex;flex-direction:column}.user-activity-dashboard .stat-value{color:#333;font-size:1.25rem;font-weight:600}.user-activity-dashboard .stat-label{color:#6c757d;font-size:.8rem}.user-activity-dashboard .services-section{margin-bottom:32px}.user-activity-dashboard .service-cards{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.user-activity-dashboard .service-card{background:#fff;border:1px solid #e9ecef;border-radius:8px;box-shadow:0 1px 3px #0000000d;overflow:hidden}.user-activity-dashboard .service-header{align-items:center;background:#f8f9fa;border-bottom:1px solid #e9ecef;color:#333;display:flex;font-weight:500;gap:10px;padding:14px 16px}.user-activity-dashboard .service-header svg{color:#495057}.user-activity-dashboard .service-stats{padding:12px 16px}.user-activity-dashboard .stat-row{border-bottom:1px solid #f1f1f1;display:flex;justify-content:space-between;padding:8px 0}.user-activity-dashboard .stat-row:last-child{border-bottom:none}.user-activity-dashboard .stat-row span:first-child{color:#6c757d}.user-activity-dashboard .stat-row span:last-child{color:#333;font-weight:500}.user-activity-dashboard .security-section{margin-bottom:32px}.user-activity-dashboard .mfa-summary{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-bottom:24px}.user-activity-dashboard .mfa-progress-card{background:#fff;border:1px solid #e9ecef;border-radius:8px;padding:20px}.user-activity-dashboard .mfa-progress-card h3{color:#333;font-size:1rem;margin:0 0 16px}.user-activity-dashboard .mfa-progress{background:#e9ecef;border-radius:6px;height:12px;margin-bottom:12px;overflow:hidden}.user-activity-dashboard .mfa-progress .progress-bar{background:linear-gradient(90deg,#28a745,#20c997);border-radius:6px;height:100%;transition:width .5s ease}.user-activity-dashboard .mfa-progress.passwordless .progress-bar{background:linear-gradient(90deg,#0078d4,#00bcf2)}.user-activity-dashboard .mfa-stats-row{align-items:center;display:flex;justify-content:space-between}.user-activity-dashboard .mfa-value{color:#28a745;font-size:1.5rem;font-weight:600}.user-activity-dashboard .mfa-detail{color:#6c757d;font-size:.9rem}.user-activity-dashboard .auth-methods-section{margin-bottom:24px}.user-activity-dashboard .auth-methods-section h3{color:#333;font-size:1rem;margin:0 0 16px}.user-activity-dashboard .auth-methods-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.user-activity-dashboard .auth-method-card{align-items:center;background:#fff;border:1px solid #e9ecef;border-radius:8px;display:flex;gap:12px;padding:16px}.user-activity-dashboard .auth-method-card svg{color:#6c757d;flex-shrink:0}.user-activity-dashboard .method-name{color:#333;flex:1 1;font-size:.9rem}.user-activity-dashboard .method-count{color:#0078d4;font-size:1.1rem;font-weight:600}.user-activity-dashboard .sspr-section h3{color:#333;font-size:1rem;margin:0 0 16px}.user-activity-dashboard .sspr-stats{display:flex;flex-wrap:wrap;gap:24px}.user-activity-dashboard .sspr-stat{background:#fff;border:1px solid #e9ecef;border-radius:8px;display:flex;flex-direction:column;min-width:140px;padding:16px 24px}.user-activity-dashboard .sspr-label{color:#6c757d;font-size:.85rem;margin-bottom:4px}.user-activity-dashboard .sspr-value{color:#333;font-size:1.5rem;font-weight:600}.user-activity-dashboard .google-security-card{background:#fff;border:1px solid #e9ecef;border-radius:8px;padding:24px}.user-activity-dashboard .security-stat-large{align-items:center;display:flex;gap:20px;margin-bottom:16px}.user-activity-dashboard .security-stat-large svg{color:#28a745}.user-activity-dashboard .security-stat-content{display:flex;flex-direction:column}.user-activity-dashboard .security-value{color:#333;font-size:2rem;font-weight:600}.user-activity-dashboard .security-label{color:#6c757d;font-size:1rem}.user-activity-dashboard .security-note{background:#f8f9fa;border-radius:6px;color:#6c757d;font-size:.9rem;line-height:1.5;margin:0;padding:16px}.user-activity-dashboard .users-section{margin-bottom:32px}.user-activity-dashboard .section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.user-activity-dashboard .search-box{align-items:center;background:#fff;border:1px solid #dee2e6;border-radius:4px;display:flex;gap:8px;padding:8px 12px}.user-activity-dashboard .search-box svg{color:#6c757d}.user-activity-dashboard .search-box input{border:none;font-size:.9rem;outline:none;width:200px}.user-activity-dashboard .no-users{background:#f8f9fa;border-radius:8px;color:#6c757d;padding:40px;text-align:center}.user-activity-dashboard .users-table-container{background:#fff;border:1px solid #e9ecef;border-radius:8px;overflow-x:auto}.user-activity-dashboard .users-table{border-collapse:collapse;width:100%}.user-activity-dashboard .users-table td,.user-activity-dashboard .users-table th{border-bottom:1px solid #e9ecef;padding:12px 16px;text-align:left}.user-activity-dashboard .users-table th{background:#f8f9fa;color:#495057;font-size:.85rem;font-weight:500;letter-spacing:.5px;text-transform:uppercase}.user-activity-dashboard .users-table tbody tr:hover{background:#f8f9fa}.user-activity-dashboard .users-table tbody tr:last-child td{border-bottom:none}.user-activity-dashboard .user-info{display:flex;flex-direction:column}.user-activity-dashboard .user-name{color:#333;font-weight:500}.user-activity-dashboard .user-email{color:#6c757d;font-size:.85rem}.user-activity-dashboard .badge{border-radius:4px;display:inline-block;font-size:.75rem;font-weight:500;padding:4px 8px}.user-activity-dashboard .badge-success{background:#d4edda;color:#155724}.user-activity-dashboard .badge-warning{background:#fff3cd;color:#856404}@media (max-width:768px){.user-activity-dashboard{padding:16px}.user-activity-dashboard .header{align-items:flex-start;flex-direction:column;gap:12px}.user-activity-dashboard .activity-tabs,.user-activity-dashboard .header-title{flex-wrap:wrap}.user-activity-dashboard .activity-tab{font-size:.85rem;padding:10px 14px}.user-activity-dashboard .section-header{align-items:flex-start;flex-direction:column;gap:12px}.user-activity-dashboard .search-box,.user-activity-dashboard .search-box input{width:100%}.user-activity-dashboard .service-cards,.user-activity-dashboard .summary-cards{grid-template-columns:1fr}.user-activity-dashboard .quick-stats-grid{grid-template-columns:1fr 1fr}.user-activity-dashboard .auth-methods-grid,.user-activity-dashboard .mfa-summary{grid-template-columns:1fr}.user-activity-dashboard .sspr-stats{flex-direction:column;gap:12px}.user-activity-dashboard .sspr-stat{min-width:auto}}.change-control-manager{margin:0 auto;max-width:1400px;padding:20px}.page-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:24px}.header-content h1{align-items:center;color:#1a1a2e;color:var(--text-primary,#1a1a2e);display:flex;font-size:24px;font-weight:600;gap:12px;margin:0 0 8px}.header-subtitle{align-items:center;color:#666;color:var(--text-secondary,#666);display:flex;flex-wrap:wrap;font-size:14px;gap:4px;margin:0}.header-subtitle .access-level-badge{margin-left:8px}.read-only-badge{background:#fff3cd;background:var(--warning-bg,#fff3cd);border-radius:4px;color:#856404;color:var(--warning-text,#856404);display:inline-block;font-size:12px;margin-left:8px;padding:2px 8px}.header-actions{align-items:center;display:flex;gap:8px}.change-control-manager .header-actions .ttg-internal-badge{margin-right:8px}.view-mode-toggle{display:flex;gap:4px}.view-mode-toggle .btn-icon{align-items:center;background:#fff;background:var(--bg-primary,#fff);border:1px solid #ccc;border:1px solid var(--border-color,#ccc);border-radius:4px;color:#666;color:var(--text-secondary,#666);cursor:pointer;display:flex;justify-content:center;padding:8px 12px;transition:all .2s ease}.view-mode-toggle .btn-icon:hover{border-color:#0078d4;border-color:var(--primary-color,#0078d4);color:#0078d4;color:var(--primary-color,#0078d4)}.view-mode-toggle .btn-icon.active{background:#0078d4;background:var(--primary-color,#0078d4);border-color:#0078d4;border-color:var(--primary-color,#0078d4);color:#fff}.btn-add{align-items:center;background:#28a745;background:var(--success-color,#28a745);border:none;border-radius:4px;color:#fff;cursor:pointer;display:flex;justify-content:center;padding:8px 12px;transition:all .2s ease}.btn-add:hover{background:#218838}.btn-add-large{padding:12px 16px}.form-row-header{align-items:flex-end;display:flex;gap:16px}.form-row-header .form-group-flex{flex:1 1}.form-row-header .form-group-toggle{flex-shrink:0}.form-row-3col{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(3,1fr)}.form-row-4col{grid-gap:16px;grid-template-columns:1fr 1fr auto auto}.form-row-4col,.schedule-row{align-items:end;display:grid;gap:16px}.schedule-row{grid-gap:16px;grid-template-columns:auto 1fr 1fr}.schedule-now-toggle{align-items:center;display:flex;min-width:80px;padding-bottom:8px}.schedule-now-toggle .toggle-switch-wrapper{margin:0}.form-group-toggle-inline{align-items:center;display:flex;padding-bottom:8px}.entry-type-toggle{border:1px solid #e0e0e0;border:1px solid var(--border-color,#e0e0e0);border-radius:6px;display:flex;overflow:hidden}.entry-type-toggle .toggle-btn{background:#fff;background:var(--bg-primary,#fff);border:none;color:#666;color:var(--text-secondary,#666);cursor:pointer;font-size:14px;padding:8px 16px;transition:all .2s ease}.entry-type-toggle .toggle-btn:first-child{border-right:1px solid #e0e0e0;border-right:1px solid var(--border-color,#e0e0e0)}.entry-type-toggle .toggle-btn.active{background:#3498db;background:var(--primary-color,#3498db);color:#fff}.entry-type-toggle .toggle-btn:hover:not(.active){background:#f0f0f0;background:var(--hover-bg,#f0f0f0)}.filters-row{align-items:flex-end;display:flex;flex-wrap:wrap;gap:16px;margin-bottom:20px}.filter-group{display:flex;flex-direction:column;gap:4px}.filter-group label{color:#666;color:var(--text-secondary,#666);font-size:12px;font-weight:500}.filter-group select{background:#fff;background:var(--bg-primary,#fff);border:1px solid #e0e0e0;border:1px solid var(--border-color,#e0e0e0);border-radius:6px;box-sizing:border-box;font-size:14px;height:38px;min-width:150px;padding:10px 12px}.filter-group-search{flex:1 1;max-width:350px;min-width:200px;position:relative}.filter-group-search input{background:#fff;background:var(--bg-primary,#fff);border:1px solid #e0e0e0;border:1px solid var(--border-color,#e0e0e0);border-radius:6px;box-sizing:border-box;font-size:14px;height:38px;padding:10px 32px 10px 36px;width:100%}.filter-group-search input:focus{border-color:#0078d4;border-color:var(--primary-color,#0078d4);outline:none}.filter-group-search .search-icon{bottom:11px;color:#666;color:var(--text-secondary,#666);left:12px;pointer-events:none;position:absolute}.filter-group-search .search-clear{align-items:center;background:none;border:none;border-radius:50%;bottom:7px;color:#666;color:var(--text-secondary,#666);cursor:pointer;display:flex;justify-content:center;padding:4px;position:absolute;right:8px}.filter-group-search .search-clear:hover{background:#f0f0f0;background:var(--hover-bg,#f0f0f0);color:#1a1a2e;color:var(--text-primary,#1a1a2e)}.filters-row>.btn{align-items:center;display:flex;height:38px;justify-content:center;min-width:38px;padding:0 12px}.entry-row.clickable{cursor:pointer;transition:background-color .2s ease}.entry-row.clickable:hover{background-color:#f5f5f5;background-color:var(--hover-bg,#f5f5f5)}.entry-header.clickable{cursor:pointer;transition:background-color .2s ease}.entry-header.clickable:hover{background-color:#f5f5f5;background-color:var(--hover-bg,#f5f5f5)}.empty-state,.loading-container{align-items:center;color:#666;color:var(--text-secondary,#666);display:flex;flex-direction:column;justify-content:center;padding:60px 20px;text-align:center}.loading-container span{margin-top:12px}.empty-state h3{color:#1a1a2e;color:var(--text-primary,#1a1a2e);margin:16px 0 8px}.empty-state p{margin:0 0 20px}.spin{animation:spin 1s linear infinite}.entries-table{background:#fff;background:var(--bg-primary,#fff);border:1px solid #e0e0e0;border:1px solid var(--border-color,#e0e0e0);border-radius:8px;overflow:hidden}.entries-table table{border-collapse:collapse;width:100%}.entries-table th{background:#f5f5f5;background:var(--bg-secondary,#f5f5f5);border-bottom:1px solid #e0e0e0;border-bottom:1px solid var(--border-color,#e0e0e0);color:#666;color:var(--text-secondary,#666);font-size:13px;font-weight:600;padding:12px 16px;text-align:left;white-space:nowrap}.entries-table th.sortable{cursor:pointer;transition:background-color .2s ease;-webkit-user-select:none;user-select:none}.entries-table th.sortable:hover{background:#eee;background:var(--bg-tertiary,#eee);color:#0078d4;color:var(--primary-color,#0078d4)}.entries-table td{border-bottom:1px solid #eee;border-bottom:1px solid var(--border-color,#eee);font-size:14px;padding:12px 16px;vertical-align:middle}.entries-table tbody tr:last-child td{border-bottom:none}.entries-table tbody tr:hover{background:#f9f9f9;background:var(--bg-secondary,#f9f9f9)}.entry-title-cell{max-width:300px}.entry-title-content{align-items:center;display:flex;gap:8px}.entry-title-content .change-icon{color:#0dcaf0;color:var(--info-color,#0dcaf0);flex-shrink:0}.entry-title-content .outage-icon{color:#ffc107;color:var(--warning-color,#ffc107);flex-shrink:0}.entry-title-content span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.actions-cell{white-space:nowrap}.actions-cell .btn-icon{background:#0000;border:none;border-radius:4px;color:#666;color:var(--text-secondary,#666);cursor:pointer;padding:6px;transition:all .2s ease}.actions-cell .btn-icon:hover{background:#f0f0f0;background:var(--bg-secondary,#f0f0f0);color:#333;color:var(--text-primary,#333)}.actions-cell .btn-icon-sm{padding:4px}.actions-cell .btn-icon-danger:hover{background:#ffe5e5;background:var(--danger-bg,#ffe5e5);color:#dc3545;color:var(--danger-color,#dc3545)}.actions-cell .btn-icon-success:hover{background:#d1fae5;background:var(--success-bg,#d1fae5);color:#10b981;color:var(--success-color,#10b981)}.actions-cell .btn-icon-warning:hover{background:#fef3c7;background:var(--warning-bg,#fef3c7);color:#f59e0b;color:var(--warning-color,#f59e0b)}.actions-cell .btn-icon-info:hover{background:#dbeafe;background:var(--info-bg,#dbeafe);color:#3b82f6;color:var(--info-color,#3b82f6)}.actions-cell .btn-icon-primary:hover{background:#dbeafe;background:var(--info-bg,#dbeafe);color:#3b82f6;color:var(--primary-color,#3b82f6)}.ticket-links{display:flex;flex-wrap:wrap;gap:6px}.ticket-link{background:#e3f7fc;background:var(--info-bg,#e3f7fc);border-radius:4px;color:#0dcaf0;color:var(--info-color,#0dcaf0);display:inline-block;font-size:12px;font-weight:500;padding:2px 6px;text-decoration:none;transition:all .2s ease}.ticket-link:hover{background:#0dcaf0;background:var(--info-color,#0dcaf0);color:#fff;text-decoration:none}.tickets-section h4{align-items:center;display:flex;gap:8px}.tickets-list{display:flex;flex-direction:column;gap:8px}.ticket-item{align-items:center;background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border:1px solid #e0e0e0;border:1px solid var(--border-color,#e0e0e0);border-radius:6px;display:flex;gap:12px;padding:8px 12px}.ticket-item.primary{background:#e6f3ff;background:var(--primary-bg,#e6f3ff);border-color:#0078d4;border-color:var(--primary-color,#0078d4)}.ticket-item .ticket-link{font-weight:600}.ticket-pending{color:#999;color:var(--text-muted,#999);font-size:13px;font-style:italic}.ticket-status{border-radius:4px;font-size:12px;padding:2px 8px;text-transform:capitalize}.ticket-status.status-pending{background:#fff3cd;background:var(--warning-bg,#fff3cd);color:#856404;color:var(--warning-text,#856404)}.ticket-status.status-created{background:#d4edda;background:var(--success-bg,#d4edda);color:#155724;color:var(--success-text,#155724)}.ticket-status.status-updated{background:#d1ecf1;background:var(--info-bg,#d1ecf1);color:#0c5460;color:var(--info-text,#0c5460)}.ticket-status.status-failed{background:#f8d7da;background:var(--danger-bg,#f8d7da);color:#721c24;color:var(--danger-text,#721c24)}.ticket-timing{color:#999;color:var(--text-muted,#999);font-size:12px;margin-left:auto}.calendar-view{background:#fff;background:var(--bg-primary,#fff);border:1px solid #e0e0e0;border:1px solid var(--border-color,#e0e0e0);border-radius:8px;overflow:hidden}.calendar-header{background:#f5f5f5;background:var(--bg-secondary,#f5f5f5);border-bottom:1px solid #e0e0e0;border-bottom:1px solid var(--border-color,#e0e0e0);justify-content:space-between;padding:16px}.calendar-header,.calendar-nav{align-items:center;display:flex}.calendar-nav{gap:12px}.calendar-nav .btn-icon{align-items:center;background:#fff;background:var(--bg-primary,#fff);border:1px solid #ccc;border:1px solid var(--border-color,#ccc);border-radius:4px;color:#666;color:var(--text-secondary,#666);cursor:pointer;display:flex;justify-content:center;padding:8px;transition:all .2s ease}.calendar-nav .btn-icon:hover{border-color:#0078d4;border-color:var(--primary-color,#0078d4);color:#0078d4;color:var(--primary-color,#0078d4)}.calendar-title{color:#333;color:var(--text-primary,#333);font-size:18px;font-weight:600;margin:0;min-width:200px;text-align:center}.calendar-view-toggle{display:flex;gap:4px}.calendar-view-toggle .btn{font-size:13px;padding:6px 12px}.calendar-month{padding:0}.calendar-weekdays{background:#f9f9f9;background:var(--bg-secondary,#f9f9f9);border-bottom:1px solid #e0e0e0;border-bottom:1px solid var(--border-color,#e0e0e0);display:grid;grid-template-columns:repeat(7,1fr)}.calendar-weekday{color:#666;color:var(--text-secondary,#666);font-size:12px;font-weight:600;padding:12px 8px;text-align:center;text-transform:uppercase}.calendar-days{display:grid;grid-template-columns:repeat(7,1fr)}.calendar-day{background:#fff;background:var(--bg-primary,#fff);border-bottom:1px solid #eee;border-bottom:1px solid var(--border-color,#eee);border-right:1px solid #eee;border-right:1px solid var(--border-color,#eee);min-height:100px;padding:4px}.calendar-day:nth-child(7n){border-right:none}.calendar-day.other-month{background:#f9f9f9;background:var(--bg-secondary,#f9f9f9)}.calendar-day.other-month .day-number{color:#999;color:var(--text-muted,#999)}.calendar-day.today{background:#e3f2fd;background:var(--primary-bg,#e3f2fd)}.calendar-day.today .day-number{align-items:center;background:#0078d4;background:var(--primary-color,#0078d4);border-radius:50%;color:#fff;display:flex;height:24px;justify-content:center;width:24px}.day-number{color:#333;color:var(--text-primary,#333);display:inline-block;font-size:13px;font-weight:500;margin-bottom:4px;padding:2px 4px}.day-entries{display:flex;flex-direction:column;gap:2px}.calendar-entry{align-items:center;border-radius:3px;cursor:pointer;display:flex;font-size:11px;gap:4px;overflow:hidden;padding:2px 4px;text-overflow:ellipsis;white-space:nowrap}.calendar-entry.change{background:#e3f7fc;background:var(--info-bg,#e3f7fc);border-left:2px solid #0dcaf0;border-left:2px solid var(--info-color,#0dcaf0);color:#0dcaf0;color:var(--info-color,#0dcaf0)}.calendar-entry.outage{background:#fff3cd;background:var(--warning-bg,#fff3cd);border-left:2px solid #ffc107;border-left:2px solid var(--warning-color,#ffc107);color:#856404;color:var(--warning-text,#856404)}.calendar-entry:hover{opacity:.8}.calendar-entry span{overflow:hidden;text-overflow:ellipsis}.calendar-entry-title{flex:1 1;min-width:0}.calendar-entry-tenant{font-size:9px;margin-left:4px;opacity:.7;white-space:nowrap}.more-entries{color:#666;color:var(--text-secondary,#666);cursor:pointer;font-size:10px;padding:2px 4px}.more-entries:hover{color:#0078d4;color:var(--primary-color,#0078d4)}.calendar-week{display:flex;flex-direction:column}.week-header{background:#f9f9f9;background:var(--bg-secondary,#f9f9f9);border-bottom:1px solid #e0e0e0;border-bottom:1px solid var(--border-color,#e0e0e0);display:grid;grid-template-columns:repeat(7,1fr)}.week-day-header{border-right:1px solid #eee;border-right:1px solid var(--border-color,#eee);padding:12px 8px;text-align:center}.week-day-header:last-child{border-right:none}.week-day-header.today{background:#e3f2fd;background:var(--primary-bg,#e3f2fd)}.weekday-name{color:#666;color:var(--text-secondary,#666);font-size:12px;text-transform:uppercase}.weekday-date,.weekday-name{display:block;font-weight:600}.weekday-date{color:#333;color:var(--text-primary,#333);font-size:20px;margin-top:4px}.week-day-header.today .weekday-date{color:#0078d4;color:var(--primary-color,#0078d4)}.week-body{display:grid;grid-template-columns:repeat(7,1fr);min-height:400px}.week-day-column{background:#fff;background:var(--bg-primary,#fff);border-right:1px solid #eee;border-right:1px solid var(--border-color,#eee);display:flex;flex-direction:column;gap:8px;padding:8px}.week-day-column:last-child{border-right:none}.week-entry{border-radius:6px;cursor:pointer;padding:8px;transition:transform .2s ease,box-shadow .2s ease}.week-entry:hover{box-shadow:0 2px 8px #0000001a;transform:translateY(-1px)}.week-entry.change{background:#e3f7fc;background:var(--info-bg,#e3f7fc);border-left:3px solid #0dcaf0;border-left:3px solid var(--info-color,#0dcaf0)}.week-entry.outage{background:#fff3cd;background:var(--warning-bg,#fff3cd);border-left:3px solid #ffc107;border-left:3px solid var(--warning-color,#ffc107)}.week-entry-time{color:#666;color:var(--text-secondary,#666);font-size:11px;margin-bottom:4px}.week-entry-title{align-items:center;color:#333;color:var(--text-primary,#333);display:flex;font-size:13px;font-weight:500;gap:6px;margin-bottom:4px}.week-entry-title span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.week-entry-tenant{color:#666;color:var(--text-secondary,#666);font-size:11px;margin-bottom:4px}.week-entry-status .badge{font-size:10px;padding:2px 6px}.week-no-entries{color:#999;color:var(--text-muted,#999);font-size:12px;padding:20px 8px;text-align:center}.entries-list{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(3,1fr)}@media (max-width:1024px){.entries-list{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.entries-list{grid-template-columns:1fr}}.entry-card{background:#fff;background:var(--bg-primary,#fff);border:1px solid #e0e0e0;border:1px solid var(--border-color,#e0e0e0);border-radius:8px;overflow:hidden;position:relative;transition:box-shadow .2s ease}.entry-card:hover{box-shadow:0 2px 8px #00000014}.entry-card.expanded{box-shadow:0 4px 12px #0000001a}.entry-header{cursor:pointer;gap:16px;padding:16px 48px 16px 16px}.entry-header,.entry-icon{align-items:center;display:flex}.entry-icon{border-radius:8px;flex-shrink:0;height:40px;justify-content:center;width:40px}.entry-icon .change-icon{color:#0dcaf0;color:var(--info-color,#0dcaf0)}.entry-icon .outage-icon{color:#ffc107;color:var(--warning-color,#ffc107)}.entry-info{flex:1 1;min-width:0}.entry-info h3{color:#1a1a2e;color:var(--text-primary,#1a1a2e);font-size:16px;font-weight:600;margin:0 0 8px}.entry-meta{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.schedule-info{align-items:center;display:flex;gap:4px}.schedule-info,.tenant-info{color:#666;color:var(--text-secondary,#666);font-size:12px}.tenant-info{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.linked-tenants{display:flex;flex-wrap:wrap;gap:6px}.tenant-chip{background:#cff4fc;background:var(--info-bg,#cff4fc);border-radius:12px;color:#0dcaf0;color:var(--info-color,#0dcaf0);display:inline-block;font-size:12px;font-weight:500;padding:2px 8px}.entry-expand{border-radius:4px;color:#666;color:var(--text-secondary,#666);cursor:pointer;padding:4px;position:absolute;right:12px;top:12px;transition:background-color .2s ease;z-index:1}.entry-expand:hover{background-color:#f5f5f5;background-color:var(--bg-secondary,#f5f5f5)}.entry-details{border-top:1px solid #e0e0e0;border-top:1px solid var(--border-color,#e0e0e0);padding:0 16px 16px}.detail-section{margin-top:16px}.detail-section h4{color:#1a1a2e;color:var(--text-primary,#1a1a2e);font-size:14px;font-weight:600;margin:0 0 8px}.detail-section p{color:#666;color:var(--text-secondary,#666);font-size:14px;line-height:1.5;margin:0}.detail-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(3,1fr);margin-top:16px}.detail-item{display:flex;flex-direction:column;gap:4px}.detail-item label{color:#666;color:var(--text-secondary,#666);font-size:11px;font-weight:500}.detail-item span{color:#1a1a2e;color:var(--text-primary,#1a1a2e);font-size:12px}.timeline-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(4,1fr)}.timeline-item{display:flex;flex-direction:column;gap:4px;text-align:left}.timeline-item label{color:#666;color:var(--text-secondary,#666);font-size:12px;font-weight:500}.timeline-item span{color:#1a1a2e;color:var(--text-primary,#1a1a2e);font-size:14px}@media (max-width:768px){.detail-grid,.timeline-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:480px){.detail-grid,.timeline-grid{grid-template-columns:1fr}}.audit-info{color:#666;color:var(--text-secondary,#666);display:flex;flex-direction:column;font-size:12px;gap:4px}.entry-actions{border-top:1px solid #e0e0e0;border-top:1px solid var(--border-color,#e0e0e0);display:flex;flex-wrap:wrap;gap:8px;margin-top:16px;padding-top:16px}.badge-secondary{background:#f0f0f0;background:var(--secondary-bg,#f0f0f0);color:#6c757d;color:var(--secondary-color,#6c757d)}.error-message .btn-close,.success-message .btn-close{margin-left:auto;padding:2px}.btn-outline-primary{background:#0000;border:1px solid #0d6efd;border:1px solid var(--primary-color,#0d6efd);color:#0d6efd;color:var(--primary-color,#0d6efd)}.btn-outline-primary:hover:not(:disabled){background:#0d6efd1a}.modal-form-wrapper{display:flex;flex:1 1;flex-direction:column;max-height:80vh;min-height:0}.modal-form-wrapper .modal-body{flex:1 1;min-height:0;overflow-y:auto}.form-section h3{align-items:center;border-bottom:1px solid #e0e0e0;border-bottom:1px solid var(--border-color,#e0e0e0);color:#1a1a2e;color:var(--text-primary,#1a1a2e);display:flex;font-size:14px;font-weight:600;margin:0 0 16px;padding-bottom:8px}.form-group label input[type=checkbox]{margin-right:8px}.form-group input[type=datetime-local]{background:#fff;background:var(--bg-primary,#fff);color:#1a1a2e;color:var(--text-primary,#1a1a2e);font-size:14px;padding:10px 12px}.form-group input[type=datetime-local],.tenant-selector{border:1px solid #e0e0e0;border:1px solid var(--border-color,#e0e0e0);border-radius:6px}.tenant-selector{overflow:hidden}.tenant-search{border:none;border-bottom:1px solid #e0e0e0;border-bottom:1px solid var(--border-color,#e0e0e0);border-radius:0}.tenant-search input{background:#0000;border:none}.tenant-checkbox-list{background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);max-height:150px;overflow-y:auto;padding:8px 12px}.tenant-checkbox-item{align-items:center;color:#1a1a2e;color:var(--text-primary,#1a1a2e);cursor:pointer;display:flex;font-size:14px;gap:8px;padding:6px 0}.tenant-checkbox-item:hover{background:#f0f0f0;background:var(--hover-bg,#f0f0f0);margin:0 -12px;padding:6px 12px}.tenant-checkbox-item input[type=checkbox]{margin:0}.no-tenants-message{font-size:14px;font-style:italic}.no-tenants-message,.selected-count{color:#666;color:var(--text-secondary,#666)}.selected-count{display:block;font-size:12px;margin-top:8px}.email-options{background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border:1px solid #e0e0e0;border:1px solid var(--border-color,#e0e0e0);border-radius:6px;margin-top:8px;padding:12px}.email-options .form-group{margin-bottom:12px}.email-options .form-group:last-child{margin-bottom:0}.ticket-card{background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border:1px solid #e0e0e0;border:1px solid var(--border-color,#e0e0e0);border-radius:8px;margin-bottom:12px;padding:16px}.ticket-card.primary{border-color:#3498db;border-color:var(--primary-color,#3498db);border-width:2px}.ticket-card.ticket-completed{background:#d4edda;background:var(--success-bg,#d4edda);border-color:#28a745;border-color:var(--success-color,#28a745)}.created-ticket-info{background:#fff;background:var(--bg-primary,#fff);border:1px solid #e0e0e0;border:1px solid var(--border-color,#e0e0e0);border-radius:6px;padding:12px}.ticket-link-large a{align-items:center;color:#0078d4;color:var(--primary-color,#0078d4);display:inline-flex;font-size:16px;font-weight:600;gap:8px;text-decoration:none}.ticket-link-large a:hover{text-decoration:underline}.ticket-meta-info{color:#666;color:var(--text-secondary,#666);display:flex;flex-wrap:wrap;font-size:13px;gap:16px;margin-top:12px}.ticket-meta-info span{display:flex;gap:4px}.ticket-header{align-items:center;border-bottom:1px solid #e0e0e0;border-bottom:1px solid var(--border-color,#e0e0e0);display:flex;gap:12px;margin-bottom:12px;padding-bottom:8px}.ticket-number{font-size:14px;font-weight:600}.ticket-actions{display:flex;gap:8px;margin-left:auto}.ticket-actions .btn-link{font-size:12px;padding:2px 6px}.ticket-actions .btn-link.danger{color:#dc3545;color:var(--danger-color,#dc3545)}.section-description{color:var(--text-secondary,#666);margin-bottom:16px}.assign-section{border-top:1px solid #e0e0e0;border-top:1px solid var(--border-color,#e0e0e0);margin-top:16px;padding-top:16px}.assign-options{display:flex;gap:20px;margin-bottom:12px}.assign-options .radio-label{align-items:center;cursor:pointer;display:flex;font-size:14px;gap:6px}.assign-options .radio-label input[type=radio]{cursor:pointer}.assignee-input{margin-bottom:12px}.agent-status{align-items:flex-start;border-radius:6px;display:flex;font-size:13px;gap:8px;margin-top:8px;padding:10px 12px}.agent-status.looking-up{background:#e7f3ff;background:var(--info-bg,#e7f3ff);color:#06c;color:var(--info-color,#06c)}.agent-status.looking-up svg{flex-shrink:0}.agent-status.error{background:#ffe5e5;background:var(--danger-bg,#ffe5e5);color:#dc3545;color:var(--danger-color,#dc3545);flex-direction:column}.agent-status.error>span{align-items:center;display:flex;gap:6px}.agent-status.success{background:#e5ffe5;background:var(--success-bg,#e5ffe5);color:#28a745;color:var(--success-color,#28a745);flex-direction:column}.agent-status.success>span{align-items:center;display:flex;gap:6px}.agent-status .field-hint{font-size:12px;margin-left:24px;opacity:.8}.section-note{color:#666;color:var(--text-secondary,#666);display:block;font-size:12px;font-style:italic;margin-top:12px}.automation-options{background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border:1px solid #e0e0e0;border:1px solid var(--border-color,#e0e0e0);border-radius:6px;margin-top:8px;padding:16px}.automation-options .form-group{margin-bottom:12px}.automation-options .form-group:last-child{margin-bottom:0}.field-hint.warning{color:#f39c12;color:var(--warning-color,#f39c12)}.selected-users-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.selected-user-chip{align-items:center;background:#3498db;background:var(--primary-color,#3498db);border-radius:16px;color:#fff;display:inline-flex;font-size:13px;gap:6px;padding:4px 8px 4px 12px}.selected-user-chip .remove-user{align-items:center;background:none;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;justify-content:center;opacity:.8;padding:2px;transition:opacity .2s}.selected-user-chip .remove-user:hover{background:#fff3;opacity:1}.approval-section{background:#cff4fc;background:var(--info-bg,#cff4fc);border-radius:8px;padding:12px 16px}.approval-info{display:flex;flex-direction:column;gap:8px}.approval-status{border-radius:4px;display:inline-block;font-size:13px;font-weight:600;padding:4px 12px;width:-webkit-fit-content;width:fit-content}.approval-status.status-pending{background:#fff3cd;background:var(--warning-bg,#fff3cd);color:#856404;color:var(--warning-text,#856404)}.approval-status.status-approved{background:#d1e7dd;background:var(--success-bg,#d1e7dd);color:#198754;color:var(--success-color,#198754)}.approval-status.status-rejected{background:#f8d7da;background:var(--danger-bg,#f8d7da);color:#dc3545;color:var(--danger-color,#dc3545)}.approval-detail{display:flex;font-size:13px;gap:8px}.approval-detail label{color:#666;color:var(--text-secondary,#666);font-weight:500}.approval-detail span{color:#1a1a2e;color:var(--text-primary,#1a1a2e)}.postmortem-section{background:#f8f9fa;background:var(--secondary-bg,#f8f9fa);border-radius:8px;padding:16px}.postmortem-section h4{align-items:center;display:flex;gap:8px}.ai-badge{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:4px;color:#fff;font-size:11px;font-weight:500;margin-left:8px;padding:2px 8px}.postmortem-content{display:flex;flex-direction:column;gap:12px}.postmortem-field{border-bottom:1px solid #e0e0e0;border-bottom:1px solid var(--border-color,#e0e0e0);padding-bottom:12px}.postmortem-field:last-child{border-bottom:none;padding-bottom:0}.postmortem-field label{color:#666;color:var(--text-secondary,#666);display:block;font-size:12px;font-weight:600;margin-bottom:4px}.postmortem-field p{color:#1a1a2e;color:var(--text-primary,#1a1a2e);font-size:14px;line-height:1.5;margin:0;white-space:pre-wrap}.postmortem-actions-bar{align-items:center;background:#cff4fc;background:var(--info-bg,#cff4fc);border-radius:8px;display:flex;gap:12px;margin-bottom:20px;padding:12px}.hint-text{color:#666;color:var(--text-secondary,#666);font-size:13px}.form-tabs{background:#f5f5f5;background:var(--card-header-bg,var(--hover-bg,#f5f5f5));border-bottom:1px solid #e0e0e0;border-bottom:1px solid var(--border-color,#e0e0e0);display:flex;gap:4px;padding:0 20px}.form-tab{align-items:center;background:#0000;border:none;border-bottom:2px solid #0000;color:#666;color:var(--text-secondary,#666);cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;margin-bottom:-1px;padding:12px 16px;transition:all .2s ease}.form-tab:hover{background:#00000008;color:#1a1a2e;color:var(--text-primary,#1a1a2e)}.form-tab.active{background:#fff;background:var(--bg-primary,#fff);border-bottom-color:#3498db;border-bottom-color:var(--primary-color,#3498db);color:#3498db;color:var(--primary-color,#3498db)}.form-tab svg{flex-shrink:0}.form-tab-panel{animation:fadeIn .2s ease}.scope-options{display:flex;gap:24px;margin-bottom:12px}.scope-option{align-items:center;background:#fff;background:var(--bg-primary,#fff);border:1px solid #e0e0e0;border:1px solid var(--border-color,#e0e0e0);border-radius:6px;cursor:pointer;display:flex;font-size:14px;gap:8px;padding:8px 16px;transition:all .2s ease}.scope-option:hover{background:#3498db0d;border-color:#3498db;border-color:var(--primary-color,#3498db)}.scope-option input[type=radio]:checked+span{color:#3498db;color:var(--primary-color,#3498db);font-weight:500}.scope-option input[type=radio]{accent-color:#3498db;accent-color:var(--primary-color,#3498db)}@media (max-width:768px){.page-header{flex-direction:column;gap:16px}.filters-row{align-items:stretch;flex-direction:column}.filter-group select{width:100%}.entry-header{flex-wrap:wrap}.entry-meta{flex-basis:100%;margin-top:8px}.form-row{grid-template-columns:1fr}.form-tabs{flex-wrap:wrap;padding:8px 12px}.form-tab{flex:1 1 auto;font-size:13px;justify-content:center;min-width:0;padding:10px 12px}.scope-options{flex-direction:column;gap:8px}.scope-option{justify-content:flex-start}.form-row-header{align-items:stretch;flex-direction:column}.form-row-3col{grid-template-columns:1fr}.form-row-4col,.schedule-row{grid-template-columns:1fr 1fr}.schedule-now-toggle{grid-column:1/-1;padding-bottom:0}}.view-entry-content{padding:20px}.view-entry-badges{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}.view-entry-section{border-bottom:1px solid #e0e0e0;border-bottom:1px solid var(--border-color,#e0e0e0);margin-bottom:24px;padding-bottom:20px}.view-entry-section:last-of-type{border-bottom:none;margin-bottom:0}.view-entry-section h4{align-items:center;color:#1a1a2e;color:var(--text-primary,#1a1a2e);display:flex;font-size:14px;font-weight:600;gap:8px;margin:0 0 12px}.view-entry-section p{color:#666;color:var(--text-secondary,#666);font-size:14px;line-height:1.6;margin:0}.view-entry-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(2,1fr)}.view-entry-item{display:flex;flex-direction:column;gap:4px}.view-entry-item label{color:#666;color:var(--text-secondary,#666);font-size:12px;font-weight:600;text-transform:uppercase}.view-entry-item span{color:#1a1a2e;color:var(--text-primary,#1a1a2e);font-size:14px}.view-entry-meta{border-top:1px solid #e0e0e0;border-top:1px solid var(--border-color,#e0e0e0);color:#999;color:var(--text-muted,#999);display:flex;flex-direction:column;font-size:12px;gap:4px;padding-top:16px}@media (max-width:600px){.view-entry-grid{grid-template-columns:1fr}}.progress-stepper{align-items:center;display:flex;gap:0;margin-top:12px;padding:8px 0}.progress-step{flex-direction:column;gap:4px;min-width:60px}.progress-step,.step-dot{align-items:center;display:flex}.step-dot{background:#f5f5f5;background:var(--bg-secondary,#f5f5f5);border:2px solid #ddd;border:2px solid var(--border-color,#ddd);border-radius:50%;height:20px;justify-content:center;transition:all .2s ease;width:20px}.progress-step.completed .step-dot{background:#28a745;background:var(--success-color,#28a745);border-color:#28a745;border-color:var(--success-color,#28a745);color:#fff}.progress-step.current .step-dot{background:#0078d4;background:var(--primary-color,#0078d4);border-color:#0078d4;border-color:var(--primary-color,#0078d4)}.progress-step.current .dot-current{background:#fff;border-radius:50%;height:8px;width:8px}.progress-step.future .step-dot{background:#f5f5f5;background:var(--bg-secondary,#f5f5f5);border-color:#ddd;border-color:var(--border-color,#ddd)}.progress-step.future .dot-empty{background:#999;background:var(--text-muted,#999);border-radius:50%;height:6px;width:6px}.progress-step.cancelled .step-dot,.progress-step.failed .step-dot{background:#dc3545;background:var(--danger-color,#dc3545);border-color:#dc3545;border-color:var(--danger-color,#dc3545);color:#fff}.step-label{align-items:center;color:#999;color:var(--text-muted,#999);display:flex;font-size:10px;gap:2px;text-align:center;white-space:nowrap}.progress-step.completed .step-label,.progress-step.current .step-label{color:#333;color:var(--text-primary,#333);font-weight:500}.progress-step.cancelled .step-label,.progress-step.failed .step-label{color:#dc3545;color:var(--danger-color,#dc3545);font-weight:500}.step-label .approved-check{color:#28a745;color:var(--success-color,#28a745)}.progress-line{background:#ddd;background:var(--border-color,#ddd);flex:1 1;height:2px;margin:0 4px 18px}.progress-line.completed{background:#28a745;background:var(--success-color,#28a745)}.week-entry-status .approved-indicator{color:#28a745;color:var(--success-color,#28a745);margin-left:4px}@media (max-width:768px){.progress-step{min-width:50px}.step-label{font-size:9px}.step-dot{height:16px;width:16px}.progress-step.current .dot-current{height:6px;width:6px}}.entry-quick-details{border-top:1px solid #eee;border-top:1px solid var(--border-light,#eee);display:flex;flex-wrap:wrap;gap:12px;margin-top:8px;padding-top:8px}.quick-detail-item{align-items:center;color:#666;color:var(--text-secondary,#666);display:flex;font-size:13px;gap:6px}.quick-detail-item svg{color:#999;color:var(--text-muted,#999);flex-shrink:0}.quick-detail-item .badge{font-size:11px;padding:2px 6px}.entry-description-preview{background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border-left:3px solid #ddd;border-left:3px solid var(--border-color,#ddd);border-radius:6px;color:#666;color:var(--text-secondary,#666);font-size:13px;line-height:1.5;margin-top:10px;padding:10px 12px}.rich-text-content{color:#666;color:var(--text-secondary,#666);font-size:14px;line-height:1.6}.rich-text-content h1,.rich-text-content h2,.rich-text-content h3{color:#1a1a2e;color:var(--text-primary,#1a1a2e);margin:12px 0 8px}.rich-text-content h1{font-size:18px}.rich-text-content h2{font-size:16px}.rich-text-content h3{font-size:14px}.rich-text-content p{margin:8px 0}.rich-text-content ol,.rich-text-content ul{margin:8px 0;padding-left:24px}.rich-text-content li{margin:4px 0}.rich-text-content a{color:#0078d4;color:var(--primary-color,#0078d4);text-decoration:underline}.rich-text-content a:hover{text-decoration:none}.quill-wrapper{margin-bottom:16px}.quill-wrapper .ql-container{border-bottom-left-radius:6px;border-bottom-right-radius:6px;font-size:14px;min-height:120px}.quill-wrapper .ql-toolbar{background:#f8f9fa;background:var(--bg-secondary,#f8f9fa);border-top-left-radius:6px;border-top-right-radius:6px}.quill-wrapper .ql-editor{min-height:100px}.quill-wrapper .ql-editor.ql-blank:before{color:#999;color:var(--text-muted,#999);font-style:normal}@media (max-width:768px){.entry-quick-details{gap:8px}.quick-detail-item{font-size:12px}.entry-description-preview{font-size:12px;padding:8px 10px}}.user-role-management{background:#f8f9fa;min-height:calc(100vh - 80px);padding:20px}.management-header{align-items:center;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;display:flex;justify-content:space-between;margin-bottom:30px;padding:20px}.management-header h2{color:#2c3e50;margin:0}.header-controls{align-items:center;display:flex;gap:15px}.tenant-filter{border:1px solid #ddd;border-radius:4px;font-size:14px;min-width:200px;padding:8px 12px}.users-table-container{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;overflow:hidden}.users-table{border-collapse:collapse;width:100%}.users-table thead{background:#f0f2f5}.users-table th{border-bottom:2px solid #dee2e6;color:#495057;font-weight:600;text-align:left}.users-table td,.users-table th{font-size:14px;padding:12px 16px}.users-table td{border-bottom:1px solid #e9ecef}.users-table tbody tr:hover{background:#f8f9fa}.role-badge{font-size:12px;padding:4px 8px;text-transform:capitalize}.role-badge-small{border-radius:4px;display:inline-block;font-size:12px;font-weight:600;height:24px;line-height:24px;text-align:center;width:24px}.role-badge-small.role-viewer,.role-badge.role-viewer{background:#e3f2fd;color:#1976d2}.role-badge-small.role-editor,.role-badge.role-editor{background:#fff3e0;color:#f57c00}.role-badge-small.role-admin,.role-badge.role-admin{background:#fce4ec;color:#c2185b}.role-badge-small.role-globaladmin,.role-badge.role-globaladmin{background:#673ab7;color:#fff}.role-badge-small.role-superadmin,.role-badge.role-superadmin{background:#f3e5f5;color:#7b1fa2}.role-badge.role-user{background:#e8f5e9;color:#388e3c}.role-badge-small.role-\\-,.role-badge.role-\\-{background:#f5f5f5;color:#999}.role-display{align-items:center;display:inline-flex;gap:8px}.role-display:hover .edit-hint{opacity:1}.edit-hint{font-size:12px;opacity:0;transition:opacity .2s}.role-edit{align-items:center;display:inline-flex;gap:4px}.role-edit select{border:1px solid #ddd;border-radius:4px;font-size:12px;padding:4px 8px}.btn-cancel,.btn-save{font-size:14px;padding:4px 8px}.btn-cancel,.btn-cancel-small,.btn-save,.btn-save-small{border:none;border-radius:4px;cursor:pointer;transition:background .2s}.btn-cancel-small,.btn-save-small{font-size:12px;padding:2px 6px}.btn-save,.btn-save-small{background:#4caf50;color:#fff}.btn-save-small:hover:not(:disabled),.btn-save:hover:not(:disabled){background:#45a049}.btn-cancel,.btn-cancel-small{background:#f44336;color:#fff}.btn-cancel-small:hover:not(:disabled),.btn-cancel:hover:not(:disabled){background:#da190b}.btn-cancel-small:disabled,.btn-cancel:disabled,.btn-save-small:disabled,.btn-save:disabled{cursor:not-allowed;opacity:.5}.role-legend{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-top:30px;padding:20px}.role-legend h3{color:#2c3e50;font-size:16px;margin:0 0 15px}.legend-items{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.legend-item{align-items:center;display:flex;gap:10px}.legend-item span:last-child{color:#666;font-size:14px}.loading{align-items:center;display:flex;font-size:16px;justify-content:center;min-height:400px}@media (max-width:768px){.user-role-management{padding:10px}.management-header{align-items:stretch;flex-direction:column;gap:15px;padding:15px}.header-controls{flex-direction:column;gap:10px;width:100%}.tenant-filter{min-width:0;min-width:auto;width:100%}.btn-primary{justify-content:center;width:100%}.users-table-container{-webkit-overflow-scrolling:touch;overflow-x:auto}.users-table{min-width:600px}.users-table td,.users-table th{font-size:13px;padding:10px}.users-table td:nth-child(3),.users-table th:nth-child(3){display:none}.role-legend{margin-top:20px;padding:15px}.legend-items{gap:10px;grid-template-columns:1fr}.legend-item{font-size:13px}.role-badge{font-size:11px;padding:3px 6px}.role-badge-small{font-size:10px;height:20px;line-height:20px;width:20px}.btn-cancel-small,.btn-save-small{min-height:32px;min-width:36px;padding:6px 10px}}@media (max-width:480px){.user-role-management{padding:5px}.management-header{margin-bottom:15px;padding:10px}.management-header h2{font-size:18px}.users-table{min-width:500px}.users-table td,.users-table th{font-size:12px;padding:8px}.users-table td:nth-child(2),.users-table th:nth-child(2){display:none}.role-legend h3{font-size:14px}}.release-notes-tab{padding:0}.release-notes-header{align-items:center;background:#f9fafb;background:var(--bg-secondary,#f9fafb);border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--border-color,#e5e7eb);display:flex;justify-content:space-between;padding:16px 20px}.release-notes-header h3{align-items:center;color:#1f2937;color:var(--text-primary,#1f2937);display:flex;font-size:18px;font-weight:600;gap:8px;margin:0}.release-notes-header h3 svg{color:#3b82f6;color:var(--primary-color,#3b82f6)}.release-count{background:#f3f4f6;background:var(--bg-tertiary,#f3f4f6);border-radius:12px;color:#6b7280;color:var(--text-secondary,#6b7280);font-size:13px;padding:4px 10px}.release-notes-error,.release-notes-loading{align-items:center;color:#6b7280;color:var(--text-secondary,#6b7280);display:flex;flex-direction:column;gap:12px;justify-content:center;padding:48px 20px}.release-notes-loading .spin{animation:spin 1s linear infinite}.release-notes-error{color:#ef4444;color:var(--danger-color,#ef4444)}.release-notes-error button{margin-top:8px}.release-notes-list{max-height:calc(100vh - 300px);overflow-y:auto}.release-item{border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--border-color,#e5e7eb)}.release-item:last-child{border-bottom:none}.release-header{align-items:flex-start;background:none;border:none;cursor:pointer;display:flex;gap:12px;padding:16px 20px;text-align:left;transition:background-color .15s ease;width:100%}.release-header:hover{background:#f9fafb;background:var(--bg-secondary,#f9fafb)}.expand-icon{color:#9ca3af;color:var(--text-muted,#9ca3af);flex-shrink:0;margin-top:2px;transition:transform .2s ease}.expand-icon.rotated{transform:rotate(90deg)}.release-info{display:flex;flex:1 1;flex-direction:column;gap:4px}.release-date{align-items:center;color:#1f2937;color:var(--text-primary,#1f2937);display:flex;font-size:15px;font-weight:600;gap:6px}.release-date svg{color:#3b82f6;color:var(--primary-color,#3b82f6)}.release-sections{color:#6b7280;color:var(--text-secondary,#6b7280);font-size:13px;line-height:1.4}.release-content{animation:slideDown .2s ease;padding:0 20px 20px 50px}.release-section-title{align-items:center;border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--border-light,#e5e7eb);color:#2563eb;color:var(--primary-color,#2563eb);display:flex;font-size:15px;font-weight:600;gap:8px;margin:20px 0 12px;padding-bottom:8px}.release-section-title:first-child{margin-top:0}.release-subsection-title{color:#1f2937;color:var(--text-primary,#1f2937);font-size:14px;font-weight:600;margin:16px 0 8px}.release-list{list-style-type:disc;margin:0;padding-left:20px}.release-list-item{font-size:13px;line-height:1.6;margin-bottom:6px}.release-list-item,.release-list-item strong{color:#1f2937;color:var(--text-primary,#1f2937)}.release-list-item strong{font-weight:600}.release-paragraph{color:#1f2937;color:var(--text-primary,#1f2937);font-size:13px;line-height:1.6;margin:8px 0}.release-content a{color:#3b82f6;color:var(--primary-color,#3b82f6);text-decoration:none}.release-content a:hover{text-decoration:underline}.no-releases{align-items:center;color:#9ca3af;color:var(--text-muted,#9ca3af);display:flex;flex-direction:column;gap:12px;justify-content:center;padding:48px 20px}.no-releases svg{opacity:.5}.release-item.expanded{background:#f9fafb;background:var(--bg-secondary,#f9fafb)}.release-item.expanded .release-header{background:#0000}.release-item.expanded .release-date{color:#3b82f6;color:var(--primary-color,#3b82f6)}.notification-preferences{margin:0 auto;max-width:800px;padding:20px}.notification-preferences.embedded{margin:0;max-width:none;padding:0}.preferences-header{margin-bottom:30px}.preferences-header h2{color:var(--text-primary);font-size:24px;margin:0 0 8px}.preferences-header p{color:var(--text-secondary);font-size:14px;margin:0}.preferences-loading{color:var(--text-secondary);padding:40px;text-align:center}.preferences-error{background-color:var(--danger-bg);color:var(--danger-color)}.preferences-error,.preferences-success{border-radius:4px;font-size:14px;margin-bottom:20px;padding:12px 16px}.preferences-success{background-color:var(--success-bg);color:var(--success-color)}.preferences-info{align-items:center;background-color:var(--info-bg);border-radius:4px;color:var(--info-color);display:flex;font-size:14px;gap:10px;margin-bottom:20px;padding:12px 16px}.preferences-info strong{font-weight:600}.preferences-info svg{flex-shrink:0}.preferences-disabled-banner{align-items:flex-start;background-color:#fff3cd;border:1px solid #ffc107;border-radius:8px;color:#856404;display:flex;gap:12px;margin-bottom:20px;padding:16px 20px}.preferences-disabled-banner svg{color:#d97706;flex-shrink:0;margin-top:2px}.disabled-banner-content{flex:1 1}.disabled-banner-content strong{display:block;font-size:15px;margin-bottom:6px}.disabled-banner-content p{font-size:14px;line-height:1.5;margin:0}.preferences-enabled-indicator{align-items:center;background-color:#d4edda;border:1px solid #c3e6cb;border-radius:6px;color:#155724;display:flex;font-size:14px;gap:8px;margin-bottom:20px;padding:10px 16px}.preferences-enabled-indicator svg{flex-shrink:0}.preferences-enabled-indicator .enabled-channels{color:#0b5f1c;font-weight:500}.preferences-warning{align-items:center;background-color:var(--warning-bg);border-radius:4px;color:var(--warning-color);display:flex;font-size:14px;gap:10px;margin-bottom:20px;padding:12px 16px}.preferences-warning svg{flex-shrink:0}.preferences-warning span{flex:1 1}.preferences-warning .btn-link{align-items:center;background:none;border:none;border-radius:4px;color:var(--warning-color);cursor:pointer;display:flex;font-size:13px;gap:4px;padding:4px 8px;text-decoration:underline}.preferences-warning .btn-link:hover{background-color:#0000001a}.prefs-tenant-selector-section{align-items:center;background-color:var(--table-header-bg);border:1px solid var(--border-color);border-radius:8px;display:flex;gap:12px;margin-bottom:20px;padding:16px}.prefs-tenant-selector-label{align-items:center;color:var(--text-primary);display:flex;font-size:14px;font-weight:500;gap:8px;white-space:nowrap}.prefs-tenant-select{background-color:var(--card-bg);border:1px solid var(--border-color);border-radius:4px;color:var(--text-primary);cursor:pointer;flex:1 1;font-size:14px;max-width:400px;padding:10px 12px}.prefs-tenant-select option{background:#fff;color:#111827}.prefs-tenant-select:focus{border-color:var(--primary-color);box-shadow:0 0 0 2px #3b82f61a;outline:none}.preferences-section{background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;margin-bottom:20px;padding:20px}.preference-row.disabled-feature{opacity:.6}.preference-row.disabled-feature .toggle-switch{cursor:not-allowed}.preference-row.disabled-feature .coming-soon-badge{margin-left:8px}.preferences-section h3{border-bottom:1px solid var(--border-color);color:var(--text-primary);font-size:18px;margin:0 0 16px;padding-bottom:12px}.collapsible-section{overflow:hidden;padding:0}.collapsible-section.collapsed{padding:0}.collapsible-header{align-items:center;cursor:pointer;display:flex;justify-content:space-between;padding:14px 16px;transition:background-color .15s ease;-webkit-user-select:none;user-select:none}.collapsible-header:hover{background-color:var(--hover-bg)}.collapsible-header-left{align-items:center;display:flex;gap:10px}.collapsible-header-left h3{border:none;font-size:15px;font-weight:600;margin:0;padding:0}.collapsible-header-left svg{color:var(--text-secondary);flex-shrink:0}.collapsible-header-right,.config-status{align-items:center;display:flex}.config-status{border-radius:12px;font-size:12px;font-weight:500;gap:6px;padding:4px 10px}.config-status.configured{background-color:#dcfce7;background-color:var(--success-bg,#dcfce7)}.config-status.configured,.config-status.configured svg{color:#166534;color:var(--success-color,#166534)}.config-status.needs-config{background-color:#fef3c7;background-color:var(--warning-bg,#fef3c7)}.config-status.needs-config,.config-status.needs-config svg{color:#92400e;color:var(--warning-color,#92400e)}.collapsible-content{border-top:1px solid var(--border-color);padding:0 16px 16px}.collapsible-section.expanded .collapsible-content{animation:slideDown .2s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.section-description{color:var(--text-secondary);font-size:13px;margin:-8px 0 16px}.collapsed-status-badges{display:flex;flex-wrap:wrap;gap:8px}.global-settings-notice{align-items:center;background-color:var(--info-bg);border-radius:6px;color:var(--text-secondary);display:flex;font-size:13px;gap:8px;margin-bottom:12px;padding:10px 14px}.global-settings-notice svg{color:var(--info-color);flex-shrink:0}.global-settings-notice .inline-link{background:none;border:none;color:var(--primary-color);cursor:pointer;font-size:inherit;padding:0 4px;text-decoration:underline}.time-inputs input:disabled{cursor:not-allowed;opacity:.5}.preference-row{align-items:center;border-bottom:1px solid var(--hover-bg);display:flex;justify-content:space-between;padding:12px 0}.preference-row:last-child{border-bottom:none}.preference-label{display:flex;flex-direction:column;gap:4px}.preference-label strong{color:var(--text-primary);font-size:14px}.preference-label span{color:var(--text-secondary);font-size:12px}.quiet-hours-config{margin-left:20px;padding:12px 0}.time-inputs{display:flex;gap:20px}.time-inputs label{color:var(--text-secondary);display:flex;flex-direction:column;font-size:12px;gap:4px}.time-inputs input[type=time]{border:1px solid var(--border-color);border-radius:4px;font-size:14px;padding:8px}.digest-config{margin-left:20px;padding:12px 0}.digest-config select{background-color:var(--card-bg);border:1px solid var(--border-color);border-radius:4px;font-size:14px;padding:8px 12px}.contact-inputs{display:flex;flex-direction:column;gap:16px}.contact-inputs label{color:var(--text-secondary);display:flex;flex-direction:column;font-size:13px;gap:6px}.contact-inputs label svg{display:inline;margin-right:6px;vertical-align:middle}.contact-inputs input{border:1px solid var(--border-color);border-radius:4px;font-size:14px;max-width:300px;padding:10px 12px}.contact-inputs input:focus{border-color:var(--primary-color);box-shadow:0 0 0 2px #3b82f61a;outline:none}.phone-formatted{color:var(--success-color);display:block;font-size:12px;font-weight:500;margin-top:4px}.sms-consent-section{border-top:1px solid var(--border-color);margin-top:20px;padding-top:16px}.sms-consent-checkbox{align-items:flex-start;background-color:var(--table-header-bg);border:1px solid var(--border-color);border-radius:8px;cursor:pointer;display:flex;gap:12px;padding:16px;transition:border-color .2s,background-color .2s}.sms-consent-checkbox:hover{background-color:var(--hover-bg);border-color:var(--primary-color)}.sms-consent-checkbox input[type=checkbox]{accent-color:var(--primary-color);cursor:pointer;flex-shrink:0;height:20px;margin-top:2px;width:20px}.sms-consent-content{flex:1 1}.sms-consent-content strong{color:var(--text-primary);display:block;font-size:14px;margin-bottom:6px}.sms-consent-text{color:var(--text-secondary);font-size:12px;line-height:1.5;margin:0}.sms-consent-warning{align-items:center;background-color:#fff3cd;border:1px solid #ffc107;border-radius:6px;color:#856404;display:flex;font-size:13px;gap:8px;margin-top:12px;padding:10px 14px}.sms-consent-warning svg{color:#d97706;flex-shrink:0}.teams-delivery-section{border-top:1px solid var(--border-color);margin-top:24px;padding-top:20px}.teams-delivery-section h4{align-items:center;color:var(--text-primary);display:flex;font-size:15px;gap:8px;margin:0 0 8px}.teams-delivery-section>p{color:var(--text-secondary);font-size:13px;line-height:1.5;margin:0 0 16px}.teams-mode-selector{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.teams-mode-option{align-items:flex-start;background-color:var(--table-header-bg);border:1px solid var(--border-color);border-radius:8px;cursor:pointer;display:flex;gap:12px;padding:14px 16px;transition:border-color .2s,background-color .2s}.teams-mode-option:hover:not(.disabled){background-color:var(--hover-bg);border-color:var(--primary-color)}.teams-mode-option.selected{background-color:#3b82f60d;border-color:var(--primary-color)}.teams-mode-option.disabled{cursor:not-allowed;opacity:.6}.teams-mode-option input[type=radio]{accent-color:var(--primary-color);cursor:pointer;height:18px;margin-top:2px;width:18px}.teams-mode-option.disabled input[type=radio]{cursor:not-allowed}.teams-mode-content{flex:1 1}.teams-mode-content strong{color:var(--text-primary);display:block;font-size:14px;margin-bottom:4px}.teams-mode-content>span{display:block}.teams-mode-content p,.teams-mode-content>span{color:var(--text-secondary);font-size:12px;line-height:1.4}.teams-mode-content p{margin:0}.coming-soon-badge{background-color:var(--secondary-bg);border-radius:10px;color:var(--text-secondary);display:inline-block;font-size:10px;font-weight:600;margin-top:4px;padding:2px 8px;text-transform:uppercase}.teams-webhook-config{background-color:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;margin-top:12px;padding:16px}.teams-webhook-config label{color:var(--text-secondary);display:flex;flex-direction:column;font-size:13px;gap:6px;margin-bottom:12px}.teams-webhook-config label:last-child{margin-bottom:0}.teams-webhook-config input{border:1px solid var(--border-color);border-radius:4px;box-sizing:border-box;font-size:14px;padding:10px 12px;width:100%}.teams-webhook-config input:focus{border-color:var(--primary-color);box-shadow:0 0 0 2px #3b82f61a;outline:none}.teams-webhook-help{align-items:center;color:var(--text-secondary);display:flex;font-size:12px;gap:6px;margin-top:12px}.teams-webhook-help a{color:var(--primary-color);text-decoration:none}.teams-webhook-help a:hover{text-decoration:underline}.teams-test-actions{align-items:center;display:flex;gap:12px;margin-top:16px}.teams-test-result{align-items:center;border-radius:6px;display:flex;font-size:13px;gap:8px;margin-top:12px;padding:10px 14px}.teams-test-result.success{background-color:var(--success-bg);color:var(--success-color)}.teams-test-result.error{background-color:var(--danger-bg);color:var(--danger-color)}.teams-test-result svg{flex-shrink:0}.contact-info-global-notice{align-items:flex-start;background-color:var(--info-bg);border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);display:flex;gap:12px;padding:16px}.contact-info-global-notice svg{color:var(--info-color);flex-shrink:0;margin-top:2px}.contact-info-global-notice strong{color:var(--text-primary);display:block;margin-bottom:4px}.contact-info-global-notice p{color:var(--text-secondary);font-size:13px;line-height:1.5;margin:0}.contact-info-global-notice .current-phone{border-top:1px solid var(--border-color);color:var(--text-primary);margin-top:10px;padding-top:10px}.module-group{border:1px solid var(--border-color);border-radius:6px;margin-bottom:12px;overflow:hidden}.module-header{align-items:center;background-color:var(--table-header-bg);border:none;cursor:pointer;display:flex;font-size:14px;padding:12px 16px;text-align:left;transition:background-color .2s;width:100%}.module-header:hover{background-color:var(--hover-bg)}.module-name{color:var(--text-primary);flex:1 1}.module-count{font-size:12px;margin-right:12px}.expand-icon,.module-count{color:var(--text-secondary)}.expand-icon{font-size:10px;transition:transform .2s}.expand-icon.expanded{transform:rotate(180deg)}.module-events{border-top:1px solid var(--border-color)}.event-row{align-items:center;border-bottom:1px solid var(--hover-bg);display:flex;justify-content:space-between;padding:12px 16px}.event-row:last-child{border-bottom:none}.event-info{flex:1 1}.event-name{color:var(--text-primary);display:block;font-size:14px;font-weight:500;margin-bottom:2px}.event-description{color:var(--text-secondary);font-size:12px;line-height:1.4;margin:0}.channel-toggles{display:flex;gap:6px;margin-left:16px}.channel-btn{align-items:center;background-color:var(--card-bg);border:1px solid var(--border-color);border-radius:4px;color:var(--text-muted);cursor:pointer;display:flex;height:32px;justify-content:center;transition:all .2s;width:32px}.channel-btn:hover:not(:disabled){border-color:var(--primary-color);color:var(--primary-color)}.channel-btn.active{background-color:var(--primary-color);border-color:var(--primary-color);color:#fff}.channel-btn:disabled{cursor:not-allowed;opacity:.5}.preferences-actions{align-items:center;display:flex;gap:12px;justify-content:flex-end;margin-top:20px}.auto-save-indicator{color:var(--text-secondary);flex:1 1;font-size:13px}.auto-save-indicator .saving-status{align-items:center;color:var(--primary-color);display:inline-flex;gap:6px}.auto-save-indicator .saved-status{color:var(--success-color)}.auto-save-indicator .spin{animation:spin 1s linear infinite}@media (max-width:600px){.notification-preferences{padding:15px}.prefs-tenant-selector-section{align-items:stretch;flex-direction:column}.prefs-tenant-select{max-width:none}.preferences-warning{align-items:flex-start;flex-direction:column}.preferences-warning .btn-link{margin-top:8px}.event-row{align-items:flex-start;flex-direction:column}.channel-toggles{margin-left:0;margin-top:12px}.time-inputs{gap:12px}.preferences-actions,.time-inputs{flex-direction:column}.preferences-actions .btn{justify-content:center;width:100%}}.profile-container{background:#fff;border-radius:12px;box-shadow:0 10px 40px #0003;display:flex;flex-direction:column;height:80vh;left:50%;max-width:900px;position:fixed;top:50%;transform:translate(-50%,-50%);width:90%;z-index:1000}.profile-header{align-items:center;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;padding:20px 30px}.profile-header h2{color:#333;margin:0}.close-button{align-items:center;background:none;border:none;border-radius:4px;color:#666;cursor:pointer;display:flex;font-size:28px;height:32px;justify-content:center;padding:0;transition:background-color .2s;width:32px}.close-button:hover{background-color:#f0f0f0}.profile-body{display:flex;flex:1 1;overflow:hidden}.profile-tabs{background:#f8f9fa;border-right:1px solid #e0e0e0;padding:20px 0;width:250px}.profile-tabs .tab{align-items:center;background:none;border:none;color:#666;cursor:pointer;display:flex;font-size:14px;gap:10px;padding:12px 20px;text-align:left;transition:all .2s;width:100%}.profile-tabs .tab:hover:not(:disabled){background:#e8eaed;color:#333}.profile-tabs .tab.active{background:#fff;border-left:3px solid #0078d4;color:#0078d4;font-weight:500}.profile-tabs .tab:disabled{cursor:not-allowed;opacity:.5}.profile-content{flex:1 1;overflow-y:auto;padding:30px}.tab-content h3{color:#333;font-size:20px;margin:0 0 25px}.info-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 1fr}.info-item{display:flex;flex-direction:column;gap:5px}.info-item label{color:#666;font-size:12px;letter-spacing:.5px;text-transform:uppercase}.info-item span{color:#333;font-size:14px}.info-item .monospace{background:#f0f0f0;border-radius:4px;font-family:Courier New,monospace;font-size:13px;padding:4px 8px}.settings-group{gap:20px}.setting-item,.settings-group{display:flex;flex-direction:column}.setting-item{gap:8px}@media (max-width:768px){.profile-container{border-radius:0;display:flex;flex-direction:column;height:100vh;left:0;max-width:100%;position:fixed;top:0;transform:none;width:100%}.profile-header{background:#fff;flex-shrink:0;padding:15px 20px;position:-webkit-sticky;position:sticky;top:0;z-index:10}.profile-body{display:flex;flex:1 1;flex-direction:column;overflow:hidden}.profile-tabs{border-bottom:1px solid #e0e0e0;border-right:none;display:none;padding:0;width:100%}.profile-content{flex:1 1;overflow-y:auto;padding:20px}.tab-content{border-bottom:1px solid #e0e0e0;display:block!important;margin-bottom:30px;padding-bottom:20px}.tab-content:last-child{border-bottom:none;padding-bottom:80px}.info-grid{grid-template-columns:1fr}.profile-footer{background:#fff;bottom:0;position:-webkit-sticky!important;position:sticky!important;z-index:10}}.setting-item label{color:#333;font-size:14px;font-weight:500}.setting-item input[type=number],.setting-item input[type=text],.setting-item select{border:1px solid #ddd;border-radius:4px;font-size:14px;max-width:300px;padding:8px 12px}.setting-item input:focus,.setting-item select:focus{border-color:#0078d4;box-shadow:0 0 0 2px #0078d41a;outline:none}.setting-item.checkbox{align-items:center;flex-direction:row}.setting-item.checkbox label{align-items:center;cursor:pointer;display:flex;font-weight:400;gap:8px}.setting-item.checkbox input[type=checkbox]{cursor:pointer;height:18px;width:18px}.profile-footer{align-items:center;border-top:1px solid #e0e0e0;display:flex;justify-content:space-between;padding:20px 30px}.unsaved-indicator{align-items:center;color:#ff9800;display:flex;font-size:13px;font-weight:500;gap:5px}.unsaved-indicator:before{content:"";font-size:20px}.footer-actions{display:flex;gap:12px}.coming-soon{align-items:center;color:#999;display:flex;flex-direction:column;justify-content:center;padding:60px 20px}.coming-soon p{font-size:16px;margin-top:20px}.profile-loading{align-items:center;color:#666;display:flex;font-size:16px;height:100%;justify-content:center}.setting-description{color:#666;font-size:12px;margin-left:25px;margin-top:5px}.info-section{background:#f8f9fa;border-radius:6px;margin-top:20px;padding:15px}.info-section h4{color:#333;font-size:14px;margin:0 0 10px}.info-text{align-items:center;color:#666;display:flex;font-size:13px;margin:5px 0}@media (max-width:768px){.profile-container{border-radius:8px;height:90vh;margin:0;max-width:95%;width:95%}.profile-header{padding:15px 20px}.profile-header h2{font-size:20px}.profile-body{flex-direction:column}.profile-tabs{border-bottom:1px solid #e0e0e0;border-right:none;display:flex;overflow-x:auto;padding:10px 0;width:100%}.profile-tabs .tab{border-bottom:3px solid #0000;border-left:none;padding:10px 15px;white-space:nowrap}.profile-tabs .tab.active{border-bottom:3px solid #0078d4;border-left:none}.profile-content{padding:20px}.info-grid{gap:15px;grid-template-columns:1fr}.setting-item input[type=number],.setting-item input[type=text],.setting-item select{max-width:100%}.profile-footer{align-items:stretch;flex-direction:column;gap:15px;padding:15px 20px}.footer-actions{flex-direction:column;width:100%}.footer-actions button{justify-content:center;width:100%}}@media (max-width:480px){.profile-container{border-radius:0;height:100vh;max-width:100%;width:100%}.profile-header{padding:10px 15px}.profile-content{padding:15px}.profile-tabs{padding:5px 0}.profile-tabs .tab{font-size:13px;padding:8px 12px}.tab-content h3{font-size:18px;margin-bottom:15px}}.user-notification-bell{margin-right:15px;position:relative}.notification-bell-button{align-items:center;background:#0000;border:none;color:#fff;cursor:pointer;display:flex;justify-content:center;padding:8px;position:relative;transition:opacity .2s}.notification-bell-button:hover{opacity:.8}.notification-badge{background-color:#d32f2f;border-radius:10px;color:#fff;font-size:10px;font-weight:700;line-height:1.2;min-width:18px;padding:2px 6px;position:absolute;right:2px;text-align:center;top:2px}.notification-dropdown{background-color:#fff;border:1px solid #ddd;border-radius:8px;box-shadow:0 4px 12px #00000026;display:flex;flex-direction:column;max-height:500px;max-width:calc(100vw - 20px);position:absolute;right:0;top:calc(100% + 8px);width:380px;z-index:1100}.notification-header{align-items:center;background-color:#fafafa;border-bottom:1px solid #eee;border-radius:8px 8px 0 0;display:flex;justify-content:space-between;padding:12px 15px}.notification-title{color:#333;font-size:15px;font-weight:600}.notification-actions{display:flex;gap:8px}.close-dropdown-btn,.mark-all-read-btn{align-items:center;background:#0000;border:none;border-radius:4px;color:#666;cursor:pointer;display:flex;justify-content:center;padding:4px;transition:background-color .2s,color .2s}.mark-all-read-btn:hover{background-color:#e3f2fd;color:#1976d2}.close-dropdown-btn:hover{background-color:#f5f5f5;color:#333}.notification-filters{border-bottom:1px solid #eee;display:flex;gap:8px;padding:8px 12px}.filter-btn{background-color:#f5f5f5;border:none;border-radius:4px;color:#666;cursor:pointer;flex:1 1;font-size:13px;padding:6px 12px;transition:all .2s}.filter-btn:hover{background-color:#e0e0e0}.filter-btn.active{background-color:#0078d4;color:#fff;font-weight:500}.notification-list{flex:1 1;max-height:350px;overflow-y:auto}.notification-empty{color:#888;font-size:14px;padding:40px 20px;text-align:center}.notification-item{border-bottom:1px solid #f0f0f0;cursor:pointer;display:flex;padding:12px 15px;position:relative;transition:background-color .2s}.notification-item:hover{background-color:#f9f9f9}.notification-item.unread{background-color:#f0f7ff}.notification-item.unread:hover{background-color:#e3f0ff}.notification-priority-indicator{border-radius:2px;flex-shrink:0;margin-right:12px;width:4px}.notification-system-icon{align-items:flex-start;display:flex;flex-shrink:0;justify-content:center;margin-right:12px;padding-top:2px}.notification-item.system{background-color:#fffde7}.notification-item.system:hover{background-color:#fff9c4}.notification-important-badge{background-color:#ffebee;border-radius:3px;color:#d32f2f;display:inline-block;font-size:10px;font-weight:700;margin-top:6px;padding:2px 6px}.filter-count{background-color:#ffffff4d;border-radius:10px;color:inherit;font-size:11px;font-weight:700;margin-left:6px;padding:2px 6px}.filter-btn:not(.active) .filter-count{background-color:#d32f2f;color:#fff}.filter-btn:not(.active) .filter-count.inactive{background-color:#666}.notification-content{flex:1 1;min-width:0}.notification-item-header{align-items:flex-start;display:flex;gap:8px;justify-content:space-between;margin-bottom:4px}.notification-item-title{color:#333;flex:1 1;font-size:14px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.notification-time{color:#888;flex-shrink:0;font-size:11px;white-space:nowrap}.notification-message{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#555;display:-webkit-box;font-size:13px;line-height:1.4;margin:0;overflow:hidden}.notification-message.expanded{-webkit-line-clamp:unset;display:block;overflow:visible;white-space:pre-wrap;word-break:break-word}.notification-expand-btn{background:none;border:none;color:#0078d4;cursor:pointer;display:inline-block;font-size:12px;font-weight:500;margin-top:4px;padding:2px 0}.notification-expand-btn:hover{text-decoration:underline}.notification-action-label{color:#0078d4;display:inline-block;font-size:12px;font-weight:500;margin-top:6px}.notification-item-actions{display:flex;flex-direction:column;gap:4px;margin-left:8px;opacity:0;transition:opacity .2s}.notification-item:hover .notification-item-actions{opacity:1}.item-action-btn{align-items:center;background:#0000;border:none;border-radius:4px;color:#888;cursor:pointer;display:flex;justify-content:center;padding:4px;transition:background-color .2s,color .2s}.item-action-btn:hover{background-color:#e3f2fd;color:#1976d2}.item-action-btn.delete:hover{background-color:#ffebee;color:#d32f2f}.load-more-btn{background:#0000;border:none;border-top:1px solid #eee;color:#0078d4;cursor:pointer;display:block;font-size:13px;font-weight:500;padding:12px;transition:background-color .2s;width:100%}.load-more-btn:hover{background-color:#f5f5f5}.load-more-btn:disabled{color:#999;cursor:not-allowed}.notification-footer{background-color:#fafafa;border-radius:0 0 8px 8px;border-top:1px solid #eee;padding:10px 15px;text-align:center}.view-all-link{color:#0078d4;font-size:13px;font-weight:500;text-decoration:none}.view-all-link:hover{text-decoration:underline}@media (max-width:768px){.notification-dropdown{left:10px;max-height:calc(100vh - 80px);position:fixed;right:10px;top:60px;width:auto}.notification-item-actions{opacity:1}}.ai-search-bar{align-items:center;display:flex;flex-shrink:0;margin:0 20px}.ai-search-button{align-items:center;background:#ffffff1a;border:1px solid #fff3;border-radius:20px;color:#fff;cursor:pointer;display:flex;font-size:14px;gap:8px;min-width:200px;padding:8px 16px;transition:all .2s ease}.ai-search-button:hover{background:#ffffff26;border-color:#ffffff4d}.ai-search-button:active{background:#fff3}.ai-icon{color:gold;flex-shrink:0}.ai-search-placeholder{color:#ffffffb3;flex:1 1;font-weight:400;text-align:left}@media (max-width:768px){.ai-search-bar{margin:0 10px}.ai-search-button{min-width:40px;padding:8px 12px}.ai-search-placeholder{display:none}}@media (max-width:480px){.ai-search-bar{margin:0 5px}.ai-search-button{min-width:36px;padding:6px 10px}}.ai-panel-overlay{background:#0000004d;bottom:0;display:none;left:0;position:fixed;right:0;top:0;z-index:999}.ai-panel-overlay-floating{background:#0000;bottom:0;left:0;position:fixed;right:0;top:0;z-index:998}.ai-chat-panel{background:#fff;display:flex;flex-direction:column;z-index:1000}.ai-chat-panel.floating{animation:fadeInScale .3s ease;border-radius:12px;box-shadow:0 8px 32px #00000026;overflow:hidden}@keyframes fadeInScale{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.ai-chat-panel.docked-right{animation:slideInRight .3s ease;box-shadow:-2px 0 10px #0000001a}.ai-chat-panel.docked-left{animation:slideInLeft .3s ease;box-shadow:2px 0 10px #0000001a}.ai-chat-panel.dragging,.ai-chat-panel.resizing{-webkit-user-select:none;user-select:none}.ai-chat-panel.dragging{cursor:move}.resize-handle{background:#0000;bottom:0;cursor:ew-resize;position:absolute;top:0;width:6px;z-index:10}.resize-handle.resize-left{left:0}.resize-handle.resize-right{right:0}.resize-handle:hover{background:#007bff1a}.resize-handle.resize-left:after{left:2px}.resize-handle.resize-left:after,.resize-handle.resize-right:after{background:#007bff4d;border-radius:2px;content:"";height:40px;position:absolute;top:50%;transform:translateY(-50%);width:2px}.resize-handle.resize-right:after{right:2px}.resize-handle-corner{bottom:0;cursor:nwse-resize;height:16px;position:absolute;right:0;width:16px;z-index:11}.resize-handle-corner:after{border-color:#0000 #0000 #007bff66;border-style:solid;border-width:0 0 12px 12px;bottom:2px;content:"";height:0;position:absolute;right:2px;width:0}.resize-handle-corner:hover:after{border-color:#0000 #0000 #007bff99}.ai-panel-header{align-items:center;background:#f8f9fa;border-bottom:1px solid #e0e0e0;display:flex;flex-shrink:0;justify-content:space-between;padding:16px 20px}.ai-panel-header.draggable{cursor:move;-webkit-user-select:none;user-select:none}.ai-panel-header.draggable:active{cursor:grabbing}.ai-panel-title{align-items:center;color:#333;display:flex;font-size:16px;font-weight:600;gap:8px}.drag-hint{color:#999;font-size:11px;font-weight:400;margin-left:4px}.ai-panel-controls{align-items:center;display:flex;gap:8px}.icon-button{align-items:center;background:#0000;border:none;border-radius:4px;color:#666;cursor:pointer;display:flex;justify-content:center;padding:6px;transition:background .2s ease,color .2s ease}.icon-button:hover{background:#0000000d;color:#333}.icon-button.active{background:#007bff1a;color:#007bff}.thread-list-sidebar{background:#f8f9fa;border-bottom:1px solid #e0e0e0;display:flex;flex-direction:column;flex-shrink:0;max-height:300px}.thread-list-header{border-bottom:1px solid #e0e0e0;padding:12px 20px}.thread-list-header h4{color:#666;font-size:14px;font-weight:600;margin:0}.thread-list{flex:1 1;overflow-y:auto}.thread-item{background:#0000;border:none;border-bottom:1px solid #e0e0e0;cursor:pointer;display:block;padding:12px 20px;text-align:left;transition:background .2s ease;width:100%}.thread-item:hover{background:#007bff0d}.thread-item.active{background:#007bff1a;border-left:3px solid #007bff;padding-left:17px}.thread-title{color:#333;font-weight:500;margin-bottom:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.thread-meta{color:#999;font-size:12px}.ai-panel-content{display:flex;flex:1 1;flex-direction:column;min-height:0}.messages-container{display:flex;flex:1 1;flex-direction:column;gap:12px;overflow-y:auto;padding:20px}.empty-chat-state{align-items:center;color:#666;display:flex;flex-direction:column;height:100%;justify-content:center;padding:40px 20px;text-align:center}.empty-chat-state svg{color:#ccc;margin-bottom:20px}.empty-chat-state h3{color:#333;font-size:20px;margin:0 0 12px}.empty-chat-state p{color:#666;margin:0 0 24px;max-width:300px}.example-prompts{display:flex;flex-direction:column;gap:8px;max-width:300px;width:100%}.example-prompt{background:#f8f9fa;border:1px solid #e0e0e0;border-radius:8px;color:#666;cursor:pointer;font-size:14px;padding:10px 16px;text-align:left;transition:all .2s ease}.example-prompt:hover{background:#e9ecef;border-color:#007bff;color:#007bff}.message{animation:fadeIn .3s ease;display:flex;flex-direction:column;gap:8px;max-width:80%}.message.user{align-self:flex-end}.message.assistant{align-self:flex-start}.message-content{word-wrap:break-word;border-radius:12px;line-height:1.5;padding:12px 16px;white-space:pre-wrap}.message.user .message-content{background:#007bff;border-bottom-right-radius:4px;color:#fff}.message.assistant .message-content{background:#f1f3f5;border-bottom-left-radius:4px;color:#333}.typing-indicator{align-items:center;display:flex;gap:4px;padding:16px!important}.typing-indicator span{animation:typing 1.4s infinite;background:#999;border-radius:50%;height:8px;width:8px}.typing-indicator span:nth-child(2){animation-delay:.2s}.typing-indicator span:nth-child(3){animation-delay:.4s}@keyframes typing{0%,60%,to{opacity:.3;transform:translateY(0)}30%{opacity:1;transform:translateY(-6px)}}.navigation-suggestion{margin-top:8px}.nav-button{background:#fff;border:1px solid #007bff;color:#007bff;transition:all .2s ease}.nav-button:hover{background:#007bff;color:#fff}.error-message{background:#fff3cd;border-top:1px solid #ffc107;color:#856404;flex-shrink:0;font-size:14px;padding:12px 20px}.message-input-container{align-items:center;background:#fff;border-top:1px solid #e0e0e0;display:flex;flex-shrink:0;gap:8px;padding:16px 20px}.message-input{border:1px solid #e0e0e0;border-radius:20px;flex:1 1;font-size:14px;outline:none;padding:10px 16px;transition:border-color .2s ease}.message-input:focus{border-color:#007bff}.message-input:disabled{background:#f8f9fa;cursor:not-allowed}.send-button{align-items:center;background:#007bff;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;flex-shrink:0;justify-content:center;padding:10px;transition:background .2s ease}.send-button:hover:not(:disabled){background:#0056b3}.send-button:disabled{background:#ccc;cursor:not-allowed}@media (max-width:768px){.ai-panel-overlay{display:block}.ai-chat-panel{max-width:100%!important;width:100%!important}.resize-handle{display:none}.thread-list-sidebar{max-height:200px}.message{max-width:90%}}@media (max-width:480px){.ai-panel-header{padding:12px 16px}.ai-panel-title{font-size:14px}.messages-container{padding:12px}.message-input-container{padding:12px 16px}.empty-chat-state{padding:20px 16px}.empty-chat-state h3{font-size:18px}}.spinner{animation:spin 1s linear infinite}.powerassistant-settings{max-width:1400px;padding:20px}.settings-header{align-items:center;border-bottom:2px solid #e0e0e0;display:flex;gap:12px;margin-bottom:24px;padding-bottom:16px}.settings-header h3{color:#333;font-size:20px;margin:0}.settings-header svg{color:gold}.settings-tabs{border-bottom:2px solid #e0e0e0;display:flex;gap:8px;margin-bottom:20px}.settings-tabs .tab{align-items:center;background:none;border:none;border-bottom:3px solid #0000;color:#666;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;margin-bottom:-2px;padding:12px 20px;transition:all .2s ease}.settings-tabs .tab:hover{background:#f8f9fa;color:#333}.settings-tabs .tab.active{border-bottom-color:#007bff;color:#007bff}.settings-tabs .tab svg{flex-shrink:0}.settings-message{border-radius:6px;font-size:14px;margin-bottom:20px;padding:12px 16px}.settings-message.success{background:#d4edda;border:1px solid #c3e6cb;color:#155724}.settings-message.error{background:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.settings-section{background:#f8f9fa;border:1px solid #e0e0e0;border-radius:8px;margin-bottom:32px;padding:20px}.settings-section h4{color:#333;font-size:16px;font-weight:600;margin:0 0 16px}.section-description{color:#666;font-size:14px;margin:0 0 16px}.section-header-with-action{align-items:flex-start;display:flex;gap:16px;justify-content:space-between;margin-bottom:16px}.section-header-with-action h4{margin:0 0 8px}.section-header-with-action .section-description{margin:0}.generate-prompt-btn{align-items:center;background:#fff;background:var(--card-bg,#fff);border:1px solid #ddd;border:1px solid var(--border-color,#ddd);border-radius:6px;color:#333;color:var(--text-primary,#333);cursor:pointer;display:flex;flex-shrink:0;font-size:13px;font-weight:500;gap:6px;padding:8px 14px;transition:all .2s;white-space:nowrap}.generate-prompt-btn:hover:not(:disabled){border-color:gold;box-shadow:0 0 8px #ffd7004d}.generate-prompt-btn:disabled{cursor:not-allowed;opacity:.6}.generate-prompt-btn .spinning{animation:spin 1s linear infinite}.tools-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.tool-checkbox{align-items:flex-start;background:#fff;border:1px solid #dee2e6;border-radius:6px;cursor:pointer;display:flex;gap:12px;padding:12px;transition:all .2s ease}.tool-checkbox:hover{background:#f0f8ff;border-color:#007bff}.tool-checkbox input[type=checkbox]{cursor:pointer;flex-shrink:0;margin-top:2px}.tool-info{flex:1 1}.tool-name{color:#333;font-size:14px;font-weight:500;margin-bottom:4px}.tool-description{color:#6c757d;font-size:12px}.feature-checkbox{align-items:flex-start;background:#fff;border:1px solid #dee2e6;border-radius:6px;cursor:pointer;display:flex;gap:12px;padding:12px;transition:all .2s ease}.feature-checkbox:hover{background:#f0f8ff;border-color:#007bff}.feature-checkbox input[type=checkbox]{cursor:pointer;flex-shrink:0;margin-top:2px}.feature-info{flex:1 1}.feature-name{color:#333;font-size:14px;font-weight:500;margin-bottom:4px}.feature-description{color:#6c757d;font-size:12px}.settings-actions{border-top:1px solid #e0e0e0;display:flex;gap:12px;justify-content:flex-end;margin-top:24px;padding-top:20px}.settings-note{background:#fff3cd;border:1px solid #ffc107;border-radius:6px;margin-top:24px;padding:16px}.settings-note p{color:#856404;font-size:13px;margin:0}.settings-note strong{color:#533f03}.capabilities-debug{padding:20px 0}.capabilities-summary{background:#f8f9fa;border:1px solid #e0e0e0;border-radius:8px;display:flex;gap:24px;margin-bottom:20px;padding:16px 20px}.capabilities-summary p{color:#333;font-size:14px;margin:0}.capabilities-summary strong{margin-right:8px}.capability-module{background:#f8f9fa;border:1px solid #e0e0e0;border-radius:8px;margin-bottom:24px;padding:20px}.capability-module:last-child{margin-bottom:0}.module-name{color:#333;font-size:16px;font-weight:600;margin:0 0 16px;text-transform:capitalize}.tools-list{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.tool-item{background:#fff;border:1px solid #dee2e6;border-radius:6px;padding:12px 16px;transition:all .2s ease}.tool-item.has-access{background:#f0fff4;border-left:4px solid #28a745}.tool-item.no-access{background:#fff5f5;border-left:4px solid #dc3545;opacity:.7}.tool-item-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:6px}.tool-item-name{color:#333;flex:1 1;font-family:Monaco,Menlo,Courier New,monospace;font-size:14px;font-weight:500}.tool-item-role{color:#6c757d;font-size:12px}.access-badge{border-radius:4px;display:inline-block;font-size:11px;font-weight:500;padding:3px 10px;white-space:nowrap}.access-badge.granted{background:#28a745;color:#fff}.access-badge.denied{background:#dc3545;color:#fff}.user-role-badge{background:#6c757d;border-radius:3px;color:#fff;font-size:11px;margin-left:8px;padding:2px 6px}.role-badge{background:#007bff;border-radius:4px;color:#fff;display:inline-block;font-size:11px;font-weight:500;padding:2px 8px;text-transform:uppercase}.debug-note{background:#e7f3ff;border:1px solid #b3d9ff;border-radius:6px;margin-top:24px;padding:16px}.debug-note p{color:#004085;font-size:13px;margin:0}.debug-note strong{color:#002752}.token-stats-summary{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:24px}.stat-card{background:#f8f9fa;border:1px solid #e0e0e0;border-radius:8px;padding:20px;text-align:center}.stat-card.highlight{background:#e7f3ff;border-color:#007bff}.stat-card h4{color:#666;font-size:13px;font-weight:600;letter-spacing:.5px;margin:0 0 12px;text-transform:uppercase}.stat-card .stat-value{color:#333;font-size:28px;font-weight:700;margin-bottom:4px}.stat-card small{color:#999;display:block;font-size:11px}.token-by-model{margin-bottom:24px}.model-stats-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.model-stats-header h4{color:#333;font-size:16px;font-weight:600;margin:0}.model-stats{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}.model-stat-card{background:#fff;border:1px solid #dee2e6;border-left:4px solid #007bff;border-radius:6px;padding:16px}.model-name{color:#333;font-family:Monaco,Menlo,Courier New,monospace;font-size:14px;font-weight:600;margin-bottom:12px}.model-metrics{display:flex;flex-direction:column;gap:6px}.metric{display:flex;font-size:13px;justify-content:space-between}.metric-label{color:#666}.metric-value{color:#333;font-weight:600}.recent-usage{margin-bottom:24px}.recent-usage h4{color:#333;font-size:16px;font-weight:600;margin:0 0 16px}.usage-table{border:1px solid #dee2e6;border-radius:8px;overflow-x:auto}.usage-table table{background:#fff;border-collapse:collapse;font-size:13px;width:100%}.usage-table thead{background:#f8f9fa}.usage-table th{border-bottom:2px solid #dee2e6;color:#555;font-weight:600;padding:12px 16px;text-align:left;white-space:nowrap}.usage-table td{border-bottom:1px solid #f0f0f0;color:#333;padding:10px 16px}.usage-table tbody tr:hover{background:#f8f9fa}.usage-table tbody tr:last-child td{border-bottom:none}.token-filter-bar{align-items:center;background:#f8f9fa;border:1px solid #e0e0e0;border-radius:8px;display:flex;gap:12px;margin-bottom:20px;padding:12px 16px}.token-filter-bar label{color:#555;font-size:13px;font-weight:600}.module-filter-select{background:#fff;border:1px solid #ced4da;border-radius:6px;cursor:pointer;font-size:13px;min-width:180px;padding:8px 12px}.module-filter-select:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff26;outline:none}.token-by-module{margin-bottom:24px}.token-by-module h4{color:#333;font-size:16px;font-weight:600;margin:0 0 16px}.module-stats{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}.module-stat-card{background:#fff;border:1px solid #dee2e6;border-left:4px solid #28a745;border-radius:6px;padding:16px;transition:all .15s ease}.module-stat-card:hover{border-color:#28a745;box-shadow:0 2px 8px #28a74526}.module-stat-card.selected{background:#f0fff4;border-color:#28a745}.module-stat-card .module-name{color:#333;font-size:14px;font-weight:600;margin-bottom:12px}.module-stat-card .module-metrics{display:flex;flex-direction:column;gap:6px}.module-operations{border-top:1px solid #e0e0e0;display:flex;flex-wrap:wrap;gap:6px;margin-top:10px;padding-top:10px}.operation-tag{background:#e9ecef;border-radius:10px;color:#495057;display:inline-block;font-size:11px;padding:2px 8px}.source-badge{border-radius:4px;display:inline-block;font-size:10px;font-weight:600;letter-spacing:.5px;padding:2px 6px;text-transform:uppercase}.source-badge.powerassistant{background:#e7f3ff;color:#0056b3}.source-badge.infodocs{background:#fff3cd;color:#856404}.source-badge.power-scheduler{background:#d4edda;color:#155724}.operation-hint{color:#999;display:block;font-size:10px;margin-top:2px}.routing-badge{font-size:10px;font-weight:500;padding:2px 6px;text-transform:lowercase}.routing-badge.external{background:#fff3cd}.routing-badge.local{background:#d4edda;color:#155724}.pricing-models-list{display:flex;flex-direction:column;gap:16px;margin-bottom:24px}.pricing-model-card{background:#fff;border:1px solid #dee2e6;border-left:4px solid #007bff;border-radius:8px;padding:16px}.pricing-model-header{align-items:center;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;margin-bottom:16px;padding-bottom:12px}.model-key-input{background:#f8f9fa;border:1px solid #ced4da;border-radius:4px;color:#333;flex:1 1;font-family:Monaco,Menlo,Courier New,monospace;font-size:14px;font-weight:600;padding:8px 12px}.btn-delete{background:#dc3545;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:13px;font-weight:500;margin-left:12px;padding:6px 16px;transition:background .2s ease}.btn-delete:hover{background:#c82333}.pricing-fields{grid-gap:16px;display:grid;gap:16px;grid-template-columns:2fr 1fr 1fr}@media (max-width:768px){.pricing-fields{grid-template-columns:1fr}.powerassistant-settings{padding:16px}.tools-grid{grid-template-columns:1fr}.settings-actions{flex-direction:column}.capabilities-summary{flex-direction:column;gap:12px}.tools-list{grid-template-columns:1fr}.settings-tabs{overflow-x:auto}.settings-tabs .tab{white-space:nowrap}}.routing-badge{border-radius:4px;display:inline-block;font-size:11px;font-weight:600;padding:3px 8px;text-transform:uppercase;white-space:nowrap}.routing-badge.internal{background-color:#d4edda;border:1px solid #c3e6cb;color:#155724}.routing-badge.external{background-color:#fff3cd;border:1px solid #ffeaa7;color:#856404}.routing-badge.hybrid{background-color:#d1ecf1;border:1px solid #bee5eb;color:#0c5460}.routing-badge.none{background-color:#e2e3e5;border:1px solid #d6d8db;color:#383d41}.dashboard{background-color:#f5f6fa}.dashboard-header{box-shadow:0 2px 4px #0000001a;padding:15px 30px}.header-left{align-items:center;display:flex}.header-nav{flex-grow:1}.nav-button{align-items:center;border:1px solid #0000;border-radius:4px;color:#333;display:flex;gap:8px;padding:8px 16px}.nav-button:hover{background:#f0f0f0}.nav-button.active{background:#06c;color:#fff}.icon-nav-button{padding:8px 12px;position:relative}.icon-nav-button .nav-button-text{display:none}.resource-nav-button{padding:8px 12px;position:relative}.resource-nav-button .nav-button-text{display:none}.nav-resource-logo{background:#fff;border-radius:3px;height:20px;object-fit:contain;padding:2px;width:20px}.resource-nav-button.active .nav-resource-logo{background:#ffffffe6}.internal-modules-nav{align-items:center;display:inline-flex;position:relative}.ttg-logo-button{align-items:center;display:flex;justify-content:center;padding:8px 12px}.ttg-logo-icon{filter:brightness(.3);height:24px;object-fit:contain;transition:filter .2s;width:24px}.ttg-logo-button.active .ttg-logo-icon,.ttg-logo-button:hover .ttg-logo-icon{filter:brightness(1)}@keyframes navFadeSlideIn{0%{opacity:0;transform:translateX(-10px)}to{opacity:1;transform:translateX(0)}}.nav-mode-animate{animation:navFadeSlideIn .25s ease-out forwards}.nav-mode-animate:first-child{animation-delay:0ms}.nav-mode-animate:nth-child(2){animation-delay:30ms}.nav-mode-animate:nth-child(3){animation-delay:60ms}.nav-mode-animate:nth-child(4){animation-delay:90ms}.nav-mode-animate:nth-child(5){animation-delay:.12s}.nav-mode-animate:nth-child(6){animation-delay:.15s}.nav-mode-animate:nth-child(7){animation-delay:.18s}.internal-modules-dropdown{background:linear-gradient(135deg,var(--ttg-primary-start) 0,var(--ttg-primary-end) 100%);border-radius:6px;box-shadow:0 4px 12px #00000026;display:flex;gap:8px;left:0;margin-top:8px;padding:8px;position:absolute;top:100%;z-index:1100}.internal-module-dropdown-item{background:#ffffff1a;border:1px solid #fff3;color:#fff}.internal-module-dropdown-item:hover{background:#fff3}.header-right{gap:15px}.header-right .tenant-selector{position:relative;z-index:2}.user-info{color:#666;font-size:14px}.logout-button{background:#dc3545;border:none;border-radius:4px;padding:8px 16px}.logout-button:hover{background:#c82333}.dashboard-content{padding:30px}.welcome-section{margin-bottom:30px}.welcome-section h2{font-size:28px}.welcome-section p{font-size:16px}.resource-hub{margin-bottom:40px}.section-title{border-bottom:2px solid #e9ecef;color:#333;font-size:20px;margin-bottom:20px;padding-bottom:10px}.resource-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));margin-bottom:30px}.resource-card{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;display:flex;flex-direction:column;overflow:hidden;transition:transform .2s,box-shadow .2s}.resource-card:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.resource-header{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;gap:12px;padding:15px}.resource-logo{background:#fff;border-radius:4px;height:30px;object-fit:contain;padding:4px;width:30px}.resource-header h4{flex-grow:1;font-size:16px;margin:0}.resource-body{align-items:center;display:flex;flex:1 1;flex-direction:column;padding:15px;text-align:center}.resource-image{flex-shrink:0;height:120px;margin-bottom:12px;max-width:200px;object-fit:contain;width:100%}.resource-description{color:#666;flex-shrink:0;font-size:14px;line-height:1.4;margin:0;min-height:40px}.resource-actions{background:#f8f9fa;display:flex;gap:10px;justify-content:center;padding:12px 15px}.resource-btn{align-items:center;border:1px solid #0000;border-radius:4px;display:inline-flex;font-size:13px;gap:5px;padding:6px 14px;text-decoration:none;transition:all .2s}.details-btn{background:#28a745;border-color:#28a745;color:#fff}.details-btn:hover{background:#218838;border-color:#1e7e34}.login-btn{background:#06c;border-color:#06c;color:#fff}.login-btn:hover{background:#0056b3;border-color:#004ea2}.no-resources{background:#fff;border-radius:8px;color:#666;padding:60px 20px;text-align:center}.asset-summary-section{margin-bottom:30px}.summary-cards{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.summary-card{align-items:flex-start;background:#fff;border-radius:8px;box-shadow:0 2px 8px #00000014;display:flex;gap:15px;padding:20px;transition:all .2s}.summary-card.clickable{cursor:pointer}.summary-card.clickable:hover{box-shadow:0 4px 12px #0000001f;transform:translateY(-2px)}.summary-icon{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:8px;color:#fff;display:flex;justify-content:center;padding:12px}.summary-content{flex-grow:1}.summary-content h4{color:#333;font-size:16px;margin:0 0 10px}.summary-value{color:#667eea;font-size:28px;font-weight:700;margin:0}.summary-breakdown{display:flex;flex-direction:column;gap:5px}.breakdown-item{display:flex;font-size:14px;justify-content:space-between}.breakdown-label{color:#666;text-transform:capitalize}.breakdown-value{color:#333;font-weight:500}.summary-link{color:#06c;font-size:14px;margin:0}.system-health-mini{align-items:center;background:#fff;border-radius:8px;bottom:20px;box-shadow:0 2px 8px #0000001a;display:flex;gap:10px;padding:12px 20px;position:fixed;right:20px}.system-health-mini h4{color:#666;font-size:14px;margin:0}.status-badge{border-radius:4px}.status-badge.status-healthy{background:#d4edda;color:#155724}.status-badge.status-degraded{background:#fff3cd;color:#856404}.status-badge.status-unhealthy{background:#f8d7da;color:#721c24}.status-badge.status-unknown{background:#e9ecef;color:#666}.profile-modal-overlay{background:#00000080;bottom:0;left:0;position:fixed;right:0;top:0;z-index:999}.cards-container{grid-gap:20px;gap:20px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-bottom:30px}.card{box-shadow:0 2px 8px #00000014;padding:20px}.card h3{margin-top:0}.card.clickable{transition:all .2s}.card.clickable:hover{box-shadow:0 4px 12px #0000001f;transform:translateY(-2px)}.card-action{color:#06c}.status-healthy{color:#28a745}.status-degraded{color:#ffc107}.status-unhealthy{color:#dc3545;font-weight:700}.badge{background:#6c757d;display:inline-block;font-size:12px}.user-details{border-radius:8px;box-shadow:0 2px 8px #00000014;padding:20px}.user-details h3{margin-top:0}.header-mobile-top{display:none}.mobile-menu-toggle{background:#0000;border:none;color:#333;cursor:pointer;display:none;padding:8px}.header-logo{cursor:pointer;height:40px;width:auto}.header-logo.desktop-only{display:block}.header-nav-wrapper{align-items:center;display:flex;flex:1 1;justify-content:space-between}.config-text{display:inline}.config-label.mobile-only{display:none}@media (max-width:768px){.header-mobile-top{align-items:center;display:flex;justify-content:space-between;width:100%}.mobile-menu-toggle{display:block;font-size:24px}.icon-nav-button .nav-button-text,.resource-nav-button .nav-button-text{display:inline}.icon-nav-button,.resource-nav-button{justify-content:flex-start;padding:8px 16px;width:100%}.nav-resource-logo{flex-shrink:0}.header-left,.header-logo.desktop-only{display:none}.dashboard-header{flex-direction:column;padding:10px 15px;position:relative}.header-nav-wrapper{display:none;width:100%}.header-nav-wrapper.mobile-menu-open{background:#2789d7;border-top:1px solid #fff3;box-shadow:0 4px 6px #0000001a;display:block;left:0;padding:10px 15px;position:absolute;right:0;top:calc(100% + 1px);z-index:1000}.header-nav{flex-direction:column;gap:5px;width:100%}.nav-button{font-size:14px;justify-content:flex-start;padding:10px 15px;text-align:left;width:100%}.header-nav-wrapper.mobile-menu-open .header-nav .nav-button{background:#0000;border:1px solid #0000;color:#fff!important}.header-nav-wrapper.mobile-menu-open .header-nav .nav-button:hover{background:#ffffff1a;color:#fff!important}.header-nav-wrapper.mobile-menu-open .header-nav .nav-button.active{background:#fff3;border-color:#ffffff4d;color:#fff!important}.header-nav-wrapper.mobile-menu-open .header-nav .nav-button.disabled{color:#fffc!important;opacity:.6}.user-info{display:none}.desktop-profile-button{display:none!important}.header-right{border-top:1px solid #e0e0e0;display:flex;flex-direction:column;gap:10px;margin-top:10px;padding-top:10px;width:100%}.header-nav-wrapper.mobile-menu-open .header-right{border-top-color:#fff3}.config-text{display:none}.config-dropdown{margin-right:0!important;position:relative!important;width:100%}.config-dropdown .config-menu-button{justify-content:center;width:100%}.config-dropdown>div{left:0;position:absolute!important;right:0;width:100%!important}.tenant-selector{margin:10px 0;max-width:none;width:100%}.resource-grid,.stats-grid{grid-template-columns:1fr}.modal,.profile-modal{margin:10px!important;max-height:90vh!important;max-width:95%!important;overflow-y:auto;width:95%!important}.modal-content{padding:15px!important}.modal-header{padding:10px 15px!important}.modal-body{max-height:60vh;overflow-y:auto;padding:15px!important}.form-group{margin-bottom:15px}input[type=email],input[type=number],input[type=text],select,textarea{font-size:16px!important;padding:10px!important;width:100%!important}}@media (max-width:480px){.dashboard-header{padding:8px 10px}.header-left,.header-nav{justify-content:flex-start;width:100%}.nav-button{font-size:13px;padding:5px 10px}.config-dropdown button{font-size:14px;padding:8px 12px}.header-nav-wrapper.mobile-menu-open .config-dropdown button{background:#0000!important;border-color:#0000!important;color:#fff!important}.header-nav-wrapper.mobile-menu-open .config-dropdown button:hover{background:#ffffff1a!important}.header-nav-wrapper.mobile-menu-open .config-menu-dropdown{background:#fff!important}.header-nav-wrapper.mobile-menu-open .config-menu-dropdown button{background:#fff!important;color:#333!important}.header-nav-wrapper.mobile-menu-open .config-menu-dropdown button:hover{background:#f5f5f5!important}.config-label{display:none}.header-nav-wrapper.mobile-menu-open .config-label.mobile-only{display:inline;margin-left:5px}.header-nav-wrapper.mobile-menu-open .tenant-selector select{background:#fff;border:1px solid #ddd;color:#333}.header-nav-wrapper.mobile-menu-open .tenant-selector select option{background:#fff;color:#333}.header-nav-wrapper.mobile-menu-open .logout-button{background:#dc3545;color:#fff}.header-nav-wrapper.mobile-menu-open .logout-button:hover{background:#c82333}}.configuration-required-message{align-items:center;background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;display:flex;flex-direction:column;justify-content:center;margin:40px auto;max-width:600px;padding:60px 40px;text-align:center}.configuration-required-message .warning-icon{color:#f0ad4e;margin-bottom:20px}.configuration-required-message h2{color:#333;font-size:24px;font-weight:600;margin:0 0 16px}.configuration-required-message p{color:#666;font-size:16px;line-height:1.5;margin:0 0 20px}.configuration-required-message .config-steps{background:#f8f9fa;border-radius:6px;padding:20px;text-align:left;width:100%}.configuration-required-message .config-steps p{color:#333;margin:0 0 12px}.configuration-required-message .config-steps ol{color:#555;margin:0;padding-left:20px}.configuration-required-message .config-steps li{line-height:1.4;margin-bottom:8px}.configuration-required-message .config-steps li:last-child{margin-bottom:0}.approval-page{background:linear-gradient(135deg,#667eea,#764ba2);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;min-height:100vh;padding:40px 20px}.approval-container{margin:0 auto;max-width:800px}.approval-header{color:#fff;margin-bottom:32px;text-align:center}.approval-header h1{font-size:32px;font-weight:700;margin:0 0 8px}.approval-subtitle{font-size:16px;margin:0;opacity:.9}.result-banner{align-items:flex-start;border-radius:8px;display:flex;font-size:15px;font-weight:500;gap:12px;margin-bottom:24px;padding:16px 20px}.result-banner.success{background-color:#d1fae5;border:1px solid #10b981;color:#065f46}.result-banner.error{background-color:#fee2e2;border:1px solid #ef4444;color:#991b1b}.result-banner svg{flex-shrink:0;margin-top:2px}.result-message{flex:1 1}.warning-banner{align-items:center;background-color:#fef3c7;border:1px solid #f59e0b;border-radius:8px;color:#92400e;display:flex;font-size:14px;gap:8px;margin-bottom:24px;padding:12px 16px}.quote-card{background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;padding:32px}.quote-status-section{align-items:center;background:linear-gradient(135deg,#f9fafb,#f3f4f6);border-radius:8px;display:flex;justify-content:space-between;margin-bottom:32px;padding:20px}.status-badge-large{align-items:center;display:flex;gap:10px}.status-label-large{border-radius:6px;font-size:16px;font-weight:600;padding:6px 12px}.status-label-large.status-generated{background-color:#fef3c7;color:#f59e0b}.status-label-large.status-approved{background-color:#d1fae5;color:#10b981}.status-label-large.status-rejected{background-color:#fee2e2;color:#ef4444}.amount-badge-large{align-items:center;display:flex;gap:8px}.amount-large{color:#111827;font-size:32px;font-weight:800}.quote-section{border-bottom:1px solid #e5e7eb;margin-bottom:32px;padding-bottom:32px}.quote-section:last-of-type{border-bottom:none;padding-bottom:0}.quote-section h2{color:#111827;font-size:24px;font-weight:700;margin:0 0 12px}.quote-section h3{color:#111827;font-size:18px;font-weight:600;margin:0 0 16px}.quote-description{color:#4b5563;font-size:16px;line-height:1.6;margin:0;white-space:pre-wrap}.expiration-notice{align-items:center;background-color:#fef3c7;border-radius:6px;color:#92400e;display:flex;font-size:14px;font-weight:500;gap:8px;margin-bottom:32px;padding:12px 16px}.costs-table{border:1px solid #e5e7eb;border-radius:8px;overflow:hidden}.costs-header{background-color:#f9fafb;border-bottom:2px solid #e5e7eb;color:#6b7280;font-size:14px;font-weight:600}.cost-row,.costs-header{grid-gap:12px;display:grid;gap:12px;grid-template-columns:2fr 80px 120px 120px;padding:14px 20px}.cost-row{align-items:center;border-bottom:1px solid #f3f4f6;font-size:15px}.cost-row:last-child{border-bottom:none}.cost-item-desc{color:#111827;font-weight:500}.cost-row>span{color:#6b7280}.cost-total{color:#111827;font-weight:600;text-align:right}.costs-total-row{grid-gap:12px;background-color:#f9fafb;border-top:2px solid #e5e7eb;display:grid;font-size:18px;font-weight:700;gap:12px;grid-template-columns:1fr auto;padding:16px 20px}.costs-total-row .total-value{color:#111827;text-align:right}.details-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.detail-item{grid-gap:8px;align-items:center;display:grid;font-size:15px;gap:8px;grid-template-columns:auto auto 1fr}.detail-item svg{color:#6b7280}.detail-label{color:#6b7280;font-weight:500}.detail-value{color:#111827;font-weight:500}.btn-download{align-items:center;background-color:#f3f4f6;border:1px solid #d1d5db;border-radius:8px;color:#374151;display:inline-flex;font-size:15px;font-weight:500;gap:8px;padding:12px 24px;text-decoration:none;transition:all .2s}.btn-download:hover{background-color:#e5e7eb;border-color:#9ca3af}.action-section{border-top:2px solid #e5e7eb;margin-top:32px;padding-top:32px;text-align:center}.action-prompt{color:#111827;font-size:18px;font-weight:600;margin:0 0 24px}.action-buttons{display:flex;gap:16px;justify-content:center}.btn-approve,.btn-reject{align-items:center;border:none;border-radius:8px;box-shadow:0 4px 12px #00000026;cursor:pointer;display:inline-flex;font-size:16px;font-weight:600;gap:8px;padding:14px 32px;transition:all .2s}.btn-approve{background-color:#10b981;color:#fff}.btn-approve:hover:not(:disabled){background-color:#059669;box-shadow:0 6px 16px #10b98166;transform:translateY(-2px)}.btn-reject{background-color:#ef4444;color:#fff}.btn-reject:hover:not(:disabled){background-color:#dc2626;box-shadow:0 6px 16px #ef444466;transform:translateY(-2px)}.btn-approve:disabled,.btn-reject:disabled{cursor:not-allowed;opacity:.6;transform:none}.approval-footer{color:#fff;font-size:14px;margin-top:32px;opacity:.9;text-align:center}.approval-page .loading{color:#fff;font-size:18px;padding:60px 20px;text-align:center}.approval-page .error-state{background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;padding:60px 40px;text-align:center}.approval-page .error-state svg{color:#ef4444;margin-bottom:20px}.approval-page .error-state h2{color:#111827;font-size:24px;font-weight:700;margin:0 0 12px}.approval-page .error-state p{color:#6b7280;font-size:16px;margin:0}@media (max-width:768px){.approval-page{padding:20px 12px}.approval-header h1{font-size:24px}.quote-card{padding:20px}.quote-status-section{flex-direction:column;gap:16px;text-align:center}.amount-large{font-size:28px}.cost-row,.costs-header{font-size:13px;gap:8px;grid-template-columns:2fr 50px 80px 80px;padding:12px 14px}.costs-total-row{font-size:16px}.details-grid{grid-template-columns:1fr}.action-buttons{flex-direction:column}.btn-approve,.btn-reject{justify-content:center;width:100%}}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:linear-gradient(135deg,#667eea,#764ba2);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;min-height:100vh}.login-page{align-items:center;display:flex;justify-content:center;min-height:100vh;padding:20px}.login-container{background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;max-width:500px;overflow:hidden;width:100%}.login-header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:40px;text-align:center}.login-header h1{font-size:2.5em;margin-bottom:10px}.login-header p{font-size:1.1em;opacity:.9}.login-content{padding:40px}.login-content h2{color:#333;margin-bottom:10px}.login-content p{color:#666;margin-bottom:30px}.login-button{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1.1em;padding:15px 30px;transition:transform .2s,box-shadow .2s;width:100%}.login-button:hover{box-shadow:0 10px 20px #667eea66;transform:translateY(-2px)}.login-features{border-top:1px solid #eee;margin-top:40px;padding-top:30px}.login-features h3{color:#333;margin-bottom:15px}.login-features ul{color:#666;list-style:none}.login-features li{padding:8px 0 8px 20px;position:relative}.login-features li:before{color:#667eea;content:"✓";font-weight:700;left:0;position:absolute}.login-footer{background:#f8f9fa;color:#666;font-size:.9em;padding:20px;text-align:center}.dashboard{background:#fff;min-height:100vh}.dashboard-header{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 2px 10px #0000001a;color:#fff;display:flex;gap:20px;justify-content:space-between;padding:20px 40px}.header-nav{display:flex;flex:1 1;gap:10px;justify-content:center}.nav-button{background:#0000;border:1px solid #ffffff4d;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:8px 20px;transition:all .2s}.nav-button:hover:not(.disabled){background:#fff3}.nav-button.active{background:#ffffff4d;border-color:#fff}.nav-button.disabled{cursor:not-allowed;opacity:.5}.header-left h1{font-size:1.8em}.header-right{align-items:center;display:flex;gap:20px}.user-info{font-size:1.1em}.logout-button{background:#fff3;border:1px solid #ffffff4d;border-radius:6px;color:#fff;cursor:pointer;padding:8px 20px;transition:background .2s}.logout-button:hover{background:#ffffff4d}.dashboard-content{margin:0 auto;max-width:1400px;padding:40px}.welcome-section{margin-bottom:40px}.welcome-section h2{color:#333;margin-bottom:10px}.welcome-section p{color:#666;font-size:1.1em}.cards-container{grid-gap:30px;display:grid;gap:30px;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));margin-bottom:40px}.card{background:#fff;border-radius:10px;box-shadow:0 2px 10px #0000001a;padding:30px;transition:transform .2s,box-shadow .2s}.card:hover{box-shadow:0 5px 20px #00000026;transform:translateY(-5px)}.card.clickable{cursor:pointer}.card h3{color:#333;font-size:1.3em;margin-bottom:20px}.card p{color:#666;margin-bottom:10px}.card-action{color:#667eea;font-weight:500;margin-top:15px}.status-healthy{color:#10b981;font-weight:700}.status-degraded{color:#f59e0b;font-weight:700}.status-error{color:#ef4444;font-weight:700}.module-list{display:flex;flex-direction:column;gap:15px}.module-item{align-items:center;background:#f8f9fa;border-radius:6px;display:flex;justify-content:space-between;padding:10px}.badge{background:#667eea;border-radius:20px;color:#fff;font-size:.85em;padding:4px 12px}.user-details{background:#fff;border-radius:10px;box-shadow:0 2px 10px #0000001a;padding:30px}.user-details h3{color:#333;margin-bottom:20px}.user-details p{color:#666;margin-bottom:10px}@media (max-width:768px){.dashboard-header{flex-direction:column;gap:15px;padding:20px}.header-nav{order:3;width:100%}.header-right{order:2}}@font-face{font-family:sansationregular;font-style:normal;font-weight:400;src:url(/static/media/sansationregular-webfont.566706c34db61ee76fdb.eot);src:url(/static/media/sansationregular-webfont.566706c34db61ee76fdb.eot?#iefix) format("embedded-opentype"),url(/static/media/sansationregular-webfont.b0a518e5748ae0ec0793.woff2) format("woff2"),url(/static/media/sansationregular-webfont.770c729a79ce1f6e24ba.woff) format("woff"),url(/static/media/sansationregular-webfont.5ab095666f22f8dd2547.ttf) format("truetype"),url(/static/media/sansationregular-webfont.63f632005db624de3319.svg#sansationregular) format("svg")}:root{--ttg-primary-start:#2689d6;--ttg-primary-end:#2989d8;--ttg-accent:#2bb7ff;--ttg-text-dark:#13212d;--ttg-text-light:#777c7f;--ttg-font-heading:"sansationregular","Open Sans","Roboto",sans-serif;--ttg-font-body:"Lato","Open Sans","Roboto",sans-serif;--primary-color:#3b82f6;--primary-hover:#2563eb;--success-color:#10b981;--danger-color:#ef4444;--danger-hover:#dc2626;--warning-color:#f59e0b;--warning-hover:#d97706;--info-color:#3b82f6;--background-color:#f9fafb;--secondary-bg:#f3f4f6;--bg-secondary:#f3f4f6;--card-bg:#fff;--hover-bg:#f3f4f6;--input-bg:#fff;--code-bg:#f3f4f6;--table-header-bg:#f9fafb;--table-hover-bg:#f3f4f6;--success-bg:#d1fae5;--danger-bg:#fee2e2;--warning-bg:#fef3c7;--info-bg:#dbeafe;--border-color:#e5e7eb;--text-color:#111827;--text-primary:#111827;--text-secondary:#6b7280;--text-muted:#6b7280}body{font-family:Lato,Open Sans,Roboto,sans-serif;font-family:var(--ttg-font-body)}.login-button,.login-header,body{background:linear-gradient(135deg,#2689d6,#2989d8);background:linear-gradient(135deg,var(--ttg-primary-start) 0,var(--ttg-primary-end) 100%)}.login-button:hover{box-shadow:0 10px 20px #2689d666}.login-features li:before{color:#2689d6;color:var(--ttg-primary-start)}.dashboard-header{background:linear-gradient(135deg,#2689d6,#2989d8);background:linear-gradient(135deg,var(--ttg-primary-start) 0,var(--ttg-primary-end) 100%)}.card-action{color:#2689d6;color:var(--ttg-primary-start)}.badge{background:#2689d6;background:var(--ttg-primary-start)}h1,h2,h3,h4,h5,h6{font-family:sansationregular,Open Sans,Roboto,sans-serif;font-family:var(--ttg-font-heading)}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.fade-in{animation:fadeIn .2s ease-out}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}.fade-out{animation:fadeOut .2s ease-out}@keyframes slideInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.slide-in-down{animation:slideInDown .2s ease-out}@keyframes slideInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.slide-in-up{animation:slideInUp .2s ease-out}@keyframes slideInLeft{0%{opacity:0;transform:translateX(-20px)}to{opacity:1;transform:translateX(0)}}.slide-in-left{animation:slideInLeft .2s ease-out}@keyframes slideInRight{0%{opacity:0;transform:translateX(20px)}to{opacity:1;transform:translateX(0)}}.slide-in-right{animation:slideInRight .2s ease-out}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.scale-in{animation:scaleIn .2s ease-out}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.pulsing{animation:pulse 2s ease-in-out infinite}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.bouncing{animation:bounce 1s ease-in-out infinite}@keyframes shake{0%,to{transform:translateX(0)}10%,30%,50%,70%,90%{transform:translateX(-5px)}20%,40%,60%,80%{transform:translateX(5px)}}.shake{animation:shake .5s ease-in-out}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.skeleton{animation:shimmer 1.5s infinite;background:linear-gradient(90deg,var(--hover-bg) 25%,var(--border-color) 50%,var(--hover-bg) 75%);background-size:200% 100%;border-radius:4px}@keyframes progress{0%{width:0}to{width:100%}}.progress-animated{animation:progress 2s ease-out forwards}.transition-all{transition:all .2s ease}.transition-fast{transition:all .1s ease}.transition-slow{transition:all .3s ease}.hover-lift{transition:transform .2s ease,box-shadow .2s ease}.hover-lift:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.btn{align-items:center;border:none;border-radius:6px;cursor:pointer;display:inline-flex;font-size:14px;font-weight:500;gap:6px;justify-content:center;padding:8px 16px;text-decoration:none;transition:all .2s;white-space:nowrap}.btn:disabled{cursor:not-allowed;opacity:.6}.btn-primary{background:var(--primary-color);color:#fff}.btn-primary:hover:not(:disabled){background:var(--primary-hover)}.btn-secondary{background:var(--card-bg);border:1px solid var(--border-color);color:var(--text-primary)}.btn-secondary:hover:not(:disabled){background:var(--hover-bg)}.btn-danger{background:var(--danger-color);color:#fff}.btn-danger:hover:not(:disabled){background:#dc2626;background:var(--danger-hover,#dc2626)}.btn-success{background:var(--success-color);color:#fff}.btn-success:hover:not(:disabled){background:#059669}.btn-warning{background:var(--warning-color);color:#fff}.btn-warning:hover:not(:disabled){background:#d97706;background:var(--warning-hover,#d97706)}.btn-primary-outline{background:#3b82f61a;border:1px solid var(--primary-color);color:var(--primary-color)}.btn-primary-outline:hover:not(:disabled){background:#3b82f633}.btn-success-outline{background:#22c55e1a;border:1px solid var(--success-color);color:var(--success-color)}.btn-success-outline:hover:not(:disabled){background:#22c55e33}.btn-danger-outline{background:#ef44441a;border:1px solid var(--danger-color);color:var(--danger-color)}.btn-danger-outline:hover:not(:disabled){background:#ef444433}.btn-link{background:#0000;border:none;color:var(--primary-color);padding:4px 8px}.btn-link:hover:not(:disabled){background:#0000;text-decoration:underline}.btn-icon{min-width:auto;padding:10px}.btn-sm{font-size:13px;padding:6px 12px}.btn-lg{font-size:16px;padding:12px 24px}.btn-xs{font-size:12px;padding:4px 8px}.btn-block{width:100%}.btn-group{border-radius:6px;display:inline-flex;overflow:hidden}.btn-group .btn{border-radius:0}.btn-group .btn:first-child{border-radius:6px 0 0 6px}.btn-group .btn:last-child{border-radius:0 6px 6px 0}.btn-group .btn+.btn{border-left:1px solid #fff3}.btn-close{align-items:center;background:#0000;border:none;border-radius:4px;color:var(--text-secondary);cursor:pointer;display:flex;justify-content:center;padding:4px;transition:all .2s}.btn-close:hover{background:var(--hover-bg);color:var(--text-primary)}.btn-subtle{background:#0000;border:none;color:var(--text-secondary)}.btn-subtle:hover:not(:disabled){background:var(--hover-bg);color:var(--text-primary)}.form-group{margin-bottom:20px}.form-group label{color:var(--text-primary);display:block;font-size:14px;font-weight:500;margin-bottom:8px}.form-group label.required:after{color:var(--danger-color);content:" *"}.form-control,.form-group input[type=date],.form-group input[type=email],.form-group input[type=number],.form-group input[type=password],.form-group input[type=tel],.form-group input[type=text],.form-group input[type=time],.form-group input[type=url],.form-group select,.form-group textarea{background:var(--input-bg);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);font-size:14px;padding:10px 14px;transition:border-color .2s,box-shadow .2s;width:100%}.form-control:focus,.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px #3b82f61a;outline:none}.form-control:disabled,.form-group input:disabled,.form-group select:disabled,.form-group textarea:disabled{background:var(--hover-bg);cursor:not-allowed;opacity:.7}.form-control::placeholder,.form-group input::placeholder,.form-group textarea::placeholder{color:var(--text-secondary);opacity:.7}.form-group textarea{min-height:100px;resize:vertical}.form-group select{-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;background-size:20px;cursor:pointer;padding-right:40px}.field-hint,.form-hint{color:var(--text-secondary);display:block;font-size:12px;margin-top:6px}.field-hint.success-hint{color:var(--success-color)}.field-hint.error-hint{color:var(--danger-color)}.form-error{background:var(--danger-bg);color:var(--danger-color)}.form-error,.form-success{align-items:center;border-radius:6px;display:flex;font-size:14px;gap:8px;margin-bottom:20px;padding:12px 16px}.form-success{background:var(--success-bg);color:var(--success-color)}.form-warning{align-items:center;background:var(--warning-bg);border-radius:6px;color:#92400e;display:flex;font-size:14px;gap:8px;margin-bottom:20px;padding:12px 16px}.form-section{border-bottom:1px solid var(--border-color);margin-bottom:24px;padding-bottom:24px}.form-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.form-section-title{color:var(--text-primary);font-size:16px;font-weight:600;margin-bottom:16px}.form-row{display:flex;gap:16px;margin-bottom:20px}.form-row .form-group{flex:1 1;margin-bottom:0}.form-actions{border-top:1px solid var(--border-color);display:flex;gap:12px;justify-content:flex-end;margin-top:24px;padding-top:20px}.form-header{margin-bottom:24px}.form-header h2,.form-header h3{margin:0 0 8px}.form-header p{color:var(--text-secondary);font-size:14px;margin:0}.form-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(2,1fr)}.form-grid .form-group{margin-bottom:0}.form-grid .form-group.full-width{grid-column:1/-1}.form-checkbox,.form-radio{align-items:center;cursor:pointer;display:flex;font-size:14px;gap:8px}.form-checkbox input[type=checkbox],.form-radio input[type=radio]{accent-color:var(--primary-color);cursor:pointer;height:18px;width:18px}.search-box{align-items:center;background:var(--input-bg);border:1px solid var(--border-color);border-radius:6px;display:flex;gap:8px;min-width:250px;padding:8px 12px}.search-box input{background:#0000;border:none;color:var(--text-primary);flex:1 1;font-size:14px;outline:none}.search-box input::placeholder,.search-box svg{color:var(--text-secondary)}.search-box svg{flex-shrink:0}.search-input{background:var(--input-bg);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);flex:1 1 auto;font-size:14px;min-width:0;padding:8px 12px;transition:border-color .2s;width:100%}.search-input:focus{border-color:var(--primary-color);outline:none}.filter-select{background:var(--input-bg);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);cursor:pointer;font-size:14px;padding:8px 12px}@media (max-width:768px){.form-row{flex-direction:column;gap:0}.form-row .form-group{margin-bottom:20px}.form-grid{grid-template-columns:1fr}.form-actions{flex-direction:column}.form-actions .btn{width:100%}}.modal-overlay{align-items:center;animation:modal-fade-in .2s ease-out;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:9999}.modal-overlay.nested{z-index:10000}.modal-content{animation:modal-slide-in .2s ease-out;background:#fff;background:var(--card-bg,#fff);border-radius:12px;box-shadow:0 20px 40px #0003;display:flex;flex-direction:column;height:auto;max-height:100%;max-width:90vw;min-width:300px;overflow:hidden;width:-webkit-fit-content;width:fit-content}.modal-content.modal-xs{max-width:90vw;width:360px}.modal-content.modal-sm{max-width:90vw;width:450px}.modal-content.modal-md{max-width:90vw;width:560px}.modal-content.modal-lg{max-width:90vw;width:720px}.modal-content.modal-xl{max-width:90vw;width:900px}.modal-content.modal-xxl{max-width:90vw;width:1100px}.modal-content.modal-full{max-height:95vh;max-width:95vw;width:95vw}.modal-header{align-items:center;background:var(--hover-bg);background:var(--card-header-bg,var(--hover-bg));border-bottom:1px solid var(--border-color);border-radius:12px 12px 0 0;display:flex;flex-shrink:0;justify-content:space-between;padding:16px 20px}.modal-header h2,.modal-header h3{color:var(--text-primary);font-size:16px;font-weight:600;margin:0}.modal-header .btn-close{margin-left:auto}.modal-body{flex:1 1;min-height:0;overflow-y:auto;padding:20px}.modal-footer{background:var(--hover-bg);background:var(--card-header-bg,var(--hover-bg));border-radius:0 0 12px 12px;border-top:1px solid var(--border-color);display:flex;flex-shrink:0;gap:12px;justify-content:flex-end;padding:16px 20px}.modal-actions{display:flex;gap:12px;margin-top:16px}.modal-actions.modal-actions-right{justify-content:flex-end}.modal-actions.modal-actions-center{justify-content:center}.modal-actions.modal-actions-between{justify-content:space-between}.modal-content.confirm-modal{max-width:450px;text-align:center}.confirm-modal .modal-body{padding:30px 20px}.confirm-modal .confirm-icon{font-size:48px;margin-bottom:16px}.confirm-modal .confirm-icon.danger{color:var(--danger-color)}.confirm-modal .confirm-icon.warning{color:var(--warning-color)}.confirm-modal .confirm-icon.success{color:var(--success-color)}.confirm-modal .confirm-title{color:var(--text-primary);font-size:18px;font-weight:600;margin-bottom:12px}.confirm-modal .confirm-message{color:var(--text-secondary);font-size:14px;line-height:1.5}.confirm-modal .modal-footer{justify-content:center}.modal-content.delete-modal{max-width:450px}@keyframes modal-fade-in{0%{opacity:0}to{opacity:1}}@keyframes modal-slide-in{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@media (max-width:768px){.modal-content{margin:0;max-height:100%;max-width:100%;width:100%}.modal-content,.modal-footer,.modal-header{border-radius:0}.modal-footer{flex-direction:column}.modal-footer .btn{width:100%}}.loading-state{align-items:center;color:var(--text-secondary);display:flex;flex-direction:column;gap:16px;justify-content:center;padding:60px 20px;text-align:center}.loading{color:#666;color:var(--text-secondary,#666);font-size:14px;padding:40px 20px;text-align:center}.loading-state svg{color:var(--primary-color)}.loading-state .loading-text{font-size:14px}.spinning{animation:spin 1s linear infinite}.error-state{align-items:center;display:flex;flex-direction:column;gap:16px;justify-content:center;padding:60px 20px;text-align:center}.error-state,.error-state svg{color:var(--danger-color)}.error-state .error-title{font-size:16px;font-weight:600}.error-state .error-message{color:var(--text-secondary);font-size:14px;max-width:400px}.error-state .btn{margin-top:8px}.empty-state{align-items:center;color:var(--text-secondary);display:flex;flex-direction:column;gap:16px;justify-content:center;padding:60px 20px;text-align:center}.empty-state svg{color:var(--text-secondary);opacity:.5}.empty-state .empty-title{color:var(--text-primary);font-size:16px;font-weight:600}.empty-state .empty-message{font-size:14px;line-height:1.5;max-width:400px}.empty-state .btn{margin-top:8px}.loading-inline{color:var(--text-secondary)}.error-inline,.loading-inline{align-items:center;display:inline-flex;font-size:14px;gap:8px}.error-inline{color:var(--danger-color)}.error-message{background:#ef44441a;color:var(--danger-color)}.error-message,.success-message{align-items:center;border-radius:6px;display:flex;font-size:13px;gap:8px;padding:12px}.success-message{background:#10b9811a;color:var(--success-color)}.warning-message{background:#f59e0b1a;color:#92400e}.info-message,.warning-message{align-items:center;border-radius:6px;display:flex;font-size:13px;gap:8px;padding:12px}.info-message{background:#3b82f61a;color:var(--primary-color)}.status-badge{align-items:center;border-radius:20px;display:inline-flex;font-size:12px;font-weight:500;gap:4px;padding:4px 10px;text-transform:capitalize}.status-badge.status-active,.status-badge.status-approved,.status-badge.status-completed,.status-badge.status-success{background:var(--success-bg);color:var(--success-color)}.status-badge.status-draft,.status-badge.status-inactive,.status-badge.status-pending{background:var(--hover-bg);color:var(--text-secondary)}.status-badge.status-error,.status-badge.status-failed,.status-badge.status-rejected{background:var(--danger-bg);color:var(--danger-color)}.status-badge.status-in-progress,.status-badge.status-warning{background:var(--warning-bg);color:#92400e}.status-badge.status-info{background:var(--info-bg);color:var(--primary-color)}.status-badge.status-in-repair,.status-badge.status-maintenance{background:#fff3e0;color:#f57c00}.status-badge.status-disposed,.status-badge.status-retired{background:#ffebee;color:#c62828}.status-badge.status-missing{background:#fce4ec;color:#c2185b}.badge{align-items:center;border-radius:4px;display:inline-flex;font-size:11px;font-weight:500;gap:4px;padding:4px 8px;text-transform:uppercase}.badge-primary{background:#3b82f61a;color:var(--primary-color)}.badge-success{background:#10b9811a;color:var(--success-color)}.badge-danger{background:#ef44441a;color:var(--danger-color)}.badge-warning{background:#f59e0b1a;color:#92400e}.badge-info{background:#3b82f61a;color:var(--primary-color);color:var(--info-color,var(--primary-color))}.badge-neutral{background:var(--hover-bg);color:var(--text-secondary)}.pagination{justify-content:center}.pagination,.pagination-container{align-items:center;border-top:1px solid var(--border-color);display:flex;gap:16px;margin-top:24px;padding-top:16px}.pagination-container{justify-content:space-between}.pagination-info{color:var(--text-secondary);font-size:14px}.pagination-controls{align-items:center;display:flex;gap:8px}.pagination-btn{align-items:center;background:var(--card-bg);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);cursor:pointer;display:inline-flex;font-size:14px;height:36px;justify-content:center;transition:all .2s;width:36px}.pagination-btn:hover:not(:disabled){background:var(--hover-bg);border-color:var(--primary-color)}.pagination-btn:disabled{cursor:not-allowed;opacity:.5}.pagination-btn.active{background:var(--primary-color);border-color:var(--primary-color);color:#fff}.pagination-btn-text{padding:8px 12px;width:auto}.pagination-pages{align-items:center;display:flex;gap:4px}.pagination-page{align-items:center;background:#0000;border:1px solid #0000;border-radius:6px;color:var(--text-primary);cursor:pointer;display:inline-flex;font-size:14px;height:36px;justify-content:center;min-width:36px;padding:0 8px;transition:all .2s}.pagination-page:hover{background:var(--hover-bg)}.pagination-page.active{background:var(--primary-color);color:#fff}.pagination-ellipsis{color:var(--text-secondary);padding:0 4px}.pagination-size{align-items:center;color:var(--text-secondary);display:flex;font-size:14px;gap:8px}.pagination-size select{background:var(--card-bg);border:1px solid var(--border-color);border-radius:4px;cursor:pointer;font-size:14px;padding:6px 10px}.pagination-simple{align-items:center;display:flex;gap:16px}.pagination-simple .pagination-info{min-width:100px;text-align:center}@media (max-width:640px){.pagination-container{flex-direction:column;gap:12px}.pagination-pages{flex-wrap:wrap;justify-content:center}}.tab-container{border-radius:8px;flex-direction:column;overflow:hidden}.tab-container,.tab-navigation{background:var(--card-bg);display:flex}.tab-navigation{-webkit-overflow-scrolling:touch;border-bottom:1px solid var(--border-color);gap:0;overflow-x:auto;padding:0 16px}.tab-navigation::-webkit-scrollbar{display:none}.tab-navigation{-ms-overflow-style:none;scrollbar-width:none}.tab-button{align-items:center;background:#0000;border:none;border-bottom:3px solid #0000;color:var(--text-secondary);cursor:pointer;display:inline-flex;font-size:14px;font-weight:500;gap:8px;margin-bottom:-1px;padding:14px 20px;position:relative;transition:all .2s;white-space:nowrap}.tab-button:hover{background:var(--hover-bg);color:var(--text-primary)}.tab-button.active{border-bottom-color:var(--primary-color);color:var(--primary-color)}.tab-button:focus{outline:none}.tab-button:focus-visible{outline:2px solid var(--primary-color);outline-offset:-2px}.tab-button .tab-icon{flex-shrink:0}.tab-button .tab-badge{align-items:center;background:var(--hover-bg);border-radius:10px;color:var(--text-secondary);display:inline-flex;font-size:12px;font-weight:600;height:20px;justify-content:center;min-width:20px;padding:0 6px}.tab-button.active .tab-badge{background:#3b82f61a;color:var(--primary-color)}.tab-content{flex:1 1;min-height:0;overflow:auto}.tab-panel{padding:20px}.tab-panel[hidden]{display:none}.tab-navigation.tab-pills{background:var(--hover-bg);border-bottom:none;border-radius:8px;gap:4px;padding:4px;width:-webkit-fit-content;width:fit-content}.tab-pills .tab-button{border-bottom:none;border-radius:6px;margin-bottom:0;padding:8px 16px}.tab-pills .tab-button.active{background:var(--card-bg);box-shadow:0 1px 3px #0000001a}.tab-navigation.tab-compact{padding:0 12px}.tab-compact .tab-button{font-size:13px;padding:10px 14px}.tab-container.tab-vertical{flex-direction:row}.tab-vertical .tab-navigation{border-bottom:none;border-right:1px solid var(--border-color);flex-direction:column;min-width:180px;padding:12px 0}.tab-vertical .tab-button{border-bottom:none;border-left:3px solid #0000;margin-bottom:0;margin-right:-1px}.tab-vertical .tab-button.active{border-bottom-color:#0000;border-left-color:var(--primary-color)}@media (max-width:768px){.tab-button{font-size:13px;padding:12px 16px}.tab-button .tab-text{display:none}.tab-button .tab-icon{margin-right:0}.tab-button.active .tab-text{display:inline}.tab-container.tab-vertical{flex-direction:column}.tab-vertical .tab-navigation{border-bottom:1px solid var(--border-color);border-right:none;flex-direction:row;min-width:auto;overflow-x:auto}.tab-vertical .tab-button{border-bottom:3px solid #0000;border-left:none}.tab-vertical .tab-button.active{border-bottom-color:var(--primary-color);border-left-color:#0000}}.table-container{-webkit-overflow-scrolling:touch;overflow-x:auto;width:100%}.table{border-collapse:collapse;font-size:14px;width:100%}.table thead{background:#f9fafb;background:var(--table-header-bg,#f9fafb);border-bottom:1px solid var(--border-color)}.table th{color:var(--text-secondary);font-size:13px;font-weight:600;letter-spacing:.5px;padding:12px 16px;text-align:left;text-transform:uppercase;white-space:nowrap}.table th.sortable{cursor:pointer;transition:background .2s;-webkit-user-select:none;user-select:none}.table th.sortable:hover{background:var(--hover-bg)}.table th .sort-icon{margin-left:4px;opacity:.5;transition:opacity .2s}.table th.sorted .sort-icon{color:var(--primary-color);opacity:1}.table tbody tr{border-bottom:1px solid var(--border-color);transition:background .15s}.table tbody tr:last-child{border-bottom:none}.table tbody tr:hover{background:#f3f4f6;background:var(--table-hover-bg,#f3f4f6)}.table tbody tr.clickable{cursor:pointer}.table tbody tr.selected{background:#3b82f61a}.table tbody tr.selected:hover{background:#3b82f626}.table td{color:var(--text-primary);padding:14px 16px;vertical-align:middle}.table td.cell-truncate{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.table td.cell-nowrap{white-space:nowrap}.table td.cell-center{text-align:center}.table td.cell-right{text-align:right}.table td.cell-actions{text-align:right;white-space:nowrap}.table td.cell-checkbox{padding:14px 12px;width:40px}.table td.cell-primary{color:var(--text-primary);font-weight:500}.table td.cell-secondary{color:var(--text-secondary);font-size:13px}.table td.cell-numeric{font-family:SF Mono,Consolas,monospace;text-align:right}.table.table-compact td,.table.table-compact th{padding:8px 12px}.table.table-compact{font-size:13px}.table.table-striped tbody tr:nth-child(2n){background:var(--hover-bg)}.table.table-striped tbody tr:nth-child(2n):hover{background:var(--table-hover-bg)}.table.table-bordered{border:1px solid var(--border-color);border-radius:8px;overflow:hidden}.table.table-bordered td,.table.table-bordered th{border-right:1px solid var(--border-color)}.table.table-bordered td:last-child,.table.table-bordered th:last-child{border-right:none}.table-fixed-header{max-height:500px;overflow-y:auto}.table-fixed-header .table thead{background:#f9fafb;background:var(--table-header-bg,#f9fafb);position:-webkit-sticky;position:sticky;top:0;z-index:1}.table .action-buttons{display:flex;gap:4px;justify-content:flex-end}.table .action-btn{align-items:center;background:#0000;border:none;border-radius:4px;color:var(--text-secondary);cursor:pointer;display:inline-flex;height:32px;justify-content:center;padding:0;transition:all .2s;width:32px}.table .action-btn:hover{background:var(--hover-bg);color:var(--text-primary)}.table .action-btn.action-edit:hover{color:var(--primary-color)}.table .action-btn.action-delete:hover{color:var(--danger-color)}.table .action-btn.action-view:hover{color:var(--primary-color)}.table tfoot{background:#f9fafb;background:var(--table-header-bg,#f9fafb);border-top:1px solid var(--border-color)}.table tfoot td{font-weight:600}.table-empty{color:var(--text-secondary);padding:40px 20px;text-align:center}.table-empty-icon{margin-bottom:12px;opacity:.5}.table-empty-message{font-size:14px}@media (max-width:768px){.table.table-responsive thead{display:none}.table.table-responsive tbody tr{background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;display:block;margin-bottom:8px;padding:12px}.table.table-responsive td{align-items:center;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;padding:8px 0}.table.table-responsive td:last-child{border-bottom:none}.table.table-responsive td:before{color:var(--text-secondary);content:attr(data-label);font-size:12px;font-weight:600;text-transform:uppercase}.table.table-responsive td.cell-actions{justify-content:flex-end}.table.table-responsive td.cell-actions:before{display:none}}.card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;overflow:hidden}.card.card-elevated{border:none;box-shadow:0 1px 3px #0000001a}.card-header{align-items:center;background:var(--hover-bg);border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;padding:16px 20px}.card-header h2,.card-header h3,.card-header h4{color:var(--text-primary);font-size:16px;font-weight:600;margin:0}.card-header-actions{align-items:center;display:flex;gap:8px}.card-body{padding:20px}.card-body.card-body-compact{padding:16px}.card-body.card-body-flush{padding:0}.card-footer{background:var(--hover-bg);border-top:1px solid var(--border-color);display:flex;gap:12px;justify-content:flex-end;padding:16px 20px}.card-footer.card-footer-left{justify-content:flex-start}.card-footer.card-footer-between{justify-content:space-between}.card-footer.card-footer-center{justify-content:center}.card-title{color:var(--text-primary);font-size:18px;font-weight:600;margin:0 0 16px}.card-subtitle{color:var(--text-secondary);font-size:14px;margin:-12px 0 16px}.card-text{color:var(--text-primary);font-size:14px;line-height:1.6}.card-image{display:block;height:auto;width:100%}.card-image-top{border-radius:8px 8px 0 0}.card-divider{background:var(--border-color);height:1px;margin:16px 0}.card-list{list-style:none;margin:0;padding:0}.card-list-item{align-items:center;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;padding:12px 0}.card-list-item:last-child{border-bottom:none}.card-list-item-label{color:var(--text-secondary);font-size:14px}.card-list-item-value{color:var(--text-primary);font-size:14px;font-weight:500}.card.card-clickable{cursor:pointer;transition:all .2s}.card.card-clickable:hover{border-color:var(--primary-color);box-shadow:0 4px 12px #0000001a}.card.card-selectable{cursor:pointer;transition:all .2s}.card.card-selectable:hover{background:var(--hover-bg)}.card.card-selectable.selected{background:#3b82f60d;border-color:var(--primary-color)}.card.card-success{border-left:4px solid var(--success-color)}.card.card-warning{border-left:4px solid var(--warning-color)}.card.card-danger{border-left:4px solid var(--danger-color)}.card.card-info{border-left:4px solid var(--primary-color)}.card.card-compact .card-header{padding:12px 16px}.card.card-compact .card-body{padding:16px}.card.card-compact .card-footer{padding:12px 16px}.card-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.card-grid-2{grid-template-columns:repeat(2,1fr)}.card-grid-3{grid-template-columns:repeat(3,1fr)}.card-grid-4{grid-template-columns:repeat(4,1fr)}.card.card-stat{padding:20px;text-align:center}.card-stat-value{color:var(--text-primary);font-size:32px;font-weight:700;margin-bottom:4px}.card-stat-label{color:var(--text-secondary);font-size:14px;letter-spacing:.5px;text-transform:uppercase}.card-stat-change{align-items:center;display:flex;font-size:13px;gap:4px;justify-content:center;margin-top:8px}.card-stat-change.positive{color:var(--success-color)}.card-stat-change.negative{color:var(--danger-color)}.card.card-info-list .card-body{padding:0}.info-row{border-bottom:1px solid var(--border-color);display:flex;padding:12px 20px}.info-row:last-child{border-bottom:none}.info-label{color:var(--text-secondary);flex:0 0 140px;font-size:14px}.info-value{color:var(--text-primary);flex:1 1;font-size:14px;word-break:break-word}@media (max-width:768px){.card-grid-2,.card-grid-3,.card-grid-4{grid-template-columns:1fr}.card-header{align-items:flex-start;flex-direction:column;gap:12px}.card-header-actions{justify-content:flex-end;width:100%}.card-footer{flex-direction:column}.card-footer .btn{width:100%}.info-row{flex-direction:column;gap:4px}.info-label{flex:none;font-weight:600}}
/*# sourceMappingURL=main.27660199.css.map*/