.notification-toast{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;background:var(--bg-secondary);border:1px solid var(--border-base);border-radius:var(--radius-md);box-shadow:var(--shadow-md);min-width:300px;max-width:420px;animation:notification-slideIn .3s ease-out;position:relative}.notification-icon{font-size:16px;font-weight:700;flex-shrink:0;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:50%}.notification-success{border-left:3px solid var(--status-success)}.notification-success .notification-icon{background:var(--success-bg);color:var(--status-success)}.notification-error{border-left:3px solid var(--status-error)}.notification-error .notification-icon{background:var(--error-bg);color:var(--status-error)}.notification-warning{border-left:3px solid var(--status-warning)}.notification-warning .notification-icon{background:var(--warning-bg);color:var(--status-warning)}.notification-info{border-left:3px solid var(--accent-primary)}.notification-info .notification-icon{background:var(--accent-glow);color:var(--accent-primary)}.notification-content{flex:1;min-width:0}.notification-message{font-size:14px;color:var(--text-primary);line-height:1.5;word-break:break-word}.notification-close{background:transparent;border:none;color:var(--text-muted);font-size:18px;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-xs);transition:color var(--transition-fast),background var(--transition-fast);font-weight:400;flex-shrink:0}.notification-close:hover{color:var(--text-primary);background:var(--bg-hover)}.notification-container{position:fixed;top:20px;right:20px;display:flex;flex-direction:column;gap:10px;z-index:var(--z-notification, 7000);pointer-events:none}.notification-container>*{pointer-events:auto}.btn-primary{padding:10px 20px;background:var(--accent-primary);color:#fff;border:none;border-radius:var(--radius-sm);font-size:14px;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:background var(--transition-fast),box-shadow var(--transition-fast);white-space:nowrap;line-height:1.4}.btn-primary:hover{background:var(--accent-primary-hover)}.btn-primary:active{transform:translateY(.5px)}.btn-primary:disabled{opacity:var(--disabled-opacity);cursor:not-allowed;pointer-events:none}.btn-primary .btn-icon{color:inherit;flex-shrink:0;width:16px;height:16px}.btn-primary.btn-small{padding:6px 14px;font-size:13px}.btn-primary.btn-small .btn-icon{width:14px;height:14px}.btn-secondary{padding:10px 20px;background:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border-base);border-radius:var(--radius-sm);font-size:14px;font-weight:500;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:background var(--transition-fast),border-color var(--transition-fast);white-space:nowrap;line-height:1.4}.btn-secondary:hover{background:var(--bg-hover);border-color:var(--border-hover)}.btn-secondary:active{transform:translateY(.5px)}.btn-secondary:disabled{opacity:var(--disabled-opacity);cursor:not-allowed;pointer-events:none}.btn-secondary .btn-icon{flex-shrink:0;width:16px;height:16px;color:var(--text-secondary)}.btn-secondary.btn-small{padding:6px 14px;font-size:13px}.btn-secondary.btn-small .btn-icon{width:14px;height:14px}.btn-danger{padding:10px 20px;background:none;color:var(--error);border:1px solid var(--error);border-radius:var(--radius-sm);font-size:14px;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:background var(--transition-fast),color var(--transition-fast);white-space:nowrap;line-height:1.4}.btn-danger:hover{background:var(--error);color:#fff}.btn-danger:disabled{opacity:var(--disabled-opacity);cursor:not-allowed;pointer-events:none;background:var(--bg-tertiary);color:var(--text-muted);border-color:var(--border-base)}.btn-danger:disabled:hover{background:var(--bg-tertiary);border-color:var(--border-base);color:var(--text-muted)}.btn-danger .btn-icon{flex-shrink:0;width:16px;height:16px}.btn-danger.btn-small{padding:6px 14px;font-size:13px}.btn-success{padding:10px 20px;background:var(--color-success-500);color:#fff;border:none;border-radius:var(--radius-sm);font-size:14px;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:background var(--transition-fast);white-space:nowrap;line-height:1.4}.btn-success:hover{background:var(--color-success-600)}.btn-success:disabled{opacity:var(--disabled-opacity);cursor:not-allowed;pointer-events:none}.btn-success .btn-icon{flex-shrink:0;width:16px;height:16px}.btn-success.btn-small{padding:6px 14px;font-size:13px}.btn-text{background:none;border:none;color:var(--accent-primary);cursor:pointer;font-size:13px;font-weight:500;padding:4px 8px;border-radius:var(--radius-xs);transition:background var(--transition-fast),color var(--transition-fast);display:inline-flex;align-items:center;gap:6px;line-height:1.4}.btn-text:hover{background:var(--accent-bg);color:var(--link-hover)}.btn-text:disabled{opacity:var(--disabled-opacity);cursor:not-allowed;pointer-events:none}.btn-text .btn-icon{flex-shrink:0;width:14px;height:14px}.form-group{margin-bottom:18px}.form-group:last-of-type{margin-bottom:24px}.form-group label{display:block;font-size:13px;font-weight:500;color:var(--text-primary);margin-bottom:6px}.form-input,.form-textarea,.form-select{width:100%;padding:9px 12px;border:1px solid var(--border-base);border-radius:var(--radius-sm);font-size:14px;color:var(--text-primary);background:var(--input-bg);transition:border-color var(--transition-fast),box-shadow var(--transition-fast);line-height:1.4}.form-input:focus,.form-textarea:focus,.form-select:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 3px var(--accent-glow)}.form-input::placeholder,.form-textarea::placeholder{color:var(--text-muted)}.form-input:disabled,.form-textarea:disabled,.form-select:disabled{opacity:var(--disabled-opacity);cursor:not-allowed}.form-input.invalid,.form-textarea.invalid,.form-select.invalid{border-color:var(--error)}.form-input.invalid:focus,.form-textarea.invalid:focus,.form-select.invalid:focus{box-shadow:0 0 0 3px var(--error-bg)}.form-textarea{resize:vertical;min-height:80px}.form-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:9px 28px 9px 12px;background-color:var(--input-bg);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 20 20' fill='%2364748b'%3E%3Cpath fill-rule='evenodd' d='M5.23 7.21a.75.75 0 011.06.02L10 11.168l3.71-3.938a.75.75 0 111.08 1.04l-4.25 4.5a.75.75 0 01-1.08 0l-4.25-4.5a.75.75 0 01.02-1.06z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 8px center;background-size:14px 14px;cursor:pointer}.field-hint{font-size:12px;color:var(--text-secondary);margin:6px 0 0;line-height:1.4}.field-error{font-size:12px;color:var(--error);margin:6px 0 0;line-height:1.4}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:var(--z-modal, 6000);padding:20px;animation:modal-fadeIn .2s ease}.modal-content{background:var(--bg-secondary);border:1px solid var(--border-base);border-radius:var(--radius-lg);width:100%;max-width:500px;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-modal);animation:modal-slideUp .2s ease;display:flex;flex-direction:column}.modal-content--wide{max-width:700px}.modal-content--narrow{max-width:440px}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:18px 24px;border-bottom:1px solid var(--border-base);flex-shrink:0}.modal-header h3,.modal-header h4{margin:0;font-size:16px;font-weight:600;color:var(--text-primary);line-height:1.3}.modal-close{background:none;border:none;font-size:20px;line-height:1;color:var(--text-muted);cursor:pointer;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);transition:background var(--transition-fast),color var(--transition-fast);flex-shrink:0}.modal-close:hover{background:var(--bg-hover);color:var(--text-primary)}.modal-body{padding:24px;flex:1;overflow-y:auto}.modal-description{margin:0 0 16px;color:var(--text-secondary);font-size:14px;line-height:1.6}.modal-warning{margin:0 0 16px;padding:12px;background:var(--warning-bg);border:1px solid var(--warning);border-radius:var(--radius-sm);color:var(--text-primary);font-size:14px;line-height:1.5}.modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid var(--border-base);flex-shrink:0}.modal-footer-actions{display:flex;align-items:center;gap:10px;margin-left:auto;flex-shrink:0}.status-badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:var(--radius-full);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;line-height:1.5;white-space:nowrap}.status-badge-success{background:color-mix(in srgb,var(--success) 14%,transparent);color:var(--success)}.status-badge-warning{background:color-mix(in srgb,var(--warning) 14%,transparent);color:var(--warning)}.status-badge-error{background:color-mix(in srgb,var(--error) 14%,transparent);color:var(--error)}.status-badge-info{background:color-mix(in srgb,var(--info) 14%,transparent);color:var(--info)}.status-badge-pending{background:color-mix(in srgb,var(--warning) 10%,transparent);color:var(--warning)}.status-badge-neutral{background:var(--bg-tertiary);color:var(--text-secondary)}.status-badge-inactive,.status-badge-in-progress{background:color-mix(in srgb,var(--accent-primary) 10%,transparent);color:var(--accent-secondary)}.info-tooltip-wrapper{position:relative;display:inline-flex;align-items:center;margin-left:6px;vertical-align:middle}.info-tooltip-trigger{display:inline-flex;align-items:center;min-width:0;border-radius:6px;outline:none}.info-tooltip-trigger:focus-visible{box-shadow:0 0 0 2px color-mix(in srgb,var(--accent-primary) 22%,transparent)}.info-icon-btn{all:unset;display:inline-flex;align-items:center;cursor:help;border-radius:50%;font-family:inherit}.info-icon-btn:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.info-icon{color:var(--text-muted);flex-shrink:0;transition:color .15s ease;display:block}.info-icon-btn:hover .info-icon,.info-icon-btn:focus-visible .info-icon{color:var(--accent-primary)}.info-tooltip{padding:10px 14px;background:var(--card-bg, var(--bg-secondary));border:1px solid var(--border-base);border-radius:10px;box-shadow:var(--shadow-lg, 0 12px 32px rgba(15, 23, 42, .18));font-size:12px;color:var(--text-primary);line-height:1.45;white-space:normal;max-width:min(320px,calc(100vw - 24px));min-width:220px;z-index:var(--z-notification, 7000);pointer-events:none;word-wrap:break-word;font-weight:400;letter-spacing:0}.info-tooltip:before{content:"";position:absolute;left:var(--info-tooltip-arrow-left, 50%);transform:translate(-50%);border:6px solid transparent}.info-tooltip--top:before{top:100%;border-top-color:var(--card-bg, var(--bg-secondary))}.info-tooltip--bottom:before{bottom:100%;border-bottom-color:var(--card-bg, var(--bg-secondary))}.tabs{display:flex;flex-direction:column}.tabs-list{display:flex;gap:0;border-bottom:1px solid var(--border-base);padding:0 24px;overflow-x:auto}.tab-trigger{padding:12px 16px;background:none;border:none;border-bottom:2px solid transparent;color:var(--text-secondary);font-size:13.5px;font-weight:500;cursor:pointer;transition:color var(--transition-fast),border-color var(--transition-fast);white-space:nowrap;position:relative}.tab-trigger:hover{color:var(--text-primary)}.tab-trigger.active{color:var(--text-primary);border-bottom-color:var(--accent-primary);font-weight:600}.tab-trigger:disabled{color:var(--text-disabled);cursor:not-allowed}.tab-badge{display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:600;padding:0 7px;min-width:20px;min-height:20px;border-radius:6px;margin-left:8px;background:var(--bg-tertiary);color:var(--text-secondary);border:1px solid var(--border-base);line-height:1;font-variant-numeric:tabular-nums}.tab-content{padding:24px}.card{background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--card-radius);box-shadow:var(--shadow-sm);overflow:hidden}.card-flat{background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--card-radius);overflow:hidden}.card-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border-base);gap:12px}.card-header-text{display:flex;flex-direction:column;gap:2px;min-width:0}.card-header h3{font-size:15px;font-weight:600;color:var(--text-primary);margin:0;line-height:1.3}.card-description{font-size:12px;color:var(--text-secondary);margin:0;line-height:1.4}.card-body{padding:20px}.card-footer{padding:16px 20px;border-top:1px solid var(--border-base)}.section-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}.empty-state{display:flex;flex-direction:column;align-items:center;text-align:center;padding:64px 40px;background:var(--bg-secondary);border:1px solid var(--border-base);border-radius:var(--radius-lg)}.empty-state-icon{font-size:48px;color:var(--text-muted);margin-bottom:16px;opacity:.4}.empty-state h3{font-size:18px;font-weight:600;color:var(--text-primary);margin:0 0 8px;line-height:1.3}.empty-state p{font-size:14px;color:var(--text-secondary);max-width:400px;margin:0 0 24px;line-height:1.6}.skeleton{position:relative;overflow:hidden;background:var(--bg-secondary);border-radius:var(--radius-md)}.skeleton:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,transparent 0%,var(--bg-hover) 50%,transparent 100%);background-size:200% 100%;animation:statShimmer 1.5s ease-in-out infinite}.skeleton-text{height:14px;border-radius:var(--radius-xs);margin-bottom:8px}.skeleton-text:last-child{width:60%}.skeleton-heading{height:22px;border-radius:var(--radius-xs);margin-bottom:12px;width:40%}.skeleton-card{height:120px;border-radius:var(--radius-lg)}.skeleton-stat{height:48px;width:100px;border-radius:var(--radius-md)}.skeleton-row{height:42px;border-radius:var(--radius-sm);margin-bottom:4px}.data-table{width:100%;border-collapse:collapse;font-size:13.5px}.data-table th{text-align:left;padding:10px 16px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);background:var(--table-header-a);border-bottom:1px solid var(--border-base);white-space:nowrap;position:sticky;top:0;z-index:var(--z-base)}.data-table td{padding:11px 16px;color:var(--text-primary);border-bottom:1px solid var(--border-base);vertical-align:middle}.data-table tbody tr{transition:background var(--transition-fast)}.data-table tbody tr:hover{background:var(--bg-hover)}.data-table tbody tr:last-child td{border-bottom:none}.data-table-wrapper{background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--card-radius);overflow:hidden}.data-table-wrapper .data-table th:first-child,.data-table-wrapper .data-table td:first-child{padding-left:20px}.data-table-wrapper .data-table th:last-child,.data-table-wrapper .data-table td:last-child{padding-right:20px}.th-sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:color var(--transition-fast)}.th-sortable:hover{color:var(--text-primary)}.sort-indicator{display:inline-block;margin-left:4px;font-size:10px;color:var(--text-muted)}.sort-indicator.active{color:var(--accent-primary)}.checkbox-wrapper{display:inline-flex;align-items:center;gap:8px;cursor:pointer}.checkbox-wrapper.disabled{opacity:var(--disabled-opacity);cursor:not-allowed}.checkbox-input{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:var(--bg-primary);margin:0;padding:1px;width:16px;height:16px;position:relative;border-radius:4px;border:2px solid var(--border-base);transition:border-color var(--transition-fast);cursor:inherit;flex-shrink:0}.checkbox-input:checked{border-color:var(--accent-primary)}.checkbox-input:before{content:"";width:calc(100% - 2px);height:calc(100% - 2px);position:absolute;top:1px;left:1px;transform:scale(0);transition:transform .15s ease-in-out;background:var(--accent-primary);border-radius:2px}.checkbox-input:checked:before{transform:scale(1)}.checkbox-input:disabled{opacity:var(--disabled-opacity)}.checkbox-label{font-size:14px;color:var(--text-primary);-webkit-user-select:none;user-select:none;line-height:1.4}.toggle-wrapper{display:inline-flex;align-items:center;gap:8px;cursor:pointer}.toggle-wrapper.disabled{opacity:var(--disabled-opacity);cursor:not-allowed}.toggle-track{position:relative;width:36px;height:20px;background:var(--border-base);border-radius:var(--radius-full);transition:background var(--transition-fast);cursor:inherit;flex-shrink:0}.toggle-track.active{background:var(--accent-primary)}.toggle-thumb{position:absolute;top:2px;left:2px;width:16px;height:16px;background:var(--color-white-always);border-radius:50%;transition:transform var(--transition-fast);box-shadow:0 1px 3px #0003}.toggle-track.active .toggle-thumb{transform:translate(16px)}.toggle-input{position:absolute;opacity:0;width:0;height:0}.toggle-label{font-size:14px;color:var(--text-primary);-webkit-user-select:none;user-select:none;line-height:1.4}.number-slider{display:flex;align-items:center;gap:10px}.number-slider__title{font-size:12px;font-weight:500;color:var(--text-secondary);white-space:nowrap;min-width:80px}.number-slider__title--top{display:block;margin-bottom:4px}.number-slider__track-wrapper{flex:1;display:flex;align-items:center;min-width:80px}.number-slider__input{width:100%;height:6px;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:var(--radius-full);background:linear-gradient(to right,var(--accent-primary) 0%,var(--accent-primary) var(--slider-pct, 50%),var(--bg-tertiary) var(--slider-pct, 50%),var(--bg-tertiary) 100%);outline:none;cursor:pointer;transition:opacity var(--transition-fast)}.number-slider__input:disabled{opacity:var(--disabled-opacity);cursor:not-allowed}.number-slider__input::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:16px;height:16px;border-radius:50%;background:var(--accent-primary);border:2px solid var(--bg-primary);box-shadow:var(--shadow-sm);cursor:pointer;transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.number-slider__input::-webkit-slider-thumb:hover{transform:scale(1.15);box-shadow:0 0 0 4px var(--accent-bg)}.number-slider__input::-moz-range-thumb{width:16px;height:16px;border-radius:50%;background:var(--accent-primary);border:2px solid var(--bg-primary);box-shadow:var(--shadow-sm);cursor:pointer}.number-slider__label{font-size:12px;font-weight:600;color:var(--text-primary);font-variant-numeric:tabular-nums;min-width:40px;text-align:right;white-space:nowrap}.number-slider__label--bottom{display:block;text-align:center;margin-top:4px}.range-slider{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;gap:6px}.range-slider__label{font-size:12px;font-weight:500;color:var(--text-secondary);white-space:nowrap}.range-slider__input{width:100%;height:6px;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:var(--radius-full);background:linear-gradient(to right,var(--range-slider-color, var(--accent-primary)) 0%,var(--range-slider-color, var(--accent-primary)) var(--slider-pct, 50%),var(--bg-tertiary) var(--slider-pct, 50%),var(--bg-tertiary) 100%);outline:none;cursor:pointer;transition:opacity var(--transition-fast)}.range-slider__input:disabled{opacity:var(--disabled-opacity);cursor:not-allowed}.range-slider__input::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:18px;height:18px;border-radius:var(--radius-sm);background:var(--range-slider-color, var(--accent-primary));border:2px solid var(--bg-primary);box-shadow:var(--shadow-sm);cursor:pointer;transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.range-slider__input::-webkit-slider-thumb:hover{transform:scale(1.15);box-shadow:0 0 0 4px var(--accent-bg)}.range-slider__input::-moz-range-thumb{width:18px;height:18px;border-radius:var(--radius-sm);background:var(--range-slider-color, var(--accent-primary));border:2px solid var(--bg-primary);box-shadow:var(--shadow-sm);cursor:pointer}.range-slider__ticks{display:flex;justify-content:space-between;width:100%;padding:0 2px}.range-slider__tick{font-size:11px;font-weight:600;color:var(--text-secondary);white-space:nowrap}.dual-range-slider{display:flex;align-items:center;gap:10px}.dual-range-slider__title{font-size:12px;font-weight:500;color:var(--text-secondary);white-space:nowrap;min-width:80px}.dual-range-slider__value{font-size:12px;font-weight:600;color:var(--text-primary);font-variant-numeric:tabular-nums;min-width:40px;white-space:nowrap}.dual-range-slider__value--lower{text-align:right}.dual-range-slider__value--upper{text-align:left}.dual-range-slider__track{position:relative;flex:1;height:6px;min-width:80px;border-radius:var(--radius-full);background:var(--bg-tertiary)}.dual-range-slider__fill{position:absolute;top:0;height:100%;background:var(--accent-primary);border-radius:var(--radius-full);pointer-events:none}.dual-range-slider__input{position:absolute;top:50%;left:0;transform:translateY(-50%);width:100%;height:6px;margin:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;outline:none;cursor:pointer;pointer-events:none}.dual-range-slider__input:disabled{cursor:not-allowed}.dual-range-slider__input::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:16px;height:16px;border-radius:50%;background:var(--accent-primary);border:2px solid var(--bg-primary);box-shadow:var(--shadow-sm);cursor:pointer;pointer-events:all;position:relative;z-index:1;transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.dual-range-slider__input::-webkit-slider-thumb:hover{transform:scale(1.15);box-shadow:0 0 0 4px var(--accent-bg)}.dual-range-slider__input:disabled::-webkit-slider-thumb{opacity:var(--disabled-opacity);cursor:not-allowed}.dual-range-slider__input::-moz-range-thumb{width:16px;height:16px;border-radius:50%;background:var(--accent-primary);border:2px solid var(--bg-primary);box-shadow:var(--shadow-sm);cursor:pointer;pointer-events:all;position:relative;z-index:1}.dual-range-slider__input:disabled::-moz-range-thumb{opacity:var(--disabled-opacity);cursor:not-allowed}.dual-range-slider__input::-webkit-slider-thumb:active{z-index:2}.dual-range-slider__input::-moz-range-thumb:active{z-index:2}.expansion-panel{width:100%;overflow:hidden;border-radius:var(--radius-lg);transition:height .3s ease}.expansion-panel--collapsed{height:0}.expansion-panel--no-animate{transition:none}.expansion-panel__inner{width:100%}.simple-gauge{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.simple-gauge__dial{border-radius:50%;text-align:center;font-weight:600;color:var(--text-primary);background:radial-gradient(var(--gauge-bg, var(--bg-primary)) 0 var(--gauge-cutout, 50%),transparent var(--gauge-cutout, 50%) 100%),conic-gradient(from -135deg,var(--gauge-color, var(--accent-primary)) calc(270deg * var(--gauge-value, 0)),var(--bg-tertiary) calc(270deg * var(--gauge-value, 0)) 270deg,transparent 270deg)}.pie-indicator{width:100%;height:100%;aspect-ratio:1}.pie-indicator svg{width:100%;height:100%}.trend-indicator{position:relative;width:100%;height:100%}.trend-indicator figure{width:100%;height:100%;position:relative;margin:0;max-height:100%}.trend-indicator__tooltip{position:absolute;z-index:var(--z-dropdown);opacity:0;transform:scale(0);pointer-events:none;background:var(--chart-tooltip-bg);border:1px solid var(--chart-tooltip-border);border-radius:var(--radius-sm);padding:4px 6px;color:var(--chart-tooltip-text);font-size:11px;line-height:1.3;white-space:nowrap;transition:opacity .15s ease,transform .15s ease}.trend-indicator__tooltip--visible{opacity:1;transform:scale(1)}.form-error{font-size:12px;font-weight:300;color:var(--status-error);white-space:pre-line;line-height:1.4;margin-top:4px}input.numeric-input{color:var(--text-primary);background-color:var(--input-bg);-webkit-appearance:none;-moz-appearance:none;appearance:none;color-scheme:light dark}[data-theme=light] input.numeric-input{color-scheme:light}.numeric-input::-webkit-inner-spin-button,.numeric-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.app-sidebar{width:var(--sidebar-width, 220px);height:100vh;background:var(--sidebar-bg, var(--bg-secondary));border-right:1px solid var(--border-base);display:flex;flex-direction:column;position:fixed;left:0;top:0;overflow-y:auto;overflow-x:hidden;z-index:100;transition:width .2s ease}.sidebar-logo{padding:0 16px;display:flex;align-items:center;gap:10px;height:var(--header-height);border-bottom:1px solid var(--border-base);flex-shrink:0}.logo-icon-img{height:28px;width:auto;flex-shrink:0}.logo-text-img{height:16px;width:auto;flex-shrink:0;overflow:hidden}.sidebar-nav{flex:1;padding:8px 0;overflow-y:auto;overflow-x:hidden}.nav-section{margin-bottom:0;border-top:1px solid var(--border-base);padding:8px 0}.nav-section:first-of-type{border-top:none}.nav-section-divider{padding:6px 20px 4px;display:flex;align-items:center;justify-content:space-between}.nav-section-label{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted)}.nav-section-add-btn{display:flex;align-items:center;justify-content:center;width:18px;height:18px;border:none;background:none;color:var(--text-muted);cursor:pointer;border-radius:4px;padding:0;font-size:14px;transition:color .15s,background .15s}.nav-section-add-btn:hover{color:var(--color-primary);background:var(--bg-hover)}.nav-item{width:100%;display:flex;align-items:center;gap:12px;padding:9px 20px;background:none;border:none;color:var(--text-secondary);font-size:13.5px;font-weight:450;text-align:left;cursor:pointer;transition:all .15s ease;position:relative;white-space:nowrap;overflow:hidden}.nav-icon{width:18px;height:18px;flex-shrink:0;display:block;color:var(--text-secondary);transition:color .15s ease}.nav-item:hover{background:var(--bg-hover);color:var(--text-primary)}.nav-item:hover .nav-icon{color:var(--text-primary)}.nav-item.active{color:var(--text-primary);background:var(--bg-hover);font-weight:600}.nav-item.active .nav-icon{color:var(--accent-primary)}.nav-item.active:before{content:"";position:absolute;left:0;top:4px;bottom:4px;width:3px;background:var(--accent-primary);border-radius:0 2px 2px 0}.nav-item .nav-label{flex:1;overflow:hidden;text-overflow:ellipsis}.nav-badge{background:var(--bg-tertiary);color:var(--text-secondary);border:1px solid var(--border-base);font-size:11px;font-weight:500;padding:0 7px;border-radius:6px;margin-left:auto;min-width:20px;min-height:20px;display:inline-flex;align-items:center;justify-content:center;line-height:1;font-variant-numeric:tabular-nums}.nav-badge-attention{background:var(--accent-bg);color:var(--accent-primary);border-color:var(--accent-primary);font-weight:700}.sidebar-bottom{border-top:1px solid var(--border-base);padding:12px;display:flex;flex-direction:column;gap:10px;flex-shrink:0}.sidebar-user-card{display:flex;align-items:center;gap:10px;padding:6px 8px;border-radius:var(--radius-md);transition:background var(--transition-fast)}.user-avatar{width:32px;height:32px;border-radius:var(--radius-full);background:var(--accent-primary);color:#fff;font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0;letter-spacing:-.02em}.user-card-details{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px;overflow:hidden}.user-card-row{display:flex;align-items:center;gap:6px}.user-card-name{font-size:13px;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-card-role{font-size:9px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;padding:1px 5px;border-radius:var(--radius-full);background:var(--bg-tertiary);color:var(--text-muted);flex-shrink:0;line-height:1.5}.user-card-role.admin{background:var(--accent-bg);color:var(--accent-primary)}.user-card-email{font-size:11px;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-controls{display:flex;align-items:center;gap:4px}.sidebar-ctrl-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;padding:0;background:none;border:1px solid transparent;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;transition:all var(--transition-fast);flex-shrink:0}.sidebar-ctrl-btn:hover{background:var(--bg-hover);color:var(--text-primary);border-color:var(--border-base)}.sidebar-ctrl-btn.collapse-btn{margin-left:auto}.ctrl-icon{width:18px;height:18px;display:block}.app-sidebar.collapsed{overflow-x:hidden}.app-sidebar.collapsed .logo-text-img,.app-sidebar.collapsed .nav-label,.app-sidebar.collapsed .nav-badge,.app-sidebar.collapsed .nav-section-divider{display:none}.app-sidebar.collapsed .sidebar-logo{justify-content:center;padding:0}.app-sidebar.collapsed .nav-item{justify-content:center;padding:10px 0;width:100%}.app-sidebar.collapsed .nav-item.active:before{top:6px;bottom:6px}.app-sidebar.collapsed .sidebar-bottom{padding:8px;align-items:center}.app-sidebar.collapsed .sidebar-user-card{justify-content:center;padding:4px}.app-sidebar.collapsed .user-card-details{display:none}.app-sidebar.collapsed .sidebar-controls{flex-direction:column}.app-sidebar.collapsed .sidebar-ctrl-btn.collapse-btn{margin-left:0}.app-sidebar::-webkit-scrollbar{width:4px}.app-sidebar::-webkit-scrollbar-track{background:transparent}.app-sidebar::-webkit-scrollbar-thumb{background:var(--border-base);border-radius:2px}.app-sidebar::-webkit-scrollbar-thumb:hover{background:var(--border-hover)}.maintenance-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10000;display:flex;align-items:center;justify-content:center;padding:24px;background:color-mix(in srgb,var(--bg-primary, #0f1118) 76%,transparent);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.maintenance-overlay__panel{width:min(100%,512px);padding:46px 32px;border-radius:8px;border:1px solid var(--border-base, #292c38);background:var(--bg-secondary, #141720);box-shadow:0 24px 60px #0000005c;text-align:center}.maintenance-overlay__icon{width:44px;height:44px;margin-bottom:16px;color:var(--warning, #ffb300)}.maintenance-overlay__title{margin:0 0 10px;color:var(--text-primary, #f4f5f7);font-size:24px;font-weight:700;letter-spacing:0}.maintenance-overlay__message{margin:0;color:var(--text-secondary, #c4c8d0);font-size:15px;line-height:1.5}@media (max-width: 560px){.maintenance-overlay{padding:16px}.maintenance-overlay__panel{padding:28px 20px}.maintenance-overlay__title{font-size:21px}}.login-page{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;width:100%;background:var(--bg-primary);color:var(--text-primary);padding:24px}.login-logo{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;margin-bottom:56px;margin-top:8px;width:100%}.login-logo-icon{height:48px;width:auto;flex-shrink:0}.login-logo-text{height:22px;width:auto;flex-shrink:0}.login-card{display:flex;flex-direction:column;align-items:center;position:relative;overflow:hidden;width:420px;max-width:100%;padding:32px 32px 20px;background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);animation:fadeIn .3s ease}.login-card.wide{width:540px}.card-accent{position:absolute;top:0;left:0;right:0;height:3px;background:var(--brand-gradient)}.login-heading{font-size:18px;font-weight:600;color:var(--text-primary);margin-bottom:20px;text-align:center;width:100%}.login-form{width:100%;display:flex;flex-direction:column;gap:4px}.login-form label{font-size:13px;font-weight:500;color:var(--text-primary);margin-bottom:4px;margin-top:12px}.login-form label:first-of-type{margin-top:0}.login-input{width:100%;padding:9px 12px;border:1px solid var(--border-base);border-radius:var(--radius-sm);font-size:14px;color:var(--text-primary);background:var(--input-bg);transition:border-color var(--transition-fast),box-shadow var(--transition-fast);line-height:1.4}.login-input:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 3px var(--accent-glow)}.login-input::placeholder{color:var(--text-muted)}.login-submit{margin-top:20px}.login-submit button,.login-submit .btn-primary{width:100%}.forgot-link{margin-top:16px}.input-with-toggle{position:relative;width:100%}.input-with-toggle .login-input{padding-right:44px}.show-hide-btn{position:absolute;right:4px;top:50%;transform:translateY(-50%);background:none;border:none;color:var(--text-muted);cursor:pointer;padding:4px 8px;border-radius:var(--radius-xs);transition:color var(--transition-fast);display:flex;align-items:center}.show-hide-btn:hover{color:var(--text-primary)}.login-error{width:100%;padding:10px 12px;margin-top:12px;background:var(--error-bg);border:1px solid var(--error);border-radius:var(--radius-sm);color:var(--text-primary);font-size:13px;text-align:center}.mfa-instructions{width:100%;padding:0 0 16px 20px;margin:0 0 16px;border-bottom:1px solid var(--border-base);color:var(--text-secondary);font-size:13px;line-height:1.7}.mfa-instructions li{margin-bottom:8px}.mfa-instructions a{color:var(--accent-primary);text-decoration:none}.mfa-instructions a:hover{color:var(--accent-primary-hover);text-decoration:underline}.code-copy-row{display:flex;gap:8px;width:100%;margin-bottom:12px}.code-copy-row .login-input{flex:1;font-family:var(--font-mono);font-size:12px}.copy-button{padding:8px 12px;background:var(--bg-tertiary);border:1px solid var(--border-base);border-radius:var(--radius-sm);color:var(--text-primary);cursor:pointer;transition:background var(--transition-fast);display:flex;align-items:center}.copy-button:hover{background:var(--bg-hover)}.validation-hint{font-size:11px;color:var(--text-muted);margin-top:4px;line-height:1.4}.mfa-qr-container{display:flex;justify-content:center;align-items:center;padding:20px;margin-bottom:12px;background:var(--bg-tertiary);border-radius:var(--radius-md);border:1px solid var(--border-base)}.divider{width:100%;height:1px;background:var(--border-base);margin:16px 0}:root,[data-theme=dark],.dark{--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;--font-mono: "SF Mono", "Fira Code", "Fira Mono", "Roboto Mono", "Courier New", monospace;--color-white: #1c1d1f;--color-white-always: #ffffff;--color-black: #f8f9fa;--color-grapefruit-pink-50: #ffe5e6;--color-grapefruit-pink-100: #ffcccd;--color-grapefruit-pink-200: #ff999b;--color-grapefruit-pink-300: #ff6669;--color-grapefruit-pink-400: #ff3336;--color-grapefruit-pink-500: #ff0004;--color-grapefruit-pink-600: #cc0003;--color-grapefruit-pink-700: #990003;--color-grapefruit-pink-800: #660002;--color-grapefruit-pink-900: #330001;--color-grapefruit-pink-950: #240001;--color-dark-magenta-50: #f8ecf8;--color-dark-magenta-100: #f2d9f1;--color-dark-magenta-200: #e4b4e4;--color-dark-magenta-300: #d78ed6;--color-dark-magenta-400: #ca68c8;--color-dark-magenta-500: #bd42bb;--color-dark-magenta-600: #973595;--color-dark-magenta-700: #712870;--color-dark-magenta-800: #4b1b4b;--color-dark-magenta-900: #260d25;--color-dark-magenta-950: #1a091a;--color-porcelain-50: #f2f4f0;--color-porcelain-100: #e6e9e2;--color-porcelain-200: #ccd4c4;--color-porcelain-300: #b3bea7;--color-porcelain-400: #99a88a;--color-porcelain-500: #80936c;--color-porcelain-600: #667557;--color-porcelain-700: #4d5841;--color-porcelain-800: #333b2b;--color-porcelain-900: #1a1d16;--color-porcelain-950: #12150f;--color-yale-blue-50: #e5f9ff;--color-yale-blue-100: #ccf2ff;--color-yale-blue-200: #99e6ff;--color-yale-blue-300: #66d9ff;--color-yale-blue-400: #33ccff;--color-yale-blue-500: #00bfff;--color-yale-blue-600: #0099cc;--color-yale-blue-700: #007399;--color-yale-blue-800: #004d66;--color-yale-blue-900: #002633;--color-yale-blue-950: #001b24;--color-pacific-blue-50: #ebf8fa;--color-pacific-blue-100: #d7f1f4;--color-pacific-blue-200: #afe2e9;--color-pacific-blue-300: #87d4de;--color-pacific-blue-400: #5fc6d3;--color-pacific-blue-500: #37b7c8;--color-pacific-blue-600: #2c93a0;--color-pacific-blue-700: #216e78;--color-pacific-blue-800: #164950;--color-pacific-blue-900: #0b2528;--color-pacific-blue-950: #081a1c;--color-amber-honey-50: #fff7e5;--color-amber-honey-100: #fff0cc;--color-amber-honey-200: #ffe099;--color-amber-honey-300: #ffd166;--color-amber-honey-400: #ffc233;--color-amber-honey-500: #ffb300;--color-amber-honey-600: #cc8f00;--color-amber-honey-700: #996b00;--color-amber-honey-800: #664700;--color-amber-honey-900: #332400;--color-amber-honey-950: #241900;--color-turquoise-50: #eafaf6;--color-turquoise-100: #d5f6ee;--color-turquoise-200: #acecdc;--color-turquoise-300: #82e3cb;--color-turquoise-400: #59d9b9;--color-turquoise-500: #2fd0a8;--color-turquoise-600: #26a686;--color-turquoise-700: #1c7d65;--color-turquoise-800: #135343;--color-turquoise-900: #092a22;--color-turquoise-950: #071d17;--color-jet-black-50: #eff3f5;--color-jet-black-100: #e0e7eb;--color-jet-black-200: #c1cfd7;--color-jet-black-300: #a2b8c3;--color-jet-black-400: #83a0af;--color-jet-black-500: #63889c;--color-jet-black-600: #506d7c;--color-jet-black-700: #3c525d;--color-jet-black-800: #28363e;--color-jet-black-900: #141b1f;--color-jet-black-950: #0e1316;--color-bright-snow-50: #f2f4f0;--color-bright-snow-100: #e6e9e2;--color-bright-snow-200: #ccd3c5;--color-bright-snow-300: #b3bda8;--color-bright-snow-400: #99a78b;--color-bright-snow-500: #80916e;--color-bright-snow-600: #667458;--color-bright-snow-700: #4d5742;--color-bright-snow-800: #333a2c;--color-bright-snow-900: #1a1d16;--color-bright-snow-950: #12140f;--grey-50: #f8f9fa;--grey-100: #f1f3f5;--grey-200: #e9ecef;--grey-300: #dee2e6;--grey-400: #ced4da;--grey-500: #adb5bd;--grey-600: #868e96;--grey-700: #495057;--grey-800: #343a40;--grey-900: #212529;--grey-950: #121416;--surface-base: #ffffff;--surface-subtle: #f8f9fa;--surface-muted: #f1f3f5;--surface-inverse: #212529;--dark-surface-base: #0f1118;--dark-surface-elevated: #141720;--dark-surface-muted: #1f222d;--dark-surface-border: #292c38;--color-success-500: var(--color-turquoise-500);--color-success-600: var(--color-turquoise-600);--color-error-500: var(--color-grapefruit-pink-500);--brand-orange: #ff7300;--brand-amber: #fc9500;--brand-gold: #f8c500;--brand-teal: #3fa6a6;--brand-gradient: linear-gradient(90deg, #ff7300 0%, #fc9500 55%, #f8c500 100%);--ring: #ff7300;--link: #ff8c1a;--link-hover: #ffae1a;--destructive: #f87171;--destructive-foreground: #fafafa;--coral-300: #ffd84d;--coral-400: #ffae1a;--coral-500: #ff7300;--coral-600: #e56a00;--coral-700: #cc5c00;--primary: var(--brand-orange);--sidebar-bg: #0f1118;--bg-primary: var(--dark-surface-base);--bg-secondary: var(--dark-surface-elevated);--bg-tertiary: var(--dark-surface-muted);--bg-elevated: #282a2d;--bg-hover: var(--dark-surface-muted);--input-bg: #252830;--text-primary: #f4f5f7;--text-secondary: #c4c8d0;--text-muted: #a0a5ae;--text-disabled: #636870;--border-base: var(--dark-surface-border);--border-hover: #3a3d42;--border-active: var(--brand-orange);--border-color: var(--dark-surface-border);--border-light: #3a3d42;--status-success: var(--brand-teal);--status-warning: var(--color-amber-honey-500);--status-error: var(--destructive);--status-info: var(--color-yale-blue-500);--status-pending: #adb5bd;--success: var(--color-turquoise-400);--warning: var(--color-amber-honey-500);--error: var(--destructive);--info: var(--color-yale-blue-500);--accent-primary: var(--brand-orange);--accent-secondary: var(--brand-amber);--accent-primary-hover: var(--link);--accent-bg: color-mix(in srgb, var(--brand-orange) 10%, transparent);--accent-glow: color-mix(in srgb, var(--brand-orange) 18%, transparent);--accent-info: var(--color-yale-blue-500);--accent-success: var(--color-turquoise-400);--accent-danger: var(--destructive);--accent-warning: var(--color-amber-honey-500);--success-bg: color-mix(in srgb, var(--brand-teal) 14%, transparent);--warning-bg: color-mix(in srgb, var(--color-amber-honey-500) 14%, transparent);--error-bg: color-mix(in srgb, var(--destructive) 14%, transparent);--info-bg: color-mix(in srgb, var(--color-yale-blue-500) 14%, transparent);--chart-1: #ff9f33;--chart-2: #ffc233;--chart-3: #ffe566;--chart-4: #b0b8d0;--chart-5: #4dd4d4;--chart-6: #ff5247;--chart-7: #4db4cc;--chart-8: #4dd4d4;--chart-grid: rgba(255, 255, 255, .05);--chart-axis: #7a7f88;--chart-hist-line: #b0b5be;--chart-hist-dot: #b0b5be;--chart-fore-line: var(--brand-orange);--chart-fore-dot: var(--brand-orange);--chart-fore-band-opacity-start: .12;--chart-fore-band-opacity-end: .01;--chart-capacity: #6b7280;--chart-capacity-label: #8b9099;--chart-artificial: var(--color-amber-honey-500);--chart-artificial-label: var(--color-amber-honey-500);--chart-bg: var(--bg-tertiary);--chart-tooltip-bg: #232527;--chart-tooltip-border: #2e3033;--chart-tooltip-text: #d4d6da;--chart-legend-hist: #c8ccd2;--chart-legend-fore: var(--brand-amber);--card-bg: var(--dark-surface-elevated);--card-border: var(--dark-surface-border);--card-radius: var(--radius-lg);--deploy-card-bg: var(--card-bg);--deploy-card-border: var(--card-border);--deploy-card-shadow: var(--shadow-sm);--table-header-a: var(--dark-surface-elevated);--table-header-b: var(--dark-surface-muted);--row-state-bg: #3a4058;--row-location-bg: #32384d;--row-unitgroup-bg: #2b3042;--row-subgroup-a-bg: #232736;--row-subgroup-b-bg: #1c1f2b;--radius-xs: 4px;--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-full: 9999px;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .2);--shadow-md: 0 4px 12px rgba(0, 0, 0, .3);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .4);--shadow-modal: 0 16px 48px rgba(0, 0, 0, .35);--transition-fast: .15s ease;--transition-base: .2s ease;--z-base: 1;--z-dropdown: 100;--z-sticky: 500;--z-header: 1000;--z-overlay: 5000;--z-modal: 6000;--z-notification: 7000;--disabled-opacity: .5;--sidebar-width: 280px;--header-height: 48px;--symbol-on-color: #111}[data-theme=light]{--color-white: #ffffff;--color-white-always: #ffffff;--color-black: #0a0a0b;--link: #e56a00;--link-hover: #e68a00;--destructive: #c62c2c;--primary: var(--brand-orange);--sidebar-bg: #f8f8f8;--bg-primary: #ffffff;--bg-secondary: #f5f5f5;--bg-tertiary: #f5f5f5;--bg-elevated: #ffffff;--bg-hover: #f0f0f0;--input-bg: #ffffff;--card-bg: #ffffff;--card-border: #e5e5e5;--deploy-card-bg: var(--card-bg);--deploy-card-border: var(--card-border);--deploy-card-shadow: var(--shadow-sm);--table-header-a: #f8f9fa;--table-header-b: #f1f3f5;--text-primary: #111111;--text-secondary: #5c5c66;--text-muted: #737373;--text-disabled: #b0b0b8;--border-base: #e5e5e5;--border-hover: #d4d4da;--border-active: var(--brand-orange);--border-color: #e5e5e5;--border-light: #d4d4da;--status-success: var(--brand-teal);--status-warning: var(--color-amber-honey-600);--status-error: var(--destructive);--status-info: var(--color-yale-blue-600);--success: var(--brand-teal);--warning: var(--color-amber-honey-600);--error: var(--destructive);--info: var(--color-yale-blue-600);--accent-primary: var(--brand-orange);--accent-secondary: var(--brand-amber);--accent-primary-hover: var(--link);--accent-bg: color-mix(in srgb, var(--brand-orange) 6%, transparent);--accent-glow: color-mix(in srgb, var(--brand-orange) 10%, transparent);--accent-info: var(--color-yale-blue-600);--accent-success: var(--brand-teal);--accent-danger: var(--destructive);--accent-warning: var(--color-amber-honey-600);--success-bg: color-mix(in srgb, var(--brand-teal) 8%, transparent);--warning-bg: color-mix(in srgb, var(--color-amber-honey-500) 8%, transparent);--error-bg: color-mix(in srgb, var(--destructive) 8%, transparent);--info-bg: color-mix(in srgb, var(--color-yale-blue-500) 8%, transparent);--row-state-bg: #e6e6ed;--row-location-bg: #e8e9ee;--row-unitgroup-bg: #f1f1f5;--row-subgroup-a-bg: #ecedf2;--row-subgroup-b-bg: #f3f3f6;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .04);--shadow-md: 0 2px 8px rgba(0, 0, 0, .06);--shadow-lg: 0 4px 16px rgba(0, 0, 0, .08);--shadow-modal: 0 16px 48px rgba(0, 0, 0, .12);--chart-1: #ff8c1a;--chart-2: #ffaa00;--chart-3: #ffd000;--chart-4: #505a70;--chart-5: #12a5a5;--chart-6: #ef3030;--chart-7: #1a8ea6;--chart-8: #12a5a5;--chart-grid: #eeeff2;--chart-axis: #8b8b96;--chart-hist-line: #2d2d33;--chart-hist-dot: #2d2d33;--chart-fore-line: var(--brand-orange);--chart-fore-dot: var(--brand-orange);--chart-fore-band-opacity-start: .12;--chart-fore-band-opacity-end: .02;--chart-capacity: #8b8b96;--chart-capacity-label: #8b8b96;--chart-artificial: var(--color-amber-honey-600);--chart-artificial-label: var(--color-amber-honey-600);--chart-bg: var(--bg-tertiary);--chart-tooltip-bg: #ffffff;--chart-tooltip-border: #e8e8ec;--chart-tooltip-text: #2d2d33;--chart-legend-hist: #2d2d33;--chart-legend-fore: var(--brand-amber);--symbol-on-color: #ffffff}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}svg text,svg tspan{font-family:var(--font-sans)!important}body{font-family:inherit;background:var(--bg-primary);color:var(--text-primary);line-height:1.6;font-size:14px;letter-spacing:-.01em}button,input,select,textarea,optgroup{font-family:inherit;font-size:inherit;line-height:inherit;color:inherit;letter-spacing:inherit}table{font-family:inherit}h1,h2,h3,h4,h5,h6{font-family:inherit;line-height:1.3}a{color:var(--link);text-decoration:none}a:hover{color:var(--link-hover)}:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}:focus:not(:focus-visible){outline:none}#root{min-height:100vh;display:flex;flex-direction:column}.app-layout{min-height:100vh;display:flex;background:var(--bg-primary)}.app-main{flex:1;margin-left:var(--sidebar-width, 280px);height:100vh;overflow-y:auto;width:calc(100% - var(--sidebar-width, 280px));display:flex;flex-direction:column;transition:margin-left var(--transition-base),width var(--transition-base)}.fullscreen-center{display:flex;justify-content:center;align-items:center;min-height:100vh;background:var(--bg-primary);color:var(--text-primary)}.fullscreen-center--column{flex-direction:column;gap:12px}.app-loading{display:flex;align-items:center;justify-content:center;min-height:100vh;background:var(--bg-primary)}.app-loading-spinner{width:36px;height:36px;border:3px solid var(--border-base);border-top-color:var(--accent-primary);border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.page-layout{display:flex;flex-direction:column;flex:1;min-height:0}.pricing-card{background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--card-radius);box-shadow:var(--shadow-sm)}.pricing-card--collapsed{overflow:hidden}.pricing-card--deploy{background:var(--deploy-card-bg);border:1px solid var(--deploy-card-border);box-shadow:var(--deploy-card-shadow);overflow:hidden}.pricing-card__collapse-header{display:flex;align-items:center;justify-content:space-between;width:100%;padding:8px 16px;border:none;border-radius:var(--card-radius);background:none;cursor:pointer;font-size:12px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;transition:background .15s ease}.pricing-card__collapse-header:hover{background:var(--bg-hover)}.pricing-card__collapse-title{display:flex;align-items:center;gap:6px}.pricing-card__filter-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;border-radius:10px;font-size:10px;font-weight:700;color:#fff;background:var(--accent-primary);line-height:1}.pricing-card__collapse-icon{transition:transform .2s ease;color:var(--text-muted);flex-shrink:0}.pricing-card__collapse-icon--open{transform:rotate(90deg)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border-base);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--border-hover)}::-webkit-scrollbar-corner{background:transparent}@keyframes modal-fadeIn{0%{opacity:0}to{opacity:1}}@keyframes modal-slideUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes notification-slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes statShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.page-header{display:flex;align-items:center;justify-content:space-between;padding:0 16px;height:var(--header-height);background:var(--bg-secondary);border-bottom:1px solid var(--border-base);position:sticky;top:0;z-index:var(--z-sticky);gap:12px;flex-shrink:0}.page-header-left{display:flex;align-items:center;gap:12px;min-width:0}.page-header-text{display:flex;flex-direction:column;gap:0;min-width:0;overflow:hidden}.page-header-pill{display:flex;align-items:center;gap:8px;padding:0 12px;background:var(--bg-tertiary);border:1px solid var(--border-base);border-radius:6px}.page-header-title{font-size:15px;font-weight:600;color:var(--text-primary);white-space:nowrap;line-height:1.3}.page-header-desc{font-size:12px;color:var(--text-muted);line-height:1.3;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.page-header-subtitle{font-size:12px;font-weight:400;color:var(--text-muted);white-space:nowrap}.page-header-actions{display:flex;align-items:center;gap:8px;flex:1;min-width:0}.page-header-right{display:flex;align-items:center;gap:8px;flex-shrink:0}.toolbar-label{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin-right:4px;white-space:nowrap;-webkit-user-select:none;user-select:none}.page-header .segmented-control .segmented-btn{height:26px;box-sizing:border-box;padding-top:0;padding-bottom:0;font-size:12px}.page-header .btn-secondary,.page-header .btn-primary{height:28px;box-sizing:border-box;padding-top:0;padding-bottom:0;font-size:12px}.page-header .processed-indicator{height:28px}.page-header .multi-select__trigger{min-height:28px;height:28px;box-sizing:border-box;font-size:12px}.page-header .store-group-controller__mode-btn{height:26px;box-sizing:border-box;padding-top:0;padding-bottom:0;font-size:12px}.page-header .store-group-controller__config-btn{width:28px;height:28px;box-sizing:border-box}.page-content{flex:1;padding:24px}.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background:none;border:1px solid transparent;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;transition:all var(--transition-fast);flex-shrink:0}.icon-btn:hover{background:var(--bg-hover);color:var(--text-primary);border-color:var(--border-base)}.icon-btn--success:hover{color:var(--success);background:var(--success-bg);border-color:transparent}.icon-btn--danger:hover{color:var(--error);background:var(--error-bg);border-color:transparent}.icon-btn--warning:hover{color:var(--warning);background:var(--warning-bg);border-color:transparent}.icon-btn--small{width:28px;height:28px}.icon-btn--filter{gap:5px;padding:0 10px;width:auto;border-color:var(--border-base);border-radius:8px;background:var(--bg-tertiary);font-size:12px;font-weight:500;white-space:nowrap}.icon-btn--filter:hover{border-color:var(--text-secondary);background:var(--card-bg);box-shadow:var(--shadow-sm)}.icon-btn--filter.active{background:var(--accent-bg);border-color:var(--accent-primary);color:var(--accent-primary);box-shadow:0 0 0 3px var(--accent-bg)}.icon-btn--filter.icon-btn--danger:hover{border-color:var(--error)}.h-separator{width:1px;height:24px;background:var(--border-base);flex-shrink:0}.toolbar-group{display:flex;align-items:center;gap:8px}.tabular-nums{font-variant-numeric:tabular-nums}.loading-pad{padding:24px}.text-success{color:var(--success)}.text-error{color:var(--error)}.text-warning{color:var(--warning)}.text-muted{color:var(--text-muted)}.text-secondary{color:var(--text-secondary)}.modal-scroll{max-height:300px;overflow:auto}.font-mono{font-family:var(--font-mono)}.load-progress{display:flex;align-items:center;gap:10px;padding:6px 12px;background:color-mix(in srgb,var(--accent-primary) 6%,var(--bg-primary));border-bottom:1px solid var(--border-base)}.load-progress__bar{flex:0 0 120px;height:4px;background:var(--bg-tertiary);border-radius:2px;overflow:hidden}.load-progress__fill{height:100%;background:var(--accent-primary);border-radius:2px;transition:width .3s ease}.load-progress__text{font-size:11px;font-weight:500;color:var(--text-muted);white-space:nowrap}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.api-error-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 16px;background:var(--error-bg);border-bottom:1px solid var(--error);color:var(--error);font-size:13px;font-weight:500}.api-error-banner__retry{padding:4px 12px;border:1px solid var(--error);border-radius:var(--radius-sm);background:transparent;color:var(--error);font-weight:600;cursor:pointer;white-space:nowrap}.api-error-banner__retry:hover{background:var(--error);color:#fff}.skip-link:focus{position:fixed;top:8px;left:8px;z-index:10000;width:auto;height:auto;padding:8px 16px;margin:0;clip:auto;overflow:visible;background:var(--bg-primary);color:var(--accent-primary);border:2px solid var(--accent-primary);border-radius:var(--radius-md);font-weight:600;text-decoration:none}
