/* b-theme.css —— 咨询师端（B）全部样式，原样抽取自 咨询宝-B端.html <style> */
:root{
  --bg:#F4F2EE;
  --bg-warm:#EDEBE5;
  --bg-card:#FFFFFF;
  --ink:#2B3329;
  --ink-2:#4E5A4A;
  --ink-3:#7A8377;
  --ink-4:#A6ACA3;
  --accent:#3D5946;
  --accent-light:#6B8F5E;
  --accent-soft:rgba(61,89,70,0.06);
  --accent-border:rgba(61,89,70,0.2);
  --green:#6B8F5E;
  --rule:rgba(160,170,155,0.2);
  --warm:#B8845A;
  --warm-soft:rgba(184,132,90,0.08);
  --warm-border:rgba(184,132,90,0.25);
}
*{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent;}
html,body{font-family:'Noto Sans SC',system-ui,sans-serif;background:var(--bg);color:var(--ink);line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden;}
html{width:100%;}
body{margin:0;min-height:100vh;padding-bottom:env(safe-area-inset-bottom);overflow-x:hidden;background:#e8e3d8;width:100%;}

/* 主页内容 wrapper（420 居中限制移到这里）*/
.main-content{ max-width:420px;margin:0 auto;background:var(--bg);min-height:100vh; }

/* ============ 页面栈系统（v0.11，B 端）============ */
/* 所有全屏 page 改为页面栈管理 · 同时只显示一个 · 横向滑入转场 */
.vlist-page, .add-visitor-page, .profile-page,
.detail-page, .biz-page, .tpl-page, .fin-page, .editor-page, .sub-page, .list-page, .subed-page, .ai-share-page, .resched-page{
  position:fixed !important;
  top:0 !important;
  left:0 !important;
  right:0 !important;
  bottom:0 !important;
  width:auto !important;
  height:auto !important;
  background:var(--bg);
  z-index:200;
  display:flex !important;
  flex-direction:column;
  overflow-y:auto;
  overflow-x:hidden !important;
  -webkit-overflow-scrolling:touch;
  /* 默认离屏到右侧 */
  transform:translateX(100%) !important;
  transition:transform 0.32s cubic-bezier(0.32, 0.72, 0, 1) !important;
  visibility:hidden !important;
  pointer-events:none !important;
  animation:none !important;
  max-width:none !important;
  margin:0 !important;
}
.vlist-page.active, .add-visitor-page.active, .profile-page.active,
.detail-page.active, .biz-page.active, .tpl-page.active, .fin-page.active, .editor-page.active, .sub-page.active, .list-page.active, .subed-page.active, .ai-share-page.active, .resched-page.active{
  transform:translateX(0) !important;
  visibility:visible !important;
  pointer-events:auto !important;
}
/* 内容居中限制宽度 */
.vlist-page > *, .add-visitor-page > *, .profile-page > *,
.detail-page > *, .biz-page > *, .tpl-page > *, .fin-page > *, .editor-page > *, .sub-page > *, .list-page > *, .subed-page > *, .ai-share-page > *, .resched-page > *{
  width:100%;
  max-width:420px;
  margin-left:auto;
  margin-right:auto;
}
/* 主页内容在子页激活时隐藏 */
body[data-stack-depth="0"] .main-content{ display:block; }
body[data-stack-depth="1"] .main-content,
body[data-stack-depth="2"] .main-content,
body[data-stack-depth="3"] .main-content{ display:none; }

/* 防御性修复：当深度=0（主页）时，强制所有子页不可见
 * 解决 sticky 子元素在子页 visibility:hidden 下偶尔仍渲染的 bug
 */
body[data-stack-depth="0"] .vlist-page,
body[data-stack-depth="0"] .add-visitor-page,
body[data-stack-depth="0"] .profile-page,
body[data-stack-depth="0"] .detail-page,
body[data-stack-depth="0"] .biz-page,
body[data-stack-depth="0"] .tpl-page,
body[data-stack-depth="0"] .fin-page,
body[data-stack-depth="0"] .editor-page,
body[data-stack-depth="0"] .sub-page,
body[data-stack-depth="0"] .list-page,
body[data-stack-depth="0"] .subed-page,
body[data-stack-depth="0"] .ai-share-page,
body[data-stack-depth="0"] .resched-page{
  display:none !important;
}

.b-head{padding:calc(20px + env(safe-area-inset-top)) 24px 8px;display:flex;justify-content:space-between;align-items:center;gap:16px;}
.b-head-greeting{flex:1;min-width:0;}
.b-head-hi{font-size:11px;color:var(--ink-3);letter-spacing:1.5px;margin-bottom:3px;}
.b-head-name{font-family:'Noto Serif SC',serif;font-size:20px;font-weight:600;color:var(--ink);letter-spacing:0.3px;}
.b-head-avatar{flex-shrink:0;width:42px;height:42px;border-radius:50%;background:linear-gradient(135deg,var(--accent-light),var(--accent));color:white;font-family:'Noto Serif SC',serif;font-size:18px;font-weight:600;display:flex;align-items:center;justify-content:center;letter-spacing:0.5px;cursor:pointer;}
.av-photo{background-image:url('data:image/jpeg;base64,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') !important;background-size:cover !important;background-position:center !important;background-repeat:no-repeat !important;color:transparent !important;}
.b-head-actions{display:flex;align-items:center;gap:10px;flex-shrink:0;}
.b-head-add{width:38px;height:38px;border-radius:50%;background:var(--bg-card);border:1px solid var(--accent-border);color:var(--accent);cursor:pointer;display:flex;align-items:center;justify-content:center;}
.b-head-add svg{width:18px;height:18px;}
.b-head-add:active{transform:scale(0.95);background:var(--accent-soft);}

/* ============ 单次咨询详情 / 协议详情 / 付款明细 · 通用样式 ============ */
.detail-page{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--bg);z-index:403;display:flex;flex-direction:column;overflow-y:auto;}
/* removed for PageStack */
.dt-head{padding:calc(20px + env(safe-area-inset-top)) 20px 12px;display:flex;align-items:center;justify-content:space-between;flex-shrink:0;}
.dt-back{width:32px;height:32px;border-radius:50%;border:none;background:rgba(78,90,74,0.06);color:var(--ink);font-size:16px;cursor:pointer;}
.dt-head-title{font-family:'Noto Serif SC',serif;font-size:14px;font-weight:600;color:var(--ink);letter-spacing:0.3px;}
.dt-head-spacer{width:32px;}

