/* CSS Document */

/* ============================================================
   teacher.css - 教师列表页
   ============================================================ */

/* 拼音索引栏 */
.alpha-bar{display:flex;flex-wrap:wrap;gap:5px;padding:14px 16px;background:#F8FAFF;border:1px solid #EDF2FB;border-radius:12px;margin-bottom:26px;}
.alpha-bar a{display:inline-flex;align-items:center;justify-content:center;width:auto;height:32px;padding:5px; margin:0 5px;border-radius:8px;font-family:"Arial","Microsoft YaHei",sans-serif;font-size:14.5px;font-weight:700;color:var(--ctbu-blue);background:#fff;border:1px solid #E2E8F5;transition:all .2s ease;letter-spacing:0;}
.alpha-bar a:hover{background:var(--ctbu-blue);color:#fff;border-color:var(--ctbu-blue);transform:translateY(-2px);box-shadow:0 5px 14px rgba(27,58,140,.28);}
.alpha-bar a.dis{color:#C5CFE0;background:transparent;border-color:#EDF2FB;cursor:default;pointer-events:none;font-weight:600;}

/* 教师卡片网格 */
.teacher-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;}
.teacher-list > li{min-width:0;display:flex;scroll-margin-top:110px;}
.t-card{display:flex;flex-direction:column;width:100%;padding:24px 18px 18px;background:#fff;border-radius:14px;border:1px solid #EEF2FA;box-shadow:0 4px 18px rgba(27,58,140,.06);text-align:center;position:relative;overflow:hidden;transition:transform .32s cubic-bezier(.4,0,.2,1),box-shadow .32s ease,border-color .32s ease;}
.t-card::before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:linear-gradient(90deg,#2B5CE6,#1B3A8C);transform:scaleX(0);transform-origin:center;transition:transform .35s cubic-bezier(.4,0,.2,1);}
.t-card:hover{transform:translateY(-5px);box-shadow:0 18px 40px rgba(27,58,140,.15);border-color:#DCE6FA;}
.t-card:hover::before{transform:scaleX(1);}

/* 头像（真实照片） */
.t-avatar{width:104px;height:104px;border-radius:50%;margin:0 auto 14px;position:relative;overflow:hidden;background:linear-gradient(135deg,#E8EDF8,#DCE6FA);box-shadow:0 8px 22px rgba(27,58,140,.16),0 0 0 3px #fff,0 0 0 4px #E2E8F5;transition:transform .35s cubic-bezier(.4,0,.2,1),box-shadow .35s ease;}
.t-card:hover .t-avatar{transform:scale(1.06);box-shadow:0 12px 28px rgba(27,58,140,.24),0 0 0 3px #fff,0 0 0 4px var(--ctbu-blue-accent);}
.t-avatar img{width:100%;height:100%;object-fit:cover;object-position:center top;display:block;}

.t-name{font-size:17.5px;font-weight:700;color:var(--text-primary);line-height:1.4;margin-bottom:4px;transition:color .25s;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.t-card:hover .t-name{color:var(--ctbu-blue-accent);}
.t-rank{display:inline-flex;align-items:center;justify-content:center;font-size:12.5px;font-weight:600;color:var(--ctbu-blue);letter-spacing:.3px;padding:3px 12px;border-radius:20px;background:var(--ctbu-blue-light);margin-bottom:12px;align-self:center;transition:all .25s;}
.t-card:hover .t-rank{background:var(--ctbu-blue);color:#fff;}
.t-fields{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;margin-bottom:14px;min-height:26px;}
.t-fields span{font-size:11.5px;color:#5A657A;padding:3px 10px;border-radius:6px;background:#F3F6FC;border:1px solid #E6EDFA;letter-spacing:.2px;transition:all .25s;}
.t-card:hover .t-fields span{background:#EDF2FD;border-color:#D8E3F8;color:#1B3A8C;}
.t-meta{margin-top:auto;padding-top:12px;border-top:1px dashed #E2E8F5;display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:12.5px;color:var(--text-muted);}
.t-dept{display:inline-flex;align-items:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.t-dept::before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--ctbu-blue-accent);margin-right:6px;box-shadow:0 0 0 3px rgba(43,92,230,.14);flex-shrink:0;}
.t-more{display:inline-flex;align-items:center;gap:3px;color:var(--ctbu-blue-accent);font-weight:500;flex-shrink:0;transition:gap .25s;}
.t-more::after{content:"›";font-size:15px;line-height:1;}
.t-card:hover .t-more{gap:6px;}

@media(max-width:1200px){
  .teacher-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;}
}
@media(max-width:768px){
  .alpha-bar{gap:4px;padding:10px;margin-bottom:20px;border-radius:10px;}
  .alpha-bar a{width:28px;height:28px;font-size:13px;border-radius:7px;}
  .teacher-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
  .t-card{padding:18px 12px 14px;border-radius:12px;}
  .t-avatar{width:76px;height:76px;margin-bottom:10px;}
  .t-name{font-size:15px;}
  .t-rank{font-size:10.5px;padding:2px 9px;margin-bottom:8px;}
  .t-fields{gap:4px;margin-bottom:10px;min-height:auto;}
  .t-fields span{font-size:10px;padding:2px 7px;border-radius:5px;}
  .t-meta{padding-top:8px;font-size:11px;}
  .t-dept::before{width:5px;height:5px;margin-right:4px;}
  .t-more{display:none;}
}