@import './care-reading.css?v=visual-v2-20260928';
/* Shared six-page visual system. The existing U11 UI remains the off-mode fallback.
   排版尺寸统一走 care-reading.css?v=visual-v2-20260928 的三档变量（--care-fs-* / --care-space / --care-gap），
   不再散落固定 9/10/11/12/13/14px；正文参考 16/18/22px，默认“标准”。 */
/* 根主题色与字体族唯一定义见 care-tokens.css?v=visual-v2-20260928（一），此处不重复。*/
/* 共享页面壳：Flex 列（顶栏 / 可滚动 main / 流式底栏），100dvh 为基础，
   软键盘打开时由 care-ui.js?v=visual-v2-20260928 用 visualViewport 实际高度覆盖 --care-app-height。
   六页共用同一套空间分配，不再各页扣除固定常数或补偿内边距。 */
html[data-care-ui="active"] body{margin:0;color:var(--care-ink);background:var(--care-page-texture),var(--care-paper);font-family:var(--care-font-body,"Microsoft YaHei","PingFang SC",sans-serif);line-height:var(--care-lh-body);display:flex;flex-direction:column;height:100vh;height:100dvh;height:var(--care-app-height,100dvh);min-height:0;overflow:hidden;transform:translateY(var(--care-app-top,0px));padding:0 env(safe-area-inset-right) 0 env(safe-area-inset-left)}
html[data-care-ui="active"].care-chat-viewport{height:100%;overflow:hidden;overscroll-behavior:none}
html[data-care-ui="active"] body.care-chat-page{position:fixed;top:0;left:0;width:100%;overscroll-behavior:none}
html[data-care-ui="active"] body.care-chat-page.chat-keyboard-open .care-bottom-nav{display:none}
html[data-care-ui="active"] *{box-sizing:border-box}
html[data-care-ui="active"] [hidden]{display:none!important}
html[data-care-ui="active"] a{color:inherit}
html[data-care-ui="active"] h1,html[data-care-ui="active"] h2,html[data-care-ui="active"] h3{font-family:var(--care-font-head);font-weight:var(--care-weight-head);color:var(--care-ink);letter-spacing:.03em}
html[data-care-ui="active"] h1{font-size:var(--care-fs-h1);line-height:var(--care-lh-title);margin:calc(12px * var(--care-spacing-scale, .5)) 0}
html[data-care-ui="active"] h2{font-size:var(--care-fs-h2);line-height:var(--care-lh-title);margin:calc(12px * var(--care-spacing-scale, .5)) 0}
html[data-care-ui="active"] h3{font-size:var(--care-fs-h3);line-height:var(--care-lh-title);margin:calc(8px * var(--care-spacing-scale, .5)) 0}
html[data-care-ui="active"] p{overflow-wrap:anywhere}
html[data-care-ui="active"] .header,html[data-care-ui="active"] .topbar,html[data-care-ui="active"] .care-shell-nav{display:none}
html[data-care-ui="active"] main,html[data-care-ui="active"] main.layout{display:block;flex:1 1 auto;min-height:0;min-width:0;width:100%;max-width:var(--care-page-max,1080px);margin:0 auto;padding:0 var(--care-page-pad-x,calc(28px * var(--care-spacing-scale, .5))) var(--care-page-pad-bottom,calc(40px * var(--care-spacing-scale, .5)));overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;font-size:var(--care-fs-body)}
html[data-care-ui="active"] main>.intro,html[data-care-ui="active"] main>aside.intro,html[data-care-ui="active"] main>.back,html[data-care-ui="active"] main>h1,html[data-care-ui="active"] main>h1+p{display:none}
/* 头区首行：品牌 + 账号 + 阅读模式控制。已并入 .care-hero（不再单独占一条顶栏），
   故自身不设外边距/内边距，由头区统一给。z-index 仍需高于底栏(80)，
   避免矮视口下展开的 Aa 菜单被压住、最下面那档点不到。 */
.care-topline{position:relative;z-index:90;display:flex;align-items:center;gap:calc(10px * var(--care-spacing-scale, .5));flex:none;margin:0 0 clamp(calc(4px * var(--care-spacing-scale, .5)),calc(1.6vw * var(--care-spacing-scale, .5)),calc(12px * var(--care-spacing-scale, .5)));font-size:var(--care-fs-xs);color:var(--care-muted)}
.care-topline a{text-decoration:none}.care-wordmark{font-family:var(--care-font-head);font-size:var(--care-fs-h3);font-weight:var(--care-weight-head);letter-spacing:.12em}
.care-topline-account{margin-left:auto;white-space:nowrap}
/* 头区：品牌行 + 标题 + 短副题 + 手写 note 共用茶席背景，完全由内容与内边距定高
   （无 290/238/205px 固定 min-height）。不设 overflow:hidden，避免裁掉展开的 Aa 菜单；
   背景图仍由 border-radius 自身裁圆角。上下内边距收窄，头区不再等于多个独立区块。 */
/* 非聊天页共用页头：2026-09-26按负责人要求恢复菊花茶席原图，左侧留白给品牌与标题。
   页头图走 --care-hero-image；方案内容仍复用既有茶席素材。 */
.care-hero{position:relative;isolation:isolate;border-radius:26px;margin:0 0 var(--care-block);background-color:var(--care-hero-bg);background-image:var(--care-hero-image);background-position:var(--care-hero-position);background-size:var(--care-hero-size);background-repeat:no-repeat;padding:clamp(calc(12px * var(--care-spacing-scale, .5)),calc(2.6vw * var(--care-spacing-scale, .5)),calc(20px * var(--care-spacing-scale, .5))) clamp(calc(18px * var(--care-spacing-scale, .5)),calc(4.4vw * var(--care-spacing-scale, .5)),calc(30px * var(--care-spacing-scale, .5))) clamp(calc(16px * var(--care-spacing-scale, .5)),calc(3.6vw * var(--care-spacing-scale, .5)),calc(28px * var(--care-spacing-scale, .5)))}
/* 两层柔光：顶部竖向一层保证品牌行/账号/Aa 在图上可读，横向一层让左侧文案站得住，
   画面中部与右侧仍直接可见茶席原图。颜色/渐变集中在 care-tokens.css?v=visual-v2-20260928（六）。 */
.care-hero:after{content:"";position:absolute;z-index:-1;inset:0;background:var(--care-hero-veil-top),var(--care-hero-veil-left)}
.care-hero h1{margin:0 0 clamp(calc(4px * var(--care-spacing-scale, .5)),calc(1.4vw * var(--care-spacing-scale, .5)),calc(10px * var(--care-spacing-scale, .5)));line-height:var(--care-lh-title);max-width:76%}
.care-hero p{max-width:58%;color:var(--care-muted);font-size:var(--care-fs-body-1);line-height:var(--care-lh-body-1);margin:0}
/* note 用 small 档而非 h3：既贴近上线版移动端 15px 的手写注脚，也避免在窄屏
   只挤出一个字换行（宽度保持 58% 以让出茶席画面）。 */