/* Hero */
.dt-hero{padding:16px 28px 22px;text-align:center;}
.dt-hero-pill{display:inline-block;padding:2px 10px;border-radius:8px;font-size:10.5px;letter-spacing:0.5px;margin-bottom:12px;}
.dt-hero-pill.done{background:rgba(107,143,94,0.12);color:var(--green);}
.dt-hero-pill.upcoming{background:var(--warm-soft);color:var(--warm);}
.dt-hero-pill.canceled{background:rgba(184,90,90,0.08);color:#B85A5A;}
.dt-hero-pill.signed{background:rgba(107,143,94,0.12);color:var(--green);}
.dt-hero-title{font-family:'Noto Serif SC',serif;font-size:21px;font-weight:600;color:var(--ink);letter-spacing:0.3px;margin-bottom:6px;line-height:1.45;}
.dt-hero-sub{font-size:12.5px;color:var(--ink-3);line-height:1.85;}

/* section */
.dt-section{padding:14px 24px 8px;}
.dt-section-label{font-size:11px;color:var(--accent);letter-spacing:2.5px;margin-bottom:12px;opacity:0.85;}

/* 信息卡（与档案 pf-info-card 相似）*/
.dt-info-card{background:var(--bg-card);border:1px solid var(--rule);border-radius:12px;padding:6px 16px;}
.dt-info-row{display:flex;justify-content:space-between;align-items:baseline;padding:11px 0;font-size:13px;gap:14px;border-bottom:1px dashed var(--rule);}
.dt-info-row:last-child{border-bottom:none;}
.dt-info-key{color:var(--ink-3);font-size:12px;flex-shrink:0;}
.dt-info-val{color:var(--ink);text-align:right;font-weight:500;}
.dt-info-val.serif{font-family:'Noto Serif SC',serif;font-size:14.5px;letter-spacing:0.3px;}
.dt-info-val.muted{color:var(--ink-3);font-weight:400;}
.dt-info-val.mono{font-family:'JetBrains Mono','Noto Sans SC',monospace;font-size:11.5px;color:var(--ink-3);}
.dt-info-val.amount{font-family:'Noto Serif SC',serif;font-size:15px;color:var(--green);font-weight:600;}

/* 反馈感受 pills（来自 C 端来访者勾的标签）*/
.dt-feelings{background:var(--bg-card);border:1px solid var(--rule);border-radius:12px;padding:14px 16px;}
.dt-feeling-group{margin-bottom:12px;}
.dt-feeling-group:last-child{margin-bottom:0;}
.dt-feeling-group-label{font-size:10.5px;letter-spacing:1.5px;margin-bottom:8px;display:flex;align-items:center;gap:6px;}
.dt-feeling-group-label.positive{color:var(--warm);}
.dt-feeling-group-label.neutral{color:#8A7E68;}
.dt-feeling-group-label::before{content:'';display:inline-block;width:4px;height:4px;border-radius:50%;background:currentColor;}
.dt-feeling-pills{display:flex;flex-wrap:wrap;gap:6px;}
.dt-feeling-pill{padding:4px 11px;font-size:11.5px;border-radius:14px;background:var(--warm-soft);color:var(--warm);border:1px solid var(--warm-border);letter-spacing:0.2px;}
.dt-feeling-pill.neutral{background:rgba(180,165,135,0.12);color:#8A7E68;border-color:rgba(180,165,135,0.3);}
.dt-feeling-empty{text-align:center;padding:14px;font-size:12px;color:var(--ink-3);line-height:1.85;}

/* 笔记预览卡 */
.dt-note-preview{background:rgba(78,90,74,0.04);border:1px solid var(--rule);border-radius:12px;padding:14px 16px;}
.dt-note-preview-head{display:flex;justify-content:space-between;margin-bottom:10px;}
.dt-note-preview-label{font-size:10.5px;color:var(--accent);letter-spacing:1.5px;}
.dt-note-preview-action{font-size:11px;color:var(--accent);cursor:pointer;letter-spacing:0.3px;}
.dt-note-preview-body{font-size:12.5px;color:var(--ink-2);line-height:1.9;letter-spacing:0.2px;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden;}
.dt-note-empty-card{padding:16px;background:rgba(78,90,74,0.04);border:1px dashed var(--rule);border-radius:12px;text-align:center;font-size:12px;color:var(--ink-3);line-height:1.85;}
.dt-note-empty-card b{color:var(--accent);}
.dt-note-panel{
  margin:8px 16px 20px;padding:16px 18px;
  background:linear-gradient(180deg, rgba(78,90,74,0.05) 0%, rgba(78,90,74,0.02) 100%);
  border:1px solid rgba(78,90,74,0.14);border-radius:16px;
}
.dt-note-panel-head{
  font-family:'Noto Serif SC',serif;font-size:15px;font-weight:600;
  color:var(--ink);letter-spacing:0.4px;margin-bottom:4px;
}
.dt-note-panel-lead{font-size:11px;color:var(--ink-4);margin:0 0 12px;line-height:1.5;}
.dt-note-edit{background:#fff;border:1px solid rgba(78,90,74,0.1);border-radius:12px;padding:12px 14px;}
.dt-note-input{width:100%;box-sizing:border-box;border:1px solid rgba(78,90,74,0.12);border-radius:10px;padding:10px 12px;font-size:13px;line-height:1.75;color:var(--ink-2);background:#fff;font-family:inherit;resize:vertical;min-height:96px;}
.dt-note-input:focus{outline:none;border-color:rgba(61,89,70,0.35);}
.dt-note-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:10px;}
.dt-note-hint{font-size:10.5px;color:var(--ink-4);line-height:1.5;flex:1;}
.dt-note-save{flex-shrink:0;padding:7px 14px;border:none;border-radius:8px;background:var(--accent);color:#fff;font-size:12px;font-family:inherit;cursor:pointer;letter-spacing:0.3px;}
.dt-note-save:active{transform:scale(0.98);}
.dt-note-teaser{
  margin-top:12px;padding-top:12px;border-top:1px dashed rgba(78,90,74,0.16);
  font-size:11px;color:var(--ink-4);letter-spacing:0.3px;text-align:center;line-height:1.6;
}
.dt-note-teaser::before{content:'✦ ';color:var(--accent);opacity:0.65;}

/* 协议摘要 5 行 */
.dt-agreement-summary{background:var(--bg-card);border:1px solid var(--rule);border-radius:12px;padding:6px 16px;}

/* E 签宝跳转入口 */
.dt-esign-card{background:linear-gradient(135deg, rgba(61,89,70,0.05) 0%, rgba(107,143,94,0.03) 100%);border:1px solid var(--accent-border);border-radius:12px;padding:14px 16px;display:flex;align-items:center;gap:12px;cursor:pointer;}
.dt-esign-card:active{transform:scale(0.995);}
.dt-esign-card-logo{flex-shrink:0;width:32px;height:32px;border-radius:8px;background:var(--accent);color:white;font-family:'Noto Serif SC',serif;font-size:16px;font-weight:700;display:flex;align-items:center;justify-content:center;}
.dt-esign-card-body{flex:1;min-width:0;}
.dt-esign-card-title{font-size:13px;color:var(--ink);font-weight:500;margin-bottom:2px;letter-spacing:0.2px;}
.dt-esign-card-sub{font-size:11px;color:var(--ink-3);line-height:1.65;}
.dt-esign-card-arrow{flex-shrink:0;color:var(--accent);font-size:18px;font-weight:300;}

/* 付款明细 · 时间线 */
.dt-pay-list{display:flex;flex-direction:column;gap:8px;}
.dt-pay-item{background:var(--bg-card);border:1px solid var(--rule);border-radius:12px;padding:14px 16px;}
.dt-pay-item-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:6px;gap:10px;}
.dt-pay-item-title{font-size:13.5px;color:var(--ink);font-weight:500;letter-spacing:0.2px;}
.dt-pay-item-amount{font-family:'Noto Serif SC',serif;font-size:16px;font-weight:600;letter-spacing:0.3px;flex-shrink:0;}
.dt-pay-item-amount.in{color:var(--green);}
.dt-pay-item-amount.out{color:#B85A5A;}
.dt-pay-item-meta{font-size:11px;color:var(--ink-3);line-height:1.7;}
.dt-pay-item-meta .pay-tag{display:inline-block;font-size:9.5px;padding:1px 6px;border-radius:5px;background:rgba(78,90,74,0.06);margin-left:6px;letter-spacing:0.3px;}

/* 付款汇总 */
.dt-pay-summary{background:var(--bg-card);border:1.5px solid var(--accent);border-radius:14px;padding:18px 20px;box-shadow:0 6px 22px rgba(61,89,70,0.08);}
.dt-pay-summary-label{font-size:10.5px;color:var(--accent);letter-spacing:2px;margin-bottom:8px;}
.dt-pay-summary-amount{font-family:'Noto Serif SC',serif;font-size:30px;font-weight:600;color:var(--ink);letter-spacing:0.5px;line-height:1.1;margin-bottom:4px;}
.dt-pay-summary-amount .sym{font-size:18px;margin-right:2px;vertical-align:2px;}
.dt-pay-summary-sub{font-size:11.5px;color:var(--ink-3);line-height:1.7;}
.dt-pay-summary-sub b{color:var(--ink-2);font-weight:500;}

/* 手续费提示 */
.dt-fee-note{margin:8px 24px 16px;padding:11px 14px;background:rgba(184,132,90,0.04);border:1px solid var(--warm-border);border-radius:10px;font-size:11.5px;color:var(--ink-3);line-height:1.85;letter-spacing:0.2px;}
.dt-fee-note b{color:var(--ink-2);font-weight:500;}

/* 底部操作 */
.dt-foot{padding:14px 20px calc(20px + env(safe-area-inset-bottom));flex-shrink:0;display:flex;gap:10px;}
.dt-foot-btn{flex:1;padding:13px;border-radius:14px;font-size:14px;font-weight:500;letter-spacing:0.5px;cursor:pointer;border:none;font-family:inherit;white-space:nowrap;}
.dt-foot-btn.primary{background:var(--accent);color:white;box-shadow:0 4px 14px rgba(61,89,70,0.22);}
.dt-foot-btn.primary:active{transform:scale(0.98);}
.dt-foot-btn.secondary{background:transparent;color:var(--ink-2);border:1px solid var(--rule);}
.dt-foot-btn.secondary:active{background:rgba(78,90,74,0.04);}

/* 状态显隐 */
.detail-page[data-type="session"] .show-when-agreement,.detail-page[data-type="session"] .show-when-payment{display:none;}
.detail-page[data-type="agreement"] .show-when-session,.detail-page[data-type="agreement"] .show-when-payment{display:none;}
.detail-page[data-type="payment"] .show-when-session,.detail-page[data-type="payment"] .show-when-agreement{display:none;}

.detail-page[data-session-status="upcoming"] .show-when-done,.detail-page[data-session-status="upcoming"] .show-when-canceled{display:none;}
.detail-page[data-session-status="done"] .show-when-upcoming,.detail-page[data-session-status="done"] .show-when-canceled{display:none;}
.detail-page[data-session-status="canceled"] .show-when-upcoming,.detail-page[data-session-status="canceled"] .show-when-done{display:none;}
.detail-page[data-session-status="rescheduled"] .show-when-upcoming,.detail-page[data-session-status="rescheduled"] .show-when-canceled{display:none;}

/* ver-picker CSS 已暂时移除 */


/* show-when-pro/free CSS 已移除 */

/* upgrade-card CSS 已移除 */

/* ============ 工作台 · 待办区（v0.14）============ */
.b-todo-section{ margin:0 24px 14px;display:none;}
.b-todo-section.has-items{ display:block;}

.b-todo-head{ display:flex;align-items:center;gap:8px;padding:0 4px 10px;}
.b-todo-head-label{ font-family:'Noto Serif SC',serif;font-size:12.5px;color:var(--ink-2);font-weight:500;letter-spacing:2px;}
.b-todo-head-count{ display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 6px;border-radius:9px;background:var(--accent);color:white;font-size:10.5px;font-weight:600;font-family:'JetBrains Mono','Noto Sans SC',monospace;letter-spacing:0.3px;}
.b-todo-head-count.medium{ background:var(--warm);}
.b-todo-head-count.low{ background:var(--ink-4);}

.b-todo-list{ display:flex;flex-direction:column;gap:8px;}

/* 待办卡片 · 统一形态，不分优先级颜色 */
.b-todo-card{ background:var(--bg-card);border:1px solid var(--rule);border-radius:12px;padding:14px 16px;display:flex;align-items:center;gap:12px;cursor:pointer;transition:transform 0.18s;}
.b-todo-card:active{ transform:scale(0.99);}

.b-todo-icon{ flex-shrink:0;width:28px;height:28px;border-radius:50%;background:rgba(78,90,74,0.06);color:var(--ink-3);display:flex;align-items:center;justify-content:center;}
.b-todo-icon svg{ width:13px;height:13px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}

.b-todo-body{ flex:1;min-width:0;}
.b-todo-title{ font-size:13.5px;color:var(--ink);font-weight:500;letter-spacing:0.3px;line-height:1.5;}
.b-todo-sub{ font-size:11.5px;color:var(--ink-3);line-height:1.6;margin-top:2px;letter-spacing:0.2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}

/* 单个 action 按钮 · 统一描边款 */
.b-todo-action{ flex-shrink:0;padding:6px 12px;border-radius:8px;font-size:12px;font-weight:500;cursor:pointer;font-family:inherit;letter-spacing:0.3px;background:transparent;color:var(--accent);border:1px solid var(--accent-border);}
.b-todo-action:active{ transform:scale(0.97);background:var(--accent-soft);}

/* inline 双按钮（改期）*/
.b-todo-inline-actions{ display:flex;gap:6px;flex-shrink:0;}
.b-todo-inline-btn{ padding:6px 10px;border-radius:8px;font-size:12px;font-weight:500;cursor:pointer;font-family:inherit;letter-spacing:0.3px;background:transparent;border:1px solid var(--accent-border);color:var(--accent);}
.b-todo-inline-btn.reject{ color:var(--ink-3);border-color:var(--rule);}
.b-todo-inline-btn.dismiss{ color:var(--ink-3);border-color:var(--rule);}
.b-todo-inline-btn:active{ transform:scale(0.97);}
.b-todo-section.setup-active .b-todo-head-label::after{
  content:'开张指引';
  margin-left:6px;
  font-size:9px;
  font-weight:600;
  color:var(--path-e,#7A6B5A);
  background:rgba(122,107,90,.12);
  padding:1px 7px;
  border-radius:8px;
  letter-spacing:0.3px;
}
.b-todo-card.setup-guide{
  border-left:3px solid var(--path-e,#7A6B5A);
  background:linear-gradient(90deg,rgba(122,107,90,.06),var(--bg-card) 28%);
}
.b-todo-card.setup-guide .b-todo-title{ color:var(--ink); }
.b-todo-card.setup-guide .b-todo-sub{ color:var(--ink-3); }
.b-todo-card.store-driven:active{ transform:none;}

/* 切换器 · 切待办状态 */
.todo-state-toggle{ position:fixed;left:14px;bottom:calc(102px + env(safe-area-inset-bottom));z-index:998;background:rgba(44,37,32,0.85);color:white;font-size:10.5px;padding:6px 11px;border-radius:14px;cursor:pointer;font-family:inherit;letter-spacing:0.3px;border:none;backdrop-filter:blur(10px);display:flex;align-items:center;gap:6px;}
.todo-state-toggle:active{ transform:scale(0.97);}
.todo-state-toggle .pill{ background:rgba(184,132,90,0.5);padding:1px 6px;border-radius:6px;font-size:9px;letter-spacing:0.3px;}

/* ============ 工作台 · 待签字卡片 ============ */
/* 默认所有状态卡都隐藏，根据 body[data-sign-state] 控制 */
.b-sign-card{ display:none;margin:0 24px 14px;padding:0;border-radius:14px;overflow:hidden;cursor:pointer;transition:transform 0.18s;}
.b-sign-card:active{ transform:scale(0.995);}
body[data-sign-state="pending_balance_ok"] .b-sign-card.balance-ok{ display:block;}
body[data-sign-state="pending_balance_low"] .b-sign-card.balance-low{ display:block;}

/* 余额足版：accent 绿色感 */
.b-sign-card.balance-ok{ background:linear-gradient(135deg, var(--accent) 0%, #2C4736 100%);color:white;box-shadow:0 6px 18px rgba(61,89,70,0.25);}
.b-sign-card.balance-ok .b-sign-head{ padding:14px 18px 12px;display:flex;align-items:center;gap:10px;border-bottom:1px solid rgba(255,255,255,0.12);}
.b-sign-card.balance-ok .b-sign-icon{ flex-shrink:0;width:32px;height:32px;border-radius:50%;background:rgba(255,255,255,0.16);display:flex;align-items:center;justify-content:center;color:white;}
.b-sign-card.balance-ok .b-sign-icon svg{ width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}
.b-sign-card.balance-ok .b-sign-title{ flex:1;font-family:'Noto Serif SC',serif;font-size:14.5px;font-weight:600;letter-spacing:0.3px;line-height:1.55;}
.b-sign-card.balance-ok .b-sign-title small{ display:block;font-size:11px;font-weight:400;opacity:0.78;margin-top:2px;letter-spacing:0.3px;font-family:'Noto Sans SC',sans-serif;}
.b-sign-card.balance-ok .b-sign-body{ padding:12px 18px 16px;}
.b-sign-card.balance-ok .b-sign-info{ display:flex;justify-content:space-between;align-items:baseline;padding:6px 0;font-size:12px;opacity:0.92;letter-spacing:0.2px;}
.b-sign-card.balance-ok .b-sign-info b{ font-family:'Noto Serif SC',serif;font-size:14px;font-weight:500;letter-spacing:0.3px;}
.b-sign-card.balance-ok .b-sign-action{ margin-top:10px;padding:10px;background:white;color:var(--accent);border:none;border-radius:10px;font-size:13.5px;font-weight:500;cursor:pointer;font-family:inherit;letter-spacing:0.3px;width:100%;text-align:center;}
.b-sign-card.balance-ok .b-sign-action:active{ transform:scale(0.98);}

/* 余额不足版：warm 橙色警示感 */
.b-sign-card.balance-low{ background:var(--bg-card);border:1.5px solid var(--warm);box-shadow:0 4px 14px rgba(184,132,90,0.15);}
.b-sign-card.balance-low .b-sign-head{ padding:14px 18px 10px;display:flex;align-items:center;gap:10px;}
.b-sign-card.balance-low .b-sign-icon{ flex-shrink:0;width:32px;height:32px;border-radius:50%;background:rgba(184,132,90,0.12);color:var(--warm);display:flex;align-items:center;justify-content:center;}
.b-sign-card.balance-low .b-sign-icon svg{ width:15px;height:15px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}
.b-sign-card.balance-low .b-sign-title{ flex:1;font-family:'Noto Serif SC',serif;font-size:14.5px;font-weight:600;color:var(--ink);letter-spacing:0.3px;line-height:1.55;}
.b-sign-card.balance-low .b-sign-title small{ display:block;font-size:11px;font-weight:400;color:var(--ink-3);margin-top:2px;letter-spacing:0.3px;font-family:'Noto Sans SC',sans-serif;}
.b-sign-card.balance-low .b-sign-body{ padding:0 18px 14px;}
.b-sign-card.balance-low .b-sign-warn{ font-size:12.5px;color:var(--ink-2);line-height:1.9;letter-spacing:0.2px;padding:10px 12px;background:rgba(184,132,90,0.06);border-radius:10px;}
.b-sign-card.balance-low .b-sign-warn b{ color:var(--warm);font-weight:600;font-family:'Noto Serif SC',serif;}
.b-sign-card.balance-low .b-sign-action{ margin-top:12px;padding:10px;background:var(--warm);color:white;border:none;border-radius:10px;font-size:13.5px;font-weight:500;cursor:pointer;font-family:inherit;letter-spacing:0.3px;width:100%;text-align:center;}
.b-sign-card.balance-low .b-sign-action:active{ transform:scale(0.98);}

/* 签字状态切换器（开发用，与 demo-toggle 平级，更高一点）*/
.sign-state-toggle{ position:fixed;left:14px;bottom:calc(102px + env(safe-area-inset-bottom));z-index:998;background:rgba(44,37,32,0.85);color:white;font-size:10.5px;padding:6px 11px;border-radius:14px;cursor:pointer;font-family:inherit;letter-spacing:0.3px;border:none;backdrop-filter:blur(10px);display:flex;align-items:center;gap:6px;}
.sign-state-toggle:active{ transform:scale(0.97);}
.sign-state-toggle .pill{ background:rgba(184,132,90,0.5);padding:1px 6px;border-radius:6px;font-size:9px;letter-spacing:0.3px;}

/* ============ 腾讯会议预览弹层 ============ */
.meet-mask{position:fixed;inset:0;background:rgba(44,50,41,0);z-index:415;pointer-events:none;transition:background 0.3s ease;}
.meet-mask.open{background:rgba(44,50,41,0.42);pointer-events:auto;}
.meet-sheet{position:fixed;bottom:0;left:50%;transform:translateX(-50%) translateY(100%);width:100%;max-width:420px;background:var(--bg);border-radius:24px 24px 0 0;z-index:416;transition:transform 0.32s cubic-bezier(0.32,0.72,0.24,1);padding-bottom:env(safe-area-inset-bottom);}
.meet-sheet.open{transform:translateX(-50%) translateY(0);}
.meet-head{padding:18px 24px 14px;text-align:center;border-bottom:1px solid var(--rule);}
.meet-head-title{font-family:'Noto Serif SC',serif;font-size:17px;font-weight:600;color:var(--ink);letter-spacing:0.3px;margin-bottom:4px;display:flex;align-items:center;justify-content:center;gap:8px;}
.meet-head-icon{display:inline-block;width:18px;height:18px;color:var(--accent);}
.meet-head-icon svg{width:100%;height:100%;}
.meet-head-sub{font-size:12px;color:var(--ink-3);letter-spacing:0.2px;}
.meet-info{padding:18px 28px 8px;}
.meet-row{display:flex;justify-content:space-between;align-items:baseline;padding:10px 0;border-bottom:1px dashed var(--rule);}
.meet-row:last-child{border-bottom:none;}
.meet-row-key{font-size:12px;color:var(--ink-3);letter-spacing:0.3px;}
.meet-row-val{font-family:'JetBrains Mono','Noto Sans SC',monospace;font-size:14.5px;font-weight:500;color:var(--ink);letter-spacing:0.5px;}
.meet-row-val.locked{color:var(--ink-3);}
.meet-row-val .copy{display:inline-block;margin-left:8px;color:var(--accent);font-size:11px;font-weight:400;cursor:pointer;letter-spacing:0.3px;font-family:'Noto Sans SC',sans-serif;}
.meet-foot{padding:14px 20px calc(20px + env(safe-area-inset-bottom));display:flex;gap:10px;border-top:1px solid var(--rule);}
.meet-btn{flex:1;padding:13px;border-radius:14px;font-size:14px;font-weight:500;cursor:pointer;border:none;font-family:inherit;letter-spacing:0.5px;}
.meet-btn.primary{background:var(--accent);color:white;box-shadow:0 4px 14px rgba(61,89,70,0.22);}
.meet-btn.primary:active{transform:scale(0.98);}
.meet-btn.secondary{background:transparent;color:var(--ink-2);border:1px solid var(--rule);}

/* ============ 咨询方式页（含会议号） ============ */
.cadence-page{display:flex;flex-direction:column;}
.cad-page-intro{padding:14px 24px 6px;flex-shrink:0;}
.cad-page-intro-title{font-family:'Noto Serif SC',serif;font-size:21px;font-weight:600;color:var(--ink);letter-spacing:0.3px;margin-bottom:6px;line-height:1.45;}
.cad-page-intro-sub{font-size:12.5px;color:var(--ink-3);line-height:1.85;letter-spacing:0.2px;}
.cad-panel-card{background:var(--bg-card);border:1.5px solid var(--rule);border-radius:12px;padding:14px 16px;}
.cad-panel-card-desc{font-size:12px;color:var(--ink-3);line-height:1.75;letter-spacing:0.2px;margin-bottom:12px;}
.cad-meeting-block,.cad-offline-block{display:none;}
.cad-meeting-block.show,.cad-offline-block.show{display:block;}
.cad-meeting-block .meeting-config-guide{margin:0 0 12px;}
.cad-meeting-block .meeting-config-rows{padding:0;}
.cad-meeting-block .meeting-config-actions{padding:8px 0 0;}
.cad-meeting-block .meeting-pool-card{margin:0 0 8px;}
.cad-offline-block .cad-flex-row span{min-width:72px;}
.meeting-config-guide{
  margin:12px 24px 0;
  background:rgba(184,132,90,0.06);
  border:1px solid var(--accent-border);
  border-radius:12px;
  padding:16px 18px;
  text-align:center;
}
.meeting-config-guide-head{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:8px;
  font-size:12.5px;
  font-weight:500;
  color:var(--accent);
  letter-spacing:0.3px;
  margin-bottom:10px;
}
.meeting-config-guide-title{display:block;}
.meeting-config-guide-toggle{background:none;border:none;color:var(--ink-3);font-size:11px;cursor:pointer;font-family:inherit;padding:0;}
.meeting-config-guide-body{
  font-size:12px;
  color:var(--ink-2);
  line-height:1.85;
  letter-spacing:0.2px;
  text-align:center;
  max-width:320px;
  margin:0 auto;
}
.meeting-config-summary{padding:0;font-size:12px;color:var(--ink-3);letter-spacing:0.2px;}
.meeting-config-rows{padding:0 16px 8px;}
.meeting-config-empty{padding:16px 0;text-align:center;font-size:13px;color:var(--ink-3);line-height:1.7;}
.meeting-pool-card{margin:0;padding:12px 14px;background:var(--bg);border:1px solid var(--rule);border-radius:12px;}
.meeting-pool-card-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;}
.meeting-pool-card-title{font-size:13px;font-weight:600;color:var(--ink);letter-spacing:0.2px;}
.meeting-pool-inline-row{display:flex;align-items:center;gap:8px;margin-bottom:8px;}
.meeting-pool-inline-row:last-child{margin-bottom:0;}
.meeting-pool-inline-row > span{flex-shrink:0;width:44px;font-size:12px;color:var(--ink-3);letter-spacing:0.2px;}
.meeting-pool-inline-row .meeting-config-input{flex:1;min-width:0;padding:9px 11px;}
.meeting-pool-remove{background:none;border:none;color:var(--ink-3);font-size:12px;cursor:pointer;font-family:inherit;padding:4px 0;}
.meeting-pool-field{display:block;margin-bottom:10px;}
.meeting-pool-label{display:block;font-size:11px;color:var(--ink-3);letter-spacing:0.3px;margin-bottom:6px;}
.meeting-pool-hint{font-size:11px;color:var(--ink-4);line-height:1.65;margin-top:4px;}
.meeting-config-input{width:100%;box-sizing:border-box;padding:10px 12px;border:1px solid var(--rule);border-radius:10px;font-size:13px;font-family:inherit;color:var(--ink);background:var(--bg);}
.meeting-config-input:focus{outline:none;border-color:var(--accent-border);}
.meeting-config-actions{padding:4px 0 0;}
.meeting-pool-add{width:100%;padding:12px;border-radius:12px;border:1px dashed var(--accent-border);background:rgba(184,132,90,0.04);color:var(--accent);font-size:13px;font-weight:500;cursor:pointer;font-family:inherit;}
.meeting-pool-add:active{transform:scale(0.99);}
.meet-btn.secondary:active{background:rgba(78,90,74,0.04);}

/* 免费版升级引导（在会议弹层内显示）*/
.meet-upgrade{margin:0 24px 14px;padding:14px 16px;background:var(--accent-soft);border:1px solid var(--accent-border);border-radius:12px;}
.meet-upgrade-title{font-family:'Noto Serif SC',serif;font-size:14px;font-weight:600;color:var(--ink);margin-bottom:6px;letter-spacing:0.3px;display:flex;align-items:center;gap:6px;}
.meet-upgrade-title::before{content:'⚡';color:var(--accent);}
.meet-upgrade-body{font-size:12px;color:var(--ink-2);line-height:1.85;letter-spacing:0.2px;}

/* ============ 订阅与账号（模块 5）============ */
.sub-page{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--bg);z-index:408;display:flex;flex-direction:column;overflow-y:auto;}
/* removed for PageStack */

/* === 订阅状态主页 === */
.sub-hero{padding:24px 28px 22px;text-align:center;background:linear-gradient(180deg, var(--accent-soft) 0%, var(--bg) 100%);}
.sub-hero-tag{display:inline-block;font-size:10.5px;color:var(--accent);letter-spacing:2px;padding:2px 12px;border-radius:8px;background:var(--bg-card);border:1px solid var(--accent-border);margin-bottom:14px;}
.sub-hero-name{font-family:'Noto Serif SC',serif;font-size:24px;font-weight:600;color:var(--ink);letter-spacing:0.5px;margin-bottom:8px;}
.sub-hero-meta{font-size:12.5px;color:var(--ink-3);line-height:1.95;letter-spacing:0.2px;}
.sub-hero-meta b{color:var(--ink-2);font-weight:500;font-family:'Noto Serif SC',serif;}
.sub-hero-meta .warn{color:var(--warm);}

/* 续费倒计时卡 */
.sub-expiry-card{margin:0 24px 18px;padding:14px 18px;background:var(--bg-card);border:1.5px solid var(--accent);border-radius:14px;display:flex;align-items:center;gap:14px;box-shadow:0 4px 14px rgba(61,89,70,0.08);}
.sub-expiry-icon{flex-shrink:0;width:36px;height:36px;border-radius:50%;background:var(--accent);color:white;display:flex;align-items:center;justify-content:center;}
.sub-expiry-icon svg{width:18px;height:18px;}
.sub-expiry-body{flex:1;min-width:0;}
.sub-expiry-text{font-size:13px;color:var(--ink);font-weight:500;margin-bottom:2px;letter-spacing:0.2px;}
.sub-expiry-text b{color:var(--accent);font-family:'Noto Serif SC',serif;font-weight:600;}
.sub-expiry-sub{font-size:11.5px;color:var(--ink-3);line-height:1.6;}
.sub-expiry-btn{padding:7px 14px;background:var(--accent);color:white;border:none;border-radius:14px;font-size:12px;cursor:pointer;font-family:inherit;font-weight:500;flex-shrink:0;letter-spacing:0.3px;}
.sub-expiry-btn:active{transform:scale(0.96);}

/* 入口列表 */
.sub-entry-list{padding:0 24px 18px;display:flex;flex-direction:column;gap:8px;}
.sub-entry-card{background:var(--bg-card);border:1px solid var(--rule);border-radius:12px;padding:14px 16px;cursor:pointer;display:flex;align-items:center;gap:12px;transition:transform 0.15s;}
.sub-entry-card:active{transform:scale(0.995);}
.sub-entry-icon{flex-shrink:0;width:34px;height:34px;border-radius:50%;background:var(--accent-soft);color:var(--accent);display:flex;align-items:center;justify-content:center;}
.sub-entry-icon svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;}
.sub-entry-body{flex:1;min-width:0;}
.sub-entry-title{font-size:13.5px;color:var(--ink);font-weight:500;letter-spacing:0.2px;margin-bottom:2px;}
.sub-entry-sub{font-size:11.5px;color:var(--ink-3);line-height:1.65;letter-spacing:0.2px;}
.sub-entry-arrow{flex-shrink:0;color:var(--ink-4);font-size:18px;font-weight:300;}

/* 更多设置 · 折叠条 */
.more-toggle{padding:12px 16px;display:flex;align-items:center;justify-content:space-between;cursor:pointer;border-radius:12px;transition:background 0.15s;margin-top:4px;}
.more-toggle:active{background:var(--accent-soft);}
.more-toggle-body{display:flex;flex-direction:column;gap:2px;}
.more-toggle-label{font-size:12.5px;color:var(--ink-3);letter-spacing:0.3px;}
.more-toggle-sub{font-size:10.5px;color:var(--ink-4);letter-spacing:0.5px;}
.more-toggle-arrow{font-size:16px;color:var(--ink-4);font-weight:300;transition:transform 0.25s ease;}
.more-toggle.open .more-toggle-arrow{transform:rotate(90deg);}

.more-entries{max-height:0;overflow:hidden;transition:max-height 0.3s ease;display:flex;flex-direction:column;gap:8px;}
.more-entries.open{max-height:600px;}
.more-entries .sub-entry-card:first-child{margin-top:4px;}

/* === 续费页 === */
.sub-plans{padding:20px 24px 14px;display:flex;flex-direction:column;gap:10px;}
.sub-plan-card{background:var(--bg-card);border:1.5px solid var(--rule);border-radius:16px;padding:18px 20px;cursor:pointer;transition:all 0.18s;position:relative;}
.sub-plan-card:active{transform:scale(0.99);}
.sub-plan-card.selected{border-color:var(--accent);background:var(--accent-soft);box-shadow:0 4px 14px rgba(61,89,70,0.1);}
.sub-plan-card.recommended{border-color:var(--accent);}
.sub-plan-badge{position:absolute;top:-8px;right:16px;background:var(--accent);color:white;font-size:10.5px;padding:3px 10px;border-radius:8px;letter-spacing:0.5px;font-family:inherit;}
.sub-plan-head{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:8px;}
.sub-plan-name{font-family:'Noto Serif SC',serif;font-size:17px;font-weight:600;color:var(--ink);letter-spacing:0.3px;}
.sub-plan-price{font-family:'Noto Serif SC',serif;font-size:24px;font-weight:600;color:var(--accent);letter-spacing:0.3px;line-height:1;}
.sub-plan-price .sym{font-size:14px;margin-right:2px;vertical-align:3px;}
.sub-plan-price .unit{font-size:11px;color:var(--ink-3);font-weight:400;margin-left:3px;font-family:'Noto Sans SC',sans-serif;}
.sub-plan-meta{font-size:12px;color:var(--ink-3);line-height:1.85;letter-spacing:0.2px;}
.sub-plan-meta .save{color:var(--accent);font-weight:500;}

.sub-features{padding:14px 24px 18px;}
.sub-features-label{font-size:11px;color:var(--accent);letter-spacing:2.5px;margin-bottom:12px;opacity:0.85;}
.sub-features-list{background:var(--bg-card);border:1px solid var(--rule);border-radius:14px;padding:14px 18px;}
.sub-feature-item{display:flex;align-items:flex-start;gap:10px;padding:8px 0;font-size:13px;color:var(--ink-2);line-height:1.85;letter-spacing:0.2px;}
.sub-feature-item:not(:last-child){border-bottom:1px dashed var(--rule);}
.sub-feature-check{flex-shrink:0;width:16px;height:16px;color:var(--accent);margin-top:3px;}
.sub-feature-check svg{width:100%;height:100%;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;}

.sub-pay-foot{padding:14px 20px calc(20px + env(safe-area-inset-bottom));background:rgba(244,242,238,0.96);backdrop-filter:blur(10px);border-top:1px solid var(--rule);position:sticky;bottom:0;flex-shrink:0;}
.sub-pay-summary{font-size:11.5px;color:var(--ink-3);margin-bottom:8px;text-align:center;letter-spacing:0.2px;}
.sub-pay-summary b{font-family:'Noto Serif SC',serif;color:var(--ink);font-size:14px;font-weight:600;}
.sub-pay-btn{width:100%;padding:14px;background:var(--accent);color:white;border:none;border-radius:14px;font-size:15px;font-weight:500;letter-spacing:0.5px;cursor:pointer;font-family:inherit;box-shadow:0 4px 14px rgba(61,89,70,0.25);}
.sub-pay-btn:active{transform:scale(0.98);}

/* === 账号设置 === */
.acc-section{padding:14px 24px 6px;}
.acc-section-label{font-size:11px;color:var(--accent);letter-spacing:2.5px;margin-bottom:12px;opacity:0.85;}
.acc-list{background:var(--bg-card);border:1px solid var(--rule);border-radius:12px;overflow:hidden;}
.acc-item{padding:14px 18px;display:flex;align-items:center;gap:14px;border-bottom:1px solid var(--rule);cursor:pointer;transition:background 0.15s;}
.acc-item:last-child{border-bottom:none;}
.acc-item:active{background:rgba(78,90,74,0.04);}
.acc-item.no-action{cursor:default;}
.acc-item.no-action:active{background:transparent;}
.acc-item-key{font-size:13px;color:var(--ink);font-weight:500;letter-spacing:0.2px;flex-shrink:0;min-width:80px;}
.acc-item-val{flex:1;font-size:12.5px;color:var(--ink-3);text-align:right;letter-spacing:0.2px;}
.acc-item-val.mono{font-family:'JetBrains Mono','Noto Sans SC',monospace;}
.acc-item-arrow{flex-shrink:0;color:var(--ink-4);font-size:16px;font-weight:300;}

.acc-device-list{background:var(--bg-card);border:1px solid var(--rule);border-radius:12px;overflow:hidden;}
.acc-device-item{padding:14px 18px;display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--rule);}
.acc-device-item:last-child{border-bottom:none;}
.acc-device-icon{flex-shrink:0;width:32px;height:32px;border-radius:50%;background:var(--accent-soft);color:var(--accent);display:flex;align-items:center;justify-content:center;}
.acc-device-icon svg{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;}
.acc-device-body{flex:1;min-width:0;}
.acc-device-name{font-size:13px;color:var(--ink);font-weight:500;letter-spacing:0.2px;margin-bottom:2px;}
.acc-device-name .current-tag{font-size:9.5px;letter-spacing:0.5px;padding:1px 6px;border-radius:5px;background:rgba(107,143,94,0.12);color:var(--green);margin-left:6px;vertical-align:1px;font-weight:400;}
.acc-device-meta{font-size:11px;color:var(--ink-3);line-height:1.65;letter-spacing:0.2px;}
.acc-device-action{padding:5px 11px;background:transparent;border:1px solid var(--rule);color:var(--ink-3);border-radius:12px;font-size:11px;cursor:pointer;font-family:inherit;letter-spacing:0.2px;}
.acc-device-action:active{background:rgba(78,90,74,0.04);}

.acc-logout{margin:8px 24px 24px;padding:13px;background:transparent;border:1px solid #B85A5A;color:#B85A5A;border-radius:14px;font-size:14px;cursor:pointer;font-family:inherit;width:calc(100% - 48px);letter-spacing:0.3px;}
.acc-logout:active{background:rgba(184,90,90,0.05);}

/* === 隐私与合规 === */
.priv-intro{padding:18px 28px 14px;text-align:center;}
.priv-intro-title{font-family:'Noto Serif SC',serif;font-size:22px;font-weight:600;color:var(--ink);letter-spacing:0.3px;margin-bottom:8px;line-height:1.45;}
.priv-intro-sub{font-size:13px;color:var(--ink-3);line-height:1.95;letter-spacing:0.2px;}

.priv-section{padding:12px 24px 4px;}
.priv-section-label{font-size:11px;color:var(--accent);letter-spacing:2.5px;margin-bottom:12px;opacity:0.85;}
.priv-card{background:var(--bg-card);border:1px solid var(--rule);border-radius:12px;padding:14px 16px;margin-bottom:8px;}
.priv-card-title{font-family:'Noto Serif SC',serif;font-size:13.5px;font-weight:500;color:var(--ink);letter-spacing:0.3px;margin-bottom:6px;line-height:1.55;display:flex;align-items:flex-start;gap:8px;}
.priv-card-icon{flex-shrink:0;width:14px;height:14px;color:var(--accent);margin-top:3px;}
.priv-card-icon svg{width:100%;height:100%;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}
.priv-card-body{font-size:12.5px;color:var(--ink-2);line-height:1.95;letter-spacing:0.2px;}
.priv-card-body b{color:var(--ink);font-weight:500;}

.priv-right-list{background:var(--bg-card);border:1px solid var(--rule);border-radius:12px;overflow:hidden;}
.priv-right-item{padding:13px 18px;display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--rule);cursor:pointer;transition:background 0.15s;}
.priv-right-item:last-child{border-bottom:none;}
.priv-right-item:active{background:rgba(78,90,74,0.04);}
.priv-right-body{flex:1;min-width:0;}
.priv-right-name{font-size:13px;color:var(--ink);font-weight:500;margin-bottom:2px;letter-spacing:0.2px;}
.priv-right-desc{font-size:11px;color:var(--ink-3);line-height:1.65;letter-spacing:0.2px;}

/* === 帮助中心 === */
.help-search{padding:12px 24px 16px;}
.help-search-input{width:100%;padding:11px 16px 11px 38px;background:var(--bg-card);border:1px solid var(--rule);border-radius:22px;font-size:13px;color:var(--ink);outline:none;font-family:inherit;letter-spacing:0.2px;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%237A8377' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'><circle cx='11' cy='11' r='8'/><line x1='21' y1='21' x2='16.65' y2='16.65'/></svg>");background-repeat:no-repeat;background-position:12px center;background-size:16px 16px;}
.help-search-input::placeholder{color:var(--ink-4);}
.help-search-input:focus{border-color:var(--accent);}

.help-faq-group{padding:8px 24px 18px;}
.help-faq-group-label{font-size:11px;color:var(--accent);letter-spacing:2.5px;margin-bottom:12px;opacity:0.85;}
.help-faq-list{background:var(--bg-card);border:1px solid var(--rule);border-radius:12px;overflow:hidden;}
.help-faq-item{border-bottom:1px solid var(--rule);}
.help-faq-item:last-child{border-bottom:none;}
.help-faq-q{padding:14px 18px;display:flex;align-items:center;gap:10px;cursor:pointer;}
.help-faq-q:active{background:rgba(78,90,74,0.04);}
.help-faq-q-text{flex:1;font-size:13px;color:var(--ink);font-weight:500;letter-spacing:0.2px;line-height:1.55;}
.help-faq-q-icon{flex-shrink:0;color:var(--ink-4);font-size:14px;transition:transform 0.2s;}
.help-faq-item.open .help-faq-q-icon{transform:rotate(180deg);color:var(--accent);}
.help-faq-a{display:none;padding:0 18px 14px;font-size:12.5px;color:var(--ink-2);line-height:1.95;letter-spacing:0.2px;}
.help-faq-item.open .help-faq-a{display:block;}
.help-faq-a b{color:var(--ink);font-weight:500;}

.help-contact{margin:8px 24px 24px;padding:16px 18px;background:var(--accent-soft);border:1px solid var(--accent-border);border-radius:14px;}
.help-contact-title{font-family:'Noto Serif SC',serif;font-size:14px;font-weight:600;color:var(--ink);letter-spacing:0.3px;margin-bottom:8px;}
.help-contact-body{font-size:12px;color:var(--ink-2);line-height:1.95;letter-spacing:0.2px;}
.help-contact-body b{color:var(--accent);font-weight:500;font-family:'Noto Serif SC',serif;}

/* ============ 协议模板查看 + 节奏与政策 ============ */
.tpl-page{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--bg);z-index:408;display:flex;flex-direction:column;overflow-y:auto;}
/* removed for PageStack */

/* 协议模板 · tab 切换 */
.tpl-tabs{padding:8px 24px 14px;display:flex;gap:6px;}
.tpl-tab{flex:1;padding:9px 0;background:transparent;border:1px solid var(--rule);color:var(--ink-3);border-radius:14px;font-size:12.5px;cursor:pointer;font-family:inherit;letter-spacing:0.5px;text-align:center;}
.tpl-tab.active{background:var(--accent);color:white;border-color:var(--accent);font-weight:500;}

/* 协议内容容器 */
.tpl-body{padding:0 24px 24px;}
.tpl-intro{padding:14px 16px;background:var(--warm-soft);border:1px solid var(--warm-border);border-radius:12px;font-size:11.5px;color:var(--ink-3);line-height:1.85;letter-spacing:0.2px;margin-bottom:18px;}
.tpl-intro b{color:var(--ink-2);font-weight:500;}

.tpl-section{margin-bottom:18px;}
.tpl-section-label{font-size:11px;color:var(--accent);letter-spacing:2.5px;margin-bottom:10px;opacity:0.85;}

.tpl-clause{background:var(--bg-card);border:1px solid var(--rule);border-radius:12px;padding:14px 16px;margin-bottom:8px;}
.tpl-clause-head{display:flex;align-items:flex-start;gap:8px;margin-bottom:6px;}
.tpl-clause-no{flex-shrink:0;font-family:'Noto Serif SC',serif;font-size:12px;color:var(--accent);font-weight:600;letter-spacing:0.3px;min-width:28px;}
.tpl-clause-title{flex:1;font-family:'Noto Serif SC',serif;font-size:13.5px;font-weight:500;color:var(--ink);letter-spacing:0.3px;line-height:1.55;}
.tpl-clause-body{font-size:12.5px;color:var(--ink-2);line-height:2;letter-spacing:0.2px;}
.tpl-clause-body b{color:var(--ink);font-weight:500;}
.tpl-clause-body .dyn{color:var(--accent);background:var(--accent-soft);padding:1px 6px;border-radius:5px;font-family:'JetBrains Mono','Noto Sans SC',monospace;font-size:11.5px;letter-spacing:0.2px;}
.tpl-clause-body ul{margin:6px 0 0 0;padding-left:20px;}
.tpl-clause-body li{margin-bottom:4px;}

/* 字段说明卡 */
.tpl-fields-card{background:var(--accent-soft);border:1px dashed var(--accent-border);border-radius:12px;padding:14px 16px;font-size:11.5px;color:var(--ink-2);line-height:1.95;letter-spacing:0.2px;}
.tpl-fields-card-title{font-size:11px;color:var(--accent);letter-spacing:1.5px;margin-bottom:8px;font-weight:500;}
.tpl-fields-card .dyn{color:var(--accent);background:white;padding:1px 6px;border-radius:5px;font-family:'JetBrains Mono','Noto Sans SC',monospace;font-size:10.5px;letter-spacing:0.2px;margin:0 3px;}

/* === 节奏与政策（可配置） === */
.cad-section{padding:14px 24px 6px;}
.cad-section-label{font-size:11px;color:var(--accent);letter-spacing:2.5px;margin-bottom:12px;opacity:0.85;}

/* 选项卡式选择 */
.cad-options{display:flex;flex-direction:column;gap:8px;}
.cad-option{background:var(--bg-card);border:1.5px solid var(--rule);border-radius:12px;padding:14px 16px;cursor:pointer;display:flex;gap:12px;align-items:flex-start;transition:all 0.15s;}
.cad-option:active{transform:scale(0.99);}
.cad-option.selected{border-color:var(--accent);background:var(--accent-soft);}
.cad-option-radio{flex-shrink:0;width:18px;height:18px;border:1.5px solid var(--ink-4);border-radius:50%;margin-top:2px;position:relative;}
.cad-option.selected .cad-option-radio{border-color:var(--accent);}
.cad-option.selected .cad-option-radio::after{content:'';position:absolute;inset:3px;background:var(--accent);border-radius:50%;}
.cad-option-body{flex:1;min-width:0;}
.cad-option-title{font-size:14px;color:var(--ink);font-weight:500;margin-bottom:3px;letter-spacing:0.2px;}
.cad-option.selected .cad-option-title{color:var(--accent);}
.cad-option-desc{font-size:11.5px;color:var(--ink-3);line-height:1.7;letter-spacing:0.2px;}
.cad-option-tag{display:inline-block;font-size:9.5px;color:var(--accent);background:rgba(61,89,70,0.10);padding:1px 7px;border-radius:5px;margin-left:6px;letter-spacing:0.5px;vertical-align:1px;font-weight:400;}
.cad-option.selected .cad-option-tag{background:rgba(255,255,255,0.6);}

/* 自定义节奏配置区 · 仅当"自定义节奏"选项被选中时展开 */
.cad-flex-config{display:none;margin-top:10px;padding-top:10px;border-top:1px dashed rgba(61,89,70,0.2);}
.cad-flex-config.show{display:block;}
.cad-option.selected .cad-flex-config{display:block;}
.cad-single-btn{margin-top:14px;width:100%;padding:12px;border:1px solid var(--accent);background:var(--accent-soft);color:var(--accent);border-radius:10px;font-family:inherit;font-size:13.5px;font-weight:600;cursor:pointer;}
.cad-single-btn:active{opacity:0.85;}
.cad-flex-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:13px;color:var(--ink);}
.cad-flex-input{width:48px;padding:6px 8px;background:white;border:1px solid var(--rule);border-radius:8px;text-align:center;font-family:'JetBrains Mono','Noto Sans SC',monospace;font-size:14px;color:var(--ink);font-weight:600;outline:none;box-sizing:border-box;}
.cad-flex-input:focus{border-color:var(--accent);}
.cad-flex-select{padding:6px 8px;background:white;border:1px solid var(--rule);border-radius:8px;font-family:inherit;font-size:13px;color:var(--ink);outline:none;cursor:pointer;}
.cad-flex-select:focus{border-color:var(--accent);}
.cad-flex-preview{margin-top:10px;font-size:11.5px;color:var(--ink-3);letter-spacing:0.3px;}
.cad-flex-preview span{color:var(--accent);font-weight:500;}

/* Toggle 卡（按实际时长计费 等开关项）*/
.cad-toggle-card{background:var(--bg-card);border:1.5px solid var(--rule);border-radius:12px;padding:14px 16px;margin-top:10px;cursor:pointer;display:flex;align-items:center;gap:14px;transition:all 0.15s;}
.cad-toggle-card:active{background:var(--accent-soft);}
.cad-toggle-body{flex:1;min-width:0;}
.cad-toggle-title{font-size:13.5px;color:var(--ink);font-weight:500;margin-bottom:3px;letter-spacing:0.2px;}
.cad-toggle-desc{font-size:11px;color:var(--ink-3);line-height:1.7;letter-spacing:0.2px;}
.cad-toggle-switch{flex-shrink:0;width:38px;height:22px;background:var(--rule);border-radius:11px;position:relative;transition:background 0.2s;}
.cad-toggle-switch.on{background:var(--accent);}
.cad-toggle-knob{position:absolute;top:2px;left:2px;width:18px;height:18px;background:white;border-radius:50%;transition:transform 0.2s cubic-bezier(0.32,0.72,0.24,1);box-shadow:0 1px 3px rgba(0,0,0,0.15);}
.cad-toggle-switch.on .cad-toggle-knob{transform:translateX(16px);}
.cad-mode-checks{display:flex;flex-direction:column;gap:8px;}
.cad-mode-check{background:var(--bg-card);border:1.5px solid var(--rule);border-radius:12px;padding:14px 16px;display:flex;gap:12px;align-items:flex-start;cursor:pointer;transition:all 0.15s;}
.cad-mode-check:has(input:checked){border-color:var(--accent);background:var(--accent-soft);}
.cad-mode-check input{flex-shrink:0;width:18px;height:18px;margin-top:2px;accent-color:var(--accent);cursor:pointer;}
.cad-mode-check-body{flex:1;min-width:0;}
.cad-mode-check-title{font-size:14px;font-weight:500;color:var(--ink);letter-spacing:0.2px;}
.cad-mode-check-desc{font-size:11.5px;color:var(--ink-3);margin-top:3px;line-height:1.7;letter-spacing:0.2px;}
.cad-map-btn{margin-top:12px;width:100%;padding:11px 14px;border:1.5px solid var(--rule);border-radius:10px;background:var(--bg-card);font-size:13px;color:var(--accent);cursor:pointer;letter-spacing:0.2px;}
.cad-map-btn:active{background:var(--accent-soft);}

/* 信息卡（只读展示）*/
.cad-info-card{background:var(--bg-card);border:1px solid var(--rule);border-radius:12px;padding:6px 16px;}
.cad-info-row{display:flex;justify-content:space-between;align-items:baseline;padding:12px 0;font-size:13px;gap:14px;border-bottom:1px dashed var(--rule);}
.cad-info-row:last-child{border-bottom:none;}
.cad-info-key{color:var(--ink-3);font-size:12px;flex-shrink:0;letter-spacing:0.2px;}
.cad-info-val{color:var(--ink);text-align:right;font-weight:500;}
.cad-info-val.locked{color:var(--ink-3);font-weight:400;}
.cad-info-val .lock-icon{display:inline-block;font-size:10px;color:var(--ink-4);margin-right:4px;vertical-align:1px;}

/* 数字输入 */
.cad-number-input{width:100%;padding:12px 14px;background:var(--bg-card);border:1px solid var(--rule);border-radius:10px;font-family:inherit;font-size:14px;color:var(--ink);outline:none;letter-spacing:0.2px;box-sizing:border-box;text-align:center;font-family:'Noto Serif SC',serif;font-weight:500;}
.cad-number-input:focus{border-color:var(--accent);}
.cad-helper{font-size:11px;color:var(--ink-4);margin-top:6px;letter-spacing:0.2px;line-height:1.6;text-align:center;}

/* 底部保存条 */
.cadence-page .cad-foot{display:block;}
.cad-foot{padding:14px 20px calc(20px + env(safe-area-inset-bottom));background:rgba(244,242,238,0.96);backdrop-filter:blur(12px);border-top:1px solid var(--rule);flex-shrink:0;position:sticky;bottom:0;display:none;}
.cad-foot.show{display:block;}
.cad-foot-btn{width:100%;padding:13px;background:var(--accent);color:white;border:none;border-radius:14px;font-size:14px;font-weight:500;letter-spacing:0.5px;cursor:pointer;font-family:inherit;box-shadow:0 4px 14px rgba(61,89,70,0.22);}
.cad-foot-btn:active{transform:scale(0.98);}

/* ============ 财务（收入概览 + 结算明细）============ */
.fin-page{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--bg);z-index:406;display:flex;flex-direction:column !important;align-items:center;overflow-y:auto;}
.fin-main{width:100%;max-width:420px;flex:1;min-width:0;display:flex;flex-direction:column;}
/* removed for PageStack */
.fin-head{padding:calc(20px + env(safe-area-inset-top)) 20px 12px;display:flex;align-items:center;justify-content:space-between;flex-shrink:0;}
.fin-back{width:32px;height:32px;border-radius:50%;border:none;background:rgba(78,90,74,0.06);color:var(--ink);font-size:16px;cursor:pointer;}
.fin-head-title{font-family:'Noto Serif SC',serif;font-size:15px;font-weight:600;color:var(--ink);letter-spacing:0.5px;}
.fin-head-spacer{width:32px;}

/* 时间维度切换 */
.fin-period{padding:12px 24px 8px;display:flex;gap:6px;}
.fin-period-tab{flex:1;padding:8px 0;background:transparent;border:1px solid var(--rule);color:var(--ink-3);border-radius:14px;font-size:12.5px;cursor:pointer;font-family:inherit;letter-spacing:0.5px;text-align:center;}
.fin-period-tab.active{background:var(--accent);color:white;border-color:var(--accent);font-weight:500;}

/* Hero · 大字收入 */
.fin-hero{padding:18px 28px 24px;text-align:center;}
.fin-hero-label{font-size:11px;color:var(--ink-3);letter-spacing:2.5px;margin-bottom:10px;}
.fin-hero-amount{font-family:'Noto Serif SC',serif;font-size:46px;font-weight:600;color:var(--ink);letter-spacing:0.5px;line-height:1.1;margin-bottom:6px;}
.fin-hero-amount .sym{font-size:22px;margin-right:4px;vertical-align:8px;color:var(--accent);}
.fin-hero-sub{font-size:12px;color:var(--ink-3);line-height:1.85;letter-spacing:0.2px;}
.fin-hero-sub b{color:var(--ink-2);font-weight:500;}

/* 关键数字三栏 */
.fin-stats{padding:0 24px 20px;display:grid;grid-template-columns:repeat(3,1fr);gap:8px;}
.fin-stat{background:var(--bg-card);border:1px solid var(--rule);border-radius:12px;padding:12px 10px;text-align:center;}
.fin-stat-label{font-size:10.5px;color:var(--ink-3);letter-spacing:1.5px;margin-bottom:6px;}
.fin-stat-val{font-family:'Noto Serif SC',serif;font-size:18px;font-weight:600;color:var(--ink);letter-spacing:0.3px;line-height:1.1;}
.fin-stat-val .unit{font-size:11px;color:var(--ink-3);font-weight:400;font-family:'Noto Sans SC',sans-serif;margin-left:2px;}
.fin-stat-val.danger{color:#B85A5A;}

/* 6 月趋势小柱图 */
.fin-section{padding:8px 24px 18px;}
.fin-section-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:14px;}
.fin-section-label{font-size:11px;color:var(--accent);letter-spacing:2.5px;opacity:0.85;}
.fin-section-sub{font-size:11px;color:var(--ink-4);letter-spacing:0.3px;}

.fin-chart{background:var(--bg-card);border:1px solid var(--rule);border-radius:14px;padding:18px 18px 14px;}
.fin-chart-bars{display:flex;justify-content:space-between;align-items:flex-end;height:90px;gap:10px;padding:0 4px;}
.fin-chart-col{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;}
.fin-chart-bar{width:100%;background:var(--accent-soft);border-radius:5px 5px 0 0;transition:height 0.4s ease;min-height:4px;position:relative;}
.fin-chart-col.current .fin-chart-bar{background:var(--accent);}
.fin-chart-val{font-family:'JetBrains Mono',monospace;font-size:10px;color:var(--ink-3);letter-spacing:0.2px;}
.fin-chart-col.current .fin-chart-val{color:var(--accent);font-weight:600;}
.fin-chart-labels{display:flex;justify-content:space-between;margin-top:10px;padding:0 4px;border-top:1px dashed var(--rule);padding-top:8px;}
.fin-chart-label{flex:1;text-align:center;font-size:10.5px;color:var(--ink-3);letter-spacing:0.2px;}
.fin-chart-col.current ~ .fin-chart-labels .fin-chart-label{color:var(--ink-3);}

/* 入口卡 */
.fin-entry-card{margin:0 24px 18px;background:var(--bg-card);border:1px solid var(--rule);border-radius:14px;padding:14px 16px;cursor:pointer;display:flex;align-items:center;gap:12px;transition:transform 0.15s;}
.fin-entry-card:active{transform:scale(0.995);}
.fin-entry-icon{flex-shrink:0;width:36px;height:36px;border-radius:50%;background:var(--accent-soft);color:var(--accent);display:flex;align-items:center;justify-content:center;}
.fin-entry-icon svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;}
.fin-entry-body{flex:1;min-width:0;}
.fin-entry-title{font-size:13.5px;color:var(--ink);font-weight:500;letter-spacing:0.2px;margin-bottom:2px;}
.fin-entry-sub{font-size:11.5px;color:var(--ink-3);line-height:1.65;letter-spacing:0.2px;}
.fin-entry-sub b{color:var(--ink-2);font-weight:500;}
.fin-entry-arrow{flex-shrink:0;color:var(--ink-4);font-size:18px;font-weight:300;}

/* 手续费提示 */
.fin-fee-note{margin:0 24px 20px;padding:11px 14px;background:var(--warm-soft);border:1px solid var(--warm-border);border-radius:10px;font-size:11.5px;color:var(--ink-3);line-height:1.85;letter-spacing:0.2px;}
.fin-fee-note b{color:var(--ink-2);font-weight:500;}

/* === 结算明细页 === */
.fin-filter{padding:8px 24px 12px;display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;}
.fin-filter::-webkit-scrollbar{display:none;}
.fin-filter-chip{flex-shrink:0;padding:6px 14px;background:transparent;border:1px solid var(--rule);color:var(--ink-3);border-radius:14px;font-size:12px;cursor:pointer;font-family:inherit;letter-spacing:0.2px;white-space:nowrap;}
.fin-filter-chip.active{background:var(--accent);color:white;border-color:var(--accent);font-weight:500;}

.fin-list-section{padding:8px 24px 24px;}
.fin-list-day{margin-bottom:18px;}
.fin-list-day-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:8px;padding:0 4px;}
.fin-list-day-date{font-family:'Noto Serif SC',serif;font-size:13px;font-weight:500;color:var(--ink-2);letter-spacing:0.3px;}
.fin-list-day-total{font-family:'Noto Serif SC',serif;font-size:13px;color:var(--green);font-weight:600;letter-spacing:0.3px;}

.fin-list-item{background:var(--bg-card);border:1px solid var(--rule);border-radius:12px;padding:12px 14px;margin-bottom:6px;display:flex;align-items:center;gap:10px;cursor:pointer;transition:transform 0.15s;}
.fin-list-item:active{transform:scale(0.995);}
.fin-list-item-avatar{flex-shrink:0;width:32px;height:32px;border-radius:50%;background:var(--warm-soft);color:var(--warm);font-family:'Noto Serif SC',serif;font-size:13px;font-weight:600;display:flex;align-items:center;justify-content:center;}
.fin-list-item-body{flex:1;min-width:0;}
.fin-list-item-row{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:2px;}
.fin-list-item-name{font-size:13.5px;color:var(--ink);font-weight:500;letter-spacing:0.2px;}
.fin-list-item-amount{font-family:'Noto Serif SC',serif;font-size:14px;font-weight:600;color:var(--green);letter-spacing:0.3px;flex-shrink:0;}
.fin-list-item-amount.zero{color:var(--ink-3);}
.fin-list-item-meta{font-size:11px;color:var(--ink-3);line-height:1.55;letter-spacing:0.2px;}
.fin-list-item-meta .fee{color:var(--ink-4);}

.fin-empty{text-align:center;padding:40px 24px;color:var(--ink-3);}
.fin-empty-icon{width:40px;height:40px;margin:0 auto 14px;color:var(--ink-4);opacity:0.4;}
.fin-empty-icon svg{width:100%;height:100%;stroke:currentColor;fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;}
.fin-empty-text{font-size:13px;line-height:1.85;}

/* ============ 业务配置（入口 + 套餐 + 时段）============ */
.biz-page{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--bg);z-index:406;display:flex;flex-direction:column;overflow-y:auto;}
/* removed for PageStack */
.biz-head{padding:calc(20px + env(safe-area-inset-top)) 20px 12px;display:flex;align-items:center;justify-content:space-between;flex-shrink:0;}
.biz-back{width:32px;height:32px;border-radius:50%;border:none;background:rgba(78,90,74,0.06);color:var(--ink);font-size:16px;cursor:pointer;}
.biz-head-title{font-family:'Noto Serif SC',serif;font-size:15px;font-weight:600;color:var(--ink);letter-spacing:0.5px;}
.biz-head-add{width:32px;height:32px;border-radius:50%;border:1px solid var(--accent-border);background:var(--bg-card);color:var(--accent);cursor:pointer;display:flex;align-items:center;justify-content:center;}
.biz-head-add svg{width:16px;height:16px;}
.biz-head-add:active{transform:scale(0.95);background:var(--accent-soft);}
.biz-head-spacer{width:32px;}

