/* AI 市集 · 商品管理 */
:root { color-scheme: dark; }
.mmg-page { min-height:100vh; padding:92px 24px 72px; background:#050505; color:var(--text-primary); }
.mmg-shell { max-width:1240px; margin:0 auto; }
.mmg-breadcrumb { display:flex; gap:8px; align-items:center; margin-bottom:18px; color:var(--text-muted); font-size:12px; }
.mmg-breadcrumb a { color:var(--text-muted); }
.mmg-breadcrumb a:hover { color:var(--acid); }
.mmg-header { display:flex; justify-content:space-between; gap:20px; align-items:flex-start; padding-bottom:24px; border-bottom:1px solid var(--border); }
.mmg-eyebrow { display:flex; align-items:center; gap:7px; margin-bottom:9px; color:var(--acid); font-size:11px; font-weight:900; letter-spacing:.12em; text-transform:uppercase; }
.mmg-eyebrow svg { width:15px; height:15px; }
.mmg-header h1 { margin:0; color:#fff; font-size:30px; line-height:1.2; letter-spacing:-.03em; }
.mmg-header p { max-width:650px; margin:10px 0 0; color:var(--text-secondary); font-size:13px; line-height:1.7; }
.mmg-header-actions { display:flex; gap:10px; align-items:center; flex-shrink:0; }
.mmg-header-actions .btn { justify-content:center; white-space:nowrap; }
.mmg-stat-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:12px; margin:22px 0; }
.mmg-stat { padding:18px; border:1px solid var(--border); background:var(--bg-card); border-radius:12px; }
.mmg-stat-head { display:flex; align-items:center; justify-content:space-between; gap:8px; color:var(--text-muted); font-size:12px; }
.mmg-stat-head svg { width:16px; height:16px; stroke:var(--cyan); }
.mmg-stat-value { margin-top:10px; color:#fff; font-size:26px; font-weight:900; letter-spacing:-.04em; font-family:ui-monospace,SFMono-Regular,Menlo,monospace; }
.mmg-stat-note { margin-top:4px; color:var(--text-muted); font-size:11px; }
.mmg-notice { display:flex; gap:10px; align-items:flex-start; margin-bottom:18px; padding:13px 15px; border:1px solid rgba(200,255,0,.2); border-left:3px solid var(--acid); background:rgba(200,255,0,.045); color:var(--text-secondary); font-size:12px; line-height:1.6; }
.mmg-notice svg { width:17px; height:17px; flex:0 0 auto; margin-top:1px; stroke:var(--acid); }
.mmg-notice strong { color:var(--acid); }
.mmg-toolbar { display:flex; justify-content:space-between; gap:14px; align-items:center; margin-bottom:14px; }
.mmg-tabs { display:flex; flex-wrap:wrap; gap:7px; }
.mmg-tab { padding:8px 12px; border:1px solid var(--border); border-radius:6px; background:rgba(255,255,255,.02); color:var(--text-muted); font:700 12px inherit; cursor:pointer; transition:.18s ease; }
.mmg-tab:hover { border-color:rgba(200,255,0,.35); color:#fff; }
.mmg-tab.active { color:var(--acid); border-color:var(--acid); background:rgba(200,255,0,.07); }
.mmg-search { width:250px; display:flex; align-items:center; gap:8px; padding:0 11px; border:1px solid var(--border); background:var(--bg-card); border-radius:7px; }
.mmg-search svg { width:15px; height:15px; stroke:var(--text-muted); }
.mmg-search input { width:100%; min-width:0; height:38px; border:0; outline:0; background:transparent; color:#fff; font:13px inherit; }
.mmg-search input::placeholder { color:var(--text-muted); }
.mmg-list { display:grid; gap:10px; }
.mmg-card { display:grid; grid-template-columns:minmax(250px,1.8fr) minmax(120px,.65fr) minmax(120px,.7fr) minmax(115px,.7fr) auto; gap:16px; align-items:center; padding:16px; border:1px solid var(--border); background:var(--bg-card); border-radius:12px; transition:border-color .18s ease,transform .18s ease; }
.mmg-card:hover { border-color:rgba(255,255,255,.18); transform:translateY(-1px); }
.mmg-product { min-width:0; display:flex; gap:12px; align-items:center; }
.mmg-thumb { width:48px; height:48px; flex:0 0 48px; display:flex; align-items:center; justify-content:center; border-radius:9px; background:linear-gradient(135deg,rgba(200,255,0,.18),rgba(6,182,212,.1)); border:1px solid rgba(200,255,0,.16); }
.mmg-thumb svg { width:22px; height:22px; stroke:var(--acid); }
.mmg-product-copy { min-width:0; }
.mmg-product-title { overflow:hidden; color:#fff; font-size:14px; font-weight:800; line-height:1.35; text-overflow:ellipsis; white-space:nowrap; }
.mmg-product-meta { display:flex; gap:7px; flex-wrap:wrap; margin-top:5px; color:var(--text-muted); font-size:11px; }
.mmg-product-meta span + span::before { content:'·'; margin-right:7px; color:rgba(255,255,255,.25); }
.mmg-data-label { margin-bottom:5px; color:var(--text-muted); font-size:10px; font-weight:800; letter-spacing:.07em; text-transform:uppercase; }
.mmg-data-value { color:#fff; font-size:13px; font-weight:800; }
.mmg-data-value.acid { color:var(--acid); font-family:ui-monospace,SFMono-Regular,Menlo,monospace; }
.mmg-data-value.warning { color:var(--orange); }
.mmg-status { display:inline-flex; align-items:center; gap:5px; width:max-content; padding:5px 8px; border:1px solid; border-radius:999px; font-size:11px; font-weight:800; }
.mmg-status svg { width:12px; height:12px; }
.mmg-status.active { color:var(--acid); border-color:rgba(200,255,0,.28); background:rgba(200,255,0,.06); }
.mmg-status.pending { color:var(--cyan); border-color:rgba(6,182,212,.28); background:rgba(6,182,212,.06); }
.mmg-status.rejected { color:#ff8a65; border-color:rgba(255,122,0,.35); background:rgba(255,122,0,.08); }
.mmg-status.paused { color:var(--text-secondary); border-color:var(--border); background:rgba(255,255,255,.03); }
.mmg-status.soldout { color:var(--orange); border-color:rgba(255,122,0,.32); background:rgba(255,122,0,.07); }
.mmg-status.draft { color:#bd93f9; border-color:rgba(189,147,249,.3); background:rgba(189,147,249,.07); }
.mmg-status.blocked { color:var(--magenta); border-color:rgba(236,72,153,.3); background:rgba(236,72,153,.07); }
.mmg-actions { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:7px; }
.mmg-actions .btn { min-height:32px; padding:6px 10px; font-size:11px; white-space:nowrap; }
.mmg-actions .btn svg { width:13px; height:13px; }
.mmg-card-note { grid-column:1 / -1; margin-top:-6px; padding:9px 11px; border-radius:7px; background:rgba(255,122,0,.07); border:1px solid rgba(255,122,0,.16); color:var(--text-secondary); font-size:11px; line-height:1.55; }
.mmg-card-note strong { color:#ff9f74; }
.mmg-empty { padding:56px 24px; border:1px dashed var(--border); border-radius:12px; color:var(--text-muted); text-align:center; }
.mmg-empty svg { width:30px; height:30px; margin-bottom:10px; stroke:var(--text-muted); }
.mmg-empty h3 { margin:0 0 6px; color:#fff; font-size:15px; }
.mmg-empty p { margin:0; font-size:12px; }
.mmg-flow-note { display:grid; grid-template-columns:repeat(4,1fr); gap:1px; margin-top:24px; overflow:hidden; border:1px solid var(--border); border-radius:12px; background:var(--border); }
.mmg-flow-step { min-height:82px; padding:14px; background:#080808; }
.mmg-flow-step strong { display:block; color:#fff; font-size:12px; }
.mmg-flow-step span { display:block; margin-top:5px; color:var(--text-muted); font-size:11px; line-height:1.5; }

.mmg-overlay { position:fixed; inset:0; z-index:9999; display:flex; align-items:center; justify-content:center; padding:22px; overflow:auto; background:rgba(0,0,0,.72); backdrop-filter:blur(10px); opacity:0; pointer-events:none; transition:opacity .2s ease; }
.mmg-overlay.open { opacity:1; pointer-events:auto; }
.mmg-dialog { width:min(100%,590px); margin:auto; overflow:hidden; border:1px solid var(--border-active); border-radius:15px; background:#0d0d0d; box-shadow:0 28px 90px rgba(0,0,0,.6); transform:translateY(14px) scale(.98); transition:transform .23s ease; }
.mmg-overlay.open .mmg-dialog { transform:translateY(0) scale(1); }
.mmg-dialog-head { display:flex; justify-content:space-between; gap:16px; padding:20px 22px 16px; border-bottom:1px solid var(--border); }
.mmg-dialog-head h2 { display:flex; gap:8px; align-items:center; margin:0; color:#fff; font-size:18px; }
.mmg-dialog-head h2 svg { width:19px; height:19px; stroke:var(--acid); }
.mmg-dialog-head p { margin:6px 0 0; color:var(--text-muted); font-size:12px; line-height:1.55; }
.mmg-close { width:30px; height:30px; display:grid; place-items:center; flex:0 0 auto; border:0; border-radius:6px; background:transparent; color:var(--text-muted); cursor:pointer; }
.mmg-close:hover { color:#fff; background:rgba(255,255,255,.06); }
.mmg-close svg { width:17px; height:17px; }
.mmg-dialog-body { display:grid; gap:16px; padding:20px 22px; }
.mmg-form-grid { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.mmg-field { display:flex; flex-direction:column; gap:7px; }
.mmg-field.full { grid-column:1 / -1; }
.mmg-field label { color:var(--text-secondary); font-size:12px; font-weight:700; }
.mmg-field label small { margin-left:5px; color:var(--text-muted); font-weight:400; }
.mmg-field input,.mmg-field textarea,.mmg-field select { width:100%; box-sizing:border-box; border:1px solid var(--border); border-radius:7px; outline:0; background:rgba(255,255,255,.025); color:#fff; padding:10px 11px; font:13px inherit; transition:border-color .18s ease; }
.mmg-field textarea { min-height:86px; resize:vertical; line-height:1.55; }
.mmg-field input:focus,.mmg-field textarea:focus,.mmg-field select:focus { border-color:var(--acid); }
.mmg-field select option { background:#111; color:#fff; }
.mmg-switch-row { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:12px; border:1px solid var(--border); border-radius:8px; background:rgba(255,255,255,.02); }
.mmg-switch-copy strong { display:block; color:#fff; font-size:12px; }
.mmg-switch-copy span { display:block; margin-top:3px; color:var(--text-muted); font-size:11px; line-height:1.45; }
.mmg-switch { position:relative; width:42px; height:24px; flex:0 0 auto; }
.mmg-switch input { width:0; height:0; opacity:0; }
.mmg-switch span { position:absolute; inset:0; border-radius:999px; background:#2a2a2a; cursor:pointer; transition:.18s ease; }
.mmg-switch span::after { content:''; position:absolute; top:3px; left:3px; width:18px; height:18px; border-radius:50%; background:#aaa; transition:.18s ease; }
.mmg-switch input:checked + span { background:rgba(200,255,0,.55); }
.mmg-switch input:checked + span::after { transform:translateX(18px); background:var(--acid); }
.mmg-inline-note { padding:10px 11px; border-left:3px solid var(--cyan); background:rgba(6,182,212,.06); color:var(--text-secondary); font-size:11px; line-height:1.6; }
.mmg-inline-note strong { color:var(--cyan); }
.mmg-dialog-footer { display:flex; justify-content:flex-end; gap:10px; padding:16px 22px 20px; border-top:1px solid var(--border); }
.mmg-dialog-footer .btn { justify-content:center; min-width:100px; }
.mmg-confirm-box { padding:13px; border:1px solid rgba(255,122,0,.2); border-radius:8px; background:rgba(255,122,0,.055); color:var(--text-secondary); font-size:12px; line-height:1.65; }
.mmg-confirm-box strong { color:#ff9f74; }
.mmg-toast { position:fixed; right:22px; bottom:22px; z-index:10000; max-width:350px; display:flex; gap:10px; padding:13px 15px; border:1px solid rgba(200,255,0,.3); border-radius:10px; background:#111; color:#fff; box-shadow:0 18px 48px rgba(0,0,0,.45); transform:translateY(18px); opacity:0; pointer-events:none; transition:.22s ease; font-size:12px; line-height:1.5; }
.mmg-toast.show { transform:translateY(0); opacity:1; }
.mmg-toast svg { width:17px; height:17px; flex:0 0 auto; stroke:var(--acid); }

@media (max-width:1000px) { .mmg-stat-grid { grid-template-columns:repeat(2,1fr); } .mmg-card { grid-template-columns:1.7fr .7fr .8fr auto; } .mmg-card > .mmg-data:nth-of-type(4) { display:none; } }
@media (max-width:720px) { .mmg-page { padding:82px 14px 48px; } .mmg-header,.mmg-toolbar { align-items:stretch; flex-direction:column; } .mmg-header-actions { justify-content:stretch; } .mmg-header-actions .btn { flex:1; } .mmg-search { width:auto; } .mmg-card { grid-template-columns:1fr 1fr; gap:14px; } .mmg-product { grid-column:1 / -1; } .mmg-actions { grid-column:1 / -1; justify-content:flex-start; } .mmg-flow-note { grid-template-columns:1fr 1fr; } .mmg-form-grid { grid-template-columns:1fr; } .mmg-field.full { grid-column:auto; } }
@media (max-width:460px) { .mmg-stat-grid { grid-template-columns:1fr 1fr; } .mmg-header h1 { font-size:25px; } .mmg-dialog { border-radius:12px; } .mmg-dialog-head,.mmg-dialog-body,.mmg-dialog-footer { padding-left:16px; padding-right:16px; } }

[data-theme="light"] .mmg-page { background:var(--bg-primary); }
[data-theme="light"] .mmg-header h1,.mmg-product-title,[data-theme="light"] .mmg-stat-value,[data-theme="light"] .mmg-data-value,[data-theme="light"] .mmg-empty h3,[data-theme="light"] .mmg-flow-step strong,[data-theme="light"] .mmg-dialog-head h2,[data-theme="light"] .mmg-switch-copy strong { color:var(--text-primary); }
[data-theme="light"] .mmg-stat,[data-theme="light"] .mmg-card,[data-theme="light"] .mmg-search,[data-theme="light"] .mmg-dialog,[data-theme="light"] .mmg-flow-step { background:var(--bg-card); border-color:var(--border); }
[data-theme="light"] .mmg-card:hover { border-color:rgba(0,0,0,.17); }
[data-theme="light"] .mmg-field input,[data-theme="light"] .mmg-field textarea,[data-theme="light"] .mmg-field select { background:#fff; color:var(--text-primary); border-color:var(--border); }
[data-theme="light"] .mmg-search input { color:var(--text-primary); }
[data-theme="light"] .mmg-toast { background:#fff; color:var(--text-primary); }

/* 完整 SKU 编辑与本地审核演示 */
.mmg-sku-editor { display:grid; gap:8px; }
.mmg-sku-row { display:grid; grid-template-columns:1.05fr 1.35fr .64fr .76fr auto; gap:7px; align-items:center; padding:9px; border:1px solid var(--border); background:rgba(255,255,255,.02); }
.mmg-sku-row input,.mmg-sku-row select { min-width:0; box-sizing:border-box; border:1px solid var(--border); border-radius:6px; outline:0; background:rgba(255,255,255,.025); color:#fff; padding:8px 9px; font:12px inherit; }
.mmg-sku-row input:focus,.mmg-sku-row select:focus { border-color:var(--acid); }
.mmg-sku-row select option { background:#111; color:#fff; }
.mmg-sku-remove,.mmg-sku-add { display:inline-flex; align-items:center; justify-content:center; gap:5px; min-height:32px; border:1px solid var(--border); background:transparent; color:var(--text-secondary); cursor:pointer; font:700 11px inherit; }
.mmg-sku-remove { width:32px; }
.mmg-sku-remove:hover,.mmg-sku-add:hover { color:var(--acid); border-color:rgba(200,255,0,.45); }
.mmg-sku-remove:disabled,.mmg-sku-add:disabled { opacity:.45; cursor:not-allowed; }
.mmg-sku-add { width:max-content; margin-top:8px; padding:0 10px; border-style:dashed; color:var(--acid); }
.mmg-sku-add svg,.mmg-sku-remove svg { width:14px; height:14px; }
.mmg-focus { border-color:var(--acid) !important; box-shadow:0 0 0 3px rgba(200,255,0,.12),0 10px 32px rgba(200,255,0,.08); }
@media (max-width:720px) { .mmg-sku-row { grid-template-columns:1fr 1fr; } .mmg-sku-remove { width:auto; } }
[data-theme="light"] .mmg-sku-row { background:var(--bg-secondary); border-color:var(--border); }
[data-theme="light"] .mmg-sku-row input,[data-theme="light"] .mmg-sku-row select { background:#fff; border-color:var(--border); color:var(--text-primary); }

.mmg-demo-notice { display:flex; gap:10px; align-items:flex-start; margin:-8px 0 18px; padding:11px 14px; border:1px solid rgba(6,182,212,.2); border-left:3px solid var(--cyan); background:rgba(6,182,212,.045); color:var(--text-secondary); font-size:12px; line-height:1.6; }
.mmg-demo-notice svg { width:16px; height:16px; flex:0 0 auto; margin-top:1px; stroke:var(--cyan); }
.mmg-demo-notice strong { color:var(--cyan); }
