:root{--navy:#1D2B53;--cyan:#4AF2FF;--azure:#2193FF;--ink:#1D2B53;--muted:#5B6B8C;--line:#E1E7F0;--bg:#F4F7FB;--card:#FFF;--good:#0F9D58;--bad:#D64545;--radius:12px}
.ecw *{box-sizing:border-box}
.ecw{margin:0;background:var(--bg);color:var(--ink);font-family:'Inter',system-ui,sans-serif;line-height:1.5;padding-bottom:40px}
.ecw .hd{background:var(--navy);color:#fff;padding:18px 24px;border-radius:var(--radius) var(--radius) 0 0;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px}
.ecw .brand{display:flex;align-items:baseline;gap:12px}.ecw .mark{font-family:'Bebas Neue';font-size:30px;letter-spacing:2px}.ecw .mark b{color:var(--cyan)}.ecw .tag{font-size:12px;color:#9FB0D4}
.ecw .pill{font-size:11px;background:rgba(74,242,255,.15);color:var(--cyan);padding:3px 10px;border-radius:20px}
.ecw .sync{font-size:11px;color:#9FB0D4;display:flex;align-items:center;gap:6px}.ecw .dot{width:8px;height:8px;border-radius:50%;background:#9FB0D4}.ecw .dot.on{background:var(--cyan)}
.ecw .grid{display:grid;grid-template-columns:1.1fr .9fr;gap:20px;align-items:start;margin-top:20px}@media(max-width:820px){.ecw .grid{grid-template-columns:1fr}}
.ecw .card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:18px 20px}.ecw .card+.card{margin-top:16px}
.ecw h2{font-size:13px;font-weight:600;letter-spacing:.4px;text-transform:uppercase;color:var(--muted);margin:0 0 14px}
.ecw .row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:10px 0}.ecw .row label{font-size:14px}.ecw .row .hint{display:block;font-size:11px;color:var(--muted)}
.ecw .ip{display:flex;align-items:center;gap:5px}.ecw .ip .u{font-size:12px;color:var(--muted)}
.ecw input,.ecw select{font-family:inherit;font-size:14px;color:var(--ink);border:1px solid var(--line);background:#fff;border-radius:8px;padding:8px 10px;outline:none}
.ecw input:focus,.ecw select:focus{border-color:var(--azure);box-shadow:0 0 0 3px rgba(33,147,255,.15)}
.ecw input[type=number]{width:104px;text-align:right}.ecw #i-name{width:100%;text-align:left}
.ecw .name-wrap{position:relative}
.ecw .suggest{position:absolute;left:0;right:0;top:100%;background:#fff;border:1px solid var(--line);border-radius:8px;margin-top:4px;z-index:30;box-shadow:0 8px 22px rgba(29,43,83,.14);max-height:240px;overflow:auto;display:none}
.ecw .suggest div{padding:9px 12px;font-size:13px;cursor:pointer;display:flex;justify-content:space-between;gap:10px}.ecw .suggest div:hover,.ecw .suggest div.active{background:var(--bg)}
.ecw .suggest .s-sku{color:var(--azure);font-weight:500;white-space:nowrap}
.ecw .seg{display:inline-flex;border:1px solid var(--line);border-radius:8px;overflow:hidden}.ecw .seg button{border:none;background:#fff;padding:8px 14px;font:inherit;font-size:13px;cursor:pointer;color:var(--muted)}.ecw .seg button.on{background:var(--navy);color:#fff}
.ecw .imp,.ecw .dom{display:none}
.ecw .result{background:var(--navy);color:#fff;border:none}.ecw .result h2{color:#9FB0D4}
.ecw .headline{text-align:center;padding:6px 0 16px;border-bottom:1px solid rgba(255,255,255,.12);margin-bottom:14px}.ecw .headline .l{font-size:12px;color:#9FB0D4}.ecw .headline .v{font-family:'Bebas Neue';font-size:50px;letter-spacing:1px;color:var(--cyan)}
.ecw .wf{display:flex;justify-content:space-between;font-size:13.5px;padding:6px 0;border-bottom:1px solid rgba(255,255,255,.08)}.ecw .wf.total{font-weight:600;font-size:16px;border-bottom:none;padding-top:10px}.ecw .wf.muted{color:#9FB0D4;font-size:12px}.ecw .wf .pos{color:#BDEBC8}
.ecw .actions{display:flex;gap:10px;margin-top:16px}.ecw .btn{flex:1;font:inherit;font-weight:600;font-size:14px;border-radius:8px;padding:11px;cursor:pointer;border:1px solid transparent}.ecw .btn-primary{background:var(--azure);color:#fff}.ecw .btn-ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,.3)}
.ecw .ledger-head{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px}.ecw .csv{font:inherit;font-size:13px;font-weight:500;color:var(--azure);background:none;border:1px solid var(--line);border-radius:8px;padding:7px 12px;cursor:pointer}
.ecw table{width:100%;border-collapse:collapse;margin-top:4px;font-size:13px}.ecw th{text-align:left;font-weight:600;color:var(--muted);font-size:11px;letter-spacing:.4px;text-transform:uppercase;padding:8px 10px;border-bottom:1px solid var(--line)}.ecw td{padding:9px 10px;border-bottom:1px solid var(--line);white-space:nowrap}.ecw td.num{text-align:right;font-variant-numeric:tabular-nums}
.ecw .chip{font-size:11px;background:#EAF1FF;color:var(--azure);border-radius:20px;padding:2px 9px}
.ecw .mini{font:inherit;font-size:12px;border:none;background:none;cursor:pointer;padding:4px 6px;border-radius:6px}.ecw .mini.load{color:var(--azure)}.ecw .mini.del{color:var(--bad)}.ecw .mini:hover{background:var(--bg)}
.ecw .empty{text-align:center;color:var(--muted);font-size:13px;padding:26px 0}.ecw .store-note{font-size:11px;color:var(--muted);margin-top:10px}
