:root{--ink:#15222f;--muted:#647383;--line:#dce4e8;--paper:#f4f1e9;--surface:#fff;--nav:#101c27;--orange:#ff6a2a;--cyan:#16b9b3}*{box-sizing:border-box}html,body{background:var(--paper);min-height:100%;color:var(--ink);margin:0}body{font-family:Inter,PingFang SC,Microsoft YaHei,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.eyebrow{color:var(--orange);letter-spacing:.12em;text-transform:uppercase;font-size:12px;font-weight:800}.page-title{letter-spacing:-.03em;margin:6px 0 4px;font-family:Georgia,Noto Serif SC,serif;font-size:clamp(28px,3vw,42px)}.subtle{color:var(--muted)}.panel{border:1px solid var(--line);background:#ffffffe0;border-radius:18px;box-shadow:0 12px 36px #121e2a0f}.table-wrap{overflow-x:auto}.data-table{border-collapse:collapse;width:100%;font-size:14px}.data-table th{color:var(--muted);text-align:left;border-bottom:1px solid var(--line);padding:13px 16px;font-size:12px}.data-table td{border-bottom:1px solid #edf0f1;padding:15px 16px}.data-table tr:last-child td{border-bottom:0}.status{color:#147c75;background:#e9f7f4;border-radius:999px;align-items:center;gap:6px;padding:4px 9px;font-size:12px;font-weight:700;display:inline-flex}.status.warn{color:#ad4a1f;background:#fff1e7}.status.error{color:#ac3128;background:#ffe9e7}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.field{gap:7px;font-size:13px;font-weight:700;display:grid}.field input,.field select,.field textarea{background:#fff;border:1px solid #cfd9de;border-radius:10px;outline:none;width:100%;padding:11px 12px}.field input:focus,.field textarea:focus{border-color:var(--cyan);box-shadow:0 0 0 3px #16b9b31f}.action{background:var(--orange);color:#fff;cursor:pointer;border:0;border-radius:10px;padding:11px 16px;font-weight:800}.action.secondary{color:var(--ink);background:#e9eff1}.notice{border:1px solid;border-radius:11px;margin:0 0 16px;padding:12px 14px;font-size:14px;font-weight:700}.notice.success{color:#147c75;background:#e9f7f4;border-color:#aadfd8}.notice.error{color:#ac3128;background:#ffe9e7;border-color:#f2b9b4}.notice.warning{color:#8a4a12;background:#fff4df;border-color:#efc391}.metric-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.metric{padding:17px}.metric small{color:var(--muted)}.metric strong{margin-top:8px;font-size:25px;display:block}.empty{text-align:center;color:var(--muted);padding:44px 24px}.workspace-heading{justify-content:space-between;align-items:end;gap:20px;margin-bottom:24px;display:flex}.workspace-heading-actions,.filter-actions,.batch-toolbar,.detail-statuses{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.product-metrics{margin-bottom:18px}.product-metrics .metric{color:inherit;transition:transform .15s,border-color .15s}.product-metrics .metric:hover{border-color:#bfcdd3;transform:translateY(-2px)}.product-metrics .metric span{color:var(--muted);margin-top:7px;font-size:12px;display:block}.product-metrics .metric-danger strong{color:#ac3128}.product-metrics .metric-warning strong{color:#ad4a1f}.product-filters{grid-template-columns:minmax(260px,2fr) repeat(3,minmax(150px,1fr)) auto;align-items:end;gap:12px;margin-bottom:14px;padding:16px;display:grid}.product-filters select{background:#fff;border:1px solid #cfd9de;border-radius:10px;width:100%;padding:11px 12px}.batch-toolbar{justify-content:space-between;padding:10px 3px 12px}.product-table td{vertical-align:middle}.product-table td:first-child{width:38px;padding-right:0}.product-table input[type=checkbox]{width:17px;height:17px;accent-color:var(--orange)}.product-row-issue{background:#ffe9e752}.product-cell{align-items:center;gap:12px;min-width:310px;display:flex}.product-cell img,.product-image-placeholder{border:1px solid var(--line);object-fit:cover;background:#edf1f2;border-radius:12px;flex:0 0 62px;width:62px;height:62px}.product-image-placeholder{color:var(--muted);place-items:center;font-size:12px;display:grid}.product-cell strong{-webkit-line-clamp:2;-webkit-box-orient:vertical;max-width:330px;display:-webkit-box;overflow:hidden}.product-cell small,.product-table td>small,.product-table td>strong+small,.status-stack small,.product-table td code{margin-top:5px;display:block}.product-table code{overflow-wrap:anywhere;max-width:180px;color:var(--muted);font-size:12px}.status-stack{justify-items:start;gap:3px;min-width:120px;display:grid}.danger-text{color:#ac3128;font-weight:800}.warning-text{color:#8a4a12;font-weight:800}.strike{text-decoration:line-through}.mapping-cell{min-width:190px}.mapping-cell details{margin-top:7px}.mapping-cell summary{cursor:pointer;color:#ad4a1f;font-size:12px;font-weight:800}.compact-form{gap:8px;margin-top:10px;display:grid}.compact-form input{background:#fff;border:1px solid #cfd9de;border-radius:8px;width:100%;min-width:170px;padding:8px 9px}.compact-form .action{padding:8px 10px}.text-button,.row-link{color:#ad4a1f;cursor:pointer;background:0 0;border:0;margin-top:7px;padding:0;font-size:12px;font-weight:800;display:block}.detail-back{color:var(--muted);margin-bottom:16px;font-weight:800}.product-detail-hero{grid-template-columns:minmax(360px,.95fr) minmax(360px,1.05fr);align-items:start;gap:28px;margin-bottom:20px;display:grid}.product-gallery{grid-template-columns:repeat(4,1fr);gap:8px;padding:10px;display:grid;overflow:hidden}.product-gallery img{aspect-ratio:1;object-fit:cover;border-radius:10px;width:100%}.product-gallery img.primary{aspect-ratio:16/10;grid-column:1/-1}.product-gallery-empty{min-height:380px;color:var(--muted);background:#edf1f2;border-radius:12px;grid-column:1/-1;place-items:center;display:grid}.product-detail-summary{padding:16px 0}.product-detail-summary h1{margin:8px 0 14px;font-family:Georgia,Noto Serif SC,serif;font-size:clamp(28px,3.2vw,44px);line-height:1.14}.identity-list{border:1px solid var(--line);background:var(--line);border-radius:14px;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin:22px 0;display:grid;overflow:hidden}.identity-list div{background:#ffffffe0;padding:12px}.identity-list dt,.compact-dl dt,.attribute-grid dt{color:var(--muted);font-size:12px}.identity-list dd,.compact-dl dd,.attribute-grid dd{overflow-wrap:anywhere;margin:5px 0 0;font-weight:800}.issue-panel{background:#fff5f3;border-color:#f2b9b4;grid-template-columns:240px 1fr;gap:24px;margin-bottom:18px;padding:22px;display:grid}.issue-panel h2{margin:6px 0 0}.issue-reasons{gap:8px;display:grid}.issue-reasons div{color:#8f2921;background:#fff;border:1px solid #f2cfca;border-radius:10px;padding:10px 12px}.warning-panel{background:#fff9ed;border-color:#efc391}.warning-panel .issue-reasons div{color:#7a4317;border-color:#f2d8b5}.detail-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:18px;display:grid}.detail-card,.content-card{padding:20px}.detail-number{letter-spacing:-.03em;margin:8px 0 18px;font-size:32px;font-weight:900}.detail-number.small{font-size:23px}.compact-dl{gap:0;margin:0;display:grid}.compact-dl div{border-top:1px solid #edf0f1;justify-content:space-between;gap:12px;padding:9px 0;display:flex}.compact-dl dd{text-align:right;margin:0}.content-card{margin-bottom:18px}.section-heading{justify-content:space-between;align-items:end;gap:18px;margin-bottom:18px;display:flex}.section-heading h2{margin:5px 0 0}.product-description{white-space:pre-wrap;max-width:860px;line-height:1.8}.attribute-grid{border:1px solid var(--line);background:var(--line);border-radius:12px;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin:0;display:grid;overflow:hidden}.attribute-grid div{background:#fff;padding:12px}.raw-details{margin-top:16px}.raw-details summary{cursor:pointer;color:var(--muted);font-weight:800}.raw-details pre{color:#d9f3ed;white-space:pre-wrap;overflow-wrap:anywhere;background:#101c27;border-radius:10px;max-height:420px;padding:14px;font-size:12px;overflow:auto}@media (max-width:1100px){.product-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.product-search{grid-column:1/-1}.product-detail-hero{grid-template-columns:1fr}.detail-grid{grid-template-columns:1fr 1fr}}@media (max-width:860px){.form-grid,.metric-grid,.detail-grid,.attribute-grid{grid-template-columns:1fr}.workspace-heading,.section-heading,.issue-panel{flex-direction:column;grid-template-columns:1fr;align-items:stretch}.product-filters{grid-template-columns:1fr}.product-search{grid-column:auto}.identity-list{grid-template-columns:1fr}}
