/* 档案页：左边人像框里的点云，右边三栏信息。字号比旧首页大一档，信息一眼扫完。 */
.dossier:not([hidden]){display:grid}
.dossier{max-width:1400px;width:calc(100% - 128px);margin-inline:auto;padding:48px 0 56px;grid-template-columns:minmax(300px,.8fr) 1fr;
  gap:clamp(40px,6vw,96px);align-items:start;min-height:calc(100dvh - 136px)}
.dz-portrait{position:sticky;top:32px;aspect-ratio:3/4;border:1px solid var(--line);
  background:radial-gradient(ellipse at 50% 46%,rgba(var(--rgb),.07),transparent 68%)}
#dz-canvas{position:absolute;inset:0;width:100%;height:100%;cursor:grab;touch-action:pan-y}
.dz-c{position:absolute;width:18px;height:18px;border:0 solid rgba(242,242,242,.6);pointer-events:none}
.dz-c.tl{left:-1px;top:-1px;border-left-width:1px;border-top-width:1px}
.dz-c.tr{right:-1px;top:-1px;border-right-width:1px;border-top-width:1px}
.dz-c.bl{left:-1px;bottom:-1px;border-left-width:1px;border-bottom-width:1px}
.dz-c.br{right:-1px;bottom:-1px;border-right-width:1px;border-bottom-width:1px}
.dz-body .eyebrow{font-size:10px;letter-spacing:.32em}
.dz-body h2{font-size:clamp(40px,4.4vw,68px);font-weight:500;letter-spacing:-.02em;line-height:1.05;margin:16px 0 10px}
.dz-code{font-size:12px;letter-spacing:.42em;color:var(--muted);margin:0 0 20px}
.dz-sec{margin-top:40px}
.dz-sec h3{display:flex;align-items:baseline;gap:14px;font-size:15px;font-weight:400;letter-spacing:.14em;margin:0;padding-bottom:12px;border-bottom:1px solid var(--line)}
.dz-sec h3 span{font-size:10px;letter-spacing:.32em;color:var(--accent)}
.dz-sec ul{list-style:none;margin:0;padding:0}
.dz-sec li{display:grid;grid-template-columns:128px 1fr;gap:20px;padding:17px 0;border-bottom:1px solid rgba(170,190,210,.07)}
.dz-time{font-size:12.5px;letter-spacing:.06em;color:var(--muted);font-variant-numeric:tabular-nums;padding-top:3px}
.dz-sec li b{display:block;font-weight:400;font-size:16.5px;letter-spacing:.03em}
.dz-sec li small{display:block;margin-top:7px;font-size:12.5px;letter-spacing:.06em;color:var(--muted)}
#dz-links{display:flex;flex-wrap:wrap;gap:12px;padding-top:20px}
#dz-links a{display:inline-flex;align-items:center;gap:12px;padding:12px 20px;border:1px solid var(--line);font-size:13px;letter-spacing:.14em;
  transition:border-color .3s,background .3s}
#dz-links a:hover{border-color:rgba(var(--rgb),.6);background:rgba(var(--rgb),.06)}
#dz-links a i{font-style:normal;color:var(--accent)}
#dz-links .dz-resume{margin-left:auto}
@media(max-width:900px){.dossier{grid-template-columns:1fr;width:calc(100% - 48px);padding-top:28px;gap:36px}
  .dz-portrait{position:relative;top:0;aspect-ratio:1;max-width:440px;width:100%;justify-self:center}
  .dz-sec li{grid-template-columns:1fr;gap:6px}#dz-links .dz-resume{margin-left:0}}
