/* =========================================================================
   App 设计令牌 · H5 统一用这一份
   -------------------------------------------------------------------------
   背景：H5（PHP 模板）和 Flutter App 是两套代码，各自长各自的样，
   结果同一个"发布项目"在 App 里是卡片式表单、在网页里是一堆裸 input。
   这里把 App 的视觉令牌抽出来，所有 H5 页面引用同一份，改一处两边一致。

   来源：app/lib/core/theme.dart + publish_page.dart / post_card.dart
   ========================================================================= */

:root {
  /* 主色 */
  --app-brand: #C41E3A;
  --app-brand-soft: #FFF0F3;

  /* 文字 */
  --app-ink: #16181B;
  --app-ink2: #3B4048;
  --app-ink3: #8E9299;
  --app-ink4: #B4B9C0;

  /* 线与面 */
  --app-border: #E7E9ED;
  --app-field: #FAFAFB;
  --app-bg: #F4F2F4;

  /* 卡片投影（跟 kCardShadow 一致） */
  --app-shadow: 0 1px 3px rgba(17, 24, 39, .06), 0 8px 20px rgba(17, 24, 39, .05);

  /* 圆角 */
  --app-r-card: 14px;
  --app-r-field: 10px;
  --app-r-btn: 12px;
}

/* ---------- 卡片 ---------- */
.app-card {
  background: #fff;
  border-radius: var(--app-r-card);
  box-shadow: var(--app-shadow);
  padding: 16px;
  margin-bottom: 14px;
}

/* ---------- 字段（对应 publish_page 的 _label + _input） ---------- */
.app-label {
  display: block;
  font-size: 13.5px;
  font-weight: 700;
  color: var(--app-ink);
  margin-bottom: 8px;
  letter-spacing: -.1px;
}
.app-label .req { color: var(--app-brand); }

.app-input,
.app-card input[type=text],
.app-card input[type=tel],
.app-card input[type=number],
.app-card select,
.app-card textarea {
  width: 100%;
  height: 46px;
  padding: 0 14px;
  font-size: 14.5px;
  color: var(--app-ink);
  background: var(--app-field);
  border: 1px solid var(--app-border);
  border-radius: var(--app-r-field);
  outline: none;
  font-family: inherit;
  box-sizing: border-box;
  transition: border-color .15s, background .15s;
}
.app-card textarea {
  height: auto;
  min-height: 132px;
  padding: 12px 14px;
  line-height: 1.7;
  resize: vertical;
}
.app-card input::placeholder,
.app-card textarea::placeholder { color: var(--app-ink4); }
.app-card input:focus,
.app-card select:focus,
.app-card textarea:focus {
  border-color: var(--app-brand);
  background: #fff;
}

/* ---------- 提示 ---------- */
.app-hint { font-size: 11.5px; color: var(--app-ink3); line-height: 1.7; margin-top: 8px; }

/* ---------- 按钮 ---------- */
.app-btn {
  display: block;
  width: 100%;
  height: 48px;
  border: 0;
  border-radius: var(--app-r-btn);
  background: var(--app-brand);
  color: #fff;
  font-size: 15.5px;
  font-weight: 800;
  letter-spacing: .5px;
  cursor: pointer;
  font-family: inherit;
}
.app-btn:disabled { background: #E4E2E4; color: #9A9FA5; }
.app-btn-ghost {
  background: #fff;
  color: var(--app-ink2);
  border: 1px solid var(--app-border);
  font-weight: 600;
}

/* ---------- 页面留白 ---------- */
.app-page { padding: 16px; }

/* ---------- 嵌在 PC 右栏 / App WebView 时，隐藏重复的标题条 ---------- */
body.in-pane .topbar,
body.in-pane .m-bar { display: none !important; }
