/* ============================================
   题乎 — 统一设计系统 v2.0
   参考：猿题库 / 粉笔 / 考试宝 / Quizlet
   设计语言：iOS HIG + Material You 融合
   ============================================ */

/* ===== 设计令牌 ===== */
:root {
  /* 主色 */
  --primary: #4F6EF7;
  --primary-dark: #3B5BDB;
  --primary-light: #EEF1FE;
  --primary-gradient: linear-gradient(135deg, #4F6EF7 0%, #7B8CFF 50%, #A78BFA 100%);
  --primary-shadow: 0 8px 24px rgba(79,110,247,0.25);

  /* 语义色 */
  --success: #34C759;
  --success-light: #E8F8ED;
  --danger: #FF3B30;
  --danger-light: #FFE5E5;
  --warning: #FF9500;
  --warning-light: #FFF3E0;
  --info: #007AFF;
  --info-light: #E3F2FD;

  /* 文字 */
  --text: #1D1D1F;
  --text-2: #6E6E73;
  --text-3: #AEAEB2;
  --text-inverse: #FFFFFF;

  /* 背景 */
  --bg: #F5F5F7;
  --bg-elevated: #FFFFFF;
  --bg-grouped: #F2F2F7;

  /* 边框 */
  --border: #E5E5EA;
  --divider: #F2F2F7;

  /* 阴影 */
  --shadow-xs: 0 1px 2px rgba(0,0,0,0.03);
  --shadow-sm: 0 2px 8px rgba(0,0,0,0.04);
  --shadow: 0 4px 16px rgba(0,0,0,0.06);
  --shadow-lg: 0 8px 32px rgba(0,0,0,0.08);
  --shadow-xl: 0 16px 48px rgba(0,0,0,0.12);

  /* 圆角 */
  --radius-xs: 6px;
  --radius-sm: 10px;
  --radius: 14px;
  --radius-lg: 20px;
  --radius-xl: 28px;
  --radius-full: 999px;

  /* 间距 */
  --space-xs: 4px;
  --space-sm: 8px;
  --space: 12px;
  --space-md: 16px;
  --space-lg: 24px;
  --space-xl: 32px;

  /* 布局 */
  --sidebar-width: 240px;
  --header-height: 56px;
  --tab-bar-height: 60px;
  --max-width: 768px;

  /* 动画 */
  --ease-out: cubic-bezier(0.25, 0.46, 0.45, 0.94);
  --ease-spring: cubic-bezier(0.34, 1.56, 0.64, 1);
  --duration-fast: 0.15s;
  --duration: 0.25s;
  --duration-slow: 0.4s;
}

/* ===== 全局重置 ===== */
*, *::before, *::after { margin: 0; padding: 0; box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }
body {
  font-family: -apple-system, BlinkMacSystemFont, 'SF Pro Display', 'SF Pro Text', 'PingFang SC', 'Helvetica Neue', sans-serif;
  background: var(--bg); color: var(--text); line-height: 1.6;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
  font-size: 15px;
}
a { text-decoration: none; color: inherit; }
img { max-width: 100%; height: auto; }
input, textarea, select, button { font-family: inherit; font-size: inherit; }

/* ===== 布局系统 ===== */
.main-content {
  min-height: 100vh;
  padding-bottom: calc(var(--tab-bar-height) + 16px);
}
.container {
  max-width: var(--max-width);
  margin: 0 auto;
  padding: 0 var(--space-md);
}
.page-header {
  background: var(--primary-gradient);
  padding: 48px var(--space-lg) 56px;
  color: var(--text-inverse);
  text-align: center;
  border-radius: 0 0 var(--radius-xl) var(--radius-xl);
  position: relative; overflow: hidden;
}
.page-header::before {
  content: ''; position: absolute;
  top: -40px; right: -40px;
  width: 160px; height: 160px;
  border-radius: 50%;
  background: rgba(255,255,255,0.06);
}
.page-header::after {
  content: ''; position: absolute;
  bottom: -20px; left: 40px;
  width: 100px; height: 100px;
  border-radius: 50%;
  background: rgba(255,255,255,0.04);
}
.page-header h1 {
  font-size: 28px; font-weight: 800;
  position: relative; z-index: 1;
  letter-spacing: 1px;
}
.page-header p {
  opacity: 0.85; font-size: 14px;
  margin-top: 6px; position: relative; z-index: 1;
}

/* ===== 侧边栏 ===== */
.sidebar {
  display: none;
  position: fixed; top: 0; left: 0; bottom: 0;
  width: var(--sidebar-width);
  background: var(--bg-elevated);
  border-right: 1px solid var(--divider);
  z-index: 200;
  flex-direction: column;
}
.sidebar-header {
  padding: 32px 20px 24px;
  text-align: center;
  border-bottom: 1px solid var(--divider);
}
.sidebar-logo {
  width: 52px; height: 52px;
  background: var(--primary-gradient);
  border-radius: var(--radius);
  display: flex; align-items: center; justify-content: center;
  font-size: 26px; margin: 0 auto 10px;
  box-shadow: var(--primary-shadow);
}
.sidebar-title { font-size: 18px; font-weight: 700; color: var(--text); }
.sidebar-sub { font-size: 12px; color: var(--text-3); margin-top: 2px; }
.sidebar-nav {
  flex: 1; padding: var(--space-md) var(--space);
  display: flex; flex-direction: column; gap: 2px;
  overflow-y: auto;
}
.nav-group-label {
  font-size: 11px; font-weight: 700;
  color: var(--text-3);
  text-transform: uppercase;
  letter-spacing: 2px;
  padding: var(--space-md) var(--space) var(--space-sm);
}
.nav-item {
  display: flex; align-items: center; gap: 12px;
  padding: 11px 14px;
  border-radius: var(--radius);
  cursor: pointer;
  transition: all var(--duration-fast) var(--ease-out);
  color: var(--text-2);
  font-size: 14px;
}
.nav-item:hover { background: var(--divider); color: var(--text); }
.nav-item:active { transform: scale(0.97); }
.nav-item.active {
  background: var(--primary-light);
  color: var(--primary);
  font-weight: 600;
}
.nav-icon { font-size: 18px; width: 22px; text-align: center; flex-shrink: 0; }
.nav-label { font-size: 14px; }
.sidebar-footer {
  padding: var(--space-md) 20px;
  border-top: 1px solid var(--divider);
}
.sidebar-footer-text { font-size: 11px; color: var(--text-3); text-align: center; }

/* ===== 底部导航栏 ===== */
.tab-bar {
  position: fixed; bottom: 0; left: 0; right: 0;
  background: rgba(255,255,255,0.92);
  backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px);
  display: flex; justify-content: space-around;
  padding: 8px 0;
  padding-bottom: calc(8px + env(safe-area-inset-bottom));
  border-top: 1px solid var(--divider);
  z-index: 100;
}
.tab-item {
  text-align: center; padding: 4px 16px;
  cursor: pointer; transition: all var(--duration-fast);
  position: relative;
}
.tab-item.active .tab-icon,
.tab-item.active .tab-text { color: var(--primary); }
.tab-item.active::after {
  content: ''; position: absolute;
  top: -8px; left: 50%; transform: translateX(-50%);
  width: 20px; height: 3px;
  background: var(--primary);
  border-radius: var(--radius-full);
}
.tab-icon { font-size: 22px; display: block; color: var(--text-3); transition: color var(--duration-fast); }
.tab-text { font-size: 10px; color: var(--text-3); margin-top: 2px; font-weight: 600; transition: color var(--duration-fast); }

