@tailwind base;@tailwind components;@tailwind utilities;:root{--color-primary: #6366F1;--color-primary-hover: #4F46E5;--color-primary-active: #4338CA;--color-primary-soft: #EEF2FF;--color-accent: #3B82F6;--color-accent-hover: #2563EB;--gradient-brand: linear-gradient(135deg, #6366F1 0%, #3B82F6 100%);--gradient-brand-hover: linear-gradient(135deg, #4F46E5 0%, #2563EB 100%);--gradient-hero: linear-gradient(135deg, #6366F1 0%, #3B82F6 55%, #06B6D4 100%);--gradient-subtle: linear-gradient(135deg, #EEF2FF 0%, #EFF6FF 100%);--color-bg: #FFFFFF;--color-bg-layout: #F8FAFC;--color-bg-soft: #F1F5F9;--color-text: #0F172A;--color-text-secondary: #475569;--color-text-tertiary: #94A3B8;--color-border: #E2E8F0;--color-border-soft: #F1F5F9;--color-success: #10B981;--color-success-soft: #ECFDF5;--color-warning: #F59E0B;--color-warning-soft: #FFFBEB;--color-error: #EF4444;--color-error-soft: #FEF2F2;--color-info: #3B82F6;--color-info-soft: #EFF6FF;--radius-sm: 6px;--radius-btn: 8px;--radius-card: 12px;--radius-lg: 16px;--radius-pill: 999px;--shadow-xs: 0 1px 2px rgba(15, 23, 42, .04);--shadow-card: 0 1px 2px rgba(15, 23, 42, .04), 0 1px 3px rgba(15, 23, 42, .06);--shadow-card-hover: 0 4px 12px rgba(99, 102, 241, .1), 0 2px 6px rgba(15, 23, 42, .06);--shadow-pop: 0 8px 24px rgba(15, 23, 42, .1);--shadow-brand: 0 8px 20px rgba(99, 102, 241, .28);--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Helvetica, Arial, sans-serif;--font-display: "Inter", -apple-system, BlinkMacSystemFont, "PingFang SC", "Microsoft YaHei", "Helvetica Neue", sans-serif}*{box-sizing:border-box}html,body,#root{height:100%;margin:0;padding:0}body{font-family:var(--font-sans);background:var(--color-bg-layout);color:var(--color-text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"cv11","ss01";letter-spacing:-.01em}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#94a3b8}::selection{background:#6366f12e;color:var(--color-text)}@layer components{.gradient-brand{background-image:var(--gradient-brand)}.gradient-hero{background-image:var(--gradient-hero)}.gradient-subtle{background-image:var(--gradient-subtle)}.text-gradient-brand{background-image:var(--gradient-brand);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent}.text-gradient-hero{background-image:var(--gradient-hero);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent}.card-saas{background:#fff;border:1px solid var(--color-border-soft);border-radius:var(--radius-card);box-shadow:var(--shadow-card);transition:box-shadow .25s ease,transform .25s ease,border-color .25s ease}.card-saas-hover{cursor:pointer}.card-saas-hover:hover{box-shadow:var(--shadow-card-hover);border-color:#c7d2fe;transform:translateY(-2px)}.btn-brand{background-image:var(--gradient-brand);color:#fff;border:none;border-radius:var(--radius-btn);box-shadow:0 1px 2px #6366f13d;transition:background-image .2s ease,box-shadow .2s ease,transform .15s ease}.btn-brand:hover:not(:disabled){background-image:var(--gradient-brand-hover);box-shadow:var(--shadow-brand);transform:translateY(-1px)}.btn-brand:active:not(:disabled){transform:translateY(0)}.btn-brand:disabled{opacity:.55;cursor:not-allowed}.btn-ghost{background:#fff;color:var(--color-primary);border:1px solid #C7D2FE;border-radius:var(--radius-btn);transition:all .2s ease}.btn-ghost:hover:not(:disabled){background:var(--color-primary-soft);border-color:var(--color-primary)}.kpi-tile{position:relative;background:#fff;border:1px solid var(--color-border-soft);border-radius:var(--radius-card);box-shadow:var(--shadow-card);padding:20px 22px;overflow:hidden;transition:box-shadow .25s ease,transform .25s ease}.kpi-tile:hover{box-shadow:var(--shadow-card-hover);transform:translateY(-2px)}.kpi-icon{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:10px;background-image:var(--gradient-brand);color:#fff;font-size:18px;box-shadow:0 4px 10px #6366f13d}.badge-status{display:inline-flex;align-items:center;gap:4px;padding:2px 10px;border-radius:var(--radius-pill);font-size:12px;font-weight:500;line-height:20px}.badge-dot{width:6px;height:6px;border-radius:50%;display:inline-block}.glass{background:#ffffffb8;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.6)}.input-brand:focus,.input-brand:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 3px #6366f11f}.divider-soft{border:none;border-top:1px solid var(--color-border-soft);margin:0}}@layer utilities{.animate-fade-in{animation:fadeIn .5s ease both}.animate-fade-in-up{animation:fadeInUp .55s cubic-bezier(.22,1,.36,1) both}.animate-fade-in-up-delay-1{animation:fadeInUp .55s cubic-bezier(.22,1,.36,1) .08s both}.animate-fade-in-up-delay-2{animation:fadeInUp .55s cubic-bezier(.22,1,.36,1) .16s both}.animate-fade-in-up-delay-3{animation:fadeInUp .55s cubic-bezier(.22,1,.36,1) .24s both}.animate-pulse-soft{animation:pulseSoft 2.4s ease-in-out infinite}.animate-float{animation:float 3.5s ease-in-out infinite}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes pulseSoft{0%,to{opacity:1}50%{opacity:.55}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}}.ant-btn-primary{background-image:var(--gradient-brand)!important;border:none!important;box-shadow:0 1px 2px #6366f13d!important;border-radius:var(--radius-btn)!important}.ant-btn-primary:hover:not(:disabled){background-image:var(--gradient-brand-hover)!important;box-shadow:var(--shadow-brand)!important}.ant-btn-primary:disabled{opacity:.55}.ant-btn-default{border-radius:var(--radius-btn)!important;border-color:var(--color-border)!important;color:var(--color-text-secondary)!important}.ant-btn-default:hover{color:var(--color-primary)!important;border-color:var(--color-primary)!important;background:var(--color-primary-soft)!important}.ant-card{border-radius:var(--radius-card)!important;border-color:var(--color-border-soft)!important;box-shadow:var(--shadow-card)!important}.ant-input,.ant-input-affix-wrapper,.ant-input-number,.ant-picker,.ant-select .ant-select-selector{border-radius:var(--radius-btn)!important}.ant-input:focus,.ant-input-affix-wrapper:focus,.ant-input-affix-wrapper-focused,.ant-picker-focused,.ant-select-focused .ant-select-selector{border-color:var(--color-primary)!important;box-shadow:0 0 0 3px #6366f11f!important}.ant-tabs .ant-tabs-ink-bar{background:var(--gradient-brand)!important}.ant-tabs-tab.ant-tabs-tab-active .ant-tabs-tab-btn{color:var(--color-primary)!important;font-weight:600}.ant-steps-item-finish .ant-steps-item-icon{background:var(--color-primary-soft);border-color:var(--color-primary)}.ant-steps-item-finish .ant-steps-item-icon .ant-steps-icon{color:var(--color-primary)}.ant-steps-item-active .ant-steps-item-icon{background-image:var(--gradient-brand);border:none}.ant-steps-item-active .ant-steps-item-icon .ant-steps-icon{color:#fff}.ant-progress-bg{background-image:var(--gradient-brand)!important}.ant-tag{border-radius:var(--radius-pill)!important}.ant-modal-content{border-radius:var(--radius-lg)!important;box-shadow:var(--shadow-pop)!important}.ant-menu-item-selected{color:var(--color-primary)!important}.ant-menu-item-selected:after{background:var(--gradient-brand)!important}
