/*
 * design/themes/material-form.css —— Material 风格表单皮肤
 * inspired by Google Material 3（基线紫），非官方实现；
 * 与 Google 无关，全部样式为本仓库手写仿制。
 * 关键仿制特征：Roboto 字族、surface #FFFBFE、outlined 描边控件、全圆角按钮、
 * 主色 #6750A4、错误 #B3261E、28dp 弹窗圆角。
 * 本皮肤取 40px「dense」控件高：原生 56dp 的一致性在收窄后要保住（②号注解的定制点）。
 */
body[data-style="material"] {
  --font: Roboto, "Segoe UI", "PingFang SC", "Microsoft YaHei", system-ui, sans-serif;
  --bg: #f3edf7;
  --surface: #fffbfe;
  --border: #cac4d0;
  --ink: #1d1b20;
  --ink-2: #49454f;
  --ink-3: #79747e;
  --accent: #6750a4;
  --accent-ink: #ffffff;
  --danger: #b3261e;
  --danger-ring: rgba(179, 38, 30, .18);
  --ctl-h: 40px;
  --btn-h: 40px;
  --ctl-radius: 4px;
  --panel-radius: 16px;
  --focus-ring: rgba(103, 80, 164, .22);
  --opt-hover: #f4effa;
  --filter-row-bg: #f7f2fa;
  --chip-radius: 999px;
  --shadow-1: 0 1px 2px rgba(0, 0, 0, .06);
  --shadow-2: 0 8px 24px rgba(29, 27, 32, .18);
}

body[data-style="material"] { letter-spacing: .1px; }
.ui-page-title { font-weight: 500; }

/* ---------- 按钮：全圆角 ---------- */
.ui-btn { border-radius: 999px; padding: 0 22px; }
.ui-btn-sm { padding: 0 16px; }
.ui-btn-primary { background: var(--accent); color: var(--accent-ink); }
.ui-btn-primary:hover { background: #5b4391; box-shadow: 0 1px 3px rgba(103, 80, 164, .4); }
.ui-btn-secondary { background: transparent; color: var(--accent); border-color: #79747e; }
.ui-btn-secondary:hover { background: rgba(103, 80, 164, .08); }

/* ---------- 控件：40px dense，两类控件同步收窄 ---------- */
.f-form input[type="text"], .f-form input[type="number"], .f-form input[type="date"], .f-textarea,
.f-form .dd-body, .tier-row input, .q-fcell input, .ui-in, .ui-in-num { border-radius: 6px; }
.f-form input:focus, .f-form input:focus-visible, .f-textarea:focus, .tier-row input:focus,
.dd-body:focus-visible, .q-fcell input:focus, .ui-in:focus, .ui-in:focus-visible, .ui-in-num:focus {
  outline: none;
  border-color: var(--accent);
  box-shadow: 0 0 0 1px var(--accent); /* outlined focus：主色描边加粗 */
}
.dd-panel, .dd-search { border-radius: 6px; }

/* ---------- 表格 ---------- */
.q-head-row th { color: var(--ink-2); font-weight: 500; font-size: 12px; text-transform: uppercase; letter-spacing: .6px; }
.q-table th, .q-table td { border-bottom: 1px solid #e7e0ec; }
.q-table tbody tr:hover td { background: #f7f2fa; }

/* ---------- 徽标：tonal 三态 ---------- */
.q-badge.is-draft { background: #e7e0ec; color: #49454f; }
.q-badge.is-sent { background: #e8def8; color: #4a4458; }
.q-badge.is-expired { background: #f9dedc; color: #8c1d18; }

/* ---------- 卡片与弹窗 ---------- */
.ui-panel { border-color: #e7e0ec; }
.ui-modal { border-radius: 28px; } /* dialog 28dp 圆角 */
.ui-modal-head, .ui-modal-foot { border-color: #e7e0ec; }
.ui-modal-title { font-size: 20px; font-weight: 500; }

/* ---------- kv：习惯「上灰 12px 标签、下 16px 值」 ---------- */
.kv-v { font-size: 15px; }
