/* ============================================================
   base.css —— 全局变量 / 重置 / 通用件
   改配色只改这里的 :root 就行
   ============================================================ */

:root {
  /* 品牌色（照截图取的蓝） */
  --brand: #1a73e8;
  --brand-deep: #1560d8;
  --brand-lite: #eaf3ff;
  --brand-line: #dbeafe;

  /* 中性色 */
  --bg: #f2f3f5;
  --card: #ffffff;
  --text: #22262c;
  --text-2: #5a6472;
  --text-3: #9aa2ad;
  --line: #e8eaee;
  --line-2: #dcdfe6;

  /* 功能色 */
  --green: #2fbf71;
  --danger: #e5533d;
  --warn: #b25e00;
  --disabled: #b9bfc7;

  /* 圆角 / 阴影 */
  --r-lg: 14px;
  --r-md: 10px;
  --r-sm: 8px;
  --shadow-card: 0 1px 6px rgba(23, 43, 77, .05);
  --shadow-float: 0 6px 16px rgba(26, 115, 232, .28);

  /* iOS 安全区（刘海 / 底部横条） */
  --safe-t: env(safe-area-inset-top, 0px);
  --safe-b: env(safe-area-inset-bottom, 0px);
}

*,
*::before,
*::after { box-sizing: border-box; }

html, body {
  margin: 0;
  padding: 0;
  background: var(--bg);
  color: var(--text);
  font: 15px/1.6 -apple-system, BlinkMacSystemFont, "PingFang SC",
        "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -webkit-text-size-adjust: 100%;
  /* 手机上点按钮不出现灰块 */
  -webkit-tap-highlight-color: transparent;
}

button, input, textarea, select { font-family: inherit; font-size: inherit; color: inherit; }
button { border: 0; background: none; padding: 0; cursor: pointer; }
button:disabled { cursor: not-allowed; }
input, textarea { -webkit-appearance: none; appearance: none; border: 0; outline: none; background: none; }
img { max-width: 100%; display: block; }
a { color: var(--brand); text-decoration: none; }
ol, ul { margin: 0; padding: 0; list-style: none; }
h1, h2, h3, p { margin: 0; }

/* 页面容器：手机全宽，桌面居中一条 */
.app {
  max-width: 560px;
  margin: 0 auto;
  min-height: 100vh;
  min-height: 100dvh; /* 移动端地址栏伸缩时不会留白 */
  background: var(--bg);
}

/* 屏幕阅读器专用（无障碍，不影响视觉） */
.sr-only {
  position: absolute;
  width: 1px; height: 1px;
  margin: -1px; padding: 0;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
  border: 0;
}

/* 数字圆圈：① ② ③ */
.num {
  flex: 0 0 auto;
  width: 22px; height: 22px;
  border-radius: 50%;
  background: var(--brand);
  color: #fff;
  font-size: 13px;
  font-weight: 600;
  line-height: 22px;
  text-align: center;
}

.card {
  background: var(--card);
  border-radius: var(--r-lg);
  padding: 16px;
  margin: 12px;
  box-shadow: var(--shadow-card);
}

.card-title {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 17px;
  font-weight: 700;
  color: var(--brand);
}

.card-text {
  margin: 10px 0 14px;
  font-size: 14.5px;
  line-height: 1.75;
  color: #33363c;
}

.page-foot {
  padding: 6px 20px calc(26px + var(--safe-b));
  text-align: center;
  font-size: 12px;
  line-height: 1.7;
  color: var(--text-3);
}

/* 轻提示条（黄色） */
.alert {
  display: none;
  margin: 0 0 12px;
  padding: 10px 12px;
  border-radius: var(--r-sm);
  background: #fff4e5;
  color: var(--warn);
  font-size: 13px;
  line-height: 1.65;
}
.alert.is-on { display: block; }
