/* CSS Document */

/* ============================================================
   leader.css - 领导页
   ============================================================ */

.leader-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;}
.leader-grid > li{min-width:0;display:flex;}
.leader-card{display:flex;flex-direction:column;width:100%;background:#fff;border-radius:16px;border:1px solid #EEF2FA;box-shadow:0 6px 22px rgba(27,58,140,.07);overflow:hidden;position:relative;transition:transform .32s cubic-bezier(.4,0,.2,1),box-shadow .32s ease,border-color .32s ease;}
.leader-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);z-index:3;}
.leader-card:hover{transform:translateY(-6px);box-shadow:0 20px 46px rgba(27,58,140,.16);border-color:#DCE6FA;}
.leader-card:hover::before{transform:scaleX(1);}

.lc-photo{position:relative;aspect-ratio:4/5;display:flex;align-items:center;justify-content:center;color:#fff;overflow:hidden;}
.lc-photo::after{content:"";position:absolute;right:-32px;bottom:-32px;width:110px;height:110px;border-radius:50%;border:1.5px solid rgba(255,255,255,.18);box-shadow:0 0 0 22px rgba(255,255,255,.06);pointer-events:none;}
.lc-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:1;}
.lc-ini{font-size:60px;font-weight:900;line-height:1;letter-spacing:2px;position:relative;z-index:2;text-shadow:0 3px 14px rgba(0,0,0,.22);}

.lc-body{padding:18px 18px 20px;text-align:center;display:flex;flex-direction:column;flex:1;}
.lc-role{display:inline-flex;align-items:center;justify-content:center;align-self:center;font-size:11.5px;letter-spacing:1.5px;color:#fff;background:linear-gradient(135deg,#2B5CE6,#1B3A8C);padding:4px 13px;border-radius:20px;font-weight:600;margin-bottom:12px;box-shadow:0 4px 12px rgba(27,58,140,.22);}
.lc-name{font-size:19px;font-weight:900;color:var(--text-primary);line-height:1.4;letter-spacing:2px;margin-bottom:6px;transition:color .25s;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.leader-card:hover .lc-name{color:var(--ctbu-blue);}
.lc-title{font-size:13px;color:var(--ctbu-blue-accent);font-weight:600;letter-spacing:.3px;margin-bottom:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.lc-dept{margin-top:auto;padding-top:11px;border-top:1px dashed #E2E8F5;font-size:12.5px;color:var(--text-muted);display:flex;align-items:center;justify-content:center;gap:6px;line-height:1.5;}
.lc-dept::before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--ctbu-blue-accent);box-shadow:0 0 0 3px rgba(43,92,230,.14);flex-shrink:0;}

.g1{background:linear-gradient(135deg,#2B5CE6 0%,#1B3A8C 100%);}
.g2{background:linear-gradient(135deg,#0EA5E9 0%,#0F2358 100%);}
.g3{background:linear-gradient(135deg,#6366F1 0%,#1E1B4B 100%);}
.g4{background:linear-gradient(135deg,#0891B2 0%,#164E63 100%);}
.g5{background:linear-gradient(135deg,#7C3AED 0%,#2E1065 100%);}
.g6{background:linear-gradient(135deg,#2563EB 0%,#0F172A 100%);}
.g7{background:linear-gradient(135deg,#3B82F6 0%,#1E3A8A 100%);}
.g8{background:linear-gradient(135deg,#06B6D4 0%,#0E7490 100%);}
.g9{background:linear-gradient(135deg,#8B5CF6 0%,#4C1D95 100%);}

@media(max-width:1200px){
  .leader-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;}
}
@media(max-width:768px){
  .leader-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
  .leader-card{border-radius:12px;}
  .lc-body{padding:14px 12px 14px;}
  .lc-role{font-size:10px;padding:3px 9px;letter-spacing:.8px;margin-bottom:9px;}
  .lc-name{font-size:15px;letter-spacing:1px;margin-bottom:4px;}
  .lc-title{font-size:11.5px;margin-bottom:9px;}
  .lc-dept{padding-top:8px;font-size:11px;}
  .lc-ini{font-size:44px;}
}