.app-error-fallback[data-v-5ebebb8f]{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:24px;background:#f8fafc;color:#0f172a;text-align:center}.app-error-fallback h1[data-v-5ebebb8f]{font-size:20px;font-weight:600}.app-error-fallback p[data-v-5ebebb8f]{max-width:480px;color:#64748b;line-height:1.5}.app-error-retry[data-v-5ebebb8f]{margin-top:8px;padding:8px 20px;border:none;border-radius:8px;background:#2563eb;color:#fff;cursor:pointer}.app-error-fallback.is-permission[data-v-5ebebb8f]{background:#f8fafc}html,body,#app{height:100%;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}:root{--primary-color: var(--modern-primary, #1f5fd7);--primary-light: var(--modern-primary-active, #2b6fe8);--primary-dark: var(--modern-primary-hover, #174ea6);--primary-hover: var(--modern-primary-hover, #174ea6);--primary-disabled: var(--modern-text-light, #9aa6b6);--primary-bg: var(--modern-primary-light, #eef4ff);--success-color: var(--modern-success, #10B981);--success-light: var(--modern-success-light, #D1FAE5);--warning-color: var(--modern-warning, #F59E0B);--warning-light: var(--modern-warning-light, #FEF3C7);--error-color: var(--modern-error, #EF4444);--error-light: var(--modern-error-light, #FEE2E2);--info-color: var(--modern-info, #6366F1);--info-light: var(--modern-info-light, #E0E7FF);--bg-color: var(--modern-bg-body, #f5f7fa);--bg-card: var(--modern-bg-card, #FFFFFF);--bg-light: var(--modern-bg-hover, #f1f4f8);--title-color: var(--modern-text-main, #172033);--text-color: var(--modern-text-sub, #68758a);--text-muted: var(--modern-text-light, #9aa6b6);--border-color: var(--modern-border, #dfe5ee);--border-light: var(--modern-border-light, #edf1f6);--status-pending: #F59E0B;--status-working: var(--modern-primary, #1f5fd7);--status-completed: #10B981;--status-cancelled: #6B7280;--status-suspended: #8B5CF6;--font-family-zh: "Source Han Sans CN", "PingFang SC", "Microsoft YaHei", sans-serif;--font-family-en: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-size-xs: 12px;--font-size-sm: 13px;--font-size-base: 14px;--font-size-lg: 16px;--font-size-title: 18px;--font-size-heading: 24px;--font-size-stat-value: 28px;--line-height-tight: 1.2;--line-height-base: 1.5;--line-height-relaxed: 1.6;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--border-radius-xs: var(--modern-radius-xs, 4px);--border-radius-sm: var(--modern-radius-sm, 6px);--border-radius-md: var(--modern-radius-base, 8px);--border-radius-lg: var(--modern-radius-lg, 8px);--border-radius-xl: var(--modern-radius-xl, 10px);--spacing-xs: 8px;--spacing-sm: 12px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--spacing-2xl: 48px;--shadow-sm: var(--modern-shadow-sm, none);--shadow-card: var(--modern-shadow-card, none);--shadow-md: var(--modern-shadow-md, 0 8px 20px rgba(23, 32, 51, .06));--shadow-lg: var(--modern-shadow-md, 0 8px 20px rgba(23, 32, 51, .06));--shadow-hover: var(--modern-shadow-hover, none);--transition-fast: .15s;--transition-base: .2s;--transition-slow: .3s;--line-height-title: var(--line-height-tight);--z-dropdown: 100;--z-modal: 1000;--z-tooltip: 1100}.page-container{padding:0}.page-title{margin-bottom:var(--spacing-md);font-size:var(--font-size-title);font-weight:var(--font-weight-semibold);color:var(--title-color);line-height:var(--line-height-title)}.search-card,.filter-card{margin-bottom:var(--spacing-md)}:deep(.search-card .el-card__body),:deep(.filter-card .el-card__body){padding:var(--spacing-md)}.table-card{margin-top:var(--spacing-md)}:deep(.table-card .el-card__body){padding:var(--spacing-md)}.pagination{margin-top:var(--spacing-md);justify-content:flex-end;padding:var(--spacing-sm) 0}.form-card{margin-top:var(--spacing-md)}:deep(.form-card .el-card__body){padding:var(--spacing-md)}.detail-card{margin-top:var(--spacing-md)}:deep(.detail-card .el-card__body){padding:var(--spacing-md)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-size:14px;line-height:1.5714285714285714;color:var(--modern-text-main, #172033);background-color:var(--modern-bg-body, #f5f7fa);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{color:var(--modern-text-main, #172033);font-weight:600;line-height:1.2}h2{font-size:20px}.ant-layout{min-height:100vh}.skeleton{background:linear-gradient(90deg,#f4f6f9 25%,var(--modern-border-light, #edf1f6) 50%,#f4f6f9 75%);background-size:200% 100%;animation:skeleton-loading 1.5s ease-in-out infinite}@keyframes skeleton-loading{0%{background-position:200% 0}to{background-position:-200% 0}}:root{--ant-primary-color: var(--modern-primary, #1f5fd7);--ant-primary-color-hover: var(--modern-primary-hover, #174ea6);--ant-primary-color-active: var(--modern-primary-active, #2b6fe8);--ant-primary-color-outline: rgba(31, 95, 215, .16);--ant-success-color: var(--modern-success, #10B981);--ant-success-color-hover: #0f9d6d;--ant-success-color-active: #0b7d56;--ant-warning-color: var(--modern-warning, #F59E0B);--ant-warning-color-hover: #d97706;--ant-warning-color-active: #b45309;--ant-error-color: var(--modern-error, #EF4444);--ant-error-color-hover: #dc2626;--ant-error-color-active: #b91c1c;--ant-info-color: var(--modern-primary, #1f5fd7);--ant-text-color: var(--modern-text-main, #172033);--ant-text-color-secondary: var(--modern-text-sub, #68758a);--ant-text-color-tertiary: var(--modern-text-light, #9aa6b6);--ant-text-color-disabled: #c5cfda;--ant-bg-color: var(--modern-bg-card, #FFFFFF);--ant-bg-color-container: #f7f8fa;--ant-bg-color-elevated: var(--modern-bg-card, #FFFFFF);--ant-bg-color-layout: var(--modern-bg-body, #f5f7fa);--ant-border-color: var(--modern-border, #dfe5ee);--ant-border-color-split: var(--modern-border-light, #eef2f6);--ant-shadow-1-down: none;--ant-shadow-2: none;--ant-border-radius: var(--modern-radius-sm, 6px);--ant-border-radius-sm: var(--modern-radius-xs, 4px);--ant-border-radius-lg: var(--modern-radius-lg, 8px);--ant-margin-xs: 4px;--ant-margin-sm: 8px;--ant-margin-md: 16px;--ant-margin-lg: 24px;--ant-margin-xl: 32px;--ant-font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--ant-font-size: 14px;--ant-font-size-lg: 16px;--ant-font-size-sm: 12px;--ant-line-height: 1.5714285714285714;--ant-line-height-lg: 1.5;--ant-line-height-sm: 1.6666666666666667}:root{--modern-primary: #1f5fd7;--modern-primary-hover: #174ea6;--modern-primary-light: #eef4ff;--modern-primary-active: #2b6fe8;--modern-bg-body: #f5f7fa;--modern-bg-card: #FFFFFF;--modern-bg-sider: #FFFFFF;--modern-bg-hover: #f1f4f8;--modern-text-main: #172033;--modern-text-sub: #68758a;--modern-text-light: #9aa6b6;--modern-border: #dfe5ee;--modern-border-light: #edf1f6;--modern-shadow-sm: none;--modern-shadow-card: none;--modern-shadow-md: 0 8px 20px rgba(23, 32, 51, .06);--modern-shadow-hover: none;--modern-radius-xs: 4px;--modern-radius-sm: 6px;--modern-radius-base: 8px;--modern-radius-lg: 8px;--modern-radius-xl: 10px;--modern-success: #10B981;--modern-success-light: #D1FAE5;--modern-warning: #F59E0B;--modern-warning-light: #FEF3C7;--modern-error: #EF4444;--modern-error-light: #FEE2E2;--modern-info: #6366F1;--modern-info-light: #E0E7FF}.modern-theme .ant-layout{background:var(--modern-bg-body)}.modern-theme .ant-layout-sider{background:var(--modern-bg-sider);border-right:1px solid var(--modern-border)}.modern-theme .ant-menu-light{background:transparent;border-inline-end:none!important}.modern-theme .ant-menu-light .ant-menu-submenu-title{margin:3px 10px;width:calc(100% - 16px);border-radius:var(--modern-radius-sm);color:var(--modern-text-main);font-size:13px;font-weight:600;transition:background-color .15s ease,color .15s ease}.modern-theme .ant-menu-light .ant-menu-submenu-title:hover{color:var(--modern-primary);background-color:var(--modern-bg-hover)}.modern-theme .ant-menu-light .ant-menu-submenu-open>.ant-menu-submenu-title{color:var(--modern-primary);background-color:var(--modern-primary-light)}.modern-theme .ant-menu-light .ant-menu-sub.ant-menu-inline{background:transparent}.modern-theme .ant-menu-light .ant-menu-item-selected{background-color:var(--modern-primary-light);color:var(--modern-primary);font-weight:600;border-radius:var(--modern-radius-sm)}.modern-theme .ant-menu-light .ant-menu-item{margin:2px 10px 2px 18px;width:calc(100% - 28px);border-radius:var(--modern-radius-sm);transition:background-color .15s ease,color .15s ease;font-size:13px}.modern-theme .ant-menu-light .ant-menu-item:hover:not(.ant-menu-item-selected){color:var(--modern-primary);background-color:var(--modern-bg-hover)}.modern-theme .ant-menu-inline-collapsed .ant-menu-submenu-title{padding-inline:0!important;text-align:center}.modern-theme .ant-card{border-radius:var(--modern-radius-lg);border:1px solid var(--modern-border);box-shadow:none;transition:border-color .15s ease,background-color .15s ease}.modern-theme .ant-card:hover{border-color:#cfd8e6;box-shadow:none}.modern-card{background:var(--modern-bg-card);border-radius:var(--modern-radius-lg);box-shadow:none;border:1px solid var(--modern-border);transition:border-color .15s ease,background-color .15s ease}.modern-card:hover{transform:none;border-color:#cfd8e6;box-shadow:none}.modern-card .ant-card-head{border-bottom:1px solid var(--modern-border);font-size:16px;font-weight:600;color:var(--modern-text-main)}.modern-header{background:#fff!important;-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:none;border-bottom:1px solid var(--modern-border);position:sticky;top:0;z-index:100}.modern-theme .ant-table{border-radius:var(--modern-radius-base);overflow:hidden}.modern-theme .ant-table-thead>tr>th{background:var(--modern-bg-body)!important;font-weight:500;color:var(--modern-text-sub);white-space:nowrap;padding:12px 16px;border-bottom:1px solid var(--modern-border)}.modern-theme .ant-table-tbody>tr>td{padding:12px 16px;border-bottom:1px solid var(--modern-border-light)}.modern-theme .ant-table-tbody>tr:hover>td{background:var(--modern-bg-hover)!important}.modern-theme .ant-btn{border-radius:var(--modern-radius-sm);font-weight:500;transition:background-color .15s ease,border-color .15s ease,color .15s ease}.modern-theme .ant-btn-primary{background:var(--modern-primary);border-color:var(--modern-primary);box-shadow:none}.modern-theme .ant-btn-primary:hover{background:var(--modern-primary-hover);border-color:var(--modern-primary-hover);transform:none;box-shadow:none}.modern-theme .ant-btn-primary:active{transform:translateY(0)}.modern-theme .ant-btn-primary.ant-btn-background-ghost{background:transparent!important;color:var(--modern-primary)!important;border-color:var(--modern-primary);box-shadow:none}.modern-theme .ant-btn-primary.ant-btn-background-ghost:hover{background:var(--modern-primary-light)!important;color:var(--modern-primary)!important;border-color:var(--modern-primary);box-shadow:none}.modern-theme .ant-input,.modern-theme .ant-select-selector,.modern-theme .ant-picker{border-radius:var(--modern-radius-sm)!important;border-color:var(--modern-border)!important;transition:all .2s ease}.modern-theme .ant-input:hover,.modern-theme .ant-select-selector:hover,.modern-theme .ant-picker:hover{border-color:var(--modern-primary)!important}.modern-theme .ant-input:focus,.modern-theme .ant-select-focused .ant-select-selector,.modern-theme .ant-picker-focused{border-color:var(--modern-primary)!important;box-shadow:0 0 0 2px #2563eb1a!important}.modern-theme .ant-tabs-nav{margin-bottom:16px}.modern-theme .ant-tabs-tab{padding:8px 16px;font-weight:500;transition:all .2s}.modern-theme .ant-tabs-tab:hover{color:var(--modern-primary)}.modern-theme .ant-tabs-tab-active .ant-tabs-tab-btn{color:var(--modern-primary);font-weight:600}.modern-theme .ant-tabs-ink-bar{background:var(--modern-primary);height:3px;border-radius:2px}.modern-theme .ant-tag{border-radius:var(--modern-radius-xs);font-weight:500;border:none;padding:2px 8px}.modern-theme .ant-empty{padding:48px 0}.modern-theme .ant-empty-description{color:var(--modern-text-sub)}.modern-theme .ant-modal-content{border-radius:var(--modern-radius-lg);overflow:hidden}.modern-theme .ant-modal-header{border-bottom:1px solid var(--modern-border-light);padding:16px 24px}.modern-theme .ant-modal-title{font-weight:600;font-size:16px}.modern-theme .ant-drawer-content-wrapper{box-shadow:var(--modern-shadow-hover)}.modern-theme .ant-drawer-header{border-bottom:1px solid var(--modern-border-light);padding:16px 24px}.modern-theme .ant-pagination-item{border-radius:var(--modern-radius-sm);border-color:var(--modern-border)}.modern-theme .ant-pagination-item-active{background:var(--modern-primary);border-color:var(--modern-primary)}.modern-theme .ant-pagination-item-active a{color:#fff}.modern-theme .ant-message-notice-content{border-radius:var(--modern-radius-base);box-shadow:var(--modern-shadow-md)}.status-tag-pending{background:var(--modern-warning-light);color:var(--modern-warning)}.status-tag-working{background:var(--modern-primary-light);color:var(--modern-primary)}.status-tag-completed{background:var(--modern-success-light);color:var(--modern-success)}.status-tag-cancelled{background:#F3F4F6;color:#6b7280}.status-tag-suspended{background:#EDE9FE;color:#8b5cf6}
