.sofiya-person-profile-page {
  --spp-bg: #0f0f0f;
  --spp-surface: #252525;
  --spp-surface-2: #202020;
  --spp-line: #444444;
  --spp-text: #fff;
  --spp-muted: #b5b5b5;
  --spp-accent: #ff2732;
}
.sofiya-person-profile-page button,
.sofiya-person-profile-page a { transition: none; animation: none; }
.sofiya-person-profile-hero {
  display: grid;
  grid-template-columns: 132px minmax(0,1fr);
  grid-template-areas: "avatar identity" "avatar stats" "about about" "tabs tabs";
  gap: 18px 22px;
  align-items: center;
  padding: 18px 0 8px;
}
.sofiya-person-profile-hero__avatar-stack { grid-area:avatar; display:grid; justify-items:center; align-content:start; gap:6px; }
.sofiya-person-profile-hero__avatar { width:132px; height:132px; border-radius:50%; overflow:hidden; background:var(--spp-surface); border:1px solid var(--spp-line); }
.sofiya-person-profile-hero__avatar img { width:100%; height:100%; object-fit:cover; display:block; }
.sofiya-person-profile-hero__avatar > span { width:100%; height:100%; display:grid; place-items:center; font-size:2rem; font-weight:950; color:var(--spp-muted); }
.sofiya-person-profile-hero__identity { grid-area:identity; min-width:0; display:grid; justify-items:start; gap:4px; }
.sofiya-person-profile-hero__role { color:var(--spp-muted); font-size:.68rem; font-weight:800; }
.sofiya-person-profile-hero__identity h1 { margin:0; color:var(--spp-text); font-size:1.35rem; font-weight:950; line-height:1.45; }
.sofiya-person-profile-hero__term-name { color:var(--spp-muted); font-size:.7rem; }
.sofiya-person-profile-hero__stats { grid-area:stats; display:grid; grid-template-columns:repeat(3,minmax(78px,120px)); gap:8px; justify-content:start; }
.sofiya-person-profile-hero__stats > span { display:grid; justify-items:center; gap:3px; padding:12px 16px; border-radius:14px; background:var(--spp-surface-2); }
.sofiya-person-profile-hero__stats b { color:var(--spp-text); font-size:1.1rem; }
.sofiya-person-profile-hero__stats small { color:var(--spp-muted); font-size:.66rem; }
.sofiya-person-profile-about { grid-area:about; display:grid; gap:10px; max-width:900px; }
.sofiya-person-profile-about > p { margin:0; color:var(--spp-text); font-size:.74rem; line-height:2; }
.sofiya-person-profile-facts { display:flex; flex-wrap:wrap; gap:7px 18px; margin:0; }
.sofiya-person-profile-facts > div { display:inline-flex; align-items:center; gap:6px; }
.sofiya-person-profile-facts dt { color:var(--spp-muted); font-size:.62rem; }
.sofiya-person-profile-facts dd { margin:0; color:var(--spp-text); font-size:.65rem; font-weight:800; }
.sofiya-person-profile-bio-more { display:inline; margin-inline-start:5px; padding:0; border:0; background:transparent; color:var(--spp-text); font:inherit; font-weight:900; cursor:pointer; }
.sofiya-person-profile-tabs { grid-area:tabs; display:grid; grid-template-columns:repeat(3,1fr); gap:0; margin-top:2px; border-top:1px solid var(--spp-line); border-bottom:1px solid var(--spp-line); background:transparent; }
.sofiya-person-profile-tabs button { position:relative; display:flex; align-items:center; justify-content:center; gap:7px; min-height:48px; padding:0 8px; border:0; border-radius:0; background:transparent; color:var(--spp-muted); font-family:inherit; font-size:.72rem; font-weight:900; cursor:pointer; }
.sofiya-person-profile-tabs button span { display:grid; place-items:center; width:20px; height:20px; }
.sofiya-person-profile-tabs button svg { width:20px; height:20px; }
.sofiya-person-profile-tabs button::after { content:""; position:absolute; inset-inline:13%; inset-block-end:-1px; height:2px; background:transparent; }
.sofiya-person-profile-tabs button.is-active { color:var(--spp-text); }
.sofiya-person-profile-tabs button.is-active span { color:var(--spp-text); }
.sofiya-person-profile-tabs button.is-active::after { background:var(--spp-text); }
.sofiya-person-profile-works { margin-top:12px; padding:16px; border:1px solid var(--spp-line); border-radius:18px; background:var(--spp-surface); min-height:320px; }
.sofiya-person-profile-works__head { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:14px; }
.sofiya-person-profile-works__head h2 { margin:0; font-size:.94rem; font-weight:950; }
.sofiya-person-profile-works__head span { color:var(--spp-muted); font-size:.63rem; }
.sofiya-person-profile-grid { grid-template-columns:repeat(7,minmax(0,1fr)); }
.sofiya-person-profile-sentinel { height:2px; }
.sofiya-person-profile-loading { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:10px; margin-top:12px; }
.sofiya-person-profile-loading[hidden] { display:none; }
.sofiya-person-profile-loading > span { display:grid; gap:7px; }
.sofiya-person-profile-loading i { display:block; width:100%; aspect-ratio:2/3; border-radius:12px; background:#303030; }
.sofiya-person-profile-loading b { display:block; width:72%; height:10px; border-radius:6px; background:#303030; }
.sofiya-person-profile-loading em { display:block; width:48%; height:8px; border-radius:5px; background:#282828; }
.sofiya-person-profile-bio-dialog { width:min(620px,calc(100% - 28px)); max-height:min(720px,calc(100vh - 40px)); padding:0; border:1px solid var(--spp-line); border-radius:18px; background:var(--spp-surface); color:var(--spp-text); }
.sofiya-person-profile-bio-dialog::backdrop { background:rgba(0,0,0,.76); }
.sofiya-person-profile-bio-dialog__head { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:15px 16px; border-bottom:1px solid var(--spp-line); }
.sofiya-person-profile-bio-dialog__head h2 { margin:0; font-size:.9rem; font-weight:950; }
.sofiya-person-profile-bio-dialog__head button { display:grid; place-items:center; width:34px; height:34px; border:1px solid var(--spp-line); border-radius:10px; background:var(--spp-surface-2); color:var(--spp-muted); cursor:pointer; }
.sofiya-person-profile-bio-dialog__head svg { width:18px; height:18px; }
.sofiya-person-profile-bio-dialog__body { max-height:620px; overflow:auto; padding:18px; color:var(--spp-muted); font-size:.74rem; line-height:2.1; }
.sofiya-person-profile-bio-dialog__body p { margin:0 0 12px; }
@media(max-width:1080px){ .sofiya-person-profile-grid{grid-template-columns:repeat(6,minmax(0,1fr));} }
@media(max-width:920px){ .sofiya-person-profile-grid{grid-template-columns:repeat(5,minmax(0,1fr));} }
@media(max-width:720px){
  .sofiya-person-profile-hero{grid-template-columns:92px minmax(0,1fr);grid-template-areas:"avatar identity" "stats stats" "about about" "tabs tabs";gap:12px 14px;padding-top:10px;}
  .sofiya-person-profile-hero__avatar{width:92px;height:92px;}
  .sofiya-person-profile-hero__identity h1{font-size:1.05rem;}
  .sofiya-person-profile-hero__stats{grid-template-columns:repeat(3,1fr);}
  .sofiya-person-profile-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px 9px;}
  .sofiya-person-profile-loading{grid-template-columns:repeat(4,minmax(0,1fr));}
}
@media(max-width:520px){ .sofiya-person-profile-grid{grid-template-columns:repeat(3,minmax(0,1fr));} .sofiya-person-profile-works{padding:12px;} }