/* ===== 卡片 ===== */
.card {
  background: var(--bg-elevated);
  border-radius: var(--radius-lg);
  padding: var(--space-lg);
  box-shadow: 0 1px 2px rgba(0,0,0,0.03), 0 6px 20px rgba(0,0,0,0.05);
  margin-bottom: var(--space-md);
  border: 1px solid rgba(0,0,0,0.02);
  transition: transform var(--duration-fast), box-shadow var(--duration-fast);
}
.card:hover { box-shadow: 0 2px 4px rgba(0,0,0,0.03), 0 12px 32px rgba(0,0,0,0.08); }
.card-title {
  font-size: 17px; font-weight: 700;
  margin-bottom: var(--space-md);
  color: var(--text);
}

/* ===== 按钮 ===== */
.btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 6px;
  padding: 12px 24px;
  border-radius: var(--radius-full);
  font-size: 15px; font-weight: 600;
  cursor: pointer; border: none;
  transition: all var(--duration-fast) var(--ease-out);
  position: relative; overflow: hidden;
}
.btn:hover { opacity: 0.88; }
.btn:active { transform: scale(0.96); }
.btn-primary {
  background: var(--primary-gradient);
  color: var(--text-inverse);
  box-shadow: var(--primary-shadow), inset 0 1px 0 rgba(255,255,255,0.25);
}
.btn-secondary {
  background: var(--primary-light);
  color: var(--primary);
}
.btn-outline {
  background: transparent;
  color: var(--primary);
  border: 2px solid var(--primary);
}
.btn-danger {
  background: var(--danger);
  color: var(--text-inverse);
}
.btn-ghost {
  background: transparent;
  color: var(--text-2);
}
.btn-ghost:hover { background: var(--divider); }
.btn-sm { padding: 8px 16px; font-size: 13px; }
.btn-lg { padding: 16px 32px; font-size: 16px; }
.btn-block { width: 100%; }
.btn-icon {
  width: 40px; height: 40px; padding: 0;
  border-radius: var(--radius);
}

