:root{--primary:#267ef0;--primary-light:#edf4ff;--bg:#f5f6f7;--bg-surface:#fff;--border:#e5e7eb;--text:#1a1a1a;--text-secondary:#6b7280;--text-tertiary:#9ca3af;--success:#10b981;--warning:#f59e0b;--danger:#ef4444;--sidebar-width:260px;--sidebar-collapsed:0px;--col-id:80px;--col-num:90px;--col-text-2:100px;--col-text-3:110px;--col-text-4:120px;--col-text-5:150px;--col-text-7:180px;--col-text-long:220px;--col-date:120px;--col-datetime:160px;--col-amount:130px;--col-action-2:200px;--col-action-3:240px;--col-action-4:280px}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%;overflow:hidden}body{color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;font-family:-apple-system,PingFang SC,Helvetica Neue,Microsoft YaHei,sans-serif;font-size:14px}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:rgba(0,0,0,.1);border-radius:2px}button{cursor:pointer;border:none;outline:none;font-family:inherit;transition:opacity .15s}button:active{opacity:.7}input,textarea,select{outline:none;font-family:inherit}.page-container{max-width:1400px;padding:24px 32px;overflow-x:hidden}.page-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.page-header h1{color:var(--text);font-size:20px;font-weight:700}.page-desc{color:var(--text-secondary);margin-top:2px;font-size:13px}.hint-banner{border-radius:6px;align-items:flex-start;gap:10px;margin-bottom:16px;padding:10px 14px;font-size:13px;display:flex}.hint-banner.info{background:var(--primary-light);color:var(--primary)}.hint-banner.warn{color:#d97706;background:#fffbeb}.hint-banner>svg{flex-shrink:0;margin-top:1px}.detail-row{color:var(--text);padding:6px 0;font-size:13px}.stats-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px;display:grid}.stat-card{background:var(--bg-surface);border:1px solid var(--border);border-radius:10px;align-items:center;gap:14px;padding:18px 20px;transition:box-shadow .15s;display:flex}.stat-card:hover{box-shadow:0 2px 12px rgba(0,0,0,.06)}.stat-icon{border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;font-size:20px;display:flex}.stat-info{min-width:0}.stat-value{color:var(--text);font-size:24px;font-weight:700;line-height:1.2}.stat-label{color:var(--text-secondary);margin-top:2px;font-size:12px}.card{background:var(--bg-surface);border:1px solid var(--border);border-radius:8px;padding:20px}.card h4{color:var(--text);margin-bottom:12px;font-size:15px;font-weight:600}.responsive-card-list{flex-direction:column;gap:12px;width:100%;max-width:100%;display:flex}.responsive-card{background:var(--bg-surface);border:1px solid var(--border);box-sizing:border-box;border-radius:10px;width:100%;max-width:100%;transition:box-shadow .15s;overflow:hidden}.responsive-card-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:8px;min-width:0;padding:14px 16px 10px;display:flex}.responsive-card-title{color:var(--text);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:15px;font-weight:600;overflow:hidden}.responsive-card-body{min-width:0;padding:8px 16px}.responsive-card-field{border-bottom:1px solid #f3f4f6;justify-content:space-between;align-items:center;gap:12px;min-width:0;padding:7px 0;display:flex}.responsive-card-field:last-child{border-bottom:none}.responsive-card-label{color:var(--text-tertiary);flex-shrink:0;font-size:12px}.responsive-card-value{color:var(--text);text-align:right;text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:70%;font-size:13px;overflow:hidden}.responsive-card-actions{border-top:1px solid var(--border);gap:8px;min-width:0;padding:10px 16px 14px;display:flex}.responsive-card-actions>*{flex:1;min-width:0}.t-table td.t-table__cell,.t-table th.t-table__cell{white-space:nowrap}.t-table td.t-table__cell .t-table__ellipsis,.t-table td.t-table__cell>*{text-overflow:ellipsis;max-width:100%;overflow:hidden}@media (max-width:767px){.page-container{padding:16px 12px}.page-header h1{font-size:17px}.customer-stats-grid{grid-template-columns:repeat(2,1fr)}}.add-customer-modal{max-width:700px}.add-customer-body{padding:0 20px}.step-indicator{justify-content:center;align-items:center;gap:0;padding:20px 0 16px;display:flex}.step-item{align-items:center;gap:8px;display:flex}.step-item .step-num{width:28px;height:28px;color:var(--text-secondary);background:#e5e7eb;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:13px;font-weight:600;display:flex}.step-item .step-label{color:var(--text-secondary);white-space:nowrap;font-size:13px}.step-item.active .step-num{background:var(--primary);color:#fff}.step-item.active .step-label{color:var(--text);font-weight:600}.step-item.done .step-num{background:var(--success);color:#fff}.step-item.done .step-label{color:var(--success)}.step-line{background:#e5e7eb;border-radius:1px;width:80px;height:2px;margin:0 12px}.step-line.done{background:var(--success)}.step-content{max-height:48vh;padding:4px 0 16px;overflow-y:auto}.search-input-wrapper{margin-bottom:12px;position:relative}.search-input-wrapper>.t-input,.modal-search-input{background:var(--bg-surface);border-radius:8px;padding:0 16px;transition:border-color .15s,box-shadow .15s}.search-input-wrapper>.t-input::placeholder,.modal-search-input::placeholder{color:var(--text-tertiary)}.suggestion-list{border:1px solid var(--border);background:var(--bg-surface);border-radius:8px;max-height:280px;margin:0;padding:0;list-style:none;overflow-y:auto}.suggestion-item{cursor:pointer;border-bottom:1px solid #f3f4f6;padding:12px 16px;transition:background .1s}.suggestion-item:last-child{border-bottom:none}.suggestion-item:hover{background:var(--primary-light)}.suggestion-name{color:var(--text);margin-bottom:4px;font-size:14px;font-weight:600}.suggestion-meta{color:var(--text-tertiary);flex-wrap:wrap;gap:16px;font-size:12px;display:flex}.suggestion-meta span{align-items:center;gap:4px;display:inline-flex}.company-status{color:var(--text-secondary);background:#f3f4f6;border-radius:4px;padding:1px 6px;font-size:11px}.company-status.status-active{color:#059669;background:#d1fae5}.no-results{text-align:center;color:var(--text-tertiary);padding:32px 16px;font-size:14px}.loading-center{color:var(--text-secondary);flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:48px 20px;font-size:14px;display:flex}.import-tip{color:#059669;background:#ecfdf5;border-radius:6px;align-items:center;gap:8px;margin-bottom:16px;padding:10px 14px;font-size:13px;font-weight:500;display:flex}.import-tip svg{color:var(--success);flex-shrink:0}.readonly-info{border:1px solid var(--border);background:var(--bg);border-radius:8px;grid-template-columns:1fr 1fr;gap:0;margin-bottom:16px;display:grid;overflow:hidden}.readonly-item{border-bottom:1px solid #e5e7eb;border-right:1px solid #e5e7eb;flex-direction:column;gap:3px;padding:12px 16px;display:flex}.readonly-item:nth-child(2n){border-right:none}.readonly-item:last-child,.readonly-item:nth-last-child(2):not(.readonly-full){border-bottom:none}.readonly-item label{color:var(--text-tertiary);font-size:11px;font-weight:500}.readonly-item span{color:var(--text);font-size:13px}.readonly-full{border-right:none;grid-column:1/-1}.readonly-full:not(:last-child){border-bottom:1px solid #e5e7eb}.readonly-full span{max-height:64px;line-height:1.6;overflow-y:auto}.short-name-section{margin-bottom:16px}.short-name-section label{color:var(--text);margin-bottom:4px;font-size:13px;font-weight:500;display:block}.short-name-section .required{color:var(--danger);margin-left:2px}.required{color:#e34d59}.short-name-hint{color:var(--text-tertiary);margin-bottom:8px;font-size:12px}.sales-persons-section{margin-bottom:8px}.sales-persons-section>label{color:var(--text);margin-bottom:6px;font-size:13px;font-weight:500;display:block}
