:root{--bg:#f6f7fb;--card:#fff;--ink:#18202b;--muted:#697386;--line:#e6e9ef;--purple:#6d4aff;--purple2:#8b73ff;--green:#16875a;--amber:#b7791f;--red:#c53a3a}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.page{max-width:1180px;margin:0 auto;padding:28px 24px 44px}.hero{justify-content:space-between;align-items:center;gap:20px;margin-bottom:30px;display:flex}.brand{align-items:center;gap:14px;display:flex}.brandIcon{background:linear-gradient(135deg,var(--purple),var(--purple2));color:#fff;border-radius:13px;place-items:center;width:46px;height:46px;display:grid;box-shadow:0 8px 20px #6d4aff28}.eyebrow{letter-spacing:.12em;color:#7b8495;margin-bottom:2px;font-size:11px;font-weight:800}.hero h1{letter-spacing:-.02em;margin:0;font-size:25px}.catalogPill{border:1px solid var(--line);color:#566071;background:#fff;border-radius:999px;align-items:center;gap:7px;padding:9px 12px;font-size:13px;font-weight:650;display:flex}.intro{margin:4px 0 22px}.intro h2{letter-spacing:-.035em;margin:0 0 8px;font-size:31px;line-height:1.1}.intro p{max-width:760px;color:var(--muted);margin:0;line-height:1.55}.card{background:var(--card);border:1px solid var(--line);border-radius:18px;margin-bottom:18px;padding:24px;box-shadow:0 6px 24px #1d243308}.sectionTitle{align-items:flex-start;gap:14px;display:flex}.sectionTitle>span{color:var(--purple);background:#f0edff;border-radius:8px;padding:6px 8px;font-size:12px;font-weight:900}.sectionTitle h3{margin:0;font-size:18px}.sectionTitle p{color:var(--muted);margin:4px 0 0;font-size:13px}.dropzone{text-align:center;cursor:pointer;background:#fbfbfe;border:1.5px dashed #c9cddd;border-radius:15px;flex-direction:column;align-items:center;gap:7px;margin-top:20px;padding:38px 24px;transition:all .2s;display:flex}.dropzone:hover{border-color:var(--purple);background:#faf9ff}.dropzone strong{font-size:15px}.dropzone span{color:var(--muted);font-size:12px}.dropzone input{display:none}.uploadIcon{width:48px;height:48px;color:var(--purple);background:#eeebff;border-radius:13px;place-items:center;margin-bottom:5px;display:grid}.fileLine{background:#f7f8fa;border-radius:10px;align-items:center;gap:9px;margin-top:12px;padding:10px 12px;font-size:13px;display:flex}.fileLine button{color:#737c8c;cursor:pointer;background:0 0;border:0;margin-left:auto}.error{color:var(--red);background:#fff1f1;border:1px solid #ffd4d4;border-radius:10px;align-items:center;gap:8px;margin-top:12px;padding:10px 12px;font-size:13px;display:flex}.stats{grid-template-columns:repeat(4,1fr);gap:12px;margin:0 0 18px;display:grid}.stats>div{border:1px solid var(--line);background:#fff;border-radius:14px;padding:14px 16px}.stats small{color:var(--muted);margin-bottom:5px;font-size:12px;display:block}.stats b{font-size:23px}.green{color:var(--green)}.amber{color:var(--amber)}.red{color:var(--red)}.warningCard{background:#fffdf8;border-color:#f1dfbd}.warningHead{color:var(--amber);gap:12px;display:flex}.warningHead h3{color:var(--ink);margin:0;font-size:16px}.warningHead p{color:var(--muted);margin:4px 0 0;font-size:13px}.unmatchedList{gap:7px;margin-top:15px;display:grid}.unmatched{background:#fff;border:1px solid #eee3cf;border-radius:10px;justify-content:space-between;gap:20px;padding:10px 12px;font-size:13px;display:flex}.unmatched strong{display:block}.unmatched small{color:var(--muted)}.unmatched span{color:#7b6b4d;text-align:right}.previewHeader{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.previewTools{align-items:center;gap:12px;display:flex}.search{border:1px solid var(--line);background:#fff;border-radius:10px;align-items:center;gap:7px;padding:8px 10px;display:flex}.search input{width:200px;font:inherit;border:0;outline:0;font-size:13px}.check{color:#606a7a;white-space:nowrap;font-size:12px}.tableWrap{border:1px solid var(--line);border-radius:12px;max-height:520px;margin-top:18px;overflow:auto}table{border-collapse:collapse;width:100%;font-size:13px}thead{z-index:1;background:#f7f8fa;position:sticky;top:0}th,td{text-align:left;border-bottom:1px solid #edf0f3;padding:9px 12px}th{text-transform:uppercase;letter-spacing:.06em;color:#737c8c;font-size:11px}th:first-child,td:first-child{text-align:center;color:#8991a0;width:55px}th:last-child,td:last-child{text-align:center;width:130px}tbody tr.hasQty{background:#fbfaff}tbody tr.hasQty td:last-child{color:var(--purple);font-weight:800}.downloadBar{justify-content:space-between;align-items:center;gap:15px;margin-top:16px;display:flex}.downloadBar>div{color:#5e6878;align-items:center;gap:8px;font-size:13px;display:flex}.downloadBar>div svg{color:var(--green)}.primary{background:var(--purple);color:#fff;cursor:pointer;border:0;border-radius:10px;align-items:center;gap:8px;padding:11px 14px;font-weight:750;display:flex;box-shadow:0 6px 16px #6d4aff24}.primary:hover{background:#5d3cf0}footer{color:#8a92a1;text-align:center;margin-top:22px;font-size:11px}@media (max-width:800px){.page{padding:20px 14px}.hero,.previewHeader,.downloadBar{flex-direction:column;align-items:stretch}.catalogPill{align-self:flex-start}.stats{grid-template-columns:repeat(2,1fr)}.previewTools{flex-direction:column;align-items:stretch}.search input{width:100%}.downloadBar .primary{justify-content:center}.intro h2{font-size:26px}}.suggestionBox{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.acceptBtn{color:#5e43df;cursor:pointer;background:#f4f1ff;border:1px solid #d9d0ff;border-radius:8px;padding:7px 10px;font-size:12px;font-weight:750}.acceptBtn:hover{background:#eae5ff}.dropzone.dragActive{border-color:var(--purple);background:#f5f2ff;transform:translateY(-1px);box-shadow:0 0 0 3px #6d4aff14}.unmatchedMain{min-width:220px}.suggestionActions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:7px;display:flex}.dismissBtn{color:#a33b3b;cursor:pointer;background:#fff7f7;border:1px solid #ead6d6;border-radius:8px;padding:7px 10px;font-size:12px;font-weight:700}.dismissBtn:hover{background:#ffeded}.manualSelect{color:#465064;background:#fff;border:1px solid #dfe3ea;border-radius:8px;max-width:280px;padding:7px 9px;font-size:12px}.manualSelect:focus{border-color:var(--purple);outline:2px solid #d9d1ff}.dismissedInfo{color:#8a7351;margin-top:10px;font-size:11px}.unmatched{align-items:center}@media (max-width:800px){.unmatched{flex-direction:column;align-items:stretch}.suggestionBox,.suggestionActions{justify-content:flex-start}.manualSelect{width:100%;max-width:none}.unmatchedMain{min-width:0}}.aliasStatus{color:#047857;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:10px;margin:0 0 14px;padding:10px 14px;font-size:13px;font-weight:600}.manualConfirm{color:#4c466d;background:#f5f3ff;border:1px solid #d9d1ff;border-radius:9px;justify-content:space-between;align-items:center;gap:12px;margin-top:8px;padding:10px 12px;font-size:12px;display:flex}.manualConfirm>div{flex-shrink:0;gap:7px;display:flex}.confirmManualBtn,.cancelManualBtn{cursor:pointer;border-radius:8px;padding:7px 10px;font-size:12px;font-weight:700}.confirmManualBtn{color:#fff;background:#16875a;border:1px solid #16875a}.cancelManualBtn{color:#596274;background:#fff;border:1px solid #d9dce3}.downloadError{margin-top:12px}.downloadBar .primary:disabled{opacity:.6;cursor:not-allowed}@media (max-width:800px){.manualConfirm{flex-direction:column;align-items:stretch}.manualConfirm>div{width:100%}.confirmManualBtn,.cancelManualBtn{flex:1}}.downloadActions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.saveClearBtn{color:#087443;cursor:pointer;background:#ecfdf5;border:1px solid #16875a;border-radius:10px;align-items:center;gap:8px;padding:11px 14px;font-weight:750;display:flex}.saveClearBtn:hover{background:#d9f9e9}.saveClearBtn:disabled{opacity:.5;cursor:not-allowed}.downloadBar .downloadActions .primary{white-space:nowrap}@media (max-width:800px){.downloadActions{flex-direction:column;width:100%}.downloadActions .saveClearBtn,.downloadActions .primary{justify-content:center;width:100%}}.removeBtn{color:#6b7280;cursor:pointer;background:#fff;border:1px solid #d1d5db;border-radius:9px;padding:8px 10px;font-weight:600}.removeBtn:hover{color:#374151;background:#f3f4f6}
