/* 轻量样式（TECH-STACK §2：简洁 CSS，不引重型 UI 库）*/
* { box-sizing: border-box; }
body {
  margin: 0;
  font-family: -apple-system, "Segoe UI", "PingFang SC", "Noto Sans CJK SC", sans-serif;
  color: #1a1a1a;
  background: #f6f7f9;
  line-height: 1.5;
}
.topbar {
  display: flex;
  align-items: center;
  gap: 1rem;
  padding: 0.8rem 1.5rem;
  background: #1f3a5f;
  color: #fff;
}
.topbar a { color: #fff; text-decoration: none; }
.topbar .brand { font-weight: 600; font-size: 1.1rem; margin-right: auto; }
.topbar nav { display: flex; gap: 1rem; align-items: center; }
.inline { display: inline; }
.user { opacity: 0.85; }
.container { max-width: 880px; margin: 2rem auto; padding: 0 1rem; }
.card {
  background: #fff;
  border: 1px solid #e3e6ea;
  border-radius: 8px;
  padding: 1.5rem 1.8rem;
  box-shadow: 0 1px 3px rgba(0,0,0,0.04);
}
.card h1 { margin-top: 0; font-size: 1.4rem; color: #1f3a5f; }
form label { display: block; margin-bottom: 0.9rem; font-size: 0.9rem; }
input {
  display: block; width: 100%; margin-top: 0.3rem;
  padding: 0.5rem 0.6rem; border: 1px solid #cfd4da; border-radius: 6px;
  font-size: 1rem;
}
button {
  background: #1f3a5f; color: #fff; border: none; border-radius: 6px;
  padding: 0.55rem 1.2rem; font-size: 1rem; cursor: pointer;
}
button:hover { background: #18304d; }
.login-card { max-width: 380px; margin: 3rem auto; }
.actions { list-style: none; padding: 0; display: grid; gap: 0.5rem; }
.actions a { color: #1f3a5f; }
.error { color: #b00020; background: #fde8ea; padding: 0.5rem 0.8rem; border-radius: 6px; }
.ok { color: #1a7a3a; background: #e6f6ec; padding: 0.5rem 0.8rem; border-radius: 6px; }

/* 技能/课程标签（wiki 浏览页）*/
.muted { color: #888; font-size: 0.85em; }
.skill-cloud { display: flex; flex-wrap: wrap; gap: 0.4rem; }
.skill-tag {
  display: inline-block; padding: 0.2rem 0.6rem; border-radius: 12px;
  font-size: 0.85rem; background: #eef1f5; color: #333;
}
.skill-tag small { color: #888; }
.skill-primary { background: #1f3a5f; color: #fff; }
.skill-primary small { color: #b8c8d8; }
.skill-familiar { background: #e8eee5; color: #4a6b3a; }
.tag-personal { background: #fff3cd; color: #7a5b00; padding: 0.1rem 0.4rem; border-radius: 8px; font-size: 0.75rem; }
.tag-completed { background: #d4edda; color: #155724; padding: 0.1rem 0.4rem; border-radius: 8px; font-size: 0.75rem; }
.tag-learning { background: #cce5ff; color: #004085; padding: 0.1rem 0.4rem; border-radius: 8px; font-size: 0.75rem; }
h2 { font-size: 1.1rem; color: #1f3a5f; border-bottom: 1px solid #eee; padding-bottom: 0.3rem; margin-top: 1.5rem; }
h2 small { color: #999; font-weight: normal; }