/* ===== 表单 ===== */
.form-group { margin-bottom: var(--space-md); }
.form-label {
  display: block;
  font-size: 13px; font-weight: 600;
  color: var(--text-2);
  margin-bottom: 6px;
}
.form-input, .form-select, .form-textarea {
  width: 100%;
  padding: 12px 16px;
  border: 2px solid var(--border);
  border-radius: var(--radius);
  font-size: 15px;
  background: var(--bg-elevated);
  color: var(--text);
  transition: border-color var(--duration-fast), box-shadow var(--duration-fast);
  outline: none;
}
.form-input:focus, .form-select:focus, .form-textarea:focus {
  border-color: var(--primary);
  box-shadow: 0 0 0 4px rgba(79,110,247,0.1);
}
.form-input::placeholder { color: var(--text-3); }
.form-textarea { min-height: 100px; resize: vertical; }

/* ===== 标签 ===== */
.tag {
  display: inline-flex; align-items: center;
  padding: 3px 10px;
  border-radius: var(--radius-full);
  font-size: 11px; font-weight: 600;
}
.tag-primary { background: var(--primary-light); color: var(--primary); }
.tag-success { background: var(--success-light); color: var(--success); }
.tag-danger { background: var(--danger-light); color: var(--danger); }
.tag-warning { background: var(--warning-light); color: var(--warning); }

/* ===== 分割线 ===== */
.divider {
  height: 1px;
  background: var(--divider);
  margin: var(--space-md) 0;
}

/* ===== 空状态 ===== */
.empty-state {
  text-align: center;
  padding: 48px var(--space-lg);
  color: var(--text-3);
}
.empty-state .icon {
  font-size: 56px;
  margin-bottom: var(--space-md);
  display: block;
  opacity: 0.6;
}
.empty-state h3 {
  font-size: 17px; font-weight: 600;
  color: var(--text-2);
  margin-bottom: var(--space-sm);
}
.empty-state p {
  font-size: 14px;
  margin-bottom: var(--space-lg);
}

/* ===== 加载状态 ===== */
.loading {
  text-align: center;
  padding: 48px;
  color: var(--text-3);
  font-size: 14px;
}
.loading::before {
  content: '';
  display: block;
  width: 32px; height: 32px;
  margin: 0 auto 12px;
  border: 3px solid var(--border);
  border-top-color: var(--primary);
  border-radius: 50%;
  animation: spin 0.8s linear infinite;
}
@keyframes spin { to { transform: rotate(360deg); } }

