:root{--pmp-navy: #1e2a3a;--pmp-navy2: #16202e;--pmp-primary: #3b82f6;--pmp-green: #16a34a;--pmp-amber: #d97706;--pmp-red: #dc2626;--pmp-indigo: #4f46e5;--pmp-cyan: #0891b2;--pmp-violet: #7c3aed;--pmp-muted: #64748b;--pmp-bg: #f6f8fb;--pmp-line: #e2e8f0;--pmp-txt: #0f172a;--el-color-primary: #3b82f6;--el-color-primary-light-3: #76a8f9;--el-color-primary-light-5: #9dc0fa;--el-color-primary-light-7: #c4dafc;--el-color-primary-light-8: #d8e6fd;--el-color-primary-light-9: #ebf2fe;--el-color-primary-dark-2: #2f68c5;--el-color-success: #16a34a;--el-color-success-light-3: #5cbf80;--el-color-success-light-5: #8ad1a4;--el-color-success-light-7: #b9e3c9;--el-color-success-light-8: #d0eddb;--el-color-success-light-9: #e8f6ed;--el-color-success-dark-2: #12823b;--el-color-warning: #d97706;--el-color-warning-light-3: #e4a051;--el-color-warning-light-5: #ecbb82;--el-color-warning-light-7: #f4d6b4;--el-color-warning-light-8: #f7e4cd;--el-color-warning-light-9: #fbf1e6;--el-color-warning-dark-2: #ae5f05;--el-color-danger: #dc2626;--el-color-danger-light-3: #e66767;--el-color-danger-light-5: #ee9292;--el-color-danger-light-7: #f4bebe;--el-color-danger-light-8: #f8d4d4;--el-color-danger-light-9: #fce9e9;--el-color-danger-dark-2: #b01e1e;--el-color-error: #dc2626;--el-color-error-light-3: #e66767;--el-color-error-light-5: #ee9292;--el-color-error-light-7: #f4bebe;--el-color-error-light-8: #f8d4d4;--el-color-error-light-9: #fce9e9;--el-color-error-dark-2: #b01e1e;--el-color-info: #64748b;--el-color-info-light-3: #929eae;--el-color-info-light-5: #b2bac5;--el-color-info-light-7: #d0d5dc;--el-color-info-light-8: #e0e3e8;--el-color-info-light-9: #f0f1f3;--el-color-info-dark-2: #505d6f;--el-text-color-primary: #0f172a;--el-text-color-regular: #334155;--el-text-color-secondary: #64748b;--el-text-color-placeholder: #94a3b8;--el-border-color: #e2e8f0;--el-border-color-light: #e2e8f0;--el-border-color-lighter: #eef2f7;--el-border-color-extra-light: #f1f5f9;--el-fill-color-blank: #ffffff;--el-fill-color-light: #f8fafc;--el-fill-color-lighter: #fafbfd;--el-bg-color: #ffffff;--el-bg-color-page: #f6f8fb;--el-bg-color-overlay: #ffffff;--el-border-radius-base: 8px;--el-border-radius-small: 6px;--el-font-size-base: 14px}html,body,#app{height:100%;margin:0}body{font-family:-apple-system,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;color:var(--pmp-txt);background:var(--pmp-bg);font-size:14px}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#94a3b8}.el-card{border:1px solid var(--pmp-line);border-radius:10px;box-shadow:none!important}.el-card.is-hover-shadow,.el-card:hover{box-shadow:none!important}.el-table{--el-table-header-bg-color: #fafbfd;--el-table-row-hover-bg-color: #f5f9ff;font-size:13px}.el-table th.el-table__cell{color:var(--pmp-muted);font-weight:500}.el-table .el-table__cell{padding:8px 0}.st{display:inline-flex;align-items:center;gap:5px;font-size:12px;padding:2px 9px;border-radius:11px;white-space:nowrap}.st:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;flex:none}.st-approved{background:#f0fdf4;color:#15803d}.st-failed{background:#fef2f2;color:#b91c1c}.st-ready{background:#eef2ff;color:#4f46e5}.st-blocked{background:#f1f5f9;color:#64748b}.st-claimed{background:#fffbeb;color:#b45309}.st-review{background:#ecfeff;color:#0e7490}.st-stale{background:#f5f3ff;color:#7c3aed}.grid6{display:grid;grid-template-columns:repeat(6,minmax(64px,1fr));gap:6px}.grid4{display:grid;grid-template-columns:repeat(4,minmax(84px,1fr));gap:6px}.cell{display:block;text-align:center;border-radius:6px;padding:5px 4px;font-size:11px;font-weight:500;cursor:pointer;border:1px solid transparent;transition:.15s}.cell:hover{transform:translateY(-1px);box-shadow:0 2px 6px #0f172a1f}.cell b{display:block;font-size:12px;margin-bottom:1px}.cell .plat{font-size:10px;opacity:.7;font-weight:400}.cell .sfx{font-size:10px;font-weight:400}.cell{position:relative}.jsonbox{max-height:380px;overflow:auto;font-size:12px;margin:5px 0 0;white-space:pre-wrap;background:var(--pmp-bg, #f6f7f9);padding:8px;border-radius:6px}.pv-bar{display:flex;align-items:center;gap:10px;margin:8px 0;flex-wrap:wrap}.pv-frame{width:100%;max-width:100%;height:70vh;min-height:460px;border:1px solid var(--pmp-line);border-radius:10px;background:#fff;display:block}.msg-badge{position:absolute;top:-6px;right:-4px;min-width:15px;height:15px;border-radius:8px;background:var(--pmp-red);color:#fff;font-size:10px;line-height:15px;padding:0 3px;text-align:center;font-weight:600;box-shadow:0 1px 3px #0f172a4d}.task-progress{font-size:11.5px;color:var(--pmp-muted);margin-top:4px}.stat{background:#fff;border:1px solid var(--pmp-line);border-radius:10px;padding:14px 16px}.stat .num{font-size:22px;font-weight:700;line-height:1.2}.stat .lbl{font-size:12px;color:var(--pmp-muted);margin-top:2px}.stat.warn .num{color:var(--pmp-amber)}.stat.run .num{color:var(--pmp-primary)}.stat.violet .num{color:var(--pmp-violet)}.chip{display:inline-block;padding:5px 14px;border-radius:16px;background:#fff;border:1px solid var(--pmp-line);font-size:12.5px;cursor:pointer;color:#334155;transition:.15s}.chip:hover{border-color:#cbd5e1}.chip.on{background:var(--pmp-navy);color:#fff;border-color:var(--pmp-navy)}.hint-line{font-size:12px;color:var(--pmp-muted);background:#f1f5f9;border-radius:6px;padding:8px 12px;line-height:1.6}.hint-line .ok{color:var(--pmp-green);font-weight:600}.kbd{display:inline-block;border:1px solid var(--pmp-line);border-bottom-width:2px;border-radius:4px;padding:0 5px;font-size:11px;background:#fff;font-family:ui-monospace,monospace;color:#475569}.slot-card{border:1px solid var(--pmp-line);border-radius:8px;padding:6px;text-align:center;position:relative;background:#fff;cursor:pointer;transition:.15s}.slot-card:hover{border-color:var(--pmp-primary)}.slot-card.sel{border-color:var(--pmp-red);box-shadow:0 0 0 2px #fecaca}.slot-card img{max-width:100%;max-height:150px;border-radius:4px}.slot-card .fname{font-size:11.5px;color:#475569;word-break:break-all}.rej-presets{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-bottom:8px}.rej-presets-label{font-size:12px;color:var(--pmp-muted);flex:none}.rej-chip{cursor:pointer;border-style:dashed;font-weight:400;transition:.12s}.rej-chip:hover{border-color:var(--pmp-primary);color:var(--pmp-primary);background:#f5f9ff}.rej-rows{max-height:56vh;overflow-y:auto;padding-right:6px}.rej-row{border:1px solid var(--pmp-line);border-radius:8px;padding:10px;margin-bottom:10px;background:#fafbfd}.rej-row-head{display:flex;align-items:center;gap:10px;margin-bottom:8px}.rej-row-img{width:54px;height:54px;object-fit:cover;border-radius:6px;flex:none;border:1px solid var(--pmp-line);background:#fff}.rej-row-meta{display:flex;flex-direction:column;gap:3px;font-size:12.5px}.rej-row .rej-presets{margin-bottom:6px}.rej-row .rej-presets-label{display:none}.q-item{padding:10px 12px;border:1px solid var(--pmp-line);border-radius:8px;margin-bottom:8px;cursor:pointer;background:#fff;font-size:13px;transition:.15s}.q-item:hover{border-color:var(--pmp-primary)}.q-item.on{border-color:var(--pmp-primary);background:#eff6ff;box-shadow:inset 3px 0 0 var(--pmp-primary)}.kvs{width:100%;border-collapse:collapse}.kvs td{padding:4px 8px;border-bottom:1px dashed #eef2f7;font-size:13px;vertical-align:top}.kvs .k{color:var(--pmp-muted);width:150px}.imgbox-err{width:92px;height:92px;background:#f1f5f9;color:#94a3b8;font-size:11px;display:flex;align-items:center;justify-content:center;border-radius:6px}.empty{text-align:center;color:var(--pmp-muted);padding:40px 0;font-size:13px}.pill{display:inline-block;font-size:11px;padding:2px 8px;border-radius:10px;background:#f1f5f9;color:var(--pmp-muted)}.pill.ai{background:#eef2ff;color:#4f46e5}.pill.plat{background:#ecfeff;color:#0891b2}.pill.warn{background:#fffbeb;color:#b45309}.sec-title{font-size:13px;font-weight:600;margin:16px 0 8px}.app-aside{background:linear-gradient(180deg,#1e2a3a,#192433);display:flex;flex-direction:column}.app-aside .brand{display:flex;align-items:center;gap:10px;padding:17px 16px 15px;border-bottom:1px solid rgba(255,255,255,.07)}.brand-logo{width:34px;height:34px;border-radius:9px;flex:none;background:linear-gradient(135deg,#4f8ff7,#2f68c5);color:#fff;font-weight:700;font-size:17px;display:flex;align-items:center;justify-content:center;box-shadow:0 3px 9px #3b82f659}.app-aside .brand b{color:#f1f5f9;font-size:14.5px;display:block;line-height:1.35}.app-aside .brand span{font-size:10.5px;color:#7d8ea6}.app-menu{flex:1;border-right:none!important;background:transparent!important;padding:8px 10px 12px;overflow-y:auto}.app-menu::-webkit-scrollbar{width:6px}.app-menu::-webkit-scrollbar-thumb{background:#ffffff1f;border-radius:3px}.app-menu::-webkit-scrollbar-thumb:hover{background:#ffffff38}.app-menu>.el-menu-item{height:auto;line-height:1.4;padding:10px 12px!important;margin-bottom:2px;border-radius:8px;font-size:13.5px;color:#b6c3d6!important;background:transparent!important}.app-menu>.el-menu-item:hover{background:#ffffff0f!important;color:#fff!important}.app-menu>.el-menu-item.is-active{background:var(--pmp-primary)!important;color:#fff!important;font-weight:600;box-shadow:0 3px 9px #3b82f64d}.app-menu .el-menu-item .ico{width:18px;margin-right:10px;text-align:center;font-size:14px;flex:none;opacity:.9}.app-menu .el-sub-menu{margin-top:6px}.app-menu .el-sub-menu .el-sub-menu__title{height:auto;min-height:0;line-height:1.4;padding:8px 10px!important;border-radius:8px;font-size:11.5px;font-weight:600;letter-spacing:1.5px;color:#7d8ea6!important;background:transparent!important}.grp-dot{width:5px;height:5px;border-radius:50%;background:#5b6b82;margin-right:9px;flex:none}.app-menu .el-sub-menu__title:hover{background:#ffffff0d!important}.app-menu .el-sub-menu__title:hover .grp-dot{background:#8fa0b8}.app-menu .el-sub-menu.is-active>.el-sub-menu__title,.app-menu .el-sub-menu.is-opened>.el-sub-menu__title{color:#cbd5e1!important}.app-menu .el-sub-menu.is-active>.el-sub-menu__title .grp-dot,.app-menu .el-sub-menu.is-opened>.el-sub-menu__title .grp-dot{background:var(--pmp-primary)}.app-menu .el-sub-menu__icon-arrow{color:#5b6b82;font-size:10px;margin-top:0}.app-menu .el-sub-menu .el-menu{background:transparent!important;padding:2px 0 6px!important}.app-menu .el-sub-menu .el-menu .el-menu-item{height:auto;line-height:1.4;padding:8px 12px 8px 28px!important;margin-bottom:1px;border-radius:8px;font-size:13px;color:#93a2b8!important;background:transparent!important}.app-menu .el-sub-menu .el-menu .el-menu-item:hover{background:#ffffff0f!important;color:#fff!important}.app-menu .el-sub-menu .el-menu .el-menu-item.is-active{background:var(--pmp-primary)!important;color:#fff!important;font-weight:600}.app-menu .el-sub-menu .el-menu .el-menu-item .ico{font-size:13px;opacity:.85}.side-foot{padding:11px 18px;border-top:1px solid rgba(255,255,255,.07);font-size:11px;color:#5f7089;letter-spacing:.5px}.inv-thumb{width:38px;height:38px;border-radius:6px;object-fit:cover;border:1px solid var(--pmp-line);display:block;margin:0 auto;background:#fff}.inv-noimg{font-size:11px;color:#b0bac5}.inv-up-label{font-size:12px;color:var(--pmp-muted);margin-bottom:8px}.inv-upload-img{width:108px;height:108px;object-fit:cover;display:block;border-radius:10px;border:1px solid var(--pmp-line)}.inv-upload-trigger{width:108px;height:108px;border:1.5px dashed #cbd5e1;border-radius:10px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;color:#94a3b8;font-size:12px;transition:.15s;background:#fafbfd}.inv-upload-trigger b{font-size:22px;font-weight:400;line-height:1}.inv-upload-trigger:hover{border-color:var(--pmp-primary);color:var(--pmp-primary);background:#f5f9ff}.inv-opt-img{width:26px;height:26px;border-radius:5px;object-fit:cover;flex:none;border:1px solid var(--pmp-line);background:#fff}.inv-opt-noimg{width:26px;height:26px;line-height:24px;text-align:center;flex:none;border:1px solid var(--pmp-line);border-radius:5px;background:#fafbfd}.inv-sku-opt{display:flex;align-items:center;gap:8px;width:100%;min-width:0}.inv-sku-opt-txt{display:flex;flex-direction:column;min-width:0;line-height:1.3}.inv-sku-opt-txt b{font-size:12px;font-weight:600;color:#2c3440;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.inv-sku-opt-txt i{font-size:11px;font-style:normal;color:#94a0af;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.inv-sku-cell{display:flex;flex-direction:column;line-height:1.35;min-width:0}.inv-sku-cell b{font-size:12px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.inv-sku-cell i{font-size:11px;font-style:normal;color:#94a0af}.inv-thumbs{display:flex;align-items:center;gap:4px}.inv-thumbs-more{font-size:11px;color:#94a0af;padding-left:2px}.inv-doc-row{display:flex;flex-wrap:wrap;gap:0 12px}.inv-doc-head .el-form-item{margin-bottom:10px}.inv-doc-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:4px 0 10px;padding:8px 10px;background:#f7f9fc;border:1px solid var(--pmp-line);border-radius:8px}.inv-batch-pop{display:flex;align-items:center;flex-wrap:wrap}.inv-doc-hint{font-size:12px;color:#94a0af}.inv-doc-sum{margin-left:auto;font-size:12px;color:#606773}.inv-doc-sum b{color:#2c3440;font-weight:700}.layout-header{display:flex;align-items:center;justify-content:space-between;background:#fff;border-bottom:1px solid var(--pmp-line);padding:0 24px}.lh-left{display:flex;align-items:baseline;gap:10px}.lh-left h1{font-size:16px;margin:0;font-weight:600}.lh-left .crumb{color:var(--pmp-muted);font-size:12px}.lh-right{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--pmp-muted)}.avatar{width:30px;height:30px;border-radius:50%;background:var(--pmp-primary);color:#fff;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:600;flex:none}.app-main{padding:22px 24px 40px;background:var(--pmp-bg);overflow-y:auto}.page{padding:0}.muted{color:var(--pmp-muted)}@media(max-width:960px){.app-aside{width:60px!important}.brand-txt,.side-foot,.grp-dot,.app-menu .el-menu-item .lb{display:none}.app-menu>.el-menu-item{justify-content:center;padding:11px 0!important}.app-menu .el-menu-item .ico{margin-right:0}.app-menu .el-sub-menu .el-menu .el-menu-item{justify-content:center;padding:8px 0!important}.app-menu .el-sub-menu .el-sub-menu__title{justify-content:center;padding:10px 0!important}.app-aside .brand{justify-content:center;padding:16px 8px!important}}
