/* 3C商城后台 - 纯手写轻量样式，无第三方UI框架 */
@font-face{
  font-family:'ShopX';
  src:url('/static/fonts/SemiBold.ttf') format('truetype');
  font-weight:normal;
  font-style:normal;
  font-display:swap;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;font-family:'ShopX',sans-serif}
html{font-size:14px;-webkit-font-smoothing:antialiased}
body{color:#1f2937;background:#f0f2f5;line-height:1.5}
a{color:#2563eb;text-decoration:none}
a:hover{text-decoration:underline}
img{max-width:100%}

/* 布局 */
.adm{display:flex;min-height:100vh}
.adm-side{width:220px;background:#fff;color:#374151;flex-shrink:0;display:flex;flex-direction:column;border-right:1px solid #e5e7eb}
.adm-side__logo{padding:18px 20px;font-size:15px;font-weight:700;color:#111827;border-bottom:1px solid #f0f0f0;letter-spacing:.5px}
.adm-side__logo span{color:#2563eb}
.adm-nav{flex:1;padding:12px 10px;overflow-y:auto;display:flex;flex-direction:column;gap:8px}
.adm-nav a{display:flex;align-items:center;padding:9px 12px;border-radius:6px;color:#6b7280;font-size:13px;transition:background .15s,color .15s}
.adm-nav a:hover{background:#f9fafb;color:#374151;text-decoration:none}
.adm-nav a.active{background:#f0f0f0;color:#111827;font-weight:500;border-radius:4px}
.adm-main{flex:1;display:flex;flex-direction:column;min-width:0}
.adm-top{height:52px;background:#fff;border-bottom:1px solid #e5e7eb;display:flex;align-items:center;justify-content:flex-end;padding:0 24px;gap:16px}
.adm-top__user{position:relative;font-size:13px;color:#374151;cursor:pointer;padding:6px 10px;border-radius:6px}
.adm-top__user:hover{background:#f3f4f6}
.adm-top__menu{display:none;position:absolute;right:0;top:100%;margin-top:4px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 4px 12px rgba(0,0,0,.08);min-width:120px;z-index:50}
.adm-top__user:hover .adm-top__menu{display:block}
.adm-top__menu a{display:block;padding:10px 16px;color:#374151;font-size:13px}
.adm-top__menu a:hover{background:#f9fafb;text-decoration:none}
.adm-body{padding:20px 24px;flex:1}

/* 卡片 */
.card{background:#fff;border-radius:10px;border:1px solid #e8eaed;box-shadow:0 1px 2px rgba(0,0,0,.04)}
.card-hd{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #f0f0f0}
.card-hd h2{font-size:16px;font-weight:600;color:#111827}
.card-hd__actions{display:flex;align-items:center;gap:8px}
.card-bd{padding:20px}
.card+.card{margin-top:16px}

/* 统计 */
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
@media(max-width:1100px){.stats{grid-template-columns:repeat(2,1fr)}}
.stat{padding:20px;background:#fff;border-radius:10px;border:1px solid #e8eaed}
.stat__label{font-size:12px;color:#6b7280;margin-bottom:6px}
.stat__num{font-size:28px;font-weight:700;color:#2563eb}
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:16px}
@media(max-width:900px){.grid-2{grid-template-columns:1fr}}

/* 表格 */
.table-wrap{overflow-x:auto}
table.data{width:100%;border-collapse:collapse;font-size:13px}
table.data th,table.data td{padding:11px 14px;text-align:left;border-bottom:1px solid #f0f0f0}
table.data th{background:#fafbfc;color:#6b7280;font-weight:600;font-size:12px;text-transform:none}
table.data tbody tr:hover{background:#fafbfc}
table.data td.muted,.muted{color:#9ca3af;font-size:12px}
table.kv td:first-child{width:120px;color:#6b7280;background:#fafbfc;font-weight:500}

/* 按钮 */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 16px;font-size:13px;font-weight:500;border-radius:6px;border:1px solid transparent;cursor:pointer;transition:background .15s,border-color .15s,color .15s;line-height:1.4;white-space:nowrap}
.btn:hover{text-decoration:none}
.btn-sm{padding:4px 10px;font-size:12px;border-radius:5px}
.btn-primary{background:#2563eb;color:#fff;border-color:#2563eb}
.btn-primary:hover{color:#fff;background:#1d4ed8;border-color:#1d4ed8}
.btn-success{background:#059669;color:#fff;border-color:#059669}
.btn-success:hover{background:#047857;border-color:#047857;color:#fff}
.btn-warn{background:#d97706;color:#fff;border-color:#d97706}
.btn-warn:hover{background:#b45309;border-color:#b45309;color:#fff}
.btn-danger{background:#dc2626;color:#fff;border-color:#dc2626}
.btn-danger:hover{background:#b91c1c;border-color:#b91c1c;color:#fff}
.btn-ghost{background:#fff;color:#374151;border-color:#d1d5db}
.btn-ghost:hover{color:#111827;background:#f9fafb;border-color:#9ca3af}
.btn-link{background:none;border:none;color:#2563eb;padding:0}
.btn-link:hover{color:#1d4ed8}
.btn-group{display:flex;gap:6px;flex-wrap:wrap}

/* 列表/表格操作按钮 - 浅色标签风格 */
.data .btn-group .btn-sm,
.order-card__actions .btn-sm{
  font-weight:500;
  box-shadow:none;
}
.data .btn-group .btn-ghost,
.order-card__actions .btn-ghost{
  background:#f3f4f6;
  color:#4b5563;
  border-color:#e5e7eb;
}
.data .btn-group .btn-ghost:hover,
.order-card__actions .btn-ghost:hover{
  background:#e5e7eb;
  color:#111827;
  border-color:#d1d5db;
}
.data .btn-group .btn-primary,
.order-card__actions .btn-primary{
  background:#eff6ff;
  color:#2563eb;
  border-color:#bfdbfe;
}
.data .btn-group .btn-primary:hover,
.order-card__actions .btn-primary:hover{
  background:#dbeafe;
  color:#1d4ed8;
  border-color:#93c5fd;
}
.data .btn-group .btn-success,
.order-card__actions .btn-success{
  background:#ecfdf5;
  color:#059669;
  border-color:#a7f3d0;
}
.data .btn-group .btn-success:hover,
.order-card__actions .btn-success:hover{
  background:#d1fae5;
  color:#047857;
  border-color:#6ee7b7;
}
.data .btn-group .btn-warn,
.order-card__actions .btn-warn{
  background:#fff7ed;
  color:#c2410c;
  border-color:#fed7aa;
}
.data .btn-group .btn-warn:hover,
.order-card__actions .btn-warn:hover{
  background:#ffedd5;
  color:#9a3412;
  border-color:#fdba74;
}
.data .btn-group .btn-danger,
.order-card__actions .btn-danger{
  background:#fef2f2;
  color:#dc2626;
  border-color:#fecaca;
}
.data .btn-group .btn-danger:hover,
.order-card__actions .btn-danger:hover{
  background:#fee2e2;
  color:#b91c1c;
  border-color:#fca5a5;
}

/* 标签 */
.tag{display:inline-block;padding:2px 8px;border-radius:4px;font-size:12px;font-weight:500}
.tag-red{background:#fef2f2;color:#dc2626}
.tag-blue{background:#eff6ff;color:#2563eb}
.tag-orange{background:#fff7ed;color:#d97706}
.tag-green{background:#ecfdf5;color:#059669}
.tag-gray{background:#f3f4f6;color:#6b7280}
.price{color:#dc2626;font-weight:600}

/* 表单 */
.form{max-width:640px}
.form-row{margin-bottom:16px}
.form-row label{display:block;font-size:13px;font-weight:500;color:#374151;margin-bottom:6px}
.form-row .hint{font-size:12px;color:#9ca3af;margin-top:4px}
.form-row input[type=text],.form-row input[type=password],.form-row input[type=number],.form-row select,.form-row textarea{width:100%;padding:9px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:13px;color:#111827;background:#fff;transition:border-color .15s}
.form-row input:focus,.form-row select:focus,.form-row textarea:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px rgba(37,99,235,.12)}
.form-row input:disabled{background:#f9fafb;color:#9ca3af}
.form-row textarea{resize:vertical;min-height:80px;font-family:inherit}
.form-row .radio-group{display:flex;gap:16px}
.form-row .radio-group label{font-weight:400;display:flex;align-items:center;gap:6px;cursor:pointer}
.form-inline{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-bottom:16px}
.form-inline input,.form-inline select{padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:13px}
.form-inline input{min-width:160px}
.form-actions{display:flex;gap:10px;margin-top:20px;padding-top:16px;border-top:1px solid #f0f0f0}
.form-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:16px}
@media(max-width:640px){.form-grid-2{grid-template-columns:1fr}}

/* 搜索栏 */
.search-bar{margin-bottom:16px}

/* 分页 - ThinkPHP Bootstrap 驱动 */
ul.pagination,ul.pager{display:flex;flex-wrap:wrap;gap:4px;margin-top:16px;list-style:none;padding:0}
ul.pagination li,ul.pager li{display:inline-flex}
ul.pagination a,ul.pagination span,ul.pager a,ul.pager span{display:inline-flex;align-items:center;justify-content:center;min-width:32px;height:32px;padding:0 10px;border-radius:6px;font-size:13px;border:1px solid #e5e7eb;background:#fff;color:#374151}
ul.pagination li.active span{background:#2563eb;color:#fff;border-color:#2563eb}
ul.pagination li.disabled span{color:#d1d5db;background:#f9fafb}
ul.pagination a:hover{background:#f3f4f6;text-decoration:none}
.page{margin-top:16px}
.empty{text-align:center;padding:40px;color:#9ca3af;font-size:13px}

/* 登录页 */
.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(145deg,#0f172a 0%,#1e3a5f 50%,#0f172a 100%);padding:20px}
.login-box{width:100%;max-width:400px;background:#fff;border-radius:12px;padding:36px 32px;box-shadow:0 20px 60px rgba(0,0,0,.3)}
.login-box h1{text-align:center;font-size:20px;font-weight:700;color:#111827;margin-bottom:4px}
.login-box .sub{text-align:center;font-size:13px;color:#9ca3af;margin-bottom:28px}
.login-box .form-row{margin-bottom:18px}
.login-box .btn{width:100%;padding:11px;font-size:14px;margin-top:4px}
.login-tip{text-align:center;font-size:12px;color:#d1d5db;margin-top:20px}

/* Toast */
.toast-wrap{position:fixed;top:20px;left:50%;transform:translateX(-50%);z-index:9999;display:flex;flex-direction:column;gap:8px;pointer-events:none}
.toast{padding:10px 20px;border-radius:8px;font-size:13px;color:#fff;box-shadow:0 4px 12px rgba(0,0,0,.15);animation:toastIn .25s ease}
.toast-ok{background:#059669}
.toast-err{background:#dc2626}
@keyframes toastIn{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}

/* 确认框 */
.modal-mask{position:fixed;inset:0;background:rgba(0,0,0,.4);z-index:9998;display:flex;align-items:center;justify-content:center;animation:fadeIn .2s}
.modal{background:#fff;border-radius:10px;padding:24px;width:90%;max-width:360px;box-shadow:0 10px 40px rgba(0,0,0,.2)}
.modal p{font-size:14px;color:#374151;margin-bottom:20px;line-height:1.6}
.modal-btns{display:flex;gap:10px;justify-content:flex-end}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}

/* 工具 */
.text-right{text-align:right}
.mt16{margin-top:16px}
.mt24{margin-top:24px}
.flex-between{display:flex;align-items:center;justify-content:space-between}

/* 图片上传 */
.img-upload-hd{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}
.img-upload-hd label{margin:0}
.img-upload-hd .hint{font-size:12px;color:#9ca3af;font-weight:400}
.img-list{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-start}
.img-item{position:relative;width:100px;height:100px;border-radius:8px;overflow:hidden;flex-shrink:0;border:1px solid #e5e7eb;background:#f9fafb}
.img-item img{width:100%;height:100%;object-fit:cover;display:block}
.img-item .img-del{position:absolute;top:4px;right:4px;width:22px;height:22px;border:none;border-radius:50%;background:rgba(0,0,0,.55);color:#fff;font-size:16px;line-height:1;cursor:pointer;padding:0}
.img-item .img-del:hover{background:#dc2626}
.img-item .img-tag{position:absolute;left:0;bottom:0;right:0;background:rgba(37,99,235,.85);color:#fff;font-size:11px;text-align:center;padding:2px 0}
.img-add{position:relative;width:100px;height:100px;border-radius:8px;flex-shrink:0;display:block;border:1px dashed #d1d5db;background:#fafbfc;cursor:pointer;transition:border-color .15s,background .15s}
.img-add:hover{border-color:#93c5fd;background:#eff6ff}
.img-add:hover::before,.img-add:hover::after{background:#60a5fa}
.img-add::before,.img-add::after{content:'';position:absolute;left:50%;top:50%;background:#d1d5db;border-radius:1px;transition:background .15s}
.img-add::before{width:26px;height:1.5px;margin-left:-13px;margin-top:-0.75px}
.img-add::after{width:1.5px;height:26px;margin-left:-0.75px;margin-top:-13px}
.img-upload-hd .hint em{font-style:normal;color:#2563eb}
.img-file-input{position:absolute;width:0;height:0;opacity:0;pointer-events:none}
.img-add{border:none;padding:0;font:inherit;background:#fafbfc}
.img-add:disabled{opacity:.6;cursor:not-allowed}
.thumb{width:48px;height:48px;border-radius:6px;object-fit:cover;border:1px solid #eee;vertical-align:middle}
.form-wide{max-width:960px}

/* 订单列表 - 商家后台风格 */
.order-list-hd{display:grid;grid-template-columns:minmax(0,1fr) 100px 70px 100px;gap:12px;padding:8px 16px;margin-bottom:8px;font-size:12px;color:#9ca3af;background:#fafbfc;border-radius:8px}
.order-list-hd span:nth-child(n+2){text-align:center}
.order-list-hd span:last-child{text-align:right}
.order-list{display:flex;flex-direction:column;gap:14px}
.order-card{border:1px solid #e8eaed;border-radius:10px;background:#fff;overflow:hidden}
.order-card__hd{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 16px;background:#fafbfc;border-bottom:1px solid #f0f0f0;font-size:12px;color:#6b7280;flex-wrap:wrap}
.order-card__meta{display:flex;align-items:center;flex-wrap:wrap;gap:16px}
.order-card__time{color:#374151}
.order-card__no{color:#111827}
.order-card__buyer{color:#6b7280}
.order-card__goods{border-bottom:1px solid #f5f5f5}
.order-goods-row{display:grid;grid-template-columns:minmax(0,1fr) 100px 70px 100px;align-items:center;gap:12px;padding:14px 16px;border-bottom:1px solid #f9fafb}
.order-goods-row:last-child{border-bottom:none}
.order-goods-row--empty{color:#9ca3af;font-size:13px;grid-template-columns:1fr}
.order-goods-row__info{display:flex;align-items:flex-start;gap:12px;min-width:0}
.order-goods-row__thumb{width:64px;height:64px;border-radius:6px;border:1px solid #eee;background:#f9fafb;flex-shrink:0;overflow:hidden;display:flex;align-items:center;justify-content:center}
.order-goods-row__thumb img{width:100%;height:100%;object-fit:cover;display:block}
.order-goods-row__placeholder{font-size:12px;color:#d1d5db}
.order-goods-row__text{min-width:0;flex:1}
.order-goods-row__name{font-size:13px;color:#111827;line-height:1.5;word-break:break-all}
.order-goods-row__spec{margin-top:4px;font-size:12px;color:#6b7280;line-height:1.5}
.order-goods-row__sku-no{margin-top:2px;font-size:12px;color:#9ca3af}
.order-detail-goods__name{font-size:13px;color:#111827;font-weight:500;line-height:1.5}
.order-detail-goods__cover{margin-top:6px}
.order-detail-goods__cover .thumb{width:48px;height:48px;border-radius:4px;object-fit:cover;border:1px solid #eee}
.order-goods-row__price,.order-goods-row__qty,.order-goods-row__sub{font-size:13px;color:#374151;text-align:center}
.order-goods-row__sub{color:#dc2626;font-weight:500;text-align:right}
.order-card__ft{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:12px 16px;flex-wrap:wrap}
.order-card__recv{display:flex;flex-direction:column;gap:4px;font-size:12px;color:#374151;max-width:55%}
.order-card__recv .muted{color:#9ca3af;line-height:1.4}
.order-card__actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-left:auto}
.order-card__pay{font-size:13px;color:#374151;white-space:nowrap}
.order-card__pay em{font-style:normal;color:#dc2626;font-size:16px;font-weight:600;margin-left:4px}
@media(max-width:900px){
  .order-list-hd{display:none}
  .order-goods-row{grid-template-columns:1fr;gap:8px}
  .order-goods-row__price,.order-goods-row__qty,.order-goods-row__sub{text-align:left}
  .order-card__recv{max-width:100%}
  .order-card__actions{width:100%;justify-content:flex-end}
}

/* SKU 规格 */
.sku-section{margin-top:8px;padding-top:8px;border-top:1px dashed #e5e7eb}
.sku-section-hd{margin-bottom:12px}
.sku-section-hd label{display:block;font-weight:500;color:#374151;margin-bottom:4px}
.sku-section-hd .hint{font-size:12px;color:#9ca3af}
.sku-section input[type=text],
.sku-section input[type=number]{
  padding:9px 12px;
  border:1px solid #d1d5db;
  border-radius:6px;
  font-size:13px;
  color:#111827;
  background:#fff;
  transition:border-color .15s,box-shadow .15s;
  box-sizing:border-box;
  min-height:36px;
  line-height:1.4;
}
.sku-section input[type=text]:focus,
.sku-section input[type=number]:focus{
  outline:none;
  border-color:#2563eb;
  box-shadow:0 0 0 3px rgba(37,99,235,.12);
}
.sku-section input[type=text]::placeholder{color:#9ca3af}
.spec-attr-list{display:flex;flex-direction:column;gap:12px;margin-bottom:12px}
.spec-attr-empty{padding:14px 16px;background:#fafbfc;border:1px dashed #e5e7eb;border-radius:8px;font-size:13px}
.spec-attr-block{border:1px solid #e8eaed;border-radius:8px;padding:14px 16px;background:#fafbfc}
.spec-attr-block__hd{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}
.spec-attr-block__name{display:flex;align-items:center;gap:10px;flex:1;min-width:0}
.spec-attr-block__name span{font-size:13px;font-weight:500;color:#374151;white-space:nowrap;min-width:42px}
.spec-attr-block__name input{flex:1;max-width:360px;min-width:180px}
.spec-attr-block__values{display:flex;flex-direction:column;gap:10px}
.spec-attr-block__values-row{display:flex;align-items:flex-start;gap:10px;flex-wrap:wrap}
.spec-attr-block__label{font-size:13px;font-weight:500;color:#374151;line-height:36px;white-space:nowrap;min-width:42px;flex-shrink:0}
.product-param-list{display:flex;flex-direction:column;gap:10px;margin:8px 0 12px}
.product-param-empty{padding:14px 16px;background:#fafbfc;border:1px dashed #e5e7eb;border-radius:8px;font-size:13px}
.product-param-row{display:grid;grid-template-columns:160px 1fr auto;gap:10px;align-items:center}
.product-param-row input{width:100%}
.product-params-section{margin-top:4px}
.spec-value-chips{display:flex;flex-wrap:wrap;gap:8px;flex:1;min-height:36px;align-items:center;padding:4px 0}
.spec-value-chip{display:inline-flex;align-items:center;gap:4px;padding:5px 12px;background:#fff;border:1px solid #d1d5db;border-radius:16px;font-size:12px;color:#374151;line-height:1.4}
.spec-value-chip__x{border:none;background:none;color:#9ca3af;cursor:pointer;font-size:14px;line-height:1;padding:0 2px;margin-left:2px}
.spec-value-chip__x:hover{color:#dc2626}
.spec-value-add{display:flex;align-items:center;gap:8px;padding-left:52px}
.spec-value-add input{flex:0 1 240px;min-width:160px}
.sku-toolbar{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}
.sku-summary{margin-bottom:12px;padding:10px 14px;background:#eff6ff;border:1px solid #dbeafe;border-radius:8px;font-size:13px;color:#1e40af}
.sku-summary strong{font-weight:600;color:#1d4ed8}
.sku-table-wrap{margin-bottom:8px}
.sku-table input{width:100%;padding:9px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:13px;min-height:36px;background:#fff}
.sku-table input:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px rgba(37,99,235,.12)}
.sku-spec-cell{color:#111827;font-weight:500;white-space:nowrap}
.sku-table .sku-spec-col{min-width:72px;text-align:center}
.sku-spec-val{display:inline-block;padding:2px 10px;background:#f3f4f6;border-radius:4px;font-size:12px;font-weight:500;color:#374151}
.sku-status-cell{text-align:center}
.sku-switch{display:inline-flex;align-items:center;gap:4px;font-size:12px;color:#6b7280;cursor:pointer}
.sku-switch input{margin:0}
.sku-image-cell{text-align:center;vertical-align:middle}
.sku-image-thumb{position:relative;width:48px;height:48px;margin:0 auto 4px;border-radius:6px;overflow:hidden;border:1px solid #e5e7eb;background:#f9fafb}
.sku-image-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.sku-image-thumb--empty{display:flex;align-items:center;justify-content:center}
.sku-image-placeholder{font-size:12px;color:#9ca3af}
.sku-image-del{position:absolute;top:2px;right:2px;width:18px;height:18px;border:none;border-radius:50%;background:rgba(0,0,0,.55);color:#fff;font-size:12px;line-height:1;cursor:pointer;padding:0}
.sku-image-del:hover{background:#dc2626}
.sku-image-upload{padding:2px 8px;font-size:12px;min-height:auto}
.sku-select-cell{text-align:center;vertical-align:middle}
.sku-select-cell input{margin:0;cursor:pointer}
.sku-batch-panel{margin-top:12px;margin-bottom:0;padding:12px 14px;background:#f8fafc;border:1px solid #e5e7eb;border-radius:8px}
.sku-batch-panel__hd{display:flex;align-items:center;gap:12px;margin-bottom:10px;font-size:13px;flex-wrap:wrap}
.sku-batch-check{display:inline-flex;align-items:center;gap:6px;cursor:pointer;font-weight:500;color:#374151}
.sku-batch-check input{margin:0}
.sku-batch-panel__fields{display:flex;flex-wrap:wrap;gap:10px 14px;margin-bottom:10px}
.sku-batch-field{display:flex;flex-direction:column;gap:4px;min-width:120px;flex:1}
.sku-batch-field label{font-size:12px;color:#6b7280}
.sku-batch-field input,.sku-batch-field select{padding:8px 10px;border:1px solid #d1d5db;border-radius:6px;font-size:13px;background:#fff;min-height:36px}
.sku-batch-field input:focus,.sku-batch-field select:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px rgba(37,99,235,.12)}
.sku-batch-panel__actions{display:flex;gap:8px;flex-wrap:wrap}

/* 系统配置 */
.config-tabs{display:flex;gap:8px;margin-bottom:20px;border-bottom:1px solid #e5e7eb;padding-bottom:0}
.config-tab{padding:10px 18px;font-size:13px;font-weight:500;color:#6b7280;background:none;border:none;border-bottom:2px solid transparent;margin-bottom:-1px;cursor:pointer;border-radius:6px 6px 0 0;transition:color .15s,border-color .15s,background .15s}
.config-tab:hover{color:#374151;background:#f9fafb}
.config-tab.active{color:#2563eb;border-bottom-color:#2563eb;background:#fff}
.config-panel{display:none}
.config-panel.active{display:block}
.config-panel__title{font-size:14px;font-weight:600;color:#111827;margin:0 0 16px}
.config-panel__hint{font-size:12px;color:#9ca3af;margin:-8px 0 16px;line-height:1.6}
.required{color:#dc2626;margin-left:2px}

/* 图空间 */
.imagespace-stats{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:16px}
.imagespace-stat{min-width:140px;padding:12px 16px;border:1px solid #e5e7eb;border-radius:8px;background:#fafbfc}
.imagespace-stat__label{display:block;font-size:12px;color:#9ca3af;margin-bottom:4px}
.imagespace-stat strong{font-size:18px;color:#111827;font-weight:600}
.imagespace-stat--hint strong{font-size:14px}
.imagespace-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-top:16px}
.imagespace-item{border:1px solid #e5e7eb;border-radius:8px;background:#fff;overflow:hidden;min-width:0}
.imagespace-item__thumb{aspect-ratio:1;background:#f3f4f6;max-height:140px}
.imagespace-item__thumb img{width:100%;height:100%;object-fit:cover;display:block}
.imagespace-item__meta{display:flex;align-items:center;justify-content:space-between;gap:4px;padding:6px 8px 0;font-size:11px}
.imagespace-item__meta .tag{font-size:10px;padding:2px 6px}
.imagespace-item__name{padding:4px 8px;font-size:11px;color:#6b7280;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.imagespace-item__actions{display:flex;flex-wrap:wrap;gap:4px;padding:0 8px 8px}
.imagespace-item__actions .btn{padding:4px 8px;font-size:11px;line-height:1.2}
.imagespace-empty{grid-column:1/-1;text-align:center;color:#9ca3af;padding:48px 0}
.imagespace-pager{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-top:20px;padding-top:16px;border-top:1px solid #e5e7eb}
.imagespace-pager__info{font-size:13px;color:#6b7280}
.imagespace-pager .page{margin-top:0}
@media (max-width:1280px){.imagespace-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media (max-width:1024px){.imagespace-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:768px){.imagespace-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* 商品采集 */
.collect-panel{margin-bottom:20px;padding:16px;border:1px solid #dbeafe;border-radius:10px;background:#f8fbff}
.collect-panel__hd{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px}
.collect-panel__hd strong{font-size:14px;color:#111827}
.collect-panel__hd .hint{font-size:12px;color:#6b7280}
.collect-panel__row{display:flex;gap:10px;align-items:center}
.collect-panel__row input{flex:1;min-width:0}
.publish-tips{margin-top:8px;font-size:13px;color:#6b7280;line-height:1.7}
.publish-tips a{color:#2563eb}
.draft-banner{margin-bottom:16px;padding:12px 14px;border-radius:8px;background:#fffbeb;border:1px solid #fde68a;color:#92400e;font-size:13px}
.card-hd__actions{display:flex;gap:8px;flex-wrap:wrap}
