/* ==========================================================================
   亚马逊自动化工作台 · 共享设计系统 DS-1.1（V0.34.0）
   说明见项目根目录 DESIGN.md。本文件最后加载，统一全站视觉与动效。
   规则：新样式只用这里的变量；页面私有样式不得再写死颜色、阴影、圆角和动画时长。
   ========================================================================== */

/* ---------- 1. 设计变量：浅色（默认） ---------- */
:root{
  color-scheme:light;
  /* 字体与字号 */
  --font:"Inter",system-ui,-apple-system,"PingFang SC","Microsoft YaHei",sans-serif;
  --font-mono:"SF Mono",ui-monospace,Menlo,Consolas,monospace;
  --fs-xs:12px; --fs-sm:14px; --fs-md:16px; --fs-lg:18px; --fs-xl:22px; --fs-2xl:36px;
  --lh-tight:1.2; --lh:1.7; --lh-loose:1.75;
  --fw-medium:500; --fw-semibold:600; --fw-bold:700;
  /* 间距节奏 4/8/12/16/24/32 */
  --s-1:4px; --s-2:8px; --s-3:12px; --s-4:16px; --s-5:24px; --s-6:32px;
  /* 圆角：标签 / 控件 / 小卡片 / 卡片 / 弹窗 */
  --r-xs:4px; --r-sm:4px; --r-md:6px; --r-lg:6px; --r-xl:8px; --r-pill:999px;
  /* 控件尺寸 */
  --control-h:44px; --control-h-sm:40px; --sidebar-w:244px; --topbar-h:60px;
  /* 颜色（语义） */
  --bg:#ffffff;             /* 页面背景：浅灰 */
  --surface:#fafafa;        /* 内容层：卡片、表格、编辑区（稳定不透明） */
  --surface-2:#f5f5f5;      /* 次级面板 */
  --surface-3:#f0f0f0;      /* 表头、只读、禁用 */
  --surface-hover:#f5f5f5;
  --surface-selected:#f0f0f0;
  --glass:#ffffff;      /* 玻璃：导航、顶栏、浮动栏、弹窗控制 */
  --glass-strong:#fafafa;
  --glass-blur:none;
  --border:#e5e5e5;
  --border-strong:#d4d4d4;
  --divider:#f0f0f0;
  --text:#171717;           /* 正文 ≥ 15:1 */
  --text-2:#525252;         /* 次要文字 ≥ 10:1 */
  --text-3:#636363;         /* 说明文字 4.8:1（白底） */
  --text-placeholder:#737373;
  --accent:#171717;         /* 强调色：只用于选中与主要操作 */
  --accent-hover:#262626;
  --accent-press:#0a0a0a;
  --accent-text:#171717;    /* 链接/选中文字 6:1 */
  --accent-soft:#e5e5e5;
  --accent-ring:rgba(23,23,23,.3);
  --on-accent:#ffffff;
  --danger:#b91c1c; --danger-soft:#fef2f2;
  --success:#15803d; --success-soft:#f0fdf4;
  --warning:#b45309; --warning-soft:#fffbeb;
  --purple:#7d3fc1; --purple-soft:rgba(175,82,222,.12);
  --pink:#b0306a; --pink-soft:rgba(255,45,85,.10);
  /* 阴影：柔和双层，表达浮层深度 */
  --shadow-1:none;
  --shadow-2:0 1px 2px rgba(0,0,0,.05);
  --shadow-3:0 1px 3px rgba(0,0,0,.07),0 1px 2px rgba(0,0,0,.04);
  --shadow-lift:0 1px 3px rgba(0,0,0,.07),0 1px 2px rgba(0,0,0,.04);
  --scrim:rgba(20,22,28,.32);
  /* 动效参数（全站共用） */
  --dur-press:100ms;   /* 按下 */
  --dur-hover:150ms;  /* 悬浮 */
  --dur-1:200ms;      /* 标签、折叠、通知 */
  --dur-2:250ms;      /* 页面转场、弹窗 */
  --dur-3:250ms;      /* 抽屉 */
  --ease-out:cubic-bezier(0,0,.2,1);
  --ease-in-out:cubic-bezier(.4,0,.2,1);
  --ease-spring:cubic-bezier(.34,1.56,.64,1);   /* 轻微阻尼弹性 */
  --press-scale:.97;
  --page-shift:8px;
}

/* ---------- 2. 深色：同一套语义变量，不是简单反色 ---------- */
:root[data-theme="dark"]{
  color-scheme:dark;
  --bg:#171717; --surface:#262626; --surface-2:#303030; --surface-3:#404040; --surface-hover:#353535; --surface-selected:#404040;
  --glass:#171717; --glass-strong:#262626;
  --border:#525252; --border-strong:#737373; --divider:#404040;
  --text:#fafafa; --text-2:#e5e5e5; --text-3:#bdbdbd; --text-placeholder:#a3a3a3;
  --accent:#737373; --accent-hover:#6b6b6b; --accent-press:#525252; --accent-text:#fafafa; --accent-soft:#404040; --accent-ring:rgba(250,250,250,.4);
  --danger:#fca5a5; --danger-soft:#450a0a; --success:#86efac; --success-soft:#052e16; --warning:#fcd34d; --warning-soft:#451a03;
  --purple:#d0a3ff; --purple-soft:rgba(191,90,242,.2); --pink:#ff8fb1; --pink-soft:rgba(255,55,95,.18);
  --shadow-1:none; --shadow-2:0 1px 2px rgba(0,0,0,.4); --shadow-3:0 1px 3px rgba(0,0,0,.4),0 4px 12px rgba(0,0,0,.5); --shadow-lift:0 1px 3px rgba(0,0,0,.4),0 4px 12px rgba(0,0,0,.5);
  --scrim:rgba(0,0,0,.5);
}

/* ---------- 3. 减少动态效果：保留必要状态反馈，取消位移、弹性和循环 ---------- */
@media (prefers-reduced-motion:reduce){
  :root{--dur-press:1ms;--dur-hover:1ms;--dur-1:1ms;--dur-2:1ms;--dur-3:1ms;--press-scale:1;--page-shift:0px;--ease-spring:linear}
}
:root[data-motion="reduce"]{--dur-press:1ms;--dur-hover:1ms;--dur-1:1ms;--dur-2:1ms;--dur-3:1ms;--press-scale:1;--page-shift:0px;--ease-spring:linear}

/* ---------- 4. 基础 ---------- */
html{background:var(--bg);interpolate-size:allow-keywords}
html body{background:var(--bg);color:var(--text);font-family:var(--font);font-size:var(--fs-md);line-height:var(--lh);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
html #app{font-size:var(--fs-md);color:var(--text)}
html #app .layout,html #app .main,html #app .profit-shell .main{background:var(--bg);color:var(--text)}
html #app a{color:var(--accent-text)}
html :focus-visible{outline:2px solid var(--accent);outline-offset:2px}
::selection{background:var(--accent-soft)}
html #app .muted,html #app .small.muted,html #app .mini,html #app .field small,html #app .form-help,dialog .muted,dialog .form-help{color:var(--text-3)}
html #app .small,dialog .small{font-size:var(--fs-sm)}
html #app h3,dialog h3{font-size:var(--fs-md);font-weight:var(--fw-semibold);color:var(--text)}

/* ---------- 5. 外框：玻璃导航与顶栏，页面框架稳定 ---------- */
html #app .layout{grid-template-columns:var(--sidebar-w) minmax(0,1fr)}
html #app .sidebar{width:var(--sidebar-w);background:var(--glass);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border-right:1px solid var(--border);color:var(--text-2);box-shadow:none;padding:18px 12px}
html #app .brand{padding:6px 10px 18px;gap:10px;display:flex;align-items:center}
html #app .brand strong{font-size:var(--fs-md);font-weight:var(--fw-bold);color:var(--text);letter-spacing:-.1px}
html #app .brand small{font-size:10px;letter-spacing:1.6px;color:var(--text-3)}
html #app .brandmark{width:30px;height:30px;border-radius:8px;flex:none}
html #app .navscroll{position:relative;padding:4px 2px}
html #app .navgroup{color:var(--text-3);font-size:var(--fs-xs);font-weight:var(--fw-medium);letter-spacing:.3px;margin:18px 10px 6px}
html #app .navitem{position:relative;z-index:1;display:flex;align-items:center;gap:10px;width:100%;min-height:36px;margin:2px 0;padding:8px 12px;border:0;border-radius:var(--r-sm);background:transparent;color:var(--text-2);font-size:var(--fs-md);font-weight:var(--fw-medium);text-align:left;box-shadow:none;transition:color var(--dur-hover) var(--ease-out),background-color var(--dur-hover) var(--ease-out)}
html #app .navitem svg{width:18px;height:18px;flex:none;opacity:.85}
html #app .navitem:hover{background:var(--surface-hover);color:var(--text)}
html #app .navitem.active{background:transparent;color:var(--accent-text);font-weight:var(--fw-semibold)}
html #app .navitem.active svg{opacity:1}
html #app .navscroll:not(.has-indicator) .navitem.active{background:var(--accent-soft)}
html #app .nav-indicator{position:absolute;left:2px;right:2px;top:0;height:36px;border-radius:var(--r-sm);background:var(--accent-soft);z-index:0;pointer-events:none;transform:translateY(var(--nav-y,0));transition:transform var(--dur-2) var(--ease-spring),height var(--dur-2) var(--ease-out),opacity var(--dur-1)}
html #app .nav-indicator.no-anim{transition:none}
html #app .navbadge{margin-left:auto;font-size:11px;font-weight:var(--fw-semibold);color:var(--accent-text);background:var(--accent-soft);border-radius:var(--r-pill);padding:1px 7px}
html #app .sidebarfoot{border-top:1px solid var(--divider);color:var(--text-2);font-size:var(--fs-sm)}
html #app .sidebarfoot .avatar{background:var(--accent);color:var(--on-accent)}
html #app .topbar{position:sticky;top:0;z-index:8;min-height:var(--topbar-h);height:auto;padding:10px 28px;background:var(--glass);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border-bottom:1px solid var(--border)}
html #app .crumb{font-size:var(--fs-sm);color:var(--text-3)}
html #app .crumb b{font-weight:var(--fw-semibold);color:var(--text)}
html #app .topright{display:flex;align-items:center;gap:10px}
html #app .global-search{width:240px}
html #app .localpill{font-size:var(--fs-xs);color:var(--success);background:var(--success-soft);border-radius:var(--r-pill);padding:4px 10px;white-space:nowrap}
html #app .content{padding:24px 28px 40px;max-width:1760px;margin:0 auto}
html #app .pagehead{margin-bottom:var(--s-5);align-items:center;gap:var(--s-4)}
html #app .pagehead h1{font-size:var(--fs-2xl);font-weight:var(--fw-bold);letter-spacing:-.4px;color:var(--text);line-height:var(--lh-tight)}
html #app .pagehead p{color:var(--text-3);font-size:var(--fs-sm);line-height:var(--lh);margin-top:6px}
html #app .footer-note{color:var(--text-3);font-size:var(--fs-xs)}

/* 主题切换（顶栏分段控件） */
.theme-switch{display:inline-flex;align-items:center;padding:2px;border-radius:var(--r-pill);background:var(--surface-3);border:1px solid var(--border);gap:2px}
html #app .theme-switch button{min-height:26px;height:26px;width:30px;padding:0;border:0;border-radius:var(--r-pill);background:transparent;color:var(--text-3);font-size:13px;line-height:1;display:inline-grid;place-items:center}
html #app .theme-switch button[aria-pressed="true"]{background:var(--surface);color:var(--text);box-shadow:var(--shadow-1)}
html #app .theme-switch button:hover{color:var(--text)}

/* ---------- 6. 卡片与内容层 ---------- */
html #app .card,html #app .cat-card,html #app .selection-card,html #app .studio-card,html #app .planning-card,html #app .team-card,html #app .stat,html #app .hero{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-1);color:var(--text)}
html #app .cardhead,html #app .cat-cardhead,html #app .studio-cardhead,html #app .planning-cardhead,html #app .team-cardhead{padding:var(--s-4) 20px;border-bottom:1px solid var(--divider);border-radius:var(--r-lg) var(--r-lg) 0 0}
html #app .cardbody,html #app .cat-cardbody,html #app .studio-cardbody,html #app .planning-cardbody,html #app .team-cardbody{padding:20px}
html #app .card h2,html #app .cat-card h2,html #app .studio-card h2,html #app .team-card h2,html #app .planning-card h2{font-size:var(--fs-lg);font-weight:var(--fw-semibold);color:var(--text);letter-spacing:-.1px}
html #app h2>small,html #app h2 small{color:var(--text-3);font-size:var(--fs-xs);font-weight:var(--fw-medium)}
html #app .stat label{color:var(--text-3);font-size:var(--fs-sm)}
html #app .stat strong{color:var(--text)}
html #app .stat small{color:var(--text-3);font-size:var(--fs-xs)}
html #app .hero h2{color:var(--text);font-size:var(--fs-xl)}
html #app .hero .eyebrow{color:var(--text-3)}
html #app .hero p{color:var(--text-3)}
html #app .note{border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface-2);color:var(--text-2);font-size:var(--fs-sm);line-height:var(--lh-loose);padding:12px 16px}
html #app .note.warning{background:var(--warning-soft);color:var(--warning);border-color:transparent}
html #app .errorbox,html #app .selection-errors,dialog .errorbox{background:var(--danger-soft);color:var(--danger);border:1px solid transparent;border-radius:var(--r-md)}
html #app .empty h3{color:var(--text)}
html #app .empty p{color:var(--text-3)}

/* ---------- 7. 按钮：悬浮、按下 0.98、焦点环、禁用 ---------- */
html #app button,html #app .button-link,dialog button,dialog .button-link{font-family:inherit;font-size:var(--fs-sm);font-weight:var(--fw-medium);line-height:1.3;min-height:var(--control-h-sm);padding:7px 14px;border:1px solid var(--border-strong);border-radius:var(--r-sm);background:var(--surface);color:var(--text);box-shadow:none;cursor:pointer;transition:background-color var(--dur-hover) var(--ease-out),border-color var(--dur-hover) var(--ease-out),color var(--dur-hover) var(--ease-out),box-shadow var(--dur-hover) var(--ease-out),transform var(--dur-press) var(--ease-out),opacity var(--dur-hover)}
html #app button:not(:disabled):hover,html #app .button-link:hover,dialog button:not(:disabled):hover{background:var(--surface-hover);border-color:var(--border-strong)}
html #app button:not(:disabled):active,html #app .button-link:active,dialog button:not(:disabled):active{transform:scale(var(--press-scale))}
html #app button:focus-visible,dialog button:focus-visible,html #app .button-link:focus-visible{outline:none;box-shadow:0 0 0 3px var(--accent-ring)}
html #app button.primary,html #app .button-link.primary,dialog button.primary{background:var(--accent);border-color:var(--accent);color:var(--on-accent);font-weight:var(--fw-semibold)}
html #app button.primary:not(:disabled):hover,dialog button.primary:not(:disabled):hover{background:var(--accent-hover);border-color:var(--accent-hover)}
html #app button.primary:not(:disabled):active,dialog button.primary:not(:disabled):active{background:var(--accent-press)}
html #app button.outline,dialog button.outline{background:var(--surface);color:var(--text)}
html #app button.ghost,dialog button.ghost{background:transparent;border-color:transparent;color:var(--text-2)}
html #app .linkbtn,html #app button.linkbtn,dialog .linkbtn,dialog button.linkbtn{background:transparent;border-color:transparent;color:var(--accent-text);min-height:28px;padding:4px 8px;font-weight:var(--fw-medium)}
html #app button.linkbtn:not(:disabled):hover,dialog button.linkbtn:not(:disabled):hover{background:var(--accent-soft);border-color:transparent}
html #app .linkbtn.danger,html #app button.danger,dialog button.danger,dialog .linkbtn.danger{background:var(--danger-soft);color:var(--danger);border-color:transparent}
html #app button:disabled,dialog button:disabled,html #app button[aria-disabled="true"]{cursor:not-allowed;opacity:.45;transform:none}
html #app .actions,html #app .row-actions,dialog .row-actions{gap:var(--s-2)}

/* ---------- 8. 输入控件：统一高度、圆角与柔和焦点环 ---------- */
html #app input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=hidden]):not([type=range]),html #app select,html #app textarea,dialog input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=hidden]):not([type=range]),dialog select,dialog textarea{font-family:inherit;font-size:var(--fs-sm);color:var(--text);background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--r-sm);padding:7px 11px;box-shadow:none;transition:border-color var(--dur-hover) var(--ease-out),box-shadow var(--dur-hover) var(--ease-out),background-color var(--dur-hover)}
html #app input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=hidden]):not([type=range]),html #app select,dialog input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=hidden]):not([type=range]),dialog select{height:var(--control-h);min-height:var(--control-h)}
html #app input:focus,html #app select:focus,html #app textarea:focus,dialog input:focus,dialog select:focus,dialog textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-ring)}
html #app input:disabled,html #app select:disabled,html #app textarea:disabled,html #app input[readonly],html #app textarea[readonly],dialog input:disabled,dialog textarea[readonly]{background:var(--surface-3);color:var(--text-3)}
html #app input::placeholder,html #app textarea::placeholder,dialog input::placeholder,dialog textarea::placeholder{color:var(--text-placeholder)}
html #app input[type=checkbox],html #app input[type=radio],dialog input[type=checkbox],dialog input[type=radio]{accent-color:var(--accent)}
html #app .field label,html #app label.studio-control>span,dialog .field>label,dialog label.field,html #app label.field{font-size:var(--fs-sm);color:var(--text-2)}
html #app .r-check,dialog .r-check{font-size:var(--fs-sm);color:var(--text)}

/* ---------- 9. 表格：13px、稳定背景、表头吸顶 ---------- */
html #app table{font-size:var(--fs-sm);background:var(--surface);color:var(--text)}
html #app table th{background:var(--surface-3);color:var(--text-3);font-size:var(--fs-xs);font-weight:var(--fw-semibold);border-bottom:1px solid var(--border)}
html #app table td{color:var(--text);border-bottom:1px solid var(--divider)}
html #app table td strong{color:var(--text);font-weight:var(--fw-semibold)}
html #app table .sku,html #app .sku{font-size:var(--fs-xs);color:var(--text-3)}
html #app tbody tr td{transition:background-color var(--dur-hover) var(--ease-out)}
html #app tbody tr:hover td{background:var(--surface-hover)}
html #app tbody tr.selected td{background:var(--surface-selected)}
html #app .table-wrap,html #app .tablewrap{border-radius:var(--r-md);background:var(--surface)}
html #app .table-wrap thead th,html #app .tablewrap thead th{position:sticky;top:0;z-index:2}

/* ---------- 10. 标签与状态 ---------- */
html #app .badge,dialog .badge{font-size:var(--fs-xs);font-weight:var(--fw-medium);border-radius:var(--r-xs);padding:3px 8px;background:var(--surface-3);color:var(--text-2);border:0}
html #app .badge.green,dialog .badge.green{background:var(--success-soft);color:var(--success)}
html #app .badge.orange,dialog .badge.orange{background:var(--warning-soft);color:var(--warning)}
html #app .badge.purple,dialog .badge.purple{background:var(--purple-soft);color:var(--purple)}
html #app .badge.blue,dialog .badge.blue{background:var(--accent-soft);color:var(--accent-text)}
html #app .badge.pink,dialog .badge.pink{background:var(--pink-soft);color:var(--pink)}
html #app .badge.red,html #app .badge.danger,dialog .badge.red{background:var(--danger-soft);color:var(--danger)}
html #app .badge.gray{background:var(--surface-3);color:var(--text-3)}

/* ---------- 11. 标签页：选中背景平滑过渡 ---------- */
html #app .tabs{border-bottom:1px solid var(--border);gap:4px}
html #app button.tab,html #app .tabs button{color:var(--text-2);border:0;border-radius:var(--r-sm) var(--r-sm) 0 0;background:transparent;font-size:var(--fs-sm);box-shadow:inset 0 -2px 0 transparent;transition:color var(--dur-1) var(--ease-out),background-color var(--dur-1) var(--ease-out),box-shadow var(--dur-1) var(--ease-out)}
html #app button.tab.active,html #app .tabs button.active{color:var(--accent-text);background:var(--accent-soft);box-shadow:inset 0 -2px 0 var(--accent);border-bottom:0}

/* ---------- 12. 页面转场（只在切换页面时播放；数据刷新不播放） ---------- */
@keyframes ds-page-in{from{opacity:0;transform:translateY(var(--page-shift))}to{opacity:1;transform:none}}
html #app .content.page-enter{animation:ds-page-in var(--dur-2) var(--ease-out) both}

/* ---------- 13. 弹窗：0.97 放大淡入，遮罩同步；关闭由 motion.mjs 做淡出 ---------- */
@keyframes ds-dialog-in{from{opacity:0;transform:scale(.97) translateY(6px)}to{opacity:1;transform:none}}
@keyframes ds-fade-in{from{opacity:0}to{opacity:1}}
@keyframes ds-fade-out{from{opacity:1}to{opacity:0}}
@keyframes ds-dialog-out{from{opacity:1;transform:none}to{opacity:0;transform:scale(.97) translateY(4px)}}
html dialog{background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:var(--r-xl);box-shadow:var(--shadow-3)}
html dialog[open]{animation:ds-dialog-in var(--dur-2) var(--ease-spring) both}
html dialog::backdrop{background:var(--scrim);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}
html dialog[open]::backdrop{animation:ds-fade-in var(--dur-2) var(--ease-out) both}
html dialog .modalhead{padding:18px 24px;border-bottom:1px solid var(--divider);background:var(--surface)}
html dialog .modalhead h2{font-size:var(--fs-lg);font-weight:var(--fw-semibold);color:var(--text)}
html dialog .modalbody{padding:20px 24px;color:var(--text);line-height:var(--lh-loose)}
html dialog .modalfoot{position:sticky;bottom:0;padding:14px 24px;border-top:1px solid var(--divider);background:var(--glass-strong);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border-radius:0 0 var(--r-xl) var(--r-xl)}
.ds-exit-ghost{position:fixed;z-index:2147483000;pointer-events:none;margin:0;animation:ds-dialog-out 160ms var(--ease-in-out) both}
.ds-exit-scrim{position:fixed;inset:0;z-index:2147482999;pointer-events:none;background:var(--scrim);animation:ds-fade-out 160ms var(--ease-in-out) both}

/* ---------- 14. 抽屉：侧边连续滑入，轻微阻尼 ---------- */
html #app .cat-all-layout{transition:grid-template-columns var(--dur-3) var(--ease-out),gap var(--dur-3) var(--ease-out)}
html #app .cat-preview-drawer,html #app .season-all-layout .cat-preview-drawer{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-2);transition:opacity var(--dur-3) var(--ease-out),transform var(--dur-3) var(--ease-spring),visibility var(--dur-3)}
html .plan-drawer{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-3)}
html .plan-drawer-head,html .plan-drawer-foot{background:var(--glass-strong);border-color:var(--divider)}

/* ---------- 15. 通知 ---------- */
html #toast{background:var(--glass-strong);color:var(--text);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--border);box-shadow:var(--shadow-2);border-radius:var(--r-md);font-size:var(--fs-sm);padding:12px 18px;transition:opacity var(--dur-1) var(--ease-out),transform var(--dur-1) var(--ease-out)}

/* ---------- 16. 展开与折叠（Chrome 支持时平滑；不支持时直接展开） ---------- */
html details::details-content{block-size:0;overflow-y:clip;transition:block-size var(--dur-1) var(--ease-out),content-visibility var(--dur-1) allow-discrete}
html details[open]::details-content{block-size:auto}
html #app summary{cursor:pointer}

/* ---------- 17. 上传区与拖拽：目标高亮、拖起抬升、相邻项让位 ---------- */
html #app .cat-drop,html #app .biz-drop,html #app .selection-drop,html #app .selection-dropzone,html #app .candidate-photo-field,html #app .xiyou-dropzone,.avatar-drop{background:var(--surface-2);border:1.5px dashed var(--border-strong);border-radius:var(--r-md);color:var(--text-3);transition:background-color var(--dur-hover) var(--ease-out),border-color var(--dur-hover) var(--ease-out),box-shadow var(--dur-hover) var(--ease-out)}
html #app .cat-drop.dragover,html #app .biz-drop.dragover,html #app .biz-dest-box.dragover,html #app .selection-drop.drag-over,html #app .selection-dropzone.dragover,html #app .candidate-photo-field.drag-over,.avatar-drop.dragover,html #app [data-xiyou-box].drag-over{background:var(--accent-soft);border-color:var(--accent);color:var(--accent-text);box-shadow:0 0 0 4px var(--accent-soft)}
html #app .cat-drop u,html #app .biz-drop u,.avatar-hint u{color:var(--accent-text)}
html #app .cat-media-grid figure{transition:box-shadow var(--dur-1) var(--ease-out),opacity var(--dur-1)}
html #app .cat-media-grid figure.dragging,.col-order-list li.dragging{opacity:.55;box-shadow:var(--shadow-lift)}
html #app .cat-media-grid figure.drop-before{box-shadow:-3px 0 0 0 var(--accent)}
html #app .cat-media-grid figure.drop-after{box-shadow:3px 0 0 0 var(--accent)}
html #app .cat-media-section.media-drop-target{outline:2px dashed var(--accent);outline-offset:4px;border-radius:var(--r-md)}
.col-order-list li{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-sm);color:var(--text)}
.col-order-list .col-grip{color:var(--text-3)}
.col-move button{background:var(--surface-3)!important;border:1px solid var(--border)!important;color:var(--text-2)!important}

/* ---------- 18. 图片预览（灯箱）：控制栏玻璃、切换淡入 ---------- */
.cat-lightbox{background:transparent;border:0;box-shadow:none}
@keyframes ds-img-in{from{opacity:.0;transform:scale(.985)}to{opacity:1;transform:none}}
.cat-lightbox .lb-img{animation:ds-img-in var(--dur-1) var(--ease-out) both}
/* 预览始终是沉浸式深色背景，控制栏为深色玻璃（浅色/深色主题下一致） */
.cat-lightbox .lb-top{margin:12px 16px 0;border-radius:var(--r-md);background:rgba(28,28,30,.62);color:#fff;backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur)}
.cat-lightbox .lb-hint{justify-self:center;width:max-content;padding:6px 14px;border-radius:var(--r-pill);background:rgba(28,28,30,.62);color:rgba(255,255,255,.85);opacity:1;backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur)}
.cat-lightbox .lb-btn,.cat-lightbox .lb-nav{background:rgba(255,255,255,.14);color:#fff;border:1px solid rgba(255,255,255,.22);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);transition:background-color var(--dur-hover),transform var(--dur-press)}
.cat-lightbox .lb-btn:hover,.cat-lightbox .lb-nav:not(:disabled):hover{background:rgba(255,255,255,.24)}
.cat-lightbox .lb-nav:not(:disabled):active,.cat-lightbox .lb-btn:active{transform:scale(var(--press-scale))}

/* ---------- 19. 吸附操作栏（图片 / 视频 / Listing 主操作） ---------- */
.ds-actionbar{position:sticky;bottom:12px;z-index:5;display:flex;flex-wrap:wrap;align-items:center;gap:var(--s-2);margin-top:var(--s-4);padding:12px 14px;border:1px solid var(--border);border-radius:var(--r-md);background:var(--glass-strong);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);box-shadow:var(--shadow-2)}
.ds-actionbar .ds-missing{flex-basis:100%;margin:0;font-size:var(--fs-xs);color:var(--warning)}
.ds-actionbar .ds-missing:empty{display:none}

/* ---------- 20. 选品登记库：固定名称列、操作列与表头 ---------- */
html #app .cat-registration-table .table-wrap{max-height:min(68vh,720px);overflow:auto;overscroll-behavior:contain}
html #app .cat-registration-table table{border-collapse:separate;border-spacing:0}
html #app .cat-registration-table thead th{position:sticky;top:0;z-index:3;background:var(--surface-3)}
html #app .cat-registration-table th:first-child,html #app .cat-registration-table td:first-child{position:sticky;left:0;z-index:2;background:var(--surface);box-shadow:1px 0 0 var(--divider)}
html #app .cat-registration-table thead th:first-child{z-index:4;background:var(--surface-3)}
html #app .cat-registration-table th:last-child,html #app .cat-registration-table td:last-child{position:sticky;right:0;z-index:2;background:var(--surface);box-shadow:-1px 0 0 var(--divider)}
html #app .cat-registration-table thead th:last-child{z-index:4;background:var(--surface-3)}
html #app .cat-registration-table tbody tr:hover td{background:var(--surface-hover)}
html #app .cat-registration-table tbody tr.selected td{background:var(--surface-selected)}
.row-more{position:relative;display:inline-block}
.row-more>summary{list-style:none;display:inline-flex;align-items:center;min-height:28px;padding:4px 8px;border-radius:var(--r-sm);color:var(--accent-text);font-size:var(--fs-sm);font-weight:var(--fw-medium)}
.row-more>summary::-webkit-details-marker{display:none}
.row-more>summary:hover{background:var(--accent-soft)}
.row-more[open]>summary{background:var(--accent-soft)}
.row-more>.row-more-menu{position:absolute;right:0;top:calc(100% + 4px);z-index:20;min-width:140px;display:grid;gap:2px;padding:6px;border:1px solid var(--border);border-radius:var(--r-md);background:var(--glass-strong);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);box-shadow:var(--shadow-3)}
.row-more>.row-more-menu>*{justify-content:flex-start;text-align:left;width:100%}
html details.row-more::details-content{block-size:auto;overflow:visible;transition:none}

/* ---------- 21. 窄屏：无遮挡、表格可横向滚动 ---------- */
@media (max-width:1100px){html #app .global-search{width:180px}}
@media (max-width:760px){
  html #app .layout{grid-template-columns:1fr}
  html #app .content{padding:16px}
  html #app .topbar{padding:8px 12px;flex-wrap:wrap;gap:8px}
  html #app .topright{flex-wrap:wrap;gap:6px}
  html #app .global-search{width:100%;order:9}
  html #app .pagehead{flex-direction:column;align-items:stretch}
  html #app .pagehead h1{font-size:22px}
  html #app .sidebar{background:var(--glass-strong);box-shadow:var(--shadow-3);transition:transform var(--dur-3) var(--ease-spring)}
  html #app table{min-width:640px}
  html #app .table-wrap,html #app .tablewrap{overflow-x:auto}
  .ds-actionbar{bottom:8px}
}

/* 补充 */
html #app .brand small{display:block}
.row-more-menu .record-actions{display:grid;gap:2px}
.row-more-menu button{width:100%;justify-content:flex-start;text-align:left}

/* ---------- 22. 可读性底线：正文 ≥ 13px、说明 ≥ 12px，说明文字对比度 ≥ 4.5:1 ----------
   页面私有样式里有不少 10–11px 的写死字号和浅灰色；这里统一抬到规范值（:not(#\#) 用来提高优先级，不改业务代码）。 */
html body #app td:not(#\#){font-size:var(--fs-sm)}
html body #app th:not(#\#){font-size:var(--fs-xs)}
html body #app :is(td,.cat-file,.actions,.row-actions,.cat-keyword-tags) a:not(#\#){font-size:var(--fs-sm)}
html body #app td strong:not(#\#),html body #app .namecell strong:not(#\#),html body #app .biz-material-name strong:not(#\#),html body #app .studio-source-row strong:not(#\#),html body #app .cat-pagination strong:not(#\#){font-size:var(--fs-sm)}
html body #app p:not(#\#),html body #app summary:not(#\#),html body #app dt:not(#\#),html body #app dd:not(#\#),html body #app label:not(#\#),dialog p:not(#\#),dialog label:not(#\#){font-size:var(--fs-sm)}
html body #app small:not(#\#),dialog small:not(#\#),html body #app .mini:not(#\#),html body #app .row-actions>label:not(#\#),html body #app .biz-counts>label:not(#\#),html body #app .biz-dest-head small:not(#\#),html body #app .eyebrow:not(#\#),html body #app .stepnum:not(#\#),html body #app .checkcircle:not(#\#),html body #app .studio-progress-label>span:not(#\#){font-size:var(--fs-xs)}
html body #app :is(.cat-file>span,.biz-image-flow>span,.biz-image-flow b,.selection-drop>span,.registration-plan-text,.team-mode-note,.team-org-note,.team-history-note,.unavailable,.unavailable>span,.service-card>p,.studio-empty,.studio-library-note>p,.r-library-status>p,.cat-bottom-note):not(#\#){font-size:var(--fs-sm)}
html body #app .navbadge:not(#\#){font-size:11px}
html body #app small:not(button *):not(.badge *):not(#\#),dialog small:not(button *):not(#\#),html body #app :is(dt,.mini,.profit-money>span,.profit-footnote,.fba-scope,.profit-sectionhead,.profit-sectionhead>label,.profit-sectionhead>span,.profit-notes>summary,.cat-keyword-count small,.cat-bottom-note,.team-org-note,.team-history-note,.team-empty,.unavailable,.unavailable>span,.service-card>p,.studio-empty,.selection-drop>span,.lx-ds-controls>label,.biz-image-flow li.off,.biz-image-flow li.off b,.usage-toolbar>label,.team-role-name small):not(#\#){color:var(--text-3)}
html body #app :is(label,summary,.studio-checks>span,.studio-bullet-row>label,.team-mode-note,.biz-image-flow li.on b):not(#\#){color:var(--text-2)}
html body #app .required:not(#\#){color:var(--danger)}
html body #app :is(.cat-thumb-none,.plan-no-photo):not(#\#){color:var(--text-3);background:var(--surface-3);font-size:11px}
html body #app button.outline.danger:not(#\#),html body #app button.danger:not(#\#){color:var(--danger);background:var(--danger-soft);border-color:transparent}
html body #app .checkcircle:not(#\#){color:var(--text-3);background:var(--surface-3)}
html body #app .checkcircle.done:not(#\#){color:var(--success);background:var(--success-soft)}
html body #app :is(.studio-material-grid>article>strong,.studio-flow>div>strong,.studio-checks>span,.cat-timeline>li>strong,.cat-timeline>li>span,.cat-pagination>span,.cat-media-grid figcaption>span,.cat-media-grid figcaption>a,.cat-competitor-link,li.off>b,li.on>b,.biz-dest-head>em):not(#\#){font-size:var(--fs-xs)}
html body #app :is(.studio-flow>div>strong,li.off,li.off>b):not(#\#){color:var(--text-3)}
html body #app li.on>b:not(#\#){color:var(--accent-text)}
html body #app .biz-dest-head>em:not(#\#){color:var(--accent-text);background:var(--accent-soft)}
html body #app button.outline-strong:not(#\#){background:var(--surface);color:var(--accent-text);border:1.5px solid var(--accent)}
html body #app button.ghost small:not(#\#){color:inherit}

/* ---------- 23. 页面组件统一用语义变量（浅色、深色都生效） ---------- */
:root[data-theme="dark"]{--accent:#737373;--accent-hover:#6b6b6b;--accent-press:#525252}
html body #app :is(.linkbtn,button.linkbtn):not(.danger):not(#\#){color:var(--accent-text)}
html body #app th:not(#\#),html body #app thead:not(#\#),html body #app .catalogue-shell .table-wrap thead:not(#\#){background:var(--surface-3);color:var(--text-3)}
html body #app td:not(#\#){color:var(--text)}
/* 次级面板（筛选区、状态说明、提示块） */
html body #app :is(.cat-filters,.registration-extra-filters,.r-library-status,.r-selection-history,.biz-settings-line,.biz-participation,.biz-counts>p,.studio-checks,.studio-empty,.unavailable,.team-mode-note,.team-org-note,.team-history-note,.cat-bottom-note,.cat-timeline,.plan-stats>div,.fba-mode,.profit-notes .field,.profit-adbox,.bp-form,.studio-library-note,.selection-excel,.deep-result-output,.biz-image-sources,.deep-input-bundle,.own-card,.fx-line,.cat-file,.cat-refresh-row,.cat-attributes,.task-preview-resizable,.cat-profit>div,.biz-analysis-reference):not(#\#){background:var(--surface-2);border-color:var(--border);color:var(--text-2)}
/* 内容卡片（素材、服务、角色） */
html body #app :is(.biz-material-card,.studio-material-grid>article,.service-card,.biz-dest-box,.cat-product-item,.team-role-rows>article,.team-tree-root,.step,.cat-media-grid figure,.biz-image-result,.biz-task-ref,.plan-product-cards>article):not(#\#){background:var(--surface);border-color:var(--border);color:var(--text)}
html body #app :is(.cat-product-item.active,.team-role-rows>article.selected,.team-tree-root.selected,.biz-dest-box.active):not(#\#){background:var(--surface-selected);border-color:var(--accent)}
html body #app :is(.studio-material-image,.biz-material-preview,.profit-money>span,.thumbblank,.empty-icon,.cat-media-open):not(#\#){background:var(--surface-3);color:var(--text-3)}
html body #app :is(.profit-money):not(#\#){background:var(--surface);border-color:var(--border-strong)}
html body #app :is(td.profit-value,.profit-summary):not(#\#){background:var(--accent-soft);color:var(--accent-text)}
html body #app .profit-summary strong:not(#\#){color:var(--accent-text)}
html body #app :is(.stepnum,.tile-icon):not(#\#){background:var(--accent-soft);color:var(--accent-text)}
html body #app .tile-icon.green:not(#\#){background:var(--success-soft);color:var(--success)}
html body #app .tile-icon.orange:not(#\#){background:var(--warning-soft);color:var(--warning)}
html body #app .tile-icon.purple:not(#\#){background:var(--purple-soft);color:var(--purple)}
html body #app :is(.fba-source.is-wait,.fx-note.is-warn):not(#\#){background:var(--warning-soft);color:var(--warning)}
html body #app :is(.service-card h3,.biz-material-name strong,.studio-material-grid>article>strong,.product-name,.cat-empty>strong,.empty>h3,.fba-head>strong):not(#\#){color:var(--text)}
html body #app :is(.service-card p,.cat-empty,.cat-empty>p,.empty>p,.studio-error,.cat-keyword-count,.biz-dest-head small,.p-muted):not(#\#){color:var(--text-3)}
html body #app .studio-error:not(#\#){color:var(--danger)}
html body #app .biz-image-flow>span:not(#\#){color:var(--text-2)}
html body #app progress:not(#\#){accent-color:var(--accent);background:var(--surface-3)}
html body #app .registration-filter-multi>div:not(#\#),html body #app details[class*="filter"]>div:not(#\#){background:var(--glass-strong);border:1px solid var(--border);box-shadow:var(--shadow-3);color:var(--text);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur)}
html body #app .cat-filters select:not(#\#),html body #app .cat-filters button.outline:not(#\#){background:var(--surface);color:var(--text)}
html body #app .studio-ad-table thead:not(#\#){background:var(--surface-3)}
html body #app .sidebarfoot .avatar:not(#\#),html body #app .hero button.primary:not(#\#){background:var(--accent);color:#fff}
/* 弹窗内的常见块 */
html dialog :is(.note,.cat-file,.formgrid .note,.source-view-assets figure,.biz-material-card):not(#\#){background:var(--surface-2);border-color:var(--border);color:var(--text-2)}
html dialog :is(th,thead):not(#\#){background:var(--surface-3);color:var(--text-3)}
html dialog td:not(#\#){color:var(--text);border-color:var(--divider)}
html body #app #biz-deep-start .outline.danger:not(#\#):not(#\#){background:var(--danger-soft);color:var(--danger);border-color:transparent}
html body #app #biz-deep-start .outline.danger:disabled:not(#\#):not(#\#){opacity:.45}
html body #app :is(.studio-flow span,.studio-bullet-row>label,.biz-image-flow b,li.off>b,li.on>b):not(#\#){background:var(--accent-soft);color:var(--accent-text)}
html body #app :is(li.off>b):not(#\#){background:var(--surface-3);color:var(--text-3)}
html body #app .studio-flow div:not(#\#){color:var(--text-3)}
html body #app .registration-filter-multi:not(#\#){background:var(--surface);border-color:var(--border-strong);border-radius:var(--r-sm)}
html body #app .registration-filter-multi summary:not(#\#){color:var(--text)}
html body #app .fba-mode label:not(#\#){color:var(--text-2);background:transparent}
html body #app :is(.profit-return-controls>span,.profit-adnote,.profit-missing):not(#\#){color:var(--text-3)}
html body #app .cat-pagination :is(span,strong):not(#\#){color:var(--text-2)}
html body #app :is(.card,.cat-card,.studio-card,.team-card)>p:not(.studio-error):not(.errorbox):not(#\#),html body #app .cat-media-grid figcaption>span:not(#\#){color:var(--text-3)}
html body #app :is(.cat-timeline>li>strong,.plan-stats strong,.profit-sectionhead strong):not(#\#){color:var(--text)}
html body #app .cat-timeline>li>span:not(#\#){color:var(--text-2)}
html body #app h2 small:not(#\#),html body #app h3 small:not(#\#){color:var(--text-3)}
/* 深色：页面私有样式写死的浅色边框统一换成语义边框 */
:root[data-theme="dark"] body #app *:not(#\#),:root[data-theme="dark"] dialog *:not(#\#){border-color:var(--border)}
:root[data-theme="dark"] body #app :is(hr,.divider):not(#\#){background:var(--divider)}
html body #app .biz-dest-grid .biz-dest-thumbs:not(#\#){grid-template-columns:repeat(2,minmax(0,1fr));min-width:0}
html body #app .biz-dest-thumbs img:not(#\#){width:100%;height:auto;aspect-ratio:1;max-width:100%}
html body #app .biz-dest-box:not(#\#){overflow:hidden}
html body #app fieldset:not(#\#){border:1px solid var(--border);border-radius:var(--r-md)}
html body #app legend:not(#\#){color:var(--text);font-weight:var(--fw-semibold);font-size:var(--fs-sm)}

/* 高级设置折叠 */
html body #app details.ds-advanced{margin:var(--s-3) 0;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface-2);padding:0 var(--s-3)}
html body #app details.ds-advanced>summary{padding:10px 0;font-weight:var(--fw-semibold);color:var(--text)}
html body #app details.ds-advanced[open]{padding-bottom:var(--s-3)}
html body #app .studio-two-btn.ds-actionbar{display:grid;grid-template-columns:1fr 1fr}
html body #app .studio-two-btn.ds-actionbar .ds-missing{grid-column:1/-1}
.cat-lightbox .lb-status{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);margin:0;padding:10px 16px;border-radius:var(--r-md);background:var(--glass-strong);color:var(--text-2);font-size:var(--fs-sm);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur)}
.cat-lightbox .lb-status:empty{display:none}.cat-lightbox .lb-status.is-error{color:var(--danger)}
/* 窄屏：多栏布局统一改为单栏（≤ 760px） */
@media (max-width:760px){
  html body #app :is(.grid-main,.calc-layout,.cat-completed-layout,.r-selection-top,.r-reports-main,.r-selection-work,.biz-product-layout,.biz-images-layout,.biz-deep-settings,.selection-import-settings,.plan-supply-layout,.studio-workbench,.studio-video,.team-layout,.team-permission-layout,.cat-four,.cat-two,.biz-two-col,.stats,.steps,.biz-dest-grid,.usage-stats,.profit-layout,.cat-all-layout.preview-open):not(#\#){grid-template-columns:minmax(0,1fr)}
  html body #app .content :is(div,section,form,aside,article,fieldset):not(#\#){min-width:0}
  html body #app :is(.team-matrix-head,.cat-cardhead,.cardhead,.studio-cardhead):not(#\#){flex-wrap:wrap}
  html body #app .steps:not(#\#){grid-template-columns:repeat(2,minmax(0,1fr))}
}
html body #app .biz-dest-box:not(#\#){grid-template-columns:minmax(0,1fr)}
html body #app progress:not(#\#){appearance:none;-webkit-appearance:none;height:6px;border:0;border-radius:var(--r-pill);background:var(--surface-3);overflow:hidden}
html body #app progress::-webkit-progress-bar{background:var(--surface-3);border-radius:var(--r-pill)}
html body #app progress::-webkit-progress-value{background:var(--accent);border-radius:var(--r-pill);transition:width var(--dur-2) var(--ease-out)}
html body #app progress:not([value])::-webkit-progress-bar{background:linear-gradient(90deg,var(--surface-3),var(--accent-soft),var(--surface-3))}
html body #app .team-card :is(.cat-cardhead,.team-cardhead):not(#\#){flex-wrap:wrap;row-gap:var(--s-2)}
html body #app .team-matrix th:not(#\#){white-space:nowrap;font-size:var(--fs-xs);padding:6px 4px}
/* 旧样式里的变量统一映射到语义变量（页面外框类会重新定义它们，这里一并接管） */
:root:root,html body #app .layout:not(#\#),html body #app .profit-shell:not(#\#){--ink:var(--text);--muted:var(--text-3);--blue:var(--accent);--green:var(--success);--nav:var(--surface)}
html body #app .layout:not(#\#),html body #app .profit-shell:not(#\#){--border:inherit;--bg:inherit;background:var(--bg)}
:root:root{--apple-bg:var(--bg);--apple-ink:var(--text);--apple-muted:var(--text-3);--apple-line:var(--border);--apple-blue:var(--accent);--apple-soft:var(--accent-soft);--apple-red:var(--danger);--plan-border:var(--border)}
/* 深色下透明边框的链接按钮不显示边框 */
:root[data-theme="dark"] body #app :is(.linkbtn,button.linkbtn,button.ghost,.navitem,button.tab,.tabs button):not(#\#){border-color:transparent}
/* 旧的“黑色按钮”：统一为次级实心按钮（深浅色都清楚），主要操作仍只用强调色 */
html body #app button.dark:not(#\#){background:var(--text);border-color:var(--text);color:var(--bg)}
html body #app button.dark:not(:disabled):hover:not(#\#){background:var(--text-2);border-color:var(--text-2)}

/* 弹窗里的表单控件（页面私有样式写死了白底）统一用语义变量 */
html dialog :is(input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=hidden]):not([type=range]),select,textarea):not(#\#){background:var(--surface);color:var(--text);border-color:var(--border-strong)}
html dialog :is(input,select,textarea):disabled:not(#\#),html dialog :is(input,textarea)[readonly]:not(#\#){background:var(--surface-3);color:var(--text-3)}
html dialog :is([data-xiyou-box],.xiyou-dropzone,.registration-xiyou,.candidate-photo-field,.selection-dropzone,.cat-edit-fold,.registration-basic,.cat-profit-box,.own-card,.fba-grid,.r-task-v,.deep-source):not(#\#){background:var(--surface-2);border-color:var(--border);color:var(--text-2)}
html dialog :is(label,summary,.field>label):not(#\#){color:var(--text-2)}
html dialog :is(h2,h3,h4,strong):not(#\#){color:var(--text)}
/* 选择标签（季节/节日等）：统一为可选“胶囊” */
html :is(#app,dialog) .registration-tags span:not(#\#),html :is(#app,dialog) .plan-chips span:not(#\#){border:1px solid var(--border-strong);border-radius:var(--r-pill);background:var(--surface);color:var(--text-2);padding:4px 12px;transition:background-color var(--dur-hover),border-color var(--dur-hover),color var(--dur-hover)}
html :is(#app,dialog) .registration-tags input:checked+span:not(#\#),html :is(#app,dialog) .plan-chips input:checked+span:not(#\#){background:var(--accent-soft);border-color:var(--accent);color:var(--accent-text)}
html :is(#app,dialog) :is(.xiyou-drop,.cat-timeline,.own-profile,.own-group,.biz-task-row,.team-mode-note,.own-auto):not(#\#){background:var(--surface-2);border-color:var(--border);color:var(--text-2)}
html :is(#app,dialog) :is(.own-count,.own-chip):not(#\#){background:var(--surface-3);color:var(--text-2)}
html :is(#app,dialog) .own-chip-manual:not(#\#){background:var(--success-soft);color:var(--success)}
html :is(#app,dialog) .own-chip-competitor:not(#\#){background:var(--warning-soft);color:var(--warning)}
html .plan-drawer-foot:not(#\#){background:var(--glass-strong);border-color:var(--divider)}
html :is(#app,dialog) input[type=file]:not(#\#){background:transparent;color:var(--text-2)}
:root[data-theme="dark"] .avatar-pick button:not(#\#){background:var(--surface-3)}
:root[data-theme="dark"] .avatar-drop img:not(#\#){background:var(--surface-3)}

/* 登记信息“页面”（V0.34.1）：点“查看”从表格上方弹出完整登记信息 */
@keyframes ds-sheet-in{from{opacity:0;transform:translateY(16px) scale(.99)}to{opacity:1;transform:none}}
.cat-detail-sheet{position:fixed;inset:0;overscroll-behavior:contain;z-index:40;display:grid;place-items:start center;padding:28px 24px;overflow:auto;background:var(--scrim);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);animation:ds-fade-in var(--dur-2) var(--ease-out) both}
.cat-detail-sheet-inner{width:min(1280px,100%);background:var(--bg);border:1px solid var(--border);border-radius:var(--r-xl);box-shadow:var(--shadow-3);padding:0 20px 20px;animation:ds-sheet-in var(--dur-2) var(--ease-spring) both}
.cat-detail-sheet-head{position:sticky;top:-28px;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 -20px 16px;padding:16px 20px;background:var(--glass-strong);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border-bottom:1px solid var(--divider);border-radius:var(--r-xl) var(--r-xl) 0 0}
.cat-detail-sheet-head h2{margin:0;font-size:var(--fs-xl);color:var(--text)}
.cat-detail-sheet-head h2 small{font-size:var(--fs-sm);color:var(--text-3);font-weight:500;margin-left:6px}
@media (max-width:760px){.cat-detail-sheet{padding:0}.cat-detail-sheet-inner{border-radius:0;min-height:100%}.cat-detail-sheet-head{top:0;border-radius:0}}
.listing-all-block{border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface);padding:12px 14px;margin:0 0 12px}
.listing-all-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:6px}.listing-all-head h3{margin:0;font-size:var(--fs-md);color:var(--text)}
.listing-all-text{white-space:pre-wrap;color:var(--text);font-size:var(--fs-sm);line-height:var(--lh-loose)}
html body #app pre.biz-backend-text:not(#\#){max-height:none;background:var(--surface-2);color:var(--text);border:1px solid var(--border)}
html body #app #b-instructions:not(#\#){width:100%;margin-top:4px}
.bp-modal-body :is(section,details,div):not(#\#){max-height:none;overflow:visible}
dialog .bp-modal-body:not(#\#){max-height:calc(100vh - 220px);overflow:auto}

/* ---------- V0.35.0 广告分析控制台（只用本文件变量；吸附筛选栏用玻璃，表格/卡片用实底） ---------- */
#app .ads-console{display:flex;flex-direction:column;gap:var(--s-3);min-width:0}
#app .ads-note{margin:0;padding:8px 12px;border-radius:var(--r-sm);background:var(--accent-soft);color:var(--text-2);font-size:var(--fs-sm)}
#app .ads-console[data-mode="mock"] .ads-note{background:var(--warning-soft)}
#app .ads-filterbar{position:sticky;top:var(--topbar-h);z-index:6;display:flex;flex-wrap:wrap;align-items:flex-end;gap:var(--s-2) var(--s-3);padding:var(--s-3) var(--s-4);background:var(--glass-strong);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-1)}
#app .ads-f{display:flex;flex-direction:column;gap:3px;min-width:0}
#app .ads-f>span{font-size:var(--fs-xs);color:var(--text-3)}
#app .ads-f :is(select,input):not(#\#){height:var(--control-h-sm);min-height:var(--control-h-sm);font-size:var(--fs-sm);padding:0 10px;border-radius:var(--r-sm);border:1px solid var(--border-strong);background:var(--surface);color:var(--text)}
#app .ads-f select:not(#\#){max-width:220px}
#app .ads-f-range>div{display:flex;align-items:center;gap:4px}#app .ads-f-range input:not(#\#){width:76px}#app .ads-f-range i{color:var(--text-3);font-style:normal}
#app .ads-f-q{flex:1 1 200px}#app .ads-f-q input:not(#\#){width:100%}
#app .ads-f-actions{display:flex;gap:var(--s-2);margin-left:auto}
#app .ads-syncline{font-size:var(--fs-xs)}
#app .ads-sync{display:flex;align-items:center;gap:var(--s-3);padding:10px 14px;border-radius:var(--r-md);background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-1);animation:ds-fade-in var(--dur-1) var(--ease-out) both}
#app .ads-sync-text{flex:0 1 auto;font-size:var(--fs-sm);color:var(--text-2)}
#app .ads-sync-failed,#app .ads-sync-cancelled{background:var(--warning-soft)}
#app progress.ads-progress{flex:1 1 160px;height:6px;border:0;border-radius:var(--r-pill);background:var(--surface-3);overflow:hidden;-webkit-appearance:none;appearance:none;color:var(--accent)}
#app progress.ads-progress::-webkit-progress-bar{background:var(--surface-3);border-radius:var(--r-pill)}
#app progress.ads-progress::-webkit-progress-value{background:var(--accent);border-radius:var(--r-pill);transition:width var(--dur-2) var(--ease-out)}
#app progress.ads-progress::-moz-progress-bar{background:var(--accent);border-radius:var(--r-pill)}
#app .ads-kpis{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:var(--s-3)}
#app button.ads-kpi:not(#\#){display:flex;flex-direction:column;align-items:flex-start;gap:4px;min-height:92px;height:auto;padding:12px 14px;text-align:left;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-1);color:var(--text);transition:transform var(--dur-hover) var(--ease-out),box-shadow var(--dur-hover) var(--ease-out),border-color var(--dur-hover)}
#app button.ads-kpi:not(#\#):hover{box-shadow:var(--shadow-2);border-color:var(--border-strong)}
#app button.ads-kpi.active:not(#\#){border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-ring)}
#app .ads-kpi-label{font-size:var(--fs-xs);color:var(--text-3)}
#app .ads-kpi-value{font-size:var(--fs-xl);font-weight:var(--fw-bold);font-variant-numeric:tabular-nums;letter-spacing:-.01em}
#app .ads-kpi.tone-bad .ads-kpi-value{color:var(--danger)}#app .ads-kpi.tone-good .ads-kpi-value{color:var(--success)}
#app .ads-kpi-delta{font-size:var(--fs-xs);font-weight:var(--fw-medium);border-radius:var(--r-pill);padding:1px 7px;background:var(--surface-3);color:var(--text-2)}
#app .ads-kpi-delta.t-bad{background:var(--danger-soft);color:var(--danger)}#app .ads-kpi-delta.t-good{background:var(--success-soft);color:var(--success)}
#app .ads-kpi-skel i{display:block;height:12px;width:60%;border-radius:var(--r-xs);background:var(--surface-3);animation:ds-fade-in var(--dur-2) var(--ease-out) both}#app .ads-kpi-skel i+i{height:22px;width:80%;margin-top:8px}
#app .ads-kpi-skel{padding:14px;border-radius:var(--r-lg);border:1px solid var(--border);background:var(--surface);min-height:92px}
#app .ads-levelbar{display:flex;flex-direction:column;gap:6px}
#app .ads-tabs{display:flex;flex-wrap:wrap}
#app .ads-crumbs{display:flex;align-items:center;flex-wrap:wrap;gap:4px;font-size:var(--fs-sm);color:var(--text-2)}
#app .ads-crumbs i{font-style:normal;color:var(--text-3)}#app .ads-crumbs [aria-current]{font-weight:var(--fw-semibold);color:var(--text)}
#app .ads-toolbar{display:flex;align-items:center;justify-content:space-between;gap:var(--s-3);flex-wrap:wrap;min-height:40px}
#app .ads-toolbar>.actions{display:flex;gap:var(--s-2);align-items:center}
#app .ads-batchbar{display:flex;align-items:center;flex-wrap:wrap;gap:var(--s-2);padding:6px 10px;border-radius:var(--r-md);background:var(--surface-selected);border:1px solid var(--accent-ring);animation:ds-sheet-in var(--dur-1) var(--ease-spring) both}
#app .ads-batchbar b{font-size:var(--fs-sm);margin-right:4px}
#app .ads-quick .row-more-menu hr{border:0;border-top:1px solid var(--divider);margin:4px 0}
#app .ads-quick>summary{border:1px solid var(--border-strong);background:var(--surface);color:var(--text);min-height:var(--control-h-sm)}
#app .ads-table-wrap{position:relative;max-height:calc(100vh - 220px);min-height:200px;overflow:auto;overscroll-behavior:contain;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-1)}
#app .ads-table-wrap:focus-visible{outline:none;box-shadow:0 0 0 3px var(--accent-ring)}
#app table.ads-table:not(#\#){width:100%;border-collapse:separate;border-spacing:0;font-size:var(--fs-sm);font-variant-numeric:tabular-nums}
#app .ads-table :is(th,td):not(#\#){padding:8px 10px;border-bottom:1px solid var(--divider);white-space:nowrap;text-align:left;vertical-align:middle;height:auto;line-height:1.35;color:var(--text);background:var(--surface)}
#app .ads-table thead th:not(#\#){position:sticky;top:0;z-index:3;background:var(--surface-3);color:var(--text-2);font-weight:var(--fw-semibold);font-size:var(--fs-xs)}
#app .ads-table :is(th,td).num:not(#\#){text-align:right}
#app .ads-table .ads-chk:not(#\#){position:sticky;left:0;z-index:2;width:36px;padding-right:4px}
#app .ads-table thead .ads-chk:not(#\#){z-index:4}
#app .ads-table .ads-sticky-name:not(#\#){position:sticky;left:36px;z-index:2;max-width:280px;overflow:hidden;text-overflow:ellipsis;box-shadow:1px 0 0 var(--divider)}
#app .ads-table thead .ads-sticky-name:not(#\#){z-index:4}
#app .ads-table .ads-actions-col:not(#\#){position:sticky;right:0;z-index:2;box-shadow:-1px 0 0 var(--divider);text-align:right}
#app .ads-table thead .ads-actions-col:not(#\#){z-index:4}
#app .ads-table td.ads-actions-col:has(details[open]):not(#\#){z-index:6}
#app .ads-table tbody tr:hover :is(td):not(#\#){background:var(--surface-hover)}
#app .ads-table tbody tr.is-selected td:not(#\#),#app .ads-table tbody tr.is-open td:not(#\#){background:var(--surface-selected)}
#app .ads-table tbody tr.warn-row td:not(#\#){background:color-mix(in srgb,var(--danger-soft) 100%,var(--surface))}
#app .ads-table td.warn-red:not(#\#){color:var(--danger);font-weight:var(--fw-semibold);background:var(--danger-soft)}
#app .ads-table td.warn-yellow:not(#\#){color:var(--warning);background:var(--warning-soft)}
#app .ads-table .neg{color:var(--danger)}
#app button.ads-sort:not(#\#){border:0;background:transparent;padding:0;min-height:0;height:auto;font:inherit;color:inherit;display:inline-flex;gap:4px;align-items:center;box-shadow:none}
#app button.ads-sort i{font-style:normal;font-size:9px;color:var(--accent-text);min-width:8px}
#app button.ads-drill:not(#\#),#app button.ads-editable:not(#\#),#app button.ads-pencil:not(#\#){border:0;background:transparent;padding:2px 4px;margin:-2px -4px;min-height:0;height:auto;font:inherit;color:var(--accent-text);border-radius:var(--r-xs);box-shadow:none;max-width:100%;overflow:hidden;text-overflow:ellipsis}
#app button.ads-editable:not(#\#){color:var(--text);border-bottom:1px dashed var(--border-strong);border-radius:0;max-width:none;overflow:visible}
#app button.ads-pencil:not(#\#){color:var(--text-3);margin-left:4px;opacity:0;transition:opacity var(--dur-hover)}
#app .ads-table tr:hover button.ads-pencil,#app button.ads-pencil:focus-visible{opacity:1}
#app .ads-table small{color:var(--text-3);margin-left:2px}
#app .ads-inline{display:inline-flex;flex-direction:column;gap:2px}#app .ads-inline input:not(#\#){height:28px;min-height:28px;width:120px;padding:0 8px;border:1px solid var(--accent);border-radius:var(--r-xs);box-shadow:0 0 0 3px var(--accent-ring);background:var(--surface);color:var(--text)}
#app .ads-inline input[type=text]:not(#\#){width:220px}#app .ads-inline small{font-size:11px}
#app .ads-pending s{color:var(--text-3)}
#app .ads-state{display:inline-flex;align-items:center;gap:5px;font-size:var(--fs-xs)}#app .ads-state::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--text-3)}
#app .ads-state.s-enabled::before{background:var(--success)}#app .ads-state.s-paused::before{background:var(--warning)}#app .ads-state.s-archived{color:var(--text-3)}
#app .ads-rowbtns{display:inline-flex;align-items:center;gap:2px}
#app .ads-rowbtns button.ghost:not(#\#){min-height:26px;padding:3px 7px;font-size:var(--fs-xs)}
#app button.danger:not(#\#){color:var(--danger)}#app button.primary.danger:not(#\#),dialog button.primary.danger:not(#\#){background:var(--danger);border-color:var(--danger);color:var(--on-accent)}
#app .ads-sentinel{display:flex;justify-content:center;align-items:center;gap:8px;padding:12px;font-size:var(--fs-sm);color:var(--text-3)}
#app .ads-spinner,dialog .ads-spinner{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--accent);vertical-align:1px}
#app .ads-table-skel td i{display:block;height:10px;border-radius:var(--r-xs);background:var(--surface-3);animation:ds-fade-in var(--dur-2) var(--ease-out) both}
#app .ads-skeleton{display:grid;gap:10px;padding:16px;border-radius:var(--r-lg);background:var(--surface);border:1px solid var(--border)}#app .ads-skeleton i{height:14px;border-radius:var(--r-xs);background:var(--surface-3);animation:ds-fade-in var(--dur-2) var(--ease-out) both}#app .ads-skeleton i:nth-child(odd){width:70%}
#app .ads-empty{display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px;padding:48px 20px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg)}
#app .ads-empty h3{margin:0;font-size:var(--fs-lg);color:var(--text)}#app .ads-empty p{margin:0;max-width:520px;color:var(--text-3);font-size:var(--fs-sm)}
#app .ads-empty-icon{width:48px;height:48px;display:grid;place-items:center;border-radius:50%;background:var(--accent-soft);color:var(--accent-text);font-size:22px}
#app .ads-empty>div,#app .ads-empty>button{margin-top:6px}#app .ads-empty button+button{margin-left:8px}
#app .ads-count{display:inline-block;min-width:18px;padding:0 5px;margin-left:4px;border-radius:var(--r-pill);background:var(--danger);color:var(--on-accent);font-size:11px;line-height:18px;text-align:center}
/* 详情抽屉（右侧滑出，带阻尼；Esc 关闭；焦点返回） */
#app .ads-scrim{position:fixed;inset:0;z-index:30;background:var(--scrim);animation:ds-fade-in var(--dur-2) var(--ease-out) both}
#app .ads-scrim.closing{animation:ds-fade-out var(--dur-1) var(--ease-out) both}
#app .ads-drawer{position:fixed;top:0;right:0;bottom:0;z-index:31;width:min(640px,100vw);display:flex;flex-direction:column;background:var(--bg);border-left:1px solid var(--border);box-shadow:var(--shadow-3);animation:ads-drawer-in var(--dur-3) var(--ease-spring) both;overscroll-behavior:contain}
#app .ads-drawer.closing{animation:ads-drawer-out var(--dur-1) var(--ease-out) both}
@keyframes ads-drawer-in{from{transform:translateX(32px);opacity:0}to{transform:none;opacity:1}}
@keyframes ads-drawer-out{to{transform:translateX(24px);opacity:0}}
#app .ads-drawer-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:16px 20px;background:var(--glass-strong);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border-bottom:1px solid var(--divider)}
#app .ads-drawer-head h2{margin:0;font-size:var(--fs-lg);color:var(--text);word-break:break-word}#app .ads-drawer-head p{margin:2px 0 0}
#app .ads-drawer-body{flex:1;overflow:auto;padding:16px 20px;display:flex;flex-direction:column;gap:var(--s-4)}
#app .ads-drawer-foot{display:flex;gap:var(--s-2);justify-content:flex-end;padding:12px 20px;border-top:1px solid var(--divider);background:var(--glass-strong);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur)}
#app .ads-sec{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:14px 16px}
#app .ads-sec h3{margin:0 0 10px;font-size:var(--fs-md);color:var(--text)}#app .ads-sec h3 small{font-weight:400;margin-left:6px}
#app .ads-sec-head{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;margin-bottom:8px}#app .ads-sec-head h3{margin:0}
#app .ads-info{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 16px;margin:0}#app .ads-info dt{font-size:var(--fs-xs);color:var(--text-3)}#app .ads-info dd{margin:0;font-size:var(--fs-sm);color:var(--text);word-break:break-all}
#app .ads-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}#app .ads-metrics>div{padding:8px 10px;border-radius:var(--r-sm);background:var(--surface-2);display:flex;flex-direction:column;gap:2px}#app .ads-metrics span{font-size:var(--fs-xs);color:var(--text-3)}#app .ads-metrics b{font-size:var(--fs-md);font-variant-numeric:tabular-nums;color:var(--text)}
#app .ads-seg{display:inline-flex;padding:2px;gap:2px;border-radius:var(--r-sm);background:var(--surface-3)}
#app .ads-seg button:not(#\#){min-height:24px;height:24px;padding:0 10px;border:0;background:transparent;font-size:var(--fs-xs);color:var(--text-2);box-shadow:none;border-radius:7px}
#app .ads-seg button.active:not(#\#){background:var(--surface);color:var(--text);box-shadow:var(--shadow-1)}
#app .ads-chart{margin:0}#app .ads-chart svg{width:100%;height:auto;display:block}
#app .ads-chart .grid line{stroke:var(--divider)}#app .ads-chart text{font-size:10px;fill:var(--text-3)}#app .ads-chart .axis-l text{text-anchor:end}#app .ads-chart .axis-x text{text-anchor:middle}
#app .ads-chart .l-spend{fill:none;stroke:var(--accent);stroke-width:2;stroke-linejoin:round}#app .ads-chart .l-sales{fill:none;stroke:var(--success);stroke-width:2;stroke-linejoin:round}
#app .ads-chart .d-spend{fill:var(--accent)}#app .ads-chart .d-sales{fill:var(--success)}
#app .ads-chart figcaption{display:flex;gap:16px;justify-content:center;font-size:var(--fs-xs);color:var(--text-2)}
#app .ads-chart figcaption span::before{content:"";display:inline-block;width:14px;height:3px;border-radius:2px;margin-right:5px;vertical-align:middle}
#app .ads-chart .k-spend::before{background:var(--accent)}#app .ads-chart .k-sales::before{background:var(--success)}
#app .ads-subtabs,dialog .ads-subtabs{display:flex;flex-wrap:wrap;margin-bottom:10px}
#app .ads-mini-wrap,dialog .ads-mini-wrap{overflow:auto;max-height:360px;border:1px solid var(--divider);border-radius:var(--r-md)}
:is(#app,dialog) table.ads-mini:not(#\#){width:100%;border-collapse:collapse;font-size:var(--fs-xs);font-variant-numeric:tabular-nums}
:is(#app,dialog) .ads-mini :is(th,td):not(#\#){padding:6px 8px;border-bottom:1px solid var(--divider);text-align:left;white-space:nowrap;color:var(--text);background:var(--surface)}
:is(#app,dialog) .ads-mini th:not(#\#){position:sticky;top:0;background:var(--surface-3);color:var(--text-2)}
:is(#app,dialog) .ads-mini .num:not(#\#){text-align:right}
#app .ads-mini-empty{padding:12px 0;margin:0}
#app input.ads-adj:not(#\#){width:64px;height:26px;min-height:26px;padding:0 6px;text-align:right;border:1px solid var(--border-strong);border-radius:var(--r-xs);background:var(--surface);color:var(--text)}
#app .ads-inline-actions,dialog .ads-inline-actions{display:flex;align-items:center;flex-wrap:wrap;gap:var(--s-2);margin-top:10px}
#app .ads-neg-form{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}#app .ads-neg-form input:not(#\#){flex:1 1 160px}
#app .ads-neg-form :is(input,select):not(#\#){height:var(--control-h-sm);min-height:var(--control-h-sm);padding:0 8px;border:1px solid var(--border-strong);border-radius:var(--r-sm);background:var(--surface);color:var(--text);font-size:var(--fs-sm)}
:is(#app,dialog) .ads-log{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}:is(#app,dialog) .ads-log li{padding:8px 10px;border-radius:var(--r-sm);background:var(--surface-2)}
/* 弹窗内（列设置/导出/设置/确认/快捷优化） */
dialog .ads-modal{min-width:min(560px,86vw)}
dialog .ads-confirm p{margin:0 0 8px;color:var(--text);line-height:var(--lh)}
dialog .ads-warn-text,#app .ads-warn-text{color:var(--danger);font-weight:var(--fw-medium)}dialog .ads-ok{color:var(--success)}
dialog .ads-fieldset{border:1px solid var(--border);border-radius:var(--r-md);padding:10px 12px;margin:0 0 10px;display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center}
dialog .ads-fieldset legend{font-size:var(--fs-xs);color:var(--text-3);padding:0 4px}
dialog .ads-fields label{min-width:120px;font-size:var(--fs-sm)}
dialog .ads-formgrid{display:grid;gap:10px}
dialog .ads-cond>div{display:flex;gap:6px}dialog .ads-cond select{flex:1}dialog .ads-cond input{width:110px}
dialog .ads-rule-list{list-style:none;margin:0 0 10px;padding:0;display:flex;flex-direction:column;gap:6px}
dialog .ads-rule-list li{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:8px 10px;border-radius:var(--r-sm);background:var(--surface-2);font-size:var(--fs-sm)}
dialog .ads-rule-list li button{margin-left:auto}
dialog .ads-inline-form{display:flex;flex-wrap:wrap;gap:8px}
dialog .ads-alerts{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}dialog .ads-alerts li{padding:10px 12px;border-radius:var(--r-sm);background:var(--danger-soft);color:var(--text)}
dialog .ads-plan{max-height:50vh}
dialog .ads-switch{display:flex;align-items:center;gap:8px;font-size:var(--fs-sm)}
dialog .ads-note{margin:0;padding:8px 12px;border-radius:var(--r-sm);background:var(--warning-soft);color:var(--text-2)}
@media (max-width:1200px){#app .ads-kpis{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media (max-width:760px){
  #app .ads-filterbar{position:static;padding:12px}#app .ads-f{flex:1 1 calc(50% - 8px)}#app .ads-f select:not(#\#){max-width:none;width:100%}#app .ads-f-actions{width:100%;margin:0}#app .ads-f-actions button{flex:1}
  #app .ads-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}#app .ads-kpi-value{font-size:var(--fs-lg)}
  #app .ads-table-wrap{max-height:70vh}#app .ads-table .ads-sticky-name:not(#\#){max-width:150px}
  #app .ads-drawer{width:100vw;border-left:0}#app .ads-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}#app .ads-info{grid-template-columns:1fr}
  #app .ads-sync{flex-wrap:wrap}
}
@media (prefers-reduced-motion:reduce){#app :is(.ads-drawer,.ads-scrim,.ads-sync,.ads-batchbar){animation:none}#app :is(.ads-kpi-skel i,.ads-skeleton i,.ads-table-skel td i){animation:none}}

/* ===== V0.36.0 竞品深度分析：左右对称四方框 ===== */
#app .deep-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s-4,16px);align-items:stretch;margin-bottom:var(--s-4,16px)}
#app .deep-grid>.deep-box{display:flex;flex-direction:column;margin:0;min-width:0;height:100%}
#app .deep-grid>.deep-box>.cat-cardhead{flex:0 0 auto}
#app .deep-grid .deep-link-wrap{max-height:260px}
#app .deep-grid .biz-settings-line{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
#app .deep-grid .biz-settings-line>.field{min-width:0}
#app .deep-grid .biz-settings-line>button{width:100%}
#app .deep-grid .xiyou-box{margin:12px 0 0}
#app .deep-status-kv{display:grid;gap:10px;margin:0}
#app .deep-status-kv>div{display:grid;grid-template-columns:96px minmax(0,1fr);gap:8px;align-items:baseline}
#app .deep-status-kv dt{color:var(--text-3)}
#app .deep-status-kv dd{margin:0;overflow-wrap:anywhere}
@media (max-width:980px){#app .deep-grid{grid-template-columns:1fr}}
#app a.cat-keyword-link{text-decoration:none;color:var(--accent-text);cursor:pointer;transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}
#app a.cat-keyword-link:hover{background:var(--accent-soft);text-decoration:underline}

/* ===== V0.36.0 模型/SKILL 调用方式：手动 | 自动 ===== */
.call-mode{display:flex;align-items:center;gap:10px;flex-wrap:wrap;grid-column:1/-1;margin:0 0 12px;padding:8px 12px;border-radius:var(--r-sm);background:var(--surface-2)}
.call-mode-label{font-size:var(--fs-sm);color:var(--text-2);white-space:nowrap}
.call-mode-seg{display:inline-flex;padding:2px;gap:2px;border-radius:var(--r-sm);background:var(--surface-3)}
.call-mode-seg button:not(#\#){min-height:26px;height:26px;padding:0 14px;border:0;background:transparent;font-size:var(--fs-sm);color:var(--text-2);box-shadow:none;border-radius:7px;transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}
.call-mode-seg button.active:not(#\#){background:var(--surface);color:var(--accent-text);box-shadow:var(--shadow-1);font-weight:600}
.call-mode-hint{flex:1 1 220px;min-width:0}
#app .deep-grid .biz-settings-line>.field:nth-child(3){grid-column:1/-1}

/* ===== V0.36.0 图片预览框：可调大小 ===== */
.cat-lightbox .lb-stage{grid-column:2;display:grid;place-items:center;min-width:0;min-height:0}
.cat-lightbox .lb-frame{resize:both;overflow:hidden;min-width:240px;min-height:180px;position:relative;display:block;border:1px solid rgba(255,255,255,.28);border-radius:var(--r-md);background:rgba(0,0,0,.35);box-shadow:var(--shadow-3,0 12px 40px rgba(0,0,0,.4))}
.cat-lightbox .lb-frame .lb-img{position:absolute;inset:0;grid-column:auto;width:100%;height:100%;max-width:none;max-height:none;margin:0;object-fit:contain}
.cat-lightbox .lb-sizes{display:inline-flex;gap:6px}

/* ===== V0.36.0 产品中心四方格（点中展开，滚轮看，点空白/Esc 关闭） ===== */
#app .biz-four-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s-4,16px);margin-bottom:var(--s-4,16px);align-items:start}
#app .biz-form-contents{display:contents}
#app .biz-four-grid #biz-product-error:empty{display:none}
#app .biz-four-grid #biz-product-error:not(:empty){grid-column:1/-1}
#app .biz-tile{position:relative;height:360px;overflow:hidden;cursor:zoom-in;border-radius:var(--r-lg);min-width:0}
#app .biz-tile>.card,#app .biz-tile>section{margin:0;min-height:100%}
#app .biz-tile:not(.expanded)::after{content:'';position:absolute;left:0;right:0;bottom:0;height:64px;background:linear-gradient(to bottom,transparent,var(--surface));pointer-events:none;border-radius:0 0 var(--r-lg) var(--r-lg)}
#app .biz-tile:not(.expanded):hover{box-shadow:var(--shadow-2)}
#app .biz-tile-hint{position:absolute;right:14px;bottom:10px;z-index:2;padding:2px 10px;border-radius:var(--r-pill);background:var(--accent-soft);font-size:var(--fs-xs);color:var(--accent-text);pointer-events:none}
#app .biz-tile:not(.expanded) textarea{overflow:hidden;resize:none}
#app .biz-tile.expanded{position:fixed;z-index:60;inset:6vh 10vw;height:auto;overflow-y:auto;overscroll-behavior:contain;cursor:auto;background:var(--surface);box-shadow:var(--shadow-3,0 16px 48px rgba(0,0,0,.28));animation:biz-tile-in var(--dur-2,240ms) var(--ease-out) both}
#app .biz-tile.expanded textarea{min-height:46vh}
#app .biz-tile-close{position:sticky;top:8px;float:right;z-index:3;margin:8px 8px 0 0}
#app .biz-tile-scrim{position:fixed;inset:0;z-index:55;background:rgba(0,0,0,.38);animation:ds-fade-in var(--dur-1,180ms) var(--ease-out) both}
@keyframes biz-tile-in{from{opacity:0;transform:scale(.97)}to{opacity:1;transform:none}}
@media (max-width:900px){#app .biz-four-grid{grid-template-columns:1fr}#app .biz-tile.expanded{inset:2vh 3vw}}
@media (prefers-reduced-motion:reduce){#app .biz-tile.expanded,#app .biz-tile-scrim{animation:none}}
#app .deep-grid .xiyou-box:not(#\#){background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-md);padding:12px 14px;margin:12px 0 0}
#app .deep-grid .xiyou-box>.cat-cardhead:not(:has(h3)){display:none}
#app .deep-grid .xiyou-box .xiyou-file-card{margin:0}
#app .deep-grid .xiyou-box .xiyou-error:empty{display:none}

/* V0.37.0：调用独立素材库弹窗——缩略图更小、每张只留“预览 / 调用”一对按钮 */
#app .biz-pick-grid:not(#\#),dialog .biz-pick-grid:not(#\#){grid-template-columns:repeat(auto-fill,minmax(112px,1fr));gap:8px}
.biz-pick-grid .biz-pick-card{padding-bottom:6px}
.biz-pick-grid .biz-pick-card .biz-material-preview{height:76px}
.biz-pick-grid .biz-pick-card .biz-material-name{padding:4px 6px 2px}
.biz-pick-grid .biz-pick-card .biz-material-name strong{display:block;font-size:11px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.biz-pick-grid .biz-pick-card .row-actions{display:flex;justify-content:space-between;align-items:center;gap:4px;padding:0 6px}
.biz-pick-use{position:relative;display:inline-flex;align-items:center;justify-content:center;min-width:52px;height:24px;padding:0 8px;border:1px solid var(--accent,#0071e3);border-radius:999px;color:var(--accent,#0071e3);font-size:12px;cursor:pointer;user-select:none}
.biz-pick-use input{position:absolute;inset:0;opacity:0;margin:0;cursor:pointer;width:100%;height:100%}
.biz-pick-use .pick-on{display:none}
.biz-pick-use:has(input:checked){background:var(--accent,#0071e3);color:#fff}
.biz-pick-use:has(input:checked) .pick-off{display:none}
.biz-pick-use:has(input:checked) .pick-on{display:inline}
.biz-pick-use:has(input:disabled){opacity:.4;cursor:not-allowed}
.biz-pick-use:has(input:focus-visible){outline:2px solid var(--accent,#0071e3);outline-offset:2px}

/* V0.37.0：旺季产品登记——头像更换 */
.plan-avatar-block{display:grid;gap:10px}
.plan-avatar-row{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.plan-avatar-now{display:flex;flex-direction:column;align-items:center;gap:4px}
.plan-avatar-now .plan-thumb,.plan-avatar-now .plan-no-photo{width:72px;height:72px;object-fit:cover;border-radius:12px}
.plan-avatar-ops{display:flex;align-items:center;gap:8px}
.plan-avatar-upload{cursor:pointer}
.plan-avatar-pick{display:grid;gap:6px}
.plan-avatar-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(64px,1fr));gap:8px}
.plan-avatar-opt{padding:0;border:2px solid transparent;border-radius:10px;overflow:hidden;background:var(--surface-2,#f5f5f7);aspect-ratio:1;cursor:pointer}
.plan-avatar-opt img{width:100%;height:100%;object-fit:cover;display:block}
.plan-avatar-opt.on{border-color:var(--accent,#0071e3)}
.plan-avatar-opt:focus-visible{outline:2px solid var(--accent,#0071e3);outline-offset:2px}
.biz-pick-grid+.actions{margin-top:14px}
/* V0.37.0：完成库 Listing / 基础资料卡片头部——标题单独一行，编辑、复制等按钮排在下面，避免标题被挤成两行 */
#app :is(.cat-listing-card,.cat-attributes)>.cat-cardhead:not(#\#){flex-wrap:wrap;row-gap:8px}
#app :is(.cat-listing-card,.cat-attributes)>.cat-cardhead h2:not(#\#){flex:1 1 100%}
#app :is(.cat-listing-card,.cat-attributes)>.cat-cardhead .actions:not(#\#){margin-left:0;flex-wrap:wrap}

/* V0.43.2 登记产品“分析基础属性”：模型刚填入、待人工核对的格子（浅蓝底）；完整深度分析折叠在下方 */
html dialog .own-profile :is(input,textarea).own-ai-filled:not(#\#){background:var(--accent-soft);border-color:var(--accent)}
html dialog .own-basic .own-analyze-actions:not(#\#){display:flex;flex-wrap:wrap;align-items:center;gap:var(--s-2)}
html dialog .own-deep-details:not(#\#){margin-top:var(--s-2)}
html dialog .own-deep-details>summary:not(#\#){cursor:pointer;color:var(--text-3);font-size:var(--fs-sm)}
/* V0.43.2 产品中心「基础资料」「产品使用说明」点开后的大框：框占满视口大部分，文字区跟着变高
   （此前 product-info.css 的 min-height:220px 优先级更高，把展开后的文字区压回小框） */
html body #app .biz-tile.expanded:not(#\#){inset:3vh 5vw}
html body #app .biz-tile.expanded :is(#b-basicInfoText,#b-instructions):not(#\#){min-height:calc(100vh - 6vh - 150px);font-size:16px}
@media (max-width:900px){html body #app .biz-tile.expanded:not(#\#){inset:1.5vh 2vw}}
/* 全部产品页右侧“产品详情预览”：基础资料 / 使用说明各给一个固定高度、可滚动的文字框，长文不再把整页撑得很长 */
html body #app .biz-preview-attribute>p:not(#\#){max-height:38vh;overflow:auto;font-size:var(--fs-sm);color:var(--text-2);line-height:1.7}

/* Shared field validation and counters (work order 92). */
html body #app textarea[aria-invalid="true"], dialog textarea[aria-invalid="true"] { border-color: var(--danger); }
.bp-count { align-self: flex-end; }

/* Work order 95: existing image-result components, using shared tokens only. */
.image-results-v95 .ir-batchbar:not(#\#){position:fixed;left:calc(var(--sidebar-w) + var(--s-4));right:var(--s-4);bottom:var(--s-2);z-index:20;max-height:65vh;overflow:auto;display:block;margin:0}
.image-results-v95 .ir-batchbar .actions:not(#\#){flex-wrap:wrap}
.image-results-v95 .ir-regen-panel:not(#\#){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s-2);padding:var(--s-3);border-bottom:1px solid var(--border);margin-bottom:var(--s-2)}
.image-results-v95 .ir-regen-panel>:is(h3,p,textarea,.biz-reference-grid):not(#\#){grid-column:1/-1}
.image-results-v95.ir-has-selection:not(#\#){padding-bottom:65vh}
.image-results-v95 .ir-error-summary:not(#\#){display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.image-results-v95 .ir-skeleton:not(#\#){min-height:150px;background:var(--surface-2);border-radius:var(--r-md)}
.image-results-v95 .ir-regen-panel input[aria-invalid="true"]:not(#\#){border-color:var(--danger)}
dialog.image-results-v95.ir-detail-dialog:not(#\#){width:min(1100px,95vw);max-width:95vw;max-height:94vh;overflow:auto}
.image-results-v95 .ir-detail-grid:not(#\#){display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--s-4);min-width:0}
.image-results-v95 .ir-detail-grid>div:not(#\#){min-width:0}
.image-results-v95 .ir-detail-image:not(#\#){width:100%;max-height:65vh;object-fit:contain}
.image-results-v95 #ir-detail-prompt:not(#\#){width:100%;height:35vh;min-height:0;overflow:auto;resize:vertical}
.image-results-v95 .biz-source-thumbnails span:not(#\#){display:inline-flex;flex-direction:column}
.image-results-v95 .biz-source-thumbnails img:not(#\#){width:64px;height:64px;object-fit:contain}
@media(max-width:760px){
 .image-results-v95 .ir-batchbar:not(#\#){left:var(--s-2);right:var(--s-2)}
 .image-results-v95 .ir-regen-panel:not(#\#),.image-results-v95 .ir-detail-grid:not(#\#){grid-template-columns:minmax(0,1fr)}
 dialog.image-results-v95.ir-detail-dialog:not(#\#){inset:0;margin:0;width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;border-radius:0}
 .image-results-v95 .ir-detail-image:not(#\#){max-height:30vh}
}
@media(prefers-reduced-motion:reduce){.image-results-v95 :is(.ir-skeleton,.ir-regen-panel):not(#\#){animation:none;transition:none}}
dialog.image-results-v95.ir-detail-dialog[open]:not(#\#){display:flex;flex-direction:column}
.image-results-v95.ir-detail-dialog>.modalhead:not(#\#){flex:0 0 auto}
.image-results-v95.ir-detail-dialog>.modalbody:not(#\#){flex:1;min-height:0;max-height:none;overflow:auto}
.image-results-v95 :is(label[for="ir-detail-extra"],#ir-detail-extra):not(#\#){display:block;width:100%}

/* 工单97 阶段A · DS-1.3：原技能 minimal 默认引擎；中性深色与可访问性适配见验收记录。 */
:root{--fs-display:36px;--fs-hero:28px;--fs-h4:18px;--tracking-display:-.02em;--tracking-hero:-.01em;--glow-a:transparent;--glow-b:transparent;--glow-c:transparent;--ease-in:cubic-bezier(.4,0,1,1);--dur-page:350ms}
/* 共享层仅修正字号换值后布局适应，不改任何页面模板。 */
html #app :is(.pagehead h1,.pagehead h2){letter-spacing:var(--tracking-display);text-wrap:balance;overflow-wrap:anywhere}
html #app :is(button,input,select,textarea){max-width:100%;min-width:0}
@media(prefers-reduced-motion:reduce){:root{--dur-page:1ms}}
:root[data-motion="reduce"]{--dur-page:1ms}

/* DS-1.3代表页修正：旧产品头SKU文字曾固定蓝色，深色对比不足。 */
html body #app .cat-preview-identity p:not(#\#){color:var(--text-2)}

/* 工单97 阶段B · AI图片生产V2.0；只用DS-1.3设计变量。 */
.image-page-v3 #biz-image-form:not(#\#){display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--s-4);align-items:start}
.image-page-v3 #biz-image-form> :not(#\#){grid-column:1/-1;min-width:0}
.image-page-v3 #biz-image-form>.field:nth-child(1):not(#\#){grid-row:1;grid-column:1}
.image-page-v3 #biz-image-form>.field:nth-child(2):not(#\#){grid-row:1;grid-column:2}
.image-page-v3 #biz-image-form>.field:nth-child(3):not(#\#){grid-row:1;grid-column:3}
.image-page-v3 #biz-image-form>.image-brand:not(#\#){grid-row:1;grid-column:4}
.image-page-v3 .image-brand :is(p,label):not(#\#){margin:0 0 var(--s-2)}
.image-page-v3 .image-spec:not(#\#){border:1px solid var(--border);border-radius:var(--r-lg);padding:var(--s-4);background:var(--surface-2)}
.image-page-v3 .image-spec>h3:not(#\#){margin:0 0 var(--s-4);font-size:var(--fs-lg)}
.image-page-v3 .image-spec .formgrid:not(#\#){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s-4)}
.image-page-v3 .image-spec .biz-counts:not(#\#){display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) minmax(120px,1fr);gap:var(--s-3);align-items:end}
.image-page-v3 .image-spec .biz-counts>h3:not(#\#){grid-column:1/-1;font-size:var(--fs-sm)}
.image-page-v3 .image-spec .biz-counts>label:not(#\#){display:flex;flex-direction:column;align-items:stretch;gap:var(--s-2)}
.image-page-v3 .image-spec .biz-counts>label input:not(#\#){width:100%;font-size:var(--fs-lg);text-align:center}
.image-page-v3 .image-spec .biz-counts>p:not(#\#){font-size:var(--fs-xl);font-weight:var(--fw-bold);color:var(--text);text-align:center;margin:0}
.image-page-v3 .prompt-tiles:not(#\#){display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s-4);align-items:start}
.image-page-v3 .prompt-tile:not(#\#){margin:0;min-width:0;padding:var(--s-4)}
.image-page-v3 .prompt-tile>h3:not(#\#){font-size:var(--fs-lg);overflow-wrap:anywhere}
.image-page-v3 .prompt-error:not(#\#){border-left:var(--s-1) solid var(--warning)}
.image-page-v3 .prompt-tile details>summary:not(#\#){list-style:none}
.image-page-v3 .prompt-tile details>summary::-webkit-details-marker{display:none}
.image-page-v3 .prompt-preview:not(#\#){cursor:pointer;white-space:pre-wrap;overflow-wrap:anywhere;transition:background-color var(--dur-hover) var(--ease-out),box-shadow var(--dur-hover) var(--ease-out)}
.image-page-v3 textarea.prompt-preview:not(#\#){height:calc(3 * var(--lh) * var(--fs-sm) + 2 * var(--s-3));min-height:0;resize:none;overflow:hidden;font-size:var(--fs-sm);line-height:var(--lh);caret-color:transparent}
.image-page-v3 .prompt-preview:hover:not(#\#){background:var(--surface-hover);box-shadow:var(--shadow-2)}
.image-page-v3.prompt-tooltip:not(#\#){position:fixed;z-index:100;overflow:auto;pointer-events:none;padding:var(--s-4);white-space:pre-wrap;overflow-wrap:anywhere;background:var(--surface);color:var(--text);border:1px solid var(--border-strong);border-radius:var(--r-md);box-shadow:var(--shadow-3);font:var(--fs-sm)/var(--lh) var(--font)}
.image-page-v3.prompt-modal:not(#\#){width:min(900px,95vw);max-height:94dvh}
.image-page-v3.prompt-modal #pm-text:not(#\#){width:100%;min-height:40dvh;max-height:55dvh;overflow:auto;font:var(--fs-md)/var(--lh) var(--font)}
.image-page-v3 .image-output-table:not(#\#){width:100%;min-width:760px;table-layout:fixed}
.image-page-v3 .image-output-table :is(th,td):not(#\#){white-space:normal;overflow-wrap:anywhere;vertical-align:top}
.image-page-v3 .image-output-table :is(th,td):nth-child(1):not(#\#){width:12%}
.image-page-v3 .image-output-table :is(th,td):nth-child(2):not(#\#){width:20%}
.image-page-v3 .image-output-table :is(th,td):nth-child(3):not(#\#){width:34%}
.image-page-v3 .image-output-table .biz-source-thumbnails:not(#\#){max-width:100%;flex-wrap:wrap}
.image-page-v3 .image-output-table .biz-source-thumbnails img:not(#\#){max-width:64px}
.image-page-v3 .biz-result-gallery:not(#\#){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s-5)}
.image-page-v3 .biz-image-result:not(#\#){display:flex;flex-direction:column;gap:var(--s-3);padding:var(--s-4);position:relative;min-width:0}
.image-page-v3 .biz-image-result> :not(#\#){order:6}
.image-page-v3 .biz-image-result>.biz-material-name:not(#\#){order:0;position:static}
.image-page-v3 .biz-image-result>:is(.biz-result-img,.cat-empty):not(#\#){order:1}
.image-page-v3 .biz-image-result>.biz-result-where:not(#\#){order:2;position:static;align-self:start}
.image-page-v3 .biz-image-result>.result-purpose:not(#\#){order:3}
.image-page-v3 .biz-image-result>.biz-result-pick:not(#\#){order:4;position:static;align-self:start}
.image-page-v3 .biz-result-img:not(#\#){width:100%;height:auto;aspect-ratio:1;position:relative;overflow:hidden;border-radius:var(--r-md);background:var(--surface-2)}
.image-page-v3 .biz-result-img img:not(#\#){width:100%;height:100%;object-fit:contain}
.image-page-v3 .biz-result-img::after{content:'点击放大 · 查看/修改提示词';position:absolute;inset:0;display:grid;place-content:center;padding:var(--s-4);color:var(--on-accent);background:var(--scrim);opacity:0;transition:opacity var(--dur-hover) var(--ease-out);pointer-events:none}
@media(hover:hover){.image-page-v3 .biz-result-img:hover::after{opacity:1}}
.image-page-v3 .result-failed:not(#\#){border:1px dashed var(--danger)}
.image-page-v3 .result-deleted:not(#\#){background:var(--surface-3)}
.image-page-v3 .result-purpose:not(#\#){display:flex;gap:var(--s-1);flex-wrap:wrap;align-items:center}
.image-page-v3 .result-purpose button:not(#\#){font-size:var(--fs-xs);padding:var(--s-2);min-height:var(--control-h-sm)}
.image-page-v3 .result-purpose-error:not(#\#){width:100%;margin:0;white-space:pre-wrap}
.image-page-v3.ir-detail-dialog .ir-detail-grid:not(#\#){display:flex;flex-direction:column;gap:var(--s-4)}
.image-page-v3.ir-detail-dialog .ir-detail-grid>div:not(#\#){display:contents}
.image-page-v3.ir-detail-dialog .ir-detail-grid h3:not(#\#){order:-10;margin:0}
.image-page-v3.ir-detail-dialog .ir-detail-grid>div:nth-child(2)>p:first-of-type:not(#\#){order:-9;margin:0}
.image-page-v3.ir-detail-dialog .ir-detail-image:not(#\#){order:-8;width:100%;height:auto;max-height:60dvh;object-fit:contain;background:var(--surface-2)}
.image-page-v3.ir-detail-dialog .ir-detail-grid>div:first-child>.actions:not(#\#){order:-7}
.image-page-v3.ir-detail-dialog .biz-source-thumbnails:not(#\#){order:-6}
.image-page-v3.ir-detail-dialog label[for="ir-detail-prompt"]:not(#\#){order:-5}
.image-page-v3.ir-detail-dialog #ir-detail-prompt:not(#\#){order:-4;min-height:30dvh}
.image-page-v3.ir-detail-dialog #ir-detail-count:not(#\#){order:-3}
.image-page-v3.ir-detail-dialog .ir-detail-grid>div:nth-child(2)>.actions:not(#\#){order:-2}
.image-page-v3.ir-detail-dialog .rd-purpose-state:not(#\#){color:var(--text-2)}
@media(max-width:900px){
 .image-page-v3 #biz-image-form:not(#\#){display:block}
 .image-page-v3 .prompt-tiles:not(#\#),.image-page-v3 .biz-result-gallery:not(#\#){grid-template-columns:minmax(0,1fr)}
 .image-page-v3 .image-spec .biz-counts:not(#\#){grid-template-columns:repeat(2,minmax(0,1fr))}
 .image-page-v3 .image-spec .biz-counts>p:not(#\#){grid-column:1/-1}
 .image-page-v3 .prompt-preview:not(#\#){touch-action:manipulation}
 .image-page-v3.prompt-tooltip:not(#\#){display:none}
}
@media(max-width:760px){.image-page-v3.prompt-modal:not(#\#){width:100vw;height:100dvh;max-width:100vw;max-height:100dvh;margin:0;border-radius:0}.image-page-v3 .image-spec .formgrid:not(#\#){grid-template-columns:minmax(0,1fr)}}
@media(prefers-reduced-motion:reduce){.image-page-v3 :not(#\#){animation:none}}
/* 97可读性修正：深色下载链接；浮层说明在浅色产品图上仍有实底对比。 */
.image-page-v3.ir-detail-dialog a:not(#\#){color:var(--accent-text)}
.image-page-v3 .biz-result-img::before{content:'';position:absolute;inset:0;background:var(--scrim);opacity:0;transition:opacity var(--dur-hover) var(--ease-out);pointer-events:none}
.image-page-v3 .biz-result-img::after{inset:auto var(--s-4) var(--s-4);padding:var(--s-3);background:var(--accent);color:var(--on-accent);border-radius:var(--r-sm)}
@media(hover:hover){.image-page-v3 .biz-result-img:hover::before{opacity:1}}
/* 97三行预览占满卡片；触屏反馈由共享按下/焦点态负责，避免系统蓝色点击影留在新弹窗上。 */
html body #app .image-page-v3 textarea.prompt-preview:not(#\#){width:100%;box-sizing:border-box;padding:var(--s-3);font-size:var(--fs-sm);line-height:var(--lh);height:calc(3 * var(--lh) * var(--fs-sm) + 2 * var(--s-3) + 2px);min-height:0;overflow:hidden;resize:none}
.image-page-v3 :is(button,a,textarea):not(#\#){-webkit-tap-highlight-color:transparent}
/* textarea的滚动视口会把底部padding露作第四行，预览用零纵向padding保证只有三行。 */
html body #app .image-page-v3 textarea.prompt-preview:not(#\#){padding:0 var(--s-3);height:calc(3 * var(--lh) * var(--fs-sm) + 2px)}
/* 工单96第一部分：共享补货编辑器及入口。只用现行 DS-1.3，不作用于图片页。 */
.replenish-v96:not(#\#){min-width:0;color:var(--text);font-size:var(--fs-md)}
.replenish-v96.rp-layout:not(#\#){display:grid;grid-template-columns:minmax(240px,1fr) minmax(0,3fr);gap:var(--s-4);align-items:start}
.replenish-v96:not(#\#) .rp-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s-4)}
.replenish-v96:not(#\#) .rp-editor,.replenish-v96.rp-editor:not(#\#){background:var(--surface);border:1px solid var(--border);border-radius:var(--r-xl);padding:var(--s-4);min-width:0}
.replenish-v96:not(#\#) section,.replenish-v96:not(#\#) .rp-summary{margin-block:var(--s-4);min-width:0}
.replenish-v96:not(#\#) fieldset{border:0;padding:0;min-width:0;margin:0}
.replenish-v96:not(#\#) input,.replenish-v96:not(#\#) select{max-width:100%;min-width:0;box-sizing:border-box}
.replenish-v96:not(#\#) .table-wrap{max-width:100%;overflow:auto}
.replenish-v96:not(#\#) .table-wrap input{min-width:112px}
.replenish-v96:not(#\#) th,.replenish-v96:not(#\#) td{white-space:nowrap}
.replenish-v96:not(#\#) .rp-actual{border-inline-start:1px solid var(--border);background:var(--surface-2)}
.replenish-v96:not(#\#) .rp-error,.replenish-v96:not(#\#) .rp-errors{color:var(--danger)}
.replenish-v96:not(#\#) [aria-invalid=true]{border-color:var(--danger)}
.replenish-v96:not(#\#) .rp-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s-4)}
.replenish-v96:not(#\#) .rp-stats strong,.replenish-v96:not(#\#) .rp-stats span{display:block;overflow-wrap:anywhere}
.replenish-v96:not(#\#) .rp-stats strong{font-size:var(--fs-xl);font-variant-numeric:tabular-nums}
.replenish-v96:not(#\#) .rp-chosen{background:var(--surface-2);font-weight:600}
.replenish-v96:not(#\#) svg{display:block;width:100%;height:auto}
.replenish-v96:not(#\#) svg text{fill:var(--text);font-size:var(--fs-sm)}
.replenish-v96:not(#\#) polyline{fill:none;stroke-width:2}
.replenish-v96:not(#\#) .rp-inventory-line{stroke:var(--accent)}
.replenish-v96:not(#\#) .rp-demand-line{stroke:var(--text-2);stroke-dasharray:2 4}
.replenish-v96:not(#\#) .rp-safety-line{stroke:var(--danger);stroke-dasharray:8 4}
.replenish-v96:not(#\#) .rp-arrival{fill:var(--accent)}
.replenish-v96:not(#\#) .rp-skeleton{background:var(--surface-2);border-radius:var(--r-md);padding:var(--s-4)}
.replenish-v96:not(#\#) button{white-space:normal;overflow-wrap:anywhere}
.replenish-v96:not(#\#) .rp-summary{padding-block:var(--s-3);border-block-end:1px solid var(--border)}
.replenish-v96:not(#\#) .rp-update:not(:empty){border:1px solid var(--border);padding:var(--s-3)}
@media(max-width:1100px){.replenish-v96.rp-layout:not(#\#){grid-template-columns:minmax(0,1fr)}}
@media(max-width:600px){.replenish-v96:not(#\#) .rp-grid,.replenish-v96:not(#\#) .rp-stats{grid-template-columns:minmax(0,1fr)}dialog.replenish-v96:not(#\#){width:100%;max-width:100%;height:100%;max-height:100%;margin:0;border-radius:0}}
dialog.replenish-v96[open]:not(#\#){display:flex;flex-direction:column;box-sizing:border-box}
dialog.replenish-v96:not(#\#)>.modalbody{max-height:none;min-height:0;flex:1;overflow:auto;display:block}
dialog.replenish-v96:not(#\#) [data-rp-form]{display:block;flex:none;min-height:auto}
.replenish-v96:not(#\#) label{display:block}
.replenish-v96:not(#\#) .rp-editor>label,.replenish-v96.rp-editor:not(#\#)>label{margin-block:var(--s-3)}
@media(max-width:600px){dialog.replenish-v96:not(#\#){inset:0;height:100dvh}}
.replenish-v96:not(#\#) h2{font-size:var(--fs-xl);line-height:var(--lh-tight)}
.replenish-v96:not(#\#) h3{font-size:var(--fs-lg);line-height:var(--lh-tight)}

/* 工单99 / 共享组件DS-1.4：取值沿用DS-1.3；不影响图片页与其它模块。 */
.replenish-v96:not(#\#) { min-width:0; color:var(--text); }
.replenish-v96:not(#\#) .rp-core { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:var(--s-4); margin-block:var(--s-5); padding:var(--s-5); border:1px solid var(--border); border-radius:var(--r-lg); background:var(--surface); }
.replenish-v96:not(#\#) .rp-core span { display:block; color:var(--text-3); font-size:var(--fs-sm); margin-bottom:var(--s-2); }
.replenish-v96:not(#\#) .rp-core strong { display:block; font-size:var(--fs-hero); font-weight:600; letter-spacing:var(--tracking-hero); line-height:1.2; overflow-wrap:anywhere; font-variant-numeric:tabular-nums; }
.replenish-v96:not(#\#) .rp-core .rp-notice { grid-column:1/-1; margin:0; }
.replenish-v96:not(#\#) .rp-group { padding:var(--s-5); background:var(--surface); border:1px solid var(--border); border-radius:var(--r-lg); margin-block:var(--s-4); }
.replenish-v96:not(#\#) .rp-group h3 { font-size:var(--fs-lg); margin:0 0 var(--s-4); font-weight:600; }
.replenish-v96:not(#\#) .rp-grid { align-items:start; gap:var(--s-4); }
.replenish-v96:not(#\#) .rp-field-note,.replenish-v96:not(#\#) .rp-help { display:block; font-size:var(--fs-sm); color:var(--text-3); font-weight:400; line-height:1.5; }
.replenish-v96:not(#\#) .rp-source { display:inline-block; background:var(--surface-2); border:1px solid var(--border); padding:var(--s-1) var(--s-2); border-radius:var(--r-xs); font-size:var(--fs-xs); margin-block:var(--s-1); color:var(--text-2); }
.replenish-v96:not(#\#) .rp-field-note button { margin:var(--s-1); min-height:var(--control-h-sm); font-size:var(--fs-xs); }
.replenish-v96:not(#\#) .rp-notice,.replenish-v96:not(#\#) .rp-comparison,.replenish-v96:not(#\#) .rp-notice-list { padding:var(--s-4); border-inline-start:var(--s-1) solid var(--warning); background:var(--warning-soft); color:var(--text); border-radius:var(--r-sm); }
.replenish-v96:not(#\#) .rp-assumptions { border-inline-start:var(--s-1) solid var(--border-strong); padding:var(--s-4) var(--s-5); background:var(--surface-2); }
.replenish-v96:not(#\#) .rp-stats { display:grid; grid-template-columns:repeat(auto-fit,minmax(140px,1fr)); gap:var(--s-3); }
.replenish-v96:not(#\#) .rp-stats strong { font-size:var(--fs-xl); font-variant-numeric:tabular-nums; }
.replenish-v96:not(#\#) .rp-summary { border:1px solid var(--border); padding:var(--s-4); margin-block:var(--s-3); border-radius:var(--r-md); background:var(--surface); }
.replenish-v96:not(#\#) .rp-summary h3 { margin-top:0; }
.replenish-v96:not(#\#) .table-wrap { overflow:auto; max-width:100%; max-height:70vh; overscroll-behavior:contain; }
.replenish-v96:not(#\#) th { position:sticky; top:0; background:var(--surface-2); z-index:1; }
.replenish-v96:not(#\#) td { font-variant-numeric:tabular-nums; text-align:right; }
.replenish-v96:not(#\#) td:first-child { text-align:left; }
.replenish-v96:not(#\#) tbody tr:hover { background:var(--surface-hover); }
.replenish-v96:not(#\#) .rp-total { font-weight:600; background:var(--surface-2); }
.replenish-v96:not(#\#) .rp-difference { color:var(--warning); display:block; }
.replenish-v96:not(#\#) .rp-timeline ol { list-style:none; padding:0; margin:var(--s-4) 0; }
.replenish-v96:not(#\#) .rp-timeline li { display:grid; grid-template-columns:110px 1fr; gap:var(--s-3); padding:var(--s-3); border-inline-start:2px solid var(--border-strong); border-bottom:1px solid var(--border); }
.replenish-v96:not(#\#) time { color:var(--text-3); font-variant-numeric:tabular-nums; }
.replenish-v96:not(#\#) aside.card article { margin-block:var(--s-3); padding-block:var(--s-3); border-bottom:1px solid var(--border); }
@media(max-width:760px){.replenish-v96:not(#\#) .rp-group,.replenish-v96:not(#\#) .rp-core { padding:var(--s-3); }.replenish-v96:not(#\#) .rp-core { grid-template-columns:1fr; }.replenish-v96:not(#\#) .rp-timeline li { grid-template-columns:1fr; }.replenish-v96:not(#\#) .rp-grid { grid-template-columns:1fr; }}

.replenish-v96:not(#\#) .rp-summary button { max-width:100%; white-space:normal; overflow-wrap:anywhere; text-align:left; }
.replenish-v96:not(#\#) .rp-summary,.replenish-v96:not(#\#) details { min-width:0; max-width:100%; }
.replenish-v96:not(#\#) details:not([open]) { overflow:clip; }
.replenish-v96.rp-layout:not(#\#)>aside.card { padding:var(--s-4); }
.replenish-v96.rp-editor:not(#\#)>form>fieldset { border:0; padding:0; min-width:0; }
.replenish-v96.rp-editor:not(#\#)>h2 { margin-top:0; text-wrap:balance; }
.replenish-v96:not(#\#) .rp-grid label:has([name="batchFixedCost"]) { grid-column:1/-1; }

/* 工单96第二部分：共享图片悬停层；仅使用DS-1.3语义变量。 */
.image-zoom-pane:not(#\#) { position:fixed; inset:auto; margin:0; box-sizing:border-box; max-width:min(520px,42vw); max-height:70vh; padding:var(--s-3); border:1px solid var(--border); border-radius:var(--r-xl); background:var(--surface); color:var(--text); box-shadow:var(--shadow-3); pointer-events:none; overflow:hidden; font:var(--fs-sm)/1.5 var(--font); }
.image-zoom-pane:not(#\#) img { display:block; width:100%; height:auto; max-height:calc(70vh - 64px); object-fit:contain; }
.image-zoom-pane:not(#\#) [hidden] { display:none; }
.image-zoom-pane:not(#\#)>div { display:flex; justify-content:space-between; gap:var(--s-3); padding-top:var(--s-2); color:var(--text-2); }
.image-zoom-pane:not(#\#)>div>span:first-child { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.image-zoom-pane:not(#\#)>div>span:last-child { flex-shrink:0; }
.image-zoom-pane:not(#\#)>p { margin:var(--s-4); text-align:center; }
.cat-lightbox:not(#\#):has(.lb-info) { background:var(--surface-2); color:var(--text); grid-template-columns:56px minmax(0,1fr) 56px minmax(240px,28vw); grid-template-rows:auto minmax(0,1fr) auto; overflow:hidden; }
.cat-lightbox:not(#\#):has(.lb-info) .lb-top { grid-column:1/-1; background:var(--surface); color:var(--text); border:1px solid var(--border); }
.cat-lightbox:not(#\#):has(.lb-info) .lb-stage { grid-column:2; min-width:0; overflow:hidden; }
.cat-lightbox:not(#\#):has(.lb-info) .lb-frame { max-width:100%; max-height:calc(100vh - 200px); }
.cat-lightbox:not(#\#):has(.lb-info) .lb-next { grid-column:3; grid-row:2; }
.cat-lightbox:not(#\#):has(.lb-info) .lb-hint { grid-column:1/4; max-width:100%; box-sizing:border-box; white-space:normal; background:var(--surface); color:var(--text-2); }
.cat-lightbox:not(#\#):has(.lb-info) .lb-btn,.cat-lightbox:not(#\#):has(.lb-info) .lb-nav { color:var(--text); background:var(--surface); border:1px solid var(--border); border-radius:var(--r-sm); }
.cat-lightbox:not(#\#) .lb-info { grid-column:4; grid-row:2/4; align-self:stretch; overflow:auto; min-width:0; padding:var(--s-4); border-left:1px solid var(--border); background:var(--surface); color:var(--text); font-size:var(--fs-md); }
.cat-lightbox:not(#\#) .lb-info h3 { font-size:var(--fs-lg); margin-top:0; }
.cat-lightbox:not(#\#) .lb-info dl { margin:0 0 var(--s-4); }
.cat-lightbox:not(#\#) .lb-info dl>div { margin-block:var(--s-2); overflow-wrap:anywhere; }
.cat-lightbox:not(#\#) .lb-info dt { color:var(--text-3); font-size:var(--fs-sm); }
.cat-lightbox:not(#\#) .lb-info dd { margin:0; white-space:pre-wrap; }
.cat-lightbox:not(#\#) .lb-info label { display:grid; gap:var(--s-2); margin-bottom:var(--s-3); }
.cat-lightbox:not(#\#) .lb-info textarea,.cat-lightbox:not(#\#) .lb-info select { width:100%; box-sizing:border-box; }
.cat-lightbox:not(#\#) .lb-info-error { color:var(--danger); }
.cat-lightbox:not(#\#) .lb-unsaved { padding:var(--s-3); border:1px solid var(--warning); border-radius:var(--r-md); background:var(--warning-soft); }
.cat-lightbox:not(#\#) .lb-unsaved[hidden] { display:none; }
@media(hover:none),(pointer:coarse){.image-zoom-pane:not(#\#){display:none;}}
@media(max-width:760px){
 .cat-lightbox:not(#\#):has(.lb-info){grid-template-columns:40px minmax(0,1fr) 40px;grid-template-rows:auto minmax(160px,40vh) auto 1fr;}
 .cat-lightbox:not(#\#):has(.lb-info) .lb-top{flex-wrap:wrap;margin:0;padding:var(--s-2);gap:var(--s-2);border-radius:0;}
 .cat-lightbox:not(#\#):has(.lb-info) .lb-name{flex-basis:100%;}
 .cat-lightbox:not(#\#):has(.lb-info) .lb-nav{width:32px;font-size:var(--fs-xl);}
 .cat-lightbox:not(#\#):has(.lb-info) .lb-frame{max-height:38vh;}
 .cat-lightbox:not(#\#) .lb-info{grid-column:1/-1;grid-row:4;border-left:0;border-top:1px solid var(--border);}
}
@media(prefers-reduced-motion:reduce){.image-zoom-pane:not(#\#),.cat-lightbox:not(#\#) .lb-info{animation:none;transition:none;}}

/* 工单101 · 停点0答复五.6：249行回退后的窄屏防退化，仅排版。 */
@media(max-width:760px){
 .page-products:not(#\#) .biz-generation-links{display:flex;gap:var(--s-2);flex-wrap:wrap;}
 .page-products:not(#\#) .biz-generation-links>*{flex:1 1 140px;min-width:0;white-space:normal;}
}

/* 工单101 · 阶段1 · DS-1.5。pilot.css为视觉来源，停点0答复覆盖色值和时长例外。 */
:root{
 --font:-apple-system,"SF Pro","PingFang SC","Helvetica Neue","Microsoft YaHei",sans-serif;
 --fs-xs:12px;--fs-sm:14px;--fs-md:17px;--fs-lg:21px;--fs-xl:28px;--fs-2xl:40px;
 --lh:1.47;--lh-tight:1.1;--fw-bold:600;
 --r-xs:8px;--r-sm:12px;--r-md:12px;--r-lg:18px;--r-xl:18px;--r-pill:980px;
 --control-h:44px;--control-h-sm:40px;--sidebar-w:232px;--topbar-h:52px;
 --bg:#FFFFFF;--surface:#F5F5F7;--surface-2:#F5F5F7;--surface-3:#F5F5F7;--surface-hover:#EBEBED;--surface-selected:#E8E8ED;
 --text:#1D1D1F;--text-2:#424245;--text-3:#6E6E73;--text-placeholder:#86868B;
 --accent:var(--brand,#0071E3);--accent-hover:#0066CC;--accent-press:#005BB5;--accent-text:#0066CC;--on-accent:#FFFFFF;
 --accent-soft:rgba(0,113,227,.08);--accent-ring:#0071E3;
 --danger:#D70015;--danger-soft:rgba(255,59,48,.10);--success:#1A7F37;--success-soft:rgba(52,199,89,.14);--warning:#B25000;--warning-soft:rgba(255,159,10,.14);
 --border:rgba(0,0,0,.10);--border-strong:rgba(0,0,0,.16);--divider:rgba(0,0,0,.08);
 --glass:rgba(255,255,255,.8);--glass-strong:#FFFFFF;--glass-blur:saturate(180%) blur(20px);
 --shadow-1:none;--shadow-2:2px 4px 12px rgba(0,0,0,.08);--shadow-3:0 20px 60px rgba(0,0,0,.28);--shadow-lift:var(--shadow-2);--scrim:rgba(0,0,0,.32);
 --dur-press:120ms;--dur-hover:150ms;--dur-1:200ms;--dur-2:200ms;--dur-3:240ms;--dur-page:200ms;
 --ease-out:cubic-bezier(0,0,.2,1);--ease-in-out:cubic-bezier(.4,0,.2,1);--ease-spring:cubic-bezier(.4,0,.2,1);--press-scale:.97;--page-shift:0px;
 --ap-field:#FFFFFF;--ap-muted:rgba(0,0,0,.06);--ap-overlay:rgba(12,18,28,.42);--ap-result-bg:#1D1D1F;--ap-gallery-gap:8px;--ap-gallery-radius:12px;
}
:root[data-theme="dark"]{
 --bg:#000000;--surface:#1C1C1E;--surface-2:#1C1C1E;--surface-3:#2C2C2E;--surface-hover:#2C2C2E;--surface-selected:#2C2C2E;
 --text:#F5F5F7;--text-2:#D2D2D7;--text-3:#A1A1A6;--text-placeholder:#86868B;
 --accent:var(--brand,#0071E3);--accent-hover:#0066CC;--accent-press:#005BB5;--accent-text:#2997FF;--accent-soft:rgba(41,151,255,.14);--accent-ring:#2997FF;
 --danger:#FF453A;--danger-soft:rgba(255,69,58,.16);--success:#30D158;--success-soft:rgba(48,209,88,.16);--warning:#FF9F0A;--warning-soft:rgba(255,159,10,.16);
 --border:rgba(255,255,255,.12);--border-strong:rgba(255,255,255,.2);--divider:rgba(255,255,255,.12);
 --glass:rgba(0,0,0,.72);--glass-strong:#1C1C1E;--shadow-2:2px 4px 12px rgba(0,0,0,.4);--shadow-3:0 20px 60px rgba(0,0,0,.6);
 --ap-field:#2C2C2E;--ap-muted:rgba(255,255,255,.10);--ap-result-bg:#2C2C2E;
}
/* 基础组件：保留原有控件、顺序、主题机制；新页面骨架按后续阶段逐批迁移。 */
html body #app:not(#\#) :is(.card,.cat-card,.selection-card,.studio-card,.planning-card,.team-card,.stat,.hero){border:0;border-radius:var(--r-lg);box-shadow:none;background:var(--surface);}
html body #app:not(#\#) :is(.cardhead,.cat-cardhead,.studio-cardhead,.planning-cardhead,.team-cardhead){border:0;background:transparent;padding:0;margin-bottom:24px;gap:16px;}
html body #app:not(#\#) :is(.card h2,.cat-card h2,.studio-card h2,.planning-card h2,.team-card h2){font-size:21px;font-weight:600;line-height:1.3;}
html body #app:not(#\#) :is(button,.button-link),html body dialog:not(#\#) :is(button,.button-link){border:0;border-radius:980px;background:var(--ap-muted);color:var(--text);min-height:40px;padding:0 20px;font-size:15px;font-weight:400;box-shadow:none;transition:background-color 200ms var(--ease-in-out),transform 120ms var(--ease-in-out),opacity 150ms var(--ease-out);}
html body #app:not(#\#) :is(button,.button-link):not(:disabled):hover,html body dialog:not(#\#) :is(button,.button-link):not(:disabled):hover{background:var(--surface-selected);}
html body #app:not(#\#) :is(button.primary,.button-link.primary),html body dialog:not(#\#) button.primary{background:var(--accent);color:var(--on-accent);}
html body #app:not(#\#) :is(button.primary,.button-link.primary):not(:disabled):hover,html body dialog:not(#\#) button.primary:not(:disabled):hover{background:var(--accent-hover);}
html body #app:not(#\#) button.primary:not(:disabled):active,html body dialog:not(#\#) button.primary:not(:disabled):active{background:var(--accent-press);}
html body #app:not(#\#) :is(.linkbtn,.ghost),html body dialog:not(#\#) :is(.linkbtn,.ghost){background:transparent;color:var(--accent-text);padding:0 8px;min-height:32px;}
html body #app:not(#\#) :is(.linkbtn,.ghost):not(:disabled):hover,html body dialog:not(#\#) :is(.linkbtn,.ghost):not(:disabled):hover{background:transparent;text-decoration:underline;}
html body #app:not(#\#) :is(button.danger,.linkbtn.danger),html body dialog:not(#\#) :is(button.danger,.linkbtn.danger){background:transparent;color:var(--danger);}
html body #app:not(#\#) :is(button,.button-link):focus-visible,html body dialog:not(#\#) :is(button,.button-link):focus-visible{outline:2px solid var(--accent-ring);outline-offset:2px;box-shadow:none;}
html body #app:not(#\#) button:disabled,html body dialog:not(#\#) button:disabled{opacity:.4;cursor:not-allowed;}
html body #app:not(#\#) :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=file]),select,textarea),html body dialog:not(#\#) :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=file]),select,textarea){border:0;border-radius:12px;background:var(--ap-field);color:var(--text);box-shadow:none;min-width:0;max-width:100%;font-size:15px;transition:background-color 200ms var(--ease-in-out);}
html body #app:not(#\#) :is(input,select){min-height:44px;}
html body #app:not(#\#) :is(input,select,textarea):focus,html body dialog:not(#\#) :is(input,select,textarea):focus{outline:2px solid var(--accent-ring);outline-offset:0;box-shadow:none;}
html body #app:not(#\#) :is(.badge,.tag){border:0;border-radius:0;background:transparent;color:var(--text-3);font-weight:400;}
html body #app:not(#\#) :is(.badge,.tag)::before{content:"";display:inline-block;width:7px;height:7px;margin-right:6px;border-radius:50%;background:currentColor;}
html body #app:not(#\#) :is(.badge.orange,.tag.warning){color:var(--warning);}
html body #app:not(#\#) :is(.badge.green,.tag.success){color:var(--success);}
html body #app:not(#\#) :is(.badge.red,.tag.danger){color:var(--danger);}
html body #app:not(#\#) :is(th,td){border-left:0;border-right:0;background:transparent;}
html body #app:not(#\#) th{font-size:14px;color:var(--text-3);font-weight:600;}
html body #app:not(#\#) tbody tr:nth-child(even){background:transparent;}
html body #app:not(#\#) tbody tr:hover{background:var(--surface-hover);}
html body #app:not(#\#) .note{border:0;border-radius:14px;background:var(--ap-muted);padding:16px 20px;}
html body dialog:not(#\#):not(.cat-lightbox){border:0;border-radius:18px;background:var(--glass-strong);box-shadow:var(--shadow-3);}
html body dialog:not(#\#)::backdrop{background:var(--scrim);backdrop-filter:blur(4px);}
/* 产品中心：按Main画板的280px侧列、24px间隔、16px堆叠，原业务内容全部保留。 */
html body #app .page-products:not(#\#):not(#\#){max-width:1280px;margin:0;padding:64px 56px 120px;min-width:0;}
html body #app .page-products:not(#\#):not(#\#) .pagehead{margin:0 0 48px;gap:24px;align-items:flex-end;}
html body #app .page-products:not(#\#):not(#\#) .pagehead h1{font-size:40px;font-weight:600;line-height:1.1;letter-spacing:-.01em;margin:0;}
html body #app .page-products:not(#\#):not(#\#) .pagehead p{font-size:17px;line-height:1.47;color:var(--text-3);margin-top:12px;}
html body #app .page-products:not(#\#):not(#\#) .pagehead .actions{display:flex;flex-wrap:wrap;gap:8px;}
html body #app .page-products:not(#\#):not(#\#) .pagehead [data-biz="product-import"],html body #app .page-products:not(#\#):not(#\#) .pagehead [form="biz-product-form"]{background:var(--ap-muted);color:var(--text);}
html body #app .page-products:not(#\#):not(#\#) .pagehead [data-biz="product-new"]{background:var(--accent);color:var(--on-accent);}
html body #app .page-products:not(#\#):not(#\#) [data-biz="product-all"]{background:transparent;color:var(--accent-text);}
html body #app .page-products:not(#\#):not(#\#) .biz-product-layout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:24px;align-items:start;}
html body #app .page-products:not(#\#):not(#\#) .biz-product-layout>div{display:flex;flex-direction:column;gap:16px;min-width:0;}
html body #app .page-products:not(#\#):not(#\#) .cat-card{padding:32px;margin:0;min-width:0;}
html body #app .page-products:not(#\#):not(#\#) .biz-product-sidebar{position:static;min-height:0;}
html body #app .page-products:not(#\#):not(#\#) .biz-product-sidebar .cat-product-search{width:100%;height:44px;}
html body #app .page-products:not(#\#):not(#\#) .biz-product-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:12px 0;}
html body #app .page-products:not(#\#):not(#\#) .cat-product-list{display:flex;flex-direction:column;gap:12px;max-height:440px;overflow:auto;}
html body #app .page-products:not(#\#):not(#\#) .cat-product-item{display:flex;align-items:center;gap:12px;border:0;border-radius:14px;background:var(--ap-field);padding:12px 14px;white-space:normal;text-align:left;min-width:0;width:100%;}
html body #app .page-products:not(#\#):not(#\#) .cat-product-item .cat-thumb{width:36px;height:36px;border:0;border-radius:10px;}
html body #app .page-products:not(#\#):not(#\#) .cat-product-item strong{font-size:15px;}
html body #app .page-products:not(#\#):not(#\#) .cat-shortcuts{margin-top:24px;border-top:1px solid var(--border);padding-top:20px;}
html body #app .page-products:not(#\#):not(#\#) .cat-shortcuts button{padding:12px 0;border-bottom:1px solid var(--border);border-radius:0;background:transparent;color:var(--accent-text);width:100%;text-align:left;}
html body #app .page-products:not(#\#):not(#\#) .biz-product-layout>div>.cat-card:first-child{position:relative;padding:32px 32px 0;}
html body #app .page-products:not(#\#):not(#\#) .biz-product-layout>div>.cat-card:first-child>.cat-cardhead{position:absolute;right:32px;top:32px;margin:0;}
html body #app .page-products:not(#\#):not(#\#) .cat-preview-identity{min-height:96px;gap:16px;padding:0 230px 24px 0;align-items:flex-start;flex-wrap:wrap;}
html body #app .page-products:not(#\#):not(#\#) .cat-preview-identity h2{font-size:28px;line-height:1.2;}
html body #app .page-products:not(#\#):not(#\#) .cat-preview-identity p{font-size:14px;color:var(--text-2);}
html body #app .page-products:not(#\#):not(#\#) .cat-preview-identity small{font-size:12px;color:var(--text-3);}
html body #app .page-products:not(#\#):not(#\#) .avatar-wrap .cat-thumb{width:64px;height:64px;object-fit:contain;border:0;background:transparent;}
html body #app .page-products:not(#\#):not(#\#) .biz-source-line{margin:0 -32px;padding:20px 32px;display:flex;gap:12px;background:var(--ap-muted);border-radius:0 0 18px 18px;}
html body #app .page-products:not(#\#):not(#\#) .biz-source-line>.field{min-width:0;flex:1;}
html body #app .page-products:not(#\#):not(#\#) .biz-source-line label{font-size:13px;color:var(--text-3);}
html body #app .page-products:not(#\#):not(#\#) .biz-four-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;}
html body #app .page-products:not(#\#):not(#\#) .biz-tile{min-width:0;height:100%;border:0;border-radius:18px;}
html body #app .page-products:not(#\#):not(#\#) .biz-tile:not(.expanded)>.cat-card{height:100%;display:flex;flex-direction:column;gap:16px;}
html body #app .page-products:not(#\#):not(#\#) .biz-tile .cat-cardhead{margin:0;flex-wrap:wrap;}
html body #app .page-products:not(#\#):not(#\#) .biz-tile :is(textarea,pre){font-size:17px;line-height:1.47;background:transparent;padding:0;border:0;color:var(--text-2);}
html body #app .page-products:not(#\#):not(#\#) .biz-tile .note{font-size:14px;}
html body #app .page-products:not(#\#):not(#\#) .biz-tile-hint{color:var(--text-3);}
html body #app .page-products:not(#\#):not(#\#) .biz-tile.expanded{height:auto;}
html body #app .page-products:not(#\#):not(#\#) .biz-generation-links{display:flex;flex-wrap:wrap;gap:8px;}
html body #app .page-products:not(#\#):not(#\#) .biz-generation-links>*{flex:1 1 140px;min-width:0;white-space:normal;}
/* 产品图库：保留原预览、编辑、删除/恢复按钮与Tab顺序。 */
html body #app .page-products:not(#\#):not(#\#) .ap-product-library{padding:32px 0 0;overflow:hidden;}
html body #app .page-products:not(#\#):not(#\#) .ap-product-library>.cat-cardhead{padding:0 32px;margin-bottom:24px;align-items:flex-start;flex-wrap:wrap;}
html body #app .page-products:not(#\#):not(#\#) .ap-product-library>.tabs{padding:0 32px;gap:24px;border-bottom:1px solid var(--border);}
html body #app .page-products:not(#\#):not(#\#) .ap-product-library>.tabs button{background:transparent;padding:0;min-height:44px;border-radius:0;color:var(--text-3);border-bottom:2px solid transparent;}
html body #app .page-products:not(#\#):not(#\#) .ap-product-library>.tabs button.active{color:var(--text);border-color:var(--text);}
html body #app .page-products:not(#\#):not(#\#) .ap-product-library>.small{margin:0;padding:20px 32px;border-top:1px solid var(--border);font-size:13px;}
html body #app .page-products:not(#\#):not(#\#) .ap-product-library [data-biz="material-scope"]{background:transparent;color:var(--accent-text);}
html body #app .page-products:not(#\#):not(#\#) .ap-product-gallery{--rh:220px;display:flex;flex-wrap:wrap;gap:8px;padding:24px 32px 32px;}
html body #app .page-products:not(#\#):not(#\#) .ap-product-gallery::after{content:"";flex-grow:999999;}
html body #app .page-products:not(#\#):not(#\#) .ap-gallery-item{position:relative;flex:var(--ar,1.33) 1 calc(var(--ar,1.33)*var(--rh));max-width:calc(var(--ar,1.33)*var(--rh)*1.5);min-width:0;aspect-ratio:var(--ar,1.33);align-self:flex-start;overflow:hidden;border:0;border-radius:12px;background:var(--surface-selected);padding:0;}
html body #app .page-products:not(#\#):not(#\#) .ap-gallery-item>.biz-material-preview,html body #app .page-products:not(#\#):not(#\#) .ap-gallery-item>video{position:absolute;inset:0;width:100%;height:100%;margin:0;padding:0;border:0;border-radius:inherit;background:transparent;cursor:zoom-in;}
html body #app .page-products:not(#\#):not(#\#) .ap-gallery-item>.biz-material-preview img{display:block;width:100%;height:100%;object-fit:cover;max-height:none;}
html body #app .page-products:not(#\#):not(#\#) .ap-gallery-item::before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(180deg,rgba(0,0,0,.5),rgba(0,0,0,0) 38%,rgba(0,0,0,0) 60%,rgba(0,0,0,.5));opacity:0;transition:opacity 150ms var(--ease-out);}
html body #app .page-products:not(#\#):not(#\#) .ap-gallery-item>.biz-material-name{position:absolute;left:12px;right:12px;top:12px;z-index:2;opacity:0;color:#FFFFFF;pointer-events:none;transition:opacity 150ms var(--ease-out);}
html body #app .page-products:not(#\#):not(#\#) .ap-gallery-item>.biz-material-name :is(strong,.badge){color:#FFFFFF;font-size:13px;}
html body #app .page-products:not(#\#):not(#\#) .ap-gallery-item>.row-actions{position:absolute;bottom:12px;left:12px;right:12px;z-index:2;display:flex;flex-wrap:wrap;gap:6px;opacity:0;pointer-events:none;transition:opacity 150ms var(--ease-out);}
html body #app .page-products:not(#\#):not(#\#) .ap-gallery-item>.row-actions button{height:32px;min-height:32px;padding:0 14px;background:var(--ap-overlay);backdrop-filter:blur(12px);color:#FFFFFF;border-radius:980px;font-size:13px;}
html body #app .page-products:not(#\#):not(#\#) .ap-gallery-item>.row-actions button:hover{background:rgba(12,18,28,.72);}
html body #app .page-products:not(#\#):not(#\#) .ap-gallery-item>.row-actions .danger:hover{background:rgba(215,0,21,.85);}
html body #app .page-products:not(#\#):not(#\#) .ap-gallery-item>.small{position:absolute;left:12px;right:12px;top:52px;z-index:2;color:#FFFFFF;opacity:0;pointer-events:none;font-size:12px;transition:opacity 150ms var(--ease-out);}
html body #app .page-products:not(#\#):not(#\#) .ap-gallery-item:is(:hover,:has(:focus-visible):not(:root[data-ui-input="pointer"] *))::before,html body #app .page-products:not(#\#):not(#\#) .ap-gallery-item:is(:hover,:has(:focus-visible):not(:root[data-ui-input="pointer"] *))>:is(.biz-material-name,.row-actions,.small){opacity:1;}
html body #app .page-products:not(#\#):not(#\#) .ap-gallery-item:is(:hover,:has(:focus-visible):not(:root[data-ui-input="pointer"] *))>.row-actions{pointer-events:auto;}
html body #app .page-products:not(#\#):not(#\#) .biz-drop{display:none;}
html body #app .page-products:not(#\#):not(#\#) .ap-upload{position:relative;}
html body #app .page-products:not(#\#):not(#\#) .ap-upload::after{content:"";position:absolute;inset:-12px;border-radius:inherit;}
html body #app .page-products:not(#\#):not(#\#) .ap-upload-over{background:var(--accent-hover);color:var(--on-accent);transform:scale(1.02);}
html body #app .page-products:not(#\#):not(#\#) .ap-upload-over:not(:disabled)::before{content:"松开即上传";position:absolute;inset:0;border-radius:inherit;background:inherit;display:grid;place-items:center;}
html body #app .page-products:not(#\#):not(#\#) .ap-upload-busy::before{content:"";width:14px;height:14px;margin-right:8px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:ap-upload-spin 800ms linear infinite;}
html body #app .page-products:not(#\#):not(#\#) .ap-upload-error{font-size:14px;color:var(--danger);padding:0 32px 20px;overflow-wrap:anywhere;}
@keyframes ap-upload-spin{to{transform:rotate(360deg);}}
@media(max-width:1100px){
 html body #app .page-products:not(#\#):not(#\#) .biz-product-layout{grid-template-columns:minmax(0,1fr);}
 html body #app .page-products:not(#\#):not(#\#) .biz-product-layout>div>.cat-card:first-child>.cat-cardhead{position:static;}
 html body #app .page-products:not(#\#):not(#\#) .cat-preview-identity{padding-right:0;}
}
@media(max-width:860px){
 html body #app .page-products:not(#\#):not(#\#){padding:32px 20px 80px;}
 html body #app .page-products:not(#\#):not(#\#) .pagehead{margin-bottom:32px;align-items:flex-start;flex-direction:column;}
 html body #app .page-products:not(#\#):not(#\#) .pagehead h1{font-size:30px;}
 html body #app .page-products:not(#\#):not(#\#) .cat-card{padding:20px;}
 html body #app .page-products:not(#\#):not(#\#) .biz-four-grid{grid-template-columns:minmax(0,1fr);}
 html body #app .page-products:not(#\#):not(#\#) .biz-source-line{margin:0 -20px;padding:20px;flex-direction:column;align-items:stretch;}
 html body #app .page-products:not(#\#):not(#\#) .cat-preview-identity{padding-right:0;}
 html body #app .page-products:not(#\#):not(#\#) .ap-product-library{padding:20px 0 0;}
 html body #app .page-products:not(#\#):not(#\#) .ap-product-library>.cat-cardhead,html body #app .page-products:not(#\#):not(#\#) .ap-product-library>.tabs{padding-inline:20px;gap:12px;}
 html body #app .page-products:not(#\#):not(#\#) .ap-product-gallery{--rh:150px;padding:16px 20px 24px;}
 html body #app .page-products:not(#\#):not(#\#) .ap-gallery-item{flex-basis:min(calc(var(--ar,1.33)*var(--rh)),calc((100% - 8px)/2));}
}
@media(hover:none){
 html body #app .page-products:not(#\#):not(#\#) .ap-gallery-item::before{opacity:1;background:linear-gradient(0deg,rgba(0,0,0,.55),transparent 50%);}
 html body #app .page-products:not(#\#):not(#\#) .ap-gallery-item>.row-actions{opacity:1;pointer-events:auto;bottom:6px;left:6px;right:6px;gap:3px;}
 html body #app .page-products:not(#\#):not(#\#) .ap-gallery-item>.row-actions button{padding:0 7px;font-size:12px;height:32px;}
}
@media(prefers-reduced-motion:reduce){
 :root{--dur-press:1ms;--dur-hover:1ms;--dur-1:1ms;--dur-2:1ms;--dur-3:1ms;--dur-page:1ms;--press-scale:1;--page-shift:0px;}
 html body #app .page-products:not(#\#):not(#\#) :is(.ap-gallery-item,.ap-upload){transition:none;animation:none;transform:none;}
 html body #app .page-products:not(#\#):not(#\#) .ap-upload-busy::before{animation:none;border-right-color:currentColor;}
}
/* 工单101 · 阶段1 · 共用灯箱基础：透明图片轨道浮在原网页上，原元数据操作保留。 */
html body .cat-lightbox:not(#\#):not(#\#){position:fixed;inset:0;width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;margin:0;padding:0;border:0;border-radius:0;background:transparent;color:#FFFFFF;box-shadow:none;display:none;grid-template-columns:52px minmax(0,1fr) 52px;grid-template-rows:auto minmax(0,1fr) auto auto;gap:0;overflow:hidden;}
html body .cat-lightbox:not(#\#):not(#\#)[open]{display:grid;}
html body .cat-lightbox:not(#\#):not(#\#)::backdrop{background:rgba(0,0,0,.42);backdrop-filter:blur(24px);}
html body .cat-lightbox:not(#\#):not(#\#):has(.lb-info){grid-template-columns:52px minmax(0,1fr) 52px minmax(240px,28vw);grid-template-rows:auto minmax(0,1fr) auto auto;}
html body .cat-lightbox:not(#\#):not(#\#) .lb-top{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:12px;margin:16px 24px 0;padding:12px 16px;border:0;border-radius:18px;background:var(--ap-overlay);color:#FFFFFF;font-size:14px;}
html body .cat-lightbox:not(#\#):not(#\#) .lb-btn,html body .cat-lightbox:not(#\#):not(#\#) .lb-nav{background:var(--ap-overlay);color:#FFFFFF;border:0;border-radius:980px;box-shadow:none;}
html body .cat-lightbox:not(#\#):not(#\#) .lb-stage{grid-column:2;grid-row:2;display:grid;place-items:center;min-width:0;overflow:hidden;}
html body .cat-lightbox:not(#\#):not(#\#) .lb-frame{width:var(--lb-frame-w);height:var(--lb-frame-h);max-width:90vw;max-height:78vh;min-width:0;min-height:0;overflow:hidden;background:transparent;border:0;border-radius:8px;box-shadow:none;resize:both;}
html body .cat-lightbox:not(#\#):not(#\#) .lb-track{display:flex;width:100%;height:100%;transform:translateX(calc(var(--lb-x,0%) + var(--lb-drag,0px)));transition:transform 280ms var(--ease-in-out);}
html body .cat-lightbox:not(#\#):not(#\#) .lb-slide{flex:0 0 100%;width:100%;height:100%;display:grid;place-items:center;min-width:0;}
html body .cat-lightbox:not(#\#):not(#\#) .lb-slide :is(.lb-img,.lb-neighbor){position:static;inset:auto;width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;border-radius:8px;animation:none;}
html body .cat-lightbox:not(#\#):not(#\#) .lb-nav{grid-row:2;width:40px;height:52px;padding:0;}
html body .cat-lightbox:not(#\#):not(#\#) .lb-prev{grid-column:1;}
html body .cat-lightbox:not(#\#):not(#\#) .lb-next{grid-column:3;}
html body .cat-lightbox:not(#\#):not(#\#) .lb-hint{grid-column:1/4;grid-row:3;background:var(--ap-overlay);color:#FFFFFF;font-size:12px;white-space:normal;max-width:90vw;}
html body .cat-lightbox:not(#\#):not(#\#) .lb-info{grid-column:4;grid-row:2/5;border:0;border-radius:18px;margin:16px;padding:20px;background:var(--glass-strong);color:var(--text);overflow:auto;}
html body .cat-lightbox:not(#\#):not(#\#) .lb-strip{grid-column:1/4;display:flex;justify-content:center;gap:8px;padding:12px;overflow:auto;}
html body .cat-lightbox:not(#\#):not(#\#) .lb-strip button{width:44px;min-width:44px;height:44px;padding:0;border-radius:8px;color:#FFFFFF;background:var(--ap-overlay);}
html body .cat-lightbox:not(#\#):not(#\#) .lb-strip [aria-current="true"]{outline:2px solid #FFFFFF;outline-offset:2px;}
html body:has(#cat-lightbox[open]){overflow:hidden;}
@supports not (backdrop-filter:blur(1px)){html body .cat-lightbox:not(#\#):not(#\#)::backdrop{background:rgba(0,0,0,.6);}}
@media(max-width:860px){
 html body .cat-lightbox:not(#\#):not(#\#):has(.lb-info){grid-template-columns:32px minmax(0,1fr) 32px;grid-template-rows:auto minmax(140px,40vh) auto minmax(0,1fr);}
 html body .cat-lightbox:not(#\#):not(#\#) .lb-info{grid-column:1/-1;grid-row:4;margin:0;border-radius:18px 18px 0 0;}
 html body .cat-lightbox:not(#\#):not(#\#) .lb-top{margin:8px;padding:8px;gap:8px;}
 html body .cat-lightbox:not(#\#):not(#\#) .lb-strip{display:none;}
 html body .cat-lightbox:not(#\#):not(#\#) .lb-nav{width:28px;}
 html body .cat-lightbox:not(#\#):not(#\#) .lb-name{flex:1 1 100%;}
}
@media(prefers-reduced-motion:reduce){
 html body .cat-lightbox:not(#\#):not(#\#) .lb-track{transition:opacity 100ms linear;}
}
/* 工单101 · 原导航控件换肤；手机版菜单内容不迁移。 */
html body #app:not(#\#) .sidebar{padding:24px 16px;background:var(--bg);}
html body #app:not(#\#) .brand strong{font-size:15px;font-weight:600;}
html body #app:not(#\#) .navgroup{font-size:12px;font-weight:400;margin:24px 12px 8px;}
html body #app:not(#\#) .navitem{border:0;border-radius:10px;background:transparent;color:var(--text-2);height:36px;min-height:36px;padding:0 12px;font-size:14px;text-align:left;}
html body #app:not(#\#) .navitem:hover{background:var(--ap-muted);}
html body #app:not(#\#) .navitem.active{background:transparent;color:var(--text);font-weight:600;}
html body #app:not(#\#) .nav-indicator{background:var(--ap-muted);border-radius:10px;transition:transform 240ms var(--ease-in-out),opacity 200ms var(--ease-out);}
html body #app:not(#\#) .navbadge{background:transparent;color:var(--accent-text);padding:0;}
html body #app:not(#\#) .topbar{min-height:52px;padding:0 56px;gap:16px;background:var(--glass);border-bottom:1px solid var(--border);}
html body #app:not(#\#) .crumb{font-size:12px;}
html body #app .page-products:not(#\#):not(#\#) .biz-tile:not(.expanded){height:auto;}
html body #app .page-products:not(#\#):not(#\#) .biz-tile:not(.expanded) :is(#b-basicInfoText,#b-instructions){height:88px;min-height:88px;max-height:88px;resize:none;overflow:hidden;}
html body #app .page-products:not(#\#):not(#\#) .biz-tile:not(.expanded)>.cat-card{height:100%;min-height:280px;}
@media(max-width:860px){
 html body #app:not(#\#) .topbar{padding-inline:16px;gap:8px;}
 html body #app .page-products:not(#\#):not(#\#) .biz-product-layout>div>.cat-card:first-child{padding:20px 20px 0;}
}
/* 轨道中每张图必须有确定的定位盒，避免grid固有尺寸把高图撑出预览框。 */
html body .cat-lightbox:not(#\#):not(#\#) .lb-slide{position:relative;min-height:0;overflow:hidden;}
html body .cat-lightbox:not(#\#):not(#\#) .lb-slide :is(.lb-img,.lb-neighbor){position:absolute;inset:0;}
/* 只在原上传完成通知后，为本次新增图播放一次淡入；后台刷新不触发。 */
html body #app .page-products:not(#\#):not(#\#) .ap-upload-added{animation:ap-upload-added 200ms var(--ease-out) both;}
@keyframes ap-upload-added{from{opacity:0;}to{opacity:1;}}
@media(prefers-reduced-motion:reduce){html body #app .page-products:not(#\#):not(#\#) .ap-upload-added{animation:none;}}
html body .cat-lightbox:not(#\#):not(#\#) .lb-strip canvas{display:none;width:100%;height:100%;}
html body .cat-lightbox:not(#\#):not(#\#) .lb-strip .lb-thumb-ready canvas{display:block;}
html body .cat-lightbox:not(#\#):not(#\#) .lb-strip .lb-thumb-ready span{display:none;}
/* 共享输入换肤后仍保持97提示词预览恰为三行，不改图片页表单/动作。 */
html body #app .image-page-v3 textarea.prompt-preview:not(#\#):not(#\#){font-size:var(--fs-sm);line-height:var(--lh);height:calc(3 * var(--lh) * var(--fs-sm));border:0;}

/* 窄图库标题保持一行省略，避免原长文件名将操作层挤成竖排。 */
html body #app .page-products:not(#\#):not(#\#) .ap-gallery-item>.biz-material-name{display:block;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;}
html body #app .page-products:not(#\#):not(#\#) .ap-gallery-item>.biz-material-name strong{display:inline;white-space:nowrap;}

/* 工单103 · 阶段1 开始：第五节候选实施；深色未经用户看图确认。 */
/* 工单103 · DS-2.0 令牌 */
:root{
 --bg:#F5F7FA;--surface:#FFFFFF;--surface-2:#F7F9FC;--surface-3:#F0F3F8;
 --surface-hover:#F2F5F9;--surface-selected:#EAF2FE;
 --text:#1D1D1F;--text-2:#424245;--text-3:#6D6D72;--text-placeholder:#86868B;
 --accent:var(--brand,#0071E3);--accent-hover:#0066CC;--accent-press:#005BB5;--accent-text:#0066CC;--on-accent:#FFFFFF;
 --border:#E3E8EF;--border-strong:#CBD3DE;--divider:#EDF0F4;
 --glass:#FFFFFF;--glass-strong:#FFFFFF;--glass-blur:none;
 --shadow-1:0 1px 2px rgba(16,24,40,.04);--shadow-2:0 6px 20px rgba(16,24,40,.08);--shadow-3:0 20px 60px rgba(16,24,40,.20);--shadow-lift:var(--shadow-2);
 --fs-xs:12px;--fs-sm:14px;--fs-md:15px;--fs-lg:18px;--fs-xl:28px;--fs-2xl:28px;
 --lh:1.6;--lh-tight:1.25;
 --r-xs:6px;--r-sm:8px;--r-md:8px;--r-lg:12px;--r-xl:12px;--r-pill:8px;
 --control-h:40px;--control-h-sm:36px;--sidebar-w:200px;--topbar-h:56px;
 --ap-field:#FFFFFF;--ap-muted:#F0F3F8;
 --wb-result-bg:#EEF5FF;--wb-field-w-long:minmax(0,1fr);--wb-field-w-money:180px;--wb-field-w-short:120px;
 --replenish-summary-bg:#1D3557;--replenish-summary-text:#FFFFFF;--replenish-summary-text-2:#D6E2F0;--replenish-summary-divider:rgba(255,255,255,.18);
}
:root[data-theme="dark"]{
 --bg:#151922;--surface:#1D232E;--surface-2:#242C39;--surface-3:#2D3746;
 --surface-hover:#293342;--surface-selected:#233C5E;
 --text:#F5F7FA;--text-2:#D5DDE8;--text-3:#A9B6C8;--text-placeholder:#A9B6C8;
 --accent:var(--brand,#0071E3);--accent-text:#83BCFF;--accent-soft:rgba(131,188,255,.12);--accent-ring:#83BCFF;
 --border:#384557;--border-strong:#56677D;--divider:#303B4B;
 --glass:#1D232E;--glass-strong:#1D232E;
 --danger:#FF9696;--success:#5BD897;--warning:#FFC470;
 --shadow-1:0 1px 2px rgba(0,0,0,.16);--shadow-2:0 6px 20px rgba(0,0,0,.28);--shadow-3:0 20px 60px rgba(0,0,0,.50);
 --ap-field:#242C39;--ap-muted:#293342;--wb-result-bg:#233C5E;
}
/* 跟随系统的主题仍由boot-check/setTheme设置data-theme；无脚本首屏补同组候选。 */
@media(prefers-color-scheme:dark){:root:not([data-theme]){
 --bg:#151922;--surface:#1D232E;--surface-2:#242C39;--surface-3:#2D3746;
 --surface-hover:#293342;--surface-selected:#233C5E;--text:#F5F7FA;--text-2:#D5DDE8;--text-3:#A9B6C8;--text-placeholder:#A9B6C8;
 --accent:var(--brand,#0071E3);--accent-text:#83BCFF;--accent-soft:rgba(131,188,255,.12);--accent-ring:#83BCFF;
 --border:#384557;--border-strong:#56677D;--divider:#303B4B;--glass:#1D232E;--glass-strong:#1D232E;
 --danger:#FF9696;--success:#5BD897;--warning:#FFC470;
 --shadow-1:0 1px 2px rgba(0,0,0,.16);--shadow-2:0 6px 20px rgba(0,0,0,.28);--shadow-3:0 20px 60px rgba(0,0,0,.50);
 --ap-field:#242C39;--ap-muted:#293342;--wb-result-bg:#233C5E;
}}
/* 共享外壳、卡片和原生控件。零售预览画布内部不参与。 */
html body #app:not(#\#):not(#\#):not(#\#) .content{width:100%;max-width:1760px;padding:24px;margin-inline:auto;box-sizing:border-box;}
html body #app:not(#\#):not(#\#):not(#\#) .sidebar{width:var(--sidebar-w);padding:18px 10px;background:var(--surface);border-right:1px solid var(--border);backdrop-filter:none;}
html body #app:not(#\#):not(#\#):not(#\#) .brand{padding:0 6px 16px;gap:8px;}
html body #app:not(#\#):not(#\#):not(#\#) .brand strong{font-size:14px;line-height:1.5;}
html body #app:not(#\#):not(#\#):not(#\#) .navgroup{margin:20px 10px 8px;padding:0;color:var(--text-3);font-size:var(--fs-xs);}
html body #app:not(#\#):not(#\#):not(#\#) .navitem{height:40px;min-height:40px;border-radius:var(--r-sm);padding:0 10px;font-size:var(--fs-sm);color:var(--text-2);background:transparent;gap:8px;}
html body #app:not(#\#):not(#\#):not(#\#) .navitem.active{color:var(--accent-text);background:var(--surface-selected);font-weight:600;}
html body #app:not(#\#):not(#\#):not(#\#) .navitem:hover{background:var(--surface-hover);}
html body #app:not(#\#):not(#\#):not(#\#) .nav-indicator{background:var(--surface-selected);border-radius:var(--r-sm);}
html body #app:not(#\#):not(#\#):not(#\#) .topbar{height:auto;min-height:var(--topbar-h);padding:8px 24px;gap:16px;background:var(--surface);border-bottom:1px solid var(--border);}
html body #app:not(#\#):not(#\#):not(#\#) .global-search{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-sm);}
html body #app:not(#\#):not(#\#):not(#\#) .pagehead{gap:16px;margin-bottom:20px;align-items:center;}
html body #app:not(#\#):not(#\#):not(#\#) .pagehead h1{font-size:var(--fs-2xl);line-height:var(--lh-tight);font-weight:600;letter-spacing:-.02em;margin:0;}
html body #app:not(#\#):not(#\#):not(#\#) .pagehead p{font-size:var(--fs-sm);line-height:var(--lh);color:var(--text-3);margin-top:6px;}
html body #app:not(#\#):not(#\#):not(#\#) :is(.card,.cat-card,.selection-card,.studio-card,.planning-card,.team-card,.stat,.hero):not(.listing-preview-canvas *){border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--shadow-1);color:var(--text);}
html body #app:not(#\#):not(#\#):not(#\#) :is(.cardhead,.cat-cardhead,.studio-cardhead,.planning-cardhead,.team-cardhead):not(.listing-preview-canvas *){margin-bottom:16px;gap:12px;}
html body #app:not(#\#):not(#\#):not(#\#) :is(.card h2,.cat-card h2,.studio-card h2,.planning-card h2,.team-card h2):not(.listing-preview-canvas *){font-size:var(--fs-lg);line-height:1.4;font-weight:600;}
html body #app:not(#\#):not(#\#):not(#\#) :is(button,.button-link):where(:not(.listing-preview-canvas *):not(.biz-material-preview):not(.cat-media-open):not(.studio-material-image):not([data-nav])){min-height:var(--control-h-sm);border:1px solid var(--border-strong);border-radius:var(--r-sm);padding:6px 14px;background:var(--surface);color:var(--accent-text);font-size:var(--fs-sm);line-height:1.4;box-shadow:none;}
html body #app:not(#\#):not(#\#):not(#\#) :is(button.primary,.button-link.primary):not(.listing-preview-canvas *){background:var(--accent);border-color:var(--accent);color:var(--on-accent);}
html body #app:not(#\#):not(#\#):not(#\#) :is(button.primary,.button-link.primary):not(:disabled):hover:not(.listing-preview-canvas *){background:var(--accent-hover);border-color:var(--accent-hover);}
html body #app:not(#\#):not(#\#):not(#\#) :is(.linkbtn,.ghost):not(.listing-preview-canvas *){min-height:32px;padding:4px 6px;background:transparent;border-color:transparent;color:var(--accent-text);}
html body #app:not(#\#):not(#\#):not(#\#) :is(button.danger,.linkbtn.danger):not(.listing-preview-canvas *){color:var(--danger);background:transparent;}
html body #app:not(#\#):not(#\#):not(#\#) :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=file]),select,textarea):not(.listing-preview-canvas *){border:1px solid var(--border-strong);border-radius:var(--r-sm);background:var(--ap-field);color:var(--text);font-size:var(--fs-sm);line-height:1.5;min-width:0;box-shadow:none;}
html body #app:not(#\#):not(#\#):not(#\#) :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=file]),select):not(.listing-preview-canvas *){height:var(--control-h);min-height:var(--control-h);padding:8px 10px;}
html body #app:not(#\#):not(#\#):not(#\#) :is(input[type=checkbox],input[type=radio]):not(.listing-preview-canvas *){min-height:0;min-width:0;width:16px;height:16px;accent-color:var(--accent);}
html body #app:not(#\#):not(#\#):not(#\#) :is(input,textarea)::placeholder{color:var(--text-3);opacity:1;}
html body #app:not(#\#):not(#\#):not(#\#) :is(.badge,.tag):not(.listing-preview-canvas *){border-radius:var(--r-xs);padding:3px 8px;background:var(--surface-3);color:var(--text-2);font-size:var(--fs-xs);line-height:1.4;}
html body #app:not(#\#):not(#\#):not(#\#) :is(.badge,.tag)::before{display:none;}
html body #app:not(#\#):not(#\#):not(#\#) :is(.badge.orange,.tag.warning){background:var(--warning-soft);color:var(--warning);}
html body #app:not(#\#):not(#\#):not(#\#) :is(.badge.green,.tag.success){background:var(--success-soft);color:var(--success);}
html body #app:not(#\#):not(#\#):not(#\#) :is(.badge.red,.tag.danger){background:var(--danger-soft);color:var(--danger);}
html body #app:not(#\#):not(#\#):not(#\#) :is(th,td):not(.listing-preview-canvas *){border-left:0;border-right:0;border-bottom:1px solid var(--divider);padding:10px 12px;color:var(--text);font-size:var(--fs-sm);}
html body #app:not(#\#):not(#\#):not(#\#) th:not(.listing-preview-canvas *){color:var(--text-3);background:var(--surface-2);font-weight:600;}
html body #app:not(#\#):not(#\#):not(#\#) .note:not(.listing-preview-canvas *){padding:12px 16px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface-2);color:var(--text-2);}
/* 利润试点：DOM与Tab原序不变，FBA与成本仅做视觉网格定位。 */
html body #app .profit-page:not(#\#):not(#\#):not(#\#){max-width:1560px;margin-inline:auto;}
html body #app .profit-page:not(#\#):not(#\#):not(#\#) #profit-form{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,1fr);gap:16px;align-items:stretch;}
html body #app .profit-page:not(#\#):not(#\#):not(#\#) #profit-error{grid-column:1/-1;}
html body #app .profit-page:not(#\#):not(#\#):not(#\#) #profit-error:empty{display:none;}
html body #app .profit-page:not(#\#):not(#\#):not(#\#) .profit-info{grid-column:1/-1;grid-row:1;margin:0;padding:18px 20px;}
html body #app .profit-page:not(#\#):not(#\#):not(#\#) .profit-info-grid{grid-template-columns:1.3fr 1.3fr 1fr 1fr .8fr;gap:16px;}
html body #app .profit-page:not(#\#):not(#\#):not(#\#) .profit-main-grid{display:contents;}
html body #app .profit-page:not(#\#):not(#\#):not(#\#) .profit-cost{grid-column:1;grid-row:2;margin:0;padding:20px;border-bottom:0;border-radius:var(--r-lg) var(--r-lg) 0 0;box-shadow:none;}
html body #app .profit-page:not(#\#):not(#\#):not(#\#) .profit-fba{grid-column:1;grid-row:3;margin:-16px 0 0;padding:0 20px 20px;border-top:0;border-radius:0 0 var(--r-lg) var(--r-lg);box-shadow:none;}
html body #app .profit-page:not(#\#):not(#\#):not(#\#) .profit-result{grid-column:2;grid-row:2/4;padding:20px;margin:0;min-width:0;}
html body #app .profit-page:not(#\#):not(#\#):not(#\#) .profit-cost-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;}
html body #app .profit-page:not(#\#):not(#\#):not(#\#) .field{min-width:0;gap:6px;}
html body #app .profit-page:not(#\#):not(#\#):not(#\#) .field label{font-size:var(--fs-sm);color:var(--text-2);font-weight:500;}
html body #app .profit-page:not(#\#):not(#\#):not(#\#) .profit-sectionhead{gap:12px;flex-wrap:wrap;margin-bottom:14px;}
html body #app .profit-page:not(#\#):not(#\#):not(#\#) .profit-sectionhead h2{margin:0;}
html body #app .profit-page:not(#\#):not(#\#):not(#\#) .profit-sectionhead>span{color:var(--text-3);font-size:var(--fs-xs);}
html body #app .profit-page:not(#\#):not(#\#):not(#\#) .profit-money{height:var(--control-h);min-height:var(--control-h);border:1px solid var(--border-strong);border-radius:var(--r-sm);background:var(--ap-field);}
html body #app .profit-page:not(#\#):not(#\#):not(#\#) .profit-money>span{min-width:30px;width:30px;background:var(--surface-2);color:var(--text-3);border-color:var(--border);font-size:var(--fs-sm);}
html body #app .profit-page:not(#\#):not(#\#):not(#\#) .profit-money>input{min-height:0;height:100%;background:transparent;color:var(--text);}
html body #app .profit-page:not(#\#):not(#\#):not(#\#) .fba-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;}
html body #app .profit-page:not(#\#):not(#\#):not(#\#) .fba-grid .field:has(select[name=fbaCategory]),html body #app .profit-page:not(#\#):not(#\#):not(#\#) .fba-grid .field:has(select[name=fbaChargeType]){grid-column:span 2;}
html body #app .profit-page:not(#\#):not(#\#):not(#\#) .profit-return{margin-block:18px;padding-block:14px;border-block:1px solid var(--divider);color:var(--text-2);font-size:var(--fs-sm);}
html body #app .profit-page:not(#\#):not(#\#):not(#\#) .profit-return-controls{gap:8px;}
html body #app .profit-page:not(#\#):not(#\#):not(#\#) .profit-return-controls>label{border-color:var(--border-strong);border-radius:var(--r-sm);padding:8px 10px;}
html body #app .profit-page:not(#\#):not(#\#):not(#\#) .profit-return-controls>label:has(input:checked){border-color:var(--accent);color:var(--accent-text);background:var(--surface-selected);}
html body #app .profit-page:not(#\#):not(#\#):not(#\#) .profit-return-controls>span{margin-left:0;color:var(--text-3);font-size:var(--fs-xs);}
html body #app .profit-page:not(#\#):not(#\#):not(#\#) #profit-result{display:flex;flex-direction:column;gap:12px;}
html body #app .profit-page:not(#\#):not(#\#):not(#\#) .profit-summary{order:1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0;padding:0;border:0;background:transparent;color:var(--accent-text);}
html body #app .profit-page:not(#\#):not(#\#):not(#\#) .profit-summary>div{padding:16px;background:var(--wb-result-bg);border:0;border-radius:var(--r-sm);min-width:0;}
html body #app .profit-page:not(#\#):not(#\#):not(#\#) .profit-summary label{color:var(--accent-text);font-size:var(--fs-sm);}
html body #app .profit-page:not(#\#):not(#\#):not(#\#) .profit-summary strong{color:var(--accent-text);font-size:var(--fs-xl);font-weight:600;overflow-wrap:anywhere;font-variant-numeric:tabular-nums;}
html body #app .profit-page:not(#\#):not(#\#):not(#\#) .profit-summary.is-negative strong{color:var(--danger);}
html body #app .profit-page:not(#\#):not(#\#):not(#\#) .profit-missing{order:2;margin:0;padding:12px;border-radius:var(--r-sm);background:var(--warning-soft);color:var(--warning);font-size:var(--fs-sm);}
html body #app .profit-page:not(#\#):not(#\#):not(#\#) .profit-adbox{order:3;gap:10px;margin:0;}
html body #app .profit-page:not(#\#):not(#\#):not(#\#) .profit-adbox>div{padding:12px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface-2);}
html body #app .profit-page:not(#\#):not(#\#):not(#\#) :is(.profit-adbox label,.profit-adnote){color:var(--text-3);font-size:var(--fs-xs);}
html body #app .profit-page:not(#\#):not(#\#):not(#\#) .profit-adbox strong{color:var(--text);font-size:var(--fs-lg);}
html body #app .profit-page:not(#\#):not(#\#):not(#\#) :is(.profit-adnote,.profit-below){order:4;}
html body #app .profit-page:not(#\#):not(#\#):not(#\#) .profit-detail{order:5;}
html body #app .profit-page:not(#\#):not(#\#):not(#\#) .profit-detail>div{padding:8px 0;border-bottom:1px solid var(--divider);color:var(--text-2);font-size:var(--fs-sm);line-height:1.5;}
html body #app .profit-page:not(#\#):not(#\#):not(#\#) .profit-detail b{color:var(--text);font-variant-numeric:tabular-nums;}
html body #app .profit-page:not(#\#):not(#\#):not(#\#) .profit-records{padding:20px;margin-top:16px;}
html body #app .profit-page:not(#\#):not(#\#):not(#\#) .profit-heading{flex-wrap:wrap;gap:10px;}
html body #app .profit-page:not(#\#):not(#\#):not(#\#) .profit-heading>.small{color:var(--text-3);}
html body #app .profit-page:not(#\#):not(#\#):not(#\#) .profit-footnote{font-size:var(--fs-xs);color:var(--text-3);line-height:1.6;}
@media(max-width:1100px){
 html body #app .profit-page:not(#\#):not(#\#):not(#\#) #profit-form{grid-template-columns:minmax(0,1fr);}
 html body #app .profit-page:not(#\#):not(#\#):not(#\#) :is(.profit-info,.profit-cost,.profit-fba,.profit-result){grid-column:1;grid-row:auto;}
 html body #app .profit-page:not(#\#):not(#\#):not(#\#) .profit-info-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
 html body #app .profit-page:not(#\#):not(#\#):not(#\#) .profit-fba{margin:0;padding:20px;border:1px solid var(--border);border-radius:var(--r-lg);}
 html body #app .profit-page:not(#\#):not(#\#):not(#\#) .profit-cost{border:1px solid var(--border);border-radius:var(--r-lg);}
}
@media(max-width:760px){
 :root{--control-h:44px;--control-h-sm:44px;--fs-2xl:24px;}
 html body #app:not(#\#):not(#\#):not(#\#) .content{padding:16px;}
 html body #app:not(#\#):not(#\#):not(#\#) .topbar{padding:8px 12px;gap:8px;}
 html body #app:not(#\#):not(#\#):not(#\#) .pagehead{align-items:stretch;}
 html body #app .profit-page:not(#\#):not(#\#):not(#\#) :is(.profit-info,.profit-fba,.profit-cost,.profit-result,.profit-records){padding:16px;}
 html body #app .profit-page:not(#\#):not(#\#):not(#\#) :is(.profit-info-grid,.profit-cost-grid,.fba-grid){grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 10px;}
 html body #app .profit-page:not(#\#):not(#\#):not(#\#) .profit-info-grid>.field:has(#profit-name),html body #app .profit-page:not(#\#):not(#\#):not(#\#) .profit-info-grid>.field:has(#profit-productId){grid-column:1/-1;}
 html body #app .profit-page:not(#\#):not(#\#):not(#\#) .fba-grid .field:has(select){grid-column:auto;}
 html body #app .profit-page:not(#\#):not(#\#):not(#\#) .profit-summary>div{padding:12px;}
 html body #app .profit-page:not(#\#):not(#\#):not(#\#) .profit-summary strong{font-size:24px;}
}

/* 实测修订：六项信息同排，保留原DOM/Tab；费用提示不占用随机网格单元。 */
html body #app:not(#\#):not(#\#):not(#\#) .brand small{font-size:10px;letter-spacing:.08em;white-space:normal;overflow-wrap:anywhere;}
html body #app .profit-page:not(#\#):not(#\#):not(#\#) .profit-info{display:grid;grid-template-columns:1.3fr 1.2fr .9fr 1fr 1fr .8fr;gap:10px 16px;align-items:start;}
html body #app .profit-page:not(#\#):not(#\#):not(#\#) .profit-info>.profit-sectionhead,html body #app .profit-page:not(#\#):not(#\#):not(#\#) .profit-info-grid{display:contents;}
html body #app .profit-page:not(#\#):not(#\#):not(#\#) .profit-info>.profit-sectionhead>h2{grid-column:1/-1;grid-row:1;}
html body #app .profit-page:not(#\#):not(#\#):not(#\#) .profit-info>.profit-sectionhead>label{grid-column:3;grid-row:2;display:flex;flex-direction:column;gap:6px;font-size:var(--fs-sm);line-height:1.5;color:var(--text-2);}
html body #app .profit-page:not(#\#):not(#\#):not(#\#) .profit-info-grid>.field{grid-row:2;}
html body #app .profit-page:not(#\#):not(#\#):not(#\#) .profit-info-grid>.field:has(#profit-name){grid-column:1;}
html body #app .profit-page:not(#\#):not(#\#):not(#\#) .profit-info-grid>.field:has(#profit-productId){grid-column:2;}
html body #app .profit-page:not(#\#):not(#\#):not(#\#) .profit-info-grid>.field:has(#profit-owner){grid-column:4;}
html body #app .profit-page:not(#\#):not(#\#):not(#\#) .profit-info-grid>.field:has(#profit-date){grid-column:5;}
html body #app .profit-page:not(#\#):not(#\#):not(#\#) .profit-info-grid>.field:has(#profit-fulfillment){grid-column:6;}
html body #app .profit-page:not(#\#):not(#\#):not(#\#) .profit-link-note{grid-column:1/-1;}
html body #app .profit-page:not(#\#):not(#\#):not(#\#) .profit-cost-grid>.field:has(#profit-saleUSD){grid-area:1/1;}
html body #app .profit-page:not(#\#):not(#\#):not(#\#) .profit-cost-grid>.field:has(#profit-costCNY){grid-area:1/2;}
html body #app .profit-page:not(#\#):not(#\#):not(#\#) .profit-cost-grid>.field:has(#profit-headCNY){grid-area:1/3;}
html body #app .profit-page:not(#\#):not(#\#):not(#\#) .profit-cost-grid>.field:has(#profit-fbaUSD){grid-area:2/1;}
html body #app .profit-page:not(#\#):not(#\#):not(#\#) .profit-cost-grid>.field:has(#profit-adsUSD){grid-area:2/2;}
html body #app .profit-page:not(#\#):not(#\#):not(#\#) .profit-cost-grid>.field:has(#profit-rate){grid-area:2/3;}
html body #app .profit-page:not(#\#):not(#\#):not(#\#) .profit-cost-grid>.field:has(#profit-returnRate){grid-area:3/1;}
html body #app .profit-page:not(#\#):not(#\#):not(#\#) .profit-cost-grid>.field:has(#profit-commissionRate){grid-area:3/2;}
html body #app .profit-page:not(#\#):not(#\#):not(#\#) .profit-cost-grid>.field:has(#profit-miscRate){grid-area:3/3;}
html body #app .profit-page:not(#\#):not(#\#):not(#\#) .profit-cost-grid>.field:has(#profit-lowestUSD){grid-area:4/1;}
html body #app .profit-page:not(#\#):not(#\#):not(#\#) .profit-cost-grid>.fx-line{grid-area:4/2/5/4;align-self:center;margin:0;padding:8px;font-size:var(--fs-xs);line-height:1.5;}
html body #app .profit-page:not(#\#):not(#\#):not(#\#) .profit-cost-grid>.fba-under{grid-area:5/1/6/4;display:flex;gap:8px;align-items:start;flex-wrap:wrap;}
html body #app .profit-page:not(#\#):not(#\#):not(#\#) .fba-under>.fba-scope{margin:0;color:var(--text-3);font-size:var(--fs-xs);}
html body #app .profit-page:not(#\#):not(#\#):not(#\#) .fba-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;}
html body #app .profit-page:not(#\#):not(#\#):not(#\#) .fba-grid .field:has(select[name=fbaCategory]),html body #app .profit-page:not(#\#):not(#\#):not(#\#) .fba-grid .field:has(select[name=fbaChargeType]){grid-column:span 3;}
html body #app .profit-page:not(#\#):not(#\#):not(#\#) #profit-form:has(#profit-error:not(:empty))>#profit-error{grid-row:1;}
html body #app .profit-page:not(#\#):not(#\#):not(#\#) #profit-form:has(#profit-error:not(:empty))>.profit-info{grid-row:2;}
html body #app .profit-page:not(#\#):not(#\#):not(#\#) #profit-form:has(#profit-error:not(:empty)) .profit-cost{grid-row:3;}
html body #app .profit-page:not(#\#):not(#\#):not(#\#) #profit-form:has(#profit-error:not(:empty))>.profit-fba{grid-row:4;}
html body #app .profit-page:not(#\#):not(#\#):not(#\#) #profit-form:has(#profit-error:not(:empty)) .profit-result{grid-row:3/5;}
@media(max-width:1100px){
 html body #app .profit-page:not(#\#):not(#\#):not(#\#) .profit-info{grid-template-columns:repeat(3,minmax(0,1fr));}
 html body #app .profit-page:not(#\#):not(#\#):not(#\#) .profit-info-grid>.field:not(#\#),html body #app .profit-page:not(#\#):not(#\#):not(#\#) .profit-info>.profit-sectionhead>label{grid-column:auto;grid-row:auto;}
 html body #app .profit-page:not(#\#):not(#\#):not(#\#) #profit-form:has(#profit-error:not(:empty)) :is(.profit-info,.profit-cost,.profit-fba,.profit-result){grid-row:auto;}
}
@media(max-width:760px){
 html body #app .profit-page:not(#\#):not(#\#):not(#\#) .profit-info{grid-template-columns:repeat(2,minmax(0,1fr));}
 html body #app .profit-page:not(#\#):not(#\#):not(#\#) .profit-info-grid>.field:has(#profit-name),html body #app .profit-page:not(#\#):not(#\#):not(#\#) .profit-info-grid>.field:has(#profit-productId){grid-column:1/-1;}
 html body #app .profit-page:not(#\#):not(#\#):not(#\#) .profit-cost-grid>.field:not(#\#){grid-area:auto;}
 html body #app .profit-page:not(#\#):not(#\#):not(#\#) .profit-cost-grid>:is(.fx-line,.fba-under){grid-area:auto;grid-column:1/-1;}
 html body #app .profit-page:not(#\#):not(#\#):not(#\#) .fba-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
 html body #app .profit-page:not(#\#):not(#\#):not(#\#) .fba-grid .field:has(select){grid-column:auto;}
}
/* 共享字号改变后，97原三行预览仍按实际行高计算，不改其表单/入口。 */
html body #app .image-page-v3 textarea.prompt-preview:not(#\#):not(#\#):not(#\#):not(#\#){font-size:var(--fs-sm);line-height:var(--lh);height:calc(3 * var(--lh) * var(--fs-sm) + 2px);padding:0 var(--s-3);border:1px solid var(--border-strong);min-height:0;box-sizing:border-box;}
@media(max-width:760px){
 html body #app:not(#\#):not(#\#):not(#\#) :is(.linkbtn,.ghost):not(.listing-preview-canvas *){min-height:44px;}
 html body #app:not(#\#):not(#\#):not(#\#) .navitem{height:44px;min-height:44px;}
}
/* 工单103 · 阶段1 结束 */

/* 工单103 · 批次B1 开始：选品/登记/深度分析/旺季/补货，原控件与资料顺序保持。 */
html body #app .page-selection:not(#\#):not(#\#):not(#\#){display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:20px;align-items:start;}
html body #app .page-selection:not(#\#):not(#\#):not(#\#)>:is(.pagehead,.selection-moved,.r-selection-history,.usage-card,.footer-note){grid-column:1/-1;}
html body #app .page-selection:not(#\#):not(#\#):not(#\#) #selection-import{grid-column:1;}
html body #app .page-selection:not(#\#):not(#\#):not(#\#) #selection-analysis{grid-column:2;}
html body #app .page-selection:not(#\#):not(#\#):not(#\#) .selection-card{margin:0;}
html body #app .page-selection:not(#\#):not(#\#):not(#\#) .selection-card>.cardhead{padding:18px 20px;margin:0;border-bottom:1px solid var(--divider);align-items:start;flex-wrap:wrap;}
html body #app .page-selection:not(#\#):not(#\#):not(#\#) .selection-card>.cardbody{padding:20px;}
html body #app .page-selection:not(#\#):not(#\#):not(#\#) .selection-moved>.cardhead{border-bottom:0;gap:16px;}
html body #app .page-selection:not(#\#):not(#\#):not(#\#) .selection-moved .cardhead>div{flex:1 1 520px;min-width:0;}
html body #app .page-selection:not(#\#):not(#\#):not(#\#) button[data-nav]{border-radius:var(--r-sm);padding:8px 14px;min-height:var(--control-h-sm);font-size:var(--fs-sm);flex-shrink:0;}
html body #app .page-selection:not(#\#):not(#\#):not(#\#) :is(.selection-import-settings,.selection-model-row){gap:12px;}
html body #app .page-selection:not(#\#):not(#\#):not(#\#) .selection-drop{border:1px dashed var(--border-strong);border-radius:var(--r-sm);background:var(--surface-2);padding:20px;}
html body #app :is(.page-registrations,.page-competitors,.page-seasons):not(#\#):not(#\#):not(#\#) :is(.cat-card,.card){padding:20px;margin-bottom:20px;}
html body #app .page-competitors:not(#\#):not(#\#):not(#\#) :is(.biz-deep-inputs,.biz-deep-layout){gap:20px;}
html body #app .page-registrations:not(#\#):not(#\#):not(#\#) :is(.cat-filters,.cat-refresh-row){border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface-2);padding:12px;gap:10px;}
html body #app .page-registrations:not(#\#):not(#\#):not(#\#) .cat-registration-table .table-wrap{border:1px solid var(--border);border-radius:var(--r-sm);}
html body #app .page-registrations:not(#\#):not(#\#):not(#\#) .cat-registration-table table{min-width:1800px;table-layout:auto;}
html body #app .page-registrations:not(#\#):not(#\#):not(#\#) .cat-registration-table :is(th,td):first-child{width:240px;min-width:180px;max-width:280px;background:var(--surface);}
html body #app .page-registrations:not(#\#):not(#\#):not(#\#) .cat-registration-table :is(th,td):last-child{width:280px;min-width:260px;background:var(--surface);}
html body #app .page-registrations:not(#\#):not(#\#):not(#\#) .cat-registration-table th:first-child,html body #app .page-registrations:not(#\#):not(#\#):not(#\#) .cat-registration-table th:last-child{background:var(--surface-2);}
html body #app .page-registrations:not(#\#):not(#\#):not(#\#) .cat-registration-table .row-actions{gap:6px;flex-wrap:wrap;align-items:center;}
html body #app .page-registrations:not(#\#):not(#\#):not(#\#) .namecell>div{min-width:0;max-width:220px;overflow-wrap:anywhere;}
html body #app .page-seasons:not(#\#):not(#\#):not(#\#) :is(.plan-filters,.plan-toolbar){gap:12px;}
html body #app .page-seasons:not(#\#):not(#\#):not(#\#) .plan-season-detail{gap:24px;}
html body #app .replenish-v96:not(#\#):not(#\#):not(#\#) .rp-core{background:var(--wb-result-bg);border-color:var(--border);}
html body #app .replenish-v96:not(#\#):not(#\#):not(#\#) .rp-core strong{font-size:var(--fs-xl);color:var(--accent-text);}
html body #app .replenish-v96:not(#\#):not(#\#):not(#\#) :is(.rp-group,.rp-editor){box-shadow:var(--shadow-1);}
@media(max-width:1100px){
 html body #app .page-selection:not(#\#):not(#\#):not(#\#){grid-template-columns:minmax(0,1fr);}
 html body #app .page-selection:not(#\#):not(#\#):not(#\#) :is(#selection-import,#selection-analysis){grid-column:1;}
}
@media(max-width:760px){
 html body #app :is(.page-registrations,.page-competitors,.page-seasons):not(#\#):not(#\#):not(#\#) :is(.cat-card,.card){padding:16px;}
 html body #app .page-selection:not(#\#):not(#\#):not(#\#) .selection-card>:is(.cardhead,.cardbody){padding:16px;}
 /* 末列随表格滚动，避免两侧固定列占满窄屏；所有行内按钮保留。 */
 html body #app .page-registrations:not(#\#):not(#\#):not(#\#) .cat-registration-table :is(th,td):last-child{position:static;}
 html body #app .page-registrations:not(#\#):not(#\#):not(#\#) .cat-registration-table :is(th,td):first-child{width:160px;min-width:160px;max-width:180px;}
}
/* 窄屏筛选增高时表格仍有可操作的可视区，不减少任何记录。 */
@media(max-width:1100px){
 html body #app .page-registrations:not(#\#):not(#\#):not(#\#) .cat-registration-table{height:auto;min-height:0;}
 html body #app .page-registrations:not(#\#):not(#\#):not(#\#) .cat-registration-table .table-wrap{min-height:280px;max-height:68vh;flex:0 1 auto;}
}
/* 工单103 · 批次B1 结束 */
/* 工单103 · 批次B2 开始：产品/完成库/Listing/预览外框/合规；图库名称与资料常显。 */
html body #app :is(.page-products,.page-completed,.page-listing,.page-compliance):not(#\#):not(#\#):not(#\#) :is(.cat-card,.studio-card,.card){padding:20px;}
html body #app .page-products:not(#\#):not(#\#):not(#\#) .biz-product-layout{grid-template-columns:250px minmax(0,1fr);gap:20px;}
html body #app .page-products:not(#\#):not(#\#):not(#\#) .biz-product-layout>div{gap:16px;}
html body #app .page-products:not(#\#):not(#\#):not(#\#) .biz-product-layout>div>.cat-card:first-child{padding:20px 20px 0;}
html body #app .page-products:not(#\#):not(#\#):not(#\#) .biz-product-layout>div>.cat-card:first-child>.cat-cardhead{top:20px;right:20px;}
html body #app .page-products:not(#\#):not(#\#):not(#\#) .biz-source-line{margin:0 -20px;padding:16px 20px;border-radius:0 0 var(--r-lg) var(--r-lg);background:var(--surface-2);}
html body #app .page-products:not(#\#):not(#\#):not(#\#) .biz-four-grid{gap:16px;align-items:start;}
html body #app .page-products:not(#\#):not(#\#):not(#\#) .ap-product-library{padding:20px 0 0;}
html body #app .page-products:not(#\#):not(#\#):not(#\#) .ap-product-library>:is(.cat-cardhead,.tabs){padding-inline:20px;}
html body #app .page-products:not(#\#):not(#\#):not(#\#) .ap-product-gallery{padding:20px;}
html body #app .page-products:not(#\#):not(#\#):not(#\#) .ap-gallery-item{display:grid;grid-template-rows:var(--rh) auto auto;aspect-ratio:auto;border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface);align-self:stretch;}
html body #app .page-products:not(#\#):not(#\#):not(#\#) .ap-gallery-item>:is(.biz-material-preview,video){position:relative;inset:auto;grid-row:1;height:var(--rh);width:100%;min-height:0;}
html body #app .page-products:not(#\#):not(#\#):not(#\#) .ap-gallery-item>.biz-material-name{position:static;grid-row:2;opacity:1;pointer-events:auto;padding:8px 10px;white-space:normal;color:var(--text);}
html body #app .page-products:not(#\#):not(#\#):not(#\#) .ap-gallery-item>.biz-material-name :is(strong,.badge){color:var(--text);font-size:var(--fs-xs);white-space:normal;overflow-wrap:anywhere;}
html body #app .page-products:not(#\#):not(#\#):not(#\#) .ap-gallery-item>.small{position:static;grid-row:3;opacity:1;pointer-events:auto;padding:0 10px 10px;color:var(--text-3);}
html body #app .page-products:not(#\#):not(#\#):not(#\#) .ap-gallery-item::before{background:none;opacity:0;}
html body #app .page-products:not(#\#):not(#\#):not(#\#) .ap-gallery-item>.row-actions{top:8px;bottom:auto;left:8px;right:8px;gap:6px;}
html body #app .page-products:not(#\#):not(#\#):not(#\#) .ap-gallery-item>.row-actions button{border:1px solid var(--border-strong);border-radius:var(--r-sm);background:var(--surface);color:var(--accent-text);padding:4px 10px;min-height:32px;height:auto;backdrop-filter:none;}
html body #app .page-products:not(#\#):not(#\#):not(#\#) .ap-gallery-item>.row-actions button.danger{color:var(--danger);}
html body #app .page-completed:not(#\#):not(#\#):not(#\#) .cat-completed-layout{grid-template-columns:250px minmax(0,1fr);gap:20px;}
html body #app .page-completed:not(#\#):not(#\#):not(#\#) .cat-media-grid figure{border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface);overflow:hidden;}
html body #app .page-completed:not(#\#):not(#\#):not(#\#) .cat-media-grid figcaption{padding:10px;color:var(--text-2);font-size:var(--fs-xs);}
html body #app .page-completed:not(#\#):not(#\#):not(#\#) .cat-media-grid figcaption>:is(button,a){opacity:0;pointer-events:none;}
html body #app .page-completed:not(#\#):not(#\#):not(#\#) .cat-media-grid figure:is(:hover,:focus-within) figcaption>:is(button,a){opacity:1;pointer-events:auto;}
html body #app .page-listing:not(#\#):not(#\#):not(#\#) .studio-workbench{grid-template-columns:minmax(300px,.36fr) minmax(0,.64fr);gap:20px;}
html body #app .page-listing:not(#\#):not(#\#):not(#\#) .studio-workbench>aside,html body #app .page-listing:not(#\#):not(#\#):not(#\#) .studio-right{gap:16px;}
html body #app .page-listing:not(#\#):not(#\#):not(#\#) .studio-control{grid-template-columns:110px minmax(0,1fr);gap:12px;font-size:var(--fs-sm);}
html body #app .page-listing-preview:not(#\#):not(#\#):not(#\#) .lp-controls{padding:20px;gap:16px;}
html body #app .page-compliance:not(#\#):not(#\#):not(#\#) :is(.formgrid,.grid){gap:20px;}
@media(max-width:1100px){
 html body #app .page-products:not(#\#):not(#\#):not(#\#) .biz-product-layout,html body #app .page-completed:not(#\#):not(#\#):not(#\#) .cat-completed-layout,html body #app .page-listing:not(#\#):not(#\#):not(#\#) .studio-workbench{grid-template-columns:minmax(0,1fr);}
}
@media(max-width:760px){
 html body #app :is(.page-products,.page-completed,.page-listing,.page-compliance):not(#\#):not(#\#):not(#\#) :is(.cat-card,.studio-card,.card){padding:16px;}
 html body #app .page-products:not(#\#):not(#\#):not(#\#) .biz-product-layout>div>.cat-card:first-child{padding:16px 16px 0;}
 html body #app .page-products:not(#\#):not(#\#):not(#\#) .biz-source-line{margin:0 -16px;padding:16px;}
 html body #app .page-products:not(#\#):not(#\#):not(#\#) .ap-product-library{padding:16px 0 0;}
 html body #app .page-products:not(#\#):not(#\#):not(#\#) .ap-product-library>:is(.cat-cardhead,.tabs),html body #app .page-products:not(#\#):not(#\#):not(#\#) .ap-product-gallery{padding-inline:16px;}
 html body #app .page-listing:not(#\#):not(#\#):not(#\#) .studio-control{grid-template-columns:minmax(0,1fr);gap:6px;}
}
@media(hover:none){
 html body #app .page-products:not(#\#):not(#\#):not(#\#) .ap-gallery-item>.row-actions{opacity:1;pointer-events:auto;}
 html body #app .page-products:not(#\#):not(#\#):not(#\#) .ap-gallery-item>.row-actions button{min-height:44px;}
 html body #app .page-completed:not(#\#):not(#\#):not(#\#) .cat-media-grid figcaption>:is(button,a){opacity:1;pointer-events:auto;}
}
/* 操作条空白透传图片点击，仅实际按钮在展示态接受指针。 */
html body #app .page-products:not(#\#):not(#\#):not(#\#) .ap-gallery-item>.row-actions{pointer-events:none;}
html body #app .page-products:not(#\#):not(#\#):not(#\#) .ap-gallery-item>.row-actions>button{pointer-events:none;}
html body #app .page-products:not(#\#):not(#\#):not(#\#) .ap-gallery-item:is(:hover,:has(:focus-visible):not(:root[data-ui-input="pointer"] *))>.row-actions>button{pointer-events:auto;}
@media(hover:none){html body #app .page-products:not(#\#):not(#\#):not(#\#) .ap-gallery-item>.row-actions>button{pointer-events:auto;}}
/* 工单103 · 批次B2 结束 */
/* 工单103 · 批次B3 开始：图片/视频仅换蓝白层级；97结构、三行预览与列数保留。 */
html body #app :is(.image-page-v3,.page-videos):not(#\#):not(#\#):not(#\#) :is(.cat-card,.studio-card){padding:20px;}
html body #app .image-page-v3:not(#\#):not(#\#):not(#\#) .biz-layout{gap:20px;}
html body #app .image-page-v3:not(#\#):not(#\#):not(#\#) :is(.image-call,.image-brand,.image-spec,.prompt-tile){background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-md);padding:16px;}
html body #app .image-page-v3:not(#\#):not(#\#):not(#\#) .biz-material-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);overflow:hidden;}
html body #app .image-page-v3:not(#\#):not(#\#):not(#\#) .biz-material-card .biz-material-name{padding:10px;color:var(--text);}
html body #app .image-page-v3:not(#\#):not(#\#):not(#\#) .biz-material-card>.small{padding-inline:10px;color:var(--text-3);}
html body #app .image-page-v3:not(#\#):not(#\#):not(#\#) .biz-material-card>.row-actions{padding:8px;gap:8px;}
html body #app .image-page-v3:not(#\#):not(#\#):not(#\#) .biz-image-result{padding:16px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);}
html body #app .image-page-v3:not(#\#):not(#\#):not(#\#) .biz-image-result>.row-actions>button,
html body #app .image-page-v3:not(#\#):not(#\#):not(#\#) .biz-material-card>.row-actions>button{opacity:0;pointer-events:auto;transition:opacity var(--dur-hover) var(--ease-out);}
html body #app .image-page-v3:not(#\#):not(#\#):not(#\#) .biz-image-result:is(:hover,:has(:focus-visible):not(:root[data-ui-input="pointer"] *))>.row-actions>button,
html body #app .image-page-v3:not(#\#):not(#\#):not(#\#) .biz-material-card:is(:hover,:has(:focus-visible):not(:root[data-ui-input="pointer"] *))>.row-actions>button{opacity:1;pointer-events:auto;}
html body #app .page-videos:not(#\#):not(#\#):not(#\#) .studio-workbench.studio-video{grid-template-columns:minmax(350px,.4fr) minmax(0,.6fr);gap:20px;}
html body #app .page-videos:not(#\#):not(#\#):not(#\#) .studio-control{grid-template-columns:110px minmax(0,1fr);gap:12px;}
html body #app .page-videos:not(#\#):not(#\#):not(#\#) .studio-material-grid article{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);}
html body #app .page-videos:not(#\#):not(#\#):not(#\#) .studio-material-grid>article>strong{white-space:normal;overflow-wrap:anywhere;padding:10px;}
html body #app .page-videos:not(#\#):not(#\#):not(#\#) .studio-material-grid .row-actions{padding:8px;opacity:0;pointer-events:auto;transition:opacity var(--dur-hover) var(--ease-out);}
html body #app .page-videos:not(#\#):not(#\#):not(#\#) .studio-material-grid article:is(:hover,:has(:focus-visible):not(:root[data-ui-input="pointer"] *)) .row-actions{opacity:1;pointer-events:auto;}
@media(max-width:1100px){html body #app .page-videos:not(#\#):not(#\#):not(#\#) .studio-workbench.studio-video{grid-template-columns:minmax(0,1fr);}}
@media(max-width:760px){
 html body #app :is(.image-page-v3,.page-videos):not(#\#):not(#\#):not(#\#) :is(.cat-card,.studio-card){padding:16px;}
 html body #app .page-videos:not(#\#):not(#\#):not(#\#) .studio-control{grid-template-columns:minmax(0,1fr);gap:6px;}
}
@media(hover:none){
 html body #app .image-page-v3:not(#\#):not(#\#):not(#\#) .biz-image-result>.row-actions>button,
 html body #app .image-page-v3:not(#\#):not(#\#):not(#\#) .biz-material-card>.row-actions>button,
 html body #app .page-videos:not(#\#):not(#\#):not(#\#) .studio-material-grid .row-actions{opacity:1;pointer-events:auto;}
}
html body #app .image-page-v3:not(#\#):not(#\#):not(#\#) .biz-material-preview{border:0;border-radius:var(--r-md);padding:0;}
/* 工单103 · 批次B3 结束 */
/* 工单103 · 批次B4 开始：运营页面保留原指标口径与全部控制，仅统一卡片和操作条。 */
html body #app :is(.page-home,.page-dashboard,.page-ads,.page-ads-console,.page-inventory,.page-supply,.page-tasks):not(#\#):not(#\#):not(#\#) :is(.card,.cat-card,.plan-card,.ds-panel){padding:20px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);}
html body #app :is(.page-home,.page-dashboard,.page-ads,.page-ads-console,.page-inventory,.page-supply,.page-tasks):not(#\#):not(#\#):not(#\#) :is(.grid,.cat-two,.plan-layout,.ds-grid){gap:20px;}
html body #app :is(.page-home,.page-dashboard,.page-ads,.page-ads-console,.page-inventory,.page-supply,.page-tasks):not(#\#):not(#\#):not(#\#) :is(.toolbar,.filters,.plan-filter){display:flex;align-items:end;flex-wrap:wrap;gap:12px;padding:16px;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-md);}
html body #app :is(.page-home,.page-dashboard,.page-ads,.page-ads-console,.page-inventory,.page-supply,.page-tasks):not(#\#):not(#\#):not(#\#) :is(.toolbar,.filters,.plan-filter)>*{min-width:0;}
html body #app :is(.page-dashboard,.page-ads,.page-ads-console,.page-inventory):not(#\#):not(#\#):not(#\#) :is(.stat,.kpi,.metric){background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);color:var(--text);}
html body #app :is(.page-dashboard,.page-ads,.page-ads-console,.page-inventory):not(#\#):not(#\#):not(#\#) :is(.stat,.kpi,.metric)>strong{color:var(--text);font-variant-numeric:tabular-nums;}
html body #app :is(.page-supply,.page-tasks):not(#\#):not(#\#):not(#\#) .row-actions{flex-wrap:wrap;gap:8px;}
@media(max-width:760px){
 html body #app :is(.page-home,.page-dashboard,.page-ads,.page-ads-console,.page-inventory,.page-supply,.page-tasks):not(#\#):not(#\#):not(#\#) :is(.card,.cat-card,.plan-card,.ds-panel){padding:16px;}
 html body #app :is(.page-home,.page-dashboard,.page-ads,.page-ads-console,.page-inventory,.page-supply,.page-tasks):not(#\#):not(#\#):not(#\#) :is(.toolbar,.filters,.plan-filter){padding:12px;gap:8px;}
}
html body #app .page-home:not(#\#):not(#\#):not(#\#) .hero>button{border-radius:var(--r-sm);min-height:var(--control-h);}
/* 工单103 · 批次B4 结束 */
/* 工单103 · 批次B5 开始：管理页保留角色/敏感信息/下拉原机制，仅换蓝白呈现。 */
html body #app :is(.page-token-monitor,.page-models,.page-erp,.page-permissions,.page-logs):not(#\#):not(#\#):not(#\#) :is(.card,.cat-card,.r-card,.team-card){padding:20px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);}
html body #app :is(.page-token-monitor,.page-models,.page-erp,.page-permissions,.page-logs):not(#\#):not(#\#):not(#\#) :is(.toolbar,.filters,.team-mode-note){padding:16px;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-md);color:var(--text-2);}
html body #app .page-permissions:not(#\#):not(#\#):not(#\#) .team-layout{gap:16px;}
html body #app .page-permissions:not(#\#):not(#\#):not(#\#) :is(.team-tree-root,.team-group-list article,.team-role-rows article){padding:12px;border:1px solid var(--border);border-radius:var(--r-md);margin-block:8px;}
html body #app .page-permissions:not(#\#):not(#\#):not(#\#) :is(.team-tree-root,.team-role-rows article).selected{background:var(--surface-selected);border-color:var(--border-strong);color:var(--accent-text);}
html body #app .page-permissions:not(#\#):not(#\#):not(#\#) .team-scope-box{padding:16px;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-md);}
html body #app .page-models:not(#\#):not(#\#):not(#\#) .r-model-list td{vertical-align:top;}
html body #app .page-models:not(#\#):not(#\#):not(#\#) .r-break{overflow-wrap:anywhere;}
@media(max-width:760px){html body #app :is(.page-token-monitor,.page-models,.page-erp,.page-permissions,.page-logs):not(#\#):not(#\#):not(#\#) :is(.card,.cat-card,.r-card,.team-card){padding:16px;}}
/* 工单103 · 批次B5 结束 */
/* 工单103 · 批次B6 开始：登录/个人资料/原有弹窗抽屉浮层；不改变入口与焦点逻辑。 */
html body #app .auth-screen:not(#\#):not(#\#):not(#\#){background:var(--bg);color:var(--text);padding:24px;}
html body #app .auth-card:not(#\#):not(#\#):not(#\#){background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:32px;box-shadow:var(--shadow-2);}
html body #app .auth-card:not(#\#):not(#\#):not(#\#) h1{font-size:var(--fs-xl);line-height:var(--lh-tight);}
html body #app .auth-card:not(#\#):not(#\#):not(#\#) :is(p,.auth-field){font-size:var(--fs-sm);color:var(--text-2);}
html body #app .auth-card:not(#\#):not(#\#):not(#\#) .auth-error{color:var(--danger);}
html body :is(dialog,.plan-drawer,.cat-preview,.image-zoom-pane,.prompt-tooltip):not(#\#):not(#\#):not(#\#){background:var(--surface);color:var(--text);border-color:var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-3);}
html body dialog:not(#cat-lightbox):not(#\#):not(#\#):not(#\#) :is(.modalhead,.modalbody,.modalfoot){padding:20px;}
html body dialog:not(#cat-lightbox):not(#\#):not(#\#):not(#\#) :is(.modalhead,.modalfoot){border-color:var(--divider);}
html body :is(.plan-drawer,.cat-preview):not(#\#):not(#\#):not(#\#) :is(h2,h3){color:var(--text);}
html body .image-zoom-pane:not(#\#):not(#\#):not(#\#){padding:12px;}
html body .image-zoom-pane:not(#\#):not(#\#):not(#\#)>div{color:var(--text-2);border-top:1px solid var(--divider);padding-top:8px;}
html body #cat-lightbox:not(#\#):not(#\#):not(#\#){background:transparent;border:0;box-shadow:none;}
html body #cat-lightbox:not(#\#):not(#\#):not(#\#) .lb-info{background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:var(--r-lg);}
html body :is(.toast,.errorbox,.error-box):not(#\#):not(#\#):not(#\#){border:1px solid var(--border-strong);border-radius:var(--r-md);background:var(--surface);color:var(--text);}
@media(max-width:760px){
 html body #app .auth-screen:not(#\#):not(#\#):not(#\#){padding:16px;}
 html body #app .auth-card:not(#\#):not(#\#):not(#\#){padding:24px;}
 html body dialog:not(#cat-lightbox):not(#\#):not(#\#):not(#\#) :is(.modalhead,.modalbody,.modalfoot){padding:16px;}
}
/* 完成库等共享利润摘要沿用旧组件，修正旧硬编码蓝/紫文字在深色面板上的对比度。 */
html body #app .cat-profit:not(#\#):not(#\#):not(#\#) span{color:var(--text-3);}
html body #app .cat-profit:not(#\#):not(#\#):not(#\#) strong{color:var(--accent-text);}
html body #app .cat-profit:not(#\#):not(#\#):not(#\#) strong.is-below{color:var(--danger);}
html body #app :is(.biz-material-preview,.cat-media-open):not(#\#):not(#\#):not(#\#){border-radius:var(--r-md);padding:0;border:0;}
/* 实际纯色文字取样定位到的旧组件硬编码；不改文字与字段。 */
html body #app :is(.cat-product-item small,.studio-count,.cat-count):not(#\#):not(#\#):not(#\#){color:var(--text-3);}
html body #app :is(.studio-count.over,.cat-count.over):not(#\#):not(#\#):not(#\#){color:var(--danger);}
html body #app .biz-tile-hint:not(#\#):not(#\#):not(#\#){color:var(--text-2);}
html body #app .studio-rec-list li:not(#\#):not(#\#):not(#\#){background:var(--surface-2);color:var(--text-3);}
html body #app .planning-page tr.selected:not(#\#):not(#\#):not(#\#),html body #app .planning-page tr.selected:not(#\#):not(#\#):not(#\#)>td{background:var(--surface-selected);}
html body #app .badge.orange:not(#\#):not(#\#):not(#\#){background:var(--surface);color:var(--warning);}
html body #app .image-page-v3:not(#\#):not(#\#):not(#\#) .biz-image-result .result-purpose>button{opacity:0;transition:opacity var(--dur-hover) var(--ease-out);}
html body #app .image-page-v3:not(#\#):not(#\#):not(#\#) .biz-image-result:is(:hover,:has(:focus-visible):not(:root[data-ui-input="pointer"] *)) .result-purpose>button{opacity:1;}
@media(hover:none){html body #app .image-page-v3:not(#\#):not(#\#):not(#\#) .biz-image-result .result-purpose>button{opacity:1;}}
html body #app .content button[data-nav]:not(.step):not(#\#):not(#\#):not(#\#){border-radius:var(--r-sm);min-height:var(--control-h-sm);}
html body #cat-lightbox:not(#\#):not(#\#):not(#\#) :is(.lb-btn,.lb-nav){border-radius:var(--r-sm);}
/* 原有弹窗内控件沿用同一令牌，灯箱工具层保留透明底；信息编辑区使用原生表单皮肤。 */
html body dialog:not(#cat-lightbox):not(#\#):not(#\#):not(#\#) :is(button,.button-link):where(:not(.biz-material-preview):not(.cat-media-open)){min-height:var(--control-h-sm);border:1px solid var(--border-strong);border-radius:var(--r-sm);padding:6px 14px;background:var(--surface);color:var(--accent-text);font-size:var(--fs-sm);line-height:1.4;box-shadow:none;}
html body dialog:not(#cat-lightbox):not(#\#):not(#\#):not(#\#) :is(button.primary,.button-link.primary){background:var(--accent);border-color:var(--accent);color:var(--on-accent);}
html body dialog:not(#cat-lightbox):not(#\#):not(#\#):not(#\#) :is(.linkbtn,.ghost){background:transparent;border-color:transparent;color:var(--accent-text);}
html body dialog:not(#cat-lightbox):not(#\#):not(#\#):not(#\#) :is(button.danger,.linkbtn.danger){color:var(--danger);}
html body dialog:not(#\#):not(#\#):not(#\#) :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=file]),select,textarea){border:1px solid var(--border-strong);border-radius:var(--r-sm);background:var(--ap-field);color:var(--text);font-size:var(--fs-sm);line-height:1.5;min-width:0;padding:8px 10px;box-shadow:none;}
html body dialog:not(#\#):not(#\#):not(#\#) :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=file]),select){height:var(--control-h);min-height:var(--control-h);}
html body dialog:not(#\#):not(#\#):not(#\#) :is(input,textarea)::placeholder{color:var(--text-3);opacity:1;}
html body #cat-lightbox:not(#\#):not(#\#):not(#\#) .lb-info button{min-height:var(--control-h-sm);border:1px solid var(--border-strong);border-radius:var(--r-sm);padding:6px 14px;background:var(--surface-2);color:var(--text);font-size:var(--fs-sm);}
html body #cat-lightbox:not(#\#):not(#\#):not(#\#) .lb-info button.danger{color:var(--danger);}
/* 登记表单与预览抽屉的旧字段组件：文字与数据不动，去除固定浅色底。 */
html body :is(#app,dialog):not(#\#):not(#\#):not(#\#) :is(.own-head p,.own-auto-text small){color:var(--text-3);}
html body :is(#app,dialog):not(#\#):not(#\#):not(#\#) :is(.own-group>legend,.own-auto-text,.own-field label,.cat-kv dd){color:var(--text);}
html body :is(#app,dialog):not(#\#):not(#\#):not(#\#) .own-index{background:var(--accent);color:var(--on-accent);}
html body :is(#app,dialog):not(#\#):not(#\#):not(#\#) .own-chip{background:var(--surface);color:var(--text-2);}
html body :is(#app,dialog):not(#\#):not(#\#):not(#\#) .own-chip-manual{color:var(--success);}
html body :is(#app,dialog):not(#\#):not(#\#):not(#\#) .own-chip-competitor{color:var(--warning);}
html body :is(#app,dialog):not(#\#):not(#\#):not(#\#) .own-chip-none{color:var(--danger);}
html body :is(#app,dialog):not(#\#):not(#\#):not(#\#) .cat-timeline li{color:var(--accent-text);}
html body :is(#app,dialog):not(#\#):not(#\#):not(#\#) .cat-timeline li>span{color:var(--text-2);}
html body :is(#app,dialog):not(#\#):not(#\#):not(#\#) .plan-no-photo{background:var(--surface-3);color:var(--text-3);font-size:var(--fs-xs);border-color:var(--border);}
html body :is(#app,dialog):not(#\#):not(#\#):not(#\#) .xiyou-box{background:var(--surface);color:var(--text);border-color:var(--border);}
html body :is(#app,dialog):not(#\#):not(#\#):not(#\#) .task-preview-resizable .cat-keyword-tags a{background:var(--surface-2);color:var(--accent-text);}
html body #app:not(#\#):not(#\#):not(#\#) tbody tr.selected:where(:not(.listing-preview-canvas *)),html body #app:not(#\#):not(#\#):not(#\#) tbody tr.selected>td:where(:not(.listing-preview-canvas *)){background:var(--surface-selected);}
/* 工单103 · 批次B6 结束 */
/* 工单101 · 阶段2功能推广（103后）：共享满行图库与原上传入口，沿用DS-2.0。 */
html body :is(#app,dialog):not(#\#):not(#\#):not(#\#) .ap-shared-gallery{--rh:220px;display:flex;flex-wrap:wrap;align-items:flex-start;gap:8px;min-width:0;}
html body :is(#app,dialog):not(#\#):not(#\#):not(#\#) .ap-shared-gallery::after{content:'';flex-grow:999999;}
html body :is(#app,dialog):not(#\#):not(#\#):not(#\#) .ap-shared-item{--ar:1.33;flex:var(--ar) 1 calc(var(--ar)*var(--rh));max-width:calc(var(--ar)*var(--rh)*1.5);min-width:0;align-self:flex-start;position:relative;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);overflow:hidden;}
html body :is(#app,dialog):not(#\#):not(#\#):not(#\#) .ap-shared-item>:is(.biz-material-preview,.biz-result-img){display:block;width:100%;height:var(--rh);aspect-ratio:auto;position:relative;border:0;padding:0;border-radius:0;background:var(--surface-2);}
html body :is(#app,dialog):not(#\#):not(#\#):not(#\#) .ap-shared-item>:is(.biz-material-preview,.biz-result-img)>img{display:block;width:100%;height:100%;object-fit:cover;}
html body :is(#app,dialog):not(#\#):not(#\#):not(#\#) .ap-shared-item>.cat-empty{min-height:var(--rh);}
html body :is(#app,dialog):not(#\#):not(#\#):not(#\#) .ap-shared-item .ap-gallery-action{opacity:0;pointer-events:auto;transition:opacity var(--dur-hover) var(--ease-out);}
html body :is(#app,dialog):not(#\#):not(#\#):not(#\#) .ap-shared-item:is(:hover,:has(:focus-visible):not(:root[data-ui-input="pointer"] *)) .ap-gallery-action{opacity:1;}
html body :is(#app,dialog):not(#\#):not(#\#):not(#\#) .ap-shared-item :is(.biz-material-name,.biz-ref-source,.result-purpose-error,.ir-error-summary){position:static;opacity:1;overflow-wrap:anywhere;}
html body :is(#app,dialog):not(#\#):not(#\#):not(#\#) .ap-upload-compact{background:transparent;border:0;box-shadow:none;padding:0;min-height:0;}
html body :is(#app,dialog):not(#\#):not(#\#):not(#\#) .xiyou-drop:has(.ap-upload-target){background:transparent;border:0;min-height:0;padding:0;align-items:start;text-align:left;}
html body :is(#app,dialog):not(#\#):not(#\#):not(#\#) .xiyou-drop:has(.ap-upload-target)>strong{display:none;}
html body :is(#app,dialog):not(#\#):not(#\#):not(#\#) .ap-upload-target{position:relative;}
html body :is(#app,dialog):not(#\#):not(#\#):not(#\#) button.ap-upload-target::before{content:'';position:absolute;inset:-12px;}
html body :is(#app,dialog):not(#\#):not(#\#):not(#\#) .ap-upload-target.ap-upload-over{background:var(--accent-hover);color:var(--on-accent);transform:scale(1.02);}
html body :is(#app,dialog):not(#\#):not(#\#):not(#\#) .ap-upload-target.ap-upload-over::after{content:'松开即上传';position:absolute;inset:0;display:grid;place-content:center;background:var(--accent-hover);color:var(--on-accent);border-radius:var(--r-sm);pointer-events:none;}
html body :is(#app,dialog):not(#\#):not(#\#):not(#\#) input.ap-upload-target[type=file]::file-selector-button{min-height:var(--control-h);padding:8px 14px;margin-right:12px;border:1px solid var(--border-strong);border-radius:var(--r-sm);background:var(--surface);color:var(--accent-text);font:inherit;cursor:pointer;}
html body :is(#app,dialog):not(#\#):not(#\#):not(#\#) .ap-upload-status{display:block;color:var(--text-2);font-size:var(--fs-sm);margin-block:8px;}
@media(max-width:860px){
 html body :is(#app,dialog):not(#\#):not(#\#):not(#\#) .ap-shared-gallery{--rh:150px;}
 html body :is(#app,dialog):not(#\#):not(#\#):not(#\#) .ap-shared-gallery>.ap-shared-item{flex:1 1 calc((100% - 8px)/2);max-width:calc((100% - 8px)/2);}
}
@media(hover:none){html body :is(#app,dialog):not(#\#):not(#\#):not(#\#) .ap-shared-item .ap-gallery-action{opacity:1;}}
@media(prefers-reduced-motion:reduce){html body :is(#app,dialog):not(#\#):not(#\#):not(#\#) .ap-upload-target.ap-upload-over{transform:none;}}
/* 工单101 · 阶段2功能推广结束 */

/* 工单101 · 阶段3批次2：报告/任务/旺季素材，原字段与选择语义保持。 */
html body :is(#app,dialog):not(#\#):not(#\#):not(#\#) .selection-drop.ap-upload-compact{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;text-align:left;}
html body :is(#app,dialog):not(#\#):not(#\#):not(#\#) .selection-drop.ap-upload-compact>:is(strong,span){font-size:var(--fs-sm);color:var(--text-2);}
html body :is(#app,dialog):not(#\#):not(#\#):not(#\#) .ap-shared-item:is(button,a),html body :is(#app,dialog):not(#\#):not(#\#):not(#\#) .ap-shared-item>.task-image-preview{display:block;height:var(--rh);padding:0;border-radius:var(--r-lg);width:100%;text-align:left;background:var(--surface);}
html body :is(#app,dialog):not(#\#):not(#\#):not(#\#) .ap-shared-item:is(button,a)>img,html body :is(#app,dialog):not(#\#):not(#\#):not(#\#) .ap-shared-item>.task-image-preview>img,html body :is(#app,dialog):not(#\#):not(#\#):not(#\#) .ap-shared-item>a>img{display:block;width:100%;height:var(--rh);object-fit:cover;max-width:none;border-radius:0;}
html body :is(#app,dialog):not(#\#):not(#\#):not(#\#) .ap-shared-item>a{display:block;}
html body :is(#app,dialog):not(#\#):not(#\#):not(#\#) .plan-avatar-grid.ap-shared-gallery{--rh:120px;}
/* 工单101 · 阶段3批次2结束 */

/* 工单101 · 阶段3批次3：完成库/资料图复用共享图库，分区/排序/选择保持。 */
html body :is(#app,dialog):not(#\#):not(#\#):not(#\#) .ap-shared-item>figure{margin:0;}
html body :is(#app,dialog):not(#\#):not(#\#):not(#\#) figure.ap-shared-item{margin:0;}
html body :is(#app,dialog):not(#\#):not(#\#):not(#\#) .ap-shared-item>.cat-media-open{display:block;width:100%;height:var(--rh);aspect-ratio:auto;border:0;padding:0;background:var(--surface-2);}
html body :is(#app,dialog):not(#\#):not(#\#):not(#\#) .ap-shared-item>.cat-media-open>img,html body :is(#app,dialog):not(#\#):not(#\#):not(#\#) .ap-shared-item>img,html body :is(#app,dialog):not(#\#):not(#\#):not(#\#) .ap-shared-item>video{width:100%;height:var(--rh);max-width:none;object-fit:cover;display:block;}
html body :is(#app,dialog):not(#\#):not(#\#):not(#\#) .ap-shared-item figcaption{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:12px;color:var(--text);font-size:var(--fs-sm);}
html body :is(#app,dialog):not(#\#):not(#\#):not(#\#) .ap-shared-item figcaption>span{flex-basis:100%;overflow-wrap:anywhere;}
html body :is(#app,dialog):not(#\#):not(#\#):not(#\#) [data-cat-drop].ap-upload-target{display:inline-flex;align-items:center;padding:8px 14px;width:auto;min-height:var(--control-h);background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--r-sm);text-align:left;cursor:pointer;}
html body :is(#app,dialog):not(#\#):not(#\#):not(#\#) [data-cat-drop].ap-upload-target::before{content:'';position:absolute;inset:-12px;}
/* 工单101 · 阶段3批次3结束 */

/* 工单101 · 阶段3批次4：视频参考图采用同一图库；原勾选与字段常显。 */
html body :is(#app,dialog):not(#\#):not(#\#):not(#\#) .studio-material-grid.ap-shared-gallery>.ap-shared-item{display:block;padding:0;}
html body :is(#app,dialog):not(#\#):not(#\#):not(#\#) .studio-material-grid.ap-shared-gallery>.ap-shared-item>img{width:100%;height:var(--rh);object-fit:cover;}
html body :is(#app,dialog):not(#\#):not(#\#):not(#\#) .studio-material-grid.ap-shared-gallery>.ap-shared-item :is(.row-actions,strong,p){margin:8px 12px;}
/* 工单101 · 阶段3批次4结束 */

/* 工单101 · 阶段3批次7：现有产品头像选择/上传与原生文件选择入口。 */
html body :is(#app,dialog):not(#\#):not(#\#):not(#\#) [data-avatar-drop].ap-upload-target{background:transparent;border:0;min-height:0;padding:12px;display:flex;align-items:center;gap:16px;}
html body :is(#app,dialog):not(#\#):not(#\#):not(#\#) [data-avatar-drop].ap-upload-target>img{width:120px;height:120px;object-fit:contain;}
html body :is(#app,dialog):not(#\#):not(#\#):not(#\#) .avatar-pick.ap-shared-gallery{--rh:120px;}
/* 工单101 · 阶段3批次7结束 */

/* 101获批纯预览键盘入口：只对应原96裸图预览；原选头像动作不变。 */
html body :is(#app,dialog):not(#\#):not(#\#):not(#\#) .ap-shared-item>.ap-gallery-preview{position:absolute;top:calc(var(--rh) - 44px);right:8px;z-index:2;background:var(--surface);color:var(--accent-text);border:1px solid var(--border-strong);border-radius:var(--r-sm);padding:6px 10px;}
html body :is(#app,dialog):not(#\#):not(#\#):not(#\#) .ap-shared-item:is(.on,[aria-pressed=true]){outline:2px solid var(--accent);outline-offset:2px;}

/* 101兼容面板：只处理现有追加参考图/文件预览/逐条任务引用，不新造旧入口。 */
html body :is(#app,dialog):not(#\#):not(#\#):not(#\#) .ap-shared-item>label>img{display:block;width:100%;height:var(--rh);object-fit:cover;max-width:none;}
html body :is(#app,dialog):not(#\#):not(#\#):not(#\#) .ap-shared-item>label{display:block;overflow-wrap:anywhere;}
html body :is(#app,dialog):not(#\#):not(#\#):not(#\#) .ap-shared-item.filechip{display:block;height:auto;padding:0;}
html body :is(#app,dialog):not(#\#):not(#\#):not(#\#) .ap-shared-item.filechip>span{display:block;padding:8px 12px;overflow-wrap:anywhere;}
/* 101原生文件/标签入口的12px命中区；文件按钮尺寸仍使用共享控件变量。 */
html body :is(#app,dialog):not(#\#):not(#\#):not(#\#) label.ap-upload-target::before{content:'';position:absolute;inset:-12px;}
html body :is(#app,dialog):not(#\#):not(#\#):not(#\#) input[type=file].ap-upload-target{height:auto;min-height:calc(var(--control-h) + 24px);padding:12px;border:0;background:transparent;}
/* 工单100：新版品牌VI，仅使用共享语义变量；保持103蓝白皮肤的继承。 */
#bp-card[data-vi3-root]{min-width:0;}
#bp-card[data-vi3-root] .bp-body{display:grid;gap:var(--s-4,16px);min-width:0;}
#bp-card[data-vi3-root] .vi3-workflow ol{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s-3,12px);padding:0;list-style:none;}
#bp-card[data-vi3-root] .vi3-workflow li{display:flex;flex-direction:column;align-items:flex-start;gap:var(--s-2,8px);min-width:0;padding:var(--s-3,12px);border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface);}
#bp-card[data-vi3-root] .vi3-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s-4,16px);}
#bp-card[data-vi3-root] .vi3-module{min-width:0;padding:var(--s-4,16px);border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface);}
#bp-card[data-vi3-root] .vi3-module h3{margin:0;color:var(--text);}
#bp-card[data-vi3-root] .vi3-module .bp-text{white-space:pre-wrap;overflow-wrap:anywhere;}
#bp-card[data-vi3-root] .actions{display:flex;flex-wrap:wrap;gap:var(--s-2,8px);}
#bp-card[data-vi3-root] .vi3-palette{display:flex;align-items:center;flex-wrap:wrap;gap:var(--s-2,8px);}
#bp-card[data-vi3-root] .vi3-import{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--s-2,8px);}
#bp-card[data-vi3-root] .vi3-version{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s-3,12px);font-weight:600;}
#bp-card[data-vi3-root] :is(p,li,small,dd),#editor[data-vi3-dialog] :is(p,li,small,dd){overflow-wrap:anywhere;}
#bp-card[data-vi3-root] .bp-form{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--s-2,8px);}
#bp-card[data-vi3-root] select,#bp-card[data-vi3-root] textarea,#editor[data-vi3-dialog] textarea{min-width:0;max-width:100%;box-sizing:border-box;}
#editor[data-vi3-dialog] .vi3-detail{min-width:0;}
#editor[data-vi3-dialog] .vi3-rules{margin:0;}
#editor[data-vi3-dialog] .vi3-rules>div{display:grid;grid-template-columns:minmax(100px,1fr) minmax(0,3fr);gap:var(--s-3,12px);padding:var(--s-2,8px) 0;border-bottom:1px solid var(--border);}
#editor[data-vi3-dialog] .vi3-rules dt{font-weight:600;color:var(--text);}
#editor[data-vi3-dialog] .vi3-rules dd{margin:0;min-width:0;color:var(--text-2);}
#editor[data-vi3-dialog] .vi3-rules ul{padding-left:var(--s-4,16px);}
#editor[data-vi3-dialog] .vi3-check{display:flex;align-items:center;gap:var(--s-2,8px);}
#editor[data-vi3-dialog] [data-vi3-unsaved]{flex-basis:100%;}
#editor[data-vi3-dialog] [data-vi3-unsaved][hidden]{display:none;}
@media(max-width:760px){
 #bp-card[data-vi3-root] .vi3-cards,#bp-card[data-vi3-root] .vi3-workflow ol{grid-template-columns:minmax(0,1fr);}
 #editor[data-vi3-dialog] .vi3-rules>div{grid-template-columns:minmax(0,1fr);}
}

/* 新VI表单不继承旧卡片的命名网格区域或产品长文框的46vh高度。 */
#app #bp-card[data-vi3-root] .bp-form{grid-template-areas:none;}
#app #bp-card[data-vi3-root] .bp-form>*{grid-area:auto;grid-column:1;grid-row:auto;}
#app #bp-card[data-vi3-root] .bp-form>textarea{height:calc(var(--control-h) * 3);min-height:calc(var(--control-h) * 2);max-height:40vh;resize:vertical;}

/* 工单102 · 补货作战图：仅结果呈现；DS-2.0语义变量，旧计算明细原样。 */
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-shell{min-width:0;container-type:inline-size;}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-tabs{display:flex;gap:4px;margin:0 0 20px;padding:4px;border:1px solid var(--border);border-radius:var(--r-sm);width:max-content;max-width:100%;background:var(--surface-2);}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-tabs button[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:var(--on-accent);}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) :is(.rp-war-visual,.rp-war-computations)[hidden]{display:none;}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-heading{margin-bottom:16px;}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-heading p{color:var(--text-2);overflow-wrap:anywhere;}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;padding:24px;background:var(--replenish-summary-bg);color:var(--replenish-summary-text);border-radius:var(--r-lg);}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-summary>div{display:grid;gap:8px;min-width:0;padding-inline-end:16px;border-inline-end:1px solid var(--replenish-summary-divider);}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-summary>div:last-child{border:0;}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-summary :is(span,small){color:var(--replenish-summary-text-2);font-size:var(--fs-sm);overflow-wrap:anywhere;}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-summary strong{font-size:24px;line-height:1.35;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-info{display:flex;flex-wrap:wrap;gap:12px;margin-block:16px;}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-info>div{display:grid;gap:6px;flex:1 1 180px;padding:16px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-info :is(span,small){color:var(--text-2);font-size:var(--fs-sm);}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-risk{display:flex;align-items:center;flex-wrap:wrap;gap:12px;padding:12px 16px;margin-block:12px;background:var(--warning-soft);border-radius:var(--r-sm);color:var(--warning);}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-risk p{margin:0;flex:1 1 240px;overflow-wrap:anywhere;}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-main{display:grid;grid-template-columns:minmax(0,1fr) 320px;align-items:stretch;gap:16px;margin-block:16px;min-width:0;}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) :is(.rp-war-calendar,.rp-war-detail,.rp-war-stock){padding:20px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);min-width:0;}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) :is(.rp-war-calendar-scroll,.rp-war-stock-scroll){overflow:auto;max-width:100%;overscroll-behavior:contain;}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-calendar-scroll{max-height:900px;}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-calendar-inner{min-width:max(760px,var(--calendar-min,760px));--months:3;}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) :is(.rp-war-month-head,.rp-war-season,.rp-war-month-row,.rp-war-batch){display:grid;grid-template-columns:160px minmax(0,1fr);}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-month-head{position:sticky;top:0;z-index:3;background:var(--surface);}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-sticky{position:sticky;left:0;z-index:2;display:block;padding:12px;text-align:left;background:var(--surface);color:var(--text);border-inline-end:1px solid var(--border);}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-sticky small{display:block;color:var(--text-2);font-size:var(--fs-xs);margin-top:4px;}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-month-grid{display:grid;grid-template-columns:repeat(var(--months),minmax(140px,1fr));text-align:center;align-items:stretch;}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-month-grid>strong{padding:12px 4px;border-inline-end:1px solid var(--border);}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-season>div{position:relative;height:44px;}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-peak-band{position:absolute;left:var(--x);width:var(--w);height:100%;background:var(--surface-selected);color:var(--accent-text);padding:8px;font-size:var(--fs-xs);overflow:hidden;white-space:nowrap;}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-month-cell{display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:6px;height:180px;padding:8px 6px 0;border-inline-end:1px solid var(--border);position:relative;}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-month-cell small{font-size:var(--fs-xs);color:var(--text-2);}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-sales-bar{height:calc(var(--bar-h)*.45);width:88%;background:var(--accent);opacity:.55;border-radius:4px 4px 0 0;min-height:0;flex-shrink:0;}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-peak-label{font-size:var(--fs-xs);color:var(--accent-text);}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-batch-scroll{overflow:visible;}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) button.rp-war-batch{width:100%;border:0;border-bottom:1px solid var(--border);padding:0;background:var(--surface);border-radius:0;color:var(--text);min-height:72px;transition:background-color 200ms var(--ease-out);}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-batch:is(.is-selected,:hover),html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-batch.is-selected .rp-war-sticky{background:var(--surface-selected);box-shadow:inset 3px 0 var(--accent);}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-batch.is-selected{box-shadow:inset 3px 0 var(--accent);}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-dates{display:block;position:relative;min-width:0;height:72px;overflow:hidden;}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-dates :is(.rp-war-peak-bg,.rp-war-holiday){position:absolute;left:var(--x);width:var(--w);top:0;bottom:0;background:var(--surface-selected);pointer-events:none;}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-holiday{background:repeating-linear-gradient(135deg,transparent,transparent 5px,var(--border) 5px,var(--border) 8px);color:var(--text-2);font-size:var(--fs-xs);z-index:1;overflow:hidden;}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-today{position:absolute;left:var(--x);top:0;bottom:0;border-inline-start:1px dashed var(--warning);color:var(--warning);z-index:2;font-size:var(--fs-xs);}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-shipping{position:absolute;top:28px;left:var(--x);width:var(--w);height:16px;border-radius:8px;background:var(--accent-soft);min-width:2px;color:var(--text);font-size:var(--fs-xs);font-weight:600;}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-shipping::before,html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-shipping::after{content:'';position:absolute;top:2px;width:12px;height:12px;border-radius:50%;background:var(--accent);border:2px solid var(--surface);}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-shipping::before{left:0;}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-shipping::after{right:0;background:var(--success);}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-ship-label{position:absolute;left:0;bottom:20px;white-space:nowrap;}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-arrival-label{position:absolute;right:0;top:20px;white-space:nowrap;}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-shipping.is-clipped-left::before{border-radius:0;clip-path:polygon(100% 0,0 50%,100% 100%);}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-shipping.is-clipped-right::after{border-radius:0;clip-path:polygon(0 0,100% 50%,0 100%);}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-quantity{font-variant-numeric:tabular-nums;}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-quantity strong{font-size:40px;line-height:1.3;}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-steps{padding:0 0 0 20px;margin-block:20px;}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-steps li{padding:0 0 16px 8px;}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-steps :is(time,span){display:block;color:var(--text-2);font-size:var(--fs-sm);margin-top:4px;overflow-wrap:anywhere;}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-detail dl>div{display:flex;justify-content:space-between;gap:12px;border-top:1px solid var(--border);padding-block:12px;}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-detail dt small{display:block;color:var(--text-2);font-size:var(--fs-xs);}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-detail dd{margin:0;font-weight:600;white-space:nowrap;}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-detail>button{width:100%;}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-stock svg{display:block;min-width:800px;width:100%;height:auto;color:var(--text);}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-stock svg text{fill:var(--text-2);font:12px system-ui,sans-serif;}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-stock svg .rp-war-peak-bg{fill:var(--surface-selected);}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-axis{stroke:var(--border-strong);}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-inventory{stroke:var(--success);stroke-width:2;fill:none;}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-safety{stroke:var(--warning);stroke-width:2;stroke-dasharray:5 4;fill:none;}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-node{fill:var(--success);stroke:var(--surface);stroke-width:2;}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-node-ring{fill:var(--success);opacity:.25;}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-highlight>td{background:var(--surface-selected);}
@container(max-width:1100px){html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-main{grid-template-columns:minmax(0,1fr);}}
@media(max-width:1100px){html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-main{grid-template-columns:minmax(0,1fr);}}
@media(max-width:760px){html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-summary{grid-template-columns:minmax(0,1fr);padding:16px;gap:16px;}html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-summary>div{padding:0 0 12px;border:0;border-bottom:1px solid var(--replenish-summary-divider);}html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) :is(.rp-war-calendar,.rp-war-detail,.rp-war-stock){padding:16px;}html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-info{display:grid;grid-template-columns:minmax(0,1fr);}}
@media(prefers-reduced-motion:reduce){html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) button.rp-war-batch{transition:none;}}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-steps span.rp-error{color:var(--danger);}
/* 工单102 · 补货作战图结束 */

/* 工单102 · 阶段2独立SVG导出入口；不变更原Excel/权限/保存。 */
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-toolbar{display:flex;align-items:flex-start;flex-wrap:wrap;justify-content:space-between;gap:12px;margin-bottom:16px;}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-toolbar .rp-war-tabs{margin:0;}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-export{display:flex;align-items:center;flex-wrap:wrap;gap:8px;max-width:100%;}

/* 工单98 · 阶段C开始：沿用DS-2.0，不改布局/颜色/控件；不对数据刷新做入场。 */
html body #app:not(#\#) .content.page-enter{animation:none;}
html body #app:not(#\#) :is(.cat-all-layout,.season-all-layout){transition:none;}
html body #app:not(#\#) .cat-preview-drawer{transition:opacity var(--dur-3) var(--ease-out),transform var(--dur-3) var(--ease-out);}
html body #app:not(#\#) .ads-drawer{animation-timing-function:var(--ease-out);}
html body dialog[open]:not(#\#){animation:ds-dialog-in var(--dur-2) var(--ease-out) both;}
html body dialog[open]:not(#\#)::backdrop{animation:ds-fade-in var(--dur-2) var(--ease-out) both;}
html body #app:not(#\#) :is(button,.button-link),html body dialog:not(#\#) :is(button,.button-link){transition:background-color var(--dur-hover) var(--ease-out),transform var(--dur-press) var(--ease-out),opacity var(--dur-hover) var(--ease-out);}
html body #app:not(#\#) tbody td{transition:background-color var(--dur-hover) var(--ease-out);}
html body #app:not(#\#) :is(.tabs button,button.tab){transition:background-color var(--dur-1) var(--ease-out),opacity var(--dur-1) var(--ease-out);}
@media(prefers-reduced-motion:reduce){
 html body #app:not(#\#) :is(.cat-all-layout,.season-all-layout,.cat-preview-drawer,.ads-drawer,.ads-scrim,button,.button-link,tbody td,.tabs button),html body dialog:not(#\#):not(#\#),html body dialog:not(#\#):not(#\#)::backdrop,html body dialog:not(#\#):not(#\#) :is(button,.button-link){animation:none;transition:none;}
}
html[data-motion="reduce"] body #app:not(#\#) :is(.cat-all-layout,.season-all-layout,.cat-preview-drawer,.ads-drawer,.ads-scrim,button,.button-link,tbody td,.tabs button),html[data-motion="reduce"] body dialog:not(#\#):not(#\#),html[data-motion="reduce"] body dialog:not(#\#):not(#\#)::backdrop,html[data-motion="reduce"] body dialog:not(#\#):not(#\#) :is(button,.button-link){animation:none;transition:none;}
/* 工单98 · 阶段C结束 */

/* 工单104 · V3融合：局部排版、按钮与保存反馈。沿用DS-2.0，不更换全站令牌。 */
html body #app .profit-fusion:not(#\#):not(#\#):not(#\#):not(#\#) #profit-form{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(320px,1fr);gap:16px;align-items:start;}
html body #app .profit-fusion:not(#\#):not(#\#):not(#\#):not(#\#) .profit-info{grid-column:1/-1;grid-row:1;}
html body #app .profit-fusion:not(#\#):not(#\#):not(#\#):not(#\#) .profit-fba{grid-column:1/-1;grid-row:2;margin:0;padding:20px;border:1px solid var(--border);border-radius:var(--r-lg);}
html body #app .profit-fusion:not(#\#):not(#\#):not(#\#):not(#\#) .profit-main-grid{display:contents;}
html body #app .profit-fusion:not(#\#):not(#\#):not(#\#):not(#\#) .profit-cost{grid-column:1;grid-row:3;margin:0;}
html body #app .profit-fusion:not(#\#):not(#\#):not(#\#):not(#\#) .profit-result{grid-column:2;grid-row:3;margin:0;}
html body #app .profit-fusion:not(#\#):not(#\#):not(#\#):not(#\#) #profit-error:not(:empty){grid-column:1/-1;grid-row:auto;}
html body #app .profit-fusion:not(#\#) .pagehead{flex-wrap:wrap;gap:12px;}
html body #app .profit-fusion:not(#\#) .profit-heading{flex-wrap:wrap;}
html body :is(#app,dialog) .replenish-v96:not(#\#):not(#\#):not(#\#) .rp-profit-heading{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-bottom:12px;}
html body :is(#app,dialog) .replenish-v96:not(#\#):not(#\#):not(#\#) .rp-profit-heading h2{margin:0 auto 0 0;}
html body :is(#app,dialog) .replenish-v96:not(#\#):not(#\#):not(#\#) .rp-profit-heading label{display:flex;align-items:center;flex-wrap:wrap;gap:8px;color:var(--text-2);}
html body :is(#app,dialog) .replenish-v96.rp-editor:not(#\#):not(#\#):not(#\#) [data-rp-form]>fieldset{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.65fr);gap:16px;border:0;padding:0;margin:0;min-width:0;}
html body :is(#app,dialog) .replenish-v96.rp-editor:not(#\#):not(#\#):not(#\#) .rp-group{min-width:0;border:1px solid var(--border);border-radius:var(--r-sm);padding:16px;margin:0;background:var(--surface);}
html body :is(#app,dialog) .replenish-v96.rp-editor:not(#\#):not(#\#):not(#\#) .rp-group h3{margin:0 0 12px;font-size:var(--fs-md);}
html body :is(#app,dialog) .replenish-v96.rp-editor:not(#\#):not(#\#):not(#\#) .rp-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
html body :is(#app,dialog) .replenish-v96.rp-editor:not(#\#):not(#\#):not(#\#) .rp-input-sales .rp-grid{grid-template-columns:repeat(4,minmax(0,1fr));}
html body :is(#app,dialog) .replenish-v96.rp-editor:not(#\#):not(#\#):not(#\#) .rp-input-product .rp-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
html body :is(#app,dialog) .replenish-v96.rp-editor:not(#\#):not(#\#):not(#\#) .rp-input-rules .rp-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
html body :is(#app,dialog) .replenish-v96.rp-editor:not(#\#):not(#\#):not(#\#) label.field{display:flex;flex-direction:column;gap:6px;min-width:0;font-size:var(--fs-sm);color:var(--text-2);}
html body :is(#app,dialog) .replenish-v96.rp-editor:not(#\#):not(#\#):not(#\#) .rp-grid :is(input,select){width:100%;max-width:100%;min-width:0;height:var(--control-h-sm);}
html body :is(#app,dialog) .replenish-v96.rp-editor:not(#\#):not(#\#):not(#\#) .rp-field-note{display:flex;flex-direction:column;align-items:flex-start;gap:4px;}
html body :is(#app,dialog) .replenish-v96.rp-editor:not(#\#):not(#\#):not(#\#) .rp-field-note button{font-size:var(--fs-xs);min-height:28px;padding:4px 8px;}
html body :is(#app,dialog) .replenish-v96.rp-editor:not(#\#):not(#\#):not(#\#) [data-rp=preview]{min-height:36px;padding:8px 16px;}
html body :is(#app,dialog) .replenish-v96.rp-editor:not(#\#):not(#\#):not(#\#) [data-rp-form]>[data-rp=preview]{background:var(--accent);border-color:var(--accent);color:var(--on-accent);margin-block:8px 16px;}
html body :is(#app,dialog) .replenish-v96:not(#\#):not(#\#):not(#\#) .rp-report-toolbar{position:sticky;top:0;z-index:3;padding:12px 0;background:var(--surface);border-bottom:1px solid var(--border);margin-bottom:20px;}
html body :is(#app,dialog) .replenish-v96:not(#\#):not(#\#):not(#\#) .rp-war-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin:0 0 12px;}
html body :is(#app,dialog) .replenish-v96:not(#\#):not(#\#):not(#\#) .rp-report-primary{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-left:auto;}
html body :is(#app,dialog) .replenish-v96:not(#\#):not(#\#):not(#\#) .rp-report-primary [data-rp=save]{min-width:140px;min-height:36px;white-space:nowrap;}
html body :is(#app,dialog) .replenish-v96:not(#\#):not(#\#):not(#\#) .rp-report-secondary{display:flex;align-items:center;flex-wrap:wrap;gap:8px;}
html body :is(#app,dialog) .replenish-v96:not(#\#):not(#\#):not(#\#) .rp-report-secondary :is(button,.button-link){min-height:36px;padding:7px 12px;white-space:nowrap;}
html body :is(#app,dialog) .replenish-v96:not(#\#):not(#\#):not(#\#) .rp-persist-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px;border-left:1px solid var(--border-strong);padding-left:16px;margin-left:8px;}
html body :is(#app,dialog) .replenish-v96:not(#\#):not(#\#):not(#\#) .rp-save-status{font-size:var(--fs-xs);font-weight:var(--fw-medium);padding:5px 8px;border-radius:var(--r-xs);background:var(--surface-2);color:var(--text-2);overflow-wrap:anywhere;}
html body :is(#app,dialog) .replenish-v96:not(#\#):not(#\#):not(#\#) .rp-save-status:is(.is-unsaved,.is-changed){background:var(--warning-soft);color:var(--warning);}
html body :is(#app,dialog) .replenish-v96:not(#\#):not(#\#):not(#\#) .rp-save-status.is-saved{background:var(--success-soft);color:var(--success);}
html body :is(#app,dialog) .replenish-v96:not(#\#):not(#\#):not(#\#) .rp-save-status.is-error{background:var(--danger-soft);color:var(--danger);}
html body :is(#app,dialog) .replenish-v96:not(#\#):not(#\#):not(#\#) .rp-linked-records{border-top:1px solid var(--border);margin-top:20px;padding-top:16px;}
html body :is(#app,dialog) .replenish-v96:not(#\#):not(#\#):not(#\#) .rp-linked-records .rp-summary{border:1px solid var(--border);padding:12px;border-radius:var(--r-sm);margin-top:12px;}
html body :is(#app,dialog) .replenish-v96:not(#\#):not(#\#):not(#\#) .rp-joint{margin-top:20px;border-top:1px solid var(--border);padding-top:16px;}
html body :is(#app,dialog) .replenish-v96:not(#\#):not(#\#):not(#\#) .rp-joint-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;}
html body :is(#app,dialog) .replenish-v96:not(#\#):not(#\#):not(#\#) .rp-joint-grid>div{display:flex;flex-direction:column;gap:8px;padding:12px;background:var(--surface-2);border-radius:var(--r-sm);}
html body :is(#app,dialog) .replenish-v96:not(#\#):not(#\#):not(#\#) .rp-joint-grid span,html body :is(#app,dialog) .replenish-v96:not(#\#):not(#\#):not(#\#) .rp-joint-grid small{color:var(--text-3);font-size:var(--fs-xs);}
html body :is(#app,dialog) .replenish-v96:not(#\#):not(#\#):not(#\#) .rp-joint-grid strong{color:var(--accent-text);font-size:var(--fs-lg);}
@media(max-width:1100px){
 html body #app .profit-fusion:not(#\#):not(#\#):not(#\#):not(#\#) #profit-form{grid-template-columns:minmax(0,1fr);}
 html body #app .profit-fusion:not(#\#):not(#\#):not(#\#):not(#\#) :is(.profit-info,.profit-fba,.profit-cost,.profit-result){grid-column:1;grid-row:auto;}
 html body :is(#app,dialog) .replenish-v96.rp-editor:not(#\#):not(#\#):not(#\#) [data-rp-form]>fieldset{grid-template-columns:minmax(0,1fr);}
 html body :is(#app,dialog) .replenish-v96:not(#\#):not(#\#):not(#\#) .rp-joint-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:760px){
 html body :is(#app,dialog) .replenish-v96.rp-editor:not(#\#):not(#\#):not(#\#) .rp-group{padding:12px;}
 html body :is(#app,dialog) .replenish-v96.rp-editor:not(#\#):not(#\#):not(#\#) .rp-grid,html body :is(#app,dialog) .replenish-v96.rp-editor:not(#\#):not(#\#):not(#\#) :is(.rp-input-sales,.rp-input-product,.rp-input-rules) .rp-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
 html body :is(#app,dialog) .replenish-v96:not(#\#):not(#\#):not(#\#) .rp-report-toolbar{position:static;}
 html body :is(#app,dialog) .replenish-v96:not(#\#):not(#\#):not(#\#) :is(.rp-report-primary,.rp-war-toolbar,.rp-profit-heading label){width:100%;margin-left:0;}
 html body :is(#app,dialog) .replenish-v96:not(#\#):not(#\#):not(#\#) .rp-report-primary [data-rp=save]{width:100%;}
 html body :is(#app,dialog) .replenish-v96:not(#\#):not(#\#):not(#\#) :is(button,.button-link){min-height:44px;}
 html body :is(#app,dialog) .replenish-v96:not(#\#):not(#\#):not(#\#) .rp-persist-actions{border-left:0;padding-left:0;margin-left:0;}
}
/* 工单104 · V3结束 */
/* 工单104 · 参数区宽度按内容分配，原帮助和来源常显。 */
html body :is(#app,dialog) .replenish-v96.rp-editor:not(#\#):not(#\#):not(#\#) [data-rp-form]>fieldset{grid-template-columns:repeat(12,minmax(0,1fr));}
html body :is(#app,dialog) .replenish-v96.rp-editor:not(#\#):not(#\#):not(#\#) .rp-input-source{grid-column:span 4;}
html body :is(#app,dialog) .replenish-v96.rp-editor:not(#\#):not(#\#):not(#\#) .rp-input-sales{grid-column:span 8;}
html body :is(#app,dialog) .replenish-v96.rp-editor:not(#\#):not(#\#):not(#\#) .rp-input-product{grid-column:span 7;}
html body :is(#app,dialog) .replenish-v96.rp-editor:not(#\#):not(#\#):not(#\#) .rp-input-rules{grid-column:span 5;}
html body :is(#app,dialog) .replenish-v96.rp-editor:not(#\#):not(#\#):not(#\#) [data-rp-form]>fieldset>:is(section,details):nth-child(n+5){grid-column:span 6;}
html body :is(#app,dialog) .replenish-v96.rp-editor:not(#\#):not(#\#):not(#\#) :is(.rp-group p,.rp-field-note small){font-size:var(--fs-xs);line-height:1.5;}
html body :is(#app,dialog) .replenish-v96.rp-editor:not(#\#):not(#\#):not(#\#) [data-rp-error]:empty{display:none;}
html body :is(#app,dialog) .replenish-v96.rp-editor:not(#\#):not(#\#):not(#\#) .rp-field-note{flex-direction:row;align-items:center;flex-wrap:wrap;gap:4px;}
html body :is(#app,dialog) .replenish-v96.rp-editor:not(#\#):not(#\#):not(#\#) .rp-field-note .rp-help{flex-basis:100%;}
html body :is(#app,dialog) .replenish-v96:not(#\#):not(#\#):not(#\#) .rp-report-toolbar .rp-war-tabs button[aria-pressed=true]{background:var(--surface-selected);border-color:var(--accent);color:var(--accent-text);}
@media(max-width:1100px){
 html body :is(#app,dialog) .replenish-v96.rp-editor:not(#\#):not(#\#):not(#\#) [data-rp-form]>fieldset{grid-template-columns:minmax(0,1fr);}
 html body :is(#app,dialog) .replenish-v96.rp-editor:not(#\#):not(#\#):not(#\#) [data-rp-form]>fieldset>:is(section,details){grid-column:1;}
}
/* 工单104 · 区分选择状态与主操作，覆盖历史补货按钮样式。 */
html body :is(#app,dialog) .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-report-toolbar .rp-war-tabs button[aria-pressed=true]{background:var(--surface-selected);border-color:var(--accent);color:var(--accent-text);}
html body :is(#app,dialog) .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-report-secondary button{background:var(--surface);border-color:var(--border-strong);color:var(--text-2);}
html body :is(#app,dialog) .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-report-secondary button:not(:disabled):hover{background:var(--surface-hover);color:var(--text);}

/* 2026-10-16 · 接收与清货：原控件及令牌保留，仅新增计划阶段与结论。 */
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-clearance-summary{padding:var(--s-4);margin-block:var(--s-4);border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface);}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-clearance-summary.is-infeasible{border-color:var(--warning);}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-clearance-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--s-4);margin-block:var(--s-4);}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-clearance-grid>div{display:grid;gap:var(--s-2);min-width:0;}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-clearance-grid span{font-size:var(--fs-sm);color:var(--text-2);}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-clearance-grid strong{font-size:var(--fs-lg);overflow-wrap:anywhere;}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-receiving-policy .rp-war-dates{height:104px;}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) :is(.rp-war-receiving,.rp-war-selling){position:absolute;left:var(--x);width:var(--w);font-size:var(--fs-xs);white-space:nowrap;text-align:start;height:18px;border-radius:var(--r-xs);}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-receiving{top:28px;border:1px dashed var(--warning);background:var(--warning-soft);color:var(--text);padding-inline:var(--s-1);}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-selling{top:76px;background:var(--success-soft);color:var(--text);padding-inline:var(--s-1);}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-clearance-line{position:absolute;left:var(--x);top:0;bottom:0;border-left:1px dashed var(--warning);}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-clearance-line>span{position:absolute;right:4px;top:2px;font-size:var(--fs-xs);color:var(--text);white-space:nowrap;}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-receiving-line{fill:none;stroke:var(--text-3);stroke-width:2;stroke-dasharray:4 4;}
@media(max-width:1100px){html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-clearance-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:480px){html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-clearance-grid{grid-template-columns:minmax(0,1fr);}}

html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-clearance-svg{stroke:var(--warning);stroke-width:1.5;stroke-dasharray:5 4;}

/* 2026-10-16 · 图片专注预览、竞品宽栏与新手库存图；沿用 DS-2.0。 */
.ap-gallery-item,.ap-shared-item{position:relative;transition:transform var(--dur-2) var(--ease-out),box-shadow var(--dur-hover) var(--ease-out)}
.ui-image-caption{position:absolute;inset:auto 0 0;z-index:3;max-height:72%;overflow:auto;padding:var(--s-2);background:color-mix(in srgb,var(--surface) 96%,transparent);border-top:1px solid var(--border);opacity:0;transform:translateY(8px);pointer-events:none;transition:opacity var(--dur-hover) var(--ease-out),transform var(--dur-2) var(--ease-out)}
.ui-image-caption .biz-material-name{padding:0 0 var(--s-1);gap:var(--s-1)}
.ui-image-caption .biz-material-name strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ui-image-caption>.small:not(.danger),.ui-image-caption>.biz-ref-source{display:none}
.ui-image-caption .row-actions{display:flex;align-items:center;flex-wrap:wrap;gap:var(--s-2);padding:var(--s-1) 0 0}
.ui-image-caption .row-actions label{display:inline-flex;align-items:center;gap:var(--s-1);min-height:var(--control-h-sm)}
#app .biz-reference-grid .biz-material-card:has(.ui-image-caption),#app .biz-result-gallery .biz-image-result:has(.ui-image-caption),#app .ap-product-gallery .ap-gallery-item:has(.ui-image-caption){padding-bottom:0;min-height:0;overflow:hidden}
#app .biz-reference-grid .biz-material-preview,#app .biz-result-gallery .biz-result-img{display:block;width:100%;margin:0;border:0;border-radius:0;padding:0;background:var(--surface-2)}
#app .biz-reference-grid .biz-material-preview img,#app .biz-result-gallery .biz-result-img img{display:block;width:100%;height:auto;aspect-ratio:var(--ar,1.33);object-fit:contain;background:var(--surface-2)}
#app .biz-result-gallery .biz-result-pick,#app .biz-result-gallery .biz-result-where{opacity:0;pointer-events:none;transition:opacity var(--dur-hover) var(--ease-out)}
#app .biz-result-gallery .is-picked .biz-result-pick{opacity:1;pointer-events:auto}
.ap-shared-item:has([data-image-ref]:checked),.ap-gallery-item:has([data-image-ref]:checked){outline:2px solid var(--accent);outline-offset:-2px}
@media(hover:hover){
 .ap-shared-item:hover,.ap-gallery-item:hover{transform:translateY(-3px) scale(1.008);box-shadow:var(--shadow-2)}
 .ap-shared-item:hover .ui-image-caption,.ap-gallery-item:hover .ui-image-caption{opacity:1;transform:none;pointer-events:auto}
 #app .biz-result-gallery .biz-image-result:hover .biz-result-pick,#app .biz-result-gallery .biz-image-result:hover .biz-result-where{opacity:1;pointer-events:auto}
}
.ap-shared-item:has(:focus-visible):not(:root[data-ui-input="pointer"] *) .ui-image-caption,.ap-gallery-item:has(:focus-visible):not(:root[data-ui-input="pointer"] *) .ui-image-caption{opacity:1;transform:none;pointer-events:auto}
#app .biz-result-gallery .biz-image-result:has(:focus-visible):not(:root[data-ui-input="pointer"] *) .biz-result-pick,#app .biz-result-gallery .biz-image-result:has(:focus-visible):not(:root[data-ui-input="pointer"] *) .biz-result-where{opacity:1;pointer-events:auto}
.ap-shared-item:active,.ap-gallery-item:active{transform:scale(.995)}
@media(hover:none){.ui-image-caption{position:relative;inset:auto;opacity:1;transform:none;pointer-events:auto;max-height:none}.ui-image-caption .biz-material-name{max-height:2lh}#app .biz-result-gallery .biz-result-pick{opacity:1;pointer-events:auto}}
/* All shared preview entry points use one centered image and a small footer. */
#cat-lightbox#cat-lightbox#cat-lightbox.cat-lightbox:has(.lb-info-compact){display:none;grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr) auto auto auto;align-content:stretch;inset:0;margin:0;width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;padding:var(--s-4);gap:var(--s-2);background:var(--bg)}
#cat-lightbox#cat-lightbox#cat-lightbox:has(.lb-info-compact)>.lb-top{grid-column:1;grid-row:1;position:relative;inset:auto;min-width:0;gap:var(--s-2);flex-wrap:wrap}
#cat-lightbox#cat-lightbox#cat-lightbox:has(.lb-info-compact) .lb-name{min-width:0;max-width:34vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#cat-lightbox#cat-lightbox#cat-lightbox:has(.lb-info-compact)>.lb-stage{grid-column:1;grid-row:2;min-height:0;min-width:0;display:grid;place-items:center;padding:0 44px}
#cat-lightbox#cat-lightbox#cat-lightbox:has(.lb-info-compact) .lb-frame{max-width:100%;max-height:100%;margin:auto;background:var(--surface);border-radius:var(--r-md)}
#cat-lightbox#cat-lightbox#cat-lightbox:has(.lb-info-compact)>.lb-info-compact{grid-column:1;grid-row:5;position:static;inset:auto;width:auto;max-width:none;max-height:48px;min-height:0;overflow:hidden;border:0;padding:0 var(--s-2);background:transparent}
.lb-info-compact p{margin:0;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:var(--fs-xs);color:var(--text-2);line-height:1.5}
#cat-lightbox#cat-lightbox#cat-lightbox:has(.lb-info-compact)>.lb-hint{grid-column:1;grid-row:3;position:static;margin:0;text-align:center;font-size:var(--fs-xs);color:var(--text-2)}
#cat-lightbox#cat-lightbox#cat-lightbox:has(.lb-info-compact)>.lb-strip{grid-column:1;grid-row:4;position:static;max-width:100%;max-height:64px;margin:auto}
#cat-lightbox#cat-lightbox#cat-lightbox:has(.lb-info-compact) .lb-strip button{width:48px;height:48px;min-width:48px}
#cat-lightbox#cat-lightbox#cat-lightbox:has(.lb-info-compact)>.lb-status{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);max-width:80vw}
#cat-lightbox#cat-lightbox#cat-lightbox:has(.lb-info-compact)>.lb-nav{position:absolute;top:48%;transform:translateY(-50%);z-index:4;width:44px;height:44px}
#cat-lightbox#cat-lightbox#cat-lightbox:has(.lb-info-compact)>.lb-prev{left:var(--s-4);right:auto}
#cat-lightbox#cat-lightbox#cat-lightbox:has(.lb-info-compact)>.lb-next{right:var(--s-4);left:auto}
/* Main reading/editing column takes two thirds, history remains reachable. */
#app .page-competitors .ui-deep-workspace{display:grid;grid-template-columns:minmax(0,2fr) minmax(240px,1fr);gap:var(--s-4);align-items:start}
#app .ui-deep-focus,#app .ui-deep-history{min-width:0}
#app .ui-deep-focus .deep-result-output{max-height:none;min-height:240px;overflow:visible;white-space:pre-wrap;line-height:1.8;font-size:var(--fs-md)}
#app .ui-deep-focus .own-main{table-layout:fixed;width:100%;min-width:0}
#app .ui-deep-focus .own-main th:nth-child(1){width:16%}
#app .ui-deep-focus .own-main th:nth-child(2){width:52%}
#app .ui-deep-focus .own-main th:nth-child(3){width:14%}
#app .ui-deep-focus .own-main th:nth-child(4){width:18%}
#app .ui-deep-focus .own-main td{white-space:normal;overflow-wrap:anywhere;min-width:0}
#app .ui-deep-focus #biz-own-form>.table-wrap{max-height:none;overflow:visible}
#app .ui-deep-focus .own-main textarea{min-height:80px;max-height:none;resize:vertical;overflow:auto;width:100%;white-space:pre-wrap}
#app .ui-deep-history>.card{margin-top:0}
#app .ui-deep-history .cat-cardhead,#app .ui-deep-history .cat-cardhead .actions{flex-wrap:wrap}
#app .ui-deep-history .table-wrap{max-height:none}
/* Inventory: labelled axes, shaded stock, clear buffer and batch selection. */
.sj-stock{padding:var(--s-4);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);margin-top:var(--s-4)}
.sj-heading{display:flex;justify-content:space-between;gap:var(--s-4);align-items:start;flex-wrap:wrap}
.sj-heading h3{margin:0 0 var(--s-2);font-size:var(--fs-lg)}
.sj-heading p{margin:0;line-height:1.6}
.sj-state{padding:var(--s-2) var(--s-3);border-radius:var(--r-sm);color:var(--success);background:var(--success-soft);font-size:var(--fs-sm);font-weight:600}
.sj-state.sj-risk{color:var(--danger);background:var(--danger-soft)}
.sj-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s-4);margin:var(--s-4) 0;padding:var(--s-4);background:var(--surface-2);border-radius:var(--r-md)}
.sj-facts>div{display:grid;gap:var(--s-1)}
.sj-facts span,.sj-facts small{font-size:var(--fs-sm);font-weight:400;color:var(--text-2)}
.sj-facts strong{font-size:var(--fs-xl);font-variant-numeric:tabular-nums;color:var(--text)}
.sj-legend{display:flex;gap:var(--s-4);flex-wrap:wrap;font-size:var(--fs-sm);margin-bottom:var(--s-2)}
.sj-legend span{display:inline-flex;gap:var(--s-2);align-items:center}
.sj-legend i{width:24px;height:4px;display:inline-block}
.sj-key-stock{background:var(--success)}
.sj-key-safe{border-top:3px dashed var(--warning)}
.sj-key-risk{background:var(--warning-soft);border:1px solid var(--warning)}
.sj-stock .sj-chart{display:block;width:100%;height:auto;min-width:560px;max-height:none;background:var(--surface)}
.sj-stock .rp-war-stock-scroll{overflow:auto;overscroll-behavior:auto}
.sj-chart .sj-grid{stroke:var(--border);stroke-width:1}
.sj-chart .sj-axis{fill:var(--text-2);font-size:14px;font-family:var(--font)}
.sj-chart .sj-area{fill:var(--success-soft);stroke:none}
.sj-chart .sj-line{fill:none;stroke:var(--success);stroke-width:3;stroke-linejoin:round}
.sj-chart .sj-safe{fill:none;stroke:var(--warning);stroke-width:2;stroke-dasharray:7 5}
.sj-chart .sj-risk-band{fill:var(--warning-soft)}
.sj-chart .sj-event line{stroke:var(--accent);stroke-dasharray:3 5;opacity:.4}
.sj-chart .sj-event circle{fill:var(--accent);stroke:var(--surface);stroke-width:2}
.sj-chart .sj-event text{fill:var(--text);font-size:14px;font-weight:600;font-family:var(--font)}
.sj-chart .sj-event.is-selected line{opacity:1}
.sj-batches{display:flex;gap:var(--s-2);flex-wrap:wrap;margin:var(--s-3) 0}
.sj-batches>button{display:grid;gap:var(--s-1);text-align:left;padding:var(--s-3);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);color:var(--text);transition:background-color var(--dur-hover) var(--ease-out),border-color var(--dur-hover) var(--ease-out)}
.sj-batches>button[aria-pressed=true]{background:var(--surface-selected);border-color:var(--accent)}
.sj-batches span,.sj-batches small{font-size:var(--fs-sm);color:var(--text-2)}
#app .rp-war-shell .rp-war-main{grid-template-columns:minmax(0,2fr) minmax(240px,1fr);gap:var(--s-4)}
#app .rp-war-shell .rp-war-detail{padding:var(--s-4);background:var(--surface-2);border-radius:var(--r-md);border:1px solid var(--border)}
#app .rp-war-shell .rp-war-steps{display:grid;gap:var(--s-3);padding-left:var(--s-4)}
@media(max-width:1100px){#app .rp-war-shell .rp-war-main{grid-template-columns:1fr}}
@media(max-width:980px){#app .page-competitors .ui-deep-workspace{grid-template-columns:1fr}.ui-deep-history{order:2}}
@media(max-width:760px){.sj-facts{gap:var(--s-2);padding:var(--s-3)}.sj-facts strong{font-size:var(--fs-lg)}.sj-facts small{display:block}.sj-batches>button{flex:1 1 140px;min-height:44px}#cat-lightbox#cat-lightbox#cat-lightbox.cat-lightbox:has(.lb-info-compact){padding:var(--s-2)}#cat-lightbox#cat-lightbox#cat-lightbox:has(.lb-info-compact)>.lb-stage{padding:0 28px}#cat-lightbox#cat-lightbox#cat-lightbox:has(.lb-info-compact)>.lb-prev{left:var(--s-1)}#cat-lightbox#cat-lightbox#cat-lightbox:has(.lb-info-compact)>.lb-next{right:var(--s-1)}#cat-lightbox#cat-lightbox#cat-lightbox:has(.lb-info-compact) .lb-name{max-width:42vw}.ui-deep-focus .own-main th:nth-child(4),.ui-deep-focus .own-main td:nth-child(4){width:auto}}
@media(prefers-reduced-motion:reduce){.ap-shared-item,.ap-gallery-item,.ui-image-caption{transition:none;transform:none}.ap-shared-item:hover,.ap-gallery-item:hover{transform:none}}
[data-motion=reduce] .ap-shared-item,[data-motion=reduce] .ap-gallery-item,[data-motion=reduce] .ui-image-caption{transition:none;transform:none}

.ui-deep-focus .own-table textarea{field-sizing:content;height:auto;overflow-y:hidden;}

#cat-lightbox#cat-lightbox#cat-lightbox[open]:has(.lb-info-compact){display:grid}

#app .ui-image-caption{pointer-events:none}#app .ui-image-caption .row-actions{pointer-events:auto}

/* Override historic fixed-height and high-specificity gallery rules. */
#app#app#app .ui-deep-focus .deep-result-output{height:auto;max-height:none;overflow:visible;resize:none}
#app#app#app .ui-deep-focus .own-main textarea{field-sizing:content;height:auto;min-height:80px;overflow-y:hidden}
#app#app#app#app#app .image-page-v3 .biz-image-result:has(.ui-image-caption){display:block;padding:0;min-height:0;height:auto;aspect-ratio:1.15;overflow:hidden}
#app#app#app#app#app .image-page-v3 .biz-image-result .biz-result-img{height:100%;padding:0;margin:0}
#app#app#app#app#app .image-page-v3 .biz-image-result .biz-result-img img{height:100%;width:100%;object-fit:contain}
#app#app#app#app#app .image-page-v3 .biz-image-result>.biz-result-pick{position:absolute;top:8px;left:8px;z-index:4;margin:0}
#app#app#app#app#app .image-page-v3 .biz-image-result>.biz-result-where{position:absolute;top:8px;right:8px;z-index:4;margin:0}
#app#app#app#app#app#app .rp-war-shell .rp-war-main{grid-template-columns:minmax(0,2fr) minmax(240px,1fr);gap:var(--s-4);align-items:start}
#app#app#app#app#app#app .rp-war-shell .rp-war-detail{background:var(--surface-2);padding:var(--s-4)}
@media(max-width:1199px){#app#app#app#app#app#app .rp-war-shell .rp-war-main{grid-template-columns:minmax(0,1fr)}}
@media(hover:none){#app#app#app#app#app .image-page-v3 .biz-image-result:has(.ui-image-caption){aspect-ratio:auto}#app#app#app#app#app .image-page-v3 .biz-image-result .biz-result-img{height:auto;aspect-ratio:1.15}}

.sj-receiving{fill:none;stroke:var(--text-3);stroke-width:2;stroke-dasharray:4 5}
.sj-clearance{stroke:var(--accent);stroke-width:2;stroke-dasharray:5 3}
.sj-clearance-label{fill:var(--accent-text);font-size:13px;font-weight:600}
.sj-key-receiving{border-top:2px dashed var(--text-3)}.sj-key-clearance{border-top:2px dashed var(--accent)}
#cat-lightbox#cat-lightbox#cat-lightbox:has(.lb-info-compact){background:var(--surface);color:var(--text)}
#cat-lightbox#cat-lightbox#cat-lightbox:has(.lb-info-compact)>.lb-top{background:var(--surface-2);color:var(--text);margin:0;padding:var(--s-2) var(--s-3);border-radius:var(--r-md)}
#cat-lightbox#cat-lightbox#cat-lightbox:has(.lb-info-compact) :is(.lb-btn,.lb-nav){background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:var(--r-md)}
#cat-lightbox#cat-lightbox#cat-lightbox:has(.lb-info-compact)>.lb-hint{background:transparent;color:var(--text-2);padding:0}

/* 2026-10-16: approved compact analysis entry and product identity. */
.deep-result-entry{display:flex;align-items:center;flex-wrap:wrap;gap:var(--s-3);padding-top:var(--s-4);margin-top:var(--s-3);border-top:1px solid var(--divider);}
#editor.deep-result-modal{width:min(1200px,calc(100vw - var(--s-8)));max-width:none;}
#editor.deep-result-modal .modalbody{overflow:auto;max-height:calc(100dvh - 160px);}
#editor.deep-result-modal .cat-cardhead{flex-wrap:wrap;gap:var(--s-3);}
#editor.deep-result-modal .deep-result-output{max-height:none;white-space:pre-wrap;overflow-wrap:anywhere;}
#editor.deep-result-modal .cat-two{grid-template-columns:minmax(0,1fr);}
.page-products .cat-product-item>.cat-product-name{flex:1;min-width:0;}
.page-products .cat-product-item strong{white-space:normal;overflow-wrap:anywhere;}
@media(max-width:1100px){#editor.deep-result-modal{width:calc(100vw - var(--s-6));}}
@media(max-width:760px){#editor.deep-result-modal{width:calc(100vw - var(--s-4));}#editor.deep-result-modal .modalbody{max-height:calc(100dvh - 120px);}#editor.deep-result-modal .actions{flex-wrap:wrap;}.deep-result-entry{align-items:flex-start;}}


/* 2026-10-16: beginner replenishment layout; all calculations and action hooks retained. */
html body #app .profit-fusion:not(#\#):not(#\#):not(#\#):not(#\#) #profit-form{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:var(--s-4);}
html body #app .profit-fusion:not(#\#):not(#\#):not(#\#):not(#\#) :is(.profit-cost,.profit-result){border:1px solid var(--border);border-radius:var(--r-lg);padding:var(--s-5);align-self:stretch;}
html body #app .profit-fusion:not(#\#):not(#\#):not(#\#):not(#\#) .profit-sectionhead{min-height:var(--control-h);align-items:center;margin-bottom:var(--s-4);gap:var(--s-3);}
html body #app .profit-fusion:not(#\#):not(#\#):not(#\#):not(#\#) .profit-cost-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s-4);}
html body #app .profit-fusion:not(#\#):not(#\#):not(#\#):not(#\#) .profit-cost-grid>.field:not(#\#){grid-area:auto;}
html body #app .profit-fusion:not(#\#):not(#\#):not(#\#):not(#\#) .profit-cost-grid>:is(.fx-line,.fba-under){grid-area:auto;grid-column:1/-1;}
html body #app .profit-fusion:not(#\#):not(#\#):not(#\#):not(#\#) .profit-result .profit-detail>div{min-height:var(--control-h-sm);align-items:center;}
html body .replenish-v96.rp-beginner:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) [data-rp-form]>fieldset{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s-4);align-items:start;}
html body .replenish-v96.rp-beginner:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) [data-rp-form]>fieldset>:is(section,details){grid-column:auto;}
html body .replenish-v96.rp-beginner:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-group:is(.rp-input-product,.rp-input-rules){grid-column:1/-1;}
html body .replenish-v96.rp-beginner:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-group{padding:var(--s-5);border-radius:var(--r-lg);}
html body .replenish-v96.rp-beginner:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-group h3{font-size:var(--fs-lg);margin-bottom:var(--s-4);line-height:1.4;}
html body .replenish-v96.rp-beginner:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s-4);align-items:start;}
html body .replenish-v96.rp-beginner:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-input-sales .rp-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
html body .replenish-v96.rp-beginner:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-input-product .rp-grid{grid-template-columns:repeat(4,minmax(0,1fr));}
html body .replenish-v96.rp-beginner:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-input-rules .rp-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
html body .replenish-v96.rp-beginner:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) label.field{gap:var(--s-2);font-size:var(--fs-sm);line-height:1.5;}
html body .replenish-v96.rp-beginner:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-grid :is(input,select){height:var(--control-h);}
html body .replenish-v96.rp-beginner:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-field-note{display:flex;align-items:start;flex-direction:column;gap:var(--s-1);}
html body .replenish-v96.rp-beginner:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-field-note .rp-help{flex-basis:auto;width:100%;font-size:var(--fs-xs);color:var(--text-2);}
html body .replenish-v96.rp-beginner:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-help summary{cursor:pointer;color:var(--accent-text);padding-block:var(--s-1);}
html body .replenish-v96.rp-beginner:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-help p{margin-top:var(--s-2);padding:var(--s-3);background:var(--surface-2);border-radius:var(--r-sm);}
html body .replenish-v96.rp-beginner:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-field-note button{background:var(--surface);color:var(--accent-text);border-color:var(--border);}
html body .replenish-v96.rp-beginner:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-beginner-intro{padding:var(--s-3) var(--s-4);background:var(--surface-2);border-radius:var(--r-sm);color:var(--text-2);margin-block:var(--s-4);}
html body .replenish-v96.rp-beginner:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-sales{margin-top:var(--s-4);}
html body .replenish-v96.rp-beginner:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-comparison{padding:var(--s-3);margin-block:var(--s-3);}
html body .replenish-v96.rp-beginner:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-core{padding:var(--s-4);gap:var(--s-4);}
html body .replenish-v96.rp-beginner:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) [data-rp-form]>[data-rp=preview]{margin-block:var(--s-4);min-height:var(--control-h);padding-inline:var(--s-6);}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-simple .rp-war-summary{background:var(--wb-result-bg);color:var(--text);padding:var(--s-5);gap:var(--s-4);border:1px solid var(--border);}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-simple .rp-war-summary>div{border-color:var(--border);padding-inline-end:var(--s-4);}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-simple .rp-war-summary :is(span,small){color:var(--text-2);}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-simple .rp-war-summary strong{font-size:var(--fs-lg);}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-simple .rp-war-info{gap:var(--s-4);}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-simple .rp-war-main{grid-template-columns:minmax(0,1fr);gap:var(--s-4);}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-simple :is(.rp-war-calendar,.rp-war-detail,.rp-war-stock){padding:var(--s-5);}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-simple .rp-war-month-cell{height:120px;justify-content:flex-end;padding-top:var(--s-3);}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-simple .rp-war-sales-bar{max-height:40px;}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-simple .rp-war-batch{min-height:80px;}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-simple .rp-war-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--s-3);list-style:none;padding:0;margin-block:var(--s-4);}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-simple .rp-war-steps li{padding:var(--s-3);border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface-2);min-width:0;}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-simple .rp-war-detail dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 var(--s-5);}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-simple .rp-war-detail dl>div{flex-wrap:wrap;align-items:start;}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-simple .rp-war-detail>button{width:auto;}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-simple .rp-war-stock svg{max-height:360px;}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-simple .rp-war-risk{margin-block:var(--s-4);}
@media(max-width:1100px){
html body #app .profit-fusion:not(#\#):not(#\#):not(#\#):not(#\#) #profit-form{grid-template-columns:minmax(0,1fr);}
html body #app .profit-fusion:not(#\#):not(#\#):not(#\#):not(#\#) :is(.profit-info,.profit-fba,.profit-cost,.profit-result){grid-column:1;grid-row:auto;}
html body .replenish-v96.rp-beginner:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) [data-rp-form]>fieldset{grid-template-columns:minmax(0,1fr);}
html body .replenish-v96.rp-beginner:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) [data-rp-form]>fieldset>:is(section,details){grid-column:1;}
html body .replenish-v96.rp-beginner:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-input-product .rp-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-simple .rp-war-steps{grid-template-columns:repeat(3,minmax(0,1fr));}
}
@media(max-width:760px){
html body .replenish-v96.rp-beginner:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) :is(.rp-group,.rp-core){padding:var(--s-4);}
html body .replenish-v96.rp-beginner:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) :is(.rp-input-product,.rp-input-rules) .rp-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-simple :is(.rp-war-summary,.rp-war-info){grid-template-columns:minmax(0,1fr);}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-simple .rp-war-summary>div{border-inline-end:0;}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-simple .rp-war-steps{grid-template-columns:repeat(2,minmax(0,1fr));}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-simple .rp-war-detail dl{grid-template-columns:minmax(0,1fr);}
html body .replenish-v96:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-war-simple :is(.rp-war-calendar,.rp-war-detail,.rp-war-stock){padding:var(--s-4);}
}

/* Full-width planning workspace: choose the product first, then plan. */
html body #app .replenish-v96.rp-beginner-layout:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) {display:grid;grid-template-columns:minmax(0,1fr);gap:var(--s-4);}
html body #app .replenish-v96.rp-beginner-layout:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) >.rp-record-picker{display:grid;gap:var(--s-3);padding:var(--s-5);}
html body #app .replenish-v96.rp-beginner-layout:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-record-picker h2{font-size:var(--fs-lg);margin:0;}
html body #app .replenish-v96.rp-beginner-layout:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-record-filters{display:grid;grid-template-columns:160px 160px minmax(0,1fr);gap:var(--s-4);align-items:end;}
html body #app .replenish-v96.rp-beginner-layout:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-record-filters label{display:flex;flex-direction:column;gap:var(--s-2);font-size:var(--fs-sm);}
html body #app .replenish-v96.rp-beginner-layout:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-record-filters :is(input,select){width:100%;min-width:0;}
html body #app .replenish-v96.rp-beginner-layout:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-record-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:var(--s-3);max-height:260px;overflow:auto;}
html body #app .replenish-v96.rp-beginner-layout:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-record-options article{padding:var(--s-3);border:1px solid var(--border);border-radius:var(--r-sm);min-width:0;}
html body #app .replenish-v96.rp-beginner-layout:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-record-options article>p{font-size:var(--fs-xs);color:var(--text-2);line-height:1.5;}
html body #app .replenish-v96.rp-beginner-layout:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-record-options article>button{text-align:left;justify-content:flex-start;width:100%;color:var(--accent-text);font-weight:var(--fw-medium);}
html body .replenish-v96.rp-beginner:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#)>h2{font-size:var(--fs-lg);line-height:1.4;}
@media(max-width:760px){html body #app .replenish-v96.rp-beginner-layout:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-record-filters{grid-template-columns:repeat(2,minmax(0,1fr));}html body #app .replenish-v96.rp-beginner-layout:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-record-filters label:last-child{grid-column:1/-1;}html body #app .replenish-v96.rp-beginner-layout:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-record-options{grid-template-columns:minmax(0,1fr);}}

html body .replenish-v96.rp-beginner:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-input-rules .rp-grid>label.field{grid-column:auto;}

/* Keep the quote sources below the field grid rather than splitting input rows. */
html body #app .profit-fusion:not(#\#):not(#\#):not(#\#):not(#\#) .profit-cost-grid>.field:has(#profit-saleUSD){grid-area:1/1;}
html body #app .profit-fusion:not(#\#):not(#\#):not(#\#):not(#\#) .profit-cost-grid>.field:has(#profit-costCNY){grid-area:1/2;}
html body #app .profit-fusion:not(#\#):not(#\#):not(#\#):not(#\#) .profit-cost-grid>.field:has(#profit-headCNY){grid-area:2/1;}
html body #app .profit-fusion:not(#\#):not(#\#):not(#\#):not(#\#) .profit-cost-grid>.field:has(#profit-fbaUSD){grid-area:2/2;}
html body #app .profit-fusion:not(#\#):not(#\#):not(#\#):not(#\#) .profit-cost-grid>.field:has(#profit-adsUSD){grid-area:3/1;}
html body #app .profit-fusion:not(#\#):not(#\#):not(#\#):not(#\#) .profit-cost-grid>.field:has(#profit-rate){grid-area:3/2;}
html body #app .profit-fusion:not(#\#):not(#\#):not(#\#):not(#\#) .profit-cost-grid>.field:has(#profit-returnRate){grid-area:4/1;}
html body #app .profit-fusion:not(#\#):not(#\#):not(#\#):not(#\#) .profit-cost-grid>.field:has(#profit-commissionRate){grid-area:4/2;}
html body #app .profit-fusion:not(#\#):not(#\#):not(#\#):not(#\#) .profit-cost-grid>.field:has(#profit-miscRate){grid-area:5/1;}
html body #app .profit-fusion:not(#\#):not(#\#):not(#\#):not(#\#) .profit-cost-grid>.field:has(#profit-lowestUSD){grid-area:5/2;}
html body #app .profit-fusion:not(#\#):not(#\#):not(#\#):not(#\#) .profit-cost-grid>.fx-line{grid-area:6/1/7/3;}
html body #app .profit-fusion:not(#\#):not(#\#):not(#\#):not(#\#) .profit-cost-grid>.fba-under{grid-area:7/1/8/3;}

html body .replenish-v96.rp-beginner:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-field-label{display:block;min-height:1.5em;line-height:1.5;}
@media(max-width:760px){html body .replenish-v96.rp-beginner:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .rp-field-label{min-height:3em;}html body #app .profit-fusion:not(#\#):not(#\#):not(#\#):not(#\#) .profit-cost-grid>.field>label{min-height:3em;line-height:1.5;}}

/* 2026-10-16 user-approved compact product, image and Listing source controls. */
html body #app#app#app#app#app#app#app .page-products .cat-product-item{border:0;box-shadow:none;background:transparent;border-radius:var(--r-sm);padding:var(--s-2);min-height:56px;flex-wrap:nowrap;}
html body #app#app#app#app#app#app#app .page-products .cat-product-item:hover{background:var(--surface-hover);}
html body #app#app#app#app#app#app#app .page-products .cat-product-item.active{background:var(--surface-selected);color:var(--accent-text);}
html body #app#app#app#app#app#app#app .page-products .cat-product-item:focus-visible{outline:2px solid var(--accent);outline-offset:2px;}
html body #app#app#app#app#app#app#app .page-products .cat-product-item:active{background:var(--surface-selected);}
html body #app#app#app#app#app#app#app .page-products .cat-product-item:disabled{opacity:.5;cursor:not-allowed;}
html body #app#app#app#app#app#app#app :is(.material-compact,.biz-image-result:has(.material-visual)){display:block;padding:0;min-height:0;height:auto;aspect-ratio:auto;overflow:hidden;transform:none;transition:box-shadow var(--dur-hover) var(--ease-out);}
.material-visual{position:relative;min-width:0;}
html body #app#app#app#app#app#app#app .material-visual>:is(.biz-material-preview,.biz-result-img){display:block;width:100%;height:auto;aspect-ratio:1.15;padding:0;margin:0;border:0;border-radius:0;overflow:hidden;background:var(--surface-2);}
html body #app#app#app#app#app#app#app .material-visual>:is(.biz-material-preview,.biz-result-img)>img{width:100%;height:100%;object-fit:contain;display:block;}
html body #app#app#app#app#app#app#app .material-visual>.ui-image-caption{inset:auto auto var(--s-2) 50%;width:max-content;max-width:calc(100% - var(--s-3));max-height:none;overflow:visible;padding:0 var(--s-1);border:0;border-radius:var(--r-sm);background:color-mix(in srgb,var(--ap-result-bg) 88%,transparent);color:var(--on-accent);transform:translateX(-50%);box-shadow:none;transition:opacity var(--dur-hover) var(--ease-out);}
html body #app#app#app#app#app#app#app .ui-image-caption .row-actions{padding:0;gap:var(--s-1);flex-wrap:nowrap;justify-content:center;}
html body #app#app#app#app#app#app#app .ui-image-caption .row-actions>.linkbtn{min-height:28px;padding:var(--s-1) var(--s-2);background:transparent;border:0;border-radius:var(--r-xs);color:var(--on-accent);font-size:var(--fs-xs);font-weight:600;line-height:1.4;box-shadow:none;}
html body #app#app#app#app#app#app#app .ui-image-caption .row-actions>.linkbtn:hover{background:var(--ap-overlay);text-decoration:underline;}
html body #app#app#app#app#app#app#app .ui-image-caption .row-actions>.linkbtn:focus-visible{outline:2px solid var(--on-accent);outline-offset:-2px;opacity:1;}
html body #app#app#app#app#app#app#app .ui-image-caption .row-actions>.linkbtn:active{opacity:.7;transform:none;}
html body #app#app#app#app#app#app#app .ui-image-caption .row-actions>.linkbtn:disabled{opacity:.5;cursor:not-allowed;}
html body #app#app#app#app#app#app#app :is(.material-context,.image-result-context){position:static;padding:var(--s-2);min-width:0;background:var(--surface);}
html body #app#app#app#app#app#app#app .material-context .biz-material-name{padding:0;}
html body #app#app#app#app#app#app#app .material-context .biz-material-name strong{font-size:var(--fs-xs);}
html body #app#app#app#app#app#app#app .material-context p:empty{display:none;}
html body #app#app#app#app#app#app#app :is(.material-compact,.biz-image-result):is(:hover,:has(:focus-visible):not(:root[data-ui-input="pointer"] *)) .ui-image-caption{opacity:1;pointer-events:auto;}
html body #app#app#app#app#app#app#app .studio-source-compact .studio-source-row{display:flex;align-items:center;gap:var(--s-2);padding:var(--s-2) 0;}
html body #app#app#app#app#app#app#app .studio-source-name{flex:1;min-width:0;text-align:left;border:0;background:transparent;color:var(--text);font-weight:600;padding:var(--s-2);border-radius:var(--r-sm);}
html body #app#app#app#app#app#app#app .studio-source-name:hover{background:var(--surface-hover);color:var(--accent-text);}
html body #app#app#app#app#app#app#app .studio-source-name:active{background:var(--surface-selected);}
html body #app#app#app#app#app#app#app .studio-source-name:focus-visible{outline:2px solid var(--accent);outline-offset:2px;}
html body #app#app#app#app#app#app#app .studio-source-name:disabled{opacity:.5;cursor:not-allowed;}
.studio-source-editor .big-editor-text{width:100%;min-height:40vh;resize:vertical;}
@media(hover:none){html body #app#app#app#app#app#app#app .material-visual>.ui-image-caption{position:absolute;opacity:1;pointer-events:auto;}html body #app#app#app#app#app#app#app .ui-image-caption .row-actions>.linkbtn{min-height:44px;}}
@media(max-width:760px){html body #app#app#app#app#app#app#app .page-products .cat-product-item{min-height:52px;}html body #app#app#app#app#app#app#app .ui-image-caption .row-actions>.linkbtn{padding-inline:var(--s-1);}html body #app#app#app#app#app#app#app .studio-source-name{min-height:44px;}}
@media(prefers-reduced-motion:reduce){html body #app#app#app#app#app#app#app :is(.material-compact,.material-visual>.ui-image-caption){transition:none;}}

html body #app#app#app#app#app#app#app .material-visual>.biz-result-img::after{content:none;}

/* 品牌VI明确调用资料：复用DS2卡片、按钮及原生焦点，不增加动效或视觉令牌。 */
#bp-card[data-vi3-root] .vi3-input-panels{display:grid;gap:var(--s-4);}
#bp-card[data-vi3-root] .vi3-input-panels textarea{width:100%;min-height:120px;resize:vertical;}
#bp-card[data-vi3-root] .vi3-input-gallery,#editor[data-vi3-dialog] .vi3-input-picker{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:var(--s-3);}
#bp-card[data-vi3-root] .vi3-input-image,#editor[data-vi3-dialog] .vi3-input-image{margin:0;min-width:0;}
#bp-card[data-vi3-root] .vi3-input-image img,#editor[data-vi3-dialog] .vi3-input-image img{display:block;width:100%;height:120px;object-fit:contain;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface);}
#bp-card[data-vi3-root] .vi3-input-image figcaption,#editor[data-vi3-dialog] .vi3-input-image figcaption{overflow-wrap:anywhere;font-size:var(--fs-sm);color:var(--text-2);}
#editor[data-vi3-dialog] .vi3-input-picker label{display:grid;gap:var(--s-2);align-content:start;cursor:pointer;}
#editor[data-vi3-dialog] .vi3-input-picker input{accent-color:var(--accent);}
#app [data-vi3-name-label]{min-width:0;max-width:100%;overflow-wrap:anywhere;}

/* VI资料使用紧凑入口，全文和图片集合在弹窗中编辑后明确调用。 */
#bp-card[data-vi3-root] .vi3-compact-inputs{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s-3);}
#bp-card[data-vi3-root] .vi3-input-tile{display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:var(--s-2);min-width:0;min-height:128px;padding:var(--s-3);text-align:left;white-space:normal;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface);color:var(--text);box-shadow:none;}
#bp-card[data-vi3-root] .vi3-input-title{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--s-1);font-weight:600;}
#bp-card[data-vi3-root] .vi3-input-status{font-size:var(--fs-sm);overflow-wrap:anywhere;}
#bp-card[data-vi3-root] .vi3-input-thumbs{display:flex;align-items:center;gap:var(--s-1);min-width:0;flex-wrap:wrap;}
#bp-card[data-vi3-root] .vi3-input-thumbs img{width:32px;height:32px;object-fit:contain;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface);}
#bp-card[data-vi3-root] .vi3-input-excerpt{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;overflow-wrap:anywhere;}
#editor[data-vi3-kind="basic-input"]{width:min(720px,calc(100vw - var(--s-6)));max-height:calc(100dvh - var(--s-6));}
#editor[data-vi3-kind="basic-input"] #vi3-basic-edit{display:block;width:100%;min-height:180px;max-height:48dvh;resize:vertical;box-sizing:border-box;}
#editor[data-vi3-kind="basic-input"] .modalfoot{display:flex;justify-content:flex-end;gap:var(--s-2);flex-wrap:wrap;}

/* 三页静态稿落实 · 2026-10-17 · 仅产品中心/图片/Listing，DS-2.0令牌保持 */
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .content:has(>.simplified-page) {padding:26px 32px 30px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-page .pagehead {margin:0 0 22px;gap:16px;align-items:center;min-height:38px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-page .pagehead h1 {font-size:28px;font-weight:650;letter-spacing:-.7px;line-height:1.25;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-page .card {box-shadow:none;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-page button {font-weight:500;letter-spacing:0;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-page .cat-cardhead,
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-page .studio-cardhead {margin:0 0 14px;gap:10px;min-height:32px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-page .cat-cardhead h2,
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-page .studio-cardhead h2 {font-size:17px;letter-spacing:-.2px;font-weight:650;line-height:1.45;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-page .field {min-width:0;margin:0;gap:6px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-page .field label,
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-page .studio-control>span {color:var(--text-2);font-weight:500;font-size:13px;line-height:1.45;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-page input:not([type=checkbox]):not([type=radio]),
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-page select {height:36px;min-height:36px;border-radius:8px;background:var(--surface);font-size:14px;border-color:var(--border-strong);}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-page textarea {border-radius:8px;border-color:var(--border-strong);font-size:14px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-page .small,
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-page small {line-height:1.5;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-page .beginner-stepbar {padding:0;margin-bottom:20px;min-height:36px;background:none;border:0;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-page .beginner-stepbar li {padding:8px 0;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .biz-product-layout {grid-template-columns:214px minmax(0,1fr);gap:0;border:1px solid var(--border);border-radius:12px;background:var(--surface);overflow:hidden;align-items:stretch;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .biz-product-sidebar {position:static;padding:20px 16px;border:0;border-right:1px solid var(--divider);border-radius:0;margin:0;background:var(--surface-2);}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .biz-product-sidebar h2 {font-size:15px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .biz-product-sidebar .cat-two {gap:6px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .biz-product-sidebar input {width:100%;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .biz-product-sidebar select {padding-left:8px;font-size:12px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .cat-product-list {margin-top:18px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .cat-product-list button {padding:10px;gap:9px;border:0;border-radius:8px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .cat-product-list img {width:40px;height:48px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .cat-product-list strong {font-size:13px;line-height:1.5;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .cat-shortcuts {margin-top:24px;padding-top:20px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .cat-shortcuts h3 {font-size:12px;color:var(--text-3);margin-bottom:8px;font-weight:500;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .cat-shortcuts button {padding:8px 0;font-size:13px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .simple-product-detail {padding:0 24px;min-width:0;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .simple-product-detail>.card {background:transparent;padding:20px 0;border:0;border-radius:0;border-bottom:1px solid var(--divider);margin:0;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .simple-product-identity {display:grid;grid-template-columns:minmax(0,1fr) auto;gap:0 12px;align-items:start;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .simple-product-identity>.cat-cardhead {grid-column:2;grid-row:1;margin-top:4px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .cat-preview-identity {grid-column:1;grid-row:1;gap:12px;margin:0;padding:0;align-items:start;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .cat-preview-identity h2 {font-size:18px;line-height:1.45;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .cat-preview-identity p {margin:4px 0 2px;font-size:13px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .cat-preview-identity small {font-size:12px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .avatar-wrap img {width:44px;height:48px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .avatar-edit-btn {min-height:24px;padding:0;font-size:11px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .biz-source-line {grid-column:1/-1;margin-top:14px;padding:12px 0 0;background:none;border-top:1px solid var(--divider);gap:10px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .biz-source-line .field {display:grid;grid-template-columns:auto 1fr;align-items:center;gap:12px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .biz-source-line .field label {white-space:nowrap;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .biz-four-grid {display:block;margin:0;gap:0;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .biz-tile-compact {margin:0;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .simple-info-row {border:0;border-bottom:1px solid var(--divider);border-radius:0;box-shadow:none;min-height:56px;padding:12px 0;margin:0;background:none;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .simple-info-row>.cat-cardhead {margin:0;min-height:32px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .simple-info-row>.cat-cardhead h2 {font-size:15px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .simple-info-row>.cat-cardhead h2 small {display:inline;font-size:12px;margin-left:10px;color:var(--text-3);font-weight:400;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .simple-info-row h2 br {display:none;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .simple-info-row>.cat-cardhead button {min-height:30px;height:30px;border:0;background:none;color:var(--accent-text);padding:4px 10px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .ap-product-library>.cat-cardhead h2 small {color:var(--text-3);font-size:12px;font-weight:400;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .ap-product-library .tabs {border:0;background:none;gap:4px;margin:0 0 14px;flex-wrap:wrap;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .tabs button {border:0;background:none;padding:5px 9px;min-height:30px;color:var(--text-2);}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .tabs button.active {color:var(--accent-text);background:var(--surface-selected);}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .ap-product-gallery {--rh:176px;margin-bottom:0;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .ap-product-gallery .biz-material-card {height:176px;max-height:176px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .product-library-upload {height:176px;min-height:176px;max-height:176px;flex-basis:176px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .ap-product-library>p {margin:10px 0 0;font-size:12px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .biz-generation-links {gap:8px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .simple-related-actions {padding:16px 0;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .simple-related-actions .cat-cardhead {margin-bottom:10px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images .beginner-images {gap:16px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images #image-step-one>.card {border:1px solid var(--border);border-radius:12px;padding:22px 24px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images #image-step-one>.card>.cat-cardhead {margin-bottom:16px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images .beginner-live-status {font-size:12px;color:var(--text-3);}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images #image-step-one>.card>p {margin:0 0 14px;font-size:13px;color:var(--text-2);}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images #biz-image-form {display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:22px 28px;align-items:start;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images .beginner-image-prep,
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images .beginner-image-settings {background:none;border:0;border-radius:0;padding:0;gap:12px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images .beginner-image-settings {border-left:1px solid var(--divider);padding-left:28px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images .beginner-subhead {font-size:15px;font-weight:650;margin:0 0 4px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images .biz-source-version {padding:9px 0;border:0;border-bottom:1px solid var(--divider);gap:7px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images .biz-source-version label {font-size:13px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images .biz-source-version button {font-size:12px;min-height:26px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images .image-brand {padding:10px 0;background:none;border:0;border-radius:0;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images .image-brand p {margin:0;font-size:12px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images .image-brand>label {font-size:13px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images .beginner-image-prep details {padding-top:6px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images #biz-reference-summary {font-size:14px;margin-bottom:10px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images .biz-reference-grid {display:grid;grid-template-columns:1fr;margin-top:12px;gap:12px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images .biz-reference-grid .biz-material-card {display:grid;grid-template-columns:136px minmax(0,1fr);height:auto;max-width:none;width:100%;gap:14px;border:0;border-radius:0;box-shadow:none;padding:0;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images .biz-reference-grid .material-visual {width:136px;height:154px;border:1px solid var(--border);border-radius:10px;overflow:hidden;background:var(--surface);}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images .material-visual img {object-fit:contain;width:100%;height:100%;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images .material-context {position:static;padding:0;font-size:12px;min-width:0;background:none;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images .biz-material-name {display:block;margin:0 0 8px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images .biz-material-name strong {display:block;font-size:12px;line-height:1.45;overflow-wrap:anywhere;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images .biz-material-name .badge {display:inline-block;margin-top:5px;font-size:11px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images .biz-ref-source {margin:4px 0;font-size:11px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images .material-context select {height:30px;min-height:30px;margin-top:4px;font-size:12px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images #b-imageDescription {height:72px;min-height:72px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images .cat-field-head label {font-size:12px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images .beginner-model-grid {gap:12px 14px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images .image-spec {margin-top:4px;padding-top:14px;border-top:1px solid var(--divider);}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images .image-spec h3 {font-size:14px;font-weight:600;margin:0 0 10px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images .image-spec .formgrid {gap:14px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images .biz-counts {margin-top:14px;gap:8px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images .biz-counts h3 {margin:0;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images .biz-counts p {background:none;margin:0;padding:5px 0 0;font-size:12px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images .biz-participation {border:0;background:var(--surface-2);padding:10px 12px;margin:2px 0 0;border-radius:8px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images .biz-participation h3 {font-size:12px;margin:0 0 6px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images .biz-participation ul {margin:0;gap:3px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images .biz-participation li {font-size:12px;padding:0;line-height:1.55;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images .beginner-next {margin:0;padding:8px 10px;font-size:12px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images .beginner-help {margin:4px 0 0;font-size:12px;line-height:1.5;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images #biz-image-form>div:last-child {grid-column:1/-1;font-size:12px;line-height:1.7;padding-top:12px;border-top:1px solid var(--divider);}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images .beginner-prompt-preview {margin-top:12px;padding-top:12px;border-top:1px solid var(--divider);}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images .beginner-prompt-preview .cat-empty {min-height:40px;padding:12px;font-size:13px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images .simple-step-two>.card {padding:16px 22px;border-color:var(--border);}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images .simple-step-two p {font-size:12px;margin:0 0 8px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images .simple-step-two .cat-empty {min-height:38px;padding:9px 12px;background:var(--surface-2);border:0;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images .image-results-v95>.card {padding:18px 22px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images .image-results-v95 .cat-empty {min-height:45px;padding:14px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images .biz-result-bar {border:0;background:var(--surface-2);padding:8px 10px;font-size:12px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images .image-page-v3>section.card {padding:16px 22px;margin-top:14px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images .simple-frozen-source p {margin:4px 0;font-size:12px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images .table-wrap td {padding:10px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .beginner-product-strip {padding:12px 18px;margin:0 0 20px;gap:18px;border:1px solid var(--border);}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .beginner-product-strip .studio-control {display:flex;flex-direction:row;align-items:center;gap:12px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .beginner-product-strip .studio-product-identity {gap:8px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .studio-product-identity img {width:34px;height:40px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .studio-product-identity strong {font-size:12px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .beginner-product-strip p {font-size:11px;max-width:200px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .studio-workbench {grid-template-columns:330px minmax(0,1fr);gap:24px;align-items:start;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .studio-workbench>aside {border:1px solid var(--border);border-radius:12px;background:var(--surface);padding:0 20px;gap:0;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .studio-workbench>aside>.card {margin:0;padding:18px 0;border:0;border-bottom:1px solid var(--divider);border-radius:0;background:none;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .studio-workbench>aside>.card:last-child {border-bottom:0;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .beginner-sources>p {font-size:12px;margin:0 0 10px;line-height:1.5;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .studio-source-compact .studio-source {padding:8px 0;margin:0;min-height:32px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .studio-source-compact .studio-source button {font-size:13px;min-height:28px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .call-mode {border:0;border-radius:0;background:none;padding:0;gap:10px;margin:0 0 12px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .call-mode-label {font-size:12px;color:var(--text-2);}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .call-mode-seg button {min-height:28px;height:28px;padding:4px 12px;font-size:12px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .studio-control {gap:5px;margin:0 0 11px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .studio-library-note {border:0;background:none;padding:0;margin:0;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .studio-library-note .row-actions {gap:9px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .studio-library-note button {font-size:12px;padding:3px 0;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .studio-output-choices {gap:6px 12px;margin-bottom:12px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .studio-output-choices label {font-size:12px;min-height:24px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .beginner-listing-outputs textarea {min-height:70px;height:70px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .beginner-listing-outputs>p {font-size:12px;line-height:1.6;margin:8px 0;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .studio-two-btn {gap:8px;margin-top:10px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .studio-two-btn>button {min-height:36px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .studio-two-btn p {font-size:12px;margin:0;line-height:1.5;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .studio-right {gap:16px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .studio-right>.card {padding:20px 22px;border:1px solid var(--border);border-radius:12px;margin:0;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .simple-run-state {padding:12px 16px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .simple-run-state .studio-cardhead {margin:0 0 8px;min-height:24px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .simple-run-state h2 {font-size:13px;color:var(--text-2);font-weight:500;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .studio-progress-label {font-size:12px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .studio-tabs {gap:4px;padding:0 0 12px;margin-bottom:16px;border-bottom:1px solid var(--divider);}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .studio-tabs button {border:0;background:none;padding:5px 8px;font-size:12px;min-height:30px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .studio-tabs button.active {background:var(--surface-selected);color:var(--accent-text);}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .studio-listing-result h3 {font-size:14px;margin:12px 0 10px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .studio-listing-result h3 small {font-size:11px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .studio-listing-result textarea {height:58px;min-height:58px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .studio-field-head {font-size:12px;margin:8px 0 5px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .studio-bullet-row {gap:8px;margin-bottom:8px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .studio-bullet-row textarea {height:42px;min-height:42px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .studio-listing-result .small {font-size:12px;line-height:1.6;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .studio-checks {padding:9px 10px;margin-top:12px;font-size:12px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .simple-empty-check {border:0;background:var(--surface-2);color:var(--text-2);padding:10px 12px;font-size:12px;line-height:1.7;margin-top:10px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .beginner-listing-save p {font-size:12px;margin:0 0 12px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .beginner-listing-save>.studio-cardhead {margin-bottom:10px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .beginner-listing-ads p {font-size:12px;line-height:1.6;margin:8px 0;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .studio-ads-settings {gap:12px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .studio-records-card {margin-top:20px;padding:18px 22px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .studio-records-card ul {min-height:38px;padding:10px 0;margin:0;font-size:13px;}
@media (max-width:1050px) {
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .content:has(>.simplified-page) {padding:22px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .biz-product-layout {grid-template-columns:190px minmax(0,1fr);}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .simple-product-identity {display:block;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .simple-product-identity>.cat-cardhead {margin-bottom:12px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images #biz-image-form {gap:20px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images .beginner-image-settings {padding-left:20px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .studio-workbench {grid-template-columns:290px minmax(0,1fr);gap:16px;}
}
@media (max-width:760px) {
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .content:has(>.simplified-page) {padding:18px 14px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-page .pagehead {align-items:flex-start;margin-bottom:18px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-page .pagehead h1 {font-size:24px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-page .pagehead .actions {flex-wrap:wrap;gap:6px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-page .pagehead button {font-size:12px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-page input:not([type=checkbox]):not([type=radio]),
 #app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-page select,
 #app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-page button {min-height:44px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .biz-product-layout {display:block;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .biz-product-sidebar {border-right:0;border-bottom:1px solid var(--border);}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .simple-product-detail {padding:0 16px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .cat-preview-identity {flex-wrap:wrap;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .biz-source-line {display:flex;flex-wrap:wrap;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .biz-source-line .field {display:flex;width:100%;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .simple-info-row>.cat-cardhead {flex-wrap:wrap;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images #biz-image-form {display:block;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images #image-step-one>.card {padding:16px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images .beginner-image-settings {border:0;border-top:1px solid var(--divider);padding:18px 0 0;margin-top:18px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images .beginner-image-prep {display:grid;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images .biz-source-version {flex-wrap:wrap;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images .biz-reference-grid .biz-material-card {grid-template-columns:108px minmax(0,1fr);}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images .biz-reference-grid .material-visual {width:108px;height:138px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images .beginner-model-grid {grid-template-columns:1fr;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images .cat-field-head {align-items:flex-start;gap:6px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images #biz-image-form>div:last-child {margin-top:16px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .studio-workbench {display:block;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .studio-right {margin-top:18px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .beginner-product-strip {flex-wrap:wrap;padding:12px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .beginner-product-strip .studio-control {display:grid;width:100%;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .beginner-product-strip p {max-width:none;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .studio-right>.card {padding:16px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .studio-tabs {flex-wrap:wrap;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .studio-tabs button {flex-basis:auto;}
}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-page .beginner-guide {margin:0 0 16px;padding:0;min-height:36px;gap:14px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-page .beginner-guide li {padding:6px 0;min-height:36px;gap:8px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-page .beginner-guide .beginner-step {width:24px;height:24px;min-width:24px;font-size:12px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-page .beginner-guide strong {font-size:13px;font-weight:500;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-page .cat-cardhead .actions button:not(.primary),#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-page .studio-cardhead .actions button:not(.primary) {border-color:transparent;background:transparent;box-shadow:none;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .biz-info-open {border:0;background:transparent;box-shadow:none;border-radius:0;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .simple-product-identity>.cat-cardhead {position:static;top:auto;right:auto;width:auto;max-width:none;grid-column:2;grid-row:1;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .simple-product-identity>.cat-cardhead .actions {display:flex;flex-direction:row;flex-wrap:nowrap;gap:8px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .cat-preview-identity {display:flex;gap:12px;max-width:100%;min-height:72px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .cat-preview-identity>.badge {position:static;margin:4px 0 0 8px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .cat-preview-identity h2 {margin:0;font-size:18px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .biz-source-line {margin:12px 0 0;width:100%;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .biz-four-grid {display:block;padding:0;margin:0;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .pagehead [data-biz=product-import] {background:var(--surface);border:1px solid var(--border-strong);color:var(--accent-text);}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .ap-product-gallery {padding:0;gap:12px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .ap-gallery-item {flex:0 0 176px;width:176px;max-width:176px;height:176px;max-height:176px;grid-template-rows:176px auto;overflow:hidden;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .ap-gallery-item>.biz-material-preview {height:176px;min-height:176px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .ap-gallery-item>.biz-material-preview img {width:100%;height:100%;object-fit:contain;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .ap-product-library>.cat-cardhead,#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .ap-product-library>.tabs {padding-inline:0;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images .biz-reference-grid .biz-material-preview {display:block;width:100%;height:100%;min-height:0;aspect-ratio:auto;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images .biz-reference-grid .biz-material-preview img {display:block;width:100%;height:100%;object-fit:contain;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images .beginner-image-prep>div.field:first-of-type {margin-bottom:0;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images .biz-source-version {min-height:40px;margin:0;padding:4px 0;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images .biz-source-version .biz-inline-check {min-height:30px;margin:0;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images .image-brand {display:grid;grid-template-columns:90px 1fr;gap:2px 10px;margin:0;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images .image-brand label {grid-row:1/3;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images .beginner-image-settings .actions {margin:0;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .beginner-product-strip .studio-control>span {white-space:nowrap;flex:0 0 auto;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .beginner-product-strip .studio-control select {min-width:0;flex:1;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .studio-workbench {grid-template-columns:360px minmax(0,1fr);}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .studio-source-compact .studio-source-row {min-height:34px;height:auto;padding:6px 0;gap:10px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .studio-source-compact .studio-source-row button {min-height:24px;padding:0;font-size:13px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .beginner-listing-settings {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .beginner-listing-settings>.studio-cardhead,#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .beginner-listing-settings>.call-mode,#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .beginner-listing-settings>.studio-library-note {grid-column:1/-1;margin:0;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .beginner-listing-settings>.studio-control {display:grid;grid-template-columns:minmax(0,1fr);margin:0;gap:5px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .beginner-listing-settings>.studio-control>span {white-space:nowrap;width:auto;min-width:0;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .beginner-listing-settings>.studio-control>select,#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .beginner-listing-settings>.studio-control>input {width:100%;min-width:0;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .studio-right>.simple-run-state {padding:10px 16px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .simple-run-state .studio-cardhead {margin:0 0 6px;min-height:20px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .simple-run-state .studio-progress-label {margin-top:6px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .studio-right>.studio-listing-result {padding:18px 20px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .studio-listing-result .studio-cardhead {margin-bottom:10px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .studio-listing-result [role=tabpanel] .studio-two-title {gap:12px;}
@media(max-width:760px) {
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .studio-workbench {display:block;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .simple-product-identity {display:block;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .simple-product-identity>.cat-cardhead {margin-bottom:12px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .beginner-product-strip .studio-control {display:grid;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images .biz-reference-grid .biz-material-preview {height:100%;min-height:0;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images .image-brand {display:block;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-page .beginner-guide strong {font-size:12px;}
}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .biz-four-grid {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0 24px;margin-top:4px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .biz-four-grid .biz-form-contents {display:contents;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .biz-four-grid .biz-tile-compact {display:contents;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .simple-info-row {padding:14px 0;min-height:70px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .simple-info-row>.cat-cardhead {align-items:center;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .simple-info-row>.cat-cardhead h2 {min-width:0;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .simple-info-row>.cat-cardhead h2 small {display:block;margin:2px 0 0;font-size:10px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .simple-product-identity {grid-template-columns:minmax(0,1fr) auto;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .simple-product-detail .simple-related-actions {padding:14px 0;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .studio-right {background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:0 22px;gap:0;overflow:hidden;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .studio-right>.card {border:0;border-radius:0;border-bottom:1px solid var(--divider);padding:18px 0;background:none;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .studio-right>.simple-run-state {padding:14px 0;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .studio-right>.studio-listing-result {padding:18px 0;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .studio-listing-result [data-studio=view-listing] {background:transparent;border-color:transparent;color:var(--accent-text);}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .studio-source-row {gap:8px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .studio-source-list {padding:0;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .studio-source-row input {margin:0;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .beginner-listing-history {border:1px solid var(--border);border-radius:12px;}
@media(max-width:760px) {
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .biz-four-grid {display:block;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .studio-right {padding:0 16px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-listing .studio-right>.card {padding:16px 0;}
}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .ap-product-gallery {display:flex;flex-wrap:wrap;gap:12px;align-items:flex-start;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-products .product-library-upload {flex:0 0 176px;width:176px;max-width:176px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images .biz-participation {padding:8px 10px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images .biz-counts {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px 8px;margin-top:10px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images .biz-counts h3 {grid-column:1/-1;font-size:12px;line-height:18px;margin:0;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images .biz-counts label {display:grid;gap:4px;font-size:12px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images .biz-counts p {grid-column:1/-1;line-height:18px;min-height:18px;margin:0;padding:0;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images .image-spec h3 {margin-bottom:8px;font-size:13px;line-height:20px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .simplified-images .image-spec {padding-top:10px;margin-top:0;}
@media(max-width:760px) {

}
@media(max-width:760px){#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):has(.simplified-page) .topbar{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px;padding:8px 12px;}#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):has(.simplified-page) .topbar>.actions{grid-column:1;grid-row:1;gap:6px;min-width:0;}#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):has(.simplified-page) .topbar .crumb{font-size:11px;white-space:normal;line-height:1.4;}#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):has(.simplified-page) .topbar .topright{display:contents;}#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):has(.simplified-page) .topbar .localpill{grid-column:1;grid-row:2;justify-self:start;font-size:10px;max-width:100%;}#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):has(.simplified-page) .topbar .theme-switch{grid-column:2;grid-row:1;justify-self:end;}#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):has(.simplified-page) .topbar .auth-user-actions{grid-column:2;grid-row:2;display:flex;flex-wrap:nowrap;gap:4px;}#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):has(.simplified-page) .topbar .auth-user-actions button{min-height:36px;padding:5px 8px;font-size:11px;}#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):has(.simplified-page) .topbar .theme-switch button{min-height:36px;min-width:34px;width:34px;}}

/* 全站简化与三项贯通 V1 · 2026-10-17。保留DS-2.0，不覆盖聊天/商品画布/作战图内部。 */
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .content.workspace-simplified:not(.workspace-products):not(.workspace-images):not(.workspace-listing):not(.workspace-listing-preview):not(.workspace-replenish):not(.listing-preview-canvas *,.rp-war-shell *,.replenish-v96 *,[data-rp-host] *){padding:24px 28px 32px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .content.workspace-simplified:not(.workspace-products):not(.workspace-images):not(.workspace-listing):not(.workspace-listing-preview):not(.workspace-replenish) >.pagehead:not(.listing-preview-canvas *,.rp-war-shell *,.replenish-v96 *,[data-rp-host] *), >:is(.planning-page,.studio-page,.profit-page,.white-background,.cp-page,.cat-page)>.pagehead:not(.listing-preview-canvas *,.rp-war-shell *,.replenish-v96 *,[data-rp-host] *){margin:0 0 20px;padding:0;gap:16px;align-items:center;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .content.workspace-simplified:not(.workspace-products):not(.workspace-images):not(.workspace-listing):not(.workspace-listing-preview):not(.workspace-replenish) .pagehead h1:not(.listing-preview-canvas *,.rp-war-shell *,.replenish-v96 *,[data-rp-host] *){font-size:26px;line-height:1.25;letter-spacing:-.5px;font-weight:650;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .content.workspace-simplified:not(.workspace-products):not(.workspace-images):not(.workspace-listing):not(.workspace-listing-preview):not(.workspace-replenish) .pagehead>div>p:not(.listing-preview-canvas *,.rp-war-shell *,.replenish-v96 *,[data-rp-host] *){font-size:var(--fs-sm);line-height:1.55;margin:6px 0 0;color:var(--text-2);}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .content.workspace-simplified:not(.workspace-products):not(.workspace-images):not(.workspace-listing):not(.workspace-listing-preview):not(.workspace-replenish) .workspace-panel:not(.listing-preview-canvas *,.rp-war-shell *,.replenish-v96 *,[data-rp-host] *){border-radius:16px;box-shadow:none;margin-bottom:12px;min-width:0;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .content.workspace-simplified:not(.workspace-products):not(.workspace-images):not(.workspace-listing):not(.workspace-listing-preview):not(.workspace-replenish) .workspace-panel>:is(.cardhead,.cat-cardhead,.studio-cardhead):not(.listing-preview-canvas *,.rp-war-shell *,.replenish-v96 *,[data-rp-host] *){padding:10px 16px;gap:10px;border-bottom:1px solid var(--border);}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .content.workspace-simplified:not(.workspace-products):not(.workspace-images):not(.workspace-listing):not(.workspace-listing-preview):not(.workspace-replenish) .workspace-panel>:is(.cardhead,.cat-cardhead,.studio-cardhead) h2:not(.listing-preview-canvas *,.rp-war-shell *,.replenish-v96 *,[data-rp-host] *){font-size:16px;line-height:1.4;font-weight:600;margin:0;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .content.workspace-simplified:not(.workspace-products):not(.workspace-images):not(.workspace-listing):not(.workspace-listing-preview):not(.workspace-replenish) :is(.cardbody,.cat-cardbody):not(.listing-preview-canvas *,.rp-war-shell *,.replenish-v96 *,[data-rp-host] *){padding:12px 16px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .content.workspace-simplified:not(.workspace-products):not(.workspace-images):not(.workspace-listing):not(.workspace-listing-preview):not(.workspace-replenish) .workspace-panel .workspace-panel:not(.listing-preview-canvas *,.rp-war-shell *,.replenish-v96 *,[data-rp-host] *){box-shadow:none;border-radius:10px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .content.workspace-simplified:not(.workspace-products):not(.workspace-images):not(.workspace-listing):not(.workspace-listing-preview):not(.workspace-replenish) :is(.field,.studio-control)>label:not(.listing-preview-canvas *,.rp-war-shell *,.replenish-v96 *,[data-rp-host] *){margin-bottom:6px;font-size:var(--fs-sm);font-weight:500;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .content.workspace-simplified:not(.workspace-products):not(.workspace-images):not(.workspace-listing):not(.workspace-listing-preview):not(.workspace-replenish) :is(.formgrid,.form-grid,.studio-settings-grid,.cat-two):not(.listing-preview-canvas *,.rp-war-shell *,.replenish-v96 *,[data-rp-host] *){column-gap:16px;row-gap:12px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .content.workspace-simplified:not(.workspace-products):not(.workspace-images):not(.workspace-listing):not(.workspace-listing-preview):not(.workspace-replenish) :is(.cat-filter-bar,.plan-toolbar,.cat-filters,.filter-bar,.toolbar):not(.listing-preview-canvas *,.rp-war-shell *,.replenish-v96 *,[data-rp-host] *){gap:10px;align-items:end;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .content.workspace-simplified:not(.workspace-products):not(.workspace-images):not(.workspace-listing):not(.workspace-listing-preview):not(.workspace-replenish) .actions:not(.listing-preview-canvas *,.rp-war-shell *,.replenish-v96 *,[data-rp-host] *){gap:8px;flex-wrap:wrap;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .content.workspace-simplified:not(.workspace-products):not(.workspace-images):not(.workspace-listing):not(.workspace-listing-preview):not(.workspace-replenish) :is(.table-wrap,.cat-table-wrap):not(.listing-preview-canvas *,.rp-war-shell *,.replenish-v96 *,[data-rp-host] *){border-radius:10px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .content.workspace-simplified:not(.workspace-products):not(.workspace-images):not(.workspace-listing):not(.workspace-listing-preview):not(.workspace-replenish) table th:not(.listing-preview-canvas *,.rp-war-shell *,.replenish-v96 *,[data-rp-host] *){font-size:var(--fs-sm);font-weight:600;white-space:nowrap;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .content.workspace-simplified:not(.workspace-products):not(.workspace-images):not(.workspace-listing):not(.workspace-listing-preview):not(.workspace-replenish) table :is(th,td):not(.listing-preview-canvas *,.rp-war-shell *,.replenish-v96 *,[data-rp-host] *){padding:8px 12px;vertical-align:middle;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .content.workspace-simplified:not(.workspace-products):not(.workspace-images):not(.workspace-listing):not(.workspace-listing-preview):not(.workspace-replenish) table td:last-child .actions:not(.listing-preview-canvas *,.rp-war-shell *,.replenish-v96 *,[data-rp-host] *){gap:6px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .content.workspace-simplified:not(.workspace-products):not(.workspace-images):not(.workspace-listing):not(.workspace-listing-preview):not(.workspace-replenish) :is(.empty,.cat-empty,.studio-empty):not(.listing-preview-canvas *,.rp-war-shell *,.replenish-v96 *,[data-rp-host] *){padding:24px 20px;min-height:0;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .content.workspace-simplified:not(.workspace-products):not(.workspace-images):not(.workspace-listing):not(.workspace-listing-preview):not(.workspace-replenish) .empty-icon:not(.listing-preview-canvas *,.rp-war-shell *,.replenish-v96 *,[data-rp-host] *){width:32px;height:32px;margin-bottom:10px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .content.workspace-simplified:not(.workspace-products):not(.workspace-images):not(.workspace-listing):not(.workspace-listing-preview):not(.workspace-replenish) .empty h3:not(.listing-preview-canvas *,.rp-war-shell *,.replenish-v96 *,[data-rp-host] *){font-size:17px;margin:8px 0;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .content.workspace-simplified:not(.workspace-products):not(.workspace-images):not(.workspace-listing):not(.workspace-listing-preview):not(.workspace-replenish) .empty p:not(.listing-preview-canvas *,.rp-war-shell *,.replenish-v96 *,[data-rp-host] *){margin:8px 0 14px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .content.workspace-simplified:not(.workspace-products):not(.workspace-images):not(.workspace-listing):not(.workspace-listing-preview):not(.workspace-replenish) .stats:not(.listing-preview-canvas *,.rp-war-shell *,.replenish-v96 *,[data-rp-host] *){gap:12px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .content.workspace-simplified:not(.workspace-products):not(.workspace-images):not(.workspace-listing):not(.workspace-listing-preview):not(.workspace-replenish) .stat:not(.listing-preview-canvas *,.rp-war-shell *,.replenish-v96 *,[data-rp-host] *){padding:12px 16px;border-radius:14px;box-shadow:none;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .content.workspace-simplified:not(.workspace-products):not(.workspace-images):not(.workspace-listing):not(.workspace-listing-preview):not(.workspace-replenish) .stat strong:not(.listing-preview-canvas *,.rp-war-shell *,.replenish-v96 *,[data-rp-host] *){font-size:28px;line-height:1.3;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .content.workspace-simplified:not(.workspace-products):not(.workspace-images):not(.workspace-listing):not(.workspace-listing-preview):not(.workspace-replenish) .service-card:not(.listing-preview-canvas *,.rp-war-shell *,.replenish-v96 *,[data-rp-host] *){padding:20px;border-radius:14px;box-shadow:none;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .content.workspace-simplified:not(.workspace-products):not(.workspace-images):not(.workspace-listing):not(.workspace-listing-preview):not(.workspace-replenish) .workspace-source-caption{flex:1 1 auto;min-width:100px;font-size:12px;color:var(--text-2);line-height:1.5;overflow-wrap:anywhere;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .content.workspace-simplified:not(.workspace-products):not(.workspace-images):not(.workspace-listing):not(.workspace-listing-preview):not(.workspace-replenish) .workspace-state-caption{font-size:13px;line-height:1.65;color:var(--text-2);padding:0;margin:0 0 16px;overflow-wrap:anywhere;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .content.workspace-simplified:not(.workspace-products):not(.workspace-images):not(.workspace-listing):not(.workspace-listing-preview):not(.workspace-replenish) form>.workspace-state-caption{margin:12px 0 0;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .content.workspace-simplified:not(.workspace-products):not(.workspace-images):not(.workspace-listing):not(.workspace-listing-preview):not(.workspace-replenish) .workspace-object-caption:not(.listing-preview-canvas *,.rp-war-shell *,.replenish-v96 *,[data-rp-host] *){font-size:13px;color:var(--text-2);}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .content.workspace-simplified:not(.workspace-products):not(.workspace-images):not(.workspace-listing):not(.workspace-listing-preview):not(.workspace-replenish).workspace-home .hero:not(.listing-preview-canvas *,.rp-war-shell *,.replenish-v96 *,[data-rp-host] *){min-height:0;padding:20px 24px;border-radius:16px;box-shadow:none;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .content.workspace-simplified:not(.workspace-products):not(.workspace-images):not(.workspace-listing):not(.workspace-listing-preview):not(.workspace-replenish).workspace-home .hero h2:not(.listing-preview-canvas *,.rp-war-shell *,.replenish-v96 *,[data-rp-host] *){font-size:23px;line-height:1.4;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .content.workspace-simplified:not(.workspace-products):not(.workspace-images):not(.workspace-listing):not(.workspace-listing-preview):not(.workspace-replenish).workspace-home .grid-main:not(.listing-preview-canvas *,.rp-war-shell *,.replenish-v96 *,[data-rp-host] *){grid-template-columns:minmax(0,1fr) 280px;gap:20px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .content.workspace-simplified:not(.workspace-products):not(.workspace-images):not(.workspace-listing):not(.workspace-listing-preview):not(.workspace-replenish).workspace-registrations :is(.cat-filter-card,.cat-filter-group):not(.listing-preview-canvas *,.rp-war-shell *,.replenish-v96 *,[data-rp-host] *){box-shadow:none;background:transparent;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .content.workspace-simplified:not(.workspace-products):not(.workspace-images):not(.workspace-listing):not(.workspace-listing-preview):not(.workspace-replenish).workspace-completed :is(.completion-upload-tile,.library-upload-tile):not(.listing-preview-canvas *,.rp-war-shell *,.replenish-v96 *,[data-rp-host] *){min-height:116px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .content.workspace-simplified:not(.workspace-products):not(.workspace-images):not(.workspace-listing):not(.workspace-listing-preview):not(.workspace-replenish).workspace-videos .studio-two:not(.listing-preview-canvas *,.rp-war-shell *,.replenish-v96 *,[data-rp-host] *){gap:20px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .content.workspace-simplified:not(.workspace-products):not(.workspace-images):not(.workspace-listing):not(.workspace-listing-preview):not(.workspace-replenish).workspace-models .r-model-table td:not(.listing-preview-canvas *,.rp-war-shell *,.replenish-v96 *,[data-rp-host] *){padding:10px 12px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .content.workspace-simplified:not(.workspace-products):not(.workspace-images):not(.workspace-listing):not(.workspace-listing-preview):not(.workspace-replenish).workspace-seasons .plan-stats>div:not(.listing-preview-canvas *,.rp-war-shell *,.replenish-v96 *,[data-rp-host] *){box-shadow:none;}
#app .workspace-product-choice .modalbody{display:grid;gap:12px;}
@media(max-width:760px){
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .content.workspace-simplified:not(.workspace-products):not(.workspace-images):not(.workspace-listing):not(.workspace-listing-preview):not(.workspace-replenish):not(.listing-preview-canvas *,.rp-war-shell *,.replenish-v96 *,[data-rp-host] *){padding:16px 14px 24px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .content.workspace-simplified:not(.workspace-products):not(.workspace-images):not(.workspace-listing):not(.workspace-listing-preview):not(.workspace-replenish) .pagehead:not(.listing-preview-canvas *,.rp-war-shell *,.replenish-v96 *,[data-rp-host] *){align-items:flex-start;flex-direction:column;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .content.workspace-simplified:not(.workspace-products):not(.workspace-images):not(.workspace-listing):not(.workspace-listing-preview):not(.workspace-replenish) .pagehead h1:not(.listing-preview-canvas *,.rp-war-shell *,.replenish-v96 *,[data-rp-host] *){font-size:24px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .content.workspace-simplified:not(.workspace-products):not(.workspace-images):not(.workspace-listing):not(.workspace-listing-preview):not(.workspace-replenish) .workspace-panel>:is(.cardhead,.cat-cardhead,.studio-cardhead):not(.listing-preview-canvas *,.rp-war-shell *,.replenish-v96 *,[data-rp-host] *){padding:14px 16px;flex-wrap:wrap;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .content.workspace-simplified:not(.workspace-products):not(.workspace-images):not(.workspace-listing):not(.workspace-listing-preview):not(.workspace-replenish) :is(.cardbody,.cat-cardbody):not(.listing-preview-canvas *,.rp-war-shell *,.replenish-v96 *,[data-rp-host] *){padding:16px;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .content.workspace-simplified:not(.workspace-products):not(.workspace-images):not(.workspace-listing):not(.workspace-listing-preview):not(.workspace-replenish) .actions:not(.listing-preview-canvas *,.rp-war-shell *,.replenish-v96 *,[data-rp-host] *){max-width:100%;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .content.workspace-simplified:not(.workspace-products):not(.workspace-images):not(.workspace-listing):not(.workspace-listing-preview):not(.workspace-replenish).workspace-home .grid-main:not(.listing-preview-canvas *,.rp-war-shell *,.replenish-v96 *,[data-rp-host] *){grid-template-columns:minmax(0,1fr);}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .content.workspace-simplified:not(.workspace-products):not(.workspace-images):not(.workspace-listing):not(.workspace-listing-preview):not(.workspace-replenish) .workspace-source-caption{flex-basis:100%;padding-left:0;}
}

#app .workspace-source-caption{font-size:12px;line-height:1.5;color:var(--text-2);overflow-wrap:anywhere;}
#app .workspace-state-caption{font-size:13px;line-height:1.65;color:var(--text-2);margin:12px 0;}

#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .content.workspace-simplified:not(.workspace-products):not(.workspace-images):not(.workspace-listing):not(.workspace-listing-preview):not(.workspace-replenish).workspace-completed .completion-gallery>.completion-upload-tile:only-child:not(.listing-preview-canvas *,.rp-war-shell *,.replenish-v96 *,[data-rp-host] *){width:144px;max-width:100%;min-height:116px;height:128px;aspect-ratio:auto;justify-self:start;align-self:start;}
#app:not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#):not(#\#) .content.workspace-simplified:not(.workspace-products):not(.workspace-images):not(.workspace-listing):not(.workspace-listing-preview):not(.workspace-replenish).workspace-home .hero:not(.listing-preview-canvas *,.rp-war-shell *,.replenish-v96 *,[data-rp-host] *){padding:16px 20px;}

/* 易用性审查 V2：来源、返回定位与真实保存反馈；保留DS-2.0及原动效。 */
#app:not(#\#) .workspace-progress .cardbody p { display:flex; align-items:baseline; flex-wrap:wrap; gap:var(--s-2); margin-block:var(--s-2); }
#app:not(#\#) .workspace-tasks td { overflow-wrap:anywhere; }
#app:not(#\#) .workspace-tasks td small { display:block; color:var(--text-2); }
#app:not(#\#) .workspace-focused-record { outline:2px solid var(--accent-text); outline-offset:2px; }
.workspace-long-form .workspace-form-index { position:sticky; top:0; z-index:3; padding:var(--s-3); background:var(--surface); border-bottom:1px solid var(--border); display:flex; gap:var(--s-2); flex-wrap:wrap; }
.workspace-long-form .workspace-form-index p { flex-basis:100%; margin:0; color:var(--text-2); font-size:var(--fs-sm); }
.workspace-long-form .workspace-form-index a { color:var(--accent-text); padding:var(--s-1) var(--s-2); border-radius:var(--r-sm); }
.workspace-long-form .modalfoot { position:sticky; bottom:0; z-index:3; background:var(--surface); border-top:1px solid var(--border); }
.workspace-long-form [id^="registration-section-"] { scroll-margin-top:100px; }
@media(max-width:760px) { #app:not(#\#) .workspace-registrations .table-wrap { position:relative; overflow-x:auto; } #app:not(#\#) .workspace-registrations .table-wrap th:first-child, #app:not(#\#) .workspace-registrations .table-wrap td:first-child { position:sticky; left:0; z-index:1; background:var(--surface); } }

/* 易用性整理 V2：复用原广告入口和确认弹窗，无折叠或新业务 */
#app:not(#\#) .workspace-ad-navigation { border-block:1px solid var(--border); padding-block:var(--s-2); margin-block:var(--s-2); }
#app:not(#\#) .workspace-ad-navigation > .mini { display:block; padding-inline:var(--s-4); margin-block-end:var(--s-1); }
.workspace-unsaved-confirm { max-width:min(440px,calc(100vw - 32px)); }

/* 2026-10-17: existing image selection and retained actions remain operable. */
html body #app#app#app#app#app#app#app#app#app .image-page-v3 .biz-image-result>.biz-result-pick{position:absolute;inset:8px auto auto 8px;z-index:10;order:0;margin:0;pointer-events:auto;}
html body #app#app#app#app#app#app#app#app .image-page-v3 .biz-image-result>.ui-image-caption{position:relative;inset:auto;max-height:none;transform:none;}

html body #app#app#app#app#app#app#app#app#app .image-page-v3 .biz-image-result>.ui-image-caption{opacity:0;pointer-events:none;}
html body #app#app#app#app#app#app#app#app#app .image-page-v3 .biz-image-result:is(:hover,:has(:focus-visible):not(:root[data-ui-input="pointer"] *))>.ui-image-caption{opacity:1;pointer-events:auto;}
@media(hover:none){html body #app#app#app#app#app#app#app#app#app .image-page-v3 .biz-image-result>.ui-image-caption{opacity:1;pointer-events:auto;}}

@media(max-width:760px){
 html body #app#app#app#app#app#app#app#app#app .simplified-products .biz-material-grid.ap-product-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s-3);align-items:start;}
 html body #app#app#app#app#app#app#app#app#app .simplified-products .biz-material-grid.ap-product-gallery>.ap-gallery-item{width:auto;max-width:100%;min-width:0;flex:none;}
}

html body #app#app#app#app#app#app#app#app#app .image-page-v3 .ip-prompt-media .completion-media-actions{flex-wrap:wrap;}

@media(max-width:760px){
 html body #app#app#app#app#app#app#app#app#app .image-page-v3 :is(.ip-step-one-grid,.ip-output-grid,.ip-result-gallery){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s-3);}
}

@media(max-width:760px){
 html body #app#app#app#app#app#app#app#app#app .image-page-v3 :is(.ip-prompt-media,.ip-result-media){aspect-ratio:auto;}
 html body #app#app#app#app#app#app#app#app#app .image-page-v3 :is(.ip-prompt-media,.ip-result-media)>.cat-media-open{height:auto;aspect-ratio:1;}
 html body #app#app#app#app#app#app#app#app#app .image-page-v3 :is(.ip-prompt-media,.ip-result-media)>figcaption{position:relative;inset:auto;max-height:none;margin:var(--s-1) 0;}
 html body #app#app#app#app#app#app#app#app#app .image-page-v3 .ip-result-media .completion-media-actions{flex-wrap:wrap;}
}

/* Shared image production navigation and stable modal background. */
html{scrollbar-gutter:stable;}
html body #app#app#app#app#app#app#app#app#app#app .image-production-nav{display:flex;align-items:center;flex-wrap:wrap;gap:var(--s-2);padding:var(--s-2) 0 var(--s-4);margin-bottom:var(--s-3);border-bottom:1px solid var(--divider);}
html body #app#app#app#app#app#app#app#app#app#app .image-production-nav button{min-height:var(--control-h);padding:var(--s-2) var(--s-4);border:1px solid var(--border);border-radius:var(--r-md);background:var(--accent);color:var(--on-accent);box-shadow:none;}
html body #app#app#app#app#app#app#app#app#app#app .image-production-nav button[aria-current=page]{color:var(--on-accent);background:var(--accent);border-color:var(--accent);font-weight:var(--fw-semibold);box-shadow:inset 0 0 0 2px var(--on-accent);}
html body #app#app#app#app#app#app#app#app#app#app .image-production-nav button:hover{background:var(--accent);color:var(--on-accent);text-decoration:underline;text-underline-offset:3px;}
html body #app#app#app#app#app#app#app#app#app#app .image-production-nav button:active{transform:scale(var(--press-scale));}
html body #app#app#app#app#app#app#app#app#app#app .image-production-nav button:focus-visible{outline:2px solid var(--accent);outline-offset:2px;}

/* Small reference photographs, arranged in rows; no side description panel. */
html body #app#app#app#app#app#app#app#app#app#app .simplified-images .biz-reference-grid{grid-template-columns:repeat(auto-fill,136px);justify-content:start;gap:var(--s-3);}
html body #app#app#app#app#app#app#app#app#app#app .simplified-images .biz-reference-grid .reference-card{display:block;grid-template-columns:none;width:136px;max-width:136px;height:154px;padding:0;border:0;overflow:visible;}
html body #app#app#app#app#app#app#app#app#app#app .reference-card .material-visual{position:relative;width:100%;height:100%;overflow:hidden;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface);}
html body #app#app#app#app#app#app#app#app#app#app .reference-card .ui-image-caption{transform:none;inset:auto var(--s-1) var(--s-1);width:auto;max-height:none;padding:var(--s-1);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-sm);box-shadow:var(--shadow-1);}
html body #app#app#app#app#app#app#app#app#app#app .reference-card .row-actions{display:flex;align-items:center;justify-content:space-between;gap:var(--s-1);flex-wrap:nowrap;}
html body #app#app#app#app#app#app#app#app#app#app .reference-card .row-actions :is(button,label){margin:0;padding:0;min-height:30px;font-size:var(--fs-xs);white-space:nowrap;color:var(--accent-text);}
html body #app#app#app#app#app#app#app#app#app#app .reference-card .row-actions input{width:14px;height:14px;margin:0;accent-color:var(--accent);}
html body #app#app#app#app#app#app#app#app#app#app .reference-card .row-actions label{display:inline-flex;align-items:center;gap:2px;}
html body #app#app#app#app#app#app#app#app#app#app .ap-product-gallery [data-library-asset]{cursor:grab;}
html body #app#app#app#app#app#app#app#app#app#app .ap-product-gallery .library-dragging{opacity:.45;cursor:grabbing;}
@media(max-width:760px){
 html body #app#app#app#app#app#app#app#app#app#app .simplified-images .biz-reference-grid{grid-template-columns:repeat(auto-fill,108px);}
 html body #app#app#app#app#app#app#app#app#app#app .simplified-images .biz-reference-grid .reference-card{width:108px;max-width:108px;height:138px;}
 html body #app#app#app#app#app#app#app#app#app#app .reference-card .material-visual{width:108px;height:138px;}
 html body #app#app#app#app#app#app#app#app#app#app .reference-card .row-actions{gap:2px;}
}
@media(hover:none){html body #app#app#app#app#app#app#app#app#app#app .reference-card .ui-image-caption{opacity:1;pointer-events:auto;transform:none;}}
@media(prefers-reduced-motion:reduce){.image-production-nav button{transform:none!important;transition:none!important;}}

/* Unit conversions are display-only companions to existing measurements. */
.own-grid .own-unit-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s-4);grid-column:1/-1;min-width:0;}
html body dialog .own-unit-result input[readonly]:not(#\#):not(#\#):not(#\#),html body #app .own-unit-result input[readonly]:not(#\#):not(#\#):not(#\#){background:var(--surface-3);color:var(--text-2);border-color:var(--border-strong);cursor:text;}
@media(max-width:760px){.own-grid .own-unit-pair{grid-template-columns:minmax(0,1fr);gap:var(--s-2);}}
