@import"https://fonts.googleapis.com/css2?family=Fira+Code:wght@400;500;600;700&family=Fira+Sans:wght@300;400;500;600;700&family=Plus+Jakarta+Sans:wght@400;500;600;700;800&family=Outfit:wght@300;400;500;600;700&family=Work+Sans:wght@300;400;500;600;700&display=swap";:root{--primary-color: #2563EB;--primary-hover: #3B82F6;--primary-light: #EFF6FF;--cta-color: #F97316;--secondary-color: #64748B;--success-color: #10B981;--warning-color: #F59E0B;--error-color: #EF4444;--info-color: #3B82F6;--status-pending: #8B5CF6;--status-success: #10B981;--status-warning: #F59E0B;--neutral-1: #ffffff;--neutral-2: #f8fafc;--neutral-3: #f1f5f9;--neutral-50: #f9fafb;--neutral-100: #f3f4f6;--neutral-200: #e5e7eb;--neutral-300: #d1d5db;--neutral-400: #9ca3af;--neutral-500: #6b7280;--neutral-600: #4b5563;--neutral-700: #374151;--neutral-800: #1f2937;--neutral-900: #111827;--bg-primary: #F8FAFC;--bg-secondary: #ffffff;--bg-tertiary: #f1f5f9;--text-primary: #1E293B;--text-secondary: #475569;--text-tertiary: #64748B;--text-placeholder: #94a3b8;--border-light: #f1f5f9;--border-medium: #e2e8f0;--border-dark: #cbd5e1;--glass-bg: rgba(255, 255, 255, .85);--glass-bg-hover: rgba(255, 255, 255, .95);--glass-border: rgba(226, 232, 240, .9);--glass-backdrop: blur(15px);--gradient-primary: linear-gradient(135deg, #2563EB 0%, #3B82F6 100%);--gradient-secondary: linear-gradient(135deg, #10B981 0%, #3B82F6 100%);--font-family-primary: "Fira Sans", "PingFang SC", "Microsoft YaHei", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-family-display: "Plus Jakarta Sans", "PingFang SC", -apple-system, sans-serif;--font-family-landing-heading: "Outfit", "PingFang SC", -apple-system, sans-serif;--font-family-landing-body: "Work Sans", "PingFang SC", -apple-system, sans-serif;--font-family-mono: "Fira Code", "SF Mono", Monaco, "Cascadia Code", monospace;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--space-16: 64px;--space-20: 80px;--space-24: 96px;--text-micro: 11px;--text-xs: 12px;--text-sm: 14px;--text-compact: 13px;--text-base: 14px;--text-md: 15px;--text-lead: 16px;--text-lg: 18px;--text-xl: 20px;--text-title-sm: 22px;--text-2xl: 24px;--text-3xl: 30px;--text-card-heading: 32px;--text-4xl: 36px;--text-icon-lg: 20px;--font-light: 300;--font-normal: 400;--font-medium: 500;--font-semibold: 600;--font-bold: 700;--leading-tight: 1.25;--leading-normal: 1.5;--leading-ui: 1.5715;--leading-relaxed: 1.625;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-2xl: 20px;--radius-full: 9999px;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--duration-150: .15s;--duration-200: .2s;--duration-300: .3s;--ease-in-out: cubic-bezier(.4, 0, .2, 1);--ease-out: cubic-bezier(0, 0, .2, 1);--breakpoint-xs: 375px;--breakpoint-sm: 768px;--breakpoint-md: 1024px;--breakpoint-lg: 1440px;--text-lead-fluid: clamp(15px, .28vw + 13.2px, 18px);--text-title-sm-fluid: clamp(20px, 1vw + 16px, 26px);--page-transition: background .15s ease-out;--portal-workspace-page-bg: linear-gradient(180deg, #f8fafc 0%, #f1f5f9 100%);--portal-workspace-app-bg: rgba(255, 255, 255, .85);--portal-workspace-app-border: rgba(0, 0, 0, .06);--portal-workspace-app-shadow: 0 8px 32px rgba(0, 0, 0, .08);--portal-workspace-app-overlay: linear-gradient( 120deg, rgba(255, 255, 255, .04), transparent 18%, transparent 78%, rgba(255, 255, 255, .03) ), radial-gradient(circle at 68% 18%, rgba(72, 216, 255, .06), transparent 16%);--portal-workspace-app-overlay-size: auto;--portal-workspace-app-overlay-opacity: 1;--portal-workspace-topbar: rgba(255, 255, 255, .8);--portal-workspace-line: rgba(0, 0, 0, .08);--portal-workspace-line-soft: rgba(0, 0, 0, .06);--portal-workspace-dock-bg: rgba(255, 255, 255, .85);--portal-workspace-dock-active: linear-gradient(135deg, rgba(37, 99, 235, .14), rgba(59, 130, 246, .08));--portal-workspace-dock-active-border: rgba(37, 99, 235, .2);--portal-workspace-ghost: rgba(255, 255, 255, .6);--portal-workspace-ghost-border: rgba(0, 0, 0, .08);--portal-workspace-tab-active: linear-gradient(135deg, rgba(37, 99, 235, .12), rgba(59, 130, 246, .08));--portal-workspace-surface-hover: rgba(255, 255, 255, .9);--portal-text-primary: var(--text-primary);--portal-text-secondary: var(--text-secondary);--portal-text-tertiary: var(--text-tertiary);--portal-line: var(--portal-workspace-line);--portal-line-soft: var(--portal-workspace-line-soft);--portal-admin-shell-bg-light: linear-gradient(135deg, #e8ecf5 0%, #f1f5f9 45%, #f8fafc 100%);--portal-admin-shell-bg-dark: radial-gradient(circle at 18% 18%, rgba(57, 212, 255, .1), transparent 20%), radial-gradient(circle at 78% 16%, rgba(124, 108, 255, .12), transparent 22%), linear-gradient(180deg, #0c1828 0%, #101f32 100%)}[data-theme=dark]{--primary-color: #3B82F6;--primary-hover: #60a5fa;--primary-light: rgba(59, 130, 246, .15);--cta-color: #F97316;--secondary-color: #94a3b8;--success-color: #10B981;--warning-color: #F59E0B;--error-color: #EF4444;--info-color: #3B82F6;--status-pending: #8B5CF6;--status-success: #10B981;--status-warning: #F59E0B;--neutral-1: #0f172a;--neutral-2: #1e293b;--neutral-3: #334155;--neutral-9: #f8fafc;--neutral-7: #94a3b8;--bg-primary: #0f172a;--bg-secondary: #1e293b;--bg-tertiary: #334155;--text-primary: #f8fafc;--text-secondary: #e2e8f0;--text-tertiary: #94a3b8;--text-placeholder: #64748b;--border-light: rgba(255, 255, 255, .08);--border-medium: rgba(255, 255, 255, .12);--border-dark: rgba(255, 255, 255, .18);--glass-bg: rgba(255, 255, 255, .06);--glass-bg-hover: rgba(255, 255, 255, .1);--glass-border: rgba(255, 255, 255, .1);--glass-backdrop: blur(15px);--gradient-primary: linear-gradient(135deg, #2563EB 0%, #3B82F6 100%);--gradient-secondary: linear-gradient(135deg, #10B981 0%, #3B82F6 100%);--font-family-display: "Plus Jakarta Sans", "PingFang SC", -apple-system, sans-serif;--font-family-landing-heading: "Outfit", "PingFang SC", -apple-system, sans-serif;--font-family-landing-body: "Work Sans", "PingFang SC", -apple-system, sans-serif;--portal-workspace-page-bg: radial-gradient(circle at 18% 18%, rgba(57, 212, 255, .12), transparent 20%), radial-gradient(circle at 78% 16%, rgba(124, 108, 255, .14), transparent 22%), linear-gradient(180deg, #0c1828 0%, #101f32 100%);--portal-workspace-app-bg: linear-gradient(180deg, rgba(14, 24, 42, .92), rgba(19, 30, 48, .96));--portal-workspace-app-border: rgba(170, 200, 255, .12);--portal-workspace-app-shadow: 0 28px 90px rgba(0, 0, 0, .34);--portal-workspace-app-overlay: radial-gradient(circle at 72% 26%, rgba(57, 212, 255, .1), transparent 18%), radial-gradient(circle at 66% 66%, rgba(79, 124, 255, .1), transparent 24%), linear-gradient(90deg, transparent 0%, rgba(255, 255, 255, .02) 48%, transparent 52%);--portal-workspace-app-overlay-size: auto, auto, 120px 120px;--portal-workspace-app-overlay-opacity: .6;--portal-workspace-topbar: linear-gradient(180deg, rgba(25, 38, 70, .72), rgba(19, 31, 59, .4));--portal-workspace-line: rgba(170, 200, 255, .14);--portal-workspace-line-soft: rgba(170, 200, 255, .08);--portal-workspace-dock-bg: linear-gradient(180deg, rgba(24, 37, 68, .82), rgba(19, 31, 58, .9));--portal-workspace-dock-active: linear-gradient(135deg, rgba(109, 125, 255, .18), rgba(72, 216, 255, .1));--portal-workspace-dock-active-border: rgba(109, 125, 255, .18);--portal-workspace-ghost: rgba(255, 255, 255, .04);--portal-workspace-ghost-border: rgba(170, 200, 255, .14);--portal-workspace-tab-active: linear-gradient(135deg, rgba(109, 125, 255, .18), rgba(72, 216, 255, .1));--portal-workspace-surface-hover: rgba(255, 255, 255, .06);--portal-text-primary: var(--text-primary);--portal-text-secondary: var(--text-secondary);--portal-text-tertiary: var(--text-tertiary);--portal-line: var(--portal-workspace-line);--portal-line-soft: var(--portal-workspace-line-soft)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{line-height:var(--leading-ui);-webkit-text-size-adjust:100%;font-family:var(--font-family-primary);color:var(--text-primary)}body{margin:0;font-family:var(--font-family-primary);font-size:var(--text-base);line-height:var(--leading-ui);color:var(--text-primary);background-color:var(--bg-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:var(--primary-color);text-decoration:none;transition:color var(--duration-200) var(--ease-in-out)}a:hover{color:var(--primary-hover);text-decoration:underline}button{font-family:inherit;font-size:inherit;line-height:inherit;margin:0;overflow:visible;text-transform:none;cursor:pointer}button:focus{outline:none}button:focus-visible{outline:2px solid var(--primary-color);outline-offset:2px}input,textarea,select{font-family:inherit;font-size:inherit;line-height:inherit;margin:0}input:focus,textarea:focus,select:focus{outline:2px solid var(--primary-color);outline-offset:2px}img{max-width:100%;height:auto;border-style:none}ul,ol{list-style:none}table{border-collapse:collapse;border-spacing:0}.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}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 var(--space-4)}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.font-light{font-weight:var(--font-light)}.font-normal{font-weight:var(--font-normal)}.font-medium{font-weight:var(--font-medium)}.font-semibold{font-weight:var(--font-semibold)}.font-bold{font-weight:var(--font-bold)}.text-xs{font-size:var(--text-xs)}.text-sm{font-size:var(--text-sm)}.text-base{font-size:var(--text-base)}.text-lg{font-size:var(--text-lg)}.text-xl{font-size:var(--text-xl)}.text-2xl{font-size:var(--text-2xl)}.text-3xl{font-size:var(--text-3xl)}.text-4xl{font-size:var(--text-4xl)}.rounded-sm{border-radius:var(--radius-sm)}.rounded-md{border-radius:var(--radius-md)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-full{border-radius:var(--radius-full)}.shadow-sm{box-shadow:var(--shadow-sm)}.shadow-md{box-shadow:var(--shadow-md)}.shadow-lg{box-shadow:var(--shadow-lg)}.shadow-xl{box-shadow:var(--shadow-xl)}@media (min-width: 640px){.sm\:text-sm{font-size:var(--text-sm)}.sm\:text-base{font-size:var(--text-base)}.sm\:text-lg{font-size:var(--text-lg)}}@media (min-width: 768px){.md\:text-base{font-size:var(--text-base)}.md\:text-lg{font-size:var(--text-lg)}.md\:text-xl{font-size:var(--text-xl)}}@media (min-width: 1024px){.lg\:text-lg{font-size:var(--text-lg)}.lg\:text-xl{font-size:var(--text-xl)}.lg\:text-2xl{font-size:var(--text-2xl)}}::selection{background-color:#667eea33;color:var(--text-primary)}.focus-visible{outline:2px solid var(--primary-color);outline-offset:2px}.fade-in{animation:fadeIn var(--duration-300) var(--ease-out)}.slide-up{animation:slideUp var(--duration-300) var(--ease-out)}.scale-in{animation:scaleIn var(--duration-200) var(--ease-out)}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes scaleIn{0%{transform:scale(.95);opacity:0}to{transform:scale(1);opacity:1}}.loading{position:relative;overflow:hidden}.loading:after{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.4),transparent);animation:loading 1.5s infinite}@keyframes loading{0%{left:-100%}to{left:100%}}.error-state{color:var(--error-color);border-color:var(--error-color)}.success-state{color:var(--success-color);border-color:var(--success-color)}.warning-state{color:var(--warning-color);border-color:var(--warning-color)}@media print{*{background:transparent!important;color:#000!important;box-shadow:none!important;text-shadow:none!important}a,a:visited{text-decoration:underline}a[href]:after{content:" (" attr(href) ")"}abbr[title]:after{content:" (" attr(title) ")"}.no-print{display:none!important}}*{margin:0;padding:0;box-sizing:border-box}html,body{height:100%;width:100%;max-width:100%;overflow-x:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-attachment:fixed;background-size:100% 100%;background-repeat:no-repeat;-webkit-overflow-scrolling:touch;overscroll-behavior:none;-webkit-overscroll-behavior:none;scroll-behavior:auto!important;transition:background-color .22s var(--ease-out, ease-out)}@media (prefers-reduced-motion: reduce){html,body{transition:none}}html{background-color:var(--bg-primary);background-image:none;background-attachment:fixed}body{background-color:var(--bg-primary);-webkit-user-select:none;user-select:none}input,textarea,select,option,[contenteditable=true],[contenteditable=plaintext-only],.allow-user-select,.allow-user-select *{-webkit-user-select:text;user-select:text}html[data-theme=dark],html.dark,body[data-theme=dark],body.dark{background-color:var(--bg-primary);background-image:none}html:before,html:after,body:before,body:after{content:none}body.login-page,body.register-page,body.forgot-password-page,html.login-page,html.register-page,html.forgot-password-page{overflow-x:hidden!important;overflow-y:auto!important}#root{min-height:100%;overflow-anchor:none}#root.login-page,#root.register-page,#root.forgot-password-page{min-height:100vh!important;min-height:-webkit-fill-available!important}@supports (-webkit-touch-callout: none){html,body{position:static;overflow-y:auto;width:100%;min-height:100%}}*{-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none}html,body{transition:var(--page-transition);transform:translateZ(0);backface-visibility:hidden}html,body{scrollbar-width:none;-ms-overflow-style:none}::-webkit-scrollbar{width:0;height:0;display:none}::selection{background-color:var(--primary-light);color:var(--primary-color)}.flex{display:flex}.flex-center{display:flex;align-items:center;justify-content:center}.flex-between{display:flex;align-items:center;justify-content:space-between}.flex-col{display:flex;flex-direction:column}.w-full{width:100%}.h-full{height:100%}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.cursor-pointer{cursor:pointer}.select-none{-webkit-user-select:none;user-select:none}.bento-card{background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-backdrop);backdrop-filter:var(--glass-backdrop);border:1px solid var(--glass-border);border-radius:16px;padding:24px;transition:background .2s ease,border-color .2s ease,box-shadow .2s ease;position:relative;overflow:hidden;cursor:pointer}.bento-card:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:var(--gradient-primary);opacity:0;transition:opacity .2s ease}.bento-card:hover:before{opacity:1}.bento-card:hover{background:var(--glass-bg-hover);box-shadow:0 8px 32px #2563eb1f}.neu-button{background:var(--bg-tertiary);border:none;border-radius:12px;padding:12px 24px;box-shadow:6px 6px 12px #0000001a,-6px -6px 12px #fffc;transition:all .2s ease;cursor:pointer}.neu-button:hover{box-shadow:3px 3px 6px #0000001a,-3px -3px 6px #fffc}.neu-button:active{box-shadow:inset 3px 3px 6px #0000001a,inset -3px -3px 6px #fffc}.gradient-text{background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}@media (max-width: 768px){.hidden-mobile{display:none!important}}@media (min-width: 769px){.hidden-desktop{display:none!important}}.fade-in{animation:fadeIn .3s ease-in-out}.slide-up{animation:slideUp .3s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.loading-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.ant-layout{background:var(--bg-secondary)}html[data-theme=dark] .ant-layout,html.dark .ant-layout,html[data-theme=dark] .ant-layout.ant-layout-has-sider,html.dark .ant-layout.ant-layout-has-sider,html[data-theme=dark] div.ant-layout,html.dark div.ant-layout,html[data-theme=dark] div.ant-layout.ant-layout-has-sider,html.dark div.ant-layout.ant-layout-has-sider{background:transparent!important;background-color:transparent!important;background-image:none!important}.ant-layout-sider{background:var(--bg-secondary)!important}html[data-theme=dark] .ant-layout-content,html.dark .ant-layout-content,html[data-theme=dark] main.ant-layout-content,html.dark main.ant-layout-content,html[data-theme=dark] div.ant-layout-content,html.dark div.ant-layout-content{background:transparent!important;background-color:transparent!important;background-image:none!important}html[data-theme=dark] #root,html.dark #root,[data-theme=dark] #root{background:transparent!important;background-color:transparent!important}html,body{overflow-x:hidden!important;overflow-y:auto!important;max-width:100vw!important;min-height:100%!important;overscroll-behavior-y:auto}#root{overflow-x:hidden!important;overflow-y:visible!important;max-width:100vw!important;min-height:100%!important}.ant-menu{background:transparent!important;border-right:none!important}.ant-card{border-radius:12px!important;box-shadow:var(--shadow-sm)!important}.ant-button{border-radius:8px!important;transition:all .2s ease!important}.ant-input,.ant-input-password{border-radius:8px!important}.ant-form-item-label>label{font-weight:500}@media (max-width: 480px){.hidden-xs{display:none!important}}@media (max-width: 768px){.hidden-sm{display:none!important}}@media (max-width: 1024px){.hidden-md{display:none!important}}@media (max-width: 1280px){.hidden-lg{display:none!important}}@media (min-width: 481px){.visible-xs{display:none!important}}@media (min-width: 769px){.visible-sm{display:none!important}}@media (min-width: 1025px){.visible-md{display:none!important}}@media (min-width: 1281px){.visible-lg{display:none!important}}.text-center-mobile{text-align:left}@media (max-width: 768px){.text-center-mobile{text-align:center}}.p-responsive{padding:16px}.px-responsive{padding-left:16px;padding-right:16px}.py-responsive{padding-top:16px;padding-bottom:16px}.m-responsive{margin:16px}.mx-responsive{margin-left:16px;margin-right:16px}.my-responsive{margin-top:16px;margin-bottom:16px}@media (min-width: 768px){.p-responsive{padding:24px}.px-responsive{padding-left:24px;padding-right:24px}.py-responsive{padding-top:24px;padding-bottom:24px}.m-responsive{margin:24px}.mx-responsive{margin-left:24px;margin-right:24px}.my-responsive{margin-top:24px;margin-bottom:24px}}@media (min-width: 1024px){.p-responsive{padding:32px}.px-responsive{padding-left:32px;padding-right:32px}.py-responsive{padding-top:32px;padding-bottom:32px}.m-responsive{margin:32px}.mx-responsive{margin-left:32px;margin-right:32px}.my-responsive{margin-top:32px;margin-bottom:32px}}.ant-btn{font-family:var(--font-family-primary);font-weight:var(--font-medium);transition:all var(--duration-200) var(--ease-in-out)}.ant-input{font-family:var(--font-family-primary);transition:all var(--duration-200) var(--ease-in-out)}.ant-card{font-family:var(--font-family-primary);box-shadow:var(--shadow-md);border-radius:var(--radius-xl)}.ant-modal{font-family:var(--font-family-primary)}.ant-modal-content{border-radius:var(--radius-xl);box-shadow:var(--shadow-xl)}.ant-table{font-family:var(--font-family-primary)}.ant-form-item-label>label{font-family:var(--font-family-primary);font-weight:var(--font-medium)}