.care-hero .care-hero-note{color:var(--care-green);font-family:var(--care-font-body);font-size:var(--care-fs-body-2);line-height:var(--care-lh-small);margin-top:clamp(calc(8px * var(--care-spacing-scale, .5)),calc(2.2vw * var(--care-spacing-scale, .5)),calc(18px * var(--care-spacing-scale, .5)));transform:rotate(-3deg);width:max-content;max-width:58%;border-bottom:1px solid #8b9d78;padding-bottom:calc(5px * var(--care-spacing-scale, .5))}
.care-index-page .care-hero{padding-top:calc(18px * var(--care-spacing-scale, .5));padding-bottom:calc(12px * var(--care-spacing-scale, .5));margin-bottom:0}
.care-index-page .care-topline{position:absolute;top:15px;right:18px;margin:0}
.care-index-page .care-wordmark{display:none}
.care-index-page .care-hero p{max-width:82%}
.care-index-page .care-hero .care-hero-note{max-width:82%;margin-top:calc(7px * var(--care-spacing-scale, .5))}
/* 首页交互演示横条只在 care UI 下隐藏这一条（其余订单错误/同意告知在别的节点，不受影响）。 */
html[data-care-ui="active"] .demo-strip{display:none}
/* 小瓦入口：非聊天页的可拖动浮标。尺寸独立于正文字号/阅读档位；left/top 由
   care-launcher.js 计算并约束在底栏以上的可见区域内。 */
.care-launcher{position:fixed;z-index:70;display:flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:50%;background:linear-gradient(140deg,#f6f7ea,#e7ebd7);border:1px solid #fff;box-shadow:0 6px 20px #4b341933;text-decoration:none;touch-action:none;user-select:none;-webkit-user-select:none;cursor:pointer}
.care-launcher img{width:38px;height:42px;object-fit:contain;pointer-events:none}
.care-launcher:active{filter:brightness(.97)}
.care-chat-page .care-launcher{display:none}
/* 通用按钮外观不含阅读档位选项：.care-reading-option 自持字号/内边距/行高，
   否则会被这条的 min-height:42px、padding:calc(9px * var(--care-spacing-scale, .5)) calc(15px * var(--care-spacing-scale, .5)) 盖掉，大字档下相邻两项挤在一起。 */
.care-btn,html[data-care-ui="active"] button:not(.care-reading-option):not(.text-button):not(.field-button):not(.icon-button):not(.dialog-close):not(.xiaowa-close):not(.xiaowa-launcher):not(.xiaowa-greeting-open):not(.xiaowa-greeting-close):not(.xiaowa-image-pick):not(.xiaowa-image-shoot):not(.xiaowa-image-gallery):not(.xiaowa-image-cancel):not(.xiaowa-image-open):not(.xiaowa-return):not(.xiaowa-term-close):not(.xiaowa-term-ask){border:var(--care-border-width) solid var(--care-line);border-radius:var(--care-btn-radius,12px);background:var(--care-btn-bg);color:var(--care-ink);font:inherit;min-height:var(--care-btn-min-h,42px);padding:var(--care-btn-pad,calc(9px * var(--care-spacing-scale, .5)) calc(15px * var(--care-spacing-scale, .5)));cursor:pointer}
.care-btn{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;gap:calc(7px * var(--care-spacing-scale, .5));font-size:var(--care-fs-sm);white-space:nowrap}.care-btn.primary,html[data-care-ui="active"] button.primary,html[data-care-ui="active"] button[type=submit]{background:var(--care-green)!important;color:#fffef9!important;border-color:var(--care-green)!important}
html[data-care-ui="active"] button:disabled{opacity:.55;cursor:wait}
html[data-care-ui="active"] :focus-visible{outline:3px solid #a88c52;outline-offset:3px}
.care-section-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:calc(12px * var(--care-spacing-scale, .5));min-width:0;margin:var(--care-block) 0 calc(12px * var(--care-spacing-scale, .5))}.care-section-head h2{margin:0!important}.care-section-head a{font-size:var(--care-fs-sm);text-decoration:none;color:var(--care-muted)}
.care-panel,html[data-care-ui="active"] .card,html[data-care-ui="active"] .claim-panel,html[data-care-ui="active"] .support-banner{background:var(--care-panel-surface);border-width:var(--care-panel-border-width) var(--care-panel-inline-width);border-style:solid;border-color:var(--care-card-border);border-radius:var(--care-panel-radius);padding:var(--care-space) var(--care-card-pad-x,clamp(calc(16px * var(--care-spacing-scale, .5)),calc(3.2vw * var(--care-spacing-scale, .5)),calc(22px * var(--care-spacing-scale, .5))));box-shadow:var(--care-card-shadow,0 7px 25px #5f442b07);margin:var(--care-gap) 0;overflow:hidden}
/* 订单页人工服务卡只有一个动作，沿用按钮并让整个卡面成为它的点击区域。 */
html[data-care-ui="active"] .care-orders-page .support-banner{cursor:pointer}
html[data-care-ui="active"] .care-orders-page .support-banner:focus-within{outline:2px solid var(--care-green);outline-offset:2px}
.care-empty{padding:var(--care-block) calc(20px * var(--care-spacing-scale, .5));background:#fffdf5b8;border:1px dashed #dcd4c1;border-radius:18px;font-size:var(--care-fs-body);color:var(--care-muted)}
.care-error{color:#9a4b34!important}
/* 空状态不再占位（真实错误仍显示）；首页把状态与重试包在 .care-home-status 里，
   没有内容时整块隐藏，避免首屏出现一条空白带。 */
.care-status{color:var(--care-muted);font-size:var(--care-fs-xs);margin:0}
.care-status:empty{display:none}
.care-home-status{display:flex;align-items:center;flex-wrap:wrap;gap:calc(10px * var(--care-spacing-scale, .5));margin:0 0 var(--care-gap)}
.care-home-status[hidden]{display:none}
.care-home-content>.care-section-head:first-of-type{margin-top:0}
.care-pills{display:flex;flex-wrap:wrap;gap:calc(8px * var(--care-spacing-scale, .5));margin:calc(14px * var(--care-spacing-scale, .5)) 0}.care-pill{display:inline-flex;background:var(--care-pill-bg);color:var(--care-pill-fg);border-radius:var(--care-pill-radius,100px);font-size:var(--care-fs-xs);line-height:var(--care-lh-small);padding:var(--care-pill-pad,calc(6px * var(--care-spacing-scale, .5)) calc(12px * var(--care-spacing-scale, .5)));align-items:center}.care-pill:nth-child(2n){background:var(--care-pill-alt-bg);color:var(--care-pill-alt-fg)}
.care-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--care-gap)}
/* 首页养护：标准三列；大字左图右文。状态与图片均来自既有接口。 */
.care-home-content .care-grid{gap:calc(8px * var(--care-spacing-scale, .5))}
.care-home-content .care-mini{display:flex;flex-direction:column;min-width:0;text-decoration:none;padding:calc(7px * var(--care-spacing-scale, .5)) calc(7px * var(--care-spacing-scale, .5)) calc(12px * var(--care-spacing-scale, .5));background:var(--care-card);border:0;border-radius:16px}
.care-home-content .care-mini img,.care-home-content .care-mini .care-art-neutral{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:cover;border-radius:11px}
.care-home-content .care-mini-body{min-width:0;padding:var(--care-card-content-pad-y) var(--care-card-content-pad-x)}
.care-home-content .care-mini h3{font-family:var(--care-font-head);font-weight:var(--care-weight-head);font-size:var(--care-fs-h3)!important;line-height:var(--care-lh-title);margin:calc(8px * var(--care-spacing-scale, .5)) 0 calc(6px * var(--care-spacing-scale, .5))!important;overflow-wrap:anywhere;color:var(--care-ink)}
.care-home-content .care-mini .care-pill{font-size:var(--care-fs-xs);line-height:1.4;padding:calc(4px * var(--care-spacing-scale, .5)) calc(10px * var(--care-spacing-scale, .5));max-width:100%;box-sizing:border-box;background:#eee7db;color:var(--care-muted);white-space:normal}
.care-home-content .care-mini .care-pill[data-state="using"]{background:#dce9cf;color:#38633b}
.care-home-content .care-mini .care-pill[data-state="paused"]{background:#ffe3aa;color:#73501f}
.care-home-content .care-mini .care-pill[data-state="finished"]{background:#e5e3e0;color:#62605d}
.care-mini-arrow{display:none}
html[data-care-reading="large"] .care-home-content .care-grid{grid-template-columns:minmax(0,1fr);gap:calc(10px * var(--care-spacing-scale, .5))}
html[data-care-reading="large"] .care-home-content .care-mini{display:grid;grid-template-columns:36% minmax(0,1fr) 32px;gap:calc(14px * var(--care-spacing-scale, .5));align-items:center;padding:calc(10px * var(--care-spacing-scale, .5));border-radius:18px}
html[data-care-reading="large"] .care-home-content .care-mini-body{padding:0}
html[data-care-reading="large"] .care-home-content .care-mini h3{margin:0 0 calc(10px * var(--care-spacing-scale, .5))!important;font-size:var(--care-fs-h2)!important}
html[data-care-reading="large"] .care-home-content .care-mini .care-pill{font-size:var(--care-fs-sm);padding:calc(5px * var(--care-spacing-scale, .5)) calc(12px * var(--care-spacing-scale, .5))}
html[data-care-reading="large"] .care-home-content .care-mini-arrow{display:grid;place-items:center;width:32px;height:32px;background:var(--care-mini-surface);border-radius:50%;font-size:28px;color:var(--care-ink)}
.care-art-neutral{display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse,#e3ead3,transparent 70%);color:#7a9561;font-size:clamp(2.2rem,7vw,3.25rem);user-select:none}
/* 方案内容卡（首页 .care-reference、方案页 .care-plan-card）统一“暖茶 + 浅绿”底与中等深度边框，
   让它们明显独立于页头；普通卡片维持原浅色，不整体加重。 */
.care-reference{display:grid;grid-template-columns:1.3fr 1fr;gap:calc(22px * var(--care-spacing-scale, .5));background:var(--care-plan-surface);border-radius:22px;overflow:hidden;border:var(--care-tile-border-width) solid var(--care-plan-border)}.care-reference-copy{padding:clamp(calc(16px * var(--care-spacing-scale, .5)),calc(3.2vw * var(--care-spacing-scale, .5)),calc(24px * var(--care-spacing-scale, .5)))}.care-reference h3{font-size:var(--care-fs-h3)!important}.care-reference p{font-size:var(--care-fs-body);color:var(--care-muted)}.care-reference-art{min-height:var(--care-art-min);background:url('./assets/care-tea-hero-1280w-2f21f2ca89c695ff.webp') 80% 75%/cover,url('./assets/care-tea-hero.png') 80% 75%/cover}
.care-bottom-nav{position:relative;z-index:80;flex:none;width:100%;max-width:var(--care-page-max,1080px);margin:0 auto;padding:calc(6px * var(--care-spacing-scale, .5)) calc(12px * var(--care-spacing-scale, .5)) max(calc(8px * var(--care-spacing-scale, .5)),env(safe-area-inset-bottom));display:grid;grid-template-columns:repeat(5,minmax(0,1fr));background:var(--care-nav-bg);border:0;border-top:var(--care-border-width) solid var(--care-nav-border);border-radius:var(--care-panel-radius);box-shadow:var(--care-nav-shadow);backdrop-filter:blur(12px)}
.care-bottom-nav a{display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:var(--care-fs-xs);font-weight:600;gap:calc(3px * var(--care-spacing-scale, .5));min-width:0;white-space:nowrap;text-decoration:none;color:var(--care-muted)!important}.care-bottom-nav svg{width:24px;height:24px;stroke:currentColor;stroke-width:var(--care-icon-stroke);fill:none;stroke-linecap:round;stroke-linejoin:round}.care-bottom-nav a[aria-current=page]{color:var(--care-green)!important;font-weight:bold}.care-bottom-nav .care-nav-chat svg{width:32px;height:32px;padding:0;background:var(--care-green) url('./assets/care-xiaowa-256w-90f92c150f6569d6.webp') center/28px 32px no-repeat;color:transparent;stroke:transparent;border-radius:50%;box-shadow:none;margin-top:0}
html[data-care-ui="active"] .footer{flex:none;width:100%;max-width:var(--care-page-max,1080px);margin:0 auto;padding:calc(25px * var(--care-spacing-scale, .5)) calc(28px * var(--care-spacing-scale, .5));border:0;font-size:var(--care-fs-xs);color:var(--care-muted)}
html[data-care-ui="active"] .footer small,html[data-care-ui="active"] #assistant-entry{display:none}
html[data-care-ui="active"] .layout .content{min-width:0}.care-profile-note{font-size:var(--care-fs-xs);color:var(--care-muted)}
/* 首页档案摘要：浅米白圆角卡（圆角 12-16px、不加重阴影），整卡 cover 米白山景背景；
   右树叶由 :after 伪元素叠加 caret-botanical.svg，背景不出现颜色分界。只作用于首页（care-index-page），
   不污染养护页 .care-profile-summary 与其他 .care-panel。*/
.care-index-page .care-home-profile{position:relative;isolation:isolate;margin:var(--care-gap) 0 0;padding:calc(12px * var(--care-spacing-scale, .5)) calc(14px * var(--care-spacing-scale, .5)) calc(14px * var(--care-spacing-scale, .5));overflow:hidden;border-radius:14px;background-color:#faf3e4;background-image:url('./assets/care-universal-hero-1280w-50185d0cb144fc57.webp'),url('./assets/care-universal-hero.png');background-repeat:no-repeat;background-position:right center;background-size:cover}
.care-index-page .care-home-profile:after{content:"";position:absolute;z-index:0;right:0;bottom:-10px;width:118px;height:118px;background:var(--care-botanical-image) right bottom/contain no-repeat;opacity:.85;pointer-events:none}
.care-index-page .care-home-profile>*{position:relative;z-index:1}
.care-index-page .care-home-profile-head{display:flex;align-items:center;gap:calc(8px * var(--care-spacing-scale, .5));min-width:0;margin:0 0 calc(4px * var(--care-spacing-scale, .5))}
.care-index-page .care-home-profile-head svg.care-home-profile-folder{width:22px;height:22px;flex:none;fill:none;stroke:#a45b28;stroke-width:1.55;stroke-linejoin:round;stroke-linecap:round}
.care-index-page .care-home-profile-head svg.care-home-profile-folder path{stroke:#a45b28;fill:none}
.care-index-page .care-home-profile-head h2{margin:0!important;font:var(--care-weight-head) var(--care-fs-h3)/var(--care-lh-title) var(--care-font-head);color:#7a4a24;letter-spacing:.02em;min-width:0;overflow-wrap:anywhere}
.care-index-page .care-home-profile-more{margin-left:auto;font:var(--care-weight-body) var(--care-fs-xs)/var(--care-lh-small) var(--care-font-body);color:#7a4a24;text-decoration:none;white-space:nowrap;padding:calc(4px * var(--care-spacing-scale, .5)) 0}
.care-index-page .care-home-profile-copy{margin:0 0 calc(10px * var(--care-spacing-scale, .5));font:var(--care-weight-body) var(--care-fs-body-2)/var(--care-lh-body-2) var(--care-font-body);color:#5e4524;max-width:88%}
.care-index-page .care-home-profile-pills{display:flex;flex-wrap:wrap;gap:calc(6px * var(--care-spacing-scale, .5));margin:0 0 calc(6px * var(--care-spacing-scale, .5))}
.care-index-page .care-home-profile-pill{display:inline-flex;align-items:center;gap:calc(5px * var(--care-spacing-scale, .5));min-width:0;max-width:100%;padding:calc(4px * var(--care-spacing-scale, .5)) calc(10px * var(--care-spacing-scale, .5));border-radius:12px;font:var(--care-weight-body) var(--care-fs-xs)/var(--care-lh-small) var(--care-font-body);white-space:normal;overflow-wrap:anywhere;border:1px solid transparent}
.care-index-page .care-home-profile-pill svg{width:14px;height:14px;flex:none;fill:none;stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round}
.care-index-page .care-home-profile-pill .care-home-profile-pill-text{min-width:0;overflow-wrap:anywhere}
.care-index-page .care-home-profile-pill.real{background:#eaf1e0;color:#3b5934;border-color:#d6e0c7}
.care-index-page .care-home-profile-pill.real svg{stroke:#4a6b3d;color:#4a6b3d}
.care-index-page .care-home-profile-pill.real:nth-child(2n){background:#efe4cb;color:#6b4a25;border-color:#e0d2af}
.care-index-page .care-home-profile-pill.real:nth-child(2n) svg{stroke:#8a5a34;color:#8a5a34}
.care-index-page .care-home-profile-pill.placeholder{background:#ece8df;color:#8a8479;border-color:#ddd6c8}
.care-index-page .care-home-profile-pill.placeholder svg{stroke:#a59e90;color:#a59e90}
.care-index-page .care-home-profile-note{margin:calc(6px * var(--care-spacing-scale, .5)) 0 0;font:var(--care-weight-body) var(--care-fs-xs)/var(--care-lh-body-2) var(--care-font-body);color:#6b5d44}
html[data-care-ui="active"] #sections{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--care-gap)}
html[data-care-ui="active"] #sections>.card{margin:0;padding:var(--care-space) var(--care-card-pad-x,clamp(calc(16px * var(--care-spacing-scale, .5)),calc(3.2vw * var(--care-spacing-scale, .5)),calc(22px * var(--care-spacing-scale, .5))))}.field-button{min-width:0}html[data-care-ui="active"] .field-button{border-bottom:1px solid #ece4d4;padding:calc(15px * var(--care-spacing-scale, .5)) 0;gap:calc(15px * var(--care-spacing-scale, .5))}.field-value{overflow-wrap:anywhere}
html[data-care-ui="active"] #items{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:calc(16px * var(--care-spacing-scale, .5))}
html[data-care-ui="active"] #items>.card{padding:var(--care-card-content-pad-y) var(--care-card-content-pad-x);margin:0;min-width:0;background:var(--care-item-surface)}
.care-item-art{width:100%;height:var(--care-mini-art);object-fit:contain}.care-item-card h2{font-size:var(--care-fs-h3)!important}.care-item-card>p{font-size:var(--care-fs-xs);color:var(--care-muted)}.care-item-card .actions{gap:calc(7px * var(--care-spacing-scale, .5));margin-top:calc(14px * var(--care-spacing-scale, .5))}.care-item-card .actions button{font-size:var(--care-fs-xs)!important;padding:calc(7px * var(--care-spacing-scale, .5)) calc(10px * var(--care-spacing-scale, .5))!important;min-height:38px!important;flex:1 1 auto}.care-item-card .actions button:first-child{background:var(--care-selected-bg)!important;color:var(--care-selected-fg)!important}
.care-filter{display:flex;gap:calc(8px * var(--care-spacing-scale, .5));flex-wrap:wrap;margin:calc(14px * var(--care-spacing-scale, .5)) 0}.care-filter button[aria-pressed=true]{background:var(--care-selected-bg)!important;color:var(--care-selected-fg)!important}
html[data-care-ui="active"] .actions{display:flex;align-items:center;flex-wrap:wrap;gap:calc(9px * var(--care-spacing-scale, .5));margin:calc(15px * var(--care-spacing-scale, .5)) 0}.actions a{font-size:var(--care-fs-sm)}
html[data-care-ui="active"] #status{font-size:var(--care-fs-xs);color:var(--care-muted);margin:calc(12px * var(--care-spacing-scale, .5)) 0 calc(18px * var(--care-spacing-scale, .5))}
.care-detail-image{width:180px;height:var(--care-art-min);object-fit:contain}.care-herb-heading{display:flex;align-items:center;justify-content:space-between;gap:calc(15px * var(--care-spacing-scale, .5))}.care-herb-heading h2{font-size:var(--care-fs-h1)!important}
html[data-care-ui="active"] #search{display:flex;gap:calc(8px * var(--care-spacing-scale, .5));align-items:center;flex-wrap:wrap;padding:calc(14px * var(--care-spacing-scale, .5)) calc(18px * var(--care-spacing-scale, .5));background:var(--care-card);border:1px solid var(--care-line);border-radius:16px}.care-search-label{font-size:var(--care-fs-sm)}html[data-care-ui="active"] #query{min-width:0;flex:1;width:120px;border:0;background:transparent;color:inherit}
.care-source{font-size:var(--care-fs-xs)!important;color:var(--care-muted);overflow-wrap:anywhere}.care-disclosure{padding:calc(16px * var(--care-spacing-scale, .5)) 0;border-top:1px solid var(--care-line)}.care-disclosure summary{cursor:pointer;font-weight:bold;color:var(--care-ink)}.care-disclosure p{font-size:var(--care-fs-body);line-height:var(--care-lh-body)}
.care-ingredients{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:calc(10px * var(--care-spacing-scale, .5));margin:calc(16px * var(--care-spacing-scale, .5)) 0}.care-ingredient{min-width:0;background:var(--care-mini-surface);border-radius:16px;padding:calc(13px * var(--care-spacing-scale, .5));text-align:center}.care-ingredient img{height:clamp(3.5rem,9vw,5.6rem);width:100%;object-fit:contain}.care-ingredient .care-art-neutral{height:clamp(3.5rem,9vw,5.6rem)}.care-ingredient p{font-size:var(--care-fs-xs)}.care-ingredient a{font-size:var(--care-fs-sm);font-weight:bold;text-decoration:none}
.care-plan-copy{font-size:var(--care-fs-body);color:var(--care-muted);line-height:var(--care-lh-body)}.care-plan-copy h4{font-size:var(--care-fs-sm);color:var(--care-ink);margin:calc(20px * var(--care-spacing-scale, .5)) 0 calc(6px * var(--care-spacing-scale, .5))}.care-plan-copy p{margin:calc(4px * var(--care-spacing-scale, .5)) 0 calc(13px * var(--care-spacing-scale, .5))}
/* 动态 dialog（档案编辑 / 养护条目 / 记录 / 本草加入）：大字档下可滚动，不截断内容。 */
html[data-care-ui="active"] dialog:not(.xiaowa-dialog):not(.xiaowa-term-dialog){border:1px solid var(--care-line);background:var(--care-card);color:var(--care-ink);border-radius:var(--care-dialog-radius,22px);width:var(--care-dialog-width,min(520px,calc(100% - 28px)));max-width:100%;max-height:var(--care-dialog-max-h,85dvh);overflow:auto;overscroll-behavior:contain;padding:var(--care-space) clamp(calc(16px * var(--care-spacing-scale, .5)),calc(3.4vw * var(--care-spacing-scale, .5)),calc(24px * var(--care-spacing-scale, .5)))}
html[data-care-ui="active"] dialog:not(.xiaowa-dialog):not(.xiaowa-term-dialog) h2{font-size:var(--care-fs-h2);line-height:var(--care-lh-title);margin:0 0 calc(10px * var(--care-spacing-scale, .5))}
html[data-care-ui="active"] dialog:not(.xiaowa-dialog):not(.xiaowa-term-dialog)>p,html[data-care-ui="active"] dialog:not(.xiaowa-dialog):not(.xiaowa-term-dialog) .hint{font-size:var(--care-fs-body);line-height:var(--care-lh-body)}
html[data-care-ui="active"] dialog:not(.xiaowa-dialog):not(.xiaowa-term-dialog) label{font-size:var(--care-fs-sm)}
html[data-care-ui="active"] .dialog-actions{gap:var(--care-gap);flex-wrap:wrap;margin-top:var(--care-space)}
/* 图片查看器：全屏 contain 展示已发送缩略图的放大图。上面的 `dialog:not(.xiaowa-dialog):not(.xiaowa-term-dialog)`
   通用卡片规则会命中本 dialog，这里用同优先级、写在后面的选择器整段覆盖，恢复全屏浮层。 */
html[data-care-ui="active"] dialog.xiaowa-image-viewer{position:fixed;inset:0;width:100%;max-width:100%;height:100%;max-height:100%;margin:0;padding:calc(12px * var(--care-spacing-scale, .5));border:0;border-radius:0;background:transparent;overflow:hidden;box-shadow:none;box-sizing:border-box}
html[data-care-ui="active"] dialog.xiaowa-image-viewer[open]{display:flex;align-items:center;justify-content:center}
html[data-care-ui="active"] dialog.xiaowa-image-viewer::backdrop{background:#0f1f18d9}
html[data-care-ui="active"] .xiaowa-image-viewer-img{display:block;width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;cursor:zoom-out}
/* 档案页的字段与提示：此前继承浏览器 16px，现跟随三档；.care-item-card>.care-record-info 同理。 */
html[data-care-ui="active"] .field-label{font-size:var(--care-fs-sm)}
html[data-care-ui="active"] .field-value{font-size:var(--care-fs-body)}
/* 档案字段里的结构化选项：逐项一个标签（复用公共 .care-pills / .care-pill 约定）。
   容器只负责换行，不再给整行画一个胶囊背景；标签宽度随内容（auto + max-width:100%），
   长标签内部折行、不被截断，字号继承 .field-value（跟随三档正文档位，不回退小字号）。 */
html[data-care-ui="active"] .field-value.care-pills{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:flex-end;gap:calc(6px * var(--care-spacing-scale, .5));margin:0;min-width:0;flex:0 1 auto}
html[data-care-ui="active"] .field-value.care-pills .care-pill{width:auto;max-width:100%;white-space:normal;overflow-wrap:anywhere;font-size:inherit;line-height:1.5;padding:calc(4px * var(--care-spacing-scale, .5)) calc(11px * var(--care-spacing-scale, .5));text-align:left}
html[data-care-ui="active"] .hint,html[data-care-ui="active"] .memory{font-size:var(--care-fs-sm);color:var(--care-muted);line-height:var(--care-lh-body)}
html[data-care-ui="active"] .card-heading{flex-wrap:wrap;min-width:0}
html[data-care-ui="active"] .card-heading h2{font-size:var(--care-fs-h2);min-width:0;overflow-wrap:anywhere}
html[data-care-ui="active"] .card-heading .card-symbol{flex:none}
html[data-care-ui="active"] .care-disclosure summary{font-size:var(--care-fs-body)}
html[data-care-ui="active"] .care-plan-card .care-pill{font-size:var(--care-fs-xs)}
/* 方案名称统一暖橙棕色，三档阅读模式沿用同一语义色。 */
html[data-care-ui="active"] .care-reference h3,html[data-care-ui="active"] main.care-shell .care-plan-card>h3,html[data-care-ui="active"] #mine>.card>h3,html[data-care-ui="active"] #recommendations>.card>h3,html[data-care-ui="active"] .care-home-content>a.care-panel>h3{color:var(--care-plan-title)}
/* 方案内容卡（方案页 .care-plan-card、首页 .care-reference）用同一套“暖茶 + 浅绿”卡面与
   中等深度边框，与页头明显区分；其余普通卡片保持原浅色，不整体加重。 */
/* 方案页卡片由 care-shell.css?v=visual-v2-20260928 的 main.care-shell article.card 上过底（paper 底 + 18px 圆角），
   这里用同层级更具体的选择器把它拉回“暖茶 + 浅绿 + 中深边框”。 */
html[data-care-ui="active"] .care-plan-card,html[data-care-ui="active"] main.care-shell article.care-plan-card{background:var(--care-plan-card-surface);border:var(--care-tile-border-width) solid var(--care-plan-border);border-radius:20px;margin:calc(12px * var(--care-spacing-scale, .5)) 0;padding:var(--care-space) clamp(calc(14px * var(--care-spacing-scale, .5)),calc(3.4vw * var(--care-spacing-scale, .5)),calc(20px * var(--care-spacing-scale, .5)))}
/* 方案页工具区与空状态：空的 #status 不再占位（有 loading/错误文本时照常显示），
   标题与列表间距收紧，避免“刷新”与“可选方案”之间堆出空白带。 */
html[data-care-ui="active"] #status:empty{display:none}
/* “刷新”已并入“可选方案”标题行（care-ui.js?v=visual-v2-20260928），原来只放按钮的 .actions 壳不再渲染，
   故不再为它单独设间距；标题行自身的 margin:var(--care-block) 与头区下边距相邻折叠，
   不会叠成两份。 */
html[data-care-ui="active"] main.care-shell #status{margin:calc(10px * var(--care-spacing-scale, .5)) 0 0}
html[data-care-ui="active"] main.care-shell>h2{margin:var(--care-block) 0 calc(10px * var(--care-spacing-scale, .5))}
html[data-care-ui="active"] main.care-shell #plans>article,html[data-care-ui="active"] main.care-shell #recommendations>article,html[data-care-ui="active"] main.care-shell #mine>article{margin:calc(10px * var(--care-spacing-scale, .5)) 0}
html[data-care-ui="active"] input,html[data-care-ui="active"] select,html[data-care-ui="active"] textarea{font:inherit;color:inherit;background:var(--care-input-bg);border:var(--care-border-width) solid var(--care-line);border-radius:var(--care-input-radius,10px);max-width:100%;padding:var(--care-input-pad,calc(10px * var(--care-spacing-scale, .5)))}
html[data-care-ui="active"] .xiaowa-launcher,html[data-care-ui="active"] .xiaowa-greeting{display:none}
html[data-care-ui="active"] .xiaowa-header img{object-fit:contain}html[data-care-ui="active"] .xiaowa-message{font-size:var(--care-fs-body)}
/* 问小瓦聊天页：与六页共用同一套 Flex 空间分配（flex:1 + min-height:0 + overflow），
   main / #chat-mount / .xiaowa / dialog / shell 逐层传递剩余高度，消息区负责滚动；
   不再使用 calc(100dvh - Npx)、固定高度或按屏高/屏宽隐藏内容。 */
html[data-care-ui="active"] .care-chat-page main,html[data-care-ui="active"] body.care-chat-page main{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;min-width:0;overflow:hidden;padding:0}
/* 独立聊天页不叠两层 hero：整块头区（含并入的品牌行）隐去，阅读控件由 xiaowa-page.js
   移到聊天 header 内承担，不重复新页头。 */
.care-chat-page .care-hero{display:none}
.care-chat-page #chat-mount{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;min-width:0;margin-top:0}
.care-chat-page .xiaowa{position:static;display:flex;flex-direction:column;flex:1 1 auto;height:auto;min-height:0;min-width:0}
.care-chat-page .xiaowa-dialog[open]{position:static;inset:auto;display:flex;flex-direction:column;flex:1 1 auto;width:100%;max-width:none;height:auto;max-height:none;min-height:0;min-width:0;margin:0;border:0;border-radius:0;padding:0;overflow:hidden;background:var(--care-chat-bg);box-shadow:none}
.care-chat-page .xiaowa-shell{flex:1 1 auto;height:auto;width:100%;max-height:none;min-height:0;display:flex;flex-direction:column;background:var(--care-paper) url('./assets/xiaowa-chat-landscape-768w-ab58c79ad8de4ffb.webp') center bottom/100% 100% no-repeat,url('./assets/xiaowa-chat-landscape.png') center bottom/100% 100% no-repeat}
/* 聊天 header：小瓦图像 + 短品牌图文（茶色/植物氛围），不再另起一层 hero。 */
.care-chat-page .xiaowa-header{background:var(--care-chat-header-surface);padding:calc(8px * var(--care-spacing-scale, .5)) calc(14px * var(--care-spacing-scale, .5));flex:none;gap:calc(10px * var(--care-spacing-scale, .5));border-bottom:1px solid var(--care-line)}
.care-chat-page .xiaowa-header img{height:clamp(32px,8vw,42px);width:auto;object-fit:contain;flex-shrink:0}
.care-chat-page .xiaowa-header h2{font-size:var(--care-fs-h3);line-height:var(--care-lh-title);margin:0}
.care-chat-page .xiaowa-header h2 span{font-size:var(--care-fs-xs)}
.care-chat-page .xiaowa-header p{font-size:var(--care-fs-body-3);color:var(--care-muted);margin:calc(3px * var(--care-spacing-scale, .5)) 0 0;line-height:var(--care-lh-small)}
.care-chat-page .xiaowa-close{display:none}
.care-chat-page .xiaowa-mode{font-size:var(--care-fs-xs);line-height:1.5;color:var(--care-muted);background:#f3f5ec;padding:calc(5px * var(--care-spacing-scale, .5)) calc(14px * var(--care-spacing-scale, .5));flex:none}
/* 资料 / 订单 / 客服隐私操作收进可展开工具面板：只移动原 DOM 节点，事件、清除与告知不变。 */
.care-chat-page .care-chat-actions{display:flex;justify-content:space-between;align-items:center;gap:calc(16px * var(--care-spacing-scale, .5));flex:none;padding:calc(2px * var(--care-spacing-scale, .5)) calc(14px * var(--care-spacing-scale, .5));border-bottom:1px solid var(--care-line);background:#fbf8ef}
.care-chat-page .care-chat-actions .text-button{min-height:44px;font-size:var(--care-fs-xs)}
.care-chat-page .xiaowa-mode,.care-chat-page .xiaowa-context,.care-chat-page .xiaowa-navigation,.care-chat-page .xiaowa-term-hint,.care-chat-page .xiaowa-footer{display:none!important}
.care-chat-page .xiaowa-context{padding:calc(4px * var(--care-spacing-scale, .5)) calc(14px * var(--care-spacing-scale, .5));flex:none;flex-wrap:wrap;font-size:var(--care-fs-xs)}
.care-chat-page .xiaowa-context .text-button{min-height:38px;font-size:var(--care-fs-xs)}
.care-chat-page .xiaowa-navigation{padding:calc(4px * var(--care-spacing-scale, .5)) calc(14px * var(--care-spacing-scale, .5));font-size:var(--care-fs-xs);flex:none;flex-wrap:wrap}
.care-chat-page .xiaowa-navigation button,.care-chat-page .xiaowa-navigation a{min-height:38px;font-size:var(--care-fs-xs)}
.care-chat-page .xiaowa-term-hint{padding:calc(4px * var(--care-spacing-scale, .5)) calc(14px * var(--care-spacing-scale, .5));font-size:var(--care-fs-xs)}
.care-chat-page .xiaowa-scroll{flex:1 1 auto;min-height:0;padding:var(--care-chat-gap,var(--care-gap)) calc(14px * var(--care-spacing-scale, .5)) calc(8px * var(--care-spacing-scale, .5));overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
/* 手机及窄屏预览隐藏滚动条，保留触摸、滚轮和键盘滚动。 */
@media(max-width:650px){
  .care-chat-page .xiaowa-scroll{scrollbar-width:none}
  .care-chat-page .xiaowa-scroll::-webkit-scrollbar{display:none;width:0;height:0}
}
/* 提示/资源/授权说明仍是原节点：固定壳下允许它们在自己上限内收缩并内部滚动，
   避免多个同时出现时把底部 composer 挤出可见区域（节点、事件与告知都不改）。 */
.care-chat-page .xiaowa-resource,.care-chat-page .xiaowa-return-notice{flex:0 1 auto;min-height:0;max-height:38vh;overflow:auto}
.care-chat-page .xiaowa-error,.care-chat-page .xiaowa-claim,.care-chat-page .xiaowa-order-notice{flex:0 1 auto;min-height:0;max-height:30vh;overflow:auto}
/* 绿 / 奶白气泡：小瓦奶白描边、用户浅茶绿，正文字号随阅读模式变化。 */
.care-chat-page .xiaowa-message{position:relative;font-size:var(--care-fs-body);line-height:var(--care-chat-line-height);background:var(--care-bubble-assistant-bg);border:0;color:var(--care-ink);padding:var(--care-chat-padding-y,clamp(calc(10px * var(--care-spacing-scale, .5)),calc(2.4vw * var(--care-spacing-scale, .5)),calc(13px * var(--care-spacing-scale, .5)))) var(--care-chat-padding-x,clamp(calc(11px * var(--care-spacing-scale, .5)),calc(2.8vw * var(--care-spacing-scale, .5)),calc(15px * var(--care-spacing-scale, .5))));border-radius:6px var(--care-chat-bubble-radius,14px) var(--care-chat-bubble-radius,14px) var(--care-chat-bubble-radius,14px);margin:0 var(--care-chat-gutter,calc(12px * var(--care-spacing-scale, .5))) var(--care-chat-gap,var(--care-gap)) var(--care-chat-avatar-lane);min-height:38px}
.care-chat-page .xiaowa-message:not(.system)::before{content:"";position:absolute;left:calc(-1 * var(--care-chat-avatar-lane));top:0;width:var(--care-chat-avatar-size);height:var(--care-chat-avatar-size);border-radius:50%;background-color:var(--care-bubble-avatar-bg);background-image:var(--care-bubble-avatar-image);background-position:center;background-size:contain;background-repeat:no-repeat;box-shadow:0 1px 4px #66503514}
.care-chat-page .xiaowa-message p{line-height:var(--care-chat-line-height);margin:var(--care-chat-text-gap,calc(5px * var(--care-spacing-scale, .5))) 0 0}
/* 行内白话词不使用公共按钮卡面；important 覆盖公共按钮的多重 :not 选择器。 */
html[data-care-ui="active"] .care-chat-page .xiaowa .xiaowa-term{display:inline;padding:0!important;margin:0;border:0!important;border-radius:0!important;background:none!important;box-shadow:none;min-height:0!important;min-width:0;color:inherit!important;font:inherit!important;font-weight:700!important;text-decoration:underline dotted;text-decoration-thickness:1px;text-underline-offset:4px}
.care-chat-page .xiaowa-message-author{font-size:var(--care-fs-xs);color:#6b7e65}
.care-chat-page .xiaowa-message:not(.human):not(.system) .xiaowa-message-author{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.care-chat-page .xiaowa-message:not(.human):not(.system) .xiaowa-message-author+p{margin-top:0}
.care-chat-page .xiaowa-message.user{background:var(--care-bubble-user-bg);color:var(--care-bubble-user-fg);margin-left:auto;margin-right:var(--care-chat-avatar-lane);max-width:calc(100% - 2 * var(--care-chat-avatar-lane));border-radius:var(--care-chat-bubble-radius,14px) 6px var(--care-chat-bubble-radius,14px) var(--care-chat-bubble-radius,14px)}
.care-chat-page .xiaowa-message.user::before{left:auto;right:calc(-1 * var(--care-chat-avatar-lane));background-color:var(--care-bubble-user-avatar-bg);background-image:var(--care-bubble-user-avatar-image);background-size:cover}
.care-chat-page .xiaowa-message.human::before{background-image:none;content:"服";display:grid;place-items:center;color:var(--care-green);font-size:16px}
.care-chat-page .xiaowa-message.system{margin-left:auto;margin-right:auto;min-height:0}
.care-chat-page .xiaowa-message.user .xiaowa-message-author{color:#5d7550}
.care-chat-page .xiaowa-message.human{background:var(--care-bubble-human-bg)}
/* 大字模式只放大小瓦消息正文；保留现有气泡内外边距和消息间距。 */
html[data-care-ui="active"][data-care-reading="large"] .xiaowa-message:not(.system){font-size:calc(var(--care-fs-body-1) + 4px);line-height:calc(var(--care-fs-body-1) + 10px)}
html[data-care-ui="active"][data-care-reading="large"] .xiaowa-message:not(.system) p{line-height:inherit}
.care-chat-page .xiaowa-suggestions{gap:calc(8px * var(--care-spacing-scale, .5));margin-bottom:calc(8px * var(--care-spacing-scale, .5))}
.care-chat-page .xiaowa-suggestions button{min-height:var(--care-touch-min,44px);font-size:var(--care-fs-body-2);line-height:var(--care-lh-small);border-radius:999px;border:var(--care-border-width) solid var(--care-chat-field-border);background:var(--care-chat-field-bg);color:var(--care-green);padding:calc(8px * var(--care-spacing-scale, .5)) calc(14px * var(--care-spacing-scale, .5))}
/* 无历史时沿用 xiaowa.js 自己的首条问候气泡，不再叠加大欢迎卡。 */
/* 输入区：composer 自然高度固定在可见区域底部；文字框自身带 1px 细边（沿用 --care-line 既有色）、
   8px 圆角、底色沿用 --care-composer-surface。麦克风/图片/发送都是框外同级按钮、靠底对齐。
   高度由 xiaowa-page.js 用隐藏镜像测量（空值回到 1 行，上限 --care-input-max，短视口再受限），
   不再先把可见框高度清空回填。 */
.care-chat-page .xiaowa-form{--care-composer-textarea-pad-y:calc(8px * var(--care-spacing-scale, .5));--care-composer-textarea-pad-x:calc(10px * var(--care-spacing-scale, .5));position:relative;isolation:isolate;display:flex;align-items:flex-end;background:transparent;border:0;border-radius:0;padding:calc(6px * var(--care-spacing-scale, .5)) calc(12px * var(--care-spacing-scale, .5));flex:none;margin:calc(8px * var(--care-spacing-scale, .5)) 0 0;gap:var(--care-composer-action-gap)}
.care-chat-page .xiaowa-form textarea::placeholder{color:var(--care-composer-placeholder);opacity:1}
.care-chat-page .xiaowa-form textarea{flex:1 1 auto;min-width:0;min-height:calc(var(--care-fs-body) * var(--care-lh-body) + var(--care-composer-textarea-pad-y) * 2 + 2px);max-height:calc(var(--care-input-max) + var(--care-composer-textarea-pad-y) * 2 + 2px);height:auto;border:1px solid var(--care-line);border-radius:8px;background:var(--care-composer-surface);padding:var(--care-composer-textarea-pad-y) var(--care-composer-textarea-pad-x);margin:0;font-size:var(--care-fs-body);line-height:var(--care-lh-body);resize:none;overflow-y:hidden;box-sizing:border-box}
.care-chat-page .xiaowa-form textarea:focus,.care-chat-page .xiaowa-form textarea:focus-visible{outline:0;border-color:#a88c52;box-shadow:0 0 0 1px #a88c52}
/* 隐藏镜像：与 textarea 同宽同字体同内边距，仅量取内容高度；fixed 定位不参与 flex 布局。 */
.xiaowa-input-mirror{position:fixed;top:0;left:-10000px;visibility:hidden;pointer-events:none;box-sizing:border-box;border:1px solid transparent;padding:calc(8px * var(--care-spacing-scale, .5)) calc(10px * var(--care-spacing-scale, .5));font-size:var(--care-fs-body);line-height:var(--care-lh-body);font-family:inherit;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word}
.care-chat-page .xiaowa-form>button{flex-shrink:0;width:calc(var(--care-fs-body) * 2.4);height:calc(var(--care-fs-body) * 2.4);min-height:0;border-radius:50%;font-size:var(--care-fs-h3)}
.care-chat-page .xiaowa-form label{margin:0}
.care-chat-page .xiaowa-image-pick{flex-shrink:0;height:calc(var(--care-fs-body) * 2.4)}
.care-chat-page .xiaowa-image-area{font-size:var(--care-fs-xs);padding:calc(6px * var(--care-spacing-scale, .5)) calc(12px * var(--care-spacing-scale, .5)) 0}
.care-chat-page .xiaowa-image-label{font-size:var(--care-fs-sm)}
/* 图片按钮已移到文字框右侧，来源菜单改为贴其右缘向左展开，窄屏不再溢出被裁。 */
.care-chat-page .xiaowa-image-menu{left:auto;right:0}
.care-chat-page .xiaowa-image-menu button{min-height:calc(var(--care-fs-body) * 2.2);font-size:var(--care-fs-body)}
.care-chat-page .xiaowa-error,.care-chat-page .xiaowa-clear-confirm,.care-chat-page .xiaowa-pending{font-size:var(--care-fs-xs)}
.care-chat-page .xiaowa-clear-confirm p{font-size:var(--care-fs-sm)}
/* 底部安全区只由 .care-bottom-nav 统一计入，聊天页脚不再重复留白（避免刘海/手势条设备叠加两份）。 */
.care-chat-page .xiaowa-footer{flex:none;flex-wrap:wrap;gap:calc(6px * var(--care-spacing-scale, .5)) calc(10px * var(--care-spacing-scale, .5));font-size:var(--care-fs-xs);padding:calc(4px * var(--care-spacing-scale, .5)) calc(14px * var(--care-spacing-scale, .5)) calc(8px * var(--care-spacing-scale, .5));background:none}
.care-chat-page .xiaowa-footer>*{flex-shrink:0}
.care-chat-page .xiaowa-footer>span{white-space:normal;max-width:150px}
.care-chat-page .xiaowa-footer .text-button{min-height:38px;font-size:var(--care-fs-xs)}
.care-chat-page .xiaowa-order-state{font-size:var(--care-fs-xs)}
.care-chat-page .xiaowa-memory-banner{flex:none;max-height:min(48dvh,400px);overflow:auto;font-size:var(--care-fs-xs)}
.care-chat-page .xiaowa-memory-banner p{font-size:var(--care-fs-body-3);line-height:var(--care-lh-body-3)}
.care-chat-page .xiaowa-memory-banner button{min-height:var(--care-touch-min);font-size:var(--care-fs-body-3)}
.care-chat-page .care-bottom-nav{padding-top:calc(12px * var(--care-spacing-scale, .5));padding-bottom:calc(14px * var(--care-spacing-scale, .5));border:0;box-shadow:none}
.care-chat-page .care-bottom-nav a{font-size:var(--care-fs-xs);gap:calc(2px * var(--care-spacing-scale, .5));padding:calc(2px * var(--care-spacing-scale, .5))}
.care-chat-page .care-bottom-nav svg{width:22px;height:22px}
.care-chat-page .care-bottom-nav .care-nav-chat svg{margin-top:0;width:32px;height:32px;padding:0}

@media(max-width:650px){html[data-care-ui="active"] main,html[data-care-ui="active"] main.layout{padding:0 var(--care-page-pad-x,calc(16px * var(--care-spacing-scale, .5))) var(--care-page-pad-bottom,calc(25px * var(--care-spacing-scale, .5)))}.care-hero{margin:0 calc(-1 * var(--care-page-pad-x)) var(--care-block);border-radius:var(--care-panel-radius);padding:clamp(calc(12px * var(--care-spacing-scale, .5)),calc(3.4vw * var(--care-spacing-scale, .5)),calc(18px * var(--care-spacing-scale, .5))) clamp(calc(14px * var(--care-spacing-scale, .5)),calc(4vw * var(--care-spacing-scale, .5)),calc(20px * var(--care-spacing-scale, .5))) clamp(calc(14px * var(--care-spacing-scale, .5)),calc(4vw * var(--care-spacing-scale, .5)),calc(22px * var(--care-spacing-scale, .5)));background-position:var(--care-hero-position)}.care-hero p{max-width:64%}.care-hero .care-hero-note{margin-top:clamp(calc(8px * var(--care-spacing-scale, .5)),calc(2.4vw * var(--care-spacing-scale, .5)),calc(14px * var(--care-spacing-scale, .5)));max-width:60%}.care-grid{gap:var(--care-gap)}.care-mini{padding:clamp(calc(10px * var(--care-spacing-scale, .5)),calc(2.8vw * var(--care-spacing-scale, .5)),calc(13px * var(--care-spacing-scale, .5)))}.care-reference{gap:0;grid-template-columns:1.15fr 1fr}.care-reference-art{background-position:78% 80%}.care-panel,html[data-care-ui="active"] .card{padding:var(--care-space) var(--care-card-pad-x-narrow,clamp(calc(14px * var(--care-spacing-scale, .5)),calc(3.6vw * var(--care-spacing-scale, .5)),calc(18px * var(--care-spacing-scale, .5))))}.care-section-head h2{font-size:var(--care-fs-h2)!important}html[data-care-ui="active"] #sections{grid-template-columns:1fr;gap:calc(12px * var(--care-spacing-scale, .5))}html[data-care-ui="active"] #items{grid-template-columns:repeat(2,minmax(0,1fr));gap:calc(11px * var(--care-spacing-scale, .5))}html[data-care-ui="active"] #items>.card{padding:clamp(calc(12px * var(--care-spacing-scale, .5)),calc(3.4vw * var(--care-spacing-scale, .5)),calc(15px * var(--care-spacing-scale, .5)))}.care-item-card .actions button{padding:calc(6px * var(--care-spacing-scale, .5)) calc(8px * var(--care-spacing-scale, .5))!important}.care-ingredients{gap:calc(7px * var(--care-spacing-scale, .5))}.care-ingredient{padding:calc(9px * var(--care-spacing-scale, .5))}.care-detail-image{width:min(125px,38vw);height:auto}html[data-care-ui="active"] #items>.card{padding:var(--care-card-content-pad-y) var(--care-card-content-pad-x)}}
@media(max-width:650px){html[data-care-ui="active"] .care-hero{padding-inline:var(--care-page-pad-x)}}
@media(prefers-reduced-motion:reduce){html[data-care-ui="active"] *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* 底栏不再 fixed，输入区由共享壳的 flex 剩余空间承接，不再用内边距补偿底栏遮挡。 */


.care-item-card h2{color:var(--care-ink)!important}
/* 单值字段沿用原浅绿底；多标签字段由 .care-pills 逐项呈现，整行不再画胶囊背景。 */
html[data-care-ui="active"] .field-value:not(.empty):not(.care-pills){background:var(--care-sage-surface);border-radius:12px;padding:calc(5px * var(--care-spacing-scale, .5)) calc(10px * var(--care-spacing-scale, .5))}
html[data-care-ui="active"] .care-record-info{font-size:var(--care-fs-xs);color:var(--care-muted);margin-top:calc(22px * var(--care-spacing-scale, .5))}

/* —— 本机 V1 接入（integration diff，未回写冻结包）：真实 care=false 的关闭态绑定 ——
 * care-shell.css?v=visual-v2-20260928 在关闭态会隐藏 main 的所有非 .care-closed-shell 子元素（包括品牌头区），
 * 本机养护业务未开放时 V1 外观仍要保留，因此只放行已经挂载的 .care-hero；
 * 关闭卡片本身沿用原样式，仅去掉与头区叠加出的 64px 顶部留白。 */
html[data-care-ui="active"][data-care-closed="true"] main>.care-hero{display:block!important}
html[data-care-ui="active"] .care-closed-shell{margin:0 auto var(--care-block)}

/* 统一大区块与小卡边界；只选内容容器，按钮/输入/弹窗保留操作边界。 */
html[data-care-ui="active"] #items>.card{border-radius:var(--care-tile-radius)}
html[data-care-ui="active"] .care-empty{border-width:var(--care-tile-border-width)}
html[data-care-ui="active"] .care-reference{border-radius:var(--care-panel-radius)}
html[data-care-ui="active"] .care-reference-copy{padding-inline:var(--care-page-pad-x)}
html[data-care-ui="active"] main.care-shell article.care-plan-card{border-radius:var(--care-panel-radius);padding-inline:0;background:var(--care-panel-surface);box-shadow:none}
html[data-care-ui="active"] .care-chat-page .xiaowa-scroll{padding-inline:var(--care-page-pad-x)}
html[data-care-ui="active"] .entry-card{border-width:var(--care-panel-border-width);border-radius:var(--care-panel-radius);background:var(--care-panel-surface);box-shadow:none}
html[data-care-ui="active"] .health-entry{padding-inline:0}

/* 文字框独立描边，语音、图片及发送按钮均在框外。 */
html[data-care-ui="active"] .care-chat-page .xiaowa-form-actions{width:var(--care-composer-action-size);height:var(--care-composer-action-size);margin-left:0;align-self:flex-end}
html[data-care-ui="active"] .xiaowa :is(.xiaowa-form-mic,.xiaowa-form-send,.xiaowa-image-pick){display:inline-flex;align-items:center;justify-content:center;flex:0 0 var(--care-composer-action-size);width:var(--care-composer-action-size)!important;height:var(--care-composer-action-size)!important;min-height:var(--care-composer-action-size)!important;padding:0!important;border:0!important;border-radius:50%!important;background:radial-gradient(circle closest-side,var(--care-composer-surface) 98%,transparent 100%) center/var(--care-composer-circle-size) var(--care-composer-circle-size) no-repeat!important;color:var(--care-composer-icon)!important;opacity:1!important;box-shadow:none!important}
html[data-care-ui="active"] .xiaowa :is(.xiaowa-form-mic,.xiaowa-form-send,.xiaowa-image-pick) svg{width:var(--care-composer-icon-size);height:var(--care-composer-icon-size);stroke:currentColor;stroke-width:var(--care-icon-stroke)}
html[data-care-ui="active"] .xiaowa :is(.xiaowa-form-mic,.xiaowa-form-send):disabled{cursor:not-allowed}
html[data-care-ui="active"] .xiaowa :is(.xiaowa-form-mic,.xiaowa-form-send):disabled svg{opacity:.45}
html[data-care-ui="active"] .care-chat-page .care-bottom-nav a:not(.care-nav-chat){color:var(--care-chat-nav-muted)!important;font-weight:600}
/* Health-profile back action: shared green and 44px touch target. */
html[data-care-ui="active"] body.care-health-profile-page .care-topline-back{margin:0 0 0 calc(2px * var(--care-spacing-scale, .5));padding:0;flex:none;display:inline-grid;place-items:center;width:44px;height:44px;border:1px solid var(--care-line);border-radius:50%;color:var(--care-green);background:transparent;font-size:var(--care-fs-body-3);line-height:1;white-space:nowrap;text-decoration:none}

/* 本草小识：简单认识块（只承载接口给出的既有短释义）与产品行示意图。
   示意图按精确产品组 ID 命中登记图，缺图回退占位；不声称 SKU 实拍或物种鉴定。 */
.care-herb-page .care-herb-intro{margin:0 0 var(--care-gap);padding:calc(14px * var(--care-spacing-scale, .5)) calc(16px * var(--care-spacing-scale, .5));background:var(--care-card);border-left:3px solid #78936b;border-radius:0 13px 13px 0}
.care-herb-page .care-herb-intro strong{display:block;color:var(--care-green);font-size:var(--care-fs-sm);margin:0 0 calc(4px * var(--care-spacing-scale, .5))}
.care-herb-page .care-herb-intro p{margin:0;line-height:var(--care-lh-body);overflow-wrap:anywhere}
.care-herb-page .care-herb-intro p.care-source{margin-top:calc(6px * var(--care-spacing-scale, .5))}
.care-herb-page .care-herb-sources{float:right;margin:0 0 calc(4px * var(--care-spacing-scale, .5)) calc(10px * var(--care-spacing-scale, .5));max-width:100%}
.care-herb-page .care-herb-sources[open]{float:none;width:100%;margin:0 0 calc(10px * var(--care-spacing-scale, .5))}
.care-herb-page .care-herb-sources summary{display:inline-flex;align-items:center;gap:calc(4px * var(--care-spacing-scale, .5));list-style:none;cursor:pointer;padding:calc(3px * var(--care-spacing-scale, .5)) calc(9px * var(--care-spacing-scale, .5));border:1px solid var(--care-line,#e6dcc8);border-radius:999px;background:var(--care-mini-surface);color:var(--care-ink);font-size:var(--care-fs-sm);font-weight:600}
.care-herb-page .care-herb-sources summary::-webkit-details-marker{display:none}
.care-herb-page .care-herb-sources summary::after{content:'⌄';line-height:1}
.care-herb-page .care-herb-sources[open] summary{display:flex;width:max-content;margin-left:auto}
.care-herb-page .care-herb-sources[open] summary::after{content:'⌃'}
.care-herb-page .care-herb-sources summary:focus-visible{outline:2px solid #78936b;outline-offset:2px}
.care-herb-page .care-herb-source-list{clear:both;margin-top:calc(8px * var(--care-spacing-scale, .5));padding:calc(10px * var(--care-spacing-scale, .5)) calc(12px * var(--care-spacing-scale, .5));max-height:40vh;overflow:auto;text-align:left;background:var(--care-card);border:1px solid var(--care-line,#e6dcc8);border-radius:10px}
.care-herb-page .care-herb-source-list p{margin:0 0 calc(7px * var(--care-spacing-scale, .5));line-height:var(--care-lh-body)}
.care-herb-page .care-herb-source-list p:last-child{margin-bottom:0}
.care-herb-page .care-herb-product-head{display:flex;align-items:center;gap:calc(10px * var(--care-spacing-scale, .5));min-width:0;flex-wrap:wrap}
.care-herb-page .care-herb-product-head strong{min-width:0;overflow-wrap:anywhere}
.care-herb-page .care-herb-product-art,.care-herb-page .care-herb-product-head .care-art-neutral{width:56px;height:56px;flex:none;border-radius:10px;object-fit:cover;background:var(--care-mini-surface)}
.care-herb-page .care-herb-product-art.care-product-preview-photo{object-fit:contain}
.care-herb-page .care-herb-product-head .care-art-neutral{display:grid;place-items:center;font-size:22px}
/* 商品结果区的可见"示意"说明：alt 只对读屏可见，这里给视力正常用户补一次。 */
.care-herb-page .care-herb-art-note{margin:0 0 calc(8px * var(--care-spacing-scale, .5));font-size:var(--care-fs-sm);line-height:var(--care-lh-body);color:var(--care-muted);overflow-wrap:anywhere}

/* 手机端分段滚动：普通页仍走整页文档滚动（本机长截图方案），
   底栏 sticky 贴底，随时可导航；独立聊天页不再整页滚动，改回共享壳的
   固定可见区域（body 100dvh + --care-app-height）+ 消息区内部滚动：
   header/actions 固定、消息区 min-height:0 可滚、composer 自然高度贴底，
   输入框底边不随键盘/输入抖动。桌面与嵌入式助手浮层本来就走内部滚动，不受影响。 */
@media(max-width:650px){
  /* 手机端整页文档滚动只作用于普通页（长截图方案）；独立聊天页不走整页滚动，
     仍由共享壳的固定可见区域 + 消息区内部滚动承担，输入框底边稳定、不被系统条遮挡。 */
  html[data-care-ui="active"] body:not(.care-chat-page){height:auto;min-height:100vh;min-height:100dvh;overflow:visible;transform:none}
  /* 旧版浮层（orders.html 的 showModal）打开时仍锁住背景文档滚动，与桌面一致。 */
  html[data-care-ui="active"] body.xiaowa-open{overflow:hidden}
  html[data-care-ui="active"] body:not(.care-chat-page) main,html[data-care-ui="active"] body:not(.care-chat-page) main.layout{overflow:visible;overscroll-behavior:auto;-webkit-overflow-scrolling:auto}
  /* 普通页底栏 sticky 贴底；聊天页底栏是固定壳底部的 flex 项，按原 relative 排布。 */
  html[data-care-ui="active"] body:not(.care-chat-page) .care-bottom-nav{position:sticky;bottom:0}
}

/* V2 keyboard and touch states share the same semantic treatment. */
html[data-care-ui="active"] :is(a,button,input,textarea,select):focus-visible{outline:2px solid var(--care-green);outline-offset:3px;box-shadow:var(--care-focus-ring)}
.care-bottom-nav a{min-height:44px}
@media(prefers-reduced-motion:reduce){html[data-care-ui="active"] *,html[data-care-ui="active"] *:before,html[data-care-ui="active"] *:after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}