/* ===== 骨架屏 ===== */
.skeleton {
  background: linear-gradient(90deg, var(--divider) 25%, #E8E8ED 50%, var(--divider) 75%);
  background-size: 200% 100%;
  animation: shimmer 1.5s infinite;
  border-radius: var(--radius-sm);
}
@keyframes shimmer { to { background-position: -200% 0; } }

/* ===== 弹窗 ===== */
.modal-overlay {
  display: none;
  position: fixed; top: 0; left: 0; right: 0; bottom: 0;
  background: rgba(0,0,0,0.45);
  backdrop-filter: blur(4px);
  z-index: 999;
  overflow-y: auto;
  padding: var(--space-lg);
}
.modal-dialog {
  max-width: 480px;
  margin: 40px auto;
  background: var(--bg-elevated);
  border-radius: var(--radius-xl);
  padding: var(--space-xl);
  position: relative;
  box-shadow: var(--shadow-xl);
  animation: modalIn 0.3s var(--ease-spring);
}
@keyframes modalIn {
  from { opacity: 0; transform: translateY(20px) scale(0.95); }
  to { opacity: 1; transform: translateY(0) scale(1); }
}
.modal-close {
  position: absolute; top: 16px; right: 16px;
  background: var(--divider);
  border: none; border-radius: var(--radius-full);
  width: 32px; height: 32px;
  font-size: 16px; cursor: pointer;
  color: var(--text-2);
  display: flex; align-items: center; justify-content: center;
  transition: background var(--duration-fast);
}
.modal-close:hover { background: var(--border); }
.modal-title {
  font-size: 20px; font-weight: 700;
  margin-bottom: var(--space-lg);
}

/* ===== 分段控制器 ===== */
.segment-control {
  display: flex;
  background: var(--divider);
  border-radius: var(--radius);
  padding: 3px;
  margin-bottom: var(--space-md);
}
.segment-item {
  flex: 1; text-align: center;
  padding: 10px 0;
  font-size: 14px; font-weight: 500;
  color: var(--text-2);
  border-radius: calc(var(--radius) - 3px);
  cursor: pointer;
  transition: all var(--duration) var(--ease-out);
}
.segment-item.active {
  background: var(--bg-elevated);
  color: var(--primary);
  font-weight: 600;
  box-shadow: var(--shadow-sm);
}

/* ===== 筛选标签 ===== */
.filter-bar {
  display: flex; flex-wrap: wrap;
  gap: var(--space-sm);
  margin-bottom: var(--space-md);
}
.filter-chip {
  padding: 8px 16px;
  border-radius: var(--radius-full);
  font-size: 13px; font-weight: 500;
  border: 2px solid var(--border);
  background: var(--bg-elevated);
  color: var(--text-2);
  cursor: pointer;
  transition: all var(--duration-fast);
}
.filter-chip:hover { border-color: var(--primary); color: var(--primary); }
.filter-chip.active {
  background: var(--primary);
  color: var(--text-inverse);
  border-color: var(--primary);
}

/* ===== 分页 ===== */
.pagination {
  display: flex; justify-content: center;
  gap: 6px;
  padding: var(--space-md) 0;
}
.page-btn {
  width: 36px; height: 36px;
  display: flex; align-items: center; justify-content: center;
  border-radius: var(--radius-sm);
  font-size: 14px; font-weight: 500;
  color: var(--text-2);
  cursor: pointer;
  transition: all var(--duration-fast);
  background: var(--bg-elevated);
  border: 1px solid var(--border);
}
.page-btn:hover { background: var(--primary-light); color: var(--primary); }
.page-btn.active {
  background: var(--primary);
  color: var(--text-inverse);
  border-color: var(--primary);
}

/* ===== 备案信息 ===== */
.site-footer {
  text-align: center;
  padding: 24px var(--space-md);
  color: var(--text-3);
  font-size: 12px;
  line-height: 2.2;
}
.site-footer a { color: var(--text-3); text-decoration: none; transition: color var(--duration-fast); }
.site-footer a:hover { color: var(--primary); }
.footer-divider { margin: 0 6px; color: var(--border); }
.site-footer img { vertical-align: middle; }

/* ===== 响应式 ===== */
@media (min-width: 960px) {
  .sidebar { display: flex; }
  .tab-bar { display: none; }
  .main-content { margin-left: var(--sidebar-width); padding-bottom: 0; }
  .page-header { border-radius: 0 0 0 var(--radius-xl); }
  .container { padding: 0 var(--space-lg); }
}

@media (max-width: 480px) {
  .page-header { padding: 40px var(--space-md) 48px; }
  .page-header h1 { font-size: 24px; }
  .card { padding: var(--space-md); }
  .btn { padding: 10px 20px; font-size: 14px; }
}

/* ===== emoji -> SVG 图标（按 href 匹配，无需改模板） ===== */
.nav-icon, .tab-icon {
  font-size: 0 !important;
  display: inline-block;
  width: 20px; height: 20px;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  vertical-align: middle;
}
a[href="/"] .nav-icon, a[href="/"] .tab-icon { background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%2394A3B8%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M4%2010.5%2012%204l8%206.5V20a1%201%200%200%201-1%201H5a1%201%200%200%201-1-1z%27%2F%3E%3Cpath%20d%3D%27M9.5%2021v-6h5v6%27%2F%3E%3C%2Fsvg%3E"); }
a[href="/"].active .nav-icon, a[href="/"].active .tab-icon, .nav-item.active a[href="/"] .nav-icon { background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%236366F1%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M4%2010.5%2012%204l8%206.5V20a1%201%200%200%201-1%201H5a1%201%200%200%201-1-1z%27%2F%3E%3Cpath%20d%3D%27M9.5%2021v-6h5v6%27%2F%3E%3C%2Fsvg%3E"); }
a[href="/search"] .nav-icon, a[href="/search"] .tab-icon { background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%2394A3B8%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Ccircle%20cx%3D%2711%27%20cy%3D%2711%27%20r%3D%277%27%2F%3E%3Cpath%20d%3D%27M20%2020l-4.5-4.5%27%2F%3E%3C%2Fsvg%3E"); }
a[href="/search"].active .nav-icon, a[href="/search"].active .tab-icon, .nav-item.active a[href="/search"] .nav-icon { background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%236366F1%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Ccircle%20cx%3D%2711%27%20cy%3D%2711%27%20r%3D%277%27%2F%3E%3Cpath%20d%3D%27M20%2020l-4.5-4.5%27%2F%3E%3C%2Fsvg%3E"); }
a[href="/mine"] .nav-icon, a[href="/mine"] .tab-icon { background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%2394A3B8%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Ccircle%20cx%3D%2712%27%20cy%3D%278%27%20r%3D%274%27%2F%3E%3Cpath%20d%3D%27M4.5%2021c0-4%203.4-6%207.5-6s7.5%202%207.5%206%27%2F%3E%3C%2Fsvg%3E"); }
a[href="/mine"].active .nav-icon, a[href="/mine"].active .tab-icon, .nav-item.active a[href="/mine"] .nav-icon { background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%236366F1%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Ccircle%20cx%3D%2712%27%20cy%3D%278%27%20r%3D%274%27%2F%3E%3Cpath%20d%3D%27M4.5%2021c0-4%203.4-6%207.5-6s7.5%202%207.5%206%27%2F%3E%3C%2Fsvg%3E"); }
a[href="/practice-records"] .nav-icon, a[href="/practice-records"] .tab-icon { background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%2394A3B8%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Ccircle%20cx%3D%2712%27%20cy%3D%2712%27%20r%3D%279%27%2F%3E%3Cpath%20d%3D%27M12%207v5.3l3.2%202%27%2F%3E%3C%2Fsvg%3E"); }
a[href="/practice-records"].active .nav-icon, a[href="/practice-records"].active .tab-icon, .nav-item.active a[href="/practice-records"] .nav-icon { background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%236366F1%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Ccircle%20cx%3D%2712%27%20cy%3D%2712%27%20r%3D%279%27%2F%3E%3Cpath%20d%3D%27M12%207v5.3l3.2%202%27%2F%3E%3C%2Fsvg%3E"); }
a[href="/wrong-questions"] .nav-icon, a[href="/wrong-questions"] .tab-icon { background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%2394A3B8%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Ccircle%20cx%3D%2712%27%20cy%3D%2712%27%20r%3D%279%27%2F%3E%3Cpath%20d%3D%27M12%207.2v5.6%27%2F%3E%3Cpath%20d%3D%27M12%2016.4h.01%27%2F%3E%3C%2Fsvg%3E"); }
a[href="/wrong-questions"].active .nav-icon, a[href="/wrong-questions"].active .tab-icon, .nav-item.active a[href="/wrong-questions"] .nav-icon { background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%236366F1%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Ccircle%20cx%3D%2712%27%20cy%3D%2712%27%20r%3D%279%27%2F%3E%3Cpath%20d%3D%27M12%207.2v5.6%27%2F%3E%3Cpath%20d%3D%27M12%2016.4h.01%27%2F%3E%3C%2Fsvg%3E"); }
a[href="/exam-setup"] .nav-icon, a[href="/exam-setup"] .tab-icon { background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%2394A3B8%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M14%203H7.5A2%202%200%200%200%205.5%205v14a2%202%200%200%200%202%202h9a2%202%200%200%200%202-2V7.5z%27%2F%3E%3Cpath%20d%3D%27M14%203v4.5h4.5%27%2F%3E%3Cpath%20d%3D%27M9%2013h6%27%2F%3E%3Cpath%20d%3D%27M9%2017h4%27%2F%3E%3C%2Fsvg%3E"); }
a[href="/exam-setup"].active .nav-icon, a[href="/exam-setup"].active .tab-icon, .nav-item.active a[href="/exam-setup"] .nav-icon { background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%236366F1%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M14%203H7.5A2%202%200%200%200%205.5%205v14a2%202%200%200%200%202%202h9a2%202%200%200%200%202-2V7.5z%27%2F%3E%3Cpath%20d%3D%27M14%203v4.5h4.5%27%2F%3E%3Cpath%20d%3D%27M9%2013h6%27%2F%3E%3Cpath%20d%3D%27M9%2017h4%27%2F%3E%3C%2Fsvg%3E"); }
a[href="/exam-records"] .nav-icon, a[href="/exam-records"] .tab-icon { background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%2394A3B8%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Ccircle%20cx%3D%2712%27%20cy%3D%2712%27%20r%3D%279%27%2F%3E%3Cpath%20d%3D%27M12%207v5.3l3.2%202%27%2F%3E%3C%2Fsvg%3E"); }
a[href="/exam-records"].active .nav-icon, a[href="/exam-records"].active .tab-icon, .nav-item.active a[href="/exam-records"] .nav-icon { background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%236366F1%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Ccircle%20cx%3D%2712%27%20cy%3D%2712%27%20r%3D%279%27%2F%3E%3Cpath%20d%3D%27M12%207v5.3l3.2%202%27%2F%3E%3C%2Fsvg%3E"); }
a[href="/study-groups"] .nav-icon, a[href="/study-groups"] .tab-icon { background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%2394A3B8%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Ccircle%20cx%3D%279%27%20cy%3D%278%27%20r%3D%273.4%27%2F%3E%3Cpath%20d%3D%27M2.5%2020c0-3.4%202.9-5%206.5-5s6.5%201.6%206.5%205%27%2F%3E%3Cpath%20d%3D%27M16%205.4a3.4%203.4%200%200%201%200%206.6%27%2F%3E%3Cpath%20d%3D%27M17.3%2014.6c2%20.7%203.7%202.2%203.7%204.4%27%2F%3E%3C%2Fsvg%3E"); }
a[href="/study-groups"].active .nav-icon, a[href="/study-groups"].active .tab-icon, .nav-item.active a[href="/study-groups"] .nav-icon { background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%236366F1%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Ccircle%20cx%3D%279%27%20cy%3D%278%27%20r%3D%273.4%27%2F%3E%3Cpath%20d%3D%27M2.5%2020c0-3.4%202.9-5%206.5-5s6.5%201.6%206.5%205%27%2F%3E%3Cpath%20d%3D%27M16%205.4a3.4%203.4%200%200%201%200%206.6%27%2F%3E%3Cpath%20d%3D%27M17.3%2014.6c2%20.7%203.7%202.2%203.7%204.4%27%2F%3E%3C%2Fsvg%3E"); }
a[href="/messages"] .nav-icon, a[href="/messages"] .tab-icon { background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%2394A3B8%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M6.2%209.5a5.8%205.8%200%200%201%2011.6%200c0%203.9%201.4%205.4%202%205.9H4.2c.6-.5%202-2%202-5.9z%27%2F%3E%3Cpath%20d%3D%27M9.8%2018.6a2.2%202.2%200%200%200%204.4%200%27%2F%3E%3C%2Fsvg%3E"); }
a[href="/messages"].active .nav-icon, a[href="/messages"].active .tab-icon, .nav-item.active a[href="/messages"] .nav-icon { background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%236366F1%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M6.2%209.5a5.8%205.8%200%200%201%2011.6%200c0%203.9%201.4%205.4%202%205.9H4.2c.6-.5%202-2%202-5.9z%27%2F%3E%3Cpath%20d%3D%27M9.8%2018.6a2.2%202.2%200%200%200%204.4%200%27%2F%3E%3C%2Fsvg%3E"); }
a[href="/question-favorites"] .nav-icon, a[href="/question-favorites"] .tab-icon { background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%2394A3B8%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M12%203.5l2.6%205.4%205.9.8-4.3%204.1%201.1%205.9L12%2016.9l-5.3%202.8%201.1-5.9-4.3-4.1%205.9-.8z%27%2F%3E%3C%2Fsvg%3E"); }
a[href="/question-favorites"].active .nav-icon, a[href="/question-favorites"].active .tab-icon, .nav-item.active a[href="/question-favorites"] .nav-icon { background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%236366F1%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M12%203.5l2.6%205.4%205.9.8-4.3%204.1%201.1%205.9L12%2016.9l-5.3%202.8%201.1-5.9-4.3-4.1%205.9-.8z%27%2F%3E%3C%2Fsvg%3E"); }
a[href="/stats"] .nav-icon, a[href="/stats"] .tab-icon { background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%2394A3B8%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M4.5%2020v-7%27%2F%3E%3Cpath%20d%3D%27M10%2020V5%27%2F%3E%3Cpath%20d%3D%27M15.5%2020v-9%27%2F%3E%3Cpath%20d%3D%27M21%2020H3%27%2F%3E%3C%2Fsvg%3E"); }
a[href="/stats"].active .nav-icon, a[href="/stats"].active .tab-icon, .nav-item.active a[href="/stats"] .nav-icon { background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%236366F1%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M4.5%2020v-7%27%2F%3E%3Cpath%20d%3D%27M10%2020V5%27%2F%3E%3Cpath%20d%3D%27M15.5%2020v-9%27%2F%3E%3Cpath%20d%3D%27M21%2020H3%27%2F%3E%3C%2Fsvg%3E"); }
a[href="/analytics"] .nav-icon, a[href="/analytics"] .tab-icon { background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%2394A3B8%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M4.5%2020v-7%27%2F%3E%3Cpath%20d%3D%27M10%2020V5%27%2F%3E%3Cpath%20d%3D%27M15.5%2020v-9%27%2F%3E%3Cpath%20d%3D%27M21%2020H3%27%2F%3E%3C%2Fsvg%3E"); }
a[href="/analytics"].active .nav-icon, a[href="/analytics"].active .tab-icon, .nav-item.active a[href="/analytics"] .nav-icon { background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%236366F1%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M4.5%2020v-7%27%2F%3E%3Cpath%20d%3D%27M10%2020V5%27%2F%3E%3Cpath%20d%3D%27M15.5%2020v-9%27%2F%3E%3Cpath%20d%3D%27M21%2020H3%27%2F%3E%3C%2Fsvg%3E"); }
a[href="/knowledge-graph"] .nav-icon, a[href="/knowledge-graph"] .tab-icon { background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%2394A3B8%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Ccircle%20cx%3D%2712%27%20cy%3D%2712%27%20r%3D%278.5%27%2F%3E%3Ccircle%20cx%3D%2712%27%20cy%3D%2712%27%20r%3D%274.5%27%2F%3E%3Ccircle%20cx%3D%2712%27%20cy%3D%2712%27%20r%3D%271%27%2F%3E%3C%2Fsvg%3E"); }
a[href="/knowledge-graph"].active .nav-icon, a[href="/knowledge-graph"].active .tab-icon, .nav-item.active a[href="/knowledge-graph"] .nav-icon { background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%236366F1%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Ccircle%20cx%3D%2712%27%20cy%3D%2712%27%20r%3D%278.5%27%2F%3E%3Ccircle%20cx%3D%2712%27%20cy%3D%2712%27%20r%3D%274.5%27%2F%3E%3Ccircle%20cx%3D%2712%27%20cy%3D%2712%27%20r%3D%271%27%2F%3E%3C%2Fsvg%3E"); }
a[href="/recycle-bin"] .nav-icon, a[href="/recycle-bin"] .tab-icon { background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%2394A3B8%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M4%207h16%27%2F%3E%3Cpath%20d%3D%27M9.5%207V5.2A1.2%201.2%200%200%201%2010.7%204h2.6a1.2%201.2%200%200%201%201.2%201.2V7%27%2F%3E%3Cpath%20d%3D%27M6.2%207l.9%2012.3A1.2%201.2%200%200%200%208.3%2020.4h7.4a1.2%201.2%200%200%200%201.2-1.1L17.8%207%27%2F%3E%3Cpath%20d%3D%27M10.2%2011v5.6%27%2F%3E%3Cpath%20d%3D%27M13.8%2011v5.6%27%2F%3E%3C%2Fsvg%3E"); }
a[href="/recycle-bin"].active .nav-icon, a[href="/recycle-bin"].active .tab-icon, .nav-item.active a[href="/recycle-bin"] .nav-icon { background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%236366F1%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M4%207h16%27%2F%3E%3Cpath%20d%3D%27M9.5%207V5.2A1.2%201.2%200%200%201%2010.7%204h2.6a1.2%201.2%200%200%201%201.2%201.2V7%27%2F%3E%3Cpath%20d%3D%27M6.2%207l.9%2012.3A1.2%201.2%200%200%200%208.3%2020.4h7.4a1.2%201.2%200%200%200%201.2-1.1L17.8%207%27%2F%3E%3Cpath%20d%3D%27M10.2%2011v5.6%27%2F%3E%3Cpath%20d%3D%27M13.8%2011v5.6%27%2F%3E%3C%2Fsvg%3E"); }
a[href="/share-manage"] .nav-icon, a[href="/share-manage"] .tab-icon { background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%2394A3B8%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Ccircle%20cx%3D%2718%27%20cy%3D%275%27%20r%3D%272.8%27%2F%3E%3Ccircle%20cx%3D%276%27%20cy%3D%2712%27%20r%3D%272.8%27%2F%3E%3Ccircle%20cx%3D%2718%27%20cy%3D%2719%27%20r%3D%272.8%27%2F%3E%3Cpath%20d%3D%27M8.4%2010.6%2015.6%206.4%27%2F%3E%3Cpath%20d%3D%27M8.4%2013.4%2015.6%2017.6%27%2F%3E%3C%2Fsvg%3E"); }
a[href="/share-manage"].active .nav-icon, a[href="/share-manage"].active .tab-icon, .nav-item.active a[href="/share-manage"] .nav-icon { background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%236366F1%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Ccircle%20cx%3D%2718%27%20cy%3D%275%27%20r%3D%272.8%27%2F%3E%3Ccircle%20cx%3D%276%27%20cy%3D%2712%27%20r%3D%272.8%27%2F%3E%3Ccircle%20cx%3D%2718%27%20cy%3D%2719%27%20r%3D%272.8%27%2F%3E%3Cpath%20d%3D%27M8.4%2010.6%2015.6%206.4%27%2F%3E%3Cpath%20d%3D%27M8.4%2013.4%2015.6%2017.6%27%2F%3E%3C%2Fsvg%3E"); }
a[href="/bank-manage"] .nav-icon, a[href="/bank-manage"] .tab-icon { background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%2394A3B8%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M12%206.6C10.4%205%208%204.4%204%204.9v13.4c4-.6%206.4.1%208%201.6%201.6-1.5%204-2.2%208-1.6V4.9c-4-.5-6.4.1-8%201.7z%27%2F%3E%3Cpath%20d%3D%27M12%206.6v13.3%27%2F%3E%3C%2Fsvg%3E"); }
a[href="/bank-manage"].active .nav-icon, a[href="/bank-manage"].active .tab-icon, .nav-item.active a[href="/bank-manage"] .nav-icon { background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%236366F1%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M12%206.6C10.4%205%208%204.4%204%204.9v13.4c4-.6%206.4.1%208%201.6%201.6-1.5%204-2.2%208-1.6V4.9c-4-.5-6.4.1-8%201.7z%27%2F%3E%3Cpath%20d%3D%27M12%206.6v13.3%27%2F%3E%3C%2Fsvg%3E"); }
.tab-item.active .tab-icon { background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%236366F1%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M4%2010.5%2012%204l8%206.5V20a1%201%200%200%201-1%201H5a1%201%200%200%201-1-1z%27%2F%3E%3Cpath%20d%3D%27M9.5%2021v-6h5v6%27%2F%3E%3C%2Fsvg%3E"); }

/* 登录页 logo：emoji -> 白色书本图标 */
.login-page .logo-icon {
  font-size: 0 !important;
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%23FFFFFF%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M12%206.6C10.4%205%208%204.4%204%204.9v13.4c4-.6%206.4.1%208%201.6%201.6-1.5%204-2.2%208-1.6V4.9c-4-.5-6.4.1-8%201.7z%27%2F%3E%3Cpath%20d%3D%27M12%206.6v13.3%27%2F%3E%3C%2Fsvg%3E");
  background-repeat: no-repeat; background-position: center; background-size: 44px 44px;
}
