/* Shared layout refinements. Keep component colours, states and calculator layouts intact. */
body.wp-theme-qianmiao {
  --site-section-space: clamp(36px, 4.2vw, 64px);
  --site-card-gap: 20px;
  --site-line: #dfe5ec;
  --site-header-height: 73px;
  --site-toolbar-height: 0px;
}
body.wp-theme-qianmiao:not(.phoenix-rail-open) { overflow-x: clip; overflow-y: visible; }
body.wp-theme-qianmiao.phoenix-rail-open { overflow: hidden; }
body.wp-theme-qianmiao.admin-bar { --site-toolbar-height: 32px; }
body.wp-theme-qianmiao.admin-bar [data-phoenix-drawer] {
  top: 32px;
  height: calc(100dvh - 32px);
}
body.wp-theme-qianmiao [data-phoenix-header] { top: var(--site-toolbar-height); }
body.wp-theme-qianmiao :is(.rkc-anchor-nav,.pfm-section-nav) {
  top: calc(var(--site-header-height) + var(--site-toolbar-height));
}
body.wp-theme-qianmiao .rkc-tool-detail .rkc-method-card {
  top: calc(var(--site-header-height) + var(--site-toolbar-height) + 16px);
}
body.wp-theme-qianmiao main :is(.rkc-section,.pfm-section,.qdh-section,[id="calculator"]) {
  scroll-margin-top: calc(var(--site-header-height) + var(--site-toolbar-height) + 72px);
}
body.wp-theme-qianmiao main :is(.rkc-section:not(#calculator),.qdh-section,.pfm-section,
  .pfm-case-archive-list,.pfm-case-archive-method,.section_a94823,.section_f90da2,
  .section_0f5020,.section_5a9f6e,.section_ce9621,.section_6368e8,.section_e53b62) {
  padding-block: var(--site-section-space);
}

/* Stacked editorial filters need a gutter, not two touching card borders. */
.railBox_0f5020 + .railBox_0f5020 { margin-top: var(--site-card-gap,20px); }
body.wp-theme-qianmiao :is(.railBox_0f5020,.contactCard_a94823,.form_a94823,.card_f90da2) {
  border-color: var(--site-line);
}

/* Long addresses must wrap inside a flex/grid child rather than cross its padding. */
.grid_a94823 > *, .contactRow_a94823 > span:not(.cIcon_a94823) { min-width: 0; }
.contactRow_a94823 strong, .links_f90da2 a { overflow-wrap: anywhere; }
.contactRow_a94823 .cIcon_a94823 { flex-shrink: 0; }
.contactRow_a94823 { max-width: 100%; }
.section_a94823 + .section_f90da2 { padding-top: 0; }
.section_f90da2 .head_f90da2 { margin-bottom: 28px; }
.section_f90da2 .block_f90da2 { margin-top: 28px; }
.section_f90da2 .block_f90da2:has(.card_f90da2:only-child) { max-width: 560px; margin-inline: auto; }
.grid_f90da2:has(> .card_f90da2:only-child) { grid-template-columns: minmax(0,1fr); }

/* Avoid a four-line, oversized archive heading squeezing its neighbouring copy. */
.pfm-case-archive-hero h1 { font-size: clamp(32px,4vw,54px); line-height: 1.12; }
.pfm-case-archive-hero { padding-block: var(--site-section-space,56px); }

/* Catalog-style navigation shared by topic, article-center and legacy category rails.
   Keep their existing drawer behavior; do not restyle editorial TOCs or inquiry cards. */
body.wp-theme-qianmiao [data-phoenix-rail] {
  --rail-surface:#fbf7f1;
  --rail-border:#e2e7ed;
  --rail-muted:#667285;
  --rail-ink:#435266;
  --rail-active:#bf4810;
}
body.wp-theme-qianmiao [data-phoenix-rail].is-open { gap:0; }
body.wp-theme-qianmiao [data-phoenix-rail] :is(.railBox_eb0795,.railBox_8f91be,.railBox_0f5020) {
  flex:0 0 auto; padding:0; overflow:hidden; background:var(--rail-surface);
  border:1px solid var(--rail-border); border-radius:12px; box-shadow:none;
}
/* Cards retain their full content height; only the outer drawer scrolls. */
body.wp-theme-qianmiao [data-phoenix-rail] .phoenix-rail-close {
  width:44px; height:44px; top:10px; right:10px; padding:0;
  border:1px solid #e4d9cf; border-radius:50%; background:#fff;
  color:#435266; box-shadow:0 3px 10px rgba(16,35,60,.09);
  transition:background .16s ease,border-color .16s ease,color .16s ease;
}
body.wp-theme-qianmiao [data-phoenix-rail] .phoenix-rail-close svg { width:18px; height:18px; }
body.wp-theme-qianmiao [data-phoenix-rail] .phoenix-rail-close:hover {
  color:#bf4810; border-color:#e5b69a; background:#fff5ee;
}
body.wp-theme-qianmiao [data-phoenix-rail] .phoenix-rail-close:focus-visible {
  outline:2px solid #bf4810; outline-offset:3px;
}
body.wp-theme-qianmiao [data-phoenix-rail] :is(.railBox_eb0795,.railBox_8f91be,.railBox_0f5020) + :is(.railBox_eb0795,.railBox_8f91be,.railBox_0f5020) {
  margin-top:20px;
}
body.wp-theme-qianmiao [data-phoenix-rail] :is(.railTitle_eb0795,.railTitle_8f91be,.railTitle_0f5020) {
  margin:0; padding:21px 20px 10px; background:var(--rail-surface);
  font-family:inherit; font-size:.68rem; font-weight:800; line-height:1.4;
  letter-spacing:.12em; text-transform:uppercase; color:var(--rail-muted);
}
body.wp-theme-qianmiao [data-phoenix-rail] :is(.railBox_eb0795,.railBox_8f91be,.railBox_0f5020)>ul {
  display:grid; gap:0; margin:0; padding:4px 14px 16px; list-style:none;
}
body.wp-theme-qianmiao [data-phoenix-rail] :is(.railLink_eb0795,.railLink_8f91be,.railLink_0f5020) {
  display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center;
  gap:12px; min-height:51px; padding:9px 7px 9px 9px;
  border:0; border-bottom:1px solid rgba(16,35,60,.07); border-radius:0;
  background:transparent; box-shadow:none; color:var(--rail-ink);
  font-family:inherit; font-size:.8rem; font-weight:400; line-height:1.35; text-decoration:none;
}
body.wp-theme-qianmiao [data-phoenix-rail] li:last-child>:is(.railLink_eb0795,.railLink_8f91be,.railLink_0f5020) { border-bottom:0; }
body.wp-theme-qianmiao [data-phoenix-rail] :is(.railLink_eb0795,.railLink_8f91be,.railLink_0f5020):hover { background:transparent; color:var(--rail-active); }
body.wp-theme-qianmiao [data-phoenix-rail] :is(.railLinkActive_eb0795,.railLinkActive_8f91be,.railLinkActive_0f5020) {
  color:var(--rail-active); background:transparent; font-weight:800; box-shadow:none;
}
body.wp-theme-qianmiao [data-phoenix-rail] :is(.railLinkActive_eb0795,.railLinkActive_8f91be,.railLinkActive_0f5020)::before { display:none; content:none; }
body.wp-theme-qianmiao [data-phoenix-rail] :is(.count_eb0795,.count_8f91be,.count_0f5020) {
  padding:0; border:0; border-radius:0; background:transparent; color:var(--rail-muted);
  font-family:inherit; font-size:.68rem; font-weight:inherit; white-space:nowrap;
}
body.wp-theme-qianmiao [data-phoenix-rail] :is(.railLink_eb0795,.railLink_8f91be,.railLink_0f5020):focus-visible {
  outline:2px solid var(--rail-active); outline-offset:-2px;
}
/* Only trim the outer paragraph margins, never the semantic spacing between paragraphs. */
body.wp-theme-qianmiao :is(.rkc-boundary-card,.rkc-method-card,.qdh-card)>p:last-child { margin-bottom: 0; }
body.wp-theme-qianmiao :is(.rkc-boundary-card,.rkc-method-card,.qdh-card)>:first-child { margin-top: 0; }

@media (max-width:960px) {
  body.wp-theme-qianmiao { --site-header-height: 74px; }
}
.phoenix-article-filterbar { display:none; }
/* Compact vertical filter tab: clear of the bottom-right contact control. */
body.wp-theme-qianmiao .phoenix-rail-toggle {
  left:env(safe-area-inset-left,0px); top:55%; bottom:auto;
  transform:translateY(-50%); flex-direction:column; justify-content:center;
  width:44px; min-height:126px; gap:10px; padding:14px 10px;
  border:1px solid rgba(255,255,255,.2); border-left:0; border-radius:0 14px 14px 0;
  background:linear-gradient(155deg,#203b59,#10233c);
  color:#fff; box-shadow:4px 5px 18px rgba(16,35,60,.2);
  font-size:11px; font-weight:600; letter-spacing:.06em;
  transition:background .18s ease,box-shadow .18s ease,opacity .18s ease;
}
body.wp-theme-qianmiao .phoenix-rail-toggle>span {
  writing-mode:vertical-rl; text-orientation:upright; line-height:1.1;
}
body.wp-theme-qianmiao .phoenix-rail-toggle>svg { width:17px; height:17px; flex-shrink:0; color:#ffc297; }
body.wp-theme-qianmiao .phoenix-rail-toggle:hover {
  transform:translateY(-50%); background:linear-gradient(155deg,#294966,#18314d);
  box-shadow:4px 6px 20px rgba(16,35,60,.27);
}
body.wp-theme-qianmiao .phoenix-rail-toggle:focus-visible { outline-offset:3px; }
@media (max-width:860px) {
  .phoenix-article-filterbar { display:flex; align-items:center; flex-wrap:wrap; gap:10px 14px; margin:0 0 20px; }
  .phoenix-article-filter-button { display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:44px; padding:10px 16px; border:1px solid #dce3eb; border-radius:9px; background:#fbf7f1; color:#10233c; cursor:pointer; }
  .phoenix-article-filter-button { font-family:inherit; font-size:13px; font-weight:600; line-height:1.4; }
  .phoenix-article-filter-button:hover { border-color:#bf4810; color:#bf4810; }
  .phoenix-article-filter-button:focus-visible { outline:2px solid #bf4810; outline-offset:3px; }
  .phoenix-article-filterbar>span { color:#667285; font-size:12px; line-height:1.5; }
}
@media (min-width:601px) and (max-width:782px) {
  body.wp-theme-qianmiao.admin-bar { --site-toolbar-height: 46px; }
}
@media (max-width:782px) {
  body.wp-theme-qianmiao.admin-bar [data-phoenix-drawer] {
    top: 46px;
    height: calc(100dvh - 46px);
  }
}
@media (max-width:600px) {
  /* WordPress makes its toolbar non-sticky below this breakpoint. */
  body.wp-theme-qianmiao.admin-bar { --site-toolbar-height: 0px; }
  body.wp-theme-qianmiao { --site-section-space: 36px; --site-card-gap: 16px; }
  .section_f90da2 .head_f90da2, .section_f90da2 .block_f90da2 { margin-bottom: 20px; }
}
/* Topic product rows: reserve the full label and arrow width for the action. */
.order_8f91be {
  white-space: nowrap;
  min-width: max-content;
}
.order_8f91be svg { flex-shrink: 0; }
@media (min-width: 561px) {
  .row_8f91be {
    grid-template-columns: minmax(64px, .45fr) minmax(0, 1.5fr) minmax(96px, .55fr) minmax(9rem, max-content);
  }
}
