:root{--raw-red-50: #FDF2F0;--raw-red-100: #FBDFDA;--raw-red-200: #F3B9AE;--raw-red-300: #E06A5A;--raw-red-400: #D25546;--raw-red-500: #C0392B;--raw-red-600: #A93226;--raw-red-700: #96281B;--raw-gold-500: #D4AF37;--raw-gold-700: #8A6D10;--raw-teal-500: #00B4A0;--raw-teal-700: #00776B;--raw-green-50: #ECFDF3;--raw-green-500: #12A150;--raw-green-700: #0B7A42;--raw-amber-50: #FFFAEB;--raw-amber-500: #FAAD14;--raw-amber-700: #B45309;--raw-danger-50: #FEF3F2;--raw-danger-500: #F04438;--raw-danger-700: #B42318;--raw-blue-50: #EFF8FF;--raw-blue-500: #2E90FA;--raw-blue-700: #0958D9;--raw-neutral-50: #F9FAFB;--raw-neutral-100: #F3F4F6;--raw-neutral-200: #E5E7EB;--raw-neutral-300: #D1D5DB;--raw-neutral-400: #9CA3AF;--raw-neutral-450: #8A92A0;--raw-neutral-500: #6B7280;--raw-neutral-600: #4B5563;--raw-neutral-700: #374151;--raw-neutral-800: #1F2937;--raw-neutral-900: #111827;--raw-white: #FFFFFF;--color-primary: var(--raw-red-500);--color-primary-hover: var(--raw-red-600);--color-primary-active: var(--raw-red-700);--color-primary-tint: var(--raw-red-100);--color-primary-tint-weak: var(--raw-red-50);--color-primary-ink: var(--raw-red-700);--color-on-primary: var(--raw-white);--color-brand-decor: #EB483F;--color-success: var(--raw-green-500);--color-success-ink: var(--raw-green-700);--color-success-bg: var(--raw-green-50);--color-success-border: #A9EFC5;--color-warning: var(--raw-amber-500);--color-warning-ink: var(--raw-amber-700);--color-warning-bg: var(--raw-amber-50);--color-warning-border: #FEDF89;--color-danger: var(--raw-danger-500);--color-danger-ink: var(--raw-danger-700);--color-danger-bg: var(--raw-danger-50);--color-danger-border: #FECDCA;--color-info: var(--raw-blue-500);--color-info-ink: var(--raw-blue-700);--color-info-bg: var(--raw-blue-50);--color-info-border: #B2DDFF;--color-text-title: var(--raw-neutral-900);--color-text-primary: var(--raw-neutral-800);--color-text-secondary: var(--raw-neutral-600);--color-text-tertiary: var(--raw-neutral-500);--color-text-placeholder: var(--raw-neutral-450);--color-text-disabled: var(--raw-neutral-400);--color-text-inverse: var(--raw-white);--color-text-link: var(--raw-neutral-800);--color-text-link-hover: var(--raw-red-500);--color-icon: var(--raw-neutral-600);--color-icon-weak: var(--raw-neutral-400);--color-border: var(--raw-neutral-200);--color-border-subtle: var(--raw-neutral-100);--color-border-control: var(--raw-neutral-450);--color-divider: var(--raw-neutral-200);--color-bg-page: #F5F7FA;--color-bg-container: var(--raw-white);--color-bg-elevated: var(--raw-white);--color-bg-subtle: var(--raw-neutral-50);--color-bg-hover: var(--raw-neutral-100);--color-bg-selected: #EEEEF1;--color-bg-mask: rgba(17,24,39,.45);--color-focus-ring: rgba(192,57,43,.35);--button-primary-bg: var(--color-primary);--button-primary-bg-hover: var(--color-primary-hover);--button-primary-bg-active: var(--color-primary-active);--button-primary-fg: var(--color-on-primary);--button-primary-shadow: 0 2px 6px rgba(192,57,43,.2);--button-default-bg: var(--color-bg-container);--button-default-border: var(--color-border-control);--button-default-fg: var(--color-text-primary);--button-text-fg: var(--color-text-link);--button-text-bg-hover: var(--color-primary-tint-weak);--button-disabled-bg: var(--color-bg-hover);--button-disabled-fg: var(--color-text-disabled);--button-height-sm: 24px;--button-height-md: 32px;--button-height-lg: 40px;--button-danger-bg: #B42318;--button-danger-bg-hover: #9F1D14;--button-danger-bg-active: #8A1A11;--button-danger-fg: var(--raw-white);--card-bg: var(--color-bg-container);--card-radius: var(--radius-lg);--card-border: 1px solid var(--color-border);--card-shadow: var(--shadow-sm);--card-padding: var(--space-5);--input-bg: var(--color-bg-container);--input-border: var(--color-border-control);--input-border-hover: var(--color-text-tertiary);--input-border-focus: var(--color-primary);--input-radius: var(--radius-md);--input-height: 32px;--input-ring: 0 0 0 3px var(--color-focus-ring);--table-header-bg: var(--color-bg-subtle);--table-header-fg: var(--color-text-secondary);--table-row-hover-bg: var(--color-primary-tint-weak);--table-row-selected-bg: var(--color-primary-tint);--table-border: var(--color-border);--table-row-height: 40px;--table-cell-padding: 10px 14px;--nav-bg: #FAFAFC;--nav-item-fg: var(--color-text-primary);--nav-item-hover-bg: var(--color-bg-hover);--nav-item-active-bg: var(--color-bg-selected);--nav-item-active-fg: var(--color-text-primary);--nav-item-height: 36px;--nav-item-radius: var(--radius-md);--tag-bg: var(--color-bg-hover);--tag-fg: var(--color-text-secondary);--tag-radius: var(--radius-full);--tag-height: 20px;--skeleton-base: var(--color-bg-hover);--skeleton-shine: var(--color-border);--font-size-caption: 12px;--font-size-compact: 13px;--font-size-body: 14px;--font-size-lg: 16px;--font-size-xl: 20px;--font-size-2xl: 24px;--font-size-3xl: 32px;--font-size-4xl: 40px;--line-height-caption: 18px;--line-height-compact: 20px;--line-height-body: 22px;--line-height-lg: 24px;--line-height-xl: 28px;--line-height-2xl: 32px;--line-height-3xl: 40px;--line-height-4xl: 48px;--font-weight-regular: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--font-family-ui: "HarmonyOS Sans SC", "PingFang SC", "Microsoft YaHei", -apple-system, "Segoe UI", sans-serif;--font-family-num: "SF Mono", Consolas, "Liberation Mono", Menlo, monospace;--font-family-brand: "Noto Serif SC", "Source Han Serif SC", serif;--letter-spacing-tight: -.01em;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-7: 32px;--space-8: 40px;--space-9: 48px;--space-10: 64px;--radius-xs: 4px;--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-full: 9999px;--shadow-sm: 0 1px 2px rgba(16,24,40,.06);--shadow-md: 0 4px 12px rgba(16,24,40,.08);--shadow-lg: 0 12px 32px rgba(16,24,40,.12);--shadow-xl: 0 24px 64px rgba(16,24,40,.16);--shadow-brand: 0 2px 6px rgba(192,57,43,.2);--duration-fast: .15s;--duration-normal: .24s;--duration-slow: .32s;--ease-standard: cubic-bezier(.2, .8, .4, 1);--ease-decelerate: cubic-bezier(0, 0, .2, 1);--ease-accelerate: cubic-bezier(.4, 0, 1, 1);--duration-toast-success: 2s;--duration-toast-info: 3s;--duration-toast-error: 5s;--duration-toast-undo: 8s;--z-base: 0;--z-sticky: 10;--z-canvas-overlay: 20;--z-sider: 30;--z-header: 40;--z-app-overlay: 90;--z-popup: 1000;--z-message: 1010;--z-guide: 1200;--z-debug: 9999;--bp-sm: 480px;--bp-md: 768px;--bp-lg: 1100px;--bp-xl: 1280px;--layout-sider: 280px;--layout-sider-rail: 72px;--layout-header: 56px;--layout-content-max: 1280px;--layout-gutter: 24px}:root{--color-brand-decor-soft: var(--raw-red-300);--gradient-brand: linear-gradient(135deg, #C0392B 0%, #E07B39 100%);--gradient-hero: linear-gradient(135deg, #C0392B 0%, #E07B39 55%, #E8B64C 100%);--gradient-card-warm: linear-gradient(180deg, #FFFFFF 0%, #FBF7F1 100%);--bg-noise: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160' viewBox='0 0 160 160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)' opacity='0.035'/%3E%3C/svg%3E")}:root{--brand-red: var(--color-primary);--brand-red-hover: var(--color-primary-hover);--brand-red-deep: var(--color-primary-active);--brand-gold: #9CA3AF;--brand-gold-soft: rgba(17,24,39,.06);--brand-gold-ink: var(--raw-gold-700);--color-brand: var(--color-primary);--color-brand-hover: var(--color-primary-hover);--color-brand-active: var(--color-primary-active);--color-brand-bg: var(--color-primary-tint);--color-primary-light: var(--color-brand-decor-soft);--color-primary-dark: var(--color-primary-active);--color-primary-border: var(--raw-red-200);--color-gold: var(--raw-gold-500);--color-gold-light: #E8C15A;--color-gold-dark: #B8942E;--color-secondary: var(--raw-teal-500);--success: var(--color-success-ink);--error: var(--color-danger-ink);--color-error: var(--color-danger-ink);--color-error-bg: var(--color-danger-bg);--color-text-strong: var(--color-text-title);--color-text-muted: var(--color-text-tertiary);--text-hi: var(--color-text-title);--text-mid: var(--color-text-secondary);--text-low: var(--color-text-tertiary);--color-bg-card: var(--color-bg-container);--color-bg-muted: var(--color-bg-subtle);--color-bg-scrim: var(--color-primary-tint-weak);--color-bg-sidebar: var(--nav-bg);--color-border-soft: var(--color-border-subtle);--color-border-strong: var(--color-border-control);--color-border-light: var(--color-border-subtle);--color-fill-hover: var(--color-bg-hover);--color-fill-selected: var(--color-bg-selected);--color-fill-strong: var(--raw-neutral-200);--hairline: var(--color-border);--hairline-strong: var(--raw-neutral-300);--space-xs: var(--space-1);--space-sm: var(--space-2);--space-md: var(--space-3);--space-lg: var(--space-4);--space-xl: var(--space-6);--space-2xl: var(--space-7);--space-3xl: var(--space-9);--space-4xl: var(--space-10);--font-xs: var(--font-size-caption);--font-sm: var(--font-size-compact);--font-md: var(--font-size-body);--font-lg: var(--font-size-lg);--font-xl: var(--font-size-xl);--font-2xl: var(--font-size-2xl);--font-3xl: var(--font-size-3xl);--font-4xl: var(--font-size-4xl);--font-xxl: var(--font-size-2xl);--fs-12: var(--font-size-caption);--fs-13: var(--font-size-compact);--fs-14: var(--font-size-body);--fs-16: var(--font-size-lg);--fs-20: var(--font-size-xl);--fs-24: var(--font-size-2xl);--fs-32: var(--font-size-3xl);--fs-40: var(--font-size-4xl);--fs-11: var(--font-size-caption);--fs-15: var(--font-size-lg);--font-size-subtitle: var(--font-size-lg);--font-size-title: var(--font-size-xl);--font-ui: var(--font-family-ui);--font-family: var(--font-family-ui);--font-brand: var(--font-family-brand);--font-weight-normal: var(--font-weight-regular);--line-height-subtitle: var(--line-height-lg);--line-height-title: var(--line-height-xl);--line-height-tight: 1.25;--line-height-normal: 1.5;--line-height-loose: 1.75;--shadow-1: var(--shadow-sm);--shadow-2: var(--shadow-md);--shadow-3: var(--shadow-lg);--shadow-4: var(--shadow-xl);--shadow-dropdown: var(--shadow-md);--shadow-modal: var(--shadow-lg);--dur-1: var(--duration-fast);--dur-2: var(--duration-normal);--dur-3: var(--duration-slow);--ease-out: var(--ease-standard);--ease-in-out: var(--ease-standard);--transition-base: all var(--duration-normal) var(--ease-standard);--button-primary-color: var(--button-primary-fg);--button-default-color: var(--button-default-fg);--button-text-color: var(--button-text-fg);--button-disabled-color: var(--button-disabled-fg);--button-primary-radius: var(--radius-md);--button-active-scale: .98;--card-shadow-hover: var(--shadow-lg);--card-transition: transform var(--duration-normal) var(--ease-standard), box-shadow var(--duration-normal) var(--ease-standard);--data-card-bg: var(--card-bg);--data-card-radius: var(--card-radius);--data-card-shadow: var(--card-shadow);--data-card-shadow-hover: var(--shadow-md);--data-card-value-size: var(--font-size-2xl);--trend-up-color: var(--color-success-ink);--trend-down-color: var(--color-danger-ink);--spark-line-color: var(--color-primary);--table-header-color: var(--table-header-fg);--table-zebra-bg: var(--color-bg-subtle);--table-radius: var(--radius-lg);--table-sticky-action-bg: var(--color-bg-container);--input-focus-shadow: var(--input-ring);--input-placeholder-color: var(--color-text-placeholder);--nav-active-color: var(--nav-item-active-fg);--nav-active-bg: var(--nav-item-active-bg);--nav-radius: var(--nav-item-radius);--tag-color: var(--tag-fg);--skeleton-bg: linear-gradient(90deg, var(--color-bg-hover) 25%, #ECEEF1 37%, var(--color-bg-hover) 63%);--skeleton-radius: var(--radius-sm);--layout-max-width: var(--layout-content-max);--layout-sider-width: var(--layout-sider);--layout-content-gutter: var(--layout-gutter);--layout-card-padding: var(--space-5);--layout-block-gap: var(--space-9);--layout-block-gap-lg: 80px;--sidebar-width: var(--layout-sider);--menu-item-height: var(--nav-item-height);--menu-icon-size: 20px;--menu-item-gap: var(--space-1);--count-card-height: 42px;--count-card-width: 50px;--divider-size: 1px;--cta-height: 32px;--radius-pill: var(--radius-full);--opacity-80: .8;--popover-padding: 16px 12px 12px;--guide-card-width: 320px;--guide-card-radius: var(--radius-lg);--guide-card-shadow: var(--shadow-md);--app-bg: #F3F4F6;--ambient: radial-gradient(560px 420px at 12% -6%, rgba(17,24,39,.04), transparent 65%), radial-gradient(640px 480px at 96% 108%, rgba(17,24,39,.03), transparent 65%);--canvas-paper: #FFFFFF;--canvas-paper-text: #111827;--glass-border-hi: rgba(255,255,255,.95);--glass-inner: inset 0 1px 0 rgba(255,255,255,.9);--topbar-bg: linear-gradient(180deg, rgba(255,255,255,.75), rgba(255,255,255,.5));--field-bg-focus: rgba(255,255,255,.95);--ghost-bg: rgba(255,255,255,.6);--ghost-bg-hover: rgba(255,255,255,.95);--cat-bg: rgba(17,24,39,.05);--comp-bg: rgba(255,255,255,.55);--comp-bg-hover: rgba(255,255,255,.95);--tab-add-bg: rgba(255,255,255,.6);--phone-glow: 0 24px 64px rgba(17,24,39,.1);--range-track: rgba(17,24,39,.12);--glass-bg: var(--color-bg-elevated);--glass-border: var(--color-border);--field-bg: var(--color-bg-container);--scrollbar: var(--raw-neutral-300);--scrollbar-hover: var(--raw-neutral-400);--gradient-cta: linear-gradient(90deg, #74A2F8 0%, #5561F6 45%, #B26FF4 75%, #EE89F3 100%);--gradient-ai: linear-gradient(135deg, #3D92DE 0%, #6C91F7 50%, #94DBFC 100%);--grid-cols: 12;--grid-gutter: var(--space-6)}.surface-glass{background:var(--color-bg-elevated);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--color-border);border-radius:var(--guide-card-radius);padding:var(--popover-padding);box-shadow:var(--shadow-md)}.card-hoverable{transition:var(--card-transition)}.card-hoverable:hover{transform:translateY(-4px);box-shadow:var(--card-shadow-hover)}a,button,[role=button],.clickable{transition:var(--transition-base)}a:hover,[role=button]:hover,.clickable:hover{color:var(--color-primary)}.table-zebra tbody tr:nth-child(2n) td{background:var(--table-zebra-bg)}.table-zebra tbody tr:hover td{background:var(--table-row-hover-bg)}@keyframes content-fade{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.content-fade{animation:content-fade var(--duration-normal) var(--ease-decelerate) backwards}@keyframes count-up-glow{0%{opacity:.35}to{opacity:1}}.count-up{animation:count-up-glow var(--duration-slow) var(--ease-decelerate) both}body a:focus-visible,body button:focus-visible,body [role=button]:focus-visible,body [tabindex]:focus-visible,body summary:focus-visible,body .ant-btn:not(:disabled):focus-visible,body .ant-tabs-tab-btn:focus-visible,body .ant-pagination-item:focus-visible,body .ant-switch:focus-visible,body .ant-checkbox-input:focus-visible+.ant-checkbox-inner,body .ant-radio-input:focus-visible+.ant-radio-inner{outline:2px solid var(--color-primary);outline-offset:2px}body input:focus-visible,body select:focus-visible,body textarea:focus-visible,body .ant-input:focus-visible,body .ant-input-affix-wrapper:focus-visible,body .ant-input-affix-wrapper.ant-input-affix-wrapper-focused,body .ant-select-focused .ant-select-selector,body .ant-picker-focused{outline:2px solid var(--color-primary);outline-offset:1px;border-color:var(--color-primary);box-shadow:none}body .ant-input-affix-wrapper>.ant-input:focus-visible,body .ant-input-affix-wrapper>.ant-input:focus{outline:none;box-shadow:none}body .ant-menu-item:focus-visible,body .ant-menu-submenu-title:focus-visible,body .ant-menu.ant-menu-root:focus-visible,body .ant-table-tbody tr:focus-visible,body [data-focus-inset]:focus-visible{outline:2px solid var(--color-primary);outline-offset:-2px}::selection{background:#c0392b59}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:var(--scrollbar);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-hover)}::-webkit-scrollbar-track{background:transparent}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:var(--font-family-ui);background:var(--color-bg-page);color:var(--color-text-primary)}.mono-num{font-variant-numeric:tabular-nums;font-family:var(--font-family-num)}.login-shell{position:relative;display:flex;align-items:center;justify-content:center;min-height:100%;padding:var(--space-6);padding-bottom:calc(var(--space-6) + 44px);background:radial-gradient(1200px 600px at 15% 15%,var(--color-primary-tint-weak) 0%,var(--color-bg-page) 55%,var(--color-bg-page) 100%)}.login-footer{position:absolute;left:0;right:0;bottom:0;padding:14px 0;text-align:center;font-size:12px;color:var(--color-text-tertiary)}.login-footer-link{color:var(--color-text-tertiary);text-decoration:none}.login-footer-link:hover{color:var(--color-primary);text-decoration:underline}.login-footer-divider{margin:0 12px;opacity:.6}.login-card{display:flex;width:100%;max-width:900px;overflow:hidden;background:var(--color-bg-container);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg)}.login-brand{display:flex;flex-direction:column;justify-content:center;gap:var(--space-4);padding:var(--space-9) var(--space-8);background:var(--gradient-brand);color:var(--color-text-inverse)}.login-brand-title{margin:0;font-size:var(--font-size-2xl);font-weight:700;letter-spacing:1px}.login-brand-sub{margin:0;font-size:var(--font-size-body);line-height:var(--line-height-xl);opacity:.88}.login-form{flex:1;padding:var(--space-9) var(--space-8)}.login-form-title{margin:0 0 var(--space-1);font-size:var(--font-size-xl);font-weight:700}.login-form-desc{margin:0 0 var(--space-6);color:var(--color-text-tertiary);font-size:var(--font-size-compact)}@media(max-width:768px){.login-card{flex-direction:column}.login-brand{padding:var(--space-7)}}.app-shell{min-height:100%}.app-sider{border-inline-end:1px solid var(--color-border)}.app-sider .ant-layout-sider-children{display:flex;flex-direction:column;overflow:hidden}.app-sider .ant-menu{flex:1;overflow-y:auto;border-inline-end:none}.app-logo{display:flex;flex:0 0 auto;align-items:center;gap:var(--space-2);height:var(--layout-header);padding:0 var(--space-5);color:var(--color-text-title);border-bottom:1px solid var(--color-border);font-size:var(--font-size-lg);font-weight:700;white-space:nowrap;overflow:hidden}.app-header{display:flex;align-items:center;justify-content:space-between;height:var(--layout-header);padding:0 var(--space-5);background:var(--color-bg-container);border-bottom:1px solid var(--color-border)}.app-header-title{margin:0;font-size:var(--font-size-lg);font-weight:600}.app-header-right{display:flex;align-items:center;gap:var(--space-3)}.app-content{padding:var(--space-5);overflow:auto}.page-card{margin-bottom:var(--space-4)}.stat-card-danger .ant-statistic-content{color:var(--color-danger-ink)}
