:root{--color-primary: #006C7A;--color-primary-hover: #00798E;--color-primary-active: #005462;--color-primary-soft: #E0EEF1;--color-primary-line: rgba(0, 108, 122, .18);--color-copper: #B45309;--color-copper-soft: #FDF1E2;--color-copper-line: rgba(180, 83, 9, .24);--color-bg: #F4F7F8;--color-bg-deep: #ECF0F2;--color-surface: #FFFFFF;--color-surface-2: #F9FBFB;--color-text: #0F1419;--color-text-secondary: #4B5A6B;--color-text-muted: #7C8997;--color-text-inverse: #F4F7F8;--color-border: #DEE5E9;--color-border-strong: #C5CFD5;--color-divider: #ECF0F2;--color-success: #1F8E5E;--color-warning: #B45309;--color-danger: #C8342B;--color-info: #1B6B83;--shadow-xs: 0 1px 2px rgba(15, 30, 38, .04);--shadow-sm: 0 2px 6px rgba(15, 30, 38, .06);--shadow-md: 0 8px 20px rgba(15, 30, 38, .08), 0 2px 4px rgba(15, 30, 38, .04);--shadow-lg: 0 24px 64px rgba(8, 22, 32, .16);--radius-xs: 4px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--font-sans: "Sora", -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Microsoft YaHei", "Source Han Sans SC", "Noto Sans CJK SC", sans-serif;--font-cn: -apple-system, BlinkMacSystemFont, "PingFang SC", "Microsoft YaHei", "Source Han Sans SC", "Noto Sans CJK SC", sans-serif;--font-mono: "JetBrains Mono", "SF Mono", "Cascadia Mono", "Menlo", monospace;--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-in-out: cubic-bezier(.65, 0, .35, 1)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:var(--font-cn);color:var(--color-text);background:var(--color-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;font-feature-settings:"kern","liga","tnum"}#root{min-height:100vh}.app-shell{min-height:100vh;background:var(--color-bg)}.app-sider{background:#0f1419!important;border-right:none}.app-sider .ant-layout-sider-children{display:flex;flex-direction:column}.brand-block{position:relative;height:64px;display:flex;align-items:center;justify-content:center;color:#f4f7f8;font-family:var(--font-sans);font-size:15px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;border-bottom:1px solid rgba(244,247,248,.08)}.brand-block:after{content:"";position:absolute;left:50%;bottom:-1px;width:28px;height:1px;background:var(--color-copper);transform:translate(-50%)}.app-menu{background:transparent!important;color:#f4f7f8b3;border:none!important;padding-top:12px}.app-menu .ant-menu-item{margin:2px 12px;border-radius:var(--radius-sm);color:#f4f7f8b3;height:42px;line-height:42px;font-weight:400;letter-spacing:.02em;transition:all .2s var(--ease-out)}.app-menu .ant-menu-item:hover{background:#f4f7f80f!important;color:#f4f7f8!important}.app-menu .ant-menu-item-selected{background:#006c7a38!important;color:#f4f7f8!important}.app-menu .ant-menu-item-selected:before{content:"";position:absolute;left:-12px;top:50%;height:16px;width:2px;background:var(--color-copper);transform:translateY(-50%)}.app-menu .ant-menu-item-icon{color:#f4f7f899!important}.app-menu .ant-menu-item-selected .ant-menu-item-icon{color:var(--color-copper)!important}.app-header{margin:16px 16px 8px;height:60px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:space-between;background:var(--color-surface)!important;border:1px solid var(--color-border);padding:0 20px!important;box-shadow:var(--shadow-xs)}.app-header .header-toggle{color:var(--color-text-secondary)}.app-header .user-trigger{cursor:pointer;padding:6px 12px;border-radius:var(--radius-sm);transition:background .2s var(--ease-out);font-size:13px;color:var(--color-text)}.app-header .user-trigger:hover{background:var(--color-bg-deep)}.app-content{padding:8px 16px 16px;background:var(--color-bg)}.content-surface{min-height:calc(100vh - 100px);border-radius:0;background:transparent;border:none;padding:16px 8px 24px}.login-container{display:flex;justify-content:center;align-items:center;min-height:100vh;padding:24px;background:radial-gradient(ellipse 90% 60% at 15% 0%,rgba(0,108,122,.45),transparent 55%),radial-gradient(ellipse 70% 50% at 85% 100%,rgba(180,83,9,.18),transparent 50%),linear-gradient(180deg,#0a1218,#06090d);position:relative;overflow:hidden}.login-container:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(244,247,248,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(244,247,248,.04) 1px,transparent 1px);background-size:80px 80px;background-position:-1px -1px;pointer-events:none;mask-image:radial-gradient(ellipse at center,#000 30%,transparent 75%);-webkit-mask-image:radial-gradient(ellipse at center,#000 30%,transparent 75%)}.login-container:after{content:"";position:absolute;inset:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0.06 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");pointer-events:none;opacity:.5;mix-blend-mode:overlay}.login-with-background{background-image:none!important}.login-card{position:relative;z-index:1;width:100%;max-width:440px;padding:56px 44px 44px;border-radius:var(--radius-lg);border:1px solid rgba(244,247,248,.08);background:linear-gradient(158deg,#14202aa8,#0a1218c7);backdrop-filter:blur(22px) saturate(140%);-webkit-backdrop-filter:blur(22px) saturate(140%);box-shadow:var(--shadow-lg);overflow:hidden;animation:login-card-enter .7s var(--ease-out) both}.login-card:before{content:"";position:absolute;top:0;left:44px;width:36px;height:1px;background:var(--color-copper)}.login-card:after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at top right,rgba(0,108,122,.22),transparent 42%);pointer-events:none}.login-eyebrow{position:relative;z-index:1;font-family:var(--font-sans);font-size:11px;letter-spacing:.34em;text-transform:uppercase;color:var(--color-copper);font-weight:500;margin-bottom:14px;animation:login-content-enter .6s .1s var(--ease-out) both}.login-title{position:relative;z-index:1;font-family:var(--font-cn);font-size:26px;font-weight:600;color:#f4f7f8;letter-spacing:.06em;margin-bottom:6px;animation:login-content-enter .6s .18s var(--ease-out) both}.login-subtitle{position:relative;z-index:1;font-family:var(--font-sans);font-size:12px;color:#f4f7f87a;letter-spacing:.04em;margin-bottom:36px;animation:login-content-enter .6s .26s var(--ease-out) both}.login-form{position:relative;z-index:1;animation:login-content-enter .6s .34s var(--ease-out) both}.login-card .ant-form-item-label>label{color:#f4f7f8a8;font-size:12px;letter-spacing:.08em;text-transform:uppercase;font-weight:500}.login-card .ant-input-affix-wrapper,.login-card .ant-input{border-radius:0;border:none;border-bottom:1px solid rgba(244,247,248,.16);background:transparent;color:#f4f7f8;padding:8px 0;transition:border-color .25s var(--ease-out)}.login-card .ant-input-affix-wrapper .ant-input{background:transparent;border:none;padding:0}.login-card .ant-input-affix-wrapper:hover,.login-card .ant-input:hover{border-color:#f4f7f852!important;background:transparent!important}.login-card .ant-input-affix-wrapper:focus,.login-card .ant-input-affix-wrapper-focused,.login-card .ant-input:focus{border-color:var(--color-copper)!important;box-shadow:none!important;background:transparent!important}.login-card .ant-input-affix-wrapper input:-webkit-autofill,.login-card .ant-input-affix-wrapper input:-webkit-autofill:hover,.login-card .ant-input-affix-wrapper input:-webkit-autofill:focus,.login-card .ant-input:-webkit-autofill,.login-card .ant-input:-webkit-autofill:hover,.login-card .ant-input:-webkit-autofill:focus{-webkit-box-shadow:0 0 0 1000px rgb(15,24,32) inset!important;-webkit-text-fill-color:#F4F7F8!important;caret-color:#f4f7f8}.login-card .ant-input::placeholder,.login-card .ant-input-affix-wrapper input::placeholder{color:#f4f7f847;letter-spacing:.02em}.login-card .ant-input-prefix,.login-card .ant-input-password-icon{color:#f4f7f86b;margin-right:10px}.login-card .ant-btn-primary{height:48px;margin-top:12px;border:none;border-radius:var(--radius-sm);background:linear-gradient(180deg,#00798e,#006072);font-family:var(--font-sans);font-weight:500;letter-spacing:.18em;text-transform:uppercase;font-size:13px;color:#f4f7f8;box-shadow:0 12px 32px #006c7a47,inset 0 1px #f4f7f814;transition:transform .2s var(--ease-out),box-shadow .2s var(--ease-out),background .2s var(--ease-out)}.login-card .ant-btn-primary:hover,.login-card .ant-btn-primary:focus{background:linear-gradient(180deg,#00879e,#006c7a)!important;transform:translateY(-1px);box-shadow:0 16px 40px #006c7a5c,inset 0 1px #f4f7f81f}.login-card .ant-btn-primary:active{transform:translateY(0)}.login-footer{position:relative;z-index:1;margin-top:32px;padding-top:20px;border-top:1px solid rgba(244,247,248,.06);display:flex;justify-content:space-between;align-items:center;font-family:var(--font-mono);font-size:10px;color:#f4f7f852;letter-spacing:.1em;animation:login-content-enter .6s .42s var(--ease-out) both}.login-footer .dot{width:4px;height:4px;border-radius:50%;background:var(--color-copper);display:inline-block;margin-right:6px;vertical-align:middle;animation:pulse-copper 2s var(--ease-in-out) infinite}@keyframes login-card-enter{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes login-content-enter{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse-copper{0%,to{opacity:.4;transform:scale(1)}50%{opacity:1;transform:scale(1.15)}}.ant-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-xs);transition:border-color .2s var(--ease-out),box-shadow .2s var(--ease-out)}.ant-card:hover{border-color:var(--color-border-strong)}.ant-card-head{border-bottom:1px solid var(--color-divider);color:var(--color-text);font-family:var(--font-cn);font-weight:600;letter-spacing:.02em;min-height:52px;padding:0 20px}.ant-card-head-title{font-size:14px;font-weight:600}.ant-card-body{color:var(--color-text);padding:20px}.tech-stat-card{position:relative;overflow:hidden;border:1px solid var(--color-border);background:var(--color-surface);transition:transform .25s var(--ease-out),box-shadow .25s var(--ease-out),border-color .25s var(--ease-out)}.tech-stat-card:before{content:"";position:absolute;left:0;top:14px;bottom:14px;width:3px;background:var(--color-primary);border-radius:0 2px 2px 0;transition:background .25s var(--ease-out)}.tech-stat-card.accent-copper:before{background:var(--color-copper)}.tech-stat-card.accent-info:before{background:var(--color-info)}.tech-stat-card.accent-success:before{background:var(--color-success)}.tech-stat-card:hover{transform:translateY(-2px);border-color:var(--color-primary-line);box-shadow:var(--shadow-md)}.tech-stat-grid>div{opacity:0;animation:stat-card-enter .55s var(--ease-out) forwards}.tech-stat-grid>div:nth-child(1){animation-delay:.05s}.tech-stat-grid>div:nth-child(2){animation-delay:.12s}.tech-stat-grid>div:nth-child(3){animation-delay:.19s}.tech-stat-grid>div:nth-child(4){animation-delay:.26s}.tech-stat-grid>div:nth-child(5){animation-delay:.33s}.tech-stat-grid>div:nth-child(6){animation-delay:.4s}@keyframes stat-card-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.tech-stat-card .stat-meta{position:absolute;top:18px;right:20px;display:flex;align-items:center;gap:6px;font-family:var(--font-mono);font-size:10px;letter-spacing:.18em;color:var(--color-text-muted);text-transform:uppercase}.tech-stat-card .stat-meta .meta-dot{width:6px;height:6px;border-radius:50%;background:var(--color-primary);box-shadow:0 0 0 3px #006c7a1f}.tech-stat-card.accent-copper .stat-meta .meta-dot{background:var(--color-copper);box-shadow:0 0 0 3px #b4530924}.tech-stat-card.accent-info .stat-meta .meta-dot{background:var(--color-info);box-shadow:0 0 0 3px #1b6b8324}.tech-stat-card.accent-success .stat-meta .meta-dot{background:var(--color-success);box-shadow:0 0 0 3px #1f8e5e24}.tech-stat-card .ant-card-body{padding:20px 20px 20px 24px}.tech-stat-card .ant-statistic-title{color:var(--color-text-muted);font-size:11px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;margin-bottom:12px;font-family:var(--font-sans)}.tech-stat-card .ant-statistic-content{color:var(--color-text);font-family:var(--font-mono);font-feature-settings:"tnum";font-size:28px!important;font-weight:500;letter-spacing:-.02em;line-height:1.1}.tech-stat-card .ant-statistic-content-prefix{color:var(--color-text-muted);font-size:16px;margin-right:8px}.tech-chart-card .ant-card-head{border-bottom-color:var(--color-divider);padding-left:20px}.tech-chart-card .ant-card-head-title{font-family:var(--font-cn);font-size:13px;letter-spacing:.04em;color:var(--color-text);position:relative;padding-left:12px}.tech-chart-card .ant-card-head-title:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:3px;height:12px;background:var(--color-primary);border-radius:2px}.tech-chart-card .ant-card-body{padding:8px 12px 16px}.ant-statistic-title{color:var(--color-text-secondary);font-size:13px}.ant-statistic-content{color:var(--color-text);font-family:var(--font-mono);font-feature-settings:"tnum"}.ant-btn-primary{background:var(--color-primary);border-color:var(--color-primary);box-shadow:0 1px 2px #006c7a2e;transition:all .2s var(--ease-out)}.ant-btn-primary:hover{background:var(--color-primary-hover)!important;border-color:var(--color-primary-hover)!important;box-shadow:0 4px 12px #006c7a3d}.ant-btn-primary:active{background:var(--color-primary-active)!important;border-color:var(--color-primary-active)!important}.page-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid var(--color-divider)}.page-title{font-family:var(--font-cn);font-size:22px;font-weight:600;color:var(--color-text);margin-bottom:0;letter-spacing:.02em;position:relative;padding-left:16px}.page-title:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:4px;height:18px;background:var(--color-primary);border-radius:2px}.page-eyebrow{font-family:var(--font-sans);font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:var(--color-text-muted);font-weight:500;margin-bottom:4px}.page-header-meta{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--color-text-muted);padding:6px 12px;border:1px solid var(--color-border);border-radius:999px;background:var(--color-surface)}.page-header-pulse{width:6px;height:6px;border-radius:50%;background:var(--color-success);box-shadow:0 0 0 3px #1f8e5e2e;animation:pulse-success 2s var(--ease-in-out) infinite}@keyframes pulse-success{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.2);opacity:.7}}.mono{font-family:var(--font-mono);font-feature-settings:"tnum"}.account-settings-page{display:flex;flex-direction:column;gap:16px}.account-settings-page .ant-card-head{padding:0 20px;min-height:52px}.account-settings-page .ant-card-head-title{font-family:var(--font-cn);font-size:13px;font-weight:600;letter-spacing:.04em;color:var(--color-text);position:relative;padding-left:12px}.account-settings-page .ant-card-head-title:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:3px;height:12px;background:var(--color-primary);border-radius:2px}.account-settings-page .ant-form-item-label>label{font-family:var(--font-sans);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-secondary);font-weight:500}.account-settings-page .ant-table-thead>tr>th{font-family:var(--font-sans);font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:500;color:var(--color-text-muted)}.quick-manufacturer-add{display:flex;gap:8px;padding:0 8px 8px}.ant-modal-content,.ant-modal-confirm-content,.ant-modal-confirm .ant-modal-content,.ant-modal-header,.ant-modal-footer,.ant-drawer-content,.ant-drawer-header,.ant-drawer-body,.ant-drawer-footer,.ant-popover-inner,.ant-popover-arrow:before,.ant-dropdown-menu,.ant-select-dropdown,.ant-picker-dropdown,.ant-cascader-dropdown,.ant-message-notice-content,.ant-notification-notice{background-color:#fff!important;background-image:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}.ant-modal-mask,.ant-drawer-mask,.ant-image-preview-mask{background-color:#00000073!important}.ai-assistant-panel,.ai-assistant-panel.is-open{background-color:#fff!important}
