:root{--bg:#f2f4f5;--ink:#182b32;--muted:#708088;--line:#dee5e7;--accent:#285a4e;--ok:#24715a;--warn:#986e27;--bad:#b34440}
body{font-family:Inter,-apple-system,BlinkMacSystemFont,'Apple SD Gothic Neo','Malgun Gothic',sans-serif;background:var(--bg);font-size:13px;color:var(--ink);font-variant-numeric:tabular-nums}.app{grid-template-columns:190px minmax(0,1fr)}.side{background:#152e32;border:0;color:#eaf2ef;padding:25px 15px}.brand{font-size:18px;letter-spacing:.04em;padding:0 10px 22px}.brand small{color:#9ab6b0;font-size:9px;letter-spacing:.16em}.nav button{border-radius:7px;color:#a7bebc;padding:11px 12px;font-size:12px;margin:3px 0;text-align:left}.nav button.on{background:#2b4b4b;color:white}.nav button:hover{background:#254143;color:white}.main{padding:22px 25px;min-width:0}.top{margin-bottom:19px}.top h1{font-size:24px;letter-spacing:-.035em}.card{border:1px solid var(--line);box-shadow:0 2px 4px #15303403;border-radius:10px;padding:16px}.card h2{font-size:13px;margin-bottom:12px}.toolbar{gap:10px;margin-bottom:12px;align-items:end}.toolbar label,label{font-size:10px;color:var(--muted);margin-bottom:4px}.action{font-size:11px;border-radius:6px;padding:7px 11px;border-color:#d7e0e0}.action.primary{background:#285a4e;border-color:#285a4e;color:white}.action:disabled{opacity:.45;cursor:wait}input,select,textarea{border-color:#d8e0e1;border-radius:5px;background:#fff;font-size:12px;padding:7px 9px}input:focus,textarea:focus,select:focus{outline:2px solid #a5c8bb;outline-offset:1px}.kpi b{font-size:27px;letter-spacing:-.04em}.pill{font-size:10px;border-radius:4px;padding:3px 6px;background:#eef2f3}.pill.ok{color:#23634f;background:#e9f4ee}.pill.warn{color:#8e6220;background:#faf1dc}.pill.bad{color:#a23f3b;background:#fbece9}.tablewrap{border-radius:7px;max-height:70vh;overflow:auto}.tablewrap thead{position:sticky;top:0;z-index:2}.tablewrap th{background:#f4f7f7;color:#64757a;font-size:10px;letter-spacing:.01em;padding:10px}.tablewrap td{padding:9px 10px;border-bottom:1px solid #e9eeee}.notice{font-size:11px;line-height:1.6;background:#f3f6f5;border-color:#e0e7e4}.sub,.mini{color:#79868b}.mini{font-size:10px;line-height:1.55}.ops-table{width:100%;border-collapse:separate;border-spacing:0;min-width:1150px}.ops-table td{font-size:12px;vertical-align:top}.ops-table .order-key{min-width:110px;position:sticky;left:0;background:white;z-index:1}.ops-table th:first-child{position:sticky;left:0;z-index:3}.ops-table .product-col{min-width:210px;max-width:310px}.ops-table .note-col{min-width:140px;max-width:210px}.ops-table .shipment-col{min-width:150px}.ops-table .money-col{text-align:right;white-space:nowrap}.ops-table tbody tr.main-row:hover>td{background:#f7faf9}.ops-table tbody tr.main-row{cursor:pointer}.ops-table .detail-row td{background:#edf3f1;padding:16px}.ops-table .primary-value{font-weight:650;line-height:1.5}.ops-table .inline-detail{display:grid;grid-template-columns:1.15fr 1fr 1fr;gap:12px}.ops-table .detail-panel{background:white;padding:14px;border:1px solid #dbe4e0;border-radius:7px}.detail-panel h3{font-size:11px;color:#506b63;margin:0 0 10px}.detail-panel dl{display:grid;grid-template-columns:72px 1fr;gap:8px;font-size:11px;margin:0}.detail-panel dt{color:#84908d}.detail-panel dd{margin:0;word-break:break-word}.detail-panel textarea{min-height:72px;width:100%}.detail-panel .item-list{margin-bottom:12px}.item-list>div{padding:7px 0;border-bottom:1px solid #edf1ef}.ops-metrics{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:9px;margin:12px 0 15px}.ops-metrics>div{padding:11px 13px;background:#fff;border:1px solid var(--line);border-radius:8px}.ops-metrics span{display:block;font-size:10px;color:#73847f}.ops-metrics b{display:block;font-size:20px;margin-top:5px}.ops-metrics .attention{border-left:3px solid #caa260}.ops-metrics .attention b{color:#947024}.sync-health{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 14px}.sync-health span{background:#e9eeed;color:#5f746d;padding:5px 8px;border-radius:5px;font-size:10px}.ops-stage{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:12px}.ops-stage button{background:white;border:1px solid #d9e3df;border-radius:5px;font-size:11px;padding:6px 10px;color:#587067}.ops-stage button.active{background:#285a4e;color:white}.ops-stage b{margin-left:6px}.ops-error{color:#a43a37;background:#fff0ee;border:1px solid #eccbc5;border-radius:6px;padding:10px;margin:10px 0;font-size:12px;white-space:pre-wrap}.ship-dialog{max-height:93vh!important;width:min(1040px,96vw)!important;overflow:auto}.ship-dialog .modal-head{position:sticky;top:0;background:white;z-index:5}.ship-dialog .modal-actions{position:sticky;bottom:0;background:white;z-index:5;flex-wrap:wrap}.ship-dialog .modal-body{padding:16px 20px}.ship-dialog .party-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.ship-dialog .party{padding:13px;border:1px solid var(--line);border-radius:8px}.ship-dialog .party-fields{display:grid;grid-template-columns:1fr 1fr;gap:8px}.party-fields .full{grid-column:1/-1}.ship-dialog h3{margin:0 0 10px;font-size:12px}.ship-dialog .workflow{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}.ship-dialog .workflow span{background:#edf2f0;padding:6px 10px;border-radius:5px;font-size:11px}.ship-dialog .workflow .done{background:#ddecdf;color:#266147}.ship-dialog .workflow .error{background:#fcebe8;color:#b34940}.ship-dialog table{width:100%;border-collapse:collapse}.ship-dialog .customs-table{min-width:700px}.customs-table input{min-width:50px;width:100%}.customs-table th{font-size:10px;text-align:left}.ship-dialog .package-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}.ship-dialog .settings-line{display:flex;align-items:end;gap:9px;margin:12px 0;flex-wrap:wrap}.ship-dialog .settings-line>div{flex:1}.ship-dialog .job-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:12px}.ship-dialog .job-log{font-size:11px;margin-top:10px;color:#5e756d}.compact-sales{min-width:1150px}.sales-table .item-cell{min-width:170px}.sales-table .option-cell{min-width:130px}.sales-kpi{padding:13px}.footer{font-size:10px;color:#95a29f}.ops-toolbar{display:flex;gap:8px;justify-content:space-between;align-items:center}.sync-health .error{color:#a33f39;background:#faeae6}
@media(min-width:1800px){.main{padding:26px 36px}.ops-table .product-col{max-width:430px}.ops-table .note-col{max-width:280px}}
@media(max-width:1000px){.app{grid-template-columns:1fr}.side{padding:12px 16px}.brand{padding:0 0 8px;font-size:15px}.brand small{display:inline;margin-left:10px}.nav{gap:4px;flex-wrap:nowrap;overflow-x:auto}.nav button{white-space:nowrap;padding:8px 10px}.main{padding:15px}.ops-metrics{grid-template-columns:repeat(3,1fr)}.ops-table .inline-detail{grid-template-columns:1fr}.ship-dialog .party-grid{grid-template-columns:1fr}.ship-dialog .package-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:600px){.top{align-items:flex-start}.top h1{font-size:21px}.top>div:last-child{flex-wrap:wrap;justify-content:flex-end;max-width:190px}.ops-metrics{grid-template-columns:repeat(2,1fr)}.card{padding:12px}.ship-dialog .modal-actions .action{flex:1}.ship-dialog .package-grid{grid-template-columns:1fr 1fr}.ship-dialog .party-fields{grid-template-columns:1fr}.toolbar{flex-wrap:wrap}}

@media(min-width:1450px){.sales-detail{grid-template-columns:repeat(4,minmax(0,1fr))}}
.sales-detail-group{min-width:0}.sales-detail-line b{overflow-wrap:anywhere}

/* Completed orders retain readable text, while active work stands out. */
.ops-table .main-row.order-shipped td{background:#f1f3f4;color:#69767b}
.ops-table .main-row.order-shipped .primary-value{font-weight:500}
.ops-table .main-row.order-shipped td:first-child{border-left:3px solid #a8bcb6}
.ops-table .main-row.order-shipped:hover td{background:#e8eeeb}
#orderTable{overflow-anchor:none}
.market-totals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:14px 0}
.market-total{display:flex;flex-direction:column;gap:7px;background:#f6f8f8;border:1px solid #dce5e3;border-radius:12px;padding:16px}
.market-total span{font-size:12px;font-weight:600;color:#536c66}.market-total b{font-size:24px;font-variant-numeric:tabular-nums}.market-total strong{font-size:18px;color:#28594e}.market-total small{font-size:11px;color:#657570;line-height:1.5}.market-total.overseas{background:#edf5f1}
@media(max-width:680px){.market-totals{grid-template-columns:1fr}.market-total b{font-size:21px}}

#salesChart{display:block;height:auto;min-height:260px;padding:12px 0;overflow:auto}#salesChart svg{width:100%;min-width:720px;display:block}#salesChart table{font-size:11px;white-space:nowrap}#dashPeriodSummary{grid-template-columns:repeat(2,minmax(0,1fr))}
