/* ============================================================
   Sakurumii · page-about.css
   ============================================================ */

.about-intro{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:12px;grid-column:1/-1}
.about-intro .portrait{grid-column:span 5;position:relative;overflow:hidden;border:1px solid var(--line)}
.about-intro .portrait img{width:100%;height:100%;object-fit:cover;display:block}
.about-intro .portrait .pcap{position:absolute;left:14px;bottom:12px;font-family:var(--mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--o)}
.about-intro .bio{grid-column:span 7;display:flex;flex-direction:column;gap:18px;padding:8px 4px}
.about-intro .bio h2{color:var(--w1)}
.about-intro .bio p{color:var(--w2);font-weight:500;text-wrap:pretty;max-width:44rem}
.about-intro .bio .facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:10px}
.about-intro .bio .fact{display:flex;flex-direction:column;gap:4px;padding:14px;border:1px solid var(--line)}
.about-intro .bio .fact b{font-family:var(--head);font-weight:600;font-size:1.125rem;line-height:1.2;color:var(--w1)}
.about-intro .bio .fact span{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--g1)}

/* 时间轴：grid 三列，圆点像素级对齐 */
.tl{grid-column:1/-1;display:flex;flex-direction:column}
.tl .tl-row{display:grid;grid-template-columns:minmax(90px,1fr) 72px minmax(0,5fr);gap:12px;align-items:start}
.tl .tl-time{padding-top:10px;text-align:right;font-family:var(--mono);font-size:12px;letter-spacing:.06em;color:var(--g1);text-transform:uppercase}
.tl .tl-time b{display:block;color:var(--w1);font-weight:600}
.tl .tl-axis{position:relative;justify-self:center;width:2px;top:8px;bottom:8px;height:calc(100% + 12px);background:var(--line)}
.tl .tl-dot{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:11px;height:11px;border-radius:50%;background:var(--o);box-shadow:0 0 10px rgba(255,77,0,.6)}
.tl .tl-card{padding:10px 4px 26px 4px}
.tl .tl-card h3{color:var(--w1);font-size:1.125rem;line-height:1.3;margin-bottom:6px}
.tl .tl-card p{color:var(--w2);font-size:.875rem;line-height:1.375rem;font-weight:500;text-wrap:pretty;max-width:36rem}

@media (max-width:1023px){
  .about-intro .bio .facts{grid-template-columns:repeat(3,minmax(0,1fr))}
  .tl .tl-row{grid-template-columns:72px 44px minmax(0,1fr);gap:8px}
  .tl .tl-time{text-align:left;font-size:11px}
}
@media (max-width:639px){
  .about-intro .bio .facts{grid-template-columns:repeat(3,minmax(0,1fr))}
}

/* 学校板块 */
.school-card{grid-column:1/-1;display:grid;grid-template-columns:140px minmax(0,1fr);gap:26px;align-items:center;padding:6px 2px}
.school-logo{width:140px;height:140px;border-radius:50%;overflow:hidden;border:1px solid rgba(230,230,230,.2);background:#fff;display:grid;place-items:center}
.school-logo img{width:92%;height:92%;object-fit:contain}
.school-info h3{color:var(--w1);margin-bottom:10px}
.school-info p{color:var(--w2);font-weight:500;max-width:42rem;text-wrap:pretty}
@media (max-width:639px){
  .school-card{grid-template-columns:140px minmax(0,1fr);gap:26px}
}
