:root{--bg-primary: #fafafa;--bg-secondary: #f0f0f0;--bg-sidebar: #f5f5f5;--bg-card: #ffffff;--bg-card-hover: #fafafa;--bg-input: #ffffff;--border-color: #e0e0e0;--border-light: #ebebeb;--accent-primary: #333333;--accent-hover: #1a1a1a;--accent-muted: #888888;--text-primary: #1a1a1a;--text-secondary: #666666;--text-muted: #999999;--success: #2e7d32;--error: #c62828;--warning: #f57f17;--accent-info: #4a90d9;--accent-primary-rgb: 51, 51, 51;--success-rgb: 46, 125, 50;--error-rgb: 198, 40, 40;--text-on-accent: #ffffff}.dark{--bg-primary: #1a1a1a;--bg-secondary: #252525;--bg-sidebar: #202020;--bg-card: #333333;--bg-card-hover: #333333;--bg-input: #2a2a2a;--border-color: #3a3a3a;--border-light: #333333;--accent-primary: #e0e0e0;--accent-hover: #f5f5f5;--accent-muted: #888888;--text-primary: #f0f0f0;--text-secondary: #c0c0c0;--text-muted: #888888;--success: #66bb6a;--error: #ef5350;--warning: #ffb74d;--accent-info: #6ba3d6;--accent-primary-rgb: 240, 240, 240;--success-rgb: 102, 187, 106;--error-rgb: 239, 83, 80;--text-on-accent: #1a1a1a}*,*:before,*:after{box-sizing:border-box}html,body,#app{width:100%;height:100%;margin:0;overflow:hidden}body{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:var(--text-primary);background:var(--bg-primary);font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}button,input,textarea,select{font-family:inherit}a{color:inherit;text-decoration:none}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:3px}.page-shell{display:flex;flex-direction:column;height:100%;min-height:0}.page-header{flex:0 0 52px;display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:52px;padding:0 24px;border-bottom:1px solid var(--border-color)}.page-title{margin:0;color:var(--text-primary);font-size:17px;font-weight:650;letter-spacing:0}.page-content{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden;padding:20px 24px 28px}.toolbar{flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.toolbar-main{display:flex;align-items:center;gap:10px;min-width:0}.n-input,.n-input-number,.n-base-selection{--n-height: 36px !important;--n-border-radius: 8px !important;--n-font-size: 14px !important}.n-input .n-input__input-el,.n-input .n-input__textarea-el,.n-input .n-input__input-element,.n-input .n-input__textarea-element{font-size:14px}.n-base-selection{min-height:36px}.n-form-item-label{color:var(--text-secondary);font-size:13px;font-weight:500}.row-actions{display:inline-flex;align-items:center;justify-content:flex-end;gap:8px;white-space:nowrap}.panel{background:var(--bg-card);border:1px solid var(--border-color);border-radius:8px}.table-panel{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}.table-panel>.n-data-table{display:flex;flex-direction:column;flex:1;min-height:0}.table-panel .n-data-table{display:flex;flex-direction:column;flex:1;min-height:0}.table-panel .n-data-table-wrapper{flex:1;min-height:0}.table-panel .n-data-table-base-table,.table-panel .n-data-table-base-table-body{min-height:0}.table-panel .n-data-table__pagination{min-height:52px;padding:0 14px;border-top:1px solid var(--border-light);display:flex;align-items:center;justify-content:flex-end;margin:0!important}.table-panel .n-data-table__pagination .n-pagination{padding:10px!important}.status-pill{display:inline-flex;align-items:center;gap:6px;min-height:24px;padding:3px 8px;border-radius:999px;color:var(--text-secondary);background:rgba(var(--accent-primary-rgb),.06);font-size:12px}.status-dot{width:7px;height:7px;border-radius:50%;background:var(--success)}.dark .n-button.n-button--primary-type{--n-color: #3a3a3a !important;--n-color-hover: #4a4a4a !important;--n-color-pressed: #2f2f2f !important;--n-color-focus: #4a4a4a !important;--n-border: 1px solid #555555 !important;--n-border-hover: 1px solid #666666 !important;--n-border-pressed: 1px solid #555555 !important;--n-border-focus: 1px solid #666666 !important;--n-text-color: #f0f0f0 !important;--n-text-color-hover: #ffffff !important;--n-text-color-pressed: #ffffff !important;--n-text-color-focus: #ffffff !important}.dark .n-checkbox{--n-color-checked: #ffffff !important;--n-color-disabled-checked: rgba(255, 255, 255, .62) !important;--n-border-checked: 1px solid #ffffff !important;--n-border-disabled-checked: 1px solid rgba(255, 255, 255, .62) !important;--n-check-mark-color: #111111 !important;--n-check-mark-color-disabled-checked: #111111 !important}.dark .n-checkbox.n-checkbox--checked .n-checkbox-box,.dark .n-checkbox.n-checkbox--indeterminate .n-checkbox-box{background-color:#fff!important}.dark .n-checkbox.n-checkbox--checked .n-checkbox-box__border,.dark .n-checkbox.n-checkbox--indeterminate .n-checkbox-box__border{border-color:#fff!important}.dark .n-checkbox.n-checkbox--checked .check-icon,.dark .n-checkbox.n-checkbox--checked .line-icon,.dark .n-checkbox.n-checkbox--indeterminate .check-icon,.dark .n-checkbox.n-checkbox--indeterminate .line-icon{fill:#111!important}.dark .table-panel .n-pagination{--n-item-text-color: #c0c0c0 !important;--n-item-text-color-hover: #ffffff !important;--n-item-text-color-active: #ffffff !important;--n-item-text-color-pressed: #ffffff !important;--n-item-border-active: 1px solid rgba(255, 255, 255, .42) !important;--n-item-color-active: rgba(255, 255, 255, .08) !important;--n-item-color-active-hover: rgba(255, 255, 255, .12) !important;--n-button-icon-color: #c0c0c0 !important;--n-button-icon-color-hover: #ffffff !important;--n-button-border: 1px solid rgba(255, 255, 255, .24) !important;--n-button-border-hover: 1px solid rgba(255, 255, 255, .42) !important}.dark .table-panel .n-pagination-item.n-pagination-item--active{color:#fff!important;background:#ffffff24!important;border-color:#ffffff80!important}.dark .table-panel .n-pagination-item.n-pagination-item--active:hover{color:#fff!important;background:#ffffff2e!important}.form-modal{max-width:calc(100vw - 32px)}.form-modal .n-card-header{padding:14px 16px 8px}.form-modal .n-card__content{padding:6px 16px 2px}.form-modal .n-card__footer{padding:10px 16px 14px}.form-modal .n-form-item{margin-bottom:6px}.form-modal .n-form-item-label{min-height:32px;font-size:13px}@media(max-width:768px){.page-header{padding:0 16px}.page-content{padding:16px}.toolbar{align-items:stretch;flex-direction:column}.toolbar-main{flex-direction:column;align-items:stretch}}