.biz-intro{padding:14px 24px 18px;}
.biz-intro-title{font-family:'Noto Serif SC',serif;font-size:21px;font-weight:600;color:var(--ink);letter-spacing:0.3px;margin-bottom:6px;line-height:1.45;}
.biz-intro-sub{font-size:12.5px;color:var(--ink-3);line-height:1.85;}

/* 入口列表（业务配置首页）*/
.biz-entry-list{padding:0 24px 24px;display:flex;flex-direction:column;gap:10px;}
.biz-entry-card{background:var(--bg-card);border:1px solid var(--rule);border-radius:14px;padding:16px 18px;cursor:pointer;display:flex;align-items:center;gap:14px;transition:transform 0.15s;}
.biz-entry-card:active{transform:scale(0.99);}
.biz-entry-card.readonly{background:rgba(78,90,74,0.02);border-style:dashed;}
.biz-entry-icon{flex-shrink:0;width:40px;height:40px;border-radius:50%;background:var(--accent-soft);color:var(--accent);display:flex;align-items:center;justify-content:center;}
.biz-entry-icon svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;}
.biz-entry-body{flex:1;min-width:0;}
.biz-entry-title{font-size:14px;color:var(--ink);font-weight:500;letter-spacing:0.2px;margin-bottom:3px;display:flex;align-items:center;gap:8px;}
.biz-entry-title-tag{font-size:10px;letter-spacing:0.5px;padding:1px 6px;border-radius:5px;background:rgba(78,90,74,0.08);color:var(--ink-3);font-weight:400;}
.biz-entry-sub{font-size:11.5px;color:var(--ink-3);line-height:1.7;letter-spacing:0.2px;}
.biz-entry-sub b{color:var(--ink-2);font-weight:500;}
.biz-entry-arrow{flex-shrink:0;color:var(--ink-4);font-size:18px;font-weight:300;}

/* 套餐 / 时段 卡片 */
.biz-section{padding:8px 24px 18px;}
.biz-section-label{font-size:11px;color:var(--accent);letter-spacing:2.5px;margin-bottom:14px;opacity:0.85;}
.biz-section-hint{font-size:11.5px;color:var(--ink-4);margin-top:-8px;margin-bottom:14px;line-height:1.7;}

.biz-card-list{display:flex;flex-direction:column;gap:10px;}
.biz-card{background:var(--bg-card);border:1px solid var(--rule);border-radius:14px;padding:14px 18px;}
.biz-card.disabled{opacity:0.55;}
.biz-card-head{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:6px;gap:10px;}
.biz-card-title{font-family:'Noto Serif SC',serif;font-size:15px;font-weight:600;color:var(--ink);letter-spacing:0.3px;line-height:1.5;}
.biz-card-title .meta-tag{font-size:10px;letter-spacing:0.5px;padding:1px 7px;border-radius:5px;background:var(--accent-soft);color:var(--accent);margin-left:6px;vertical-align:2px;font-family:'Noto Sans SC',sans-serif;font-weight:500;}
.biz-card-price{font-family:'Noto Serif SC',serif;font-size:18px;font-weight:600;color:var(--accent);letter-spacing:0.3px;flex-shrink:0;line-height:1.3;}
.biz-card-meta{font-size:12px;color:var(--ink-3);line-height:1.85;letter-spacing:0.2px;margin-bottom:12px;}
.biz-card-meta b{color:var(--ink-2);font-weight:500;}
.biz-card-foot{display:flex;align-items:center;justify-content:space-between;border-top:1px dashed var(--rule);padding-top:10px;}
.biz-toggle{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--ink-3);cursor:pointer;letter-spacing:0.2px;}
.biz-toggle-switch{position:relative;width:30px;height:18px;background:var(--ink-4);border-radius:10px;transition:background 0.2s;flex-shrink:0;}
.biz-toggle.on .biz-toggle-switch{background:var(--accent);}
.biz-toggle-switch::after{content:'';position:absolute;top:2px;left:2px;width:14px;height:14px;border-radius:50%;background:white;transition:transform 0.2s;}
.biz-toggle.on .biz-toggle-switch::after{transform:translateX(12px);}
.biz-toggle-label.on{color:var(--accent);}
.biz-card-actions{display:flex;gap:8px;}
.biz-card-action{padding:5px 12px;background:transparent;border:1px solid var(--rule);color:var(--ink-2);border-radius:12px;font-size:12px;cursor:pointer;font-family:inherit;letter-spacing:0.2px;}
.biz-card-action:active{background:rgba(78,90,74,0.05);}
.biz-card-action.danger{color:#B85A5A;}
.biz-card-action.danger:active{background:rgba(184,90,90,0.05);}

/* 时段网格 · 每周可约时间模板 */
.biz-grid-card{margin:0 auto 18px;width:calc(100% - 48px);max-width:372px;box-sizing:border-box;padding:18px 18px 16px;background:var(--bg-card);border:1px solid var(--rule);border-radius:18px;}
.biz-grid-head{display:flex;align-items:flex-start;gap:8px;margin-bottom:14px;}
.biz-grid-icon{flex-shrink:0;width:20px;height:20px;color:var(--accent);margin-top:1px;}
.biz-grid-icon svg{width:100%;height:100%;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;}
.biz-grid-title{flex:1;font-family:'Noto Serif SC',serif;font-size:15px;font-weight:600;color:var(--ink);letter-spacing:0.3px;line-height:1.5;}
.biz-grid-sub{font-size:11.5px;color:var(--ink-3);line-height:1.8;margin-bottom:14px;letter-spacing:0.2px;}

/* 网格本身 */
.biz-grid{display:grid;grid-template-columns:36px repeat(7, 1fr);gap:4px;}
.biz-grid-col-head{font-size:11px;color:var(--ink-3);text-align:center;padding:4px 0 8px;letter-spacing:0.2px;}
.biz-grid-col-head.weekend{color:var(--ink-4);}
.biz-grid-time{font-size:10.5px;color:var(--ink-4);text-align:right;padding:8px 6px 0 0;letter-spacing:0.2px;font-family:'JetBrains Mono',monospace;}
.biz-grid-cell{height:30px;background:var(--bg);border-radius:6px;cursor:pointer;transition:all 0.13s;display:flex;align-items:center;justify-content:center;color:transparent;}
.biz-grid-cell:active{transform:scale(0.93);}
.biz-grid-cell.on{background:var(--accent);color:white;font-size:13px;font-weight:600;}
.biz-grid-cell.on::before{content:'✓';}

/* 展开按钮 */
.biz-grid-expand{margin-top:14px;text-align:center;}
.biz-grid-expand-btn{padding:6px 14px;background:transparent;border:1px solid var(--rule);color:var(--ink-3);border-radius:14px;font-size:11.5px;cursor:pointer;font-family:inherit;letter-spacing:0.2px;}
.biz-grid-expand-btn:active{background:rgba(78,90,74,0.04);}
.biz-grid-expand-btn .arrow{display:inline-block;margin-left:4px;transition:transform 0.2s;}
.biz-grid-expand-btn.expanded .arrow{transform:rotate(180deg);}

/* 当前可约总览 */
.biz-grid-summary{margin-top:14px;padding-top:14px;border-top:1px dashed var(--rule);display:flex;justify-content:space-between;align-items:center;gap:12px;}
.biz-grid-summary-text{font-size:12px;color:var(--ink-3);letter-spacing:0.2px;line-height:1.7;}
.biz-grid-summary-text b{color:var(--accent);font-weight:600;font-family:'Noto Serif SC',serif;}
.biz-grid-summary-clear{padding:5px 12px;background:transparent;border:1px solid var(--rule);color:var(--ink-3);border-radius:12px;font-size:11.5px;cursor:pointer;font-family:inherit;letter-spacing:0.2px;flex-shrink:0;}
.biz-grid-summary-clear:active{background:rgba(78,90,74,0.04);}

/* 空状态 */
.biz-empty{text-align:center;padding:36px 28px;color:var(--ink-3);background:var(--bg-card);border:1px dashed var(--rule);border-radius:14px;}
.biz-empty-icon{width:40px;height:40px;margin:0 auto 12px;color:var(--ink-4);opacity:0.5;}
.biz-empty-icon svg{width:100%;height:100%;stroke:currentColor;fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;}
.biz-empty-text{font-size:13px;line-height:1.85;margin-bottom:12px;}
.biz-empty-text b{color:var(--ink-2);font-weight:500;}
.biz-empty-btn{display:inline-block;padding:8px 18px;background:var(--accent);color:white;border:none;border-radius:18px;font-size:12.5px;cursor:pointer;font-family:inherit;letter-spacing:0.3px;}

.biz-card-home-row{display:flex;align-items:center;justify-content:space-between;margin-top:12px;padding-top:12px;border-top:1px solid var(--rule);}
.biz-card-scenes-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;padding-top:12px;border-top:1px solid var(--rule);flex-wrap:wrap;}
.biz-card-home-text{font-size:12px;color:var(--ink-3);letter-spacing:0.3px;flex-shrink:0;}
.biz-card-scenes{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end;}
.biz-scene-chip{font-size:10px;padding:3px 8px;border-radius:999px;background:var(--surface-2);color:var(--ink-4);letter-spacing:0.2px;border:1px solid var(--rule);}
.biz-scene-chip.on{background:rgba(var(--accent-rgb, 91, 74, 58), 0.08);color:var(--accent);border-color:rgba(var(--accent-rgb, 91, 74, 58), 0.2);}
.pkg-scene-list{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:4px;}
.pkg-scene-row{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:7px 10px;background:var(--surface-2);border-radius:8px;border:1px solid var(--rule);}
.pkg-scene-row.disabled{opacity:0.55;}
.pkg-scene-label{font-size:12px;color:var(--ink-2);letter-spacing:0.2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.pkg-scene-row .biz-toggle{flex-shrink:0;}
.pkg-scene-row .biz-toggle-label{min-width:1.2em;text-align:right;}
.biz-toggle.disabled{pointer-events:none;opacity:0.5;}
.pay-options-empty{padding:20px 16px;text-align:center;font-size:13px;color:var(--ink-4);line-height:1.6;border:1px dashed var(--rule);border-radius:12px;}

/* 编辑套餐 sheet */
.biz-sheet-mask{position:fixed;inset:0;background:rgba(44,50,41,0);z-index:407;pointer-events:none;transition:background 0.3s ease;}
.biz-sheet-mask.open{background:rgba(44,50,41,0.42);pointer-events:auto;}
.biz-sheet{position:fixed;bottom:0;left:50%;transform:translateX(-50%) translateY(100%);width:100%;max-width:420px;background:var(--bg);border-radius:24px 24px 0 0;z-index:408;transition:transform 0.32s cubic-bezier(0.32,0.72,0.24,1);padding-bottom:env(safe-area-inset-bottom);max-height:85vh;overflow-y:auto;}
.biz-sheet.open{transform:translateX(-50%) translateY(0);}
.biz-sheet-head{padding:18px 24px 8px;text-align:center;border-bottom:1px solid var(--rule);}
.biz-sheet-title{font-family:'Noto Serif SC',serif;font-size:17px;font-weight:600;color:var(--ink);letter-spacing:0.3px;margin-bottom:4px;}
.biz-sheet-sub{font-size:11.5px;color:var(--ink-3);line-height:1.7;}
.biz-sheet-body{padding:18px 24px 8px;}
.biz-field{margin-bottom:14px;}
.biz-field-label{display:block;font-size:12px;color:var(--ink-2);margin-bottom:6px;letter-spacing:0.3px;}
.biz-field-label .req{color:#B85A5A;margin-left:2px;}
.biz-field-input{width:100%;padding:12px 14px;background:var(--bg-card);border:1px solid var(--rule);border-radius:10px;font-family:inherit;font-size:14px;color:var(--ink);outline:none;transition:border-color 0.15s;letter-spacing:0.2px;box-sizing:border-box;}
.biz-field-input:focus{border-color:var(--accent);}
.biz-field-input::placeholder{color:var(--ink-4);}
.biz-field-row{display:flex;gap:10px;}
.biz-field-row > .biz-field{flex:1;}
.biz-field-helper{font-size:11px;color:var(--ink-4);margin-top:6px;letter-spacing:0.2px;line-height:1.6;}
.biz-field-helper b{color:var(--accent);font-weight:500;font-family:'Noto Serif SC',serif;}

.biz-sheet-foot{padding:14px 20px calc(20px + env(safe-area-inset-bottom));display:flex;gap:10px;border-top:1px solid var(--rule);background:var(--bg);position:sticky;bottom:0;}
.biz-sheet-btn{flex:1;padding:13px;border-radius:14px;font-size:14px;font-weight:500;letter-spacing:0.5px;cursor:pointer;border:none;font-family:inherit;}
.biz-sheet-btn.primary{background:var(--accent);color:white;box-shadow:0 4px 14px rgba(61,89,70,0.22);}
.biz-sheet-btn.primary:active{transform:scale(0.98);}
.biz-sheet-btn.primary:disabled{opacity:0.4;cursor:not-allowed;box-shadow:none;}
.biz-sheet-btn.secondary{background:transparent;color:var(--ink-2);border:1px solid var(--rule);}
.biz-sheet-btn.secondary:active{background:rgba(78,90,74,0.04);}

/* 时段适用日多选（在 sheet 内）*/
.biz-sheet-weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;margin-bottom:6px;}
.biz-sheet-weekday{padding:9px 0;background:var(--bg-card);border:1.5px solid var(--rule);border-radius:10px;text-align:center;cursor:pointer;font-size:11.5px;color:var(--ink-3);font-family:inherit;letter-spacing:0.3px;}
.biz-sheet-weekday.on{background:var(--accent-soft);border-color:var(--accent);color:var(--accent);font-weight:500;}

/* ============ 主页编辑器 ============ */
.editor-page{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--bg);z-index:405;display:flex;flex-direction:column;overflow:hidden;}
/* removed for PageStack */
.ed-head{padding:calc(20px + env(safe-area-inset-top)) 16px 12px;display:flex;align-items:center;justify-content:space-between;flex-shrink:0;border-bottom:1px solid var(--rule);background:var(--bg);}
.ed-back{width:32px;height:32px;border-radius:50%;border:none;background:rgba(78,90,74,0.06);color:var(--ink);font-size:16px;cursor:pointer;}
.ed-head-title{font-family:'Noto Serif SC',serif;font-size:15px;font-weight:600;color:var(--ink);letter-spacing:0.5px;}
.ed-head-actions{display:flex;gap:8px;}
.ed-head-btn{padding:5px 14px;border-radius:14px;font-size:12px;cursor:pointer;font-family:inherit;letter-spacing:0.3px;border:none;}
.ed-head-btn.secondary{background:transparent;color:var(--ink-2);border:1px solid var(--rule);}
.ed-head-btn.secondary:active{background:rgba(78,90,74,0.05);}
.ed-head-btn.primary{background:var(--accent);color:white;font-weight:500;}
.ed-head-btn.primary:active{transform:scale(0.96);}

