@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap";*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html,body,#root{height:100%;width:100%}body{font-family:Inter,-apple-system,BlinkMacSystemFont,PingFang SC,Microsoft YaHei,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f1f5f9;color:#0f172a}.login-container{display:flex;justify-content:center;align-items:center;min-height:100vh;background:linear-gradient(135deg,#0f172a,#1e293b,#0369a1)}.login-card{width:420px;padding:44px 40px;background:#fff;border-radius:16px;box-shadow:0 20px 60px #0003}.login-card .login-title{text-align:center;font-size:26px;font-weight:700;color:#0f172a;margin-bottom:6px;letter-spacing:-.01em}.login-card .login-subtitle{text-align:center;font-size:14px;color:#94a3b8;margin-bottom:36px}.main-layout{min-height:100vh}.main-layout .sidebar{background:#0f172a!important}.main-layout .sidebar .logo{height:64px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:17px;font-weight:700;white-space:nowrap;overflow:hidden;letter-spacing:.02em;border-bottom:1px solid rgba(255,255,255,.06);background:#0369a114}.main-layout .sidebar .logo.collapsed{font-size:14px}.main-layout .sidebar .ant-menu-dark{background:#0f172a!important;padding:8px 0}.main-layout .sidebar .ant-menu-dark .ant-menu-item,.main-layout .sidebar .ant-menu-dark .ant-menu-submenu-title{margin:2px 8px;border-radius:8px;height:40px;line-height:40px}.main-layout .sidebar .ant-menu-dark .ant-menu-item-selected{background:#0369a1!important;font-weight:600}.main-layout .sidebar .ant-menu-dark .ant-menu-sub{background:#00000026!important}.main-layout .site-layout{background:#f1f5f9}.main-layout .site-header{background:#fff;padding:0 24px;display:flex;align-items:center;justify-content:space-between;box-shadow:0 1px 3px #0000000d;height:56px;line-height:56px;border-bottom:1px solid #E2E8F0}.main-layout .site-content{margin:20px;padding:24px;background:#fff;border-radius:12px;min-height:360px;box-shadow:0 1px 3px #0000000a;border:1px solid #E2E8F0}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.page-header h2{margin:0;font-size:22px;font-weight:700;color:#0f172a;letter-spacing:-.01em}.filter-bar{display:flex;gap:12px;margin-bottom:20px;flex-wrap:wrap;align-items:center}.filter-bar .ant-select{min-width:140px}.dashboard-cards{margin-bottom:24px}.dashboard-card .ant-statistic-title{font-size:13px;color:#64748b;font-weight:500}.dashboard-card .ant-statistic-content{font-size:28px;font-weight:700}.ant-table-thead>tr>th{font-weight:600!important;font-size:13px!important;color:#334155!important;text-transform:none}.ant-table-tbody>tr>td{font-size:13px;padding:12px 16px!important}.ant-table-tbody>tr:hover>td{background:#f0f9ff!important}.ant-card{border-radius:12px;border:1px solid #E2E8F0;box-shadow:0 1px 2px #00000008;transition:box-shadow .2s ease}.ant-card:hover{box-shadow:0 4px 12px #0000000f}.ant-card-small>.ant-card-body{padding:16px}.ant-tag{font-weight:500;padding:2px 10px;border-radius:6px;font-size:12px}.ant-btn{font-weight:500;border-radius:8px;transition:all .2s ease}.ant-btn-primary{box-shadow:0 2px 4px #0369a133}.ant-btn-primary:hover{box-shadow:0 4px 8px #0369a14d}.ant-drawer-header{border-bottom:1px solid #E2E8F0;padding:16px 24px}.ant-drawer-title{font-size:16px;font-weight:600;color:#0f172a}.ant-descriptions-bordered .ant-descriptions-item-label{background:#f8fafc;font-weight:500;color:#64748b;font-size:13px}.ant-divider-inner-text{font-weight:600;font-size:14px;color:#334155}.table-thumbnail{width:48px;height:48px;object-fit:cover;border-radius:6px;border:1px solid #E2E8F0}.bom-editor .bom-row{display:flex;gap:8px;margin-bottom:8px;align-items:center}.urgent-row{background:#fff1f0!important}.urgent-row:hover>td{background:#ffccc7!important}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#94a3b8}@media (max-width: 768px){.main-layout .site-content{margin:12px;padding:16px}.page-header h2{font-size:18px}.filter-bar{gap:8px}}
