*{box-sizing:border-box}body{margin:0;background:#f5f7fb;font-family:Arial,"Microsoft YaHei",sans-serif;color:#17233d}.layout{display:flex;min-height:100vh}aside{width:210px;background:#111827;color:#fff;padding:18px 14px;position:fixed;top:0;bottom:0}.brand{font-size:20px;font-weight:700;margin-bottom:25px}aside a{display:block;color:#d1d5db;padding:11px 12px;border-radius:8px;text-decoration:none;margin-bottom:5px}.active,aside a:hover{background:#1f2937;color:#fff}main{margin-left:210px;width:calc(100% - 210px);padding:22px}header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}h1{font-size:24px}.panel{background:#fff;border:1px solid #e5e8ef;border-radius:12px;padding:16px;margin-bottom:16px}.filters{display:grid;grid-template-columns:repeat(6,minmax(130px,1fr));gap:10px}.filters input,.filters select,input,select,textarea{border:1px solid #d9deea;border-radius:8px;padding:9px;background:#fff}.btn{background:#316bff;color:#fff;border:0;border-radius:8px;padding:9px 14px;cursor:pointer}.btn.ghost{background:#eef2ff;color:#2546a0}.cards{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;margin-bottom:16px}.card{background:#fff;border:1px solid #e5e8ef;border-radius:12px;padding:14px}.card span{display:block;color:#6b7280;font-size:12px}.card b{font-size:22px}.card.small b{font-size:18px}.toolbar{display:flex;gap:8px;align-items:center;margin-bottom:12px;flex-wrap:wrap}.table-wrap{overflow:auto;border:1px solid #e5e8ef;border-radius:10px}table{width:100%;border-collapse:collapse;min-width:2200px}th,td{border-bottom:1px solid #e5e8ef;padding:11px 12px;font-size:13px;white-space:nowrap;text-align:left}th{background:#fafafa;position:sticky;top:0}tr:hover{background:#f8faff}.badge{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:14px;font-size:12px}.badge:before,.dot:before{content:'';width:6px;height:6px;border-radius:50%;display:inline-block}.orange{background:#fff1df;color:#7a3b00}.orange:before{background:#ff8a00}.red{background:#fdecec;color:#b42318}.red:before{background:#f04438}.blue{background:#eef2ff;color:#344054}.blue:before,.blue-dot:before{background:#98a2b3}.dot{display:inline-flex;align-items:center;gap:6px;font-size:12px}.neg{color:#d93025;font-weight:700}.remark{min-width:160px}.pager{padding:12px}.pager a{padding:6px 10px;border:1px solid #ddd;margin:0 3px;text-decoration:none;border-radius:6px}.pager .cur{background:#316bff;color:#fff}.modal{display:none;position:fixed;inset:0;background:rgba(0,0,0,.35);align-items:center;justify-content:center;z-index:10}.modal.on{display:flex}.modal-box{background:#fff;width:460px;max-width:90vw;border-radius:14px;padding:20px;box-shadow:0 10px 30px rgba(0,0,0,.18)}.modal-box textarea{width:100%;height:160px}.modal-box select,.modal-box input{width:100%;margin-bottom:10px}.modal-actions{text-align:right;margin-top:12px}.hint{color:#6b7280;font-size:12px}#toast{display:none;position:fixed;right:24px;bottom:24px;background:#111827;color:#fff;padding:12px 18px;border-radius:10px;z-index:20}#toast.show{display:block}.login-body{display:flex;align-items:center;justify-content:center;min-height:100vh;background:#eef2ff}.login-box{background:#fff;padding:30px;border-radius:16px;width:340px;box-shadow:0 10px 30px rgba(0,0,0,.1)}.login-box input,.login-box button{width:100%;margin-top:12px}.alert.error{background:#fdecec;color:#b42318;padding:10px;border-radius:8px}

.grid2-report{display:grid;grid-template-columns:1fr 1fr;gap:16px}.report table{max-width:700px}@media(max-width:1000px){.grid2-report{grid-template-columns:1fr}.filters{grid-template-columns:1fr}.cards{grid-template-columns:1fr 1fr}aside{position:relative;width:100%}main{margin-left:0;width:100%}.layout{display:block}}

.form-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:12px 0}.site-form textarea{width:100%;height:90px}.btn.danger{background:#ef4444}.actions .btn{padding:6px 10px;font-size:12px}code{background:#f3f4f6;padding:3px 6px;border-radius:6px}

.sync-controls{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.sync-controls select,.sync-controls input{height:36px}

.order-list{display:flex;flex-direction:column;gap:12px}.order-card{display:grid;grid-template-columns:100px 1fr 140px 420px;gap:14px;align-items:center;background:#fff;border:1px solid #e5e8ef;border-radius:12px;padding:14px}.order-products{display:flex;gap:12px;align-items:flex-start;background:#f0fff4;border:1px solid #b7ebc6;padding:8px}.prod-img{width:90px;height:110px;object-fit:cover;background:#f8f8f8}.order-products pre{white-space:pre-wrap;margin:4px 0;font-family:inherit}.order-customer{text-align:left;line-height:1.7}.mini-badge{background:#d9f0ff;color:#075985;padding:2px 6px;border-radius:6px}.card small{display:block;color:#6b7280;margin-top:6px}@media(max-width:1200px){.order-card{grid-template-columns:1fr}.order-customer{text-align:left}}

.shopline-panel{padding:0;overflow:hidden}.shopline-table-wrap{overflow:auto;background:#fff}.shopline-table{width:100%;border-collapse:collapse;min-width:1500px}.shopline-table th{background:#fff;color:#001b44;font-weight:600;border-bottom:1px solid #e6e9ef;padding:14px 12px;font-size:13px;position:sticky;top:0;z-index:2}.shopline-table td{border-bottom:1px solid #e6e9ef;padding:13px 12px;font-size:13px;vertical-align:middle}.order-main-row{cursor:pointer;background:#fff}.order-main-row:hover{background:#f8faff}.order-detail-row{display:none;background:#f7f9fc}.order-detail-row.show{display:table-row}.shopline-detail{display:grid;grid-template-columns:1.4fr .8fr 1.2fr;gap:18px;padding:16px 24px}.detail-title{font-weight:700;margin-bottom:8px;color:#001b44}.product-detail-box{display:flex;gap:12px;background:#f1fff2;border:1px solid #bfe8c2;padding:8px;min-height:115px}.product-detail-box pre{margin:0;white-space:pre-wrap;font-family:Arial,'Microsoft YaHei';line-height:1.55}.shopline-product-img{width:100px;height:110px;object-fit:cover;background:#fff;border:1px solid #e5e8ef}.empty-img{display:flex;align-items:center;justify-content:center;color:#98a2b3;font-size:12px}.detail-logistics,.detail-customer{line-height:1.75}.shopline-filter{grid-template-columns:repeat(5,minmax(130px,1fr))}.badge{white-space:nowrap}@media(max-width:1100px){.shopline-detail{grid-template-columns:1fr}.shopline-filter{grid-template-columns:1fr 1fr}}

/* V17 SHOPLINE-like compact order list */
.compact-order-table th,
.compact-order-table td{height:52px;padding:10px 12px;vertical-align:middle}
.compact-order-table .check-col{width:42px;text-align:center}
.order-no-cell{display:flex;align-items:center;gap:8px}
.expand-btn{width:22px;height:22px;border:1px solid #d9deea;background:#fff;border-radius:6px;cursor:pointer;color:#344054;line-height:18px}
.item-cell{display:flex;align-items:center;gap:8px}
.mini-product{width:30px;height:30px;object-fit:cover;border:1px solid #e5e8ef;border-radius:4px;background:#f5f7fb}
.mini-product.placeholder{display:inline-flex;align-items:center;justify-content:center;color:#98a2b3}
.compact-detail-row{display:none;background:#f7f9fc}
.compact-detail-row.show{display:table-row}
.compact-detail{display:grid;grid-template-columns:1.4fr .9fr 1.2fr;gap:16px;padding:14px 20px}
.detail-block{background:#fff;border:1px solid #e5e8ef;border-radius:10px;padding:12px;line-height:1.65}
.detail-title{font-weight:700;margin-bottom:8px;color:#001b44}
.product-block{display:grid;grid-template-columns:80px 1fr;gap:10px;align-items:start}
.product-block .detail-title{grid-column:1 / -1}
.detail-thumb{width:80px;height:80px;object-fit:cover;border:1px solid #e5e8ef;border-radius:6px}
.product-block pre{margin:0;white-space:pre-wrap;font-family:Arial,'Microsoft YaHei';line-height:1.5;max-height:110px;overflow:auto}
.customer-block{font-size:13px}
.shopline-table.compact{min-width:1550px}
@media(max-width:1200px){.compact-detail{grid-template-columns:1fr}.product-block{grid-template-columns:70px 1fr}}

/* V18 固定导航，不折叠、不需要点击展开 */
.layout{display:flex;min-height:100vh}
.sidebar, aside{
    width:188px;
    min-width:188px;
    background:#111827;
    color:#fff;
    padding:18px 12px;
    position:fixed;
    left:0;
    top:0;
    bottom:0;
    overflow-y:auto;
    z-index:50;
}
.sidebar .brand, aside .brand{
    font-size:18px;
    font-weight:700;
    margin:0 0 18px 0;
    padding:0 10px;
}
.sidebar a, aside a{
    display:block;
    color:#e5e7eb;
    padding:12px 10px;
    border-radius:7px;
    text-decoration:none;
    margin-bottom:4px;
    font-size:14px;
}
.sidebar a:hover, aside a:hover,
.sidebar a.active, aside a.active{
    background:#1f2937;
    color:#fff;
    font-weight:700;
}
main{
    margin-left:188px;
    width:calc(100% - 188px);
    padding:22px;
}
@media(max-width:900px){
    .sidebar, aside{position:relative;width:100%;min-width:100%;height:auto}
    main{margin-left:0;width:100%}
    .layout{display:block}
}

/* V19 客户信息展开、重复字段、高亮与图片预览 */
.customer-info-row{display:none;background:#f7f9fc}
.customer-info-row.show{display:table-row}
.customer-info-box{display:grid;grid-template-columns:1.4fr 1.1fr .9fr;gap:14px;padding:14px 18px}
.customer-section{background:#fff;border:1px solid #e5e8ef;border-radius:10px;padding:12px;line-height:1.75}
.product-inline{display:flex;gap:10px;align-items:flex-start}
.product-inline pre{margin:0;white-space:pre-wrap;font-family:Arial,'Microsoft YaHei';font-size:12px;line-height:1.45;max-height:110px;overflow:auto}
.dup-field{color:#d93025!important;font-weight:700;text-decoration:none}
.dup-field:hover{text-decoration:underline}
.mini-product-40,.detail-thumb-40{width:40px;height:40px;object-fit:cover;border:1px solid #e5e8ef;border-radius:5px;background:#f5f7fb}
.mini-product-40.placeholder{display:inline-flex;align-items:center;justify-content:center;color:#98a2b3}
.img-hover-wrap{position:relative;display:inline-block}
.img-preview{display:none;position:absolute;left:48px;top:0;width:320px;max-height:420px;object-fit:contain;background:#fff;border:1px solid #d9deea;border-radius:8px;box-shadow:0 12px 30px rgba(0,0,0,.18);z-index:999}
.img-hover-wrap:hover .img-preview{display:block}
.expand-btn{min-width:42px;height:24px;border:1px solid #d9deea;background:#fff;border-radius:6px;cursor:pointer;color:#344054;font-size:12px}
.item-cell{display:flex;align-items:center;gap:8px}
@media(max-width:1200px){.customer-info-box{grid-template-columns:1fr}.img-preview{left:0;top:48px}}

/* V20 */
.mini-product-40{
 width:40px!important;
 height:40px!important;
 min-width:40px!important;
 min-height:40px!important;
 max-width:40px!important;
 max-height:40px!important;
 object-fit:cover!important;
 border-radius:4px;
 cursor:zoom-in;
}
.item-cell img{width:40px!important;height:40px!important;}
.img-hover-wrap{position:relative;display:inline-block;}
.img-preview{
 display:none;
 position:fixed;
 width:360px;
 max-height:520px;
 object-fit:contain;
 background:#fff;
 border:1px solid #ddd;
 box-shadow:0 8px 30px rgba(0,0,0,.25);
 padding:6px;
 z-index:99999;
 pointer-events:none;
}
.img-hover-wrap:hover .img-preview{display:block;}
.product-inline .detail-thumb-40,
.product-inline .img-hover-wrap{display:none!important;} /* 商品信息区域不再重复显示图片 */

.customer-info-row{display:none;}
.customer-info-row.show{display:table-row;}


/* V21 SHOPLINE-style polish */
main{background:#f4f6fb;}
header{
  position:sticky;
  top:0;
  z-index:30;
  background:#f4f6fb;
  padding:0 0 14px 0;
  border-bottom:1px solid #e6e9ef;
}
header h1{margin:0;font-size:22px;color:#001b44;}
.shopline-panel{border-radius:12px;overflow:hidden;}
.shopline-table-wrap{border-radius:12px;background:#fff;}
.shopline-table.compact-order-table th{
  height:44px;
  background:#fff;
  color:#001b44;
  font-weight:700;
  font-size:13px;
  border-bottom:1px solid #e6e9ef;
}
.shopline-table.compact-order-table td{
  height:56px;
  font-size:13px;
  border-bottom:1px solid #edf0f5;
  background:#fff;
}
.shopline-table.compact-order-table tr.order-main-row:hover td{background:#f7f9ff;}
.order-no-cell b{color:#001b44;}
.order-no-cell .expand-btn{
  border:0;
  background:#eef2ff;
  color:#2546a0;
  border-radius:6px;
  min-width:42px;
}
.order-no-cell .expand-btn:hover{background:#dfe7ff;}
.toolbar-sticky{
  position:sticky;
  top:72px;
  z-index:20;
  background:#fff;
  border:1px solid #e5e8ef;
  border-radius:12px;
  padding:10px 14px;
  margin-bottom:12px;
  display:flex;
  gap:10px;
  align-items:center;
  flex-wrap:wrap;
}
.toolbar-sticky .hint{color:#667085;font-size:12px;}
.customer-info-row.show td{
  background:#f7f9fc!important;
}
.customer-info-box{
  display:grid!important;
  grid-template-columns:1.2fr 1.2fr 1fr!important;
  gap:14px!important;
  padding:14px 18px!important;
}
.customer-section{
  background:#fff;
  border:1px solid #e6e9ef;
  border-radius:10px;
  padding:12px;
  line-height:1.75;
  box-shadow:0 1px 2px rgba(16,24,40,.03);
}
.product-inline pre{
  max-height:120px;
  overflow:auto;
  font-size:12px;
  color:#001b44;
}
.dup-field{
  color:#d92d20!important;
  background:#fff1f0;
  border-radius:4px;
  padding:1px 4px;
}
.dup-field:hover{
  background:#ffe4e2;
}
.mini-product-40{
  width:40px!important;height:40px!important;
  min-width:40px!important;min-height:40px!important;
  max-width:40px!important;max-height:40px!important;
  object-fit:cover!important;
}
.img-preview{
  display:none;
  position:fixed;
  width:360px;
  max-height:520px;
  object-fit:contain;
  background:#fff;
  border:1px solid #d0d5dd;
  box-shadow:0 18px 50px rgba(16,24,40,.24);
  padding:8px;
  border-radius:10px;
  z-index:999999;
  pointer-events:none;
}
.img-hover-wrap:hover .img-preview{display:block;}
.panel .filters.shopline-filter{
  grid-template-columns:repeat(6,minmax(130px,1fr));
}
.badge{
  font-weight:500;
}
@media(max-width:1300px){
  .customer-info-box{grid-template-columns:1fr!important;}
  .panel .filters.shopline-filter{grid-template-columns:repeat(2,minmax(130px,1fr));}
}

/* V22 multiple SKU images in 商品信息 area */
.customer-section.product-section{
  border:1px solid #ff4d4f;
}
.product-images-grid{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  align-items:flex-start;
  margin-bottom:8px;
}
.product-info-img{
  width:40px!important;
  height:40px!important;
  min-width:40px!important;
  min-height:40px!important;
  max-width:40px!important;
  max-height:40px!important;
  object-fit:cover!important;
  border:1px solid #e5e8ef;
  border-radius:5px;
  background:#f5f7fb;
  cursor:zoom-in;
}
.no-img{font-size:12px;color:#98a2b3}
.product-section pre{
  margin:0;
  white-space:pre-wrap;
  font-family:Arial,'Microsoft YaHei';
  font-size:12px;
  line-height:1.45;
  max-height:130px;
  overflow:auto;
}

/* V23 copy button */
.copy-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:22px;
  height:22px;
  margin-left:5px;
  border:1px solid #d0d5dd;
  background:#fff;
  color:#344054;
  border-radius:5px;
  font-size:12px;
  cursor:pointer;
  vertical-align:middle;
}
.copy-btn:hover{
  background:#eef2ff;
  color:#2546a0;
  border-color:#b8c6ff;
}

/* V24 user permissions */
.permission-grid{display:grid;grid-template-columns:repeat(4,minmax(140px,1fr));gap:10px;margin:12px 0 18px}
.perm-item{background:#f8faff;border:1px solid #e5e8ef;border-radius:8px;padding:10px}
.perm-item input{margin-right:6px}
.btn.danger{background:#ef4444;color:#fff}

/* V25 order actions */
.order-action-toolbar .danger.big-action{background:#e60023;color:#fff;font-weight:700;font-size:15px;padding:10px 18px;box-shadow:0 2px 8px rgba(230,0,35,.22)}
.edit-order-form{display:grid;grid-template-columns:90px 1fr;gap:6px 8px;align-items:center}
.edit-order-form input,.edit-order-form textarea,.edit-order-form select{width:100%;border:1px solid #d9deea;border-radius:6px;padding:6px}
.edit-order-form textarea{height:54px}
.edit-order-form .small-save{grid-column:1 / -1;margin-top:6px}

/* V26 sync buttons fix */
.sync-help-text{font-size:12px;color:#667085;margin-left:6px}
.sync-controls .btn{white-space:nowrap}

/* V27 order row click + SKU images */
.clickable-row{cursor:pointer}
.clickable-row:hover td{background:#f7f9ff!important}
.customer-info-row{display:none}
.customer-info-row.show{display:table-row}
.sku-image-list{display:flex;flex-direction:column;gap:8px}
.sku-image-row{display:flex;gap:8px;align-items:flex-start;border-bottom:1px dashed #e5e8ef;padding-bottom:6px}
.sku-line-img{
  width:40px!important;height:40px!important;
  min-width:40px!important;max-width:40px!important;
  min-height:40px!important;max-height:40px!important;
  object-fit:cover!important;border:1px solid #e5e8ef;border-radius:5px;background:#f5f7fb;cursor:zoom-in;
}
.sku-line-img.no-img{display:inline-flex;align-items:center;justify-content:center;font-size:11px;color:#98a2b3}
.sku-line-text{font-size:12px;line-height:1.45;color:#001b44;white-space:normal;word-break:break-word}
.product-section{border:1px solid #ff4d4f!important}
.product-section pre,.product-inline .detail-thumb-40,.product-inline .img-hover-wrap{display:none!important}
.img-preview{
  display:none;position:fixed;width:360px;max-height:520px;object-fit:contain;background:#fff;
  border:1px solid #d0d5dd;box-shadow:0 18px 50px rgba(16,24,40,.24);
  padding:8px;border-radius:10px;z-index:999999;pointer-events:none;
}
.img-hover-wrap:hover .img-preview{display:block}

/* V28 export/copy updates */
.copy-icon.fa-copy{
  display:inline-block;
  margin-left:5px;
  cursor:pointer;
  color:#344054;
  font-size:14px;
  vertical-align:middle;
}
.copy-icon.fa-copy:hover{color:#2563eb}
.copy-icon.fa-copy:before{content:"";}

/* V29 product cards in order detail */
.product-section{
  border:1px solid #ff4d4f!important;
  min-height:190px;
}
.product-card-grid{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(230px,1fr));
  gap:10px;
  align-items:start;
}
.product-card{
  display:flex;
  gap:10px;
  border:1px solid #e5e8ef;
  border-radius:8px;
  background:#fff;
  padding:8px;
  min-height:74px;
}
.product-card-img{
  width:54px!important;
  height:54px!important;
  min-width:54px!important;
  max-width:54px!important;
  object-fit:cover!important;
  border:1px solid #e5e8ef;
  border-radius:6px;
  background:#f5f7fb;
  cursor:zoom-in;
}
.product-card-img.no-img{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:11px;
  color:#98a2b3;
}
.product-card-info{min-width:0;line-height:1.45}
.product-sku{font-size:12px;color:#344054;font-weight:700;word-break:break-all}
.product-name{font-size:12px;color:#001b44;word-break:break-word;margin-top:2px}
.product-qty{font-size:12px;color:#667085;margin-top:4px}
.product-section pre,.sku-image-list{display:none!important}
.img-preview{
  display:none;position:fixed;width:360px;max-height:520px;object-fit:contain;background:#fff;
  border:1px solid #d0d5dd;box-shadow:0 18px 50px rgba(16,24,40,.24);
  padding:8px;border-radius:10px;z-index:999999;pointer-events:none;
}
.img-hover-wrap:hover .img-preview{display:block}

/* V30 site management and edit modal */
.token-code{
  display:block;
  max-width:420px;
  overflow:auto;
  white-space:nowrap;
  background:#f3f4f6;
  border-radius:6px;
  padding:4px 6px;
}
.site-actions{
  min-width:220px;
  white-space:nowrap;
}
.table-wrap table{
  min-width:1200px;
}
.mini-action{
  padding:5px 10px;
  font-size:12px;
}
.order-edit-modal-box{
  width:620px;
  max-width:96vw;
}
.edit-grid{
  display:grid;
  grid-template-columns:90px 1fr;
  gap:9px 10px;
  align-items:center;
}
.edit-grid input,.edit-grid textarea,.edit-grid select{
  width:100%;
  border:1px solid #d9deea;
  border-radius:7px;
  padding:8px;
}
.edit-grid textarea{
  height:70px;
}

/* V31 filters and site table */
.site-actions{min-width:220px;white-space:nowrap}
.token-code{display:block;max-width:520px;overflow:auto;white-space:nowrap}
.order-edit-modal-box{width:620px;max-width:96vw}
.edit-grid{display:grid;grid-template-columns:90px 1fr;gap:9px 10px;align-items:center}
.edit-grid input,.edit-grid textarea,.edit-grid select{width:100%;border:1px solid #d9deea;border-radius:7px;padding:8px}
.edit-grid textarea{height:70px}
.mini-action{padding:5px 10px;font-size:12px}

/* V32 order group/tag dropdown filters */
.shopline-filter select.filter-select,
.shopline-filter select[name="order_group"],
.shopline-filter select[name="tags"],
.shopline-filter select[name="fulfillment_status"]{
  height:38px;
  border:1px solid #d9deea;
  border-radius:8px;
  background:#fff;
  padding:0 10px;
  color:#001b44;
}

/* V33 modal must be on top */
.modal{
  position:fixed!important;
  left:0!important;
  top:0!important;
  right:0!important;
  bottom:0!important;
  background:rgba(15,23,42,.45)!important;
  z-index:2147483000!important;
  display:none!important;
  align-items:center!important;
  justify-content:center!important;
}
.modal.on{display:flex!important;}
.modal-box{
  position:relative!important;
  z-index:2147483001!important;
  background:#fff!important;
  border-radius:12px!important;
  box-shadow:0 25px 80px rgba(0,0,0,.35)!important;
  max-height:90vh!important;
  overflow:auto!important;
}
.order-edit-modal-box{width:680px!important;max-width:96vw!important;}
.fixed-table-container,.fixed-table-body,.shopline-table-wrap,.panel{z-index:auto!important;}

/* V34 sync visible status */
.sync-controls button:disabled{opacity:.6;cursor:not-allowed}
#toast{font-weight:600}

/* V35 reconciliation toolbar */
.order-action-toolbar button,.panel button{pointer-events:auto}

/* V36 order management batch toolbar */
.order-mgmt-batch-toolbar{
  margin-top:10px;
  margin-bottom:10px;
  border:1px solid #dbe4ff;
  background:#fff;
}
.order-mgmt-batch-toolbar .btn{
  white-space:nowrap;
}
#edit_order_group_select,
#edit_order_group{
  width:100%;
}

/* V37 report daily cards */
.daily-summary-cards .card small{
  display:block;
  margin-top:5px;
  color:#667085;
}
.daily-summary-cards .card b{
  font-size:22px;
}

/* V38 report JPY + USD */
.daily-summary-panel h3{margin-top:0}
.daily-report-table th,.daily-report-table td{
  text-align:left;
  padding:12px 14px;
}
.daily-report-table tbody tr:hover{
  background:#f8faff;
}
.daily-summary-cards .card small{
  display:block;
  margin-top:6px;
  color:#667085;
}
.daily-summary-cards .card b{
  font-size:20px;
}

/* V39 unified batch modal */
.v39-modal-box{width:520px;max-width:96vw}
.v39-label{display:block;font-weight:700;margin:10px 0 6px;color:#001b44}
.v39-input{width:100%;border:1px solid #d9deea;border-radius:8px;padding:9px;background:#fff}
.v39-modal-box h3{margin-top:0}

/* V40 */

/* V41 toolbar order */
.order-mgmt-batch-toolbar{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
}
.order-mgmt-batch-toolbar .big-action{
  margin-left:4px;
}

/* V42 single toolbar */
.order-mgmt-batch-toolbar{
  margin-top:10px;
  margin-bottom:10px;
}
.order-mgmt-batch-toolbar .btn{
  white-space:nowrap;
}


/* V47 Export buttons unified style */
.btn-export{
    background:#2563eb !important;
    border:1px solid #2563eb !important;
    color:#fff !important;
}
.btn-export:hover{
    background:#1d4ed8 !important;
    border-color:#1d4ed8 !important;
    color:#fff !important;
}

/* V48: export buttons restored to normal ghost style */
.btn-export{
    background:transparent !important;
    border:1px solid #d0d5dd !important;
    color:#344054 !important;
}
.btn-export:hover{
    background:#f8faff !important;
    border-color:#b8c6ff !important;
    color:#2546a0 !important;
}

/* V49 batch order number search */
.bulk-order-search{
  grid-column: span 2;
}
.bulk-search-box{
  margin-top:8px;
  padding:10px;
  border:1px solid #d9deea;
  border-radius:10px;
  background:#f8faff;
}
.bulk-search-box textarea{
  width:100%;
  min-height:95px;
  border:1px solid #d9deea;
  border-radius:8px;
  padding:8px;
  margin-bottom:8px;
  font-family:Consolas,monospace;
}

/* V50 batch order number modal */
.order-no-search-input{
  border-color:#c7d2fe!important;
}
.bulk-order-modal-box{
  width:560px;
  max-width:96vw;
}
.bulk-tip{
  color:#667085;
  font-size:13px;
  margin-top:0;
}
.bulk-order-textarea{
  width:100%;
  min-height:220px;
  border:1px solid #d9deea;
  border-radius:10px;
  padding:10px;
  font-family:Consolas,monospace;
  font-size:14px;
}

/* V51 batch order number modal */
.order-no-search-input{border-color:#c7d2fe!important;}
.bulk-order-modal-box{width:560px;max-width:96vw;}
.bulk-tip{color:#667085;font-size:13px;margin-top:0;}
.bulk-order-textarea{width:100%;min-height:220px;border:1px solid #d9deea;border-radius:10px;padding:10px;font-family:Consolas,monospace;font-size:14px;}

/* V52 batch order number modal */
.order-no-search-input{border-color:#c7d2fe!important;}
.bulk-order-modal-box{width:560px;max-width:96vw;}
.bulk-tip{color:#667085;font-size:13px;margin-top:0;}
.bulk-order-textarea{width:100%;min-height:220px;border:1px solid #d9deea;border-radius:10px;padding:10px;font-family:Consolas,monospace;font-size:14px;}

/* V55 bulk search count */
.bulk-order-stat{
  margin:8px 0;
  padding:8px 10px;
  border:1px solid #dbe4ff;
  background:#f8faff;
  border-radius:8px;
  color:#001b44;
}

/* V58 reconciliation column order */
.reconciliation-table th,
.reconciliation-table td{
  white-space:nowrap;
}

/* V59 payment method short text + collapsible navigation */
.pay-short{
  display:inline-block;
  max-width:4.5em;
  white-space:normal;
  word-break:break-all;
  line-height:1.25;
  cursor:help;
}
.sidebar-toggle{
  position:fixed;
  left:10px;
  top:10px;
  z-index:1000;
  width:34px;
  height:34px;
  border:1px solid #d0d5dd;
  background:#fff;
  color:#344054;
  border-radius:8px;
  cursor:pointer;
  box-shadow:0 2px 8px rgba(16,24,40,.12);
}
.sidebar-toggle:hover{background:#f8faff;color:#2563eb}
body.sidebar-collapsed .sidebar,
body.sidebar-collapsed aside.sidebar,
body.sidebar-collapsed aside{
  display:none!important;
}
body.sidebar-collapsed main{
  margin-left:0!important;
  width:100%!important;
}
body.sidebar-collapsed .layout{
  display:block!important;
}

/* V60 payment method 10 chars + docked sidebar toggle */
.pay-short{
  max-width:10.5em!important;
  white-space:normal!important;
  word-break:break-all!important;
}

/* hide old floating square style and make it a side dock handle */
.sidebar-toggle{
  position:fixed!important;
  left:187px!important;
  top:50px!important;
  z-index:2000!important;
  width:14px!important;
  height:62px!important;
  border:0!important;
  border-left:4px solid #ff5a6e!important;
  background:#fff!important;
  color:#ff5a6e!important;
  border-radius:0 5px 5px 0!important;
  box-shadow:0 1px 4px rgba(16,24,40,.12)!important;
  cursor:pointer!important;
  padding:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  font-size:14px!important;
}
.sidebar-toggle:hover{
  background:#fff5f6!important;
  color:#e11d48!important;
}
.sidebar-toggle .toggle-closed{display:none;}
.sidebar-toggle .toggle-open{display:inline;}

body.sidebar-collapsed .sidebar-toggle{
  left:0!important;
  top:50px!important;
  width:18px!important;
  border-left:0!important;
  border-right:4px solid #ff5a6e!important;
  border-radius:0 5px 5px 0!important;
}
body.sidebar-collapsed .sidebar-toggle .toggle-open{display:none;}
body.sidebar-collapsed .sidebar-toggle .toggle-closed{display:inline;}

body.sidebar-collapsed .sidebar,
body.sidebar-collapsed aside.sidebar{
  display:none!important;
}
body.sidebar-collapsed main{
  margin-left:0!important;
  width:100%!important;
}
body.sidebar-collapsed .layout{
  display:block!important;
}

/* V61 copyable missing-order report */
.missing-report-box{width:560px;max-width:96vw}
.missing-summary{
  padding:10px;
  border:1px solid #dbe4ff;
  background:#f8faff;
  border-radius:8px;
  margin-bottom:10px;
}
#missingOrderText{min-height:180px}

/* V63 reconciliation filter layout fix */
.reconciliation-filters,
form.filters{
  display:grid;
  grid-template-columns:repeat(4,minmax(220px,1fr));
  gap:10px;
  align-items:center;
}
.reconciliation-filters select,
.reconciliation-filters input,
form.filters select,
form.filters input{
  width:100%;
  max-width:100%;
  min-width:0;
  height:38px;
  box-sizing:border-box;
}
.reconciliation-filters button,
form.filters button{
  height:38px;
}
@media(max-width:1200px){
  .reconciliation-filters,
  form.filters{grid-template-columns:repeat(2,minmax(180px,1fr));}
}

/* V100 stable layout */
.reconciliation-filters, form.filters{display:grid;grid-template-columns:repeat(4,minmax(220px,1fr));gap:10px;align-items:center}
.reconciliation-filters select,.reconciliation-filters input,form.filters select,form.filters input{width:100%;height:38px;box-sizing:border-box;min-width:0}
.reconciliation-filters button,form.filters button{height:38px}
.bulk-order-modal-box,.missing-report-box{width:560px;max-width:96vw}
.bulk-order-textarea{width:100%;min-height:220px;border:1px solid #d9deea;border-radius:10px;padding:10px;font-family:Consolas,monospace;font-size:14px}
.bulk-order-stat,.missing-summary{margin:8px 0;padding:8px 10px;border:1px solid #dbe4ff;background:#f8faff;border-radius:8px;color:#001b44}
.pay-short{max-width:10.5em!important;white-space:normal!important;word-break:break-all!important}

/* V106 reconciliation tag dropdown */
.reconciliation-filters select[name="tags"]{border-color:#d9deea;}

/* V107 dynamic payment/settlement dropdowns */
.filters select[name="payment_method"],
.filters select[name="settlement_period"]{
  min-width:0;
}

/* V109 reconciliation empty/not-empty field dropdown */
.reconciliation-filters select[name="cost_field"],
.reconciliation-filters select[name="cost_state"]{
  border-color:#d9deea;
}

/* V111 finance daily details */
.finance-daily-table th,
.finance-daily-table td{
  white-space:nowrap;
  text-align:right;
}
.finance-daily-table th:first-child,
.finance-daily-table td:first-child{
  text-align:left;
}
.finance-filters{
  display:grid;
  grid-template-columns:repeat(5,minmax(160px,1fr));
  gap:10px;
}
.pagination{
  display:flex;
  gap:12px;
  align-items:center;
  margin-top:12px;
}
.neg{color:#d92d20!important;}
.muted{color:#667085;text-align:center!important;}

/* V112: exclude cancelled orders in analysis pages; profit layout vertical */
.profit-analysis-page .cards{
  display:block!important;
}
.profit-analysis-page .cards .card{
  display:block!important;
  width:auto!important;
  margin-bottom:10px!important;
}
.profit-analysis-page section.panel{
  display:block!important;
  width:100%!important;
  clear:both!important;
}
.profit-analysis-page .table-wrap{
  width:100%!important;
}

/* V113 pending purchased no settlement */
.pending-purchased-table th,
.pending-purchased-table td{
  white-space:nowrap;
  text-align:right;
}
.pending-purchased-table th:nth-child(1),
.pending-purchased-table td:nth-child(1),
.pending-purchased-table th:nth-child(2),
.pending-purchased-table td:nth-child(2){
  text-align:left;
}
.pending-summary-cards{
  margin:10px 0;
}
.pending-purchased-panel .hint{
  color:#667085;
  margin-top:-4px;
}

/* V114 settlement period combined dropdown */
.reconciliation-filters select[name="settlement_period_filter"],
.profit-analysis-page select[name="settlement_period_filter"]{
  border-color:#d9deea;
}

/* V116 platform fields */
.site-form #wooFields{display:none}
.site-form select[name="platform"]{width:100%}

/* V117 profit analysis layout */
.profit-analysis-page .profit-summary-list{
  display:block!important;
  max-width:720px;
  margin:0 0 14px 0;
}
.profit-summary-row{
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:10px 14px;
  margin-bottom:8px;
  background:#fff;
  border:1px solid #e5e7eb;
  border-radius:10px;
  box-shadow:0 1px 2px rgba(16,24,40,.04);
}
.profit-summary-row span{color:#667085}
.profit-summary-row b{font-size:18px}
.profit-cost-breakdown{
  display:grid;
  grid-template-columns:repeat(4,minmax(120px,1fr));
  gap:8px;
  margin:0 0 8px 0;
}
.profit-cost-breakdown span{
  background:#f8faff;
  border:1px solid #e5e7eb;
  border-radius:8px;
  padding:8px 10px;
  white-space:nowrap;
}
.profit-report-stack{
  display:block!important;
}
.profit-report-stack .panel{
  width:100%!important;
  display:block!important;
  margin-bottom:14px!important;
  clear:both!important;
}
.profit-analysis-page .grid2-report{
  display:block!important;
}
.pending-purchased-table th:nth-child(4),
.pending-purchased-table td:nth-child(4){
  font-weight:600;
}

/* V118 width fixes */
.profit-report-stack table{
  width:100%!important;
  table-layout:fixed!important;
}
.profit-report-stack th,
.profit-report-stack td{
  white-space:normal!important;
  word-break:break-word!important;
}
.profit-report-stack th:nth-child(1),
.profit-report-stack td:nth-child(1){
  width:45%;
}
.profit-report-stack th:nth-child(2),
.profit-report-stack td:nth-child(2){
  width:15%;
}
.profit-report-stack th:nth-child(3),
.profit-report-stack td:nth-child(3),
.profit-report-stack th:nth-child(4),
.profit-report-stack td:nth-child(4){
  width:20%;
}

.sites-table{
  width:100%!important;
  table-layout:fixed!important;
}
.sites-table th,
.sites-table td{
  white-space:normal!important;
  word-break:break-word!important;
}
.sites-table .token-code{
  display:block;
  max-width:150px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.sites-table th:nth-child(1), .sites-table td:nth-child(1){width:45px;}
.sites-table th:nth-child(2), .sites-table td:nth-child(2){width:90px;}
.sites-table th:nth-child(3), .sites-table td:nth-child(3){width:160px;}
.sites-table th:nth-child(4), .sites-table td:nth-child(4){width:18%;}
.sites-table th:nth-child(8), .sites-table td:nth-child(8){width:180px;}

/* V119 stable modal and logistics */
.modal{display:none;position:fixed;inset:0;background:rgba(15,23,42,.45);z-index:9999;align-items:center;justify-content:center}
.modal.on{display:flex!important}
.modal-box{background:#fff;border-radius:12px;padding:18px;max-height:92vh;overflow:auto;box-shadow:0 16px 40px rgba(0,0,0,.25)}
#wooFields{display:grid!important}
#wooTitle,.woocommerce-help{display:block!important}

/* V120 enterprise site manager */
.platform-tabs{
  display:flex;
  gap:12px;
  margin:10px 0 16px;
}
.platform-tab{
  display:flex;
  align-items:center;
  gap:8px;
  padding:10px 14px;
  border:1px solid #d9deea;
  border-radius:10px;
  background:#fff;
  cursor:pointer;
  font-weight:600;
}
.platform-tab:has(input:checked){
  border-color:#2563eb;
  background:#f8faff;
  color:#1d4ed8;
}
.platform-config-box{
  border:1px solid #e5e7eb;
  border-radius:12px;
  padding:14px;
  margin-top:12px;
  background:#fff;
}
.platform-badge{
  display:inline-block;
  padding:4px 8px;
  border-radius:999px;
  font-size:12px;
  font-weight:700;
  white-space:nowrap;
}
.platform-badge.shopline{background:#eef4ff;color:#1d4ed8}
.platform-badge.woo{background:#ecfdf3;color:#027a48}
.enterprise-sites-table{
  width:100%;
  table-layout:fixed;
}
.enterprise-sites-table th,
.enterprise-sites-table td{
  white-space:normal;
  word-break:break-word;
}
.enterprise-sites-table th:nth-child(1),.enterprise-sites-table td:nth-child(1){width:45px}
.enterprise-sites-table th:nth-child(2),.enterprise-sites-table td:nth-child(2){width:110px}
.enterprise-sites-table th:nth-child(4),.enterprise-sites-table td:nth-child(4){width:150px}
.enterprise-sites-table th:nth-child(9),.enterprise-sites-table td:nth-child(9){width:230px}

/* V121 product title / payment / remark */
.product-name,
.product-card-info .product-name{
  white-space:normal!important;
  word-break:break-word!important;
  overflow-wrap:anywhere!important;
  line-height:1.35!important;
  max-width:420px!important;
}
.product-card-info{
  min-width:0!important;
}
.pay-short{
  white-space:normal!important;
  word-break:break-word!important;
  overflow-wrap:anywhere!important;
}
.autosave-remark{
  min-width:120px;
  max-width:220px;
  width:100%;
}
.remark-save-status{
  display:block;
  font-size:12px;
  margin-top:3px;
}
.remark-save-status.ok{color:#079455;}
.remark-save-status.fail{color:#d92d20;}
.remark-save-status.saving{color:#667085;}
.compact-order-table th,
.compact-order-table td{
  vertical-align:top;
}

/* V122 blacklist */
.blacklist-badge{
  display:inline-block;
  margin-left:6px;
  padding:2px 7px;
  border-radius:999px;
  background:#fff1f3;
  color:#c01048;
  border:1px solid #ffb3c7;
  font-size:12px;
  font-weight:700;
  white-space:nowrap;
}
.btn.danger.mini-action{
  margin-right:4px;
}

/* V123 blacklist management */
a.blacklist-badge{
  text-decoration:none;
}
.blacklist-table{
  table-layout:fixed;
  width:100%;
}
.blacklist-table th,
.blacklist-table td{
  white-space:normal;
  word-break:break-word;
}
.blacklist-table th:nth-child(1),.blacklist-table td:nth-child(1){width:50px}
.blacklist-table th:nth-child(10),.blacklist-table td:nth-child(10){width:140px}

/* V125 sign rate in profit analysis */
.sign-rate-row b small{
  font-size:12px;
  color:#667085;
  font-weight:500;
  margin-left:6px;
}
.sign-rate-row{
  border-color:#dbeafe;
  background:#f8fbff;
}

/* V126 payment display */
.pay-short{
  display:inline-block;
  max-width:220px;
  white-space:normal!important;
  word-break:break-word!important;
  overflow-wrap:anywhere!important;
  line-height:1.3;
}

/* V128 payment method enterprise display */
.pay-short{
  display:inline-block;
  max-width:240px;
  white-space:normal!important;
  word-break:break-word!important;
  overflow-wrap:anywhere!important;
  line-height:1.35;
}
.shopline-table td:nth-child(7),
.shopline-table th:nth-child(7){
  min-width:120px;
  max-width:260px;
}

/* V129 order change logs */
.logs-table{
  width:100%;
  table-layout:fixed;
}
.logs-table th,
.logs-table td{
  white-space:normal;
  word-break:break-word;
  vertical-align:top;
}
.logs-table th:nth-child(1),.logs-table td:nth-child(1){width:135px}
.logs-table th:nth-child(2),.logs-table td:nth-child(2){width:110px}
.logs-table th:nth-child(3),.logs-table td:nth-child(3){width:90px}
.logs-table th:nth-child(5),.logs-table td:nth-child(5){width:100px}

/* V130 cancel order count */
.cancel-count-row{
  border-color:#fee4e2;
  background:#fff8f7;
}
.cancel-count-row b{
  color:#d92d20;
}

/* V132 cancel order count */
.cancel-count-row{
  border-color:#fee4e2;
  background:#fff8f7;
}
.cancel-count-row b{
  color:#d92d20;
}

/* V133 cancel rate */
.cancel-rate-row{
  border-color:#fedf89;
  background:#fffbeb;
}
.cancel-rate-row b{
  color:#b54708;
}
.cancel-rate-row b small{
  font-size:12px;
  color:#667085;
  font-weight:500;
  margin-left:6px;
}

/* V134 reconciliation floating batch toolbar */
.reconciliation-batch-toolbar{
  position:sticky!important;
  top:0;
  z-index:1200;
  background:rgba(255,255,255,.96);
  backdrop-filter:blur(8px);
  border:1px solid #e5e7eb;
  border-radius:12px;
  padding:10px;
  margin-bottom:10px;
  box-shadow:0 8px 24px rgba(16,24,40,.08);
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  align-items:center;
}
.reconciliation-batch-toolbar .btn,
.reconciliation-batch-toolbar a.btn{
  white-space:nowrap;
}
.reconciliation-batch-toolbar label{
  white-space:nowrap;
  margin-right:4px;
}

/* V135 canceled order ad cost in profit */
.profit-cost-breakdown .cancel-ad-cost{
  background:#fff7ed;
  border-color:#fed7aa;
  color:#9a3412;
}
.profit-report-stack table th,
.profit-report-stack table td{
  font-size:13px;
}

/* V136 profit source/site layout fix */
.profit-report-stack{
  display:block!important;
  width:100%!important;
}
.profit-source-panel,
.profit-site-panel{
  width:100%!important;
  display:block!important;
  clear:both!important;
}
.profit-breakdown-table{
  min-width:980px;
  table-layout:auto!important;
}
.profit-breakdown-table th,
.profit-breakdown-table td{
  white-space:nowrap!important;
  text-align:right;
}
.profit-breakdown-table th:first-child,
.profit-breakdown-table td:first-child{
  text-align:left;
  min-width:180px;
}
.profit-breakdown-table th:nth-child(1),
.profit-breakdown-table td:nth-child(1){
  width:24%;
}
.profit-breakdown-table th:nth-child(8),
.profit-breakdown-table td:nth-child(8){
  font-weight:700;
}

/* V136 reconciliation sticky table header */
.reconciliation-order-table thead th{
  position:sticky;
  top:58px;
  z-index:1100;
  background:#f8fafc;
  box-shadow:0 1px 0 #e5e7eb, 0 2px 8px rgba(16,24,40,.05);
}
.reconciliation-batch-toolbar + .table-wrap .reconciliation-order-table thead th{
  top:64px;
}

/* V137 monthly profit trend PC width fix */
.monthly-profit-panel{
  width:100%!important;
  overflow:hidden;
}
.monthly-profit-wrap{
  width:100%;
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
}
.monthly-profit-table{
  width:100%!important;
  min-width:760px;
  table-layout:auto!important;
}
.monthly-profit-table th,
.monthly-profit-table td{
  white-space:nowrap!important;
  text-align:right;
}
.monthly-profit-table th:first-child,
.monthly-profit-table td:first-child{
  text-align:left;
}
@media (min-width: 1024px){
  .monthly-profit-table{
    min-width:0!important;
  }
}

/* V138 reconciliation: remove floating table header, keep only action toolbar floating */
.reconciliation-order-table thead th,
.reconciliation-batch-toolbar + .table-wrap .reconciliation-order-table thead th{
  position:static!important;
  top:auto!important;
  z-index:auto!important;
  box-shadow:none!important;
}

/* V139 notifications */
.variable-box{
  margin:10px 0;
  padding:10px;
  border:1px solid #e5e7eb;
  border-radius:10px;
  background:#f8fafc;
}
.var-chip{
  display:inline-block;
  margin:4px;
  padding:5px 8px;
  border:1px solid #d0d5dd;
  border-radius:999px;
  background:#fff;
  cursor:pointer;
  font-size:12px;
}
.template-table{
  width:100%;
  table-layout:fixed;
}
.template-table th,
.template-table td{
  white-space:normal;
  word-break:break-word;
}

/* V140 notification rules and logistics */
.template-table,.logs-table{
  width:100%;
  table-layout:fixed;
}
.template-table th,.template-table td,.logs-table th,.logs-table td{
  white-space:normal;
  word-break:break-word;
  vertical-align:top;
}
.variable-box{
  margin:10px 0;
  padding:10px;
  border:1px solid #e5e7eb;
  border-radius:10px;
  background:#f8fafc;
}
.var-chip{
  display:inline-block;
  margin:4px;
  padding:5px 8px;
  border:1px solid #d0d5dd;
  border-radius:999px;
  background:#fff;
  cursor:pointer;
  font-size:12px;
}

/* V141 alt range select */
.range-selected-row{
  background:#eff6ff!important;
}
.selected-count-hint{
  display:inline-flex;
  align-items:center;
  padding:5px 10px;
  border-radius:999px;
  background:#eef4ff;
  color:#1d4ed8;
  font-size:12px;
  font-weight:700;
  white-space:nowrap;
}

/* V142 alt shift range select */
.range-selected-row{
  background:#eff6ff!important;
}

/* V143 send template modal and order edit fields */
.choose-template-box{
  max-width:620px;
  width:90vw;
}
.choose-template-box select{
  width:100%;
  min-height:42px;
}
.order-edit-modal-box .edit-grid{
  grid-template-columns:120px 1fr;
}

/* V144 sync button priority */
.sync-new-btn{
  background:#2563eb!important;
  color:#fff!important;
  border-color:#2563eb!important;
  font-weight:700;
}
.sync-full-btn{
  background:#fff!important;
  color:#475467!important;
  border:1px solid #d0d5dd!important;
}

/* V145 order list email ip layout */
.shopline-table{
  width:100%;
  table-layout:auto!important;
}
.shopline-table th,
.shopline-table td{
  vertical-align:top;
}
.shopline-table .order-no-cell{
  min-width:120px;
  white-space:nowrap;
}
.shopline-table .email-cell{
  max-width:190px;
  word-break:break-all;
  overflow-wrap:anywhere;
  font-size:12px;
}
.shopline-table .ip-cell{
  max-width:130px;
  word-break:break-word;
  font-size:12px;
}
.shopline-table th:nth-child(8),
.shopline-table td:nth-child(8){
  min-width:110px;
}
.shopline-table-wrap{
  width:100%;
  overflow-x:auto;
}
.copy-icon{
  margin-left:6px;
}

/* V146 compact order management layout */
.shopline-table-wrap{
  overflow-x:visible!important;
}
.shopline-table.compact-order-table{
  width:100%!important;
  table-layout:fixed!important;
  font-size:12px;
}
.shopline-table.compact-order-table th,
.shopline-table.compact-order-table td{
  padding:6px 5px!important;
  white-space:normal!important;
  word-break:break-word!important;
  overflow-wrap:anywhere!important;
}
.shopline-table.compact-order-table th:nth-child(1),.shopline-table.compact-order-table td:nth-child(1){width:28px}
.shopline-table.compact-order-table th:nth-child(2),.shopline-table.compact-order-table td:nth-child(2){width:88px}
.shopline-table.compact-order-table th:nth-child(3),.shopline-table.compact-order-table td:nth-child(3){width:76px}
.shopline-table.compact-order-table th:nth-child(4),.shopline-table.compact-order-table td:nth-child(4){width:60px}
.shopline-table.compact-order-table th:nth-child(5),.shopline-table.compact-order-table td:nth-child(5){width:60px}
.shopline-table.compact-order-table th:nth-child(6),.shopline-table.compact-order-table td:nth-child(6){width:60px}
.shopline-table.compact-order-table th:nth-child(7),.shopline-table.compact-order-table td:nth-child(7){width:78px}
.shopline-table.compact-order-table th:nth-child(8),.shopline-table.compact-order-table td:nth-child(8){width:90px}
.shopline-table.compact-order-table th:nth-child(9),.shopline-table.compact-order-table td:nth-child(9){width:120px}
.shopline-table.compact-order-table th:nth-child(10),.shopline-table.compact-order-table td:nth-child(10){width:82px}
.shopline-table.compact-order-table th:nth-child(11),.shopline-table.compact-order-table td:nth-child(11){width:90px}
.shopline-table.compact-order-table th:nth-child(12),.shopline-table.compact-order-table td:nth-child(12){width:68px}
.shopline-table.compact-order-table th:nth-child(13),.shopline-table.compact-order-table td:nth-child(13){width:70px}
.shopline-table.compact-order-table th:nth-child(14),.shopline-table.compact-order-table td:nth-child(14){width:42px}
.shopline-table.compact-order-table th:nth-child(15),.shopline-table.compact-order-table td:nth-child(15){width:62px}
.shopline-table.compact-order-table th:nth-child(16),.shopline-table.compact-order-table td:nth-child(16){width:70px}
.shopline-table.compact-order-table th:nth-child(17),.shopline-table.compact-order-table td:nth-child(17){width:70px}
.shopline-table.compact-order-table th:nth-child(18),.shopline-table.compact-order-table td:nth-child(18){width:85px}
.shopline-table.compact-order-table th:nth-child(19),.shopline-table.compact-order-table td:nth-child(19){width:55px}
.order-no-cell .copy-btn,
td .copy-btn{
  padding:2px 5px!important;
  font-size:11px!important;
}
.email-cell,.ip-cell{
  font-size:11px!important;
  line-height:1.25;
}
.pay-short{
  max-width:76px!important;
  font-size:11px;
}
.badge{
  font-size:11px!important;
  padding:2px 5px!important;
}
@media (max-width:1400px){
  .shopline-table.compact-order-table{font-size:11px;}
  .shopline-table.compact-order-table th,.shopline-table.compact-order-table td{padding:4px 3px!important;}
}

/* V147 further compact order management */
.shopline-table.compact-order-table{
  font-size:11px!important;
}
.shopline-table.compact-order-table th,
.shopline-table.compact-order-table td{
  padding:4px 3px!important;
  line-height:1.25!important;
}
.shopline-table.compact-order-table th:nth-child(7),
.shopline-table.compact-order-table td:nth-child(7){width:55px!important}
.shopline-table.compact-order-table th:nth-child(9),
.shopline-table.compact-order-table td:nth-child(9){width:95px!important}
.shopline-table.compact-order-table th:nth-child(10),
.shopline-table.compact-order-table td:nth-child(10){width:70px!important}
.shopline-table.compact-order-table th:nth-child(11),
.shopline-table.compact-order-table td:nth-child(11){width:82px!important}
.shopline-table.compact-order-table th:nth-child(15),
.shopline-table.compact-order-table td:nth-child(15){width:90px!important}
.tracking-cell{font-size:11px;word-break:break-all}
.copy-order-action{margin-left:2px!important;margin-top:2px!important}

/* V148 order list compact status stack */
.status-stack div{margin-bottom:2px}
.status-stack .badge{display:inline-block;white-space:nowrap}
.shopline-table.compact-order-table th:nth-child(4),
.shopline-table.compact-order-table td:nth-child(4){width:62px!important}
.shopline-table.compact-order-table th:nth-child(5),
.shopline-table.compact-order-table td:nth-child(5){width:52px!important}
.shopline-table.compact-order-table th:nth-child(9),
.shopline-table.compact-order-table td:nth-child(9){width:88px!important}
.shopline-table.compact-order-table th:nth-child(10),
.shopline-table.compact-order-table td:nth-child(10){width:66px!important}
.email-cell a,.ip-cell a{
  display:inline-block;
  max-width:86px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.delete-order-action{display:block;margin-top:4px!important}
.copy-order-action{display:block;margin-top:4px!important}

/* V149 order list normal layout after merging status */
.shopline-table.compact-order-table{
  font-size:13px!important;
}
.shopline-table.compact-order-table th,
.shopline-table.compact-order-table td{
  padding:8px 7px!important;
  line-height:1.35!important;
}
.shopline-table.compact-order-table th:nth-child(2),
.shopline-table.compact-order-table td:nth-child(2){width:105px!important}
.shopline-table.compact-order-table th:nth-child(3),
.shopline-table.compact-order-table td:nth-child(3){width:110px!important}
.shopline-table.compact-order-table th:nth-child(4),
.shopline-table.compact-order-table td:nth-child(4){width:78px!important}
.shopline-table.compact-order-table th:nth-child(5),
.shopline-table.compact-order-table td:nth-child(5){width:70px!important}
.shopline-table.compact-order-table th:nth-child(6),
.shopline-table.compact-order-table td:nth-child(6){width:120px!important}
.shopline-table.compact-order-table th:nth-child(7),
.shopline-table.compact-order-table td:nth-child(7){width:180px!important}
.shopline-table.compact-order-table th:nth-child(8),
.shopline-table.compact-order-table td:nth-child(8){width:110px!important}
.shopline-table.compact-order-table th:nth-child(9),
.shopline-table.compact-order-table td:nth-child(9){width:130px!important}
.shopline-table.compact-order-table th:nth-child(10),
.shopline-table.compact-order-table td:nth-child(10){width:100px!important}
.shopline-table.compact-order-table th:nth-child(11),
.shopline-table.compact-order-table td:nth-child(11){width:90px!important}
.shopline-table.compact-order-table th:nth-child(12),
.shopline-table.compact-order-table td:nth-child(12){width:90px!important}
.shopline-table.compact-order-table th:nth-child(13),
.shopline-table.compact-order-table td:nth-child(13){width:90px!important}
.shopline-table.compact-order-table th:nth-child(14),
.shopline-table.compact-order-table td:nth-child(14){width:105px!important}
.shopline-table.compact-order-table th:nth-child(15),
.shopline-table.compact-order-table td:nth-child(15){width:115px!important}
.shopline-table.compact-order-table th:nth-child(16),
.shopline-table.compact-order-table td:nth-child(16){width:90px!important}
.shopline-table.compact-order-table th:nth-child(17),
.shopline-table.compact-order-table td:nth-child(17){width:80px!important}
.email-cell a{
  max-width:none!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
}
.ip-cell a{
  max-width:100px!important;
}
.pay-short{
  max-width:68px!important;
}
.delete-order-action{
  background:#fff!important;
  color:#667085!important;
  border:1px solid #d0d5dd!important;
}
.copy-order-action{
  display:block;
  margin-top:4px!important;
}
.order-edit-modal-box .modal-actions .btn.danger + .btn.ghost{
  border-color:#fecaca;
  color:#b42318;
  background:#fff;
}

/* V151 email/IP full wrap and normal font */
.shopline-table.compact-order-table .email-cell,
.shopline-table.compact-order-table .ip-cell{
  font-size:13px!important;
  line-height:1.35!important;
  white-space:normal!important;
  word-break:break-all!important;
  overflow-wrap:anywhere!important;
}
.shopline-table.compact-order-table .email-cell a,
.shopline-table.compact-order-table .ip-cell a{
  font-size:13px!important;
  max-width:none!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
  word-break:break-all!important;
  overflow-wrap:anywhere!important;
}
.order-edit-modal-box .modal-actions{
  gap:8px;
  flex-wrap:wrap;
}

/* V153 logistics modal and export */
#importTrackingModal.on{
  display:flex!important;
}
#importTrackingModal .modal-box{
  max-width:560px;
}

/* V155 order list logistics columns */
.shopline-table.compact-order-table th:nth-child(14),
.shopline-table.compact-order-table td:nth-child(14){width:74px!important}
.shopline-table.compact-order-table th:nth-child(15),
.shopline-table.compact-order-table td:nth-child(15){width:96px!important}
.shopline-table.compact-order-table th:nth-child(16),
.shopline-table.compact-order-table td:nth-child(16){width:82px!important}
.carrier-cell,
.tracking-cell,
.tracking-status-cell{
  font-size:13px!important;
  line-height:1.35!important;
  white-space:normal!important;
  word-break:break-all!important;
  overflow-wrap:anywhere!important;
}

/* V159 SHOPLINE debug */
.debug-pre{
  max-height:420px;
  overflow:auto;
  background:#0b1020;
  color:#d1e7ff;
  padding:12px;
  border-radius:8px;
  font-size:12px;
  white-space:pre-wrap;
  word-break:break-all;
}

/* V162 order number no wrap and copy buttons */
.shopline-table.compact-order-table .order-no-cell,
.shopline-table.compact-order-table .order-no-cell b{
  white-space:nowrap!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
}
.shopline-table.compact-order-table .order-no-cell{
  min-width:130px!important;
  width:130px!important;
}
.shopline-table.compact-order-table .email-cell,
.shopline-table.compact-order-table .phone-cell{
  font-size:13px!important;
}
.email-cell .copy-btn,
.phone-cell .copy-btn{
  margin-left:4px;
  vertical-align:middle;
  flex:0 0 auto;
}
.email-cell{
  display:table-cell!important;
}

/* V172 site modal */
.panel-title-row{display:flex;align-items:center;justify-content:space-between;gap:12px}
.site-modal-box{width:min(980px,94vw);max-height:92vh;overflow:auto}
.site-modal-box .platform-config-box{margin-top:14px}

/* V177 modal sizing */
.modal-box{
  width:70%!important;
  max-width:1200px!important;
}
.site-modal-box{
  width:70%!important;
  max-width:1200px!important;
  min-height:70vh;
  max-height:94vh!important;
  overflow-y:auto!important;
}
@media (max-width:900px){
  .modal-box,
  .site-modal-box{
    width:94%!important;
    min-height:auto;
  }
}

/* V181 custom date range sync */
.sync-range-modal-box{
  width:min(720px,90vw)!important;
  min-height:auto!important;
}
.range-sync-btn{
  background:#eef3ff;
  color:#315efb;
  border:1px solid #cbd8ff;
}

/* V183 标签与结算账期选择器 */
.v183-tag-list{
  max-height:320px;
  overflow:auto;
  border:1px solid #dfe3e8;
  border-radius:8px;
  margin:8px 0 14px;
  padding:6px;
  background:#fff;
}
.v183-tag-item{
  display:flex;
  align-items:center;
  gap:9px;
  padding:9px 10px;
  border-radius:6px;
  cursor:pointer;
}
.v183-tag-item:hover{background:#f5f7fa}
.v183-tag-item small{
  margin-left:auto;
  color:#8a94a6;
}
.v183-tag-item input{width:17px;height:17px}


/* V190 RC6 订单管理物流状态颜色 */
.tracking-status-success{
  color:#159447 !important;
  font-weight:700;
}
.tracking-status-danger{
  color:#d93025 !important;
  font-weight:700;
}
.tracking-status-cell{
  white-space:normal;
  min-width:110px;
}


/* V190 RC7 付款状态与统一批量下拉 */
.badge.green{
  background:#e8f7ee !important;
  color:#159447 !important;
  border:1px solid #bfe7cd !important;
  font-weight:700;
}
.v190-unified-select{
  min-height:42px;
  background:#fff;
}
.v190-unified-select[multiple]{
  min-height:210px;
  padding:6px;
}
.v190-unified-select[multiple] option{
  padding:9px 10px;
  border-radius:6px;
  margin:2px 0;
}
.v190-select-search{margin-bottom:8px;}

/* V192.5 物流信息 */
.tracking-status-badge{display:inline-block;padding:3px 8px;border-radius:12px;font-size:12px;line-height:1.35;cursor:pointer;white-space:nowrap}
.tracking-status-success{color:#087443;background:#e8f7ef}.tracking-status-transit{color:#1559a8;background:#eaf2ff}.tracking-status-warning{color:#8a5a00;background:#fff5d8}.tracking-status-danger{color:#b42318;background:#ffebe9}.tracking-status-muted{color:#59636e;background:#eef1f4}
.tracking-refresh-btn{border:0;background:transparent;cursor:pointer;padding:2px 4px;margin-left:3px;font-size:14px}.tracking-refresh-btn:disabled{cursor:wait;opacity:.65}
.tracking-info-modal-box{max-width:620px}.tracking-progress{height:12px;background:#e7e9ed;border-radius:999px;overflow:hidden;margin:16px 0 8px}.tracking-progress>div{height:100%;width:0;background:#111;transition:width .2s ease}

/* V192.7 batch email/SMS progress */
.send-progress-box{width:min(760px,92vw);max-width:760px}
.send-progress-summary{display:flex;flex-wrap:wrap;gap:10px 18px;margin:12px 0;font-size:14px}
.send-progress-summary .ok-text{color:#16794a}.send-progress-summary .fail-text{color:#bd1e2d}
.send-progress-track{height:16px;background:#e7ebf0;border-radius:999px;overflow:hidden}
.send-progress-bar{height:100%;background:linear-gradient(90deg,#2563eb,#0ea5e9);transition:width .2s ease}
.send-progress-percent{text-align:right;margin-top:5px;font-weight:700}
.send-current{margin:10px 0;padding:10px 12px;background:#f7f8fa;border-radius:8px;word-break:break-all}
.send-progress-log{height:250px;overflow:auto;border:1px solid #dfe3e8;border-radius:8px;padding:10px;background:#fff;font-size:13px;line-height:1.7}
.send-log-ok{color:#166534}.send-log-fail{color:#b91c1c}

/* V198.4: searchable payment method and shared courier inputs */
.carrier-search-field{display:flex;flex-direction:column;gap:5px;min-width:0}
.carrier-search-field input{width:100%;box-sizing:border-box}
.carrier-search-field .hint{font-size:12px;color:#6b7280;line-height:1.35}

/* V199.19 sidebar second-level navigation */
.sidebar-nav-group{display:block}
.sidebar-nav-parent{display:flex;align-items:center;width:100%}
.sidebar-nav-parent .sidebar-parent-link{flex:1;min-width:0}
.sidebar-sub-toggle{width:34px;min-width:34px;height:34px;border:0;background:transparent;color:inherit;cursor:pointer;font-size:16px;line-height:1;transition:transform .18s ease}
.sidebar-nav-group.open .sidebar-sub-toggle{transform:rotate(180deg)}
.sidebar-submenu{display:none;padding:2px 0 6px 14px}
.sidebar-nav-group.open .sidebar-submenu{display:block}
.sidebar .sidebar-sub-link{font-size:13px;padding:8px 12px;border-left:2px solid rgba(255,255,255,.12)}
/* V199.21: parent menu itself toggles second-level menu */
.sidebar-nav-parent .sidebar-parent-link{display:block;color:#e5e7eb;padding:12px 10px;border:0;border-radius:7px;background:transparent;text-align:left;margin:0 0 4px 0;font:inherit;font-size:14px;cursor:pointer}
.sidebar-nav-parent .sidebar-parent-link:hover,.sidebar-nav-parent .sidebar-parent-link.active{background:#1f2937;color:#fff;font-weight:700}


/* V199.33 物流自动发送表格：页面内完整展示，不出现左右滚动 */
.tracking-auto-send-table-wrap{width:100%;overflow-x:visible!important;}
.tracking-auto-send-table{width:100%!important;min-width:0!important;table-layout:fixed;}
.tracking-auto-send-table th,.tracking-auto-send-table td{white-space:normal!important;padding:9px 7px;vertical-align:middle;overflow-wrap:anywhere;}
.tracking-auto-send-table th:nth-child(1){width:12%;}
.tracking-auto-send-table th:nth-child(2){width:8%;}
.tracking-auto-send-table th:nth-child(3){width:12%;}
.tracking-auto-send-table th:nth-child(4){width:12%;}
.tracking-auto-send-table th:nth-child(5){width:22%;}
.tracking-auto-send-table th:nth-child(6){width:8%;}
.tracking-auto-send-table th:nth-child(7){width:26%;}
.tracking-auto-send-table select{width:100%;max-width:100%;min-width:0;}
.tracking-auto-send-table .limit-input{display:flex;align-items:center;gap:5px;min-width:0;}
.tracking-auto-send-table .limit-input input{width:64px;min-width:0;padding:8px 6px;}
.tracking-auto-send-table .limit-input span{font-size:12px;white-space:nowrap;}
.tracking-auto-send-table .hint{white-space:normal;line-height:1.35;margin-top:4px;}
@media(max-width:900px){
 .tracking-auto-send-table th,.tracking-auto-send-table td{padding:7px 4px;font-size:12px;}
 .tracking-auto-send-table .limit-input{display:block;}
 .tracking-auto-send-table .limit-input input{width:100%;}
 .tracking-auto-send-table .limit-input span{display:block;margin-top:3px;}
 .tracking-auto-send-table select{padding:7px 4px;font-size:12px;}
}

/* V199.51 user permissions: mirror sidebar order instead of a row-major grid */
.permission-nav-tree{
  display:flex;
  flex-direction:column;
  gap:8px;
  max-width:760px;
  margin:12px 0 18px;
}
.permission-nav-group{
  border:1px solid #e3e8f2;
  border-radius:10px;
  background:#fbfcff;
  overflow:hidden;
}
.permission-nav-row{
  display:flex;
  align-items:center;
  gap:9px;
  min-height:42px;
  padding:9px 13px;
  cursor:pointer;
  color:#344054;
  box-sizing:border-box;
}
.permission-nav-row input{
  margin:0;
  flex:0 0 auto;
}
.permission-nav-main{
  font-weight:600;
  background:#f7f9fe;
  border:1px solid #e3e8f2;
  border-radius:10px;
}
.permission-nav-group > .permission-nav-main{
  border:0;
  border-radius:0;
}
.permission-nav-children{
  margin-left:26px;
  border-left:2px solid #e8edf6;
  padding:4px 0 6px 10px;
}
.permission-nav-child{
  min-height:36px;
  padding:7px 12px;
  font-weight:400;
  background:#fff;
  border-radius:7px;
  margin:2px 8px 2px 0;
}
.permission-nav-child:hover,.permission-nav-main:hover{
  background:#f1f5ff;
}
.permission-nav-section-title{
  padding:10px 13px 5px;
  font-size:12px;
  font-weight:600;
  color:#667085;
  background:#fbfcff;
}
.permission-nav-aux{
  margin-top:4px;
}
@media (max-width:900px){
  .permission-nav-tree{max-width:none;}
}

/* V199.52 permissions: complete 1:1 mirror of the real sidebar */
.permission-nav-tree{
  display:flex!important;
  flex-direction:column!important;
  gap:10px!important;
  max-width:860px!important;
  margin:12px 0 20px!important;
}
.permission-nav-group{
  display:block!important;
  border:1px solid #e3e8f2!important;
  border-radius:10px!important;
  background:#fff!important;
  overflow:hidden!important;
}
.permission-nav-group-title{
  display:block!important;
  padding:11px 14px!important;
  font-weight:700!important;
  color:#1d2939!important;
  background:#f5f7fb!important;
  border-bottom:1px solid #e8edf5!important;
}
.permission-nav-children{
  display:flex!important;
  flex-direction:column!important;
  gap:0!important;
  margin:0 0 0 18px!important;
  padding:5px 0 7px 12px!important;
  border-left:2px solid #dfe6f1!important;
}
.permission-nav-row{
  display:flex!important;
  width:100%!important;
  align-items:center!important;
  gap:9px!important;
  box-sizing:border-box!important;
  cursor:pointer!important;
}
.permission-nav-main{
  min-height:42px!important;
  padding:9px 13px!important;
  border:1px solid #e3e8f2!important;
  border-radius:10px!important;
  background:#f7f9fe!important;
  font-weight:600!important;
}
.permission-nav-child{
  min-height:36px!important;
  margin:1px 8px 1px 0!important;
  padding:7px 10px!important;
  border-radius:7px!important;
  background:#fff!important;
  font-weight:400!important;
}
.permission-nav-row:hover{background:#f1f5ff!important;}
.permission-nav-row input{margin:0!important;flex:0 0 auto!important;}
.permission-nav-section-title{
  padding:11px 14px!important;
  font-weight:700!important;
  color:#475467!important;
  background:#f8fafc!important;
  border-bottom:1px solid #e8edf5!important;
}
.permission-nav-aux{margin-top:4px!important;}
@media(max-width:900px){.permission-nav-tree{max-width:none!important;}}

/* V199.53 - 站点批量导入/导出 */
.site-toolbar-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.site-import-modal-box{width:min(640px,94vw)}
.site-import-modal-box>h3{margin-top:0}
.site-import-modal-box label{display:block;margin:12px 0 6px;font-weight:600;color:#344054}
.site-import-modal-box input[type="file"],.site-import-modal-box select{width:100%;margin:0}
.site-import-rule{margin-top:14px;padding:12px 14px;background:#f7f9fc;border:1px solid #e5e8ef;border-radius:10px;color:#475467;font-size:13px;line-height:1.75}
.site-import-rule code{background:#fff;border:1px solid #e5e8ef;border-radius:5px;padding:2px 5px;color:#344054}
.site-import-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.site-import-errors{margin-top:10px;padding-top:10px;border-top:1px solid #e5e8ef;color:#b42318;font-size:12px;line-height:1.7}
@media(max-width:720px){.panel-title-row{align-items:flex-start}.site-toolbar-actions{justify-content:flex-end}.site-toolbar-actions .btn{padding:8px 10px}}


/* V199.54 site modal close button */
.site-modal-header{position:sticky;top:-20px;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:16px;background:#fff;padding:18px 0 12px;margin-top:-18px;border-bottom:1px solid #eef1f6}
.site-modal-header h3{margin:0}
.site-modal-close{width:38px!important;height:38px!important;min-width:38px;border:1px solid #d7dce6;border-radius:10px;background:#fff;color:#344054;font-size:26px;line-height:1;display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0;margin:0!important}
.site-modal-close:hover{background:#f5f7fb;color:#111827;border-color:#bfc6d4}


/* V199.56 - 站点管理平台快速切换 */
.site-platform-switch{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
  margin:0 0 14px;
  padding:8px;
  border:1px solid #e5e9f2;
  border-radius:12px;
  background:#fff;
}
.site-platform-switch a{
  display:inline-flex;
  align-items:center;
  gap:7px;
  min-height:36px;
  padding:7px 14px;
  border-radius:9px;
  color:#475467;
  text-decoration:none;
  font-weight:600;
  transition:background .15s ease,color .15s ease,border-color .15s ease;
}
.site-platform-switch a:hover{
  background:#f4f7ff;
  color:#1d4ed8;
}
.site-platform-switch a.active{
  background:#eef4ff;
  color:#155eef;
}
.site-platform-switch a span{
  display:inline-flex;
  min-width:21px;
  height:21px;
  padding:0 6px;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  background:#f2f4f7;
  color:#667085;
  font-size:12px;
  font-weight:700;
  box-sizing:border-box;
}
.site-platform-switch a.active span{
  background:#dbe7ff;
  color:#155eef;
}
@media(max-width:720px){
  .site-platform-switch{gap:5px;padding:6px}
  .site-platform-switch a{padding:7px 10px;font-size:13px}
}


/* V199.57 - 站点管理国家快速切换 */
.site-country-switch{
  display:flex;
  align-items:center;
  gap:7px;
  flex-wrap:wrap;
  margin:-4px 0 14px;
  padding:7px 8px;
  border:1px solid #e5e9f2;
  border-radius:12px;
  background:#fff;
}
.site-country-switch a{
  display:inline-flex;
  align-items:center;
  gap:6px;
  min-height:34px;
  padding:6px 12px;
  border-radius:9px;
  color:#475467;
  text-decoration:none;
  font-size:13px;
  font-weight:600;
}
.site-country-switch a:hover{
  background:#f8fafc;
  color:#1d4ed8;
}
.site-country-switch a.active{
  background:#eef4ff;
  color:#155eef;
}
.site-country-switch a span{
  display:inline-flex;
  min-width:20px;
  height:20px;
  padding:0 6px;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  background:#f2f4f7;
  color:#667085;
  font-size:11px;
  font-weight:700;
  box-sizing:border-box;
}
.site-country-switch a.active span{
  background:#dbe7ff;
  color:#155eef;
}
@media(max-width:720px){
  .site-country-switch{gap:4px;padding:6px}
  .site-country-switch a{padding:6px 9px;font-size:12px}
}


/* V199.61 - order product image floating hover preview */
#order-product-hover-preview{
  display:none;
  position:fixed;
  left:0;
  top:0;
  z-index:2147483000;
  pointer-events:none;
  padding:8px;
  background:#fff;
  border:1px solid #d0d5dd;
  border-radius:10px;
  box-shadow:0 18px 50px rgba(16,24,40,.28);
  max-width:min(440px, calc(100vw - 20px));
  max-height:min(580px, calc(100vh - 20px));
}
#order-product-hover-preview.show{display:block}
#order-product-hover-preview img{
  display:block;
  width:auto!important;
  height:auto!important;
  max-width:420px!important;
  max-height:560px!important;
  object-fit:contain!important;
  border:0!important;
  border-radius:6px;
  background:#fff;
}
.order-table .img-hover-wrap > .img-preview,
.table-wrap .img-hover-wrap > .img-preview{
  display:none!important;
}
.mini-product-40:not(.placeholder),
.product-card-img:not(.no-img),
.sku-line-img:not(.no-img){
  cursor:zoom-in;
}


/* V199.62 - disable legacy duplicate product-image preview */
.img-hover-wrap > .img-preview{
  display:none!important;
  visibility:hidden!important;
  opacity:0!important;
  pointer-events:none!important;
}
