/* =====================================================
   麦田AI人才库 · Apple 风格视觉升级
   设计基调：极简留白 / 大圆角 / 纯白主背景 / 单色克制
   品牌深咖啡 #5C3A21（按钮、标题）/ 主金 #D4A574（仅强调）
   ===================================================== */
:root {
  --mt-bg: #FFFFFF;          /* Apple 主背景：纯白 */
  --mt-surface: #FFFFFF;     /* 卡片表面：纯白 */
  --mt-subtle: #F5F5F7;      /* Apple 经典分区浅灰（极浅） */
  --mt-brand: #5C3A21;       /* 深咖啡品牌色 */
  --mt-text: #1D1D1F;        /* Apple 近黑 */
  --mt-text-secondary: #86868B; /* Apple 次级灰 */
  --mt-border: #E8E8ED;      /* Apple 极浅灰边 */
  --mt-shadow-soft: 0 4px 24px rgba(0,0,0,0.04);   /* 极轻单层阴影 */
  --mt-shadow-hover: 0 8px 32px rgba(0,0,0,0.06);
  --mt-radius-card: 1.25rem; /* 20px 大圆角 */
  --mt-radius-pill: 9999px;  /* 胶囊按钮 */
  --mt-radius-input: 0.75rem;/* 12px 输入框 */
  /* —— 兼容旧设计引用 —— */
  --mt-primary: #D4A574;     /* 主金：仅用于强调 */
  --mt-accent: #E8C896;
  --mt-text-muted: var(--mt-text-secondary);
  --mt-shadow-light: var(--mt-shadow-soft);
  --mt-shadow-card: var(--mt-shadow-hover);
  --mt-radius-lg: var(--mt-radius-card);
  --mt-radius-md: 0.875rem;
  --mt-radius-sm: 0.625rem;
  --mt-radius-ss: 0.375rem;
  --mt-radius-xl: 1.75rem;
  --mt-radius-full: var(--mt-radius-pill);
}

* { box-sizing: border-box; }

body {
  background-color: var(--mt-bg);
  color: var(--mt-text);
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "PingFang SC", "Microsoft YaHei", sans-serif;
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
}

/* —— 品牌色接管 Bootstrap 主色：按钮/标题用深咖啡，主金仅强调 —— */
.btn-primary, .bg-primary, .badge-primary, .alert-primary {
  background-color: var(--mt-brand) !important;
  border-color: var(--mt-brand) !important;
  color: #FFF !important;
}
.btn-primary:hover, .btn-primary:focus, .btn-primary:active {
  background-color: #4A2E18 !important;
  border-color: #4A2E18 !important;
  color: #FFF !important;
}
.text-primary { color: var(--mt-brand) !important; }
.btn-outline-primary {
  color: var(--mt-brand) !important;
  border-color: var(--mt-brand) !important;
}
.btn-outline-primary:hover, .btn-outline-primary:focus {
  background-color: var(--mt-brand) !important;
  border-color: var(--mt-brand) !important;
  color: #FFF !important;
}

