:root{--ink:#17221d;--muted:#66736d;--paper:#f4f1e9;--panel:#fffdf8;--line:#d9d5cb;--green:#1f5c42;--green-soft:#dfeae3;--orange:#d86f3d;--charcoal:#1d2a24}*{box-sizing:border-box}html,body{min-height:100%;margin:0}body{background:var(--paper);color:var(--ink);font-family:Arial,Microsoft YaHei,sans-serif}a{color:inherit;text-decoration:none}button,input{font:inherit}.app-shell{grid-template-columns:250px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{background:var(--charcoal);color:#f9f6ee;flex-direction:column;height:100vh;padding:34px 28px;display:flex;position:sticky;top:0}.eyebrow{color:var(--orange);letter-spacing:.18em;text-transform:uppercase;font-size:11px;font-weight:800}.brand{margin-top:8px;font-family:Georgia,serif;font-size:39px;line-height:1}.brand-copy{color:#aebbb4;max-width:160px;font-size:13px;line-height:1.6}.sidebar nav{gap:4px;margin-top:48px;display:grid}.sidebar nav a{color:#bdc8c2;border-left:2px solid #0000;padding:12px 14px}.sidebar nav a:hover{border-color:var(--orange);color:#fff}.mode-card{border-top:1px solid #3b4842;align-items:flex-start;gap:11px;margin-top:auto;padding-top:22px;display:flex}.mode-card strong,.mode-card small{display:block}.mode-card small{color:#9eaaa4;margin-top:4px}.status-dot{background:#74c69d;border-radius:999px;width:8px;height:8px;margin-top:5px;box-shadow:0 0 0 4px #74c69d1f}.main-content{min-width:0}.page{max-width:1240px;margin:0 auto;padding:52px 58px 70px}.page-header{justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:48px;display:flex}.page-header.compact{margin-bottom:32px}.page-header h1{letter-spacing:-.04em;margin:12px 0 14px;font-family:Georgia,Songti SC,serif;font-size:clamp(38px,5vw,66px);font-weight:500;line-height:1.02}.page-header p{color:var(--muted);max-width:650px;margin:0;line-height:1.75}.primary-button{background:var(--green);color:#fff;cursor:pointer;white-space:nowrap;border:0;justify-content:center;padding:13px 20px;display:inline-flex}.primary-button:hover{background:#174a35}.primary-button:disabled{cursor:not-allowed;opacity:.45}.confirm-button{border:1px solid var(--green);color:var(--green);cursor:pointer;background:0 0;padding:12px 20px}.confirm-button:hover{background:var(--green-soft)}.confirm-button:disabled{cursor:not-allowed;opacity:.45}.metric-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.metric-card{background:var(--panel);border:1px solid var(--line);min-height:150px;padding:22px}.metric-card span,.metric-card small{color:var(--muted);font-size:12px;display:block}.metric-card strong{margin:22px 0 6px;font-family:Georgia,serif;font-size:35px;font-weight:500;display:block}.section{margin-top:68px}.section-heading{justify-content:space-between;align-items:end;margin-bottom:22px;display:flex}.section-heading h2,.notice h2{margin:7px 0 0;font-family:Georgia,Songti SC,serif;font-size:31px;font-weight:500}.quiet-label{color:var(--muted);font-size:12px}.foundation-list,.recon-list{border-top:1px solid var(--ink)}.foundation-list article,.recon-list article{border-bottom:1px solid var(--line);grid-template-columns:55px 1fr auto;align-items:center;gap:24px;padding:23px 8px;display:grid}.index,.recon-number{color:var(--orange);font-family:Georgia,serif;font-size:18px}.foundation-list h3,.recon-list h2{margin:0 0 6px;font-size:17px}.foundation-list p,.recon-list p{color:var(--muted);margin:0;line-height:1.6}.state{letter-spacing:.08em;text-transform:uppercase;border:1px solid;padding:6px 9px;font-size:10px;font-weight:800}.state-ready{color:var(--green)}.state-next{color:#94613b}.notice{background:var(--green-soft);grid-template-columns:minmax(220px,.7fr) 1fr;align-items:center;gap:60px;margin-top:62px;padding:32px;display:grid}.notice p{color:#40544a;margin:0;line-height:1.75}.workbench{grid-template-columns:minmax(280px,.7fr) minmax(0,1.3fr);gap:18px;display:grid}.upload-panel,.preview-panel{background:var(--panel);border:1px solid var(--line);padding:24px}.upload-panel{align-self:start;gap:14px;display:grid}.dropzone{cursor:pointer;text-align:center;border:1px dashed #a9aea8;flex-direction:column;justify-content:center;align-items:center;min-height:280px;padding:30px;display:flex}.dropzone:hover{border-color:var(--green);background:#f7f5ee}.dropzone input{display:none}.dropzone strong{margin:16px 0 8px}.dropzone small{color:var(--muted);line-height:1.6}.upload-mark{background:var(--green-soft);color:var(--green);border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;font-size:12px;font-weight:800;display:flex}.preview-panel{min-height:440px;overflow:hidden}.empty-state{color:var(--muted);text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:390px;display:flex}.empty-state span{color:var(--orange);font-family:Georgia,serif;font-size:38px}.empty-state h2{color:var(--ink);margin:14px 0 4px;font-family:Georgia,serif;font-weight:500}.result-summary{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.result-summary div{background:#f5f2ea;padding:15px}.result-summary span,.result-summary strong{display:block}.result-summary span{color:var(--muted);font-size:11px}.result-summary strong{margin-top:8px;font-family:Georgia,serif;font-size:25px}.success-message,.validation-errors,.error-message,.duplicate-message,.import-complete-message,.dependency-message{margin-top:16px;padding:13px;font-size:13px}.success-message{background:var(--green-soft);color:var(--green)}.validation-errors,.error-message{color:#8e3f2c;background:#f8e4df}.duplicate-message,.import-complete-message{gap:4px;display:grid}.duplicate-message{color:#85542d;background:#f4e7d7}.dependency-message{color:#85542d;background:#f4e7d7;gap:4px;display:grid}.import-complete-message{background:var(--green-soft);color:var(--green)}.validation-errors h3{margin-top:0}.data-preview{color:#dbe7df;background:#18231e;max-height:390px;margin:16px 0 0;padding:18px;font-size:12px;line-height:1.6;overflow:auto}.history-section{margin-top:56px}.text-button{color:var(--green);cursor:pointer;background:0 0;border:0;font-weight:700}.history-empty{background:var(--panel);border:1px solid var(--line);color:var(--muted);padding:28px}.history-table-wrap{border:1px solid var(--line);overflow-x:auto}.history-table{background:var(--panel);border-collapse:collapse;width:100%;min-width:760px}.history-table th,.history-table td{border-bottom:1px solid var(--line);text-align:left;padding:15px;font-size:12px}.history-table th{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:10px}.history-table tbody tr:last-child td{border-bottom:0}.hash-cell{color:var(--muted);font-family:monospace}.history-status{font-size:10px;font-weight:800}.status-completed{color:var(--green)}.status-failed{color:#9d3829}.recon-verdict{letter-spacing:.12em;border:1px solid;padding:10px 13px;font-size:11px;font-weight:800}.verdict-pass{color:var(--green)}.verdict-fail{color:#9d3829}.check-table-wrap{border:1px solid var(--line);overflow-x:auto}.check-table{background:var(--panel);border-collapse:collapse;width:100%;min-width:820px}.check-table th,.check-table td{border-bottom:1px solid var(--line);text-align:left;padding:17px}.check-table th{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:10px}.check-table td{font-family:Georgia,serif;font-size:15px}.check-table td:first-child{min-width:310px;font-family:Arial,Microsoft YaHei,sans-serif}.check-table td strong,.check-table td small{display:block}.check-table td small{color:var(--muted);margin-top:5px;line-height:1.5}.check-status{letter-spacing:.08em;font-family:Arial,sans-serif;font-size:10px;font-weight:800}.check-pass{color:var(--green)}.check-fail{color:#9d3829}.check-info{color:#85542d}.order-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.order-check-card{background:var(--panel);border:1px solid var(--line);padding:20px}.order-card-head{justify-content:space-between;align-items:flex-start;display:flex}.order-card-head span,.order-card-head strong{display:block}.order-card-head span{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:10px}.order-card-head strong{margin-top:5px;font-family:Georgia,serif;font-size:19px}.order-check-card dl{margin:22px 0 0}.order-check-card dl div{border-top:1px solid var(--line);justify-content:space-between;padding:11px 0;display:flex}.order-check-card dt{color:var(--muted);font-size:12px}.order-check-card dd{margin:0;font-family:Georgia,serif;font-size:13px}.coverage-strip{border-bottom:1px solid var(--line);border-top:1px solid var(--line);flex-wrap:wrap;gap:20px;margin-top:38px;padding:16px 0;display:flex}.coverage-strip span{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:11px}.catalog-stack{gap:8px;display:grid}.catalog-section{margin-top:48px}.listing-sku-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.listing-sku-card{background:var(--panel);border:1px solid var(--line);flex-direction:column;justify-content:space-between;min-height:190px;padding:20px;display:flex}.listing-sku-card h3,.mapping-card h3{margin:8px 0 20px;font-family:Georgia,Songti SC,serif;font-size:17px;font-weight:500;line-height:1.45}.listing-meta{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:10px}.inline-form{grid-template-columns:1fr auto;gap:8px;display:grid}.inline-form input,.mapping-form input,.mapping-form select,.cost-workbench input,.cost-workbench select{border:1px solid var(--line);color:var(--ink);background:#fff;min-width:0;padding:11px 12px}.small-button{background:var(--green);color:#fff;cursor:pointer;border:0;padding:11px 14px;font-size:12px}.small-button:disabled{cursor:not-allowed;opacity:.45}.mapping-list{gap:12px;display:grid}.mapping-card{background:var(--panel);border:1px solid var(--line);grid-template-columns:minmax(260px,.8fr) minmax(360px,1.2fr);align-items:center;gap:26px;padding:21px;display:grid}.mapping-evidence>span,.mapped-box span{color:var(--orange);letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:800}.mapping-evidence h3{margin-bottom:8px}.mapping-evidence p{color:var(--muted);margin:0;font-size:12px}.mapping-form{gap:9px;display:grid}.mapped-box{background:var(--green-soft);justify-content:space-between;align-items:center;padding:16px;display:flex}.legacy-box{background:#f4e7d7;justify-content:space-between;align-items:center;padding:16px;display:flex}.legacy-box span,.legacy-box strong,.legacy-box small{display:block}.legacy-box span{color:#9a5d2f;letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:800}.legacy-box strong{margin:6px 0}.legacy-box small{color:#795c47}.legacy-button{color:#85542d;cursor:pointer;background:0 0;border:1px solid #9a6a43;padding:10px 13px}.legacy-button:hover{background:#f4e7d7}.mapped-box strong,.mapped-box small{display:block}.mapped-box strong{margin:6px 0;line-height:1.4}.mapped-box small{color:var(--muted)}.danger-text{color:#9d3829}.cost-workbench{background:var(--panel);border:1px solid var(--line);grid-template-columns:repeat(4,minmax(0,1fr));align-items:end;gap:12px;padding:22px;display:grid}.ratio-panel{background:var(--green-soft);justify-content:space-between;align-items:center;margin-bottom:12px;padding:22px;display:flex}.ratio-panel h3{margin:7px 0;font-family:Georgia,Songti SC,serif;font-size:20px;font-weight:500}.ratio-panel p{color:var(--muted);margin:0;font-size:12px}.cost-workbench label{gap:7px;display:grid}.cost-workbench label:first-child{grid-column:span 2}.cost-workbench label span{color:var(--muted);font-size:11px}@media (max-width:900px){.app-shell{display:block}.sidebar{height:auto;padding:22px;position:static}.sidebar nav{margin-top:24px;display:flex}.mode-card{display:none}.page{padding:38px 24px 55px}.page-header{flex-direction:column;align-items:flex-start}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.workbench,.order-grid,.listing-sku-grid,.mapping-card{grid-template-columns:1fr}.cost-workbench{grid-template-columns:repeat(2,minmax(0,1fr))}.ratio-panel{flex-direction:column;align-items:flex-start;gap:18px}}@media (max-width:560px){.metric-grid,.result-summary,.notice{grid-template-columns:1fr}.notice{gap:20px}.inline-form,.cost-workbench{grid-template-columns:1fr}.cost-workbench label:first-child{grid-column:auto}}
