:root{--pri: #1a56db;--pri-light: #eff3ff;--pri-dark: #1347b3;--ok: #0d7d3d;--ok-light: #f0faf4;--warn: #c2780a;--warn-light: #fffbf0;--err: #c41e2b;--err-light: #fff5f5;--purple: #6b29b2;--purple-light: #f9f5ff;--border: #cbd5e1;--bg: #f1f5f9;--text: #0f172a;--muted: #475569;--navy: #0f1d3a}*{margin:0;padding:0;box-sizing:border-box}html,body,#root{height:100%;font-family:PingFang SC,Microsoft YaHei,SimHei,-apple-system,BlinkMacSystemFont,sans-serif;font-size:13px;color:var(--text);background:var(--bg)}.ant-layout{background:var(--bg)!important}.ant-card{border:1px solid var(--border)!important;border-radius:4px!important;box-shadow:none!important;transition:box-shadow .15s,transform .15s}.ant-card-hoverable:hover{box-shadow:0 2px 8px #00000014!important;transform:translateY(-1px)}.ant-table{font-size:13px}.ant-table-thead>tr>th{background:#f8f9fb!important;font-size:12px;font-weight:600;color:var(--muted);padding:10px 12px!important}.dashboard-page .ant-card,.dashboard-page .ant-table,.dashboard-page .ant-table-column-sorter{transition:none!important}.dashboard-page .ant-table-tbody>tr>td{transition:none!important}.ant-table-tbody>tr>td{padding:8px 12px!important}.ant-table-tbody>tr:hover>td{background:var(--pri-light)!important}.ant-tabs-nav{margin-bottom:16px!important}.ant-tabs-tab{font-size:13px!important;padding:8px 0!important}.ant-btn{font-size:13px;border-radius:4px}.ant-tag{font-size:12px;border-radius:3px;padding:0 6px;line-height:20px}.ant-input,.ant-select-selector,.ant-picker{font-size:13px!important;border-radius:4px!important}.ant-form-item{margin-bottom:16px}.ant-form-item-label>label{font-size:13px}.app-header{display:flex;align-items:center;justify-content:space-between;height:48px;padding:0 20px;background:var(--navy);color:#fff;flex-shrink:0}.app-header .logo{font-size:15px;font-weight:700;letter-spacing:1px;color:#fff;white-space:nowrap;flex-shrink:0}.app-header .user-info{font-size:12px;color:#94a3b8;white-space:nowrap}.app-header .user-info span{color:#e2e8f0;margin:0 8px}.app-header .logout-btn{color:#94a3b8!important;font-size:12px}.app-header .logout-btn:hover{color:#f87171!important}@media (max-width: 640px){.app-header{padding:0 12px}.app-header .btn-label,.app-header .role-label{display:none}.app-header .user-info{font-size:11px}}@media (max-width: 400px){.app-header{padding:0 8px}.app-header .logo{font-size:13px;letter-spacing:0;overflow:hidden;text-overflow:ellipsis;flex-shrink:1;min-width:0}.app-header .brand-subtitle{font-size:10px}}.app-footer{text-align:center;font-size:10px;color:#94a3b866;padding:4px 0;background:var(--bg);flex-shrink:0}.login-page{display:flex;justify-content:center;align-items:center;min-height:100vh;background:linear-gradient(135deg,#0f1d3a,#1a3a5c 40%,#1a56db)}.login-card{width:400px;padding:44px 40px 32px;border-radius:8px;background:#fff;box-shadow:0 12px 48px #0003}.login-title{text-align:center;margin-bottom:28px;font-size:22px;font-weight:700;color:var(--navy);letter-spacing:2px}.login-footer{position:fixed;bottom:16px;left:0;right:0;text-align:center;font-size:10px;color:#ffffff59;line-height:1.9}.login-footer .login-powered{display:block;color:#ffffff40}.login-footer a{color:#ffffff59;text-decoration:none;transition:color .2s}.login-footer a:hover{color:#ffffffbf}.login-footer .sep{margin:0 8px;color:#fff3}.login-footer .beian-icon{height:13px;width:auto;vertical-align:-3px;margin-right:4px}.kpi-bar{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;margin-bottom:24px}@media (max-width: 640px){.kpi-bar{grid-template-columns:repeat(2,1fr)}}.home-page{display:flex;flex-direction:column;justify-content:center;min-height:100%;padding:4px 40px 60px;max-width:1040px;margin:0 auto}.home-welcome{margin-bottom:28px;text-align:center}.home-welcome h2{font-size:20px;font-weight:700;color:var(--text);margin-bottom:4px}.home-welcome p{font-size:13px;color:var(--muted)}.home-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px}.terminal-card{cursor:pointer;border:1px solid var(--border)!important;border-radius:4px!important;transition:box-shadow .15s,transform .15s}.terminal-card:hover{box-shadow:0 4px 16px #0000001a!important;transform:translateY(-2px)}.terminal-card .icon-wrap{width:48px;height:48px;border-radius:4px;display:flex;align-items:center;justify-content:center;font-size:24px}.dispatch-desk{padding:12px 24px 24px}.stat-card{text-align:center;padding:12px 8px}.stat-cards .ant-card{height:100%}.stat-cards .ant-card-body{display:flex;align-items:center;justify-content:center;min-height:96px;padding:16px 12px}.stat-cards .ant-statistic{text-align:center;width:100%}.stat-cards .ant-statistic-content{justify-content:center}@media (max-width: 640px){.dashboard-page .ant-card-body{padding:14px 10px}.home-page{padding:4px 16px 40px}.home-cards{grid-template-columns:1fr}}.stat-value{font-size:28px;font-weight:700;font-family:Courier New,monospace}.stat-label{font-size:12px;color:var(--muted);margin-top:4px}.spec-text{font-family:Courier New,Courier,monospace;font-size:12px;color:var(--muted)}.station-page{padding:12px 24px 24px;max-width:1000px;margin:0 auto}.station-page .ant-table-tbody>tr:nth-child(2n)>td{background:#f8fafc}.station-page .ant-table-tbody>tr:hover>td{background:#eef2ff!important}.inventory-row-backlog-amber td{background:#fffbe6!important}.inventory-row-backlog-red td,.stock-import-row-issue td{background:#fff2f0!important}.stock-import-row-issue td:first-child{box-shadow:inset 3px 0 #ff4d4f}.ptr-indicator{text-align:center;padding:0;font-size:12px;color:var(--muted);height:0;overflow:hidden;transition:height .2s}.ptr-indicator.show{height:36px;padding:8px}.ptr-indicator .spinner{display:inline-block;width:16px;height:16px;border:2px solid #cbd5e1;border-top-color:var(--pri);border-radius:50%;animation:ptr-spin .6s linear infinite;vertical-align:middle;margin-right:6px}@keyframes ptr-spin{to{transform:rotate(360deg)}}.ptr-pulling{opacity:.6;transform:translateY(8px);transition:transform .15s}@media (max-width: 768px){.station-page{padding:4px 6px 12px;max-width:100%}.station-page h2{font-size:16px}.station-page .ant-card{margin-bottom:8px;border-radius:6px}.station-page .ant-card-head{padding:0 8px;min-height:36px}.station-page .ant-card-head-title{font-size:13px}.station-page .ant-card-body{padding:8px}.station-page .ant-card-extra{padding:0 4px}.station-page .ant-tabs-nav{margin-bottom:8px!important}.station-page .ant-tabs-tab{padding:6px 8px!important;font-size:11px!important;margin:0!important}.station-page .ant-table{font-size:12px!important;border-radius:4px}.station-page .ant-table-thead>tr>th,.station-page .ant-table-tbody>tr>td{padding:6px 4px!important;white-space:normal;overflow:visible;text-overflow:clip;word-break:break-all}.station-page .ant-table-thead>tr>th:first-child,.station-page .ant-table-tbody>tr>td:first-child{white-space:nowrap!important;word-break:keep-all!important;overflow-wrap:normal!important}.station-page .ant-table-container{overflow-x:auto;-webkit-overflow-scrolling:touch}.station-page .ant-btn{min-height:30px;font-size:11px;padding:0 6px}.station-page input[type=text]{height:34px;font-size:14px}.station-page .ant-card-body .ant-table{margin-left:-8px;margin-right:-8px;width:calc(100% + 16px)}.station-page .ant-modal{max-width:calc(100vw - 12px)!important;margin:6px}.station-page .ant-modal-body{padding:10px}}@media (max-width: 576px){.station-page .ant-input-number-handler-wrap{display:none!important}.station-page .ant-input-number-input{min-height:32px;font-size:16px!important;padding:0 6px!important}.station-page .ant-input-number-focused{border-color:var(--pri)!important;box-shadow:0 0 0 2px #1a56db26!important}.station-page .ant-select-small .ant-select-selector{min-height:32px!important}.station-page .ant-select-small .ant-select-selection-item{font-size:13px!important;line-height:30px!important}.station-page .ant-table-tbody .ant-btn-sm{min-height:32px!important;font-size:12px!important;padding:0 6px!important}.station-page .ant-table-tbody>tr>td{padding:6px 3px!important}}.alloc-row-gs-exact{background:#f0fdf4!important}.alloc-row-gs-exact:hover>td{background:#dcfce7!important}@media (min-width: 576px) and (max-width: 768px){.station-page .ant-input-number-handler-wrap{opacity:1}.station-page .ant-input-number-input{min-height:28px;font-size:13px!important;padding:0 6px!important}.station-page .ant-table-tbody .ant-btn-sm{min-height:30px!important}}.station-page .ant-table-container{position:relative}.station-page .ant-table-container:after{content:"";position:absolute;top:0;right:0;bottom:0;width:24px;background:linear-gradient(90deg,transparent,rgba(241,245,249,.95));pointer-events:none;opacity:0;transition:opacity .2s}.station-page .ant-table-wrapper:has(.ant-table-container) .ant-table-container:after{opacity:1}.station-page .ant-table-container.scrolled-end:after{opacity:0}overflow-wrap: normal !important; } @media (max-width: 768px){.station-page .task-view-trigger{font-size:11px}.station-page .task-view-icon{display:none}}.station-batch-bar{position:fixed;left:0;right:0;bottom:0;z-index:100;display:flex;align-items:center;gap:8px;padding:8px 12px calc(8px + env(safe-area-inset-bottom));background:#fff;border-top:1px solid #e5e7eb;box-shadow:0 -2px 8px #0000000f;max-width:1000px;margin:0 auto}.station-batch-count{font-size:12px;color:#374151;white-space:nowrap}.station-page .ant-table-tbody>tr.station-row-selected>td{background:#a9d0ff!important;color:#0f2f6d!important}.station-page .ant-table-tbody>tr.station-row-selected>td:first-child{box-shadow:inset 4px 0 #1a56db}.station-page .ant-table-tbody>tr.station-row-failed>td{background:#fecaca!important;color:#7f1d1d!important}.station-page .ant-table-tbody>tr.station-row-failed>td:first-child{box-shadow:inset 4px 0 #dc2626}@media (max-width: 576px){.station-batch-bar{padding:6px 8px calc(6px + env(safe-area-inset-bottom))}.station-batch-bar .ant-btn{min-height:34px;flex:1}}
