/* 商家端统一主题；顾客菜单的独立设计不受影响。 */
:root {
  --restaurant-font: -apple-system, BlinkMacSystemFont, "PingFang SC", "Microsoft YaHei", "Segoe UI", sans-serif;
  --restaurant-brand: #8f3742;
  --restaurant-radius-small: 4px;
  --restaurant-radius-control: 8px;
  --restaurant-radius-panel: 12px;
  --font-body: var(--restaurant-font);
  --font-display: var(--restaurant-font);
  --el-font-family: var(--restaurant-font);
  --el-color-primary: var(--restaurant-brand);
  --el-color-primary-light-3: #b1737b;
  --el-color-primary-light-5: #c79ba1;
  --el-color-primary-light-7: #ddc3c6;
  --el-color-primary-light-8: #e9d7d9;
  --el-color-primary-light-9: #f4ebec;
  --el-color-primary-dark-2: #722c35;
  --el-border-radius-base: var(--restaurant-radius-control);
  --el-border-radius-small: var(--restaurant-radius-small);
  --el-text-color-placeholder: #756c67;
}
body { font-family: var(--restaurant-font); accent-color: var(--restaurant-brand); caret-color: var(--restaurant-brand); }
body ::selection { background: #ead6d9; color: #40272b; }
.wb-app { --wb-brand: var(--restaurant-brand); --wb-brand-dark: #722c35; --wb-muted: #6e655e; font-family: var(--restaurant-font); }
.wb-app, .module-page, .private-page, .ops-page { --ui-brand: var(--restaurant-brand); --color-primary: var(--restaurant-brand); --color-primary-deep: #722c35; }
body :is(h1,h2,h3,h4,button,input,textarea,select), .wb-brand strong, .wb-store strong, .wb-module-card strong, .wb-feature strong { font-family: var(--restaurant-font); }
.wb-app :is(.wb-button,.wb-search,.wb-quick-grid a,.wb-extension a,.biz-button,.biz-tabs button,.biz-map-search,.biz-form input,.biz-form select,.biz-form textarea) { border-radius: var(--restaurant-radius-control); }
.wb-app :is(.wb-panel,.wb-module-card,.biz-card,.wb-search-results,.wb-account-popover) { border-radius: var(--restaurant-radius-panel); }
.wb-app .wb-button { min-height: 44px; font-size: 14px; }
.wb-app .wb-search { height: 44px; }
.wb-app .wb-search input { font-size: 14px; }
/* 搜索浮层以输入框为参照，宽度一致，账号菜单仍靠右展开。 */
.wb-app .wb-search-results { left: 0; right: auto; width: 100%; min-width: 0; max-height: min(440px,65vh); }
.wb-app .wb-search-results a { min-height: 44px; padding: 10px 8px; gap: 8px; }
.wb-app .wb-search-results a > span { min-width: 0; overflow-wrap: anywhere; }
.wb-app .wb-search-results small { font-size: 12px; }
.wb-app .wb-search-results a:focus-visible { outline-offset: -2px; }
.wb-app .wb-header { min-height: 72px; height: 72px; }
/* 首页优先呈现经营状态、待办和快捷入口。 */
.wb-app .wb-home-grid { grid-template-columns: minmax(0,1fr) 300px; gap: 16px; }
.wb-app .wb-home-main,.wb-app .wb-home-rail { display: flex; flex-direction: column; gap: 16px; }
.wb-app .wb-home-heading { grid-column: 1 / -1; display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 4px 0 0; }
.wb-app .wb-home-heading h1 { font-size: 24px; line-height: 1.4; font-weight: 650; }
.wb-app .wb-home-heading p { margin-top: 4px; font-size: 13px; color: var(--wb-muted); }
.wb-app .wb-home-heading .wb-home-actions { display: flex; gap: 8px; }
.wb-app .wb-home-grid > .wb-core { grid-column: 1 / -1; }
.wb-app .wb-stat { padding: 16px 12px; gap: 8px; }
.wb-app .wb-stat strong { font-size: 24px; }
.wb-app .wb-stat small { font-size: 12px; line-height: 1.5; white-space: normal; }
.wb-app .wb-stat div > span { font-size: 13px; white-space: normal; }
.wb-app .wb-stat-icon { display: none; }
.wb-app .wb-quick-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
.wb-app .wb-quick-grid a { font-size: 14px; min-height: 48px; }
.wb-app .wb-tasks,.wb-app .wb-orders { padding: 16px; }
.wb-app .wb-tasks > a { min-height: 40px; font-size: 14px; }
.wb-app .wb-data-note { font-size: 12px; }
.wb-app .wb-section-heading > a { font-size: 13px; min-height: 32px; }
.wb-app .wb-empty p { font-size: 14px; }
.wb-app .wb-core-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
.wb-app .wb-module-card strong { font-size: 16px; }
.wb-app .wb-module-card small { font-size: 12px; }
.wb-app .wb-extension-grid { grid-template-columns: repeat(auto-fit,minmax(120px,1fr)); }
.wb-app .wb-core-heading { padding: 4px 0 18px; }
.wb-app .wb-core-heading h1 { font-size: 24px; }
.wb-app .wb-core.expanded .wb-module-card { min-height: 110px; }
@media (max-width: 1150px) {
  .wb-app .wb-home-grid { grid-template-columns: minmax(0,1fr); }
  .wb-app .wb-home-rail { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); align-items: start; }
}
@media (max-width: 700px) {
  .wb-app .wb-header { height: auto; }
  .wb-app .wb-home-heading { align-items: flex-start; flex-direction: column; gap: 12px; }
  .wb-app .wb-home-heading h1 { font-size: 22px; }
  .wb-app .wb-home-actions { width: 100%; }
  .wb-app .wb-home-actions .wb-button { flex: 1; }
  .wb-app .wb-stats { gap: 8px; }
  .wb-app .wb-stat { padding: 12px; }
  .wb-app .wb-stat strong { font-size: 22px; }
  .wb-app .wb-home-rail { display: flex; }
  .wb-app .wb-core-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .wb-app .wb-module-card { gap: 8px; }
  .wb-app .wb-module-card > .wb-icon { display: none; }
  .wb-app .wb-quick-grid a { gap: 6px; font-size: 13px; }
  .wb-app .wb-extension-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
/* 手机侧栏改为纵向排列后，卡片仍占满可用宽度。 */
@media (max-width: 700px) { .wb-app .wb-home-rail { align-items: stretch; } }
