@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&family=Noto+Sans+SC:wght@300;400;500;700&family=Noto+Serif+SC:wght@400;600;700;900&display=swap";:root{--bg-primary: #ede6d6;--bg-sidebar: #e7dfd0;--bg-card: #f5f1e8;--bg-card-hover: #f0ece3;--bg-white: #faf8f4;--ink-primary: #3d2b1f;--ink-secondary: #6b5744;--ink-tertiary: #8b7a68;--ink-muted: #b0a292;--color-vermillion: #c43a31;--color-vermillion-light: rgba(196, 58, 49, .08);--color-sage: #5a8a7a;--color-sage-light: rgba(90, 138, 122, .08);--color-brown: #8b5e3c;--color-brown-light: rgba(139, 94, 60, .08);--color-amber: #b8943e;--color-amber-light: rgba(184, 148, 62, .08);--color-bluegray: #6b7d8e;--color-bluegray-light: rgba(107, 125, 142, .08);--border-light: rgba(61, 43, 31, .06);--border-default: rgba(61, 43, 31, .1);--border-medium: rgba(61, 43, 31, .15);--ink-faint: rgba(61, 43, 31, .02);--ink-faint-2: rgba(61, 43, 31, .04);--accent-faint: rgba(196, 58, 49, .04);--accent-medium: rgba(196, 58, 49, .3);--accent-strong: rgba(196, 58, 49, .5);--accent-pulse: rgba(196, 58, 49, .15);--accent-border: rgba(196, 58, 49, .25);--brand-faint: rgba(139, 94, 60, .18);--brand-border-hover: rgba(139, 94, 60, .28);--sage-border: rgba(90, 138, 122, .3);--login-card-bg: rgba(253, 252, 248, .82);--ink-40: rgba(61, 43, 31, .4);--ink-50: rgba(61, 43, 31, .5);--ink-60: rgba(61, 43, 31, .6);--ink-70: rgba(61, 43, 31, .7);--backdrop: rgba(45, 36, 26, .34);--shadow-color-modal: rgba(45, 36, 26, .22);--shadow-color-chip: rgba(45, 36, 26, .12);--brand-medium: rgba(139, 94, 60, .5);--color-danger: #c43a31;--color-danger-light: rgba(196, 58, 49, .08);--r-xs: 2px;--r-sm: 3px;--r-md: 4px;--shadow-card: 0 1px 2px rgba(61, 43, 31, .03);--shadow-hover: 0 2px 8px rgba(61, 43, 31, .06);--font-serif: "Noto Serif SC", serif;--font-sans: "Noto Sans SC", -apple-system, "PingFang SC", "Microsoft YaHei", sans-serif;--font-num: "Inter", sans-serif;--transition-fast: .15s cubic-bezier(.2, .8, .2, 1);--transition-normal: .24s cubic-bezier(.3, 0, 0, 1)}[data-theme=light]{--bg-primary: #f8fafc;--bg-sidebar: #f1f5f9;--bg-card: #f8fafc;--bg-card-hover: #f1f5f9;--bg-white: #ffffff;--ink-primary: #0f172a;--ink-secondary: #475569;--ink-tertiary: #64748b;--ink-muted: #94a3b8;--color-vermillion: #2563eb;--color-vermillion-light: rgba(37, 99, 235, .08);--color-sage: #16a34a;--color-sage-light: rgba(22, 163, 74, .08);--color-brown: #2563eb;--color-brown-light: rgba(37, 99, 235, .08);--color-amber: #d97706;--color-amber-light: rgba(217, 119, 6, .08);--color-bluegray: #0284c7;--color-bluegray-light: rgba(2, 132, 199, .08);--border-light: rgba(15, 23, 42, .05);--border-default: #e2e8f0;--border-medium: #cbd5e1;--ink-faint: rgba(15, 23, 42, .03);--ink-faint-2: rgba(15, 23, 42, .04);--accent-faint: rgba(37, 99, 235, .04);--accent-medium: rgba(37, 99, 235, .3);--accent-strong: rgba(37, 99, 235, .5);--accent-pulse: rgba(37, 99, 235, .15);--accent-border: rgba(37, 99, 235, .25);--brand-faint: rgba(37, 99, 235, .18);--brand-border-hover: rgba(37, 99, 235, .28);--sage-border: rgba(22, 163, 74, .3);--login-card-bg: rgba(255, 255, 255, .88);--ink-40: rgba(15, 23, 42, .25);--ink-50: rgba(15, 23, 42, .3);--ink-60: rgba(15, 23, 42, .35);--ink-70: rgba(15, 23, 42, .4);--backdrop: rgba(15, 23, 42, .3);--shadow-color-modal: rgba(15, 23, 42, .18);--shadow-color-chip: rgba(15, 23, 42, .1);--brand-medium: rgba(37, 99, 235, .4);--color-danger: #dc2626;--color-danger-light: rgba(220, 38, 38, .08);--shadow-card: 0 1px 2px rgba(15, 23, 42, .05);--shadow-hover: 0 2px 8px rgba(15, 23, 42, .08)}[data-theme=dark]{--bg-primary: #0c1220;--bg-sidebar: #111a2e;--bg-card: #0f172a;--bg-card-hover: #16213a;--bg-white: #182338;--ink-primary: #f1f5f9;--ink-secondary: #cbd5e1;--ink-tertiary: #94a3b8;--ink-muted: #64748b;--color-vermillion: #3b82f6;--color-vermillion-light: rgba(59, 130, 246, .15);--color-sage: #22c55e;--color-sage-light: rgba(34, 197, 94, .15);--color-brown: #3b82f6;--color-brown-light: rgba(59, 130, 246, .15);--color-amber: #f59e0b;--color-amber-light: rgba(245, 158, 11, .15);--color-bluegray: #06b6d4;--color-bluegray-light: rgba(6, 182, 212, .15);--border-light: rgba(255, 255, 255, .05);--border-default: rgba(255, 255, 255, .09);--border-medium: rgba(255, 255, 255, .15);--ink-faint: rgba(255, 255, 255, .03);--ink-faint-2: rgba(255, 255, 255, .05);--accent-faint: rgba(59, 130, 246, .1);--accent-medium: rgba(59, 130, 246, .4);--accent-strong: rgba(59, 130, 246, .6);--accent-pulse: rgba(59, 130, 246, .25);--accent-border: rgba(59, 130, 246, .35);--brand-faint: rgba(59, 130, 246, .25);--brand-border-hover: rgba(59, 130, 246, .4);--sage-border: rgba(34, 197, 94, .35);--login-card-bg: rgba(24, 35, 56, .85);--ink-40: rgba(255, 255, 255, .25);--ink-50: rgba(255, 255, 255, .3);--ink-60: rgba(255, 255, 255, .35);--ink-70: rgba(255, 255, 255, .4);--backdrop: rgba(0, 0, 0, .55);--shadow-color-modal: rgba(0, 0, 0, .5);--shadow-color-chip: rgba(0, 0, 0, .4);--brand-medium: rgba(59, 130, 246, .5);--color-danger: #f87171;--color-danger-light: rgba(248, 113, 113, .15);--shadow-card: 0 1px 2px rgba(0, 0, 0, .3);--shadow-hover: 0 2px 8px rgba(0, 0, 0, .4);color-scheme:dark}*{margin:0;padding:0;box-sizing:border-box}html,body,#root{height:100%;width:100%;font-family:var(--font-sans);color:var(--ink-primary);-webkit-font-smoothing:antialiased}body{background-color:var(--bg-primary);color:var(--ink-primary)}::-webkit-scrollbar{width:4px;height:4px}::-webkit-scrollbar-thumb{background:var(--border-default);border-radius:2px}::-webkit-scrollbar-track{background:transparent}.sidebar-nav-scroll{scrollbar-width:none;-ms-overflow-style:none}.sidebar-nav-scroll::-webkit-scrollbar{width:0;height:0;display:none}.ant-layout-sider{transition:none!important}:focus-visible{outline:2px solid var(--color-vermillion);outline-offset:2px}input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus,input:-webkit-autofill:active{-webkit-box-shadow:0 0 0 30px var(--bg-white) inset!important;-webkit-text-fill-color:var(--ink-primary)!important;caret-color:var(--ink-primary)!important;transition:background-color 9999s ease-in-out 0s}.ant-input-affix-wrapper{background:var(--bg-white)!important;border-color:var(--border-default)!important}.ant-input-affix-wrapper:hover,.ant-input-affix-wrapper-focused,.ant-input-affix-wrapper:focus-within{background:var(--bg-white)!important;border-color:var(--color-vermillion)!important;box-shadow:none!important;outline:none!important}.ant-input-affix-wrapper input{color:var(--ink-primary)!important;user-select:auto!important;-webkit-user-select:auto!important}.ant-input-affix-wrapper input::placeholder{color:var(--ink-muted)!important}.ant-input-affix-wrapper .ant-input-password-icon,.ant-input-affix-wrapper .ant-input-prefix{color:var(--ink-tertiary)!important}.ant-input{background-color:var(--bg-white)!important;border-color:var(--border-default)!important;color:var(--ink-primary)!important}.ant-input:hover,.ant-input:focus{background-color:var(--bg-white)!important;border-color:var(--color-vermillion)!important;box-shadow:none!important;outline:none!important}.ant-input::placeholder{color:var(--ink-muted)!important}.ant-btn-primary{box-shadow:none!important}.ant-table-thead>tr>th{font-size:12px!important;letter-spacing:.5px;background:var(--ink-faint)!important;color:var(--ink-tertiary)!important;border-bottom:1px solid var(--border-light)!important}.ant-card{border-color:var(--border-light)!important}.ant-tag{border-radius:var(--r-xs)}.ant-picker,.ant-select-selector,.ant-input-number{border-radius:var(--r-md)!important;background:var(--bg-white)!important;border-color:var(--border-default)!important}.ant-modal-content{border-radius:var(--r-md)!important}.ant-form-item-label>label{color:var(--ink-secondary)!important;font-size:12px!important}.ant-pagination-item-active{border-color:var(--color-vermillion)!important}.ant-pagination-item-active a{color:var(--color-vermillion)!important}.batch-row-ended{opacity:.6}.module-card{transition:all .4s cubic-bezier(.25,.1,.25,1)}.module-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-hover);border-color:var(--border-default)}.module-card.generating:hover,.module-card.done:hover{transform:none;box-shadow:none}.module-card.generating{border-color:var(--accent-border);background:var(--bg-white);animation:modulePulse 2s ease-in-out infinite}.module-card.done{border-color:var(--sage-border);background:var(--bg-white)}@keyframes modulePulse{0%,to{box-shadow:0 0 0 0 var(--accent-pulse)}50%{box-shadow:0 0 0 6px #c43a3100}}.nav-item:hover{background:var(--ink-faint)}.nav-item.active{background:var(--color-vermillion-light);color:var(--color-vermillion)}.nav-item:focus-visible{outline:none}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.set-page{max-width:980px}.set-header{margin-bottom:22px}.set-h2{margin:0;font-size:20px;font-weight:700;color:var(--ink-primary);letter-spacing:.5px}.set-sub{font-size:11px;color:var(--ink-muted);letter-spacing:1px}.set-accent{width:32px;height:2px;background:var(--color-brown);margin-top:12px;border-radius:1px;opacity:.5}.set-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.set-card{background:var(--bg-card);border:1px solid var(--border-light);border-radius:var(--r-md);padding:16px 20px 18px;transition:border-color .3s ease,box-shadow .3s ease}.set-card:hover{border-color:var(--brand-border-hover);box-shadow:var(--shadow-hover)}.set-card-head{display:flex;align-items:center;gap:12px;margin-bottom:14px}.set-icon{width:36px;height:36px;border-radius:var(--r-sm);display:flex;align-items:center;justify-content:center;font-size:17px;flex-shrink:0}.set-head-text{min-width:0}.set-title{font-size:14px;font-weight:600;color:var(--ink-primary);line-height:1.3}.set-desc{font-size:11px;color:var(--ink-muted);margin-top:2px}.set-refresh{margin-left:auto;color:var(--ink-muted);flex-shrink:0}.set-refresh:hover{color:var(--color-brown)!important}.set-tags{min-height:26px;display:flex;flex-wrap:wrap;align-items:center;gap:6px}.set-tag{padding:1px 8px;font-size:12px;margin:0}.set-font-row{display:flex;align-items:center;gap:14px;padding:2px 0 6px}.set-font-val{font-size:20px;font-weight:700;color:var(--ink-secondary);min-width:56px;text-align:center;font-family:"Noto Serif SC",serif;display:inline-block}.set-font-val small{font-size:11px;font-weight:400;color:var(--ink-muted);margin-left:2px}.set-font-hint{font-size:11px;color:var(--ink-muted);margin-top:8px}