/* 控制面板 */
.ed-panel{flex:1 1 auto;min-height:0;background:var(--bg);border-top:1px solid var(--rule);overflow-y:auto;padding-bottom:env(safe-area-inset-bottom);box-shadow:0 -6px 22px rgba(0,0,0,0.06);}
.ed-panel-section{padding:16px 20px 8px;}
.ed-panel-section-label{font-size:11px;color:var(--accent);letter-spacing:2.5px;margin-bottom:12px;opacity:0.85;}
.ed-panel-section + .ed-panel-section{border-top:1px solid var(--rule);}

/* 字段配置入口 */
.ed-field-list{display:flex;flex-direction:column;gap:8px;}
.ed-field-item{background:var(--bg-card);border:1px solid var(--rule);border-radius:10px;padding:13px 14px;display:flex;align-items:center;gap:12px;cursor:pointer;transition:transform 0.15s;}
.ed-field-item:active{transform:scale(0.995);}
.ed-field-icon{flex-shrink:0;width:30px;height:30px;border-radius:50%;background:var(--accent-soft);color:var(--accent);display:flex;align-items:center;justify-content:center;}
.ed-field-icon svg{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;}
.ed-field-body{flex:1;min-width:0;}
.ed-field-title{font-size:13px;color:var(--ink);font-weight:500;letter-spacing:0.2px;margin-bottom:1px;}
.ed-field-sub{font-size:11px;color:var(--ink-3);line-height:1.55;letter-spacing:0.2px;}
.ed-field-arrow{flex-shrink:0;color:var(--ink-4);font-size:18px;font-weight:300;}