/* —— 卡片：20px 大圆角 + 极轻阴影 + 浅灰边（含 hover 微上浮） —— */
.card {
  background-color: var(--mt-surface);
  border: 1px solid var(--mt-border);
  border-radius: var(--mt-radius-card);
  box-shadow: var(--mt-shadow-soft);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.card:hover {
  transform: translateY(-2px);
  box-shadow: var(--mt-shadow-hover);
}
/* 统一旧模板里的 shadow-sm：换成极轻设计阴影，避免 Bootstrap 默认重阴影 */
.card.shadow-sm, .card.shadow { box-shadow: var(--mt-shadow-soft) !important; }
.card.shadow-sm:hover, .card.shadow:hover { box-shadow: var(--mt-shadow-hover) !important; }
.card.rounded-lg { border-radius: var(--mt-radius-md) !important; }
.card.rounded-xl { border-radius: var(--mt-radius-lg) !important; }

/* —— 胶囊按钮 + 按压缩放 —— */
.btn {
  border-radius: var(--mt-radius-pill);
  padding: 0.5rem 1.25rem;
  transition: transform 0.25s ease, background-color 0.25s ease, border-color 0.25s ease, color 0.25s ease, box-shadow 0.25s ease;
}
.btn:active { transform: scale(0.97); }
.btn-sm { padding: 0.375rem 0.9rem; }

/* —— 输入框：12px 圆角 + 品牌色焦点光晕 —— */
.form-control, .form-select {
  border-radius: var(--mt-radius-input);
  border-color: var(--mt-border);
}
.form-control:focus, .form-select:focus {
  border-color: var(--mt-brand);
  box-shadow: 0 0 0 3px rgba(92,58,33,0.12);
  background-color: var(--mt-surface);
}

/* —— 导航栏：纯白 + 底部分割线 —— */
.navbar {
  background-color: #FFFFFF !important;
  border-bottom: 1px solid var(--mt-border);
}
.navbar-brand { color: var(--mt-brand) !important; font-weight: 700; }
.nav-link { color: var(--mt-text-secondary) !important; }
.nav-link:hover { color: var(--mt-brand) !important; }

/* —— 品牌名 —— */
.brand-name { display: flex; align-items: center; gap: 0.5rem; }
.brand-title, .brand-name { color: var(--mt-brand) !important; font-weight: 700; }
/* 品牌名下方英文副标题（如 HR PARTNER） */
.brand-sub {
  font-size: 0.7rem;
  letter-spacing: 0.18em;
  color: var(--mt-text-secondary, #86868B);
  text-transform: uppercase;
  font-weight: 400;
  margin-top: 2px;
  line-height: 1.2;
}

/* —— 页面大标题（仅颜色/字重；首页大标语用 .hero-slogan） —— */
.hero-title { color: var(--mt-brand) !important; font-weight: 600; }
.hero-slogan {
  font-size: 3rem;
  font-weight: 600;
  letter-spacing: -0.02em;
  color: var(--mt-brand) !important;
}
.hero-sub { font-size: 1rem; color: #1D1D1D; }
.hero-subtitle { color: #1D1D1D; }
@media (max-width: 576px) {
  .hero-slogan { font-size: 2rem; }
}

/* —— 首页上传区 —— */
.upload-drop {
  border: 1.5px dashed var(--mt-border);
  border-radius: var(--mt-radius-input);
  padding: 28px;
  text-align: center;
  background-color: var(--mt-subtle);
  transition: border-color 0.25s ease, background-color 0.25s ease;
  cursor: pointer;
}
.upload-drop:hover { border-color: var(--mt-brand); background-color: #FFFFFF; }

/* —— 签到/额度徽章（浅金胶囊） —— */
.checkin-badge {
  border-radius: var(--mt-radius-pill);
  background: linear-gradient(135deg, #F7D2A0, #D4A574);
  color: var(--mt-brand);
  font-weight: 600;
  padding: 0.5rem 1.15rem;
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
}

/* —— AI 语义匹配专属卡片：深咖啡底 + 白字（核心卖点） —— */
.ai-premium {
  background-color: var(--mt-brand) !important;
  border-color: var(--mt-brand) !important;
  color: #FFFFFF;
}
.ai-premium .card-title { color: #FFFFFF !important; }
.ai-premium .text-muted, .ai-premium small { color: rgba(255,255,255,0.75) !important; }
.ai-premium .form-control {
  background-color: rgba(255,255,255,0.12);
  border-color: rgba(255,255,255,0.28);
  color: #FFFFFF;
}
.ai-premium .form-control::placeholder { color: rgba(255,255,255,0.5); }
.ai-premium .form-control:focus {
  border-color: #FFFFFF;
  box-shadow: 0 0 0 3px rgba(255,255,255,0.18);
  background-color: rgba(255,255,255,0.16);
  color: #FFFFFF;
}
.ai-premium .text-warning { color: #FFC94D !important; }
.ai-premium .badge { background-color: rgba(255,255,255,0.18); color: #FFFFFF; }
/* 白边按钮（深咖啡底上的次级按钮） */
.btn-outline-white {
  color: #FFFFFF;
  border: 1px solid rgba(255,255,255,0.75);
  background-color: transparent;
}
.btn-outline-white:hover {
  background-color: #FFFFFF;
  border-color: #FFFFFF;
  color: var(--mt-brand) !important;
}

/* —— 表格简约化 —— */
.table { border-collapse: separate; border-spacing: 0; }
.table th {
  border-bottom: 1px solid var(--mt-border);
  color: var(--mt-text-secondary);
  font-weight: 500;
  font-size: 0.8rem;
  letter-spacing: 0.3px;
}
.table td { border-top: 1px solid var(--mt-border); }
.table-hover tbody tr:hover { background-color: var(--mt-subtle); }

/* —— 匹配结果卡片：左侧品牌强调竖线 + 分数 pill —— */
.match-card { border-left: 4px solid var(--mt-primary) !important; }
.score-pill { border-radius: var(--mt-radius-pill) !important; font-weight: 600; }
.match-reason { font-size: 0.875rem; color: var(--mt-text-secondary); line-height: 1.5; }

/* —— 详情页标签 pill（白底金边） —— */
.tag-pill-full {
  border-radius: var(--mt-radius-pill) !important;
  background-color: var(--mt-surface) !important;
  color: var(--mt-brand, #5C3A21) !important;
  border: 1px solid var(--mt-primary) !important;
}
/* 标签用 Bootstrap .badge 时同时覆盖其默认 color，确保白底金边 + 深咖啡字 */
.badge.tag-pill-full { color: var(--mt-brand, #5C3A21) !important; }

/* —— 首页搜索区提示文字（女 本科 审计）：强制覆盖 Bootstrap code 默认红色 —— */
.brand-tip,
code.brand-tip {
  color: var(--mt-brand, #5C3A21) !important;
}

/* —— 深咖啡线框胶囊按钮（导航 + 管理页操作按钮统一）
   用 Bootstrap 5 的 --bs-btn-* CSS 变量实现 #5C3A24 系深咖啡色，
   不直接覆盖 background-color（交由 Bootstrap 的 .btn 机制渲染 hover/active） */
.btn-outline-brand {
  --bs-btn-color: var(--mt-brand, #5C3A21);
  --bs-btn-border-color: var(--mt-brand, #5C3A21);
  --bs-btn-hover-color: #FFFFFF;
  --bs-btn-hover-bg: var(--mt-brand, #5C3A21);
  --bs-btn-hover-border-color: var(--mt-brand, #5C3A21);
  --bs-btn-active-color: #FFFFFF;
  --bs-btn-active-bg: var(--mt-brand, #5C3A21);
  --bs-btn-active-border-color: var(--mt-brand, #5C3A21);
  --bs-btn-focus-shadow-rgb: 92, 58, 33;
  border-radius: 9999px;
  padding: 0.35rem 1rem;
  font-size: 0.875rem;
  transition: all 0.25s ease;
}

/* —— 管理员后台深咖啡底色（#5F3C23）：顶部信息标签 / 跳转按钮 / 底部提示条 —— */
.bg-brand-dark { background-color: #5F3C23; }
.btn-brand-dark {
  --bs-btn-bg: #5F3C23;
  --bs-btn-border-color: #5F3C23;
  --bs-btn-color: #FFFFFF;
  --bs-btn-hover-bg: #4E3020;
  --bs-btn-hover-border-color: #4E3020;
  --bs-btn-hover-color: #FFFFFF;
  --bs-btn-active-bg: #4E3020;
  --bs-btn-active-border-color: #4E3020;
  --bs-btn-active-color: #FFFFFF;
  --bs-btn-focus-shadow-rgb: 95, 60, 35;
}

/* —— AI 深度解析按钮：常亮金色 #FBC435（常态即为实心，hover/active 不变色） —— */
.btn-ai-parse {
  --bs-btn-color: #1D1D1D;
  --bs-btn-bg: #FBC435;
  --bs-btn-border-color: #FBC435;
  --bs-btn-hover-color: #1D1D1D;
  --bs-btn-hover-bg: #FBC435;
  --bs-btn-hover-border-color: #FBC435;
  --bs-btn-active-color: #1D1D1D;
  --bs-btn-active-bg: #FBC435;
  --bs-btn-active-border-color: #FBC435;
  --bs-btn-disabled-color: #1D1D1D;
  --bs-btn-disabled-bg: #FBC435;
  --bs-btn-disabled-border-color: #FBC435;
  --bs-btn-focus-shadow-rgb: 251, 196, 53;
}

/* —— 立即登录/立即注册 链接：咖啡色 + 下划线 —— */
.link-brand {
  color: var(--mt-brand, #5C3A21) !important;
  text-decoration: underline !important;
  text-underline-offset: 2px;
  transition: opacity 0.2s ease;
}
.link-brand:hover {
  opacity: 0.75;
}

/* —— 信息提示 ⓘ 图标统一金色 —— */
.info-hint { color: var(--mt-primary); }

/* —— 统计数字卡片 —— */
.stat-card .stat-num { font-size: 2.25rem; font-weight: 700; color: var(--mt-text); }

/* —— 弹窗 —— */
.modal-content { border-radius: var(--mt-radius-lg) !important; }
.alert { border-radius: var(--mt-radius-input); }
/* —— 成功/提醒类 flash：深咖啡 #5C3A24 底白字（错误/警告保留红黄色系） —— */
.alert-success, .alert-info, .alert-welcome {
  background-color: #5C3A24 !important;
  border-color: #5C3A24 !important;
  color: #FFFFFF !important;
  border-radius: 0.75rem;
}

/* =====================================================
   精致微动效（克制：0.25–0.6s ease，无第三方库）
   ===================================================== */
/* a) 入场动画：fade-up */
[data-animate="fade-up"] {
  opacity: 0;
  transform: translateY(16px);
  transition: opacity 0.6s ease, transform 0.6s ease, box-shadow 0.3s ease;
}
[data-animate="fade-up"].in-view { opacity: 1; transform: none; }

/* d) 签到数字弹跳 */
@keyframes pop {
  0%   { transform: scale(1); }
  50%  { transform: scale(1.2); }
  100% { transform: scale(1); }
}
.pop { animation: pop 0.4s ease; }

/* e) Flash 顶部滑入 */
.alert { animation: flashSlideDown 0.5s ease both; }
@keyframes flashSlideDown {
  from { opacity: 0; transform: translateY(-14px); }
  to   { opacity: 1; transform: none; }
}
.flash-hide {
  opacity: 0 !important;
  transform: translateY(-14px) !important;
  transition: opacity 0.4s ease, transform 0.4s ease;
}

/* 尊重系统减弱动效偏好 */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation: none !important;
    transition: none !important;
  }
  [data-animate="fade-up"] { opacity: 1; transform: none; }
}

/* =====================================================
   我的权益 / 个人中心 · 状态徽章
   浅金底 + 深咖啡字 pill（替代 Bootstrap 默认红绿徽章）
   ===================================================== */
.badge-status {
  background-color: #F5F0EB;
  color: var(--mt-brand, #5C3A21);
  border: 1px solid var(--mt-primary, #D4A574);
  border-radius: 9999px;
  padding: 0.35rem 0.9rem;
  font-size: 0.875rem;
  font-weight: 600;
}

/* —— 我的权益页：功能权益卡品牌化（覆盖模板内联默认） —— */
.feature-card-on {
  border: 1px solid var(--mt-primary, #D4A574) !important;
  background-color: #F5F0EB !important;
}
.feature-card-off {
  border: 1px solid var(--mt-border, #E8E8ED) !important;
  background-color: var(--mt-subtle, #F5F5F7) !important;
}

/* —— 个人中心页：键值对（标签次级灰 + 值深咖啡） —— */
.info-label {
  font-size: 0.85rem;
  color: var(--mt-text-secondary, #86868B);
  margin-bottom: 4px;
}
.info-value {
  font-weight: 600;
  color: var(--mt-brand, #5C3A21);
  word-break: break-all;
  line-height: 1.6;
}

/* =====================================================
   关键词/命中标签与摘要高亮（results.html / ai_results.html 共用，#133 收敛到 style.css）
   统一咖啡色系：背景 #E6D3C5 / 文字 #5C4033 / 边框 #C8B09A（与 manage .tag-pill 一致）
   ===================================================== */
.kw-badge {
  background-color: #E6D3C5;
  color: #5C4033;
  border: 1px solid #C8B09A;
  font-weight: 500;
}
/* 权重命中（w-p0~p3）仅靠 tooltip 区分权重，视觉与普通命中保持一致 */
.kw-badge.w-p0,
.kw-badge.w-p1,
.kw-badge.w-p2,
.kw-badge.w-p3 {
  background: #E6D3C5 !important;
  color: #5C4033 !important;
  border: 1px solid #C8B09A;
}
/* AI 画像内的命中词高亮（<mark>，配合 .match-mark 容器） */
.match-mark mark {
  background: #E6D3C5;
  color: #5C4033;
  padding: 0 .12em;
  border-radius: 2px;
}
.match-mark mark.hit-p0 {
  background: #E6D3C5;
  color: #5C4033;
  font-weight: 600;
}

/* =====================================================
   账号概览卡片（_account_overview.html 公共片段样式）
   三格：VIP 状态 / 每日解析额度 / 体验额度
   ===================================================== */
.account-overview-card {
  border-radius: var(--mt-radius-card);
}
.account-overview-card .ov-item {
  padding: 0.9rem 1.1rem;
  border-radius: var(--mt-radius-md);
  background-color: var(--mt-subtle, #F5F5F7);
  height: 100%;
}
.account-overview-card .ov-label {
  font-size: 0.8rem;
  color: var(--mt-text-secondary, #86868B);
  display: flex;
  align-items: center;
  gap: 0.35rem;
}
.account-overview-card .ov-value {
  font-size: 1.05rem;
  font-weight: 700;
  color: var(--mt-brand, #5C3A21);
  word-break: break-all;
}
.account-overview-card .ov-value .text-danger { color: #C0392B !important; }

/* ===== 分页样式统一（manage + admin_resumes 共用） ===== */
.pagination .page-link {
    color: var(--mt-brand, #5C3A21);
    background-color: #fff;
    border: 1px solid var(--mt-border, #E8E8ED);
    border-radius: 6px;
    margin: 0 2px;
    font-size: 0.875rem;
    padding: 0.35rem 0.7rem;
}
.pagination .page-link:hover {
    color: #fff;
    background-color: var(--mt-brand, #5C3A21);
    border-color: var(--mt-brand, #5C3A21);
}
.pagination .page-item.active .page-link {
    color: #fff;
    background-color: var(--mt-brand, #5C3A21);
    border-color: var(--mt-brand, #5C3A21);
}
.pagination .page-item.disabled .page-link {
    color: #bdbdbd;
    background-color: transparent;
    border-color: transparent;
    pointer-events: none;
}
.pagination .page-item.disabled span.page-link {
    cursor: default;
}
