:root{--ink:#152238;--sub:#7a8696;--muted:#a4acb8;--border:#e8ecf2;--bg:#f7f9fc;--white:#fff;--nav:#121c2e;--orange:#f36a35;--blue:#4c6ee5;--radius:15px;--shadow:0 12px 30px rgba(14,30,53,.035)}
*{box-sizing:border-box}body{margin:0;font-family:Inter,'Segoe UI',Tahoma,Arial,sans-serif;color:var(--ink);background:var(--bg);font-size:13px}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.5;cursor:not-allowed}a{color:inherit}.hidden{display:none!important}.app{display:flex;min-height:100vh}.sidebar{width:246px;flex:0 0 246px;min-height:100vh;background:var(--nav);color:#c1cada;display:flex;flex-direction:column;padding:30px 17px 18px;position:sticky;top:0;height:100vh}.brand{display:flex;align-items:center;gap:11px;padding:0 7px 56px}.brand-icon{border:1px solid #4a5a71;border-radius:9px;background:#273449;display:grid;place-content:center;height:43px;width:43px;font-size:22px;color:white;font-weight:800;letter-spacing:-2px}.brand-icon span{font-size:10px;vertical-align:top;margin-left:1px;letter-spacing:0}.brand-text b{color:white;display:block;font-size:15px;letter-spacing:.6px}.brand-text small{font-size:9px;letter-spacing:1.8px;color:#7f92ad;display:block;margin-top:5px}.side-group-name{font-size:10px;font-weight:750;color:#6e809b;letter-spacing:1.7px;margin-left:15px;margin-bottom:15px}.nav{display:flex;flex-direction:column;gap:5px}.nav-item{width:100%;border:0;text-align:left;background:transparent;color:#99a9c1;padding:13px 17px;border-radius:9px;font-size:13px;font-weight:600;display:flex;align-items:center;gap:13px}.nav-item>span:first-child{font-size:19px;width:19px;text-align:center;font-weight:400}.nav-item.active{color:white;background:#2a384e}.nav-item:hover{background:#263448;color:white}.nav-number{margin-left:auto;font-size:11px;background:#43556c;color:#eee;border-radius:6px;padding:3px 7px}.sidebar-bottom{margin-top:auto;border:1px solid #2b3a50;background:#17263b;border-radius:12px;padding:20px 17px 14px}.tiny-eyebrow{font-size:9px;color:#8193ad;letter-spacing:1.5px;font-weight:800}.flow-apps{display:flex;align-items:center;justify-content:space-between;margin:17px 3px 6px}.app-logo{width:39px;height:39px;border-radius:9px;display:grid;place-items:center;font-weight:800;color:white;font-size:21px}.shopify{background:#67a842}.shopee{background:#f16b38}.flow-line{display:flex;gap:9px}.flow-line i{width:5px;height:5px;border-radius:50%;background:#5c7893}.flow-label{display:flex;justify-content:space-between;color:#dfe6ed;font-weight:650;font-size:11px;margin-bottom:17px}.source-hint{color:#8094ac;line-height:1.85;font-size:10.5px}.sidebar-meta{display:flex;justify-content:space-between;color:#607993;border-top:1px solid #2a3b50;padding-top:17px;margin-top:20px;font-size:9px;letter-spacing:1px}.sidebar-meta span{letter-spacing:0}.main{flex:1;min-width:0}.topbar{height:77px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 40px;background:#fff}.breadcrumbs{font-size:12px;color:#94a0b1}.breadcrumbs span{padding:0 13px;color:#c9cfd7}.breadcrumbs b{color:var(--ink)}.top-right{display:flex;align-items:center;gap:18px}.mode-pill{font-size:10px;font-weight:800;letter-spacing:.7px;color:#a36a1f;background:#fcf2e2;border:1px solid #f4e7cd;border-radius:6px;padding:8px 11px}.mode-pill.live{color:#2d785d;background:#e9f6f1;border-color:#c9eddf}.mini-avatar{display:grid;place-items:center;background:#29394d;color:#fff;font-weight:800;font-size:10px;border-radius:50%;width:35px;height:35px}.page{padding:45px 40px 70px;max-width:1730px;margin:auto}.intro-row{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:32px}.overline{color:#7990aa;font-size:10px;letter-spacing:2px;font-weight:800}.accent-line{display:inline-block;width:17px;height:1px;background:#c2cbda;vertical-align:middle;margin:0 8px}h1{font-size:31px;line-height:1.2;letter-spacing:-1px;margin:13px 0 12px;font-weight:780}h1 span{color:#91a0b4;font-weight:520}.subtitle{color:#8693a3;margin:0;font-size:12.5px}.page-buttons{display:flex;gap:10px}.btn{border:1px solid transparent;padding:12px 18px;border-radius:8px;font-weight:730;white-space:nowrap;font-size:12px;transition:.16s}.btn>span{font-size:17px;margin-right:5px}.btn:hover:not(:disabled){transform:translateY(-1px)}.btn.secondary{background:white;border-color:#dfe5eb;color:#34455b}.btn.dark{background:#26384d;color:white}.btn.orange{background:#ed703e;color:white}.btn.small{padding:9px 13px;font-size:11px}.btn.full{width:100%}.demo-notice{display:flex;gap:13px;align-items:center;padding:16px 20px;background:#fff9ee;border:1px solid #f8edd5;border-radius:10px;margin-bottom:22px}.notice-mark{font-size:24px;color:#d69b39}.demo-notice b{font-size:12px;color:#8f6b34}.demo-notice p{color:#b3986f;font-size:11px;margin:4px 0 0}.demo-flag{margin-left:auto;font-size:9px;letter-spacing:1.1px;color:#c8ab77;font-weight:800}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:29px}.stat-card{border:1px solid var(--border);background:white;border-radius:11px;padding:21px 22px;box-shadow:var(--shadow)}.stat-head{display:flex;justify-content:space-between;align-items:center;color:#76869b;font-size:11px;font-weight:650}.stat-icon{width:30px;height:30px;border-radius:8px;background:#f1f4f8;display:grid;place-items:center;color:#6984a3;font-size:17px}.stat-icon.amber{background:#fff2e5;color:#e29b47}.stat-icon.blue{background:#eaf0ff;color:#597bd2}.stat-icon.green{background:#e9f8ef;color:#4fa270}.stat-card strong{display:block;font-size:32px;letter-spacing:-1px;margin:13px 0 5px;font-weight:800}.stat-foot{font-size:10.5px;color:#a2afbd}.product-section,.logs-card,.instruction-card{border:1px solid var(--border);border-radius:12px;background:white;box-shadow:var(--shadow)}.section-top{padding:25px 25px 23px;display:flex;align-items:center;justify-content:space-between}.section-top h2{margin:0 0 7px;font-size:18px;font-weight:790}.section-top p{margin:0;color:#98a4b4;font-size:11.5px}.section-count{font-size:10px;background:#f0f3f7;color:#7e8da1;padding:5px 8px;border-radius:5px;margin-left:10px;vertical-align:middle;font-weight:700}.toolbar{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:0 25px 20px}.search{border:1px solid #e6ebf1;background:#fbfcfe;display:flex;gap:10px;align-items:center;border-radius:8px;height:38px;padding:0 12px;flex:1;max-width:360px}.search span{font-size:22px;color:#9baabb;line-height:1}.search input{border:0;background:transparent;outline:0;flex:1;width:100%;color:#29394b;font-size:12px}.search input::placeholder{color:#a7b0be}.filters{display:flex;background:#f6f8fb;border:1px solid #e8edf3;border-radius:8px;padding:4px;gap:3px}.filter{font-size:10.5px;color:#8996a5;border:0;background:transparent;border-radius:6px;padding:7px 11px;font-weight:690}.filter.active{background:white;color:#293b51;box-shadow:0 1px 4px #dbe1e8}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;min-width:880px}thead{background:#f8fafc;border-top:1px solid #edf0f5;border-bottom:1px solid #edf0f5}th{text-align:left;color:#9cabba;font-size:9px;font-weight:800;letter-spacing:1px;padding:14px 19px}th:first-child{padding-left:26px;width:34%}td{border-bottom:1px solid #f0f2f6;padding:14px 19px;vertical-align:middle;color:#495c72;font-size:11.5px}td:first-child{padding-left:26px}.product-cell{display:flex;align-items:center;gap:13px;min-width:250px}.product-thumb{width:53px;height:58px;flex:0 0 53px;background:#f0f0ef;border:1px solid #e7e9ed;border-radius:8px;display:grid;place-items:center;overflow:hidden}.product-thumb img{height:100%;width:100%;object-fit:cover}.product-thumb svg{width:41px;height:46px}.product-info{min-width:0}.product-info strong{display:block;color:#2b3b51;font-size:11.5px;line-height:1.55;font-weight:740;max-width:360px}.product-info small{display:block;font-size:10px;color:#a8b1be;margin-top:5px}.price-cell{font-weight:780;color:#324258;white-space:nowrap}.stock{font-weight:760;color:#425770}.stock small{font-size:10px;color:#a4adba;display:block;margin-top:3px;font-weight:500}.cat-cell{line-height:1.6;max-width:230px}.cat-cell .cat-path{display:block;font-weight:700;color:#3b4d63}.cat-cell .cat-method{font-size:9.5px;color:#9cabba}.cat-placeholder{color:#b4beca;font-style:italic}.status{display:inline-block;border-radius:6px;padding:6px 9px;font-size:10px;font-weight:740;white-space:nowrap}.status.needs_review{color:#bd8c3d;background:#fff7e8}.status.ready{color:#5273b5;background:#eef2fe}.status.published{color:#3b9471;background:#eaf8f0}.status.error,.status.pending_variant{color:#b55c5c;background:#fff0f0}.row-btn{color:#78879b;border:1px solid #e5eaf0;background:white;padding:7px 10px;border-radius:7px;font-size:12px;white-space:nowrap}.row-btn:hover{background:#edf3ff;color:#2c4671}.table-footer{display:flex;justify-content:space-between;gap:20px;padding:17px 25px;color:#9ba9b9;font-size:10px}.dot-separator{padding:0 8px}.empty{text-align:center;padding:70px 30px;color:#9aa7b8}.safety-note{display:flex;gap:8px;color:#91a1b3;margin:21px 1px;font-size:10.5px;line-height:1.8}.safety-note span{font-size:16px}.settings-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.connection-card{border:1px solid var(--border);border-radius:12px;background:white;padding:27px;min-height:265px}.connection-icon{width:45px;height:45px;border-radius:11px;display:grid;place-items:center;font-size:24px;font-weight:800;margin-bottom:21px}.connection-card h3{font-size:16px;margin:0 0 5px}.connection-card p{color:#9aa5b2;margin:0 0 16px}.connection-badge{font-size:11px;color:#54856e;background:#eff8f2;padding:7px 9px;border-radius:6px;font-weight:730}.connection-badge.off{color:#ab6b44;background:#fff3ea}.connection-detail{margin:19px 0;color:#91a0af;font-size:11px;min-height:20px;overflow-wrap:anywhere}.instruction-card{padding:26px 30px;margin-top:24px;max-width:100%}.instruction-card h3{margin:0 0 13px;font-size:17px}.instruction-card p{color:#758394;line-height:2;font-size:12px}.instruction-card code{background:#f2f4f7;padding:3px 5px;border-radius:4px}.warn-inline{background:#fff8ed;color:#a17c4c;padding:12px;border-radius:7px;margin:16px 0}.muted{color:#a2abba!important}.logs-card{padding:10px 27px;min-height:100px}.event{border-bottom:1px solid #edf1f5;display:flex;align-items:center;gap:14px;padding:22px 0}.event:last-child{border:0}.event-icon{font-weight:900;width:34px;height:34px;display:grid;place-items:center;background:#e7f6ed;color:#4a9b6c;border-radius:50%}.event-icon.error{background:#ffecec;color:#c56b6b}.event-icon.info{background:#e9f0fc;color:#6c88c0}.event-body{flex:1;min-width:0}.event-body strong{display:block;color:#43546b;font-size:12px;font-weight:700;overflow-wrap:anywhere}.event-body small{color:#9cabb9;display:block;margin-top:5px}.event-time{color:#9daab8;white-space:nowrap;font-size:10px}.overlay{position:fixed;inset:0;background:rgba(12,20,33,.48);z-index:12}.drawer{position:fixed;right:0;top:0;bottom:0;width:550px;max-width:100vw;background:white;box-shadow:-13px 0 55px #1119;z-index:13;display:flex;flex-direction:column}.drawer-top{padding:28px 30px 24px;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;gap:15px}.drawer-top h2{font-size:21px;line-height:1.3;margin:11px 0 0;letter-spacing:-.45px;max-width:400px}.close{border:0;background:#f1f3f6;border-radius:50%;width:31px;height:31px;font-size:22px;color:#65778d}.drawer-scroll{padding:23px 30px;overflow-y:auto;flex:1}.drawer-footer{padding:17px 30px 20px;border-top:1px solid var(--border);display:flex;gap:10px;align-items:center}.drawer-footer button{flex:1}.editor-hero{display:flex;align-items:center;gap:15px;background:#f8fafc;padding:15px;border:1px solid #eef1f5;border-radius:9px;margin-bottom:24px}.editor-hero .product-thumb{width:63px;height:69px}.editor-hero strong{display:block;font-size:12px;line-height:1.55}.editor-hero small{display:block;color:#9aa5b4;margin-top:8px}.field-group{border-top:1px solid #edf0f4;padding-top:20px;margin:20px 0}.group-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.group-heading h3{font-size:12px;text-transform:uppercase;letter-spacing:1px;color:#52647b;margin:0}.group-heading .helper{font-size:10px;color:#8f9dab}.label{display:block;font-weight:730;color:#66788d;margin:13px 0 7px;font-size:11px}.field{width:100%;border:1px solid #dfe6ee;background:#fff;border-radius:7px;padding:10px 12px;color:#34465d;outline:0;font-size:12px}.field:focus{border-color:#7893cd;box-shadow:0 0 0 3px #eff3fb}.field.readonly{color:#9ba6b2;background:#f7f8fa}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}.field-grid.three{grid-template-columns:repeat(3,1fr);gap:0 9px}.editor-hint{font-size:10.5px;line-height:1.7;color:#9aa7b5;margin:9px 0}.suggest-box{border:1px solid #dfe6ee;border-radius:8px;overflow-y:auto;max-height:210px;display:none;margin-top:5px}.suggest-box.show{display:block}.suggest-item{display:block;background:white;border:0;border-bottom:1px solid #f0f2f5;padding:10px 12px;text-align:left;width:100%;color:#52657c;font-size:11px}.suggest-item:hover{background:#f2f5ff}.suggest-item.selected{background:#edf3fd;color:#2e5aa8}.suggest-item small{display:block;color:#9aacbe;margin-top:3px}.category-result{background:#f5f9f6;padding:11px 12px;border-radius:7px;color:#5b7864;font-size:11px;line-height:1.7;margin-top:8px}.confidence{color:#51667b;font-size:10.5px;margin-top:7px}.chip{display:inline-block;border:1px solid #e4eaf2;border-radius:5px;padding:5px 8px;margin:3px;color:#71849a;background:#fbfcfe;font-size:10px}.attribute-entry{margin:10px 0;padding:10px 13px;background:#f9fbfe;border:1px solid #e9eef4;border-radius:7px}.required{color:#df7857}.checkrow{display:flex;gap:11px;align-items:center;padding:8px 0;color:#607288}.checkrow input{accent-color:#2c526d}.pill-note{display:inline-block;background:#fff6e7;color:#a77c3b;padding:7px 8px;border-radius:6px;font-size:10px}.editor-feedback{font-size:11px;color:#b66949;line-height:1.75;overflow-wrap:anywhere}.toast-area{position:fixed;right:22px;bottom:23px;z-index:25;max-width:420px}.toast{background:#23344b;color:white;padding:14px 17px;margin-top:10px;border-radius:8px;box-shadow:0 10px 30px #15253833;font-size:12px;line-height:1.6}.toast.bad{background:#964f4b}.spinner{width:13px;height:13px;border:2px solid #b8c1ca;border-top-color:white;border-radius:50%;display:inline-block;animation:spin .6s linear infinite;margin-right:6px}@keyframes spin{to{transform:rotate(360deg)}}
@media(max-width:1180px){.sidebar{width:205px;flex-basis:205px}.topbar{padding:0 24px}.page{padding:31px 24px}.stats{gap:10px}.stat-card{padding:18px}.toolbar{align-items:stretch;flex-direction:column}.search{max-width:100%}.filters{align-self:flex-start}.intro-row{align-items:flex-start;flex-direction:column}.page-buttons{width:100%}.page-buttons .btn{flex:1}.settings-grid{grid-template-columns:1fr}}
@media(max-width:760px){.sidebar{width:61px;flex-basis:61px;padding:18px 6px}.brand{padding:0 3px 30px}.brand-text,.side-group-name,.nav-item:not(.active),.nav-item.active{font-size:0}.nav-item{justify-content:center;padding:12px 0}.nav-item>span:first-child{font-size:23px}.nav-number,.sidebar-bottom{display:none}.topbar{height:58px;padding:0 16px}.page{padding:25px 14px}.stats{grid-template-columns:repeat(2,1fr);gap:10px}.stat-card{padding:16px}.stat-card strong{font-size:27px}h1{font-size:26px}.demo-flag{display:none}.toolbar{padding:0 14px 17px}.filters{max-width:100%;overflow-x:auto}.filter{padding:7px}.section-top{padding:20px 14px;align-items:flex-start;gap:10px}.section-top h2{font-size:16px}.table-footer{padding:16px}.mode-pill{font-size:9px}.drawer-top,.drawer-scroll,.drawer-footer{padding-left:20px;padding-right:20px}}

/* v0.3 bulk change review */
.change-diff{max-width:530px;margin:5px 0;padding:7px;border:1px solid #e8edf2;border-radius:7px;line-height:1.7;overflow-wrap:anywhere}.change-diff b{display:block;color:#51667a;margin-bottom:5px}.diff-old{background:#fff0ef;color:#ad5353;padding:4px 8px;border-radius:4px;white-space:pre-wrap;max-height:95px;overflow:auto}.diff-new{background:#ecf8f2;color:#2d855c;padding:4px 8px;border-radius:4px;white-space:pre-wrap;max-height:95px;overflow:auto}.editor-review-empty{padding:28px;color:#9aabba}.btn:disabled{opacity:.45;cursor:not-allowed}

/* v0.4 dynamic template helpers */
.variable-panel{margin:12px 0 18px;padding:14px;border:1px solid #e0e4ea;border-radius:12px;background:#f8f9fb}
.variable-list{display:flex;flex-wrap:wrap;gap:7px;margin:11px 0}
.variable-token{cursor:pointer;border:1px solid #d9e1ec;background:#fff;border-radius:7px;font:500 12px ui-monospace,SFMono-Regular,Consolas,monospace;color:#324667;padding:6px 9px}
.variable-token:hover{border-color:#f07135;background:#fff2e9}
/* v0.6 Orders & inventory dashboard */
.inventory-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.inv-panel{padding:24px;min-width:0}
.inv-actions{display:flex;gap:9px;flex-wrap:wrap}
.inv-plan-preview{margin-top:12px;overflow-wrap:anywhere}
.inv-example{margin-top:16px;padding:17px;background:#f6f8f8;border-radius:11px;border:1px solid #e4e8e8}
.inv-message{margin-top:14px;white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px;color:#687680;max-height:140px;overflow:auto}
.inv-rules{padding-top:9px}
.inv-rules>div{padding:12px 0;border-bottom:1px solid #eff1f2;display:flex;flex-direction:column;gap:4px}
.inv-rules b{font-size:12px;color:#25313d}.inv-rules small{color:#7f8a91;font-size:11px}
.inv-error{max-width:330px;font-size:11px;color:#72808b;overflow-wrap:anywhere}
@media(max-width:1150px){.inventory-grid{grid-template-columns:1fr}}
/* v0.7/v0.8 controls */
.visual-table{min-width:950px}.visual-table th:first-child{width:24%}.visual-table td:first-child{width:24%}
.v-actions,.v-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-top:18px}.v-actions{margin-top:0}
.v-cell{min-width:280px}.v-cell textarea{width:100%;min-height:62px;font-size:11px}.v-cell button{margin-top:4px}.v-current{max-width:230px;overflow-wrap:anywhere;color:#7d8fa3;font-size:11px}
.v-dirty{background:#fffcf3}.v-images{display:grid;grid-template-columns:repeat(auto-fit,minmax(105px,1fr));gap:10px;margin-top:12px}.v-image-card{border:1px solid #e8edf4;padding:9px;border-radius:9px;display:flex;flex-direction:column;gap:8px;align-items:center}.v-image-card img{width:95px;height:106px;object-fit:cover;border-radius:6px}.v-image-card small{color:#8fa1b4}.v-image-card .btn{font-size:10px}
.v-chip{padding:5px 9px;border-radius:7px;background:#eff3f9;color:#53657d;font-weight:600;font-size:10px;display:inline-block}
.v-positive{color:#268260;font-weight:700}.v-negative{color:#bd5a59;font-weight:700}
@media(max-width:980px){.field-grid.three{grid-template-columns:1fr 1fr}.v-toolbar{align-items:stretch}}

/* Core-commerce first: daily work is visually separated from advanced modules. */
.sidebar{overflow-y:auto}
.side-divider{margin-top:24px;margin-bottom:10px;padding-top:20px;border-top:1px solid #283b53}
.quickstart{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 12px}
.quickstart-step{display:flex;gap:12px;align-items:flex-start;background:white;border:1px solid var(--border);border-radius:10px;padding:15px 16px}
.quickstart-step>span{font-size:13px;font-weight:850;color:#ef7643;background:#fff2ec;padding:7px 8px;border-radius:7px}
.quickstart-step strong{display:block;color:#2a394c;font-size:12px;margin-bottom:5px}
.quickstart-step small{color:#8d98a7;line-height:1.6}
.core-shortcuts{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 22px}
@media (max-width:1150px){.quickstart{grid-template-columns:1fr}.quickstart-step{padding:12px}}
