/* 产品按任务设宽度，阅读、操作和表单不共享放大系数。 */
body.pc-product { --pc-prose:45rem; --pc-directory:180px; --pc-master-width:260px; --pc-reading-gap:24px; }
body.pc-product .pc-work-area { max-width:1600px; }
body.pc-product .pc-work-area.has-detail { max-width:1440px; align-items:start; }
body.pc-product.pc-reading-expanded .pc-work-area.has-detail { grid-template-columns:minmax(0,1fr); max-width:1320px; }
body.pc-product .pc-master { height:auto; max-height:calc(100svh - 112px); min-height:0; }
body.pc-product .pc-master-list { flex:0 1 auto; }
body.pc-product .pc-content-pane { container:product-pane / inline-size; }
body.pc-product .pc-company-grid { grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr)); }
body.pc-product .pc-company-grid .wp-company-row { max-width:390px; }
body.pc-product .pc-recent-changes { grid-template-columns:repeat(auto-fill,minmax(min(100%,360px),1fr)); }
body.pc-product .pc-change-card { max-width:540px; }
body.pc-product .pc-global-status { align-items:start; }
body.pc-product .dv-button,body.pc-product .dv-select { font-size:0.875rem; min-height:44px; }
body.pc-product .dv-input,body.pc-product .dv-textarea,body.pc-product .wp-textarea { font-size:1rem; }
body.pc-product .dv-page-head,body.pc-product .dv-page-actions,body.pc-product .pc-detail-tools { flex-wrap:wrap; }
body.pc-product .dv-page-head h1,body.pc-product .wp-reading-title { overflow-wrap:anywhere; }
body.pc-product .wp-reading,body.pc-product .wp-prose { max-width:800px; margin-inline:auto; }
body.pc-product .wp-prose { font-size:1.125rem; }
body.pc-product .rp-article { width:100%; max-width:var(--pc-prose); font-size:1.125rem; }
body.pc-product .rp-grid { width:100%; max-width:calc(var(--pc-directory) + var(--pc-reading-gap) + var(--pc-prose)); margin-inline:auto; grid-template-columns:var(--pc-directory) minmax(0,var(--pc-prose)); gap:var(--pc-reading-gap); }
body.pc-product[data-product-page=report] .pc-work-area.has-detail { grid-template-columns:var(--pc-master-width) minmax(0,1fr); max-width:calc(var(--pc-master-width) + 2 * var(--pc-reading-gap) + var(--pc-directory) + var(--pc-prose) + 50px); }
body.pc-product.pc-reading-expanded[data-product-page=report] .pc-work-area.has-detail { grid-template-columns:minmax(0,1fr); max-width:calc(var(--pc-directory) + var(--pc-reading-gap) + var(--pc-prose) + 50px); }
body.pc-product .rp-directory { font-size:0.875rem; }
body.pc-product .rp-directory-label,body.pc-product .rp-directory-footer { font-size:0.75rem; }
body.pc-product .rp-summary-head h2 { font-size:1.25rem; }
body.pc-product .rp-summary li { font-size:1rem; }
body.pc-product .rp-document-title { font-size:1.75rem; }
body.pc-product .rp-summary-head { flex-wrap:wrap; }
body.pc-product .rp-summary-label { white-space:normal; }
body.pc-product .rp-mobile-directory { display:block; }
body.pc-product .rp-section .dv-table-wrap { max-width:100%; }
body.pc-product .dv-table-wrap,body.pc-product .cb-table-wrap { max-width:100%; overflow:auto; }
/* 简单资料是一组窄表单，辅助说明随其后；结算保留任务相关的双栏。 */
body.pc-product:is([data-product-page=profile],[data-product-page=feedback],[data-product-page=destination],[data-product-page=login]) .pc-work-area { max-width:600px; }
body.pc-product:is([data-product-page=profile],[data-product-page=feedback],[data-product-page=destination]) .sp-layout { grid-template-columns:minmax(0,1fr); max-width:600px; }
body.pc-product .jp-login { width:100%; max-width:560px; margin-inline:auto; }
body.pc-product:is([data-product-page=checkout],[data-product-page=generate]) .pc-work-area { max-width:1120px; }
body.pc-product[data-product-page=account] .pc-work-area { max-width:1240px; }
body.pc-product[data-product-page=notifications] .pc-work-area { max-width:1000px; }
body.pc-product[data-product-page=share] .pc-work-area { max-width:820px; }
body.pc-product[data-product-page=share] .sp-layout { display:block; }
body.pc-product .sp-paper p { font-size:1.125rem; }
body.pc-product .dv-dialog { width:540px; max-width:calc(100vw - 32px); max-height:calc(100dvh - 40px); overflow:auto; }
body.pc-product .pc-search-dialog { width:740px; max-width:calc(100vw - 32px); max-height:calc(100dvh - 40px); }
body.pc-product .pc-search-results { max-height:none; overflow:visible; }
body.pc-product .pc-search-result>span:not(.dv-company-logo),body.pc-product .pc-search-selected>div { min-width:0; overflow-wrap:anywhere; }
body.pc-product .pc-search-selected { flex-wrap:wrap; }
body.pc-product .pc-report-choice span { min-width:0; }
@media(min-width:1800px) {
  body.pc-product { --pc-prose:47.5rem; --pc-directory:200px; --pc-master-width:280px; --pc-reading-gap:28px; }
  html[lang=en] body.pc-product { --pc-prose:43.75rem; }
  body.pc-product .dv-main { padding:36px 40px 72px; }
  body.pc-product .pc-company-main .wp-company-name { font-size:1.25rem; }
  body.pc-product .pc-work-area.has-detail { grid-template-columns:280px minmax(0,1fr); gap:28px; }
  body.pc-product .rp-article { font-size:1.1875rem; }
  body.pc-product .wp-reading-title { font-size:1.75rem; }
  body.pc-product .wp-prose,body.pc-product .sp-paper p { font-size:1.1875rem; }
  body.pc-product .wp-question-title { font-size:1.125rem; }
  body.pc-product .wp-question-reason,body.pc-product .wp-question-context { font-size:1rem; }
  body.pc-product .np-title { font-size:1.125rem; }
  body.pc-product .np-summary { font-size:1rem; max-width:46em; }
}
@container product-pane (max-width:850px) {
  body.pc-product .wp-layout,body.pc-product .jp-layout { grid-template-columns:minmax(0,1fr); }
  body.pc-product .wp-aside,body.pc-product .jp-aside { position:static; grid-template-columns:minmax(0,1fr); }
}
@media(max-width:1250px) {
  body.pc-product .rp-grid { grid-template-columns:minmax(0,1fr); max-width:var(--pc-prose); }
  body.pc-product .rp-directory { display:none; }
  body.pc-product .rp-mobile-tools { display:flex; position:static; margin-top:24px; gap:12px; }
  body.pc-product .rp-mobile-tools .rp-track-mobile { display:none; }
  body.pc-product .rp-mobile-tools #rp-open-directory { width:auto; }
  body.pc-product .pc-directory-trigger { display:inline-flex; }
}
@media(min-width:1251px) { .pc-directory-trigger { display:none; } }
@media(max-width:68.75rem) {
  body.pc-product[data-product-page=report] .pc-work-area.has-detail { grid-template-columns:minmax(0,1fr); max-width:820px; }
  body.pc-product .pc-work-area.has-detail { grid-template-columns:minmax(0,1fr); }
  body.pc-product .pc-master { position:static; max-height:220px; }
  body.pc-product .pc-master-list { display:flex; overflow:auto; }
  body.pc-product .pc-company-switch,body.pc-product .pc-report-switch { min-width:210px; }
  body.pc-product .pc-master-search { display:none; }
}
@media(max-width:700px) {
  body.pc-product .pc-company-grid { grid-template-columns:minmax(0,1fr); }
  body.pc-product .pc-company-grid .wp-company-row,body.pc-product .pc-change-card { max-width:none; }
  body.pc-product .rp-article,body.pc-product .wp-prose,body.pc-product .sp-paper p { font-size:1rem; }
  body.pc-product .rp-document-title { font-size:1.4375rem; }
  body.pc-product .rp-mobile-tools { position:fixed; margin:0; }
  body.pc-product .rp-mobile-tools .rp-track-mobile { display:block; }
  body.pc-product .pc-directory-trigger { display:none; }
  body.pc-product .sp-aside { grid-template-columns:minmax(0,1fr); }
  body.pc-product .pc-search-dialog,body.pc-product .dv-dialog { max-width:calc(100vw - 20px); max-height:calc(100dvh - 24px - env(safe-area-inset-bottom)); }
  body.pc-product .pc-search-mode { flex-wrap:wrap; }
  body.pc-product .pc-search-mode button { flex:1 1 120px; }
  body.pc-product .pc-search-actions .dv-button { min-width:0; white-space:normal; }
  body.pc-product .dv-dialog { padding:20px; }
  body.pc-product .jp-price { overflow-wrap:anywhere; }
}

/* 文字放大时按内容空间收起目录，按钮仍在正文工具栏。 */
@container product-pane (max-width:42rem) {
  body.pc-product .rp-grid { grid-template-columns:minmax(0,1fr); }
  body.pc-product .rp-directory { display:none; }
  body.pc-product .pc-directory-trigger { display:inline-flex; }
}
/* 侧栏图标与操作名称始终同排。 */
body.pc-product .pc-add-button { white-space:nowrap; flex-wrap:nowrap; }
body.pc-product .pc-search-trigger { font-size:.875rem; }
body.pc-product .pc-search-head input { font-size:1.125rem; }
@media(max-width:700px) {
  body.pc-product .pc-search-trigger { font-size:.8125rem; }
  body.pc-product .pc-search-head input { font-size:1rem; }
}