/* 三屏理念提示卡(主页内容入口顶部) */
.ed-intro-card{margin-bottom:14px;padding:16px 16px 14px;background:linear-gradient(180deg, rgba(61,89,70,0.04) 0%, rgba(184,132,90,0.025) 100%);border:1px solid var(--rule);border-radius:12px;}
.ed-intro-card-title{font-family:'Noto Serif SC',serif;font-size:13px;color:var(--ink);font-weight:500;letter-spacing:0.3px;margin-bottom:10px;line-height:1.6;}
.ed-intro-card-body{display:flex;flex-direction:column;gap:6px;margin-bottom:12px;}
.ed-intro-q{font-size:12px;color:var(--ink-2);line-height:1.7;letter-spacing:0.2px;display:flex;align-items:baseline;gap:4px;flex-wrap:wrap;}
.ed-intro-q b{color:var(--ink);font-weight:500;}
.ed-intro-q span{font-size:10.5px;color:var(--accent);letter-spacing:1.5px;}
.ed-intro-card-foot{font-size:10.5px;color:var(--ink-3);letter-spacing:1.2px;text-align:center;padding-top:10px;border-top:1px dashed var(--rule);font-style:italic;}
/* —— 引导版主页编辑(v0.60)· 沿用 B 端 token —— */
.gh-mode-l{font-size:11px;color:var(--ink-3);letter-spacing:0.3px;margin-bottom:8px;}
.gh-mode{display:flex;gap:9px;margin-bottom:16px;}
.gh-mc{flex:1;background:var(--bg-card);border:1px solid var(--rule);border-radius:11px;padding:12px;cursor:pointer;}
.gh-mc.gh-on{border-color:var(--warm);background:var(--warm-soft);}
.gh-mc-t{font-family:'Noto Serif SC',serif;font-size:12.5px;font-weight:600;color:var(--ink);display:flex;align-items:center;gap:5px;}
.gh-rec{font-size:9px;font-weight:500;color:#fff;background:var(--warm);padding:1px 6px;border-radius:999px;letter-spacing:0.3px;}
.gh-mc-d{font-size:10.5px;color:var(--ink-3);margin-top:5px;line-height:1.5;}
.gh-line{background:var(--warm-soft);border:1px solid var(--warm-border);border-radius:12px;padding:13px 15px;margin-bottom:16px;}
.gh-line-t{font-size:11.5px;color:var(--ink-2);line-height:1.7;}
.gh-flow{font-family:'Noto Serif SC',serif;font-weight:600;font-size:12.5px;color:var(--warm);margin:8px 0;line-height:1.6;}
.gh-note{font-size:10.5px;color:var(--ink-3);line-height:1.6;}
.gh-step{background:var(--bg-card);border:1px solid var(--rule);border-radius:12px;padding:14px;margin-bottom:11px;}
.gh-step.gh-last{border-color:var(--warm-border);background:var(--warm-soft);}
.gh-sh{display:flex;align-items:baseline;gap:9px;}
.gh-sn{width:21px;height:21px;border-radius:50%;background:var(--accent);color:#fff;font-size:11px;font-weight:600;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.gh-step.gh-last .gh-sn{background:var(--warm);}
.gh-st{font-family:'Noto Serif SC',serif;font-weight:600;font-size:14px;color:var(--ink);}
.gh-why{font-size:11px;color:var(--ink-3);margin:3px 0 12px 30px;line-height:1.6;}
.gh-tick{display:flex;gap:9px;align-items:flex-start;padding:8px 0;border-top:1px solid var(--rule);cursor:pointer;font-size:12.5px;color:var(--ink-2);}
.gh-tick:first-of-type{border-top:none;}
.gh-bx{width:17px;height:17px;border-radius:5px;border:1.5px solid var(--ink-4);flex-shrink:0;margin-top:1px;display:flex;align-items:center;justify-content:center;font-size:11px;color:#fff;}
.gh-tick.gh-on .gh-bx{background:var(--accent);border-color:var(--accent);}
.gh-tick.gh-off{color:var(--ink-4);}.gh-tick.gh-off .gh-tt{text-decoration:line-through;}
.gh-topics{display:flex;flex-wrap:wrap;gap:7px;margin-top:13px;padding-top:12px;border-top:1px solid var(--rule);}
.gh-tp-l{font-size:11px;color:var(--ink-3);width:100%;margin-bottom:2px;}
.gh-chip{font-size:12px;padding:5px 11px;border-radius:8px;border:1px solid var(--rule);color:var(--ink-3);background:var(--bg-warm);cursor:pointer;}
.gh-chip.gh-sel{background:var(--accent-soft);color:var(--accent);border-color:transparent;}
.gh-draft{background:var(--bg-warm);border:1px solid var(--rule);border-radius:10px;padding:11px 12px;font-size:12px;line-height:1.7;color:var(--ink-2);}
.gh-draft b{color:var(--ink);font-weight:500;}
.gh-row{display:flex;align-items:center;gap:9px;font-size:12.5px;color:var(--ink-2);padding:9px 0;border-top:1px solid var(--rule);cursor:pointer;}
.gh-row:first-child{border-top:none;}
.gh-ck{color:var(--green);}.gh-v{margin-left:auto;color:var(--ink);font-size:11.5px;}.gh-go{margin-left:auto;color:var(--ink-4);}
.gh-tgl-row{display:flex;align-items:center;justify-content:space-between;padding:9px 0;border-top:1px solid var(--rule);}
.gh-tgl-row:first-child{border-top:none;}.gh-lb{font-size:12.5px;color:var(--ink-2);}
.gh-tgl{width:36px;height:21px;border-radius:999px;background:var(--ink-4);position:relative;cursor:pointer;flex-shrink:0;transition:.2s;}
.gh-tgl.gh-on{background:var(--green);}
.gh-tgl::after{content:"";position:absolute;width:17px;height:17px;border-radius:50%;background:#fff;top:2px;left:2px;transition:.2s;}.gh-tgl.gh-on::after{left:17px;}
.gh-opt{border:1px solid var(--rule);border-radius:10px;padding:10px 11px;margin-bottom:7px;display:flex;gap:9px;cursor:pointer;}
.gh-rd{width:16px;height:16px;border-radius:50%;border:1.5px solid var(--ink-4);flex-shrink:0;margin-top:2px;position:relative;}
.gh-opt.gh-on{border-color:var(--warm);background:var(--bg-card);}
.gh-opt.gh-on .gh-rd{border-color:var(--warm);}.gh-opt.gh-on .gh-rd::after{content:"";position:absolute;inset:3px;border-radius:50%;background:var(--warm);}
.gh-ot{font-family:'Noto Serif SC',serif;font-size:13px;line-height:1.5;color:var(--ink);}
.gh-distill{font-size:11px;color:var(--warm);margin:0 0 10px 0;line-height:1.6;}
.gh-mini{font-size:11px;padding:5px 11px;border-radius:999px;border:1px solid var(--rule);color:var(--ink-2);cursor:pointer;display:inline-flex;margin-top:9px;background:var(--bg-card);}
.gh-mini.gh-ai{border-color:var(--warm-border);color:var(--warm);background:var(--warm-soft);}
.gh-sub{padding:12px 0;border-top:1px dashed var(--rule);}
.gh-sub:first-of-type{border-top:none;padding-top:4px;}
.gh-sub-h{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px;}
.gh-sub-t{font-size:12px;font-weight:500;color:var(--ink-2);}
.gh-chrome{padding:8px 0 10px;margin-bottom:4px;border-bottom:1px dashed var(--rule);}
.gh-chrome-compact{padding:6px 0;margin-bottom:8px;}
.gh-chrome-row{display:flex;align-items:center;gap:10px;margin-bottom:8px;flex-wrap:wrap;}
.gh-chrome-row .gh-chrome-input{flex:1;min-width:120px;}
.gh-chrome-row .gh-eye{margin-left:auto;}
.gh-sh .gh-eye{margin-left:auto;margin-right:4px;}
.gh-diy-block-h .gh-eye{margin-left:auto;}
.gh-mod-head .gh-eye{margin-left:auto;margin-right:6px;}
.gh-chrome-l{font-size:11px;color:var(--ink-3);min-width:56px;flex-shrink:0;}
.gh-chrome-fixed{font-size:11.5px;color:var(--ink-4);}
.gh-chrome-input{flex:1;font-size:12px;padding:7px 10px;border:1px solid var(--rule);border-radius:8px;background:var(--bg);color:var(--ink-2);}
.gh-diy-block{margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--rule);}
.gh-diy-block:last-of-type{border-bottom:none;}
.gh-diy-block-h{display:flex;align-items:baseline;gap:8px;margin-bottom:10px;padding:0 2px;}
.gh-diy-block-tag{font-size:10px;color:var(--ink-4);letter-spacing:0.3px;}
.gh-diy-block-t{font-size:13px;font-weight:500;color:var(--ink-2);}
.gh-diy-block .gh-mod{margin-left:0;}
.gh-topics-wrap{margin-top:4px;}
.gh-topics-l{font-size:11px;color:var(--ink-3);margin-bottom:6px;}
.gh-topics-bank-toggle{width:100%;margin-top:10px;padding:10px 12px;border:1px dashed var(--rule);border-radius:10px;background:var(--bg-card);font-size:12px;color:var(--ink-2);cursor:pointer;display:flex;align-items:center;gap:8px;font-family:inherit;text-align:left;}
.gh-topics-bank-toggle:hover{border-color:var(--accent);color:var(--accent);}
.gh-topics-bank-toggle.gh-open .gh-topics-bank-caret{transform:rotate(180deg);}
.gh-topics-bank-meta{margin-left:auto;font-size:10px;color:var(--ink-4);white-space:nowrap;}
.gh-topics-bank-caret{font-size:10px;color:var(--ink-4);transition:transform .2s;}
.gh-topics-bank{margin-top:8px;}
.gh-topics-bank-grid{max-height:168px;overflow-y:auto;padding:10px 10px 4px;border:1px solid var(--rule);border-radius:10px;background:rgba(78,90,74,0.03);}
.gh-topics-bank-grid .gh-chip{margin:0 6px 8px 0;}
.gh-topics-picked .gh-chip{margin:0 6px 6px 0;}
.gh-eye{font-size:10px;padding:3px 9px;border-radius:999px;border:1px solid var(--rule);color:var(--ink-3);cursor:pointer;white-space:nowrap;flex-shrink:0;}
.gh-eye.gh-on{background:var(--accent-soft);color:var(--accent);border-color:transparent;}
.gh-srcline{font-size:10.5px;color:var(--ink-3);margin:0 0 9px 0;line-height:1.5;}
.gh-para{border:1px solid var(--rule);border-radius:10px;padding:10px 11px;margin-bottom:7px;display:flex;gap:9px;cursor:pointer;}
.gh-para.gh-on{border-color:var(--warm);background:var(--bg-card);}
.gh-para.gh-on .gh-rd{border-color:var(--warm);}.gh-para.gh-on .gh-rd::after{content:"";position:absolute;inset:3px;border-radius:50%;background:var(--warm);}
.gh-para p{font-size:12px;line-height:1.65;color:var(--ink);}
.gh-ta{width:100%;border:1px solid var(--rule);border-radius:10px;padding:10px 11px;font-family:inherit;font-size:12px;line-height:1.65;color:var(--ink);background:var(--bg-warm);min-height:62px;resize:vertical;box-sizing:border-box;margin-bottom:2px;}
/* 来访评价编辑 */
.rv-item{background:var(--bg-card);border:1px solid var(--rule);border-radius:12px;padding:12px;margin-bottom:10px;}
.rv-item-h{display:flex;align-items:center;justify-content:space-between;margin-bottom:9px;}
.rv-eye{font-size:10px;padding:3px 9px;border-radius:999px;border:1px solid var(--rule);color:var(--ink-3);cursor:pointer;}
.rv-eye.gh-on{background:var(--accent-soft);color:var(--accent);border-color:transparent;}
.rv-del{font-size:11px;color:#b5524a;cursor:pointer;}
.rv-meta-input{width:100%;border:1px solid var(--rule);border-radius:8px;padding:8px 10px;font-family:inherit;font-size:11.5px;color:var(--ink-2);background:var(--bg-warm);margin-top:7px;box-sizing:border-box;}
.rv-add{text-align:center;border:1px dashed var(--rule);border-radius:10px;padding:11px;font-size:12.5px;color:var(--accent);cursor:pointer;margin-top:2px;}
/* 自己拼模块 · 模块库 */
.gh-diy-tip{font-size:11.5px;color:var(--ink-3);line-height:1.6;margin-bottom:13px;}
.gh-mod{background:var(--bg-card);border:1px solid var(--rule);border-radius:11px;padding:13px 14px;margin-bottom:8px;}
.gh-mod-head{display:flex;align-items:center;gap:11px;cursor:pointer;}
.gh-mod-caret{color:var(--ink-4);font-size:11px;transition:transform .2s;}
.gh-mod.gh-open .gh-mod-caret{transform:rotate(180deg);}
.gh-mod-body{display:none;margin-top:12px;padding-top:12px;border-top:1px dashed var(--rule);}
.gh-mod.gh-open .gh-mod-body{display:block;}
.gh-mb-ai{font-size:11px;color:var(--warm);margin-bottom:9px;line-height:1.5;}
.gh-mod-add{text-align:center;border:1px dashed var(--rule);border-radius:11px;padding:13px;font-size:12.5px;color:var(--accent);cursor:pointer;margin-top:2px;}
.gh-mod-name-input{flex:1;border:none;background:transparent;font-family:'Noto Serif SC',serif;font-size:13px;color:var(--ink);outline:none;border-bottom:1px solid var(--accent-border);padding:2px 0;min-width:0;}
.gh-del-mod{font-size:11px;color:#b5524a;cursor:pointer;margin-top:10px;display:inline-block;}
/* 空白起点 + 表单 + 生成后落地 + 步骤折叠(v0.64) */
.gh-start-tip{font-size:12px;color:var(--ink-2);margin-bottom:13px;line-height:1.6;}
.gh-onramp{display:flex;align-items:center;gap:12px;background:var(--bg-card);border:1px solid var(--rule);border-radius:13px;padding:14px;margin-bottom:10px;cursor:pointer;}
.gh-onramp-ic{width:34px;height:34px;border-radius:9px;background:var(--warm-soft);color:var(--warm);display:flex;align-items:center;justify-content:center;font-size:16px;flex-shrink:0;}
.gh-onramp-t{font-family:'Noto Serif SC',serif;font-weight:600;font-size:13.5px;color:var(--ink);}
.gh-onramp-d{font-size:11px;color:var(--ink-3);margin-top:3px;line-height:1.5;}
.gh-onramp-ar{margin-left:auto;color:var(--ink-4);font-size:18px;}
.gh-start-alt{text-align:center;font-size:12px;color:var(--accent);cursor:pointer;padding:10px;margin-top:4px;}
.gh-form-h{font-size:12.5px;color:var(--ink-2);margin-bottom:12px;display:flex;justify-content:space-between;align-items:center;}
.gh-form-go{text-align:center;background:var(--warm);color:#fff;border-radius:11px;padding:13px;font-size:13px;font-weight:500;cursor:pointer;margin-top:14px;}
.gh-done{font-size:12.5px;color:var(--accent);background:var(--accent-soft);border-radius:10px;padding:11px 13px;margin-bottom:10px;}
.gh-regen-link{text-align:center;font-size:12px;color:var(--ink-3);cursor:pointer;padding:0 4px 12px;line-height:1.6;}
.gh-regen-link:hover{color:var(--accent);}
.gh-c-ref{font-size:10px;color:var(--ink-4);margin-left:6px;font-weight:400;}
.gh-howto{font-size:11.5px;color:var(--ink-3);cursor:pointer;display:flex;align-items:center;gap:5px;margin-bottom:6px;}
.gh-howto .gh-mod-caret{transition:transform .2s;}
.gh-howto.gh-open .gh-mod-caret{transform:rotate(180deg);}
.gh-step.gh-fold:not(.gh-open) > *:not(.gh-sh){display:none;}
.gh-step.gh-fold > .gh-sh{cursor:pointer;}
.gh-step.gh-fold .gh-mod-caret{margin-left:auto;transition:transform .2s;}
.gh-step.gh-open > .gh-sh .gh-mod-caret{transform:rotate(180deg);}
.gh-fill{font-size:10.5px;color:var(--warm);}
.bg-item-edit{border:1px solid var(--rule);border-radius:9px;padding:10px 11px;margin-top:8px;background:var(--bg-card);}
.bg-item-edit-h{display:flex;align-items:center;gap:8px;}
.bg-item-edit-h .rv-meta-input{margin-top:0;flex:1;}
.gh-grip{color:var(--ink-4);font-size:15px;cursor:grab;}
.gh-mod-n{font-size:13px;color:var(--ink);flex:1;font-family:'Noto Serif SC',serif;}

/* 三屏子页 · 顶部心理教育卡片 */
.subed-why-card{margin:16px 16px 18px;padding:14px 16px;background:rgba(61,89,70,0.04);border-left:3px solid var(--accent);border-radius:0 10px 10px 0;}
.subed-why-card-q{font-family:'Noto Serif SC',serif;font-size:13px;color:var(--ink);font-weight:500;letter-spacing:0.3px;line-height:1.65;margin-bottom:6px;}
.subed-why-card-body{font-size:11.5px;color:var(--ink-2);line-height:1.85;letter-spacing:0.2px;}
.subed-why-card-body b{color:var(--ink);font-weight:500;}

/* 未发布提示 */
.ed-dirty-banner{margin:0 20px 14px;padding:10px 14px;background:rgba(212,148,138,0.08);border:1px solid rgba(212,148,138,0.2);border-radius:10px;font-size:11.5px;color:var(--ink-2);line-height:1.7;display:none;align-items:center;gap:8px;}
.ed-dirty-banner.show{display:flex;}
.ed-dirty-banner-dot{flex-shrink:0;width:7px;height:7px;border-radius:50%;background:#D4948A;}

/* ============ 来访者档案页 ============ */
.profile-page{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--bg);z-index:402;display:flex;flex-direction:column;overflow-y:auto;}
/* removed for PageStack */

.pf-head{padding:calc(20px + env(safe-area-inset-top)) 20px 12px;display:flex;align-items:center;justify-content:space-between;flex-shrink:0;}
.pf-back{width:32px;height:32px;border-radius:50%;border:none;background:rgba(78,90,74,0.06);color:var(--ink);font-size:16px;cursor:pointer;}
.pf-more{width:32px;height:32px;border-radius:50%;border:none;background:rgba(78,90,74,0.06);color:var(--ink);font-size:18px;cursor:pointer;letter-spacing:1px;}

/* Hero 区 */
.pf-hero{padding:8px 28px 20px;text-align:center;}
.pf-hero--compact{padding-bottom:16px;}
.pf-hero-avatar{width:56px;height:56px;margin:0 auto 12px;border-radius:50%;background:linear-gradient(135deg,#D4A87C,var(--warm));color:white;font-family:'Noto Serif SC',serif;font-size:24px;font-weight:600;display:flex;align-items:center;justify-content:center;letter-spacing:0.5px;box-shadow:0 4px 18px rgba(184,132,90,0.18);}
.pf-hero-name{font-family:'Noto Serif SC',serif;font-size:20px;font-weight:600;color:var(--ink);letter-spacing:0.5px;margin-bottom:6px;}
.pf-hero-state{display:inline-block;font-size:10px;letter-spacing:0.6px;padding:2px 9px;border-radius:8px;margin-bottom:10px;}
.pf-hero-state.formal{background:rgba(107,143,94,0.12);color:var(--green);}
.pf-hero-state.booked{background:var(--warm-soft);color:var(--warm);}
.pf-hero-state.intake_done{background:rgba(180,165,135,0.18);color:#8A7E68;}
.pf-hero-state.single_active{background:rgba(107,143,113,0.14);color:#4A7352;}
.pf-hero-state.ended{background:rgba(124,124,124,0.1);color:#7A7A7A;}
.pf-hero-line{font-size:12.5px;color:var(--ink-3);letter-spacing:0.3px;line-height:1.8;}
.pf-hero-line b{color:var(--ink-2);font-weight:500;}

/* 快速操作 */
.pf-actions{padding:0 24px 16px;display:flex;justify-content:center;gap:8px;}
.pf-actions--bar{margin:0 auto 16px;width:calc(100% - 48px);max-width:372px;box-sizing:border-box;padding:10px 12px;background:var(--bg-card);border:1px solid var(--rule);border-radius:12px;}
.pf-actions--bar .pf-action{flex:1;padding:4px 2px;}
.pf-actions--bar .pf-action-icon{width:36px;height:36px;}
.pf-action{display:flex;flex-direction:column;align-items:center;gap:5px;cursor:pointer;flex:1;padding:8px 4px;border-radius:10px;transition:background 0.15s;}
.pf-action:active{background:var(--accent-soft);}
.pf-action-icon{width:42px;height:42px;border-radius:50%;background:var(--accent-soft);color:var(--accent);display:flex;align-items:center;justify-content:center;}
.pf-action-icon svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;}
.pf-action-name{font-size:10.5px;color:var(--ink-2);letter-spacing:0.2px;}

/* section 通用 */
.pf-section{padding:4px 24px 14px;}
.pf-section--card .pf-info-card,.pf-section--card .pf-records-card,.pf-section--card .pf-timeline-card,.pf-section--card .pf-notes-card{background:var(--bg-card);border:1px solid var(--rule);border-radius:12px;}
.pf-section--card .pf-info-card{border:none;padding:4px 16px;}
.pf-section--flush{padding-bottom:8px;}
.pf-section-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;gap:14px;}
.pf-section-label{font-family:'Noto Serif SC',serif;font-size:13px;font-weight:600;color:var(--ink);letter-spacing:0.3px;}
.pf-section-more{font-size:11.5px;color:var(--accent);cursor:pointer;letter-spacing:0.3px;}
.pf-section-more:active{opacity:0.6;}

/* 信息卡 */
.pf-info-card{background:var(--bg-card);border:1px solid var(--rule);border-radius:12px;padding:6px 16px;}
.pf-info-row{display:flex;justify-content:space-between;align-items:baseline;padding:11px 0;font-size:13px;gap:14px;border-bottom:1px dashed var(--rule);}
.pf-info-row:last-child{border-bottom:none;}

/* v0.34 折叠 */
.pf-info-collapse{max-height:0;overflow:hidden;transition:max-height 0.3s ease;}
.pf-info-collapse.expanded{max-height:500px;}
.pf-info-collapse .pf-info-row{border-top:1px dashed var(--rule);}
.pf-info-collapse .pf-info-row:first-child{border-top:1px dashed var(--rule);}
.pf-info-toggle{display:flex;justify-content:center;align-items:center;gap:5px;padding:10px 0 4px;font-size:11.5px;color:var(--accent);cursor:pointer;letter-spacing:0.3px;border-top:1px dashed var(--rule);margin-top:0;}
.pf-info-toggle:active{opacity:0.6;}
.pf-info-toggle-icon{font-size:10px;}
.pf-info-key{color:var(--ink-3);font-size:12px;flex-shrink:0;letter-spacing:0.2px;}
.pf-info-val{color:var(--ink);text-align:right;font-weight:500;}
.pf-info-val.muted{color:var(--ink-3);font-weight:400;}
.pf-info-val b{font-family:'Noto Serif SC',serif;color:var(--warm);font-weight:600;}

/* v0.35 · 手机号 tel: 链接（可拨打）*/
.pf-info-tel{color:var(--accent);text-decoration:none;font-family:'JetBrains Mono','Noto Sans SC',monospace;letter-spacing:0.5px;border-bottom:1px dashed var(--accent);padding-bottom:1px;}
.pf-info-tel:active{opacity:0.6;}

/* 时间线 */
.pf-timeline-card{padding:12px 14px 8px;}
.pf-timeline-empty{padding:16px 4px;text-align:center;font-size:12px;color:var(--ink-4);}
.pf-timeline{position:relative;padding-left:18px;}
.pf-timeline::before{content:'';position:absolute;left:5px;top:8px;bottom:8px;width:1.5px;background:var(--rule);}
.pf-tl-item{position:relative;padding:0 0 14px 14px;cursor:pointer;}
.pf-tl-item:last-child{padding-bottom:0;}
.pf-tl-item:active{opacity:0.6;}
.pf-tl-item::before{content:'';position:absolute;left:-18px;top:7px;width:11px;height:11px;border-radius:50%;background:var(--bg);border:2px solid var(--ink-4);}
.pf-tl-item.done::before{background:var(--accent);border-color:var(--accent);}
.pf-tl-item.upcoming::before{background:var(--bg);border-color:var(--warm);}
.pf-tl-item.canceled::before{background:var(--bg);border-color:#B85A5A;}
.pf-tl-item.rescheduled::before{background:var(--bg);border-color:#8A7E68;}
.pf-tl-date{font-size:10.5px;color:var(--ink-4);letter-spacing:0.8px;margin-bottom:4px;}
.pf-tl-title{font-size:13.5px;color:var(--ink);font-weight:500;margin-bottom:3px;letter-spacing:0.2px;}
.pf-tl-title-tag{display:inline-block;font-size:9.5px;letter-spacing:0.5px;padding:1px 6px;border-radius:5px;margin-left:6px;vertical-align:1px;}
.pf-tl-title-tag.done{background:rgba(107,143,94,0.12);color:var(--green);}
.pf-tl-title-tag.upcoming{background:var(--warm-soft);color:var(--warm);}
.pf-tl-title-tag.canceled{background:rgba(184,90,90,0.08);color:#B85A5A;}
.pf-tl-title-tag.rescheduled{background:rgba(180,165,135,0.18);color:#8A7E68;}
.pf-tl-meta{font-size:11.5px;color:var(--ink-3);line-height:1.6;}
.pf-tl-meta b{color:var(--ink-2);font-weight:500;}

.pf-notes-card{overflow:hidden;padding:0;}
.pf-notes-lead{margin:0;padding:12px 16px 0;font-size:11px;color:var(--ink-4);line-height:1.5;}
.pf-notes-list,.pf-notes-collapse{display:block;}
.pf-notes-collapse{max-height:0;overflow:hidden;transition:max-height 0.3s ease;}
.pf-notes-collapse.expanded{max-height:800px;}
.pf-note-row{display:flex;align-items:center;gap:12px;padding:14px 16px;cursor:pointer;transition:background 0.15s;}
.pf-note-row:active{background:var(--accent-soft);}
.pf-note-row--filled .pf-note-icon{background:rgba(78,90,74,0.12);color:var(--accent);}
.pf-note-icon{flex-shrink:0;width:34px;height:34px;border-radius:50%;background:var(--accent-soft);color:var(--accent);display:flex;align-items:center;justify-content:center;}
.pf-note-icon svg{width:15px;height:15px;stroke:currentColor;fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;}
.pf-note-body{flex:1;min-width:0;}
.pf-note-title{font-size:13px;color:var(--ink);font-weight:500;margin-bottom:2px;}
.pf-note-date{font-size:10.5px;color:var(--ink-4);letter-spacing:0.3px;margin-bottom:4px;}
.pf-note-preview{font-size:12px;color:var(--ink-2);line-height:1.65;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.pf-note-pending{color:var(--warm);font-size:11.5px;}
.pf-notes-toggle{display:flex;justify-content:center;align-items:center;gap:5px;padding:10px 16px 4px;font-size:11.5px;color:var(--accent);cursor:pointer;letter-spacing:0.3px;border-top:1px dashed var(--rule);}
.pf-notes-toggle:active{opacity:0.6;}
.pf-notes-toggle-icon{font-size:10px;}
.pf-notes-empty{padding:16px;font-size:12px;color:var(--ink-4);text-align:center;line-height:1.7;}
.pf-notes-teaser{
  margin:0;padding:12px 16px 14px;border-top:1px dashed rgba(78,90,74,0.16);
  font-size:11px;color:var(--ink-4);letter-spacing:0.3px;text-align:center;line-height:1.6;
}
.pf-notes-teaser::before{content:'✦ ';color:var(--accent);opacity:0.65;}
/* 协议 & 付款入口卡 */
.pf-entry-card{background:var(--bg-card);border:1px solid var(--rule);border-radius:12px;padding:14px 16px;cursor:pointer;display:flex;align-items:center;gap:12px;transition:transform 0.15s;}
.pf-entry-card:active{transform:scale(0.995);}
.pf-personal-stack{padding:0;display:flex;flex-direction:column;gap:10px;}
.pf-personal-stack.biz-card-list{padding:0;}
.pf-upcoming-wrap{padding:0;}
.pf-upcoming-card{cursor:default;}
.pf-upcoming-card .biz-card-foot{margin-top:4px;}
.pf-records-card{overflow:hidden;}
.pf-record-row{display:flex;align-items:center;gap:12px;padding:14px 16px;cursor:pointer;transition:background 0.15s;}
.pf-record-row:active{background:var(--accent-soft);}
.pf-record-divider{height:1px;background:var(--rule);margin:0 16px;}
.pf-record-icon{flex-shrink:0;width:34px;height:34px;border-radius:50%;background:var(--accent-soft);color:var(--accent);display:flex;align-items:center;justify-content:center;}
.pf-record-icon svg{width:15px;height:15px;stroke:currentColor;fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;}
.pf-record-body{flex:1;min-width:0;}
.pf-record-title{font-size:10px;color:var(--ink-4);letter-spacing:0.6px;margin-bottom:2px;}
.pf-record-sub{font-size:13px;color:var(--ink);font-weight:500;margin-bottom:2px;}
.pf-record-meta{font-size:11px;color:var(--ink-3);line-height:1.5;}
.pf-record-arrow{flex-shrink:0;color:var(--ink-4);font-size:16px;font-weight:300;}
.pf-pricing-card--unset{border:1.5px dashed rgba(184,132,90,0.35);background:rgba(184,132,90,0.03);}
.pf-pricing-card--set{border-color:rgba(61,89,70,0.2);background:rgba(61,89,70,0.03);}
.pf-pricing-badge{font-size:10px;letter-spacing:0.4px;padding:2px 7px;border-radius:6px;font-weight:500;flex-shrink:0;}
.pf-pricing-badge--default{background:rgba(90,101,112,0.1);color:var(--ink-3);}
.pf-pricing-badge--custom{background:rgba(61,89,70,0.12);color:var(--accent);}
.pf-cadence-card--unset{border:1.5px dashed rgba(184,132,90,0.45);background:rgba(184,132,90,0.04);}
.pf-cadence-card--set{border-color:rgba(61,89,70,0.22);background:rgba(61,89,70,0.03);}
.pf-entry-title-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:3px;}
.pf-cadence-badge{font-size:10px;letter-spacing:0.4px;padding:2px 7px;border-radius:6px;font-weight:500;flex-shrink:0;}
.pf-cadence-badge--unset{background:rgba(184,132,90,0.14);color:var(--warm);}
.pf-cadence-badge--periodic{background:rgba(61,89,70,0.12);color:var(--accent);}
.pf-cadence-badge--irregular{background:rgba(90,101,112,0.12);color:var(--ink-2);}
.pf-ledger-card--unset{border:1.5px dashed rgba(184,132,90,0.45);background:rgba(184,132,90,0.04);}
.pf-ledger-card--set{border-color:rgba(61,89,70,0.22);background:rgba(61,89,70,0.03);}
.pf-ledger-card--offline{border-color:rgba(184,132,90,0.35);background:rgba(184,132,90,0.05);}
.pf-ledger-badge{font-size:10px;letter-spacing:0.4px;padding:2px 7px;border-radius:6px;font-weight:500;flex-shrink:0;}
.pf-ledger-badge--unset{background:rgba(184,132,90,0.14);color:var(--warm);}
.pf-ledger-badge--active{background:rgba(61,89,70,0.12);color:var(--accent);}
.pf-ledger-badge--offline{background:rgba(184,132,90,0.16);color:var(--warm);}
#pl-sheet .av-start-options{padding:0;}
.vc-recurring-confirm{margin-top:10px;padding:10px 12px;background:rgba(61,89,70,0.06);border:1px solid rgba(61,89,70,0.14);border-radius:10px;font-size:12px;color:var(--ink-2);line-height:1.75;letter-spacing:0.2px;}
.vc-recurring-confirm b{color:var(--accent);font-weight:500;}
.pf-entry-icon{flex-shrink:0;width:36px;height:36px;border-radius:50%;background:var(--accent-soft);color:var(--accent);display:flex;align-items:center;justify-content:center;}
.pf-entry-icon svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;}
.pf-entry-body{flex:1;min-width:0;}
.pf-entry-title{font-size:13.5px;color:var(--ink);font-weight:500;letter-spacing:0.2px;margin-bottom:2px;}
.pf-entry-sub{font-size:11.5px;color:var(--ink-3);line-height:1.6;}
.pf-entry-sub b{color:var(--ink-2);font-weight:500;}
.pf-entry-arrow{flex-shrink:0;color:var(--ink-4);font-size:18px;font-weight:300;}

/* ============ 来访者列表页 ============ */
.vlist-page{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--bg);z-index:399;display:flex;flex-direction:column;overflow:hidden;}
/* removed for PageStack */
.vlist-head{padding:calc(20px + env(safe-area-inset-top)) 24px 12px;display:flex;align-items:center;justify-content:space-between;flex-shrink:0;}
.vlist-back{width:32px;height:32px;border-radius:50%;border:none;background:rgba(78,90,74,0.06);color:var(--ink);font-size:16px;cursor:pointer;}
.vlist-head-title{font-family:'Noto Serif SC',serif;font-size:15px;font-weight:600;color:var(--ink);letter-spacing:0.5px;}
.vlist-add{width:32px;height:32px;border-radius:50%;border:1px solid var(--accent-border);background:var(--bg-card);color:var(--accent);cursor:pointer;display:flex;align-items:center;justify-content:center;}
.vlist-add svg{width:16px;height:16px;}
.vlist-add:active{transform:scale(0.95);background:var(--accent-soft);}

/* 搜索框 */
.vlist-search{padding:8px 24px 14px;flex-shrink:0;}
.vlist-search-input{width:100%;padding:11px 16px 11px 38px;background:var(--bg-card);border:1px solid var(--rule);border-radius:22px;font-size:13px;color:var(--ink);outline:none;font-family:inherit;letter-spacing:0.2px;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%237A8377' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'><circle cx='11' cy='11' r='8'/><line x1='21' y1='21' x2='16.65' y2='16.65'/></svg>");background-repeat:no-repeat;background-position:12px center;background-size:16px 16px;}
.vlist-search-input::placeholder{color:var(--ink-4);}
.vlist-search-input:focus{border-color:var(--accent);}

/* 筛选 tabs */
.vlist-tabs{padding:0 24px 12px;display:flex;gap:6px;flex-wrap:wrap;flex-shrink:0;}
.vlist-tab{padding:5px 12px;border-radius:14px;background:transparent;border:1px solid var(--rule);font-size:12px;color:var(--ink-3);cursor:pointer;font-family:inherit;letter-spacing:0.2px;}
.vlist-tab.active{background:var(--accent);color:white;border-color:var(--accent);}
.vlist-tab .vlist-tab-count{margin-left:4px;font-size:10.5px;opacity:0.7;}

/* 列表区 */
.vlist-content{flex:1;overflow-y:auto;padding:0 24px 24px;}
.vlist-section-label{font-size:10.5px;color:var(--ink-4);letter-spacing:2px;padding:14px 4px 8px;font-weight:500;}
.vlist-section-label:first-child{padding-top:4px;}

.vlist-item{background:var(--bg-card);border:1px solid var(--rule);border-radius:12px;padding:14px 16px;margin-bottom:8px;display:flex;align-items:center;gap:12px;cursor:pointer;transition:transform 0.15s;}
.vlist-item:active{transform:scale(0.995);}
.vlist-item-avatar{flex-shrink:0;width:42px;height:42px;border-radius:50%;background:var(--warm-soft);color:var(--warm);font-family:'Noto Serif SC',serif;font-size:16px;font-weight:600;display:flex;align-items:center;justify-content:center;}
.vlist-item-body{flex:1;min-width:0;}
.vlist-item-row{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:3px;}
.vlist-item-name{font-size:14.5px;color:var(--ink);font-weight:500;letter-spacing:0.2px;}
.vlist-item-state{font-size:10px;letter-spacing:0.5px;padding:1px 7px;border-radius:6px;flex-shrink:0;}
.vlist-item-state.booked{background:var(--warm-soft);color:var(--warm);}
.vlist-item-state.formal{background:rgba(107,143,94,0.12);color:var(--green);}
.vlist-item-state.intake_done{background:rgba(180,165,135,0.18);color:#8A7E68;}
.vlist-item-state.single_active{background:rgba(107,143,113,0.14);color:#4A7352;}
.vlist-item-state.ended{background:rgba(124,124,124,0.1);color:#7A7A7A;}
.vlist-item-meta{font-size:11.5px;color:var(--ink-3);line-height:1.65;letter-spacing:0.2px;}
.vlist-item-meta b{color:var(--ink-2);font-weight:500;}

/* 空状态 */
.vlist-empty{text-align:center;padding:60px 32px;color:var(--ink-3);}
.vlist-empty-icon{width:48px;height:48px;margin:0 auto 16px;color:var(--ink-4);opacity:0.5;}
.vlist-empty-text{font-size:13.5px;line-height:1.85;}

/* ============ 添加来访者全屏页 ============ */
.add-visitor-page{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--bg);z-index:400;display:flex;flex-direction:column;overflow:hidden;}
.av-body{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;}
.av-step{display:none;padding-bottom:8px;}
.av-step.active{display:block;}

/* 路径选择 */
.av-path-cards{display:flex;flex-direction:column;gap:10px;padding:8px 24px 16px;}
.av-path-card{background:var(--bg-card);border:1.5px solid var(--rule);border-radius:14px;padding:16px 18px;cursor:pointer;display:flex;align-items:flex-start;gap:14px;transition:all 0.15s;}
.av-path-card:active{transform:scale(0.99);}
.av-path-card.selected{border-color:var(--accent);background:var(--accent-soft);}
.av-path-icon{flex-shrink:0;width:36px;height:36px;border-radius:10px;background:rgba(61,89,70,0.08);color:var(--accent);display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:500;}
.av-path-card.selected .av-path-icon{background:rgba(61,89,70,0.14);}
.av-path-title{font-size:15px;color:var(--ink);font-weight:500;margin-bottom:4px;letter-spacing:0.2px;}
.av-path-card.selected .av-path-title{color:var(--accent);}
.av-path-desc{font-size:12px;color:var(--ink-3);line-height:1.65;}

/* 更多方式折叠 */
.av-more{margin:4px 24px 12px;}
.av-more-toggle{font-size:12.5px;color:var(--accent);cursor:pointer;letter-spacing:0.3px;list-style:none;}
.av-more-toggle::-webkit-details-marker{display:none;}
.av-more[open] .av-more-toggle{margin-bottom:10px;}
.av-more-options{margin-top:4px;}

/* 成功页 */
.av-success{padding:28px 24px 32px;text-align:center;}
.av-success-icon{width:56px;height:56px;margin:0 auto 18px;border-radius:50%;background:var(--accent-soft);color:var(--accent);font-size:26px;display:flex;align-items:center;justify-content:center;font-weight:600;}
.av-success-title{font-family:'Noto Serif SC',serif;font-size:20px;font-weight:600;color:var(--ink);margin-bottom:8px;letter-spacing:0.3px;}
.av-success-sub{font-size:13px;color:var(--ink-3);line-height:1.7;margin-bottom:20px;}
.av-invite-box{text-align:left;background:var(--bg-card);border:1px solid var(--rule);border-radius:12px;padding:14px 16px;font-size:12.5px;color:var(--ink-2);line-height:1.75;white-space:pre-wrap;margin-bottom:16px;word-break:break-all;}
.av-success-btn{display:block;width:100%;padding:13px;border-radius:12px;font-size:14px;font-weight:500;font-family:inherit;cursor:pointer;margin-bottom:8px;border:1px solid var(--accent-border);background:transparent;color:var(--accent);letter-spacing:0.3px;}
.av-success-btn.primary{background:var(--accent);color:white;border-color:var(--accent);box-shadow:0 4px 14px rgba(184,132,90,0.2);}
.av-success-btn.ghost{color:var(--ink-3);border-color:transparent;background:transparent;margin-top:4px;}
.av-success-btn:active{transform:scale(0.98);}

.av-start-options{padding:0 24px 8px;}
/* removed for PageStack */
@keyframes av-fade{from{opacity:0;transform:translateX(-50%) translateY(10px);}to{opacity:1;transform:translateX(-50%) translateY(0);}}

.av-head{padding:calc(20px + env(safe-area-inset-top)) 24px 12px;position:relative;flex-shrink:0;display:flex;align-items:center;justify-content:space-between;}
.av-back{width:32px;height:32px;border-radius:50%;border:none;background:rgba(92,79,68,0.06);color:var(--ink);font-size:16px;cursor:pointer;}
.av-head-title{font-family:'Noto Serif SC',serif;font-size:15px;font-weight:600;color:var(--ink);letter-spacing:0.5px;}
.av-head-spacer{width:32px;}

.av-intro{padding:18px 24px 8px;}
.av-intro-title{font-family:'Noto Serif SC',serif;font-size:22px;font-weight:600;color:var(--ink);line-height:1.45;margin-bottom:8px;letter-spacing:0.3px;}
.av-intro-sub{font-size:13px;color:var(--ink-3);line-height:1.9;}

.av-section{padding:20px 24px 8px;}
.av-section-label{font-size:11px;color:var(--accent);letter-spacing:2.5px;margin-bottom:14px;opacity:0.85;}
.av-section-hint{font-size:11.5px;color:var(--ink-4);margin-top:-8px;margin-bottom:14px;line-height:1.7;}

/* 渠道选择卡片 */
.av-channels{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;}
.av-channel{padding:14px 12px;background:var(--bg-card);border:1.5px solid var(--rule);border-radius:12px;cursor:pointer;display:flex;align-items:center;gap:10px;transition:all 0.15s;}
.av-channel:active{transform:scale(0.99);}
.av-channel.selected{border-color:var(--accent);background:var(--accent-soft);}
.av-channel-icon{flex-shrink:0;width:20px;height:20px;color:var(--ink-3);}
.av-channel.selected .av-channel-icon{color:var(--accent);}
.av-channel-icon svg{width:100%;height:100%;stroke:currentColor;fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;}
.av-channel-name{font-size:12.5px;color:var(--ink);letter-spacing:0.2px;}

/* 表单字段 */
.av-field{margin-bottom:14px;}
.av-field-label{display:block;font-size:12px;color:var(--ink-2);margin-bottom:6px;letter-spacing:0.3px;}
.av-field-label .req{color:#B85A5A;margin-left:2px;}
.av-field-input{width:100%;padding:12px 14px;background:var(--bg-card);border:1px solid var(--rule);border-radius:10px;font-family:inherit;font-size:14px;color:var(--ink);outline:none;transition:border-color 0.15s;letter-spacing:0.2px;box-sizing:border-box;}
.av-field-input:focus{border-color:var(--accent);}
.av-field-input::placeholder{color:var(--ink-4);}
.av-field-input.textarea{resize:none;min-height:64px;line-height:1.6;}
.av-field-select{position:relative;}
.av-field-select::after{content:'▾';position:absolute;right:14px;top:50%;transform:translateY(-50%);color:var(--ink-3);font-size:10px;pointer-events:none;}
.av-field-select select{appearance:none;-webkit-appearance:none;}

/* 关系起点单选 */
.av-start-options{display:flex;flex-direction:column;gap:8px;}
.av-start-option{background:var(--bg-card);border:1.5px solid var(--rule);border-radius:12px;padding:14px 16px;cursor:pointer;display:flex;gap:12px;align-items:flex-start;transition:all 0.15s;}
.av-start-option.selected{border-color:var(--accent);background:var(--accent-soft);}
.av-start-radio{flex-shrink:0;width:18px;height:18px;border:1.5px solid var(--ink-4);border-radius:50%;margin-top:2px;position:relative;}
.av-start-option.selected .av-start-radio{border-color:var(--accent);}
.av-start-option.selected .av-start-radio::after{content:'';position:absolute;inset:3px;background:var(--accent);border-radius:50%;}
.av-start-body{flex:1;min-width:0;}
.av-start-title{font-size:14px;color:var(--ink);font-weight:500;margin-bottom:3px;letter-spacing:0.2px;}
.av-start-option.selected .av-start-title{color:var(--accent);}
.av-start-desc{font-size:11.5px;color:var(--ink-3);line-height:1.7;}

/* 合规提示 */
.av-ethics{margin:8px 24px 16px;padding:12px 14px;background:rgba(184,132,90,0.04);border:1px solid var(--accent-border);border-radius:10px;font-size:11.5px;color:var(--ink-3);line-height:1.8;letter-spacing:0.2px;}
.av-ethics b{color:var(--ink-2);font-weight:500;}

.av-foot{padding:14px 20px calc(20px + env(safe-area-inset-bottom));background:rgba(249,245,240,0.96);backdrop-filter:blur(12px);border-top:1px solid var(--rule);flex-shrink:0;position:sticky;bottom:0;display:flex;flex-direction:column;gap:8px;}
.av-foot-success .av-submit{margin:0;}
.av-submit{width:100%;padding:14px;background:var(--accent);color:white;border:none;border-radius:14px;font-size:15px;font-weight:500;letter-spacing:0.5px;cursor:pointer;box-shadow:0 4px 14px rgba(184,132,90,0.25);font-family:inherit;}
.av-submit-secondary{background:transparent;color:var(--accent);border:1px solid var(--accent-border);box-shadow:none;font-size:14px;padding:12px;}
.av-submit:disabled{opacity:0.4;cursor:not-allowed;box-shadow:none;}
.av-submit:not(:disabled):active{transform:scale(0.98);}
.av-personal-section{padding-top:4px;}
.av-personal-stack{padding:0 24px 4px;}
.av-personal-block-label{font-size:11px;color:var(--ink-3);letter-spacing:0.5px;margin:12px 0 8px;}
.av-personal-stack .pf-entry-card{margin-bottom:0;}
.av-invite-preview{margin:0 24px 8px;padding:12px 14px;background:var(--bg-card);border:1px dashed var(--rule);border-radius:10px;font-size:12px;color:var(--ink-3);line-height:1.75;}

/* toast for copy success */
.av-toast{position:fixed;bottom:80px;left:50%;transform:translateX(-50%);background:rgba(44,37,32,0.92);color:white;padding:10px 20px;border-radius:22px;font-size:12.5px;letter-spacing:0.5px;z-index:1000;opacity:0;pointer-events:none;transition:opacity 0.3s;}
.av-toast.show{opacity:1;}

.b-date{padding:0 24px 18px;font-size:12px;color:var(--ink-3);letter-spacing:0.5px;}

/* ============ 工作台 · 转化心智 Hero（v0.15）============ */
.b-hero{ margin:0 24px 18px;padding:14px 18px 12px;background:linear-gradient(135deg, var(--accent) 0%, #2C4736 100%);border-radius:14px;color:white;box-shadow:0 5px 14px rgba(61,89,70,0.18);position:relative;overflow:hidden;}
.b-hero::after{ content:'';position:absolute;top:-30px;right:-30px;width:120px;height:120px;border-radius:50%;background:rgba(255,255,255,0.04);pointer-events:none;}

/* 轮播 viewport · 一次只显示一张，cut 掉其他 */
.b-hero-viewport{ overflow:hidden;margin-bottom:8px;position:relative;z-index:1;}
.b-hero-track{ display:flex;transition:transform 0.45s cubic-bezier(0.32,0.72,0.24,1);}
.b-hero-slide{ flex:0 0 100%;min-width:0;box-sizing:border-box;min-height:56px;padding-right:8px;}
.b-hero-pillar{ display:inline-block;font-size:10px;letter-spacing:2.5px;color:rgba(255,255,255,0.55);margin-bottom:6px;}
.b-hero-headline{ font-family:'Noto Serif SC',serif;font-size:13px;line-height:1.55;color:white;letter-spacing:0.3px;margin-bottom:5px;}
.b-hero-headline b{ font-family:'JetBrains Mono','Noto Serif SC',monospace;font-size:15px;font-weight:600;letter-spacing:0;padding:0 1px;color:#FFF;}
.b-hero-foot{ font-size:10.5px;color:rgba(255,255,255,0.5);letter-spacing:0.3px;line-height:1.55;}

/* 圆点指示器 */
.b-hero-dots{ display:flex;gap:5px;justify-content:flex-start;position:relative;z-index:1;}
.b-hero-dot{ width:5px;height:5px;border-radius:50%;background:rgba(255,255,255,0.25);cursor:pointer;transition:all 0.25s;}
.b-hero-dot.active{ background:rgba(255,255,255,0.85);width:14px;border-radius:3px;}

/* 工作台 · 营销区（v0.15）*/
.b-promo{ margin:0 24px 14px;padding:13px 14px;background:rgba(184,132,90,0.06);border:1px solid var(--warm-border);border-radius:12px;display:flex;align-items:center;gap:11px;cursor:pointer;transition:transform 0.18s, opacity 0.22s ease;}
.b-promo:active{ transform:scale(0.99);}
.b-promo.fading{ opacity:0;}
.b-promo-icon{ flex-shrink:0;width:28px;height:28px;border-radius:50%;background:rgba(184,132,90,0.16);color:var(--warm);display:flex;align-items:center;justify-content:center;font-size:14px;}
.b-promo-body{ flex:1;min-width:0;}
.b-promo-title{ font-size:12.5px;color:var(--ink);font-weight:500;letter-spacing:0.3px;}
.b-promo-sub{ font-size:11px;color:var(--ink-3);margin-top:2px;letter-spacing:0.2px;}
.b-promo-close{ flex-shrink:0;width:20px;height:20px;border-radius:50%;background:transparent;border:none;color:var(--ink-4);font-size:14px;cursor:pointer;display:flex;align-items:center;justify-content:center;line-height:1;padding:0;}
.b-promo-close:active{ background:rgba(78,90,74,0.08);}

/* 工作台 · 分享区（v0.15）*/
.b-share{ margin:0 24px 18px;padding:18px 18px 14px;background:var(--bg-card);border:1px solid var(--rule);border-radius:14px;}
.b-share-head{ display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px;}
.b-share-headline{ display:flex;flex-direction:column;gap:3px;}
.b-share-label{ font-family:'Noto Serif SC',serif;font-size:12.5px;color:var(--ink-2);font-weight:500;letter-spacing:2px;}
.b-share-tag{ font-size:10.5px;color:var(--ink-4);letter-spacing:0.6px;}
.b-share-school{ font-size:11px;color:var(--accent);letter-spacing:0.5px;margin-top:2px;}
.b-share-quote{ font-family:'Noto Serif SC',serif;font-size:14px;line-height:2;color:var(--ink);letter-spacing:0.3px;padding:8px 4px 16px;text-align:center;font-style:italic;}
.b-share-quote-mark{ font-family:Georgia,serif;font-size:20px;color:var(--accent);opacity:0.4;}
.b-share-foot{ display:flex;gap:8px;padding-top:14px;border-top:1px dashed var(--rule);}
.b-share-btn{ flex:1;padding:9px;border-radius:10px;font-size:12.5px;font-weight:500;cursor:pointer;font-family:inherit;letter-spacing:0.3px;background:transparent;border:1px solid var(--accent-border);color:var(--accent);display:flex;align-items:center;justify-content:center;gap:5px;}
.b-share-btn.primary{ background:var(--accent);color:white;border-color:var(--accent);}
.b-share-btn:active{ transform:scale(0.97);}
.b-share-btn svg{ width:13px;height:13px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}

/* 分享海报 sheet（生成图片预览）*/
/* AI 朋友圈 · 全屏页（v0.27 取代旧 poster sheet）*/
.ai-share-page{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--bg);z-index:408;display:flex;flex-direction:column;overflow-y:auto;}
.ai-share-body{padding:8px 20px 32px;flex:1;display:flex;flex-direction:column;}

.ai-share-pillar{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--ink-3);letter-spacing:0.5px;padding:0 4px 14px;border-bottom:1px dashed var(--rule);margin-bottom:16px;}
.ai-share-pillar-dot{width:6px;height:6px;border-radius:50%;background:var(--accent);box-shadow:0 0 8px rgba(61,89,70,0.4);animation:ai-pulse 1.8s ease-in-out infinite;flex-shrink:0;}
.ai-share-pillar b{color:var(--accent);font-weight:600;}
@keyframes ai-pulse{0%,100%{opacity:0.5;}50%{opacity:1;}}

/* 朋友圈预览卡 · 仿微信样式 */
.ai-share-preview{background:var(--bg-card);border:1px solid var(--rule);border-radius:14px;padding:16px 16px 12px;}
.ai-share-author-row{display:flex;gap:10px;align-items:center;margin-bottom:10px;}
.ai-share-avatar{width:38px;height:38px;border-radius:6px;background:linear-gradient(135deg,#B8845A,#8A5E3D);color:white;display:flex;align-items:center;justify-content:center;font-family:'Noto Serif SC',serif;font-size:17px;font-weight:500;letter-spacing:0;flex-shrink:0;}
.ai-share-author-info{flex:1;min-width:0;}
.ai-share-author-name{font-size:13.5px;color:#3B5998;font-weight:500;letter-spacing:0.3px;}
.ai-share-author-meta{font-size:10.5px;color:var(--ink-3);margin-top:1px;letter-spacing:0.3px;}

.ai-share-text{font-size:13.5px;color:var(--ink);line-height:1.85;margin-bottom:14px;letter-spacing:0.3px;font-family:'Noto Sans SC',sans-serif;}

.ai-share-image-wrap{margin-bottom:10px;}
.ai-share-image{width:100%;display:block;border-radius:6px;}

.ai-share-meta{font-size:11px;color:var(--ink-4);letter-spacing:0.3px;padding-top:6px;border-top:1px solid var(--rule);}

/* 操作按钮 */
.ai-share-actions{display:flex;gap:8px;margin-top:20px;}
.ai-share-action-btn{flex:1;padding:11px 8px;border-radius:10px;font-size:12.5px;font-weight:500;cursor:pointer;font-family:inherit;letter-spacing:0.3px;background:transparent;border:1px solid var(--accent-border);color:var(--accent);display:flex;align-items:center;justify-content:center;gap:5px;}
.ai-share-action-btn.primary{background:var(--accent);color:white;border-color:var(--accent);}
.ai-share-action-btn:active{transform:scale(0.97);}
.ai-share-action-btn svg{width:13px;height:13px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}

.ai-share-tips{font-size:11px;color:var(--ink-3);letter-spacing:0.3px;text-align:center;margin-top:16px;padding:10px;background:rgba(184,132,90,0.06);border-radius:8px;line-height:1.6;}

/* 档案改期/取消 sheet（v0.16）*/
.resched-mask{position:fixed;inset:0;background:rgba(44,50,41,0);z-index:415;pointer-events:none;transition:background 0.3s ease;}
.resched-mask.open{background:rgba(44,50,41,0.42);pointer-events:auto;}
.resched-sheet{position:fixed;bottom:0;left:50%;transform:translateX(-50%) translateY(100%);width:100%;max-width:420px;background:var(--bg);border-radius:24px 24px 0 0;z-index:416;transition:transform 0.32s cubic-bezier(0.32,0.72,0.24,1);padding-bottom:env(safe-area-inset-bottom);}
.resched-sheet.open{transform:translateX(-50%) translateY(0);}

/* 来访者咨询设置 sheet（v0.31）*/
.vc-mask{position:fixed;inset:0;background:rgba(44,50,41,0);z-index:430;pointer-events:none;transition:background 0.3s ease;}
.vc-mask.open{background:rgba(44,50,41,0.5);pointer-events:auto;}
.vc-sheet{position:fixed;bottom:0;left:50%;transform:translateX(-50%) translateY(100%);width:100%;max-width:420px;background:var(--bg);border-radius:24px 24px 0 0;z-index:431;transition:transform 0.32s cubic-bezier(0.32,0.72,0.24,1);padding-bottom:env(safe-area-inset-bottom);max-height:88vh;display:flex;flex-direction:column;}
.vc-sheet.open{transform:translateX(-50%) translateY(0);}

.vc-head{padding:22px 24px 14px;text-align:center;flex-shrink:0;}
.vc-head-title{font-family:'Noto Serif SC',serif;font-size:16px;font-weight:500;color:var(--ink);letter-spacing:0.5px;margin-bottom:5px;}
.vc-head-title span{color:var(--warm);}
.vc-head-sub{font-size:11.5px;color:var(--ink-3);letter-spacing:0.3px;}

.vc-body{flex:1;overflow-y:auto;padding:6px 24px 18px;}

.vc-section{margin-bottom:20px;}
.vc-section-label{font-size:11px;color:var(--accent);letter-spacing:2.5px;margin-bottom:10px;opacity:0.85;}

.vc-options{display:flex;gap:8px;flex-wrap:wrap;}
.vc-pill{padding:8px 14px;background:var(--bg-card);border:1.5px solid var(--rule);border-radius:18px;font-size:12.5px;color:var(--ink-2);font-family:inherit;cursor:pointer;letter-spacing:0.3px;transition:all 0.15s;}
.vc-pill:active{transform:scale(0.97);}
.vc-pill.selected{background:var(--accent-soft);border-color:var(--accent);color:var(--accent);font-weight:500;}

.vc-flex-config{display:none;margin-top:12px;padding:12px 14px;background:var(--accent-soft);border-radius:10px;border:1px dashed rgba(61,89,70,0.25);}
.vc-flex-config.show{display:block;}
.vc-flex-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:13px;color:var(--ink);}
.vc-flex-input{width:48px;padding:6px 8px;background:white;border:1px solid var(--rule);border-radius:8px;text-align:center;font-family:'JetBrains Mono','Noto Sans SC',monospace;font-size:14px;color:var(--ink);font-weight:600;outline:none;box-sizing:border-box;}
.vc-flex-input:focus{border-color:var(--accent);}
.vc-flex-select{padding:6px 8px;background:white;border:1px solid var(--rule);border-radius:8px;font-family:inherit;font-size:13px;color:var(--ink);outline:none;cursor:pointer;}

.vc-toggle-row{padding:14px 14px;background:var(--bg-card);border:1px solid var(--rule);border-radius:12px;display:flex;align-items:center;gap:14px;cursor:pointer;margin-bottom:18px;}
.vc-toggle-row:active{background:var(--accent-soft);}
.vc-toggle-body{flex:1;min-width:0;}
.vc-toggle-title{font-size:13.5px;color:var(--ink);font-weight:500;margin-bottom:3px;letter-spacing:0.2px;}
.vc-toggle-desc{font-size:11px;color:var(--ink-3);line-height:1.7;letter-spacing:0.2px;}
.vc-toggle-switch{flex-shrink:0;width:38px;height:22px;background:var(--rule);border-radius:11px;position:relative;transition:background 0.2s;}
.vc-toggle-switch.on{background:var(--accent);}
.vc-toggle-knob{position:absolute;top:2px;left:2px;width:18px;height:18px;background:white;border-radius:50%;transition:transform 0.2s cubic-bezier(0.32,0.72,0.24,1);box-shadow:0 1px 3px rgba(0,0,0,0.15);}
.vc-toggle-switch.on .vc-toggle-knob{transform:translateX(16px);}

.vc-price-row{display:flex;align-items:center;gap:8px;background:var(--bg-card);border:1px solid var(--rule);border-radius:12px;padding:10px 14px;}
.vc-price-prefix{font-size:16px;color:var(--ink-2);font-weight:500;font-family:'Noto Serif SC',serif;}
.vc-price-input{flex:1;border:none;background:none;font-size:18px;font-family:'Noto Serif SC',serif;color:var(--ink);outline:none;font-weight:600;width:100%;min-width:0;}
.vc-price-suffix{font-size:13px;color:var(--ink-3);white-space:nowrap;}
.vc-price-hint{font-size:11.5px;color:var(--ink-3);margin-top:8px;letter-spacing:0.3px;}
.vc-preview{background:rgba(184,132,90,0.06);border:1px solid var(--warm-border);border-radius:10px;padding:12px 14px;display:flex;justify-content:space-between;align-items:center;}
.vc-preview-label{font-size:11px;color:var(--ink-3);letter-spacing:0.5px;}
.vc-preview-val{font-family:'Noto Serif SC',serif;font-size:13.5px;color:var(--warm);font-weight:500;letter-spacing:0.3px;}

.vc-reset{text-align:center;margin-top:14px;font-size:11.5px;color:var(--ink-3);cursor:pointer;letter-spacing:0.3px;padding:8px;}
.vc-reset:active{color:var(--accent);}

.vc-foot{padding:14px 24px;display:flex;gap:10px;flex-shrink:0;border-top:1px solid var(--rule);}
.vc-foot-btn{flex:1;padding:11px;border-radius:12px;font-size:13.5px;font-weight:500;cursor:pointer;font-family:inherit;letter-spacing:0.5px;}
.vc-foot-btn.primary{background:var(--accent);color:white;border:none;}
.vc-foot-btn.secondary{background:transparent;color:var(--ink-2);border:1px solid var(--rule);}
.vc-foot-btn:active{transform:scale(0.98);}

/* 来访者信息编辑 sheet（v0.31）*/
.vie-mask{position:fixed;inset:0;background:rgba(44,50,41,0);z-index:432;pointer-events:none;transition:background 0.3s ease;}
.vie-mask.open{background:rgba(44,50,41,0.5);pointer-events:auto;}
.vie-sheet{position:fixed;bottom:0;left:50%;transform:translateX(-50%) translateY(100%);width:100%;max-width:420px;background:var(--bg);border-radius:24px 24px 0 0;z-index:433;transition:transform 0.32s cubic-bezier(0.32,0.72,0.24,1);padding-bottom:env(safe-area-inset-bottom);max-height:88vh;display:flex;flex-direction:column;}
.vie-sheet.open{transform:translateX(-50%) translateY(0);}

.vie-head{padding:22px 24px 14px;text-align:center;flex-shrink:0;}
.vie-head-title{font-family:'Noto Serif SC',serif;font-size:16px;font-weight:500;color:var(--ink);letter-spacing:0.5px;margin-bottom:5px;}
.vie-head-title span{color:var(--warm);}
.vie-head-sub{font-size:11.5px;color:var(--ink-3);letter-spacing:0.3px;}

.vie-body{flex:1;overflow-y:auto;padding:6px 24px 18px;}

.vie-field{margin-bottom:16px;}
.vie-label{display:block;font-size:11px;color:var(--ink-3);letter-spacing:1.5px;margin-bottom:6px;}
.vie-input{width:100%;box-sizing:border-box;padding:11px 14px;background:var(--bg-card);border:1px solid var(--rule);border-radius:10px;font-family:inherit;font-size:13.5px;color:var(--ink);outline:none;letter-spacing:0.2px;}
.vie-input:focus{border-color:var(--accent);background:white;}
.vie-helper{font-size:10.5px;color:var(--ink-4);letter-spacing:0.2px;margin-top:4px;line-height:1.6;}

.vie-foot{padding:14px 24px;display:flex;gap:10px;flex-shrink:0;border-top:1px solid var(--rule);}
.vie-foot-btn{flex:1;padding:11px;border-radius:12px;font-size:13.5px;font-weight:500;cursor:pointer;font-family:inherit;letter-spacing:0.5px;}
.vie-foot-btn.primary{background:var(--accent);color:white;border:none;}
.vie-foot-btn.secondary{background:transparent;color:var(--ink-2);border:1px solid var(--rule);}
.vie-foot-btn:active{transform:scale(0.98);}
.resched-head{padding:18px 24px 14px;text-align:center;border-bottom:1px solid var(--rule);}
.resched-head-title{font-family:'Noto Serif SC',serif;font-size:16px;font-weight:600;color:var(--ink);letter-spacing:0.3px;margin-bottom:4px;}
.resched-head-sub{font-size:12px;color:var(--ink-3);letter-spacing:0.2px;}
/* 档案改期全屏页（v0.35 取代旧 sheet）*/
.resched-current{margin:14px auto 20px;width:calc(100% - 48px);max-width:372px;box-sizing:border-box;padding:14px 18px;background:rgba(184,132,90,0.05);border:1px solid var(--warm-border);border-radius:12px;}
.resched-current-label{font-size:10px;color:var(--ink-3);letter-spacing:2px;margin-bottom:6px;}
.resched-current-when{font-family:'Noto Serif SC',serif;font-size:15px;font-weight:600;color:var(--ink);letter-spacing:0.3px;margin-bottom:4px;}
.resched-current-meta{font-size:11.5px;color:var(--ink-3);letter-spacing:0.2px;}

.resched-section-label{padding:0 24px;font-family:'Noto Serif SC',serif;font-size:11px;color:var(--accent);letter-spacing:3px;margin-bottom:12px;font-weight:500;}

.resched-date-scroll{padding:0 24px;display:flex;gap:8px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;}
.resched-date-scroll::-webkit-scrollbar{display:none;}
.resched-date-item{flex-shrink:0;min-width:60px;padding:10px 12px;background:var(--bg-card);border:1.5px solid var(--rule);border-radius:12px;text-align:center;cursor:pointer;transition:all 0.15s;}
.resched-date-item:active{transform:scale(0.96);}
.resched-date-item.selected{background:var(--accent);border-color:var(--accent);color:white;}
.resched-date-item.disabled{opacity:0.35;cursor:not-allowed;pointer-events:none;}
.resched-date-week{font-size:10.5px;letter-spacing:0.5px;margin-bottom:4px;color:var(--ink-3);}
.resched-date-item.selected .resched-date-week{color:rgba(255,255,255,0.7);}
.resched-date-day{font-family:'JetBrains Mono','Noto Sans SC',monospace;font-size:18px;font-weight:600;color:var(--ink);line-height:1;letter-spacing:0.2px;}
.resched-date-item.selected .resched-date-day{color:white;}
.resched-date-month{font-size:9.5px;letter-spacing:0.3px;margin-top:3px;color:var(--ink-4);}
.resched-date-item.selected .resched-date-month{color:rgba(255,255,255,0.6);}

.resched-time-grid{padding:0 24px;display:grid;grid-template-columns:repeat(3,1fr);gap:8px;}
.resched-time-slot{padding:11px 0;background:var(--bg-card);border:1.5px solid var(--rule);border-radius:10px;text-align:center;cursor:pointer;font-family:'JetBrains Mono','Noto Sans SC',monospace;font-size:13.5px;font-weight:500;color:var(--ink);letter-spacing:0.5px;transition:all 0.15s;}
.resched-time-slot:active{transform:scale(0.96);}
.resched-time-slot.selected{background:var(--accent);border-color:var(--accent);color:white;}
.resched-time-slot.taken{opacity:0.35;cursor:not-allowed;pointer-events:none;text-decoration:line-through;}

.resched-foot{padding:18px 24px calc(24px + env(safe-area-inset-bottom));margin-top:auto;background:var(--bg);border-top:1px solid var(--rule);}
.resched-foot-hint{text-align:center;font-size:11.5px;color:var(--ink-3);letter-spacing:0.3px;margin-bottom:10px;}
.resched-foot-btn{width:100%;padding:13px;background:var(--accent);color:white;border:none;border-radius:12px;font-size:14px;font-weight:500;cursor:pointer;font-family:inherit;letter-spacing:0.5px;}
.resched-foot-btn:active{transform:scale(0.98);}
.resched-foot-btn:disabled{background:var(--rule);color:var(--ink-4);cursor:not-allowed;transform:none;}
.resched-option{display:flex;align-items:center;gap:14px;padding:16px 24px;cursor:pointer;border-bottom:1px solid var(--rule);}
.resched-option:last-child{border-bottom:none;}
.resched-option:active{background:var(--accent-soft);}
.resched-option-icon{flex-shrink:0;width:36px;height:36px;border-radius:50%;background:var(--accent-soft);color:var(--accent);display:flex;align-items:center;justify-content:center;}
.resched-option-icon svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;}
.resched-option.danger .resched-option-icon{background:rgba(184,90,90,0.08);color:#A85858;}
.resched-option-body{flex:1;min-width:0;}
.resched-option-title{font-size:14px;color:var(--ink);font-weight:500;letter-spacing:0.3px;}
.resched-option.danger .resched-option-title{color:#A85858;}
.resched-option-sub{font-size:11.5px;color:var(--ink-3);margin-top:2px;letter-spacing:0.2px;line-height:1.6;}
.resched-foot{padding:14px 20px calc(20px + env(safe-area-inset-bottom));border-top:1px solid var(--rule);}
.resched-cancel{width:100%;padding:13px;border-radius:12px;font-size:14px;color:var(--ink-2);background:transparent;border:1px solid var(--rule);cursor:pointer;font-family:inherit;letter-spacing:0.3px;}
.resched-cancel:active{transform:scale(0.99);background:rgba(78,90,74,0.04);}

/* 主页编辑器 · 子页（v0.18）- 基本信息 / 专业介绍 */
.subed-page{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--bg);z-index:409;display:flex;flex-direction:column;overflow-y:auto;}
.subed-head{padding:calc(20px + env(safe-area-inset-top)) 24px 14px;display:flex;align-items:center;gap:14px;border-bottom:1px solid var(--rule);background:var(--bg);position:sticky;top:0;z-index:5;}
.subed-back{width:32px;height:32px;border-radius:50%;border:none;background:rgba(78,90,74,0.06);color:var(--ink);font-size:16px;cursor:pointer;flex-shrink:0;}
.subed-back:active{background:rgba(78,90,74,0.12);}
.subed-head-title{flex:1;font-family:'Noto Serif SC',serif;font-size:16px;font-weight:600;color:var(--ink);letter-spacing:0.5px;}
.subed-save-btn{padding:7px 16px;border-radius:18px;background:var(--accent);color:white;border:none;font-size:12.5px;font-weight:500;cursor:pointer;font-family:inherit;letter-spacing:0.3px;}
.subed-save-btn:active{transform:scale(0.97);}
.subed-save-btn:disabled{background:rgba(78,90,74,0.18);color:var(--ink-4);cursor:not-allowed;}

.subed-content{padding:18px 24px calc(80px + env(safe-area-inset-bottom));}

/* 表单 section */
.subed-section{margin-bottom:24px;}
.subed-section-label{font-size:11.5px;color:var(--ink-3);letter-spacing:2.5px;margin-bottom:10px;padding-left:2px;}

.subed-field{background:var(--bg-card);border:1px solid var(--rule);border-radius:12px;padding:14px 16px;margin-bottom:10px;}
.subed-field-key{font-size:11.5px;color:var(--ink-3);margin-bottom:6px;letter-spacing:0.3px;}
.subed-field-key .required{color:var(--warm);margin-left:3px;}
.subed-field-input{width:100%;border:none;background:transparent;color:var(--ink);font-size:14px;letter-spacing:0.3px;padding:2px 0;font-family:inherit;outline:none;}
.subed-field-input::placeholder{color:var(--ink-4);font-style:italic;}
.subed-field-textarea{width:100%;border:none;background:transparent;color:var(--ink);font-size:13.5px;line-height:1.85;letter-spacing:0.3px;padding:2px 0;font-family:inherit;outline:none;resize:none;min-height:80px;}
.subed-field-textarea::placeholder{color:var(--ink-4);font-style:italic;}
.subed-field-hint{font-size:11px;color:var(--ink-4);margin-top:6px;letter-spacing:0.3px;line-height:1.6;}

/* 头像选择 */
.subed-avatar-row{display:flex;align-items:center;gap:14px;}
.subed-avatar-preview{width:54px;height:54px;border-radius:50%;background:var(--warm);color:white;display:flex;align-items:center;justify-content:center;font-family:'Noto Serif SC',serif;font-size:22px;font-weight:600;flex-shrink:0;}
.subed-avatar-info{flex:1;min-width:0;}
.subed-avatar-name{font-size:13px;color:var(--ink-2);font-weight:500;margin-bottom:2px;letter-spacing:0.3px;}
.subed-avatar-sub{font-size:11px;color:var(--ink-4);letter-spacing:0.2px;}
.subed-avatar-btn{flex-shrink:0;padding:6px 12px;background:transparent;color:var(--accent);border:1px solid var(--accent-border);border-radius:8px;font-size:11.5px;cursor:pointer;font-family:inherit;letter-spacing:0.3px;}
.subed-avatar-btn:active{background:var(--accent-soft);}

/* 标签多选（流派、议题）*/
.subed-tag-list{display:flex;flex-wrap:wrap;gap:7px;}
.subed-tag{padding:6px 13px;background:rgba(78,90,74,0.04);border:1px solid var(--rule);color:var(--ink-2);font-size:12.5px;border-radius:14px;cursor:pointer;transition:all 0.18s;letter-spacing:0.3px;font-family:inherit;}
.subed-tag:active{transform:scale(0.97);}
.subed-tag.selected{background:var(--accent-soft);border-color:var(--accent);color:var(--accent);font-weight:500;}

/* 字数统计 */
.subed-counter{font-size:11px;color:var(--ink-4);text-align:right;letter-spacing:0.3px;margin-top:6px;}

/* 底部"未保存"提示 + 保存按钮 */
.subed-foot{position:fixed;bottom:0;left:50%;transform:translateX(-50%);width:100%;max-width:420px;padding:14px 20px calc(14px + env(safe-area-inset-bottom));background:var(--bg);border-top:1px solid var(--rule);display:flex;gap:10px;align-items:center;z-index:6;display:none;}
.subed-foot.dirty{display:flex;}
.subed-foot-dot{flex-shrink:0;width:7px;height:7px;border-radius:50%;background:#D4948A;}
.subed-foot-text{flex:1;font-size:11.5px;color:var(--ink-3);letter-spacing:0.3px;}
.subed-foot-btn{padding:10px 18px;background:var(--accent);color:white;border:none;border-radius:10px;font-size:13px;font-weight:500;cursor:pointer;font-family:inherit;letter-spacing:0.3px;}
.subed-foot-btn:active{transform:scale(0.98);}

/* 全部历程 / 全部笔记 / 完整日程页（v0.17）*/
.list-page{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--bg);z-index:407;display:flex;flex-direction:column;overflow-y:auto;}
.list-head{padding:calc(20px + env(safe-area-inset-top)) 24px 8px;display:flex;align-items:center;gap:14px;flex-shrink:0;}
.list-back{width:32px;height:32px;border-radius:50%;border:none;background:rgba(78,90,74,0.06);color:var(--ink);font-size:16px;cursor:pointer;flex-shrink:0;}
.list-back:active{background:rgba(78,90,74,0.12);}
.list-head-title{flex:1;font-family:'Noto Serif SC',serif;font-size:17px;font-weight:600;color:var(--ink);letter-spacing:0.5px;}
.list-head-sub{font-size:11px;color:var(--ink-3);margin-top:2px;letter-spacing:0.3px;}
.list-content{padding:18px 24px calc(40px + env(safe-area-inset-bottom));}

/* 完整日程页 · 一周咨询列表 */
.sched-day{margin-bottom:22px;}
.sched-day-head{font-family:'Noto Serif SC',serif;font-size:13.5px;font-weight:600;color:var(--ink);letter-spacing:0.5px;margin-bottom:10px;padding-bottom:6px;border-bottom:1px solid var(--rule);}
.sched-day-head .day-sub{font-size:11.5px;color:var(--ink-3);font-weight:400;font-family:'Noto Sans SC',sans-serif;margin-left:8px;letter-spacing:0.3px;}
.sched-day.empty .sched-empty{font-size:12px;color:var(--ink-4);padding:10px 4px;letter-spacing:0.3px;font-style:italic;}
.sched-item{padding:10px 14px;background:var(--bg-card);border:1px solid var(--rule);border-radius:10px;margin-bottom:6px;display:flex;align-items:center;gap:12px;cursor:pointer;transition:transform 0.15s;}
.sched-item:active{transform:scale(0.99);}
.sched-item-time{flex-shrink:0;font-family:'JetBrains Mono','Noto Sans SC',monospace;font-size:13px;color:var(--ink);font-weight:500;letter-spacing:0.3px;min-width:62px;}
.sched-item-body{flex:1;min-width:0;}
.sched-item-name{font-size:13px;color:var(--ink);font-weight:500;letter-spacing:0.3px;}
.sched-item-meta{font-size:11px;color:var(--ink-3);margin-top:2px;letter-spacing:0.2px;}
.sched-item-tag{flex-shrink:0;font-size:10.5px;padding:2px 7px;border-radius:6px;letter-spacing:0.5px;}
.sched-item-tag.intake{background:rgba(184,132,90,0.10);color:var(--warm);}
.sched-item-tag.formal{background:rgba(61,89,70,0.08);color:var(--accent);}

/* ============ 我的日历（B 端 · 网格 · 同 biz-grid 风格）============ */
.cal-slots-page{overflow-y:auto;}
.cal-slots-intro{margin:0 auto 14px;width:calc(100% - 48px);max-width:372px;box-sizing:border-box;padding:12px 14px;background:rgba(78,90,74,0.04);border:1px dashed var(--rule);border-radius:10px;font-size:12px;color:var(--ink-3);line-height:1.85;letter-spacing:0.2px;}
.cal-slots-tabs{margin:0 auto 16px;width:calc(100% - 48px);max-width:372px;box-sizing:border-box;}
.cal-slots-panel{padding-bottom:8px;}
.cal-scroll-in-page{overflow:visible;padding:0 0 12px;}
.acct-section{padding:8px 24px 4px;}
.acct-section-label{font-size:11px;color:var(--accent);letter-spacing:2.5px;margin-bottom:12px;opacity:0.85;}
.acct-contract-card{background:var(--bg-card);border:1px solid var(--rule);border-radius:14px;padding:16px 18px;}
.acct-contract-desc{font-size:12px;color:var(--ink-3);line-height:1.85;letter-spacing:0.2px;margin-bottom:14px;}
.acct-contract-row{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:10px;padding-top:12px;border-top:1px dashed var(--rule);}
.acct-contract-balance-label{font-size:11.5px;color:var(--ink-3);margin-bottom:4px;}
.acct-contract-balance{font-family:'Noto Serif SC',serif;font-size:26px;font-weight:600;color:var(--ink);}
.acct-contract-topup{padding:7px 16px;background:var(--accent);color:white;border:none;border-radius:14px;font-size:12.5px;cursor:pointer;font-family:inherit;font-weight:500;}
.acct-contract-foot{font-size:11.5px;color:var(--ink-3);line-height:1.85;}
.cal-page-head{align-items:flex-start;flex-shrink:0;background:var(--bg);border-bottom:1px solid var(--rule);}
.cal-head-body{flex:1;min-width:0;}
.cal-scroll{flex:1;overflow:auto;padding:14px 0 calc(16px + env(safe-area-inset-bottom));-webkit-overflow-scrolling:touch;}
.cal-grid-card{margin:0 auto;}

.cal-toolbar{display:flex;align-items:center;justify-content:center;gap:10px;margin-bottom:12px;}
.cal-nav-btn{width:32px;height:32px;border-radius:50%;border:1px solid var(--rule);background:var(--bg);color:var(--ink);font-size:17px;cursor:pointer;font-family:inherit;line-height:1;}
.cal-nav-btn:active{background:rgba(78,90,74,0.06);}
.cal-today-btn{padding:6px 14px;border-radius:14px;border:1px solid var(--rule);background:var(--bg);color:var(--ink-2);font-size:12px;font-family:inherit;cursor:pointer;letter-spacing:0.3px;}
.cal-today-btn:active{background:rgba(78,90,74,0.06);}

.cal-legend{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 16px;margin-bottom:12px;padding-bottom:12px;border-bottom:1px dashed var(--rule);}
.cal-legend-item{display:inline-flex;align-items:center;gap:6px;font-size:11px;color:var(--ink-3);letter-spacing:0.2px;}
.cal-legend-swatch{width:18px;height:18px;border-radius:6px;flex-shrink:0;box-sizing:border-box;}
.cal-legend-swatch.session{background:var(--accent);}
.cal-legend-swatch.rhythm{background:rgba(61,89,70,0.55);border:1px dashed rgba(61,89,70,0.45);}
.cal-legend-swatch.block{background:#D8D6D2;border:1px solid rgba(120,120,120,0.25);}
.cal-legend-swatch.open{background:var(--accent-soft);border:1.5px solid var(--accent-border);}

/* 网格 · 结构与 biz-grid 一致 */
.cal-grid{display:grid;grid-template-columns:36px repeat(7,1fr);gap:4px;}
.cal-grid-corner{height:32px;}
.cal-grid-col-head{font-size:11px;color:var(--ink-3);text-align:center;padding:2px 0 6px;letter-spacing:0.2px;line-height:1.35;}
.cal-grid-col-head.weekend{color:var(--ink-4);}
.cal-grid-col-head.today{color:var(--accent);font-weight:600;}
.cal-grid-col-date{display:block;font-size:10px;color:var(--ink-4);margin-top:1px;font-family:'JetBrains Mono',monospace;}
.cal-grid-col-head.today .cal-grid-col-date{color:var(--accent);opacity:0.75;}
.cal-grid-time{font-size:10.5px;color:var(--ink-4);text-align:right;padding:6px 4px 0 0;letter-spacing:0;font-family:'JetBrains Mono',monospace;line-height:34px;}

.cal-grid-cell{height:34px;background:var(--bg);border-radius:6px;cursor:pointer;transition:transform 0.12s, background 0.12s;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:600;color:transparent;user-select:none;border:1px solid transparent;box-sizing:border-box;}
.cal-grid-cell:active{transform:scale(0.93);}
.cal-grid-cell.idle{opacity:0.35;}
.cal-grid-cell.idle:active{opacity:0.55;background:rgba(78,90,74,0.06);}
.cal-grid-cell.open{background:var(--accent-soft);border-color:var(--accent-border);color:var(--accent);font-size:14px;font-weight:700;}
.cal-grid-cell.session.formal{background:var(--accent);color:#fff;font-size:10px;letter-spacing:0.2px;}
.cal-grid-cell.session.upcoming{background:var(--accent);color:#fff;font-size:10px;letter-spacing:0.2px;}
.cal-grid-cell.session.rhythm{background:rgba(61,89,70,0.72);color:#fff;font-size:10px;letter-spacing:0.2px;border:1px dashed rgba(255,255,255,0.35);}
.cal-grid-cell.session.intake{background:var(--warm);color:#fff;font-size:10px;}
.cal-grid-cell.block{background:#E4E2DE;border-color:rgba(120,120,120,0.28);color:var(--ink-3);font-size:11px;font-weight:700;}

.cal-grid-expand{margin-top:12px;text-align:center;}
.cal-grid-summary{margin-top:12px;}

.cal-block-mask{position:fixed;inset:0;background:rgba(44,50,41,0);z-index:418;pointer-events:none;transition:background 0.28s ease;}
.cal-block-mask.open{background:rgba(44,50,41,0.42);pointer-events:auto;}
.cal-block-sheet{position:fixed;bottom:0;left:50%;transform:translateX(-50%) translateY(100%);width:100%;max-width:420px;background:var(--bg);border-radius:24px 24px 0 0;z-index:419;padding:22px 24px calc(18px + env(safe-area-inset-bottom));transition:transform 0.32s cubic-bezier(0.32,0.72,0.24,1);box-shadow:0 -8px 32px rgba(44,50,41,0.12);}
.cal-block-sheet.open{transform:translateX(-50%) translateY(0);}
.cal-block-sheet-title{font-family:'Noto Serif SC',serif;font-size:16px;font-weight:600;color:var(--ink);margin-bottom:6px;letter-spacing:0.3px;}
.cal-block-sheet-sub{font-size:12px;color:var(--ink-3);line-height:1.65;margin-bottom:14px;}
.cal-block-input{width:100%;padding:12px 14px;background:var(--bg-card);border:1px solid var(--rule);border-radius:10px;font-family:inherit;font-size:14px;color:var(--ink);outline:none;box-sizing:border-box;margin-bottom:16px;}
.cal-block-input:focus{border-color:var(--accent);}
.cal-block-actions{display:flex;gap:10px;}
.cal-block-btn{flex:1;padding:13px;border-radius:12px;font-size:14px;font-weight:500;font-family:inherit;cursor:pointer;border:1px solid var(--rule);background:transparent;color:var(--ink-2);}
.cal-block-btn.primary{background:var(--accent);color:white;border-color:var(--accent);}
.cal-block-btn:active{transform:scale(0.98);}
.cal-block-btn.danger{color:#A85858;border-color:rgba(168,88,88,0.35);}
.cal-block-btn.danger:active{background:rgba(168,88,88,0.06);}
.cal-block-date{font-size:13px;color:var(--ink-2);margin-bottom:12px;letter-spacing:0.2px;}
.cal-block-time-row{display:flex;align-items:flex-end;gap:8px;margin-bottom:14px;}
.cal-block-time-field{flex:1;min-width:0;}
.cal-block-time-label{display:block;font-size:11px;color:var(--ink-3);letter-spacing:0.5px;margin-bottom:5px;}
.cal-block-time-select{width:100%;padding:11px 12px;background:var(--bg-card);border:1px solid var(--rule);border-radius:10px;font-family:'JetBrains Mono',monospace;font-size:13px;color:var(--ink);outline:none;box-sizing:border-box;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%237A8377' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;}
.cal-block-time-select:focus{border-color:var(--accent);}
.cal-block-time-sep{color:var(--ink-4);font-size:14px;padding-bottom:12px;flex-shrink:0;}

.cal-confirm-mask{position:fixed;inset:0;background:rgba(44,50,41,0);z-index:500;display:flex;align-items:center;justify-content:center;padding:28px 24px;box-sizing:border-box;pointer-events:none;opacity:0;transition:opacity 0.28s ease, background 0.28s ease;-webkit-backdrop-filter:blur(0);backdrop-filter:blur(0);}
.cal-confirm-mask.open{opacity:1;background:rgba(44,50,41,0.48);pointer-events:auto;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);}
.cal-confirm-box{width:100%;max-width:336px;background:var(--bg-card);border-radius:20px;padding:24px 22px 20px;box-shadow:0 20px 50px rgba(44,50,41,0.2);border:1px solid var(--rule);transform:scale(0.94) translateY(8px);opacity:0;transition:transform 0.32s cubic-bezier(0.32,0.72,0,1), opacity 0.28s ease;text-align:center;}
.cal-confirm-mask.open .cal-confirm-box{transform:scale(1) translateY(0);opacity:1;}
.cal-confirm-box.kind-session{border-color:var(--warm-border);box-shadow:0 20px 50px rgba(184,132,90,0.14);}
.cal-confirm-box.kind-template{border-color:var(--accent-border);box-shadow:0 20px 50px rgba(61,89,70,0.12);}
.cal-confirm-box.kind-delete{border-color:rgba(168,88,88,0.28);box-shadow:0 20px 50px rgba(168,88,88,0.1);}
.cal-confirm-icon-wrap{display:flex;justify-content:center;margin-bottom:14px;}
.cal-confirm-icon{width:52px;height:52px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.cal-confirm-icon svg{width:24px;height:24px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}
.cal-confirm-box.kind-session .cal-confirm-icon{background:var(--warm-soft);color:var(--warm);}
.cal-confirm-box.kind-template .cal-confirm-icon{background:var(--accent-soft);color:var(--accent);}
.cal-confirm-box.kind-delete .cal-confirm-icon{background:rgba(168,88,88,0.08);color:#A85858;}
.cal-confirm-badge{display:inline-block;font-size:10px;letter-spacing:1.8px;font-weight:500;padding:3px 10px;border-radius:20px;margin:0 auto 10px;text-align:center;width:fit-content;}
.cal-confirm-box.kind-session .cal-confirm-badge{background:var(--warm-soft);color:var(--warm);}
.cal-confirm-box.kind-template .cal-confirm-badge{background:var(--accent-soft);color:var(--accent);}
.cal-confirm-box.kind-delete .cal-confirm-badge{background:rgba(168,88,88,0.08);color:#A85858;}
.cal-confirm-box .cal-confirm-badge:empty{display:none;}
.cal-confirm-title{font-family:'Noto Serif SC',serif;font-size:18px;font-weight:600;color:var(--ink);margin-bottom:8px;line-height:1.45;letter-spacing:0.3px;text-align:center;}
.cal-confirm-lead{font-size:12.5px;color:var(--ink-3);line-height:1.75;margin-bottom:14px;text-align:center;letter-spacing:0.2px;}
.cal-confirm-lead:empty{display:none;}
.cal-confirm-detail{margin-bottom:14px;text-align:left;}
.cal-confirm-detail:empty{display:none;}
.cal-confirm-detail-list{background:var(--bg);border:1px solid var(--rule);border-radius:12px;overflow:hidden;}
.cal-confirm-box.kind-session .cal-confirm-detail-list{border-color:var(--warm-border);background:rgba(184,132,90,0.03);}
.cal-confirm-box.kind-template .cal-confirm-detail-list{border-color:var(--accent-border);background:var(--accent-soft);}
.cal-confirm-detail-row{display:flex;align-items:flex-start;gap:10px;padding:11px 14px;border-bottom:1px solid var(--rule);}
.cal-confirm-detail-row:last-child{border-bottom:none;}
.cal-confirm-detail-time{font-family:'JetBrains Mono',monospace;font-size:12px;color:var(--ink-2);flex-shrink:0;padding-top:1px;min-width:42px;}
.cal-confirm-detail-main{flex:1;min-width:0;}
.cal-confirm-detail-name{font-size:13px;font-weight:500;color:var(--ink);letter-spacing:0.2px;}
.cal-confirm-detail-meta{font-size:11px;color:var(--ink-3);margin-top:2px;line-height:1.55;letter-spacing:0.2px;}
.cal-confirm-chips{display:flex;flex-wrap:wrap;gap:6px;padding:12px 14px;}
.cal-confirm-chip{font-family:'JetBrains Mono',monospace;font-size:11.5px;padding:5px 10px;border-radius:8px;background:var(--bg-card);border:1px solid var(--accent-border);color:var(--accent);letter-spacing:0;}
.cal-confirm-note{font-size:11.5px;color:var(--ink-3);line-height:1.75;padding:10px 12px;border-radius:10px;background:var(--bg);border:1px dashed var(--rule);margin-bottom:16px;letter-spacing:0.2px;text-align:center;}
.cal-confirm-note:empty{display:none;}
.cal-confirm-actions{display:flex;gap:10px;}
.cal-confirm-btn{flex:1;padding:13px 12px;border-radius:13px;font-size:14px;font-weight:500;font-family:inherit;cursor:pointer;border:1px solid var(--rule);background:transparent;color:var(--ink-2);letter-spacing:0.3px;transition:transform 0.12s, background 0.12s;}
.cal-confirm-btn.ghost{background:var(--bg);color:var(--ink-2);}
.cal-confirm-btn.primary{background:var(--accent);color:#fff;border-color:var(--accent);box-shadow:0 4px 14px rgba(61,89,70,0.22);}
.cal-confirm-box.kind-session .cal-confirm-btn.primary{background:var(--warm);border-color:var(--warm);box-shadow:0 4px 14px rgba(184,132,90,0.24);}
.cal-confirm-box.kind-delete .cal-confirm-btn.primary{background:#A85858;border-color:#A85858;box-shadow:0 4px 14px rgba(168,88,88,0.22);}
.cal-confirm-btn:active{transform:scale(0.98);}

/* 档案 · 更多操作 sheet（v0.17）*/
.pfmore-mask{position:fixed;inset:0;background:rgba(44,50,41,0);z-index:415;pointer-events:none;transition:background 0.3s ease;}
.pfmore-mask.open{background:rgba(44,50,41,0.42);pointer-events:auto;}
.pfmore-sheet{position:fixed;bottom:0;left:50%;transform:translateX(-50%) translateY(100%);width:100%;max-width:420px;background:var(--bg);border-radius:24px 24px 0 0;z-index:416;transition:transform 0.32s cubic-bezier(0.32,0.72,0.24,1);padding-bottom:env(safe-area-inset-bottom);}
.pfmore-sheet.open{transform:translateX(-50%) translateY(0);}
.pfmore-body{padding:6px 0;}
.pfmore-option{display:flex;align-items:center;gap:14px;padding:16px 24px;cursor:pointer;border-bottom:1px solid var(--rule);}
.pfmore-option:last-child{border-bottom:none;}
.pfmore-option:active{background:var(--accent-soft);}
.pfmore-icon{flex-shrink:0;width:32px;height:32px;border-radius:50%;background:var(--accent-soft);color:var(--accent);display:flex;align-items:center;justify-content:center;}
.pfmore-icon svg{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;}
.pfmore-option.danger .pfmore-icon{background:rgba(184,90,90,0.08);color:#A85858;}
.pfmore-option-body{flex:1;min-width:0;}
.pfmore-option-title{font-size:14px;color:var(--ink);font-weight:500;letter-spacing:0.3px;}
.pfmore-option.danger .pfmore-option-title{color:#A85858;}
.pfmore-option-sub{font-size:11.5px;color:var(--ink-3);margin-top:2px;letter-spacing:0.2px;line-height:1.6;}
.pfmore-foot{padding:14px 20px calc(20px + env(safe-area-inset-bottom));border-top:1px solid var(--rule);}
.pfmore-cancel{width:100%;padding:13px;border-radius:12px;font-size:14px;color:var(--ink-2);background:transparent;border:1px solid var(--rule);cursor:pointer;font-family:inherit;letter-spacing:0.3px;}
.pfmore-cancel:active{transform:scale(0.99);background:rgba(78,90,74,0.04);}

.b-date b{color:var(--ink);font-weight:500;font-family:'Noto Serif SC',serif;font-size:13px;}

.b-section{padding:18px 24px 8px;}
.b-section-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:12px;gap:14px;}
.b-section-label{font-family:'Noto Serif SC',serif;font-size:15px;font-weight:600;color:var(--ink);letter-spacing:0.5px;}
.b-section-more{font-size:12px;color:var(--accent);cursor:pointer;letter-spacing:0.3px;}
.b-section-more:active{opacity:0.6;}

.b-today-empty{padding:24px 20px;background:var(--bg-card);border:1px dashed var(--rule);border-radius:14px;text-align:center;}
.b-today-empty-text{font-size:13px;color:var(--ink-3);line-height:1.85;}
.b-today-empty-text b{color:var(--ink-2);font-weight:500;}

.b-today-card{background:var(--bg-card);border:1px solid var(--rule);border-radius:14px;padding:16px 18px;margin-bottom:10px;display:flex;gap:14px;align-items:flex-start;}
.b-today-time{flex-shrink:0;width:48px;text-align:center;}
.b-today-time-h{font-family:'Noto Serif SC',serif;font-size:18px;font-weight:600;color:var(--ink);letter-spacing:0.3px;line-height:1.1;}
.b-today-time-m{font-size:10px;color:var(--ink-3);margin-top:3px;letter-spacing:0.5px;}
.b-today-body{flex:1;min-width:0;border-left:1px solid var(--rule);padding-left:14px;}
.b-today-vname{font-size:14.5px;font-weight:500;color:var(--ink);margin-bottom:3px;}
.b-today-meta{font-size:11.5px;color:var(--ink-3);line-height:1.7;}
.b-today-meta b{color:var(--ink-2);font-weight:500;}
.b-today-tag{display:inline-block;font-size:10px;letter-spacing:0.5px;padding:1px 7px;border-radius:8px;margin-left:6px;vertical-align:1px;}
.b-today-tag.intake{background:var(--warm-soft);color:var(--warm);}
.b-today-tag.upcoming{background:rgba(184,132,90,0.12);color:var(--warm);}
.b-today-tag.formal{background:rgba(107,143,94,0.12);color:var(--green);}
.b-today-actions{padding-top:6px;}
.b-today-btn{padding:6px 14px;background:var(--accent);color:white;border:none;border-radius:18px;font-size:12px;cursor:pointer;font-family:inherit;}
.b-today-btn:active{transform:scale(0.97);}
.b-today-btn.secondary{background:transparent;color:var(--ink-2);border:1px solid var(--rule);margin-right:6px;}

/* 首页 · 近期咨询 */
.b-recent-list{display:flex;flex-direction:column;gap:10px;}
.b-recent-card{background:var(--bg-card);border:1px solid var(--rule);border-radius:12px;padding:12px 14px;cursor:pointer;transition:transform 0.15s;}
.b-recent-card:active{transform:scale(0.995);}
.b-recent-top{display:flex;align-items:center;gap:10px;margin-bottom:8px;}
.b-recent-avatar{flex-shrink:0;width:36px;height:36px;border-radius:50%;background:var(--warm-soft);color:var(--warm);font-family:'Noto Serif SC',serif;font-size:15px;font-weight:600;display:flex;align-items:center;justify-content:center;}
.b-recent-main{flex:1;min-width:0;}
.b-recent-name-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:3px;}
.b-recent-name{font-size:14px;font-weight:500;color:var(--ink);}
.b-recent-meta{font-size:11.5px;color:var(--ink-3);line-height:1.55;}
.b-recent-actions{display:flex;gap:6px;flex-wrap:wrap;padding-top:2px;}
.b-recent-btn{padding:5px 12px;border-radius:16px;font-size:11px;border:1px solid var(--rule);background:transparent;color:var(--ink-2);cursor:pointer;font-family:inherit;}
.b-recent-btn.primary{background:var(--accent);color:#fff;border-color:var(--accent);}
.b-recent-empty .b-today-empty-text{font-size:12px;}
.b-recent-list--page{gap:12px;}
.b-upcoming-empty{padding:32px 8px;text-align:center;font-size:13px;color:var(--ink-3);line-height:1.85;}
.b-upcoming-empty span{font-size:12px;color:var(--ink-4);}

.b-todo-list{background:var(--bg-card);border:1px solid var(--rule);border-radius:14px;overflow:hidden;}
.b-todo-item{padding:14px 18px;display:flex;gap:14px;align-items:center;border-bottom:1px solid var(--rule);cursor:pointer;transition:background 0.15s;}
.b-todo-item:last-child{border-bottom:none;}
.b-todo-item:active{background:var(--accent-soft);}
.b-todo-icon{flex-shrink:0;width:32px;height:32px;border-radius:50%;background:var(--accent-soft);display:flex;align-items:center;justify-content:center;}
.b-todo-icon svg{width:16px;height:16px;stroke:var(--accent);fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;}
.b-todo-body{flex:1;min-width:0;}
.b-todo-title{font-size:13.5px;color:var(--ink);font-weight:500;margin-bottom:2px;letter-spacing:0.2px;}
.b-todo-sub{font-size:11px;color:var(--ink-3);line-height:1.6;}
.b-todo-arrow{flex-shrink:0;color:var(--ink-4);font-size:18px;font-weight:300;}

.b-week-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;}
.b-week-stat{background:var(--bg-card);border:1px solid var(--rule);border-radius:12px;padding:14px 16px;}
.b-week-stat-label{font-size:10.5px;color:var(--ink-3);letter-spacing:1.5px;margin-bottom:6px;}
.b-week-stat-val{font-family:'Noto Serif SC',serif;font-size:22px;font-weight:600;color:var(--ink);letter-spacing:0.3px;line-height:1.1;}
.b-week-stat-unit{font-size:11px;color:var(--ink-3);margin-left:3px;font-weight:400;font-family:'Noto Sans SC',sans-serif;}
.b-week-stat-sub{font-size:10.5px;color:var(--ink-4);margin-top:4px;letter-spacing:0.3px;}

.b-visitor-list{display:flex;flex-direction:column;gap:10px;}
.b-visitor-card{background:var(--bg-card);border:1px solid var(--rule);border-radius:12px;padding:14px 16px;display:flex;align-items:center;gap:12px;cursor:pointer;transition:transform 0.15s;}
.b-visitor-card:active{transform:scale(0.995);}
.b-visitor-avatar{flex-shrink:0;width:38px;height:38px;border-radius:50%;background:var(--warm-soft);color:var(--warm);font-family:'Noto Serif SC',serif;font-size:15px;font-weight:600;display:flex;align-items:center;justify-content:center;}
.b-visitor-body{flex:1;min-width:0;}
.b-visitor-name-row{display:flex;align-items:baseline;gap:8px;margin-bottom:3px;}
.b-visitor-name{font-size:14px;color:var(--ink);font-weight:500;letter-spacing:0.2px;}
.b-visitor-state{font-size:10px;letter-spacing:0.5px;padding:1px 7px;border-radius:6px;}
.b-visitor-state.booked{background:var(--warm-soft);color:var(--warm);}
.b-visitor-state.formal{background:rgba(107,143,94,0.12);color:var(--green);}
.b-visitor-state.intake_done{background:rgba(180,165,135,0.18);color:#8A7E68;}
.b-visitor-state.single_active{background:rgba(107,143,113,0.14);color:#4A7352;}
.b-visitor-meta{font-size:11.5px;color:var(--ink-3);line-height:1.6;}
.b-visitor-meta b{color:var(--ink-2);font-weight:500;}
.b-section-more-row{display:flex;align-items:center;gap:14px;}
.b-section-more-row .b-section-more{position:relative;}
.b-section-more-row .b-section-more + .b-section-more::before{content:'';position:absolute;left:-7px;top:50%;transform:translateY(-50%);width:1px;height:10px;background:var(--rule);}
.b-visitor-state.pending_bind{background:rgba(184,132,90,0.12);color:var(--accent);}

.b-banner{margin:0 24px 14px;padding:11px 14px;background:rgba(184,132,90,0.07);border:1px solid var(--accent-border);border-radius:10px;display:flex;align-items:center;gap:10px;cursor:pointer;}
.b-banner-icon{flex-shrink:0;width:16px;height:16px;color:var(--accent);}
.b-banner-icon svg{width:100%;height:100%;stroke:currentColor;fill:none;stroke-width:1.6;}
.b-banner-text{flex:1;font-size:12px;color:var(--ink-2);line-height:1.5;letter-spacing:0.2px;}
.b-banner-text b{color:var(--ink);font-weight:500;}
.b-banner-arrow{flex-shrink:0;color:var(--accent);font-size:16px;font-weight:300;}

.demo-toggle{position:fixed;bottom:calc(16px + env(safe-area-inset-bottom));left:12px;background:rgba(44,37,32,0.85);color:white;font-size:10.5px;padding:6px 12px;border-radius:18px;cursor:pointer;z-index:500;letter-spacing:0.5px;backdrop-filter:blur(10px);display:flex;align-items:center;gap:8px;font-family:inherit;border:none;}
.demo-toggle:active{transform:scale(0.97);}
.demo-toggle-pill{background:rgba(184,132,90,0.5);padding:1px 6px;border-radius:6px;font-size:9px;letter-spacing:0.3px;}

body[data-state="empty"] .show-when-mature{display:none;}
body[data-state="mature"] .show-when-empty{display:none;}

/* ============ 开张进度锚点（v0.47 · 仅空账号 · 导览之后接住第一个真实动作 · 克制状态条，非剧情卡）============ */
.obb{ margin:0 24px 16px; background:var(--bg-card); border:1px solid var(--rule); border-radius:16px; padding:18px 18px 10px; box-shadow:0 4px 16px rgba(61,89,70,0.05); }
.obb-head{ display:flex; align-items:baseline; gap:10px; }
.obb-title{ font-family:'Noto Serif SC',serif; font-size:15px; font-weight:600; color:var(--ink); letter-spacing:0.5px; }
.obb-sub{ font-size:11.5px; color:var(--ink-3); letter-spacing:0.2px; }
.obb-steps{ margin-top:10px; }
.obb-step{ display:flex; align-items:center; gap:13px; padding:11px 0; }
.obb-step + .obb-step{ border-top:1px solid var(--rule); }
.obb-node{ flex-shrink:0; width:26px; height:26px; border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:12px; font-family:'JetBrains Mono','Noto Sans SC',monospace; font-weight:600; background:rgba(78,90,74,0.06); color:var(--ink-4); border:1.5px solid transparent; transition:all 0.25s; }
.obb-step[data-status="active"] .obb-node{ background:var(--accent-soft); color:var(--accent); border-color:var(--accent-border); }
.obb-step[data-status="done"] .obb-node{ background:var(--accent); color:#fff; }
.obb-node svg{ width:13px; height:13px; stroke:#fff; stroke-width:2.6; fill:none; display:none; }
.obb-node .obb-num{ display:inline; }
.obb-step[data-status="done"] .obb-node .obb-num{ display:none; }
.obb-step[data-status="done"] .obb-node svg{ display:inline; }
.obb-body{ flex:1; min-width:0; }
.obb-step-title{ font-size:13.5px; color:var(--ink); font-weight:500; letter-spacing:0.3px; }
.obb-step[data-status="done"] .obb-step-title, .obb-step[data-status="pending"] .obb-step-title{ color:var(--ink-3); }
.obb-step-sub{ font-size:11.5px; color:var(--ink-3); line-height:1.6; margin-top:3px; letter-spacing:0.2px; }
.obb-cta{ flex-shrink:0; padding:7px 15px; border-radius:9px; font-size:12.5px; font-weight:600; font-family:inherit; cursor:pointer; letter-spacing:0.3px; background:var(--accent); color:#fff; border:none; box-shadow:0 3px 10px rgba(61,89,70,0.18); transition:transform 0.15s; }
.obb-cta:active{ transform:scale(0.97); }
.obb-step:not([data-status="active"]) .obb-cta{ display:none; }
/* 配置+发布都完成 → 收尾态（主页已上线，等第一个来访者）*/
.obb-done{ padding:16px 18px; }
.obb-done .obb-steps{ display:none; }
.obb-final{ display:none; align-items:center; gap:13px; }
.obb-done .obb-final{ display:flex; }
.obb-final-icon{ flex-shrink:0; width:34px; height:34px; border-radius:50%; background:var(--accent-soft); display:flex; align-items:center; justify-content:center; }
.obb-final-icon svg{ width:17px; height:17px; stroke:var(--accent); stroke-width:2.4; fill:none; }
.obb-final-text{ flex:1; min-width:0; }
.obb-final-title{ font-size:13.5px; font-weight:600; color:var(--ink); letter-spacing:0.3px; }
.obb-final-sub{ font-size:11.5px; color:var(--ink-3); margin-top:2px; line-height:1.6; }
.obb-final-btn{ flex-shrink:0; padding:7px 14px; border-radius:9px; font-size:12.5px; font-weight:500; font-family:inherit; cursor:pointer; background:transparent; color:var(--accent); border:1px solid var(--accent-border); }
.obb-final-btn:active{ transform:scale(0.97); background:var(--accent-soft); }

/* ============ 欢迎导览（v0.46 · 开通后、进工作台前 · 全屏多屏滑动 · 零负担只感受）============ */
.wg{position:fixed;inset:0;z-index:610;background:var(--bg);display:none;flex-direction:column;}
.wg.active{display:flex;}
.wg-viewport{flex:1;overflow:hidden;position:relative;}
.wg-track{display:flex;height:100%;transition:transform 0.45s cubic-bezier(0.22,1,0.36,1);}
.wg-slide{min-width:100%;height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:0 34px;text-align:center;overflow-y:auto;}
.wg-eyebrow{font-size:12px;letter-spacing:4px;color:var(--accent);margin-bottom:18px;}
.wg-title{font-family:'Noto Serif SC',serif;font-size:25px;font-weight:600;line-height:1.55;letter-spacing:0.5px;color:var(--ink);margin-bottom:14px;}
.wg-title b{color:var(--accent);}
.wg-sub{font-size:14px;color:var(--ink-3);line-height:1.95;letter-spacing:0.3px;max-width:300px;}
.wg-sub b{color:var(--ink-2);font-weight:500;}

/* 效果预览小卡（沿用 phone-peek 质感） */
.wg-demo{margin-top:26px;width:100%;max-width:280px;background:var(--bg-card);border:1px solid var(--rule);border-radius:16px;box-shadow:0 12px 32px rgba(61,89,70,0.1);padding:18px;}
.wg-demo-label{font-size:10.5px;letter-spacing:1.5px;color:var(--ink-4);margin-bottom:14px;text-align:left;}
.wg-demo-row{display:flex;align-items:center;gap:12px;text-align:left;}
.wg-demo-av{width:46px;height:46px;border-radius:50%;flex-shrink:0;}
.wg-demo-name{font-size:15px;font-weight:600;color:var(--ink);}
.wg-demo-meta{font-size:12px;color:var(--ink-3);margin-top:2px;}
.wg-demo-headline{font-family:'Noto Serif SC',serif;font-size:13px;color:var(--ink-2);line-height:1.6;margin-top:12px;text-align:left;font-style:italic;}
.wg-demo-pill{margin-left:auto;font-size:10.5px;color:var(--accent);background:var(--accent-soft);padding:3px 10px;border-radius:9px;}
.wg-demo-line{display:flex;align-items:center;gap:9px;font-size:12.5px;color:var(--ink-2);padding:8px 0;text-align:left;}
.wg-demo-line svg{width:15px;height:15px;stroke:var(--green);stroke-width:2.5;fill:none;flex-shrink:0;}

/* 半屏真实页面预览弹层 */
.wgpv-trigger{margin-top:14px;display:inline-flex;align-items:center;gap:7px;background:rgba(255,255,255,0.9);color:var(--accent);border:1.5px solid var(--accent-border);border-radius:22px;padding:10px 20px;font-size:13px;font-weight:600;font-family:inherit;cursor:pointer;letter-spacing:0.3px;}
.wgpv-trigger svg{width:15px;height:15px;stroke:var(--accent);stroke-width:2.2;fill:none;}
.wgpv{position:fixed;inset:0;z-index:1200;display:none;}
.wgpv.active{display:block;}
.wgpv-backdrop{position:absolute;inset:0;background:rgba(20,30,24,0.55);animation:wgpvFade 0.25s ease;}
@keyframes wgpvFade{from{opacity:0;}to{opacity:1;}}
.wgpv-panel{position:absolute;left:0;right:0;bottom:0;height:82%;background:var(--bg,#F3F1EC);border-radius:22px 22px 0 0;box-shadow:0 -10px 40px rgba(0,0,0,0.25);display:flex;flex-direction:column;overflow:hidden;animation:wgpvUp 0.32s cubic-bezier(0.22,1,0.36,1);}
@keyframes wgpvUp{from{transform:translateY(100%);}to{transform:translateY(0);}}
.wgpv-head{display:flex;align-items:center;justify-content:space-between;padding:16px 20px 12px;border-bottom:1px solid var(--rule,#E5E1D8);background:#fff;}
.wgpv-title{font-family:'Noto Serif SC',serif;font-size:16px;font-weight:600;color:var(--ink,#2B3329);}
.wgpv-close{background:var(--accent);color:#fff;border:none;border-radius:18px;padding:7px 18px;font-size:13px;font-weight:600;font-family:inherit;cursor:pointer;}
.wgpv-hint{text-align:center;font-size:11px;color:var(--ink-3,#8A8578);padding:8px;background:#fff;letter-spacing:0.5px;}
.wgpv-body{flex:1;overflow:hidden;background:#fff;}
.wgpv-iframe{width:100%;height:100%;border:none;display:block;}
.wg-demo-line + .wg-demo-line{border-top:1px solid var(--rule);}
.wg-demo-pay{text-align:center;padding:6px 0;}
.wg-demo-amt{font-family:'Noto Serif SC',serif;font-size:30px;font-weight:700;color:var(--accent);}
.wg-demo-amt .s{font-size:16px;}
.wg-demo-paysub{font-size:11px;color:var(--ink-3);margin-top:5px;}

/* 底部控制区 */
.wg-foot{padding:20px 34px calc(28px + env(safe-area-inset-bottom));}
.wg-dots{display:flex;gap:7px;justify-content:center;margin-bottom:20px;}
.wg-dot{width:7px;height:7px;border-radius:50%;background:var(--rule);transition:all 0.3s;}
.wg-dot.on{background:var(--accent);width:22px;border-radius:4px;}
.wg-btn{display:block;width:100%;padding:16px;border:none;border-radius:14px;background:var(--accent);color:#fff;font-size:15px;font-weight:600;font-family:inherit;letter-spacing:0.5px;cursor:pointer;transition:transform 0.15s;}
.wg-btn:active{transform:scale(0.98);}
.wg-skip{position:absolute;top:calc(18px + env(safe-area-inset-top));right:22px;z-index:2;border:none;background:none;color:var(--ink-4);font-size:13px;font-family:inherit;cursor:pointer;letter-spacing:0.3px;}

/* ============ AI 简历起稿（v0.50 · 上传简历 → AI 生成主页初稿 · 原型内"生成"为 mock）============ */
.ai-entry{display:flex;align-items:center;gap:13px;background:linear-gradient(135deg, var(--accent-soft), var(--bg-card));border:1px solid var(--accent-border);border-radius:14px;padding:15px 16px;margin-bottom:16px;cursor:pointer;transition:transform 0.15s;}
.ai-entry:active{transform:scale(0.99);}
.ai-entry-icon{flex-shrink:0;width:36px;height:36px;border-radius:10px;background:var(--accent);display:flex;align-items:center;justify-content:center;}
.ai-entry-icon svg{width:19px;height:19px;fill:#fff;}
.ai-entry-body{flex:1;min-width:0;}
.ai-entry-title{font-size:14px;font-weight:600;color:var(--ink);letter-spacing:0.3px;line-height:1.5;}
.ai-entry-sub{font-size:11.5px;color:var(--ink-3);margin-top:3px;letter-spacing:0.2px;}
.ai-entry-arrow{flex-shrink:0;color:var(--accent);font-size:18px;}
.airz-ov{position:fixed;inset:0;z-index:615;background:var(--bg);display:none;overflow-y:auto;-webkit-overflow-scrolling:touch;}
.airz-ov.active{display:block;}
.airz-screen{display:none;min-height:100%;box-sizing:border-box;flex-direction:column;position:relative;}
.airz-screen.active{display:flex;}
.airz-close{position:absolute;top:calc(14px + env(safe-area-inset-top));right:16px;background:none;border:none;font-size:24px;color:var(--ink-3);cursor:pointer;z-index:3;line-height:1;}
.airz-upload{padding:calc(64px + env(safe-area-inset-top)) 28px calc(30px + env(safe-area-inset-bottom));}
.airz-eyebrow{font-size:11.5px;letter-spacing:3px;color:var(--accent);margin-bottom:13px;}
.airz-title{font-family:'Noto Serif SC',serif;font-size:23px;font-weight:600;color:var(--ink);line-height:1.5;letter-spacing:0.5px;margin-bottom:10px;}
.airz-sub{font-size:13.5px;color:var(--ink-2);line-height:1.8;letter-spacing:0.3px;margin-bottom:26px;}
.airz-drop{border:1.5px dashed var(--accent-border);border-radius:14px;padding:30px 20px;text-align:center;cursor:pointer;background:var(--accent-soft);transition:border-color 0.2s;}
.airz-drop:active{border-color:var(--accent);}
.airz-drop-icon svg{width:34px;height:34px;margin:0 auto 12px;display:block;fill:none;stroke:var(--accent);stroke-width:1.6;}
.airz-drop-main{font-size:14px;color:var(--ink);font-weight:500;}
.airz-drop-sub{font-size:11.5px;color:var(--ink-3);margin-top:6px;}
.airz-drop.has-file{border-style:solid;border-color:var(--accent);background:var(--bg-card);}
.airz-paste-toggle{text-align:center;margin-top:16px;font-size:12.5px;color:var(--accent);cursor:pointer;}
.airz-paste{display:none;margin-top:14px;}
.airz-paste.show{display:block;}
.airz-paste textarea{width:100%;box-sizing:border-box;min-height:110px;border:1px solid var(--rule);border-radius:12px;padding:13px;font-family:inherit;font-size:13px;color:var(--ink);resize:vertical;outline:none;line-height:1.7;}
.airz-note{font-size:11px;color:var(--ink-4);margin-top:18px;line-height:1.7;letter-spacing:0.2px;text-align:center;}
.airz-foot{margin-top:24px;}
.airz-btn{width:100%;background:var(--accent);color:#fff;border:none;border-radius:13px;padding:15px;font-size:15.5px;font-weight:600;font-family:inherit;letter-spacing:0.5px;cursor:pointer;box-shadow:0 8px 22px rgba(61,89,70,0.22);transition:transform 0.15s;}
.airz-btn:active{transform:scale(0.98);}
.airz-btn.ghost{background:transparent;color:var(--accent);box-shadow:none;border:1px solid var(--accent-border);margin-top:10px;}
.airz-gen{align-items:center;justify-content:center;text-align:center;padding:40px 30px;}
.airz-spinner{width:42px;height:42px;border:3px solid var(--accent-soft);border-top-color:var(--accent);border-radius:50%;animation:airzspin 0.9s linear infinite;margin-bottom:22px;}
@keyframes airzspin{to{transform:rotate(360deg);}}
.airz-gen-status{font-family:'Noto Serif SC',serif;font-size:15px;color:var(--ink-2);letter-spacing:0.5px;}
.airz-draft{padding:calc(56px + env(safe-area-inset-top)) 24px calc(30px + env(safe-area-inset-bottom));}
.airz-draft-label{font-size:12px;color:var(--ink-3);letter-spacing:0.5px;margin:22px 0 10px;font-weight:500;}
.airz-hl-opt{border:1.5px solid var(--rule);border-radius:12px;padding:14px 15px;margin-bottom:10px;cursor:pointer;display:flex;gap:11px;align-items:flex-start;transition:border-color 0.2s,background 0.2s;}
.airz-hl-opt.sel{border-color:var(--accent);background:var(--accent-soft);}
.airz-hl-radio{flex-shrink:0;width:17px;height:17px;border-radius:50%;border:1.5px solid var(--ink-4);margin-top:2px;position:relative;}
.airz-hl-opt.sel .airz-hl-radio{border-color:var(--accent);}
.airz-hl-opt.sel .airz-hl-radio::after{content:'';position:absolute;inset:3px;border-radius:50%;background:var(--accent);}
.airz-hl-text{font-family:'Noto Serif SC',serif;font-size:15.5px;color:var(--ink);line-height:1.55;white-space:pre-line;font-weight:500;}
.airz-field{background:var(--bg-card);border:1px solid var(--rule);border-radius:12px;padding:13px 15px;margin-bottom:10px;}
.airz-field-k{font-size:11px;color:var(--ink-4);letter-spacing:0.5px;margin-bottom:5px;}
.airz-field-v{font-size:13px;color:var(--ink-2);line-height:1.7;white-space:pre-line;}

/* ============ 未登录入口（v0.47 · 品牌门面 → 授权登陆 → 状态分流 → 一屏承接 → 免费试用）============ */
.lg-ov{ position:fixed; inset:0; z-index:620; background:var(--bg); display:none; overflow-y:auto; -webkit-overflow-scrolling:touch; }
.lg-ov.active{ display:block; }
.lg-screen{ display:none; position:relative; min-height:100%; box-sizing:border-box; }
.lg-screen.active{ display:flex; flex-direction:column; }
/* 屏A · 品牌门面（森林绿，与全局统一）*/
.lg-landing{ background:linear-gradient(180deg, var(--accent-soft) 0%, var(--bg) 58%); padding:0 30px calc(34px + env(safe-area-inset-bottom)); align-items:center; justify-content:center; text-align:center; }
.lg-logo{ width:196px; max-width:60%; height:auto; display:block; margin:0 auto 22px; }
.lg-tagline{ font-family:'Noto Serif SC',serif; font-size:16px; color:var(--ink-2); line-height:1.7; letter-spacing:0.5px; margin-bottom:6px; }
.lg-tagline b{ color:var(--accent); font-weight:600; }
.lg-subtag{ font-size:12.5px; color:var(--ink-3); letter-spacing:0.3px; margin-bottom:42px; }
.lg-wxbtn{ width:100%; max-width:320px; display:flex; align-items:center; justify-content:center; gap:9px; background:var(--accent); color:#fff; border:none; border-radius:13px; padding:15px; font-size:15.5px; font-weight:600; font-family:inherit; letter-spacing:0.5px; cursor:pointer; box-shadow:0 8px 22px rgba(61,89,70,0.24); transition:transform 0.15s; }
.lg-wxbtn:active{ transform:scale(0.98); }
.lg-wxbtn svg{ width:21px; height:21px; fill:#fff; }
.lg-fineprint{ font-size:11px; color:var(--ink-4); margin-top:18px; line-height:1.6; letter-spacing:0.2px; }
.lg-fineprint a{ color:var(--ink-3); text-decoration:underline; cursor:pointer; }
.lg-devflag{ display:none !important; }
.lg-devflag .pill{ background:rgba(255,255,255,0.18); padding:1px 6px; border-radius:6px; }
/* 屏B · 选状态 */
.lg-pick{ background:var(--bg); padding:calc(60px + env(safe-area-inset-top)) 24px calc(30px + env(safe-area-inset-bottom)); }
.lg-pick-title{ font-family:'Noto Serif SC',serif; font-size:21px; font-weight:600; color:var(--ink); letter-spacing:0.5px; }
.lg-pick-sub{ font-size:13px; color:var(--ink-3); margin-top:9px; line-height:1.7; letter-spacing:0.3px; }
.lg-cards{ margin-top:24px; display:flex; flex-direction:column; gap:13px; }
.lg-card{ background:var(--bg-card); border:1px solid var(--rule); border-radius:15px; padding:17px 18px; display:flex; align-items:center; gap:14px; cursor:pointer; transition:transform 0.15s, border-color 0.2s; }
.lg-card:active{ transform:scale(0.99); border-color:var(--accent-border); }
.lg-card-body{ flex:1; min-width:0; }
.lg-card-main{ font-size:15px; font-weight:600; color:var(--ink); letter-spacing:0.3px; line-height:1.5; }
.lg-card-sub{ font-size:12px; color:var(--ink-3); margin-top:6px; line-height:1.6; letter-spacing:0.2px; }
.lg-card-arrow{ flex-shrink:0; color:var(--ink-4); font-size:20px; }
/* 屏C · 一屏承接 */
.lg-pitch{ background:linear-gradient(180deg, var(--accent-soft) 0%, var(--bg) 32%); padding:calc(56px + env(safe-area-inset-top)) 28px calc(30px + env(safe-area-inset-bottom)); }
.lg-back{ position:absolute; top:calc(14px + env(safe-area-inset-top)); left:12px; background:none; border:none; color:var(--ink-2); font-size:13.5px; cursor:pointer; font-family:inherit; padding:6px; letter-spacing:0.3px; z-index:3; }
.lg-pitch-eyebrow{ font-size:11.5px; letter-spacing:3px; color:var(--accent); margin-bottom:14px; }
.lg-pitch-title{ font-family:'Noto Serif SC',serif; font-size:24px; font-weight:600; line-height:1.5; color:var(--ink); letter-spacing:0.5px; margin-bottom:12px; }
.lg-pitch-title b{ color:var(--accent); }
.lg-pitch-sub{ font-size:14px; color:var(--ink-2); line-height:1.85; letter-spacing:0.3px; margin-bottom:18px; }
.lg-points{ display:flex; flex-direction:column; }
.lg-point{ display:flex; align-items:flex-start; gap:11px; padding:11px 0; border-bottom:1px solid var(--rule); }
.lg-point:last-child{ border-bottom:none; }
.lg-point svg{ width:17px; height:17px; stroke:var(--green); stroke-width:2.4; fill:none; flex-shrink:0; margin-top:1px; }
.lg-point-text{ font-size:13.5px; color:var(--ink-3); line-height:1.6; letter-spacing:0.2px; }
.lg-point-text b{ color:var(--ink); font-weight:600; }
.lg-payoff{ background:var(--accent-soft); border-radius:12px; padding:13px 15px; font-size:12.5px; color:var(--accent); line-height:1.7; letter-spacing:0.3px; margin-top:14px; }
.lg-peek{ margin:24px auto 0; width:100%; max-width:300px; background:var(--bg-card); border:1px solid var(--rule); border-radius:16px; box-shadow:0 12px 30px rgba(61,89,70,0.1); padding:18px; }
.lg-peek-label{ font-size:10px; letter-spacing:1.5px; color:var(--ink-4); margin-bottom:13px; }
.lg-peek-row{ display:flex; align-items:center; gap:12px; }
.lg-peek-av{ width:46px; height:46px; border-radius:50%; flex-shrink:0; }
.lg-peek-name{ font-size:15px; font-weight:600; color:var(--ink); }
.lg-peek-meta{ font-size:12px; color:var(--ink-3); margin-top:2px; }
.lg-peek-headline{ font-family:'Noto Serif SC',serif; font-size:13px; color:var(--ink-2); line-height:1.6; margin-top:13px; font-style:italic; }
.lg-cta-wrap{ margin-top:30px; }
.lg-cta{ width:100%; background:var(--accent); color:#fff; border:none; border-radius:13px; padding:15px; font-size:15.5px; font-weight:600; font-family:inherit; letter-spacing:0.5px; cursor:pointer; box-shadow:0 8px 22px rgba(61,89,70,0.22); transition:transform 0.15s; }
.lg-cta:active{ transform:scale(0.98); }
.lg-cta-note{ text-align:center; font-size:11.5px; color:var(--ink-3); margin-top:10px; letter-spacing:0.3px; }
.lg-cta2{ width:100%; background:transparent; color:var(--accent); border:none; padding:13px; font-size:13.5px; font-family:inherit; cursor:pointer; margin-top:4px; letter-spacing:0.3px; }
.lg-cta2:active{ opacity:0.7; }

/* ============ 入驻流程 Onboarding（v0.43 · 自助开通：引导→注册→选套餐→模拟支付→进工作台）============ */
.ob-overlay{position:fixed;inset:0;z-index:600;background:var(--bg);overflow-y:auto;display:none;}
.ob-overlay.active{display:block;}
.ob-screen{display:none;min-height:100vh;flex-direction:column;}
.ob-screen.active{display:flex;animation:obIn 0.4s cubic-bezier(0.22,1,0.36,1);}
@keyframes obIn{from{opacity:0;transform:translateY(12px);}to{opacity:1;transform:none;}}
.ob-pad{padding:0 30px;}

.ob-dots{display:flex;gap:6px;justify-content:center;padding:calc(22px + env(safe-area-inset-top)) 0 6px;}
.ob-dot{width:6px;height:6px;border-radius:50%;background:var(--rule);transition:all 0.3s;}
.ob-dot.on{background:var(--accent);width:18px;border-radius:3px;}

.ob-landing{flex:1;justify-content:center;text-align:center;padding:0 36px;background:radial-gradient(120% 80% at 50% 0%,rgba(61,89,70,0.06),transparent 60%);}
.ob-logo{width:64px;height:64px;border-radius:18px;margin:0 auto 28px;background:linear-gradient(135deg,var(--accent-light),var(--accent));display:flex;align-items:center;justify-content:center;font-family:'Noto Serif SC',serif;font-size:30px;font-weight:600;color:white;box-shadow:0 12px 32px rgba(61,89,70,0.28);}
.ob-title{font-family:'Noto Serif SC',serif;font-size:27px;font-weight:600;color:var(--ink);letter-spacing:0.5px;line-height:1.5;margin-bottom:16px;}
.ob-sub{font-size:14px;color:var(--ink-3);line-height:2;letter-spacing:0.3px;margin-bottom:38px;}
.ob-points{text-align:left;display:inline-flex;flex-direction:column;gap:14px;margin-bottom:44px;}
.ob-point{display:flex;align-items:flex-start;gap:12px;font-size:13.5px;color:var(--ink-2);line-height:1.6;}
.ob-point-ic{flex-shrink:0;width:22px;height:22px;border-radius:50%;background:var(--accent-soft);display:flex;align-items:center;justify-content:center;margin-top:1px;}
.ob-point-ic svg{width:13px;height:13px;stroke:var(--accent);stroke-width:2.5;fill:none;}

.ob-btn{display:block;width:100%;padding:16px;border:none;border-radius:14px;background:var(--accent);color:white;font-size:15.5px;font-weight:600;font-family:inherit;letter-spacing:1px;cursor:pointer;transition:transform 0.15s,box-shadow 0.15s;box-shadow:0 8px 22px rgba(61,89,70,0.25);}
.ob-btn:active{transform:scale(0.985);}
.ob-btn.disabled{background:var(--ink-4);box-shadow:none;cursor:not-allowed;}
.ob-btn-ghost{display:block;width:100%;padding:14px;border:none;background:none;color:var(--ink-3);font-size:13px;font-family:inherit;letter-spacing:0.5px;cursor:pointer;margin-top:4px;}
.ob-foot{padding:16px 30px calc(28px + env(safe-area-inset-bottom));}
.ob-legal{font-size:11px;color:var(--ink-4);text-align:center;line-height:1.8;margin-top:14px;letter-spacing:0.2px;}
.ob-legal a{color:var(--accent);text-decoration:none;}

.ob-head{display:flex;align-items:center;gap:8px;padding:calc(8px + env(safe-area-inset-top)) 0 4px;}
.ob-back{width:38px;height:38px;border:none;background:none;font-size:22px;color:var(--ink-2);cursor:pointer;border-radius:10px;}
.ob-head-title{font-family:'Noto Serif SC',serif;font-size:17px;font-weight:600;color:var(--ink);letter-spacing:0.5px;}
.ob-h1{font-family:'Noto Serif SC',serif;font-size:24px;font-weight:600;color:var(--ink);letter-spacing:0.5px;line-height:1.5;margin:18px 0 8px;}
.ob-h1-sub{font-size:13px;color:var(--ink-3);line-height:1.9;margin-bottom:28px;letter-spacing:0.3px;}

.ob-login-wx{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:16px;border:none;border-radius:14px;background:#07C160;color:white;font-size:15.5px;font-weight:600;font-family:inherit;letter-spacing:1px;cursor:pointer;box-shadow:0 8px 22px rgba(7,193,96,0.22);transition:transform 0.15s;}
.ob-login-wx:active{transform:scale(0.985);}
.ob-login-wx svg{width:20px;height:20px;fill:white;}
.ob-or{display:flex;align-items:center;gap:14px;margin:24px 2px;color:var(--ink-4);font-size:12px;letter-spacing:0.5px;}
.ob-or::before,.ob-or::after{content:'';flex:1;height:1px;background:var(--rule);}
.ob-field{margin-bottom:14px;}
.ob-field-label{font-size:12px;color:var(--ink-3);margin-bottom:8px;letter-spacing:0.5px;}
.ob-input-row{display:flex;gap:10px;}
.ob-input{width:100%;padding:14px 16px;border:1px solid var(--rule);border-radius:12px;font-size:15px;font-family:inherit;color:var(--ink);background:var(--bg-card);outline:none;transition:border-color 0.2s;box-sizing:border-box;}
.ob-input:focus{border-color:var(--accent);}
.ob-code-btn{flex-shrink:0;padding:0 16px;border:1px solid var(--accent-border);border-radius:12px;background:var(--accent-soft);color:var(--accent);font-size:12.5px;font-family:inherit;letter-spacing:0.3px;cursor:pointer;white-space:nowrap;}
.ob-code-btn.counting{color:var(--ink-4);border-color:var(--rule);background:none;cursor:default;}

.ob-plans{display:flex;flex-direction:column;gap:12px;margin-bottom:24px;}
.ob-plan{position:relative;border:1.5px solid var(--rule);border-radius:16px;padding:18px 20px;cursor:pointer;background:var(--bg-card);transition:all 0.2s;}
.ob-plan.selected{border-color:var(--accent);background:var(--accent-soft);box-shadow:0 6px 20px rgba(61,89,70,0.12);}
.ob-plan-badge{position:absolute;top:-10px;right:18px;background:var(--warm);color:white;font-size:10.5px;padding:3px 10px;border-radius:9px;letter-spacing:0.5px;}
.ob-plan-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:6px;}
.ob-plan-name{font-size:15px;font-weight:600;color:var(--ink);letter-spacing:0.5px;}
.ob-plan-price{font-family:'Noto Serif SC',serif;color:var(--accent);font-weight:600;}
.ob-plan-price .sym{font-size:14px;}
.ob-plan-price .num{font-size:26px;}
.ob-plan-price .unit{font-size:12px;color:var(--ink-3);font-family:'Noto Sans SC';}
.ob-plan-meta{font-size:12px;color:var(--ink-3);letter-spacing:0.2px;}
.ob-plan-meta .save{color:var(--warm);}
.ob-feat{background:var(--bg-card);border:1px solid var(--rule);border-radius:14px;padding:18px 20px;margin-bottom:8px;}
.ob-feat-label{font-size:11px;color:var(--ink-4);letter-spacing:1.5px;margin-bottom:14px;}
.ob-feat-item{display:flex;align-items:flex-start;gap:10px;font-size:13px;color:var(--ink-2);line-height:1.5;margin-bottom:11px;}
.ob-feat-item:last-child{margin-bottom:0;}
.ob-feat-check{flex-shrink:0;width:17px;height:17px;border-radius:50%;background:var(--accent);display:flex;align-items:center;justify-content:center;margin-top:1px;}
.ob-feat-check svg{width:10px;height:10px;stroke:white;stroke-width:3;fill:none;}

.ob-cert-hint{display:flex;align-items:center;gap:10px;background:var(--warm-soft);border:1px solid var(--warm-border);border-radius:12px;padding:13px 15px;margin-bottom:8px;font-size:12px;color:var(--ink-2);line-height:1.6;letter-spacing:0.2px;}
.ob-cert-hint b{color:var(--warm);font-weight:600;}

.ob-pay-status{flex:1;justify-content:center;align-items:center;text-align:center;padding:0 40px;}
.ob-spinner{width:48px;height:48px;border:3px solid var(--rule);border-top-color:var(--accent);border-radius:50%;animation:obSpin 0.8s linear infinite;margin-bottom:26px;}
@keyframes obSpin{to{transform:rotate(360deg);}}
.ob-success-ring{width:84px;height:84px;border-radius:50%;background:var(--accent-soft);display:flex;align-items:center;justify-content:center;margin:0 auto 28px;animation:obPop 0.5s cubic-bezier(0.34,1.56,0.64,1);}
.ob-success-ring svg{width:42px;height:42px;stroke:var(--accent);stroke-width:2.5;fill:none;}
@keyframes obPop{from{transform:scale(0.5);opacity:0;}to{transform:scale(1);opacity:1;}}
.ob-success-title{font-family:'Noto Serif SC',serif;font-size:23px;font-weight:600;color:var(--ink);letter-spacing:0.5px;margin-bottom:12px;}
.ob-success-sub{font-size:13.5px;color:var(--ink-3);line-height:1.9;margin-bottom:40px;letter-spacing:0.3px;}

/* 微信授权手机号 sheet（v0.45 · 免费试用必经，一键授权）*/
.ob-auth-mask{position:fixed;inset:0;z-index:620;background:rgba(20,24,20,0.45);opacity:0;pointer-events:none;transition:opacity 0.3s;}
.ob-auth-mask.open{opacity:1;pointer-events:auto;}
.ob-auth-sheet{position:fixed;left:0;right:0;bottom:0;z-index:621;background:var(--bg-card);border-radius:22px 22px 0 0;padding:26px 26px calc(26px + env(safe-area-inset-bottom));transform:translateY(100%);transition:transform 0.34s cubic-bezier(0.22,1,0.36,1);}
.ob-auth-sheet.open{transform:none;}
.ob-auth-brand{display:flex;align-items:center;gap:10px;padding-bottom:18px;border-bottom:1px solid var(--rule);margin-bottom:20px;}
.ob-auth-logo{width:36px;height:36px;border-radius:9px;background:linear-gradient(135deg,var(--accent-light),var(--accent));display:flex;align-items:center;justify-content:center;font-family:'Noto Serif SC',serif;font-size:18px;font-weight:600;color:white;}
.ob-auth-app{font-size:14px;font-weight:600;color:var(--ink);letter-spacing:0.3px;}
.ob-auth-req{font-size:11.5px;color:var(--ink-3);margin-top:2px;}
.ob-auth-title{font-size:16px;font-weight:600;color:var(--ink);letter-spacing:0.3px;margin-bottom:6px;}
.ob-auth-phone-box{display:flex;align-items:center;gap:10px;background:var(--bg-warm);border-radius:12px;padding:14px 16px;margin:16px 0 8px;}
.ob-auth-phone{font-size:17px;font-weight:600;color:var(--ink);letter-spacing:1px;font-family:'JetBrains Mono',monospace;}
.ob-auth-phone-tag{font-size:11px;color:var(--accent);background:var(--accent-soft);padding:2px 8px;border-radius:6px;margin-left:auto;}
.ob-auth-why{font-size:12px;color:var(--ink-3);line-height:1.85;letter-spacing:0.2px;margin-bottom:22px;}
.ob-auth-btns{display:flex;flex-direction:column;gap:10px;}
.ob-auth-allow{width:100%;padding:15px;border:none;border-radius:13px;background:#07C160;color:white;font-size:15px;font-weight:600;font-family:inherit;letter-spacing:0.5px;cursor:pointer;transition:transform 0.15s;}
.ob-auth-allow:active{transform:scale(0.985);}
.ob-auth-deny{width:100%;padding:13px;border:none;background:none;color:var(--ink-4);font-size:13px;font-family:inherit;cursor:pointer;}

.dev-badge{position:fixed;bottom:calc(env(safe-area-inset-bottom) + 10px);right:12px;background:rgba(44,37,32,0.55);color:white;font-size:9px;padding:3px 8px;border-radius:8px;z-index:499;letter-spacing:0.4px;font-family:inherit;backdrop-filter:blur(8px);opacity:0.6;pointer-events:none;}

/* 底部品牌收尾 */
.b-foot{ padding:36px 24px calc(40px + env(safe-area-inset-bottom));text-align:center;}
.b-foot-mark{ font-family:'Noto Serif SC',serif;font-size:13px;color:var(--ink-3);letter-spacing:8px;margin-bottom:10px;font-weight:500;opacity:0.7;}
.b-foot-tagline{ font-size:11px;color:var(--ink-4);letter-spacing:1.5px;margin-bottom:14px;}
.b-foot-meta{ font-size:10px;color:var(--ink-4);letter-spacing:0.5px;font-family:'JetBrains Mono','Noto Sans SC',monospace;opacity:0.6;}

@media (min-width:600px){
  body{box-shadow:0 0 0 1px var(--rule);}
}
