*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }.visible{visibility:visible}.collapse{visibility:collapse}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.right-2{right:.5rem}.top-2{top:.5rem}.col-span-full{grid-column:1 / -1}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.h-7{height:1.75rem}.h-full{height:100%}.w-7{width:1.75rem}.w-full{width:100%}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.cursor-pointer{cursor:pointer}.resize{resize:both}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-center{justify-content:center}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.overflow-hidden{overflow:hidden}.break-all{word-break:break-all}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.object-cover{-o-object-fit:cover;object-fit:cover}.p-4{padding:1rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.px-1{padding-left:.25rem;padding-right:.25rem}.px-3{padding-left:.75rem;padding-right:.75rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-8{padding-top:2rem;padding-bottom:2rem}.text-center{text-align:center}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.tabular-nums{--tw-numeric-spacing: tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.underline{text-decoration-line:underline}.opacity-60{opacity:.6}.outline{outline-style:solid}.blur{--tw-blur: blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}:root{--bg-root: #faf9f6;--bg-page: #f5f4f0;--bg-subtle: #efede8;--surface: #ffffff;--surface-hover: #fafaf9;--surface-raised: #ffffff;--bg-elevated: #ffffff;--header-bg: rgba(250, 249, 246, .88);--border: #e8e5df;--border-light: #f0ede8;--border-hover: #d5d1c7;--brand: #6c5ce7;--brand-soft: #a29bfe;--brand-muted: #ddd6fe;--brand-deep: #5b4cc4;--brand-bg: rgba(108, 92, 231, .06);--brand-bg-hover: rgba(108, 92, 231, .1);--accent: #e84393;--accent-soft: #fd79a8;--accent-bg: rgba(232, 67, 147, .06);--text: #1a1a24;--text-secondary: #707078;--text-tertiary: #aeaeb6;--text-placeholder: #c4c4ca;--green: #10b981;--green-bg: rgba(16, 185, 129, .08);--red: #ef4444;--red-bg: rgba(239, 68, 68, .08);--amber: #f59e0b;--amber-bg: rgba(245, 158, 11, .08);--shadow-none: none;--shadow-xs: 0 1px 2px rgba(0, 0, 0, .03);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .04), 0 1px 2px rgba(0, 0, 0, .03);--shadow-md: 0 4px 12px rgba(0, 0, 0, .04), 0 2px 4px rgba(0, 0, 0, .03);--shadow-lg: 0 12px 32px rgba(0, 0, 0, .05), 0 4px 8px rgba(0, 0, 0, .03);--shadow-xl: 0 20px 48px rgba(0, 0, 0, .06), 0 8px 16px rgba(0, 0, 0, .03);--radius-none: 0;--radius-xs: 6px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 20px;--radius-2xl: 24px;--radius-full: 9999px;--font: -apple-system, BlinkMacSystemFont, "SF Pro Display", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", sans-serif;--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-in-out: cubic-bezier(.4, 0, .2, 1);--duration-fast: .15s;--duration-base: .2s;--duration-slow: .35s}*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%;margin:0;padding:0;background:var(--bg-root);color:var(--text);font-family:var(--font);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:15px;line-height:1.6}::-webkit-scrollbar{width:5px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#0000001a;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#0000002e}::-moz-selection{background:var(--brand-bg);color:var(--brand)}::selection{background:var(--brand-bg);color:var(--brand)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:box-shadow var(--duration-base) var(--ease-in-out),border-color var(--duration-base) var(--ease-in-out)}.card--hoverable:hover{border-color:var(--border-hover);box-shadow:var(--shadow-md)}.card--flat{box-shadow:none}.card--raised{box-shadow:var(--shadow-md)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:9px 20px;border-radius:var(--radius-md);font-size:14px;font-weight:600;font-family:var(--font);cursor:pointer;transition:all var(--duration-base) var(--ease-in-out);border:none;outline:none;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;user-select:none}.btn:disabled{opacity:.45;cursor:not-allowed;pointer-events:none}.btn--primary{background:var(--brand);color:#fff;box-shadow:0 1px 2px #6c5ce733}.btn--primary:hover:not(:disabled){background:var(--brand-deep);box-shadow:0 4px 14px #6c5ce74d;transform:translateY(-1px)}.btn--primary:active:not(:disabled){transform:translateY(0);box-shadow:0 1px 2px #6c5ce733}.btn--secondary{background:var(--surface);color:var(--text);border:1px solid var(--border);box-shadow:var(--shadow-xs)}.btn--secondary:hover:not(:disabled){background:var(--surface-hover);border-color:var(--border-hover);box-shadow:var(--shadow-sm)}.btn--ghost{background:transparent;color:var(--text-secondary);border:1px solid transparent}.btn--ghost:hover:not(:disabled){background:var(--bg-subtle);color:var(--text)}.btn--text{background:transparent;color:var(--brand);padding:6px 12px}.btn--text:hover:not(:disabled){background:var(--brand-bg)}.btn--danger{background:transparent;color:var(--red);border:1px solid transparent}.btn--danger:hover:not(:disabled){background:var(--red-bg)}.btn--sm{padding:5px 14px;font-size:13px;border-radius:var(--radius-sm)}.btn--lg{padding:12px 28px;font-size:16px;border-radius:var(--radius-lg)}.btn--xl{padding:14px 36px;font-size:17px;border-radius:var(--radius-xl)}.input{width:100%;padding:10px 14px;border-radius:var(--radius-md);border:1px solid var(--border);background:var(--surface);color:var(--text);font-size:14px;font-family:var(--font);outline:none;transition:border-color var(--duration-base) var(--ease-in-out),box-shadow var(--duration-base) var(--ease-in-out),background var(--duration-base) var(--ease-in-out)}.input::-moz-placeholder{color:var(--text-placeholder)}.input::placeholder{color:var(--text-placeholder)}.input:hover{border-color:var(--border-hover)}.input:focus{border-color:var(--brand);box-shadow:0 0 0 3px #6c5ce71f;background:var(--surface)}.input:disabled{background:var(--bg-subtle);color:var(--text-tertiary);cursor:not-allowed}.textarea{width:100%;padding:10px 14px;border-radius:var(--radius-md);border:1px solid var(--border);background:var(--surface);color:var(--text);font-size:14px;font-family:var(--font);outline:none;resize:vertical;min-height:80px;line-height:1.6;transition:border-color var(--duration-base) var(--ease-in-out),box-shadow var(--duration-base) var(--ease-in-out)}.textarea::-moz-placeholder{color:var(--text-placeholder)}.textarea::placeholder{color:var(--text-placeholder)}.textarea:focus{border-color:var(--brand);box-shadow:0 0 0 3px #6c5ce71f}.badge{display:inline-flex;align-items:center;gap:4px;padding:2px 10px;border-radius:var(--radius-full);font-size:12px;font-weight:500;line-height:1.6}.badge--brand{background:var(--brand-bg);color:var(--brand)}.badge--accent{background:var(--accent-bg);color:var(--accent)}.badge--green{background:var(--green-bg);color:var(--green)}.badge--red{background:var(--red-bg);color:var(--red)}.badge--amber{background:var(--amber-bg);color:var(--amber)}.divider{height:1px;background:var(--border);border:none;margin:16px 0}@keyframes spin{to{transform:rotate(360deg)}}.spinner{width:18px;height:18px;border:2px solid var(--border);border-top-color:var(--brand);border-radius:50%;animation:spin .6s linear infinite}.spinner--sm{width:14px;height:14px;border-width:1.5px}.spinner--lg{width:24px;height:24px;border-width:2.5px}.spinner--white{border-color:#ffffff40;border-top-color:#fff}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.skeleton{background:linear-gradient(90deg,var(--bg-subtle) 25%,var(--border-light) 37%,var(--bg-subtle) 63%);background-size:200% 100%;animation:shimmer 1.5s ease-in-out infinite;border-radius:var(--radius-md)}.gradient-text{background:linear-gradient(135deg,var(--brand) 0%,var(--accent-soft) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}@keyframes pulse-glow{0%,to{box-shadow:0 0 #6c5ce740}50%{box-shadow:0 0 0 12px #6c5ce700}}.pulse-glow{animation:pulse-glow 2.5s ease infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.55}}.img-cover{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.upload-zone{border:1.5px dashed var(--border);border-radius:var(--radius-lg);transition:all var(--duration-base) var(--ease-in-out);cursor:pointer;background:var(--bg-root)}.upload-zone:hover,.upload-zone--active{border-color:var(--brand);background:var(--brand-bg)}.truncate{overflow:hidden;text-overflow:ellipsis;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}.wb-dark{--header-bg: rgba(23, 23, 26, .88);--bg-root: #17171a;--bg-page: #17171a;--bg-subtle: #232327;--bg: #1c1c20;--surface: #232327;--surface-hover: #2a2a2e;--surface-raised: #2a2a2e;--bg-elevated: #2a2a2e;--border: #333338;--border-light: #2a2a2e;--border-hover: #46464c;--brand: #7c5cff;--brand-soft: #a78bfa;--brand-muted: #3a3352;--brand-bg: rgba(124, 92, 255, .14);--brand-bg-hover: rgba(124, 92, 255, .22);--brand-light: rgba(124, 92, 255, .16);--text: #f5f5f7;--text-secondary: #9a9aa3;--text-tertiary: #66666e;--text-placeholder: #55555c;--green-bg: rgba(16, 185, 129, .14);--red-bg: rgba(239, 68, 68, .14);--amber-bg: rgba(245, 158, 11, .14);--shadow-xs: 0 1px 2px rgba(0, 0, 0, .3);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .35);--shadow-md: 0 4px 12px rgba(0, 0, 0, .4);--shadow-lg: 0 12px 32px rgba(0, 0, 0, .45)}.wb-dark ::-webkit-scrollbar-thumb{background:#ffffff24}.wb-dark ::-webkit-scrollbar-thumb:hover{background:#ffffff38}
