.personal-main { max-width: 860px; margin: 0 auto; padding: 2rem 1.25rem 4rem; }
.personal-topbar { display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:1rem 1.25rem; }
.personal-topbar a { color:var(--accent-deep); }
.personal-topbar button { font:inherit; color:var(--fg-1); background:var(--bg-1,white); border:1px solid var(--border-strong,#aaa); border-radius:4px; padding:.4rem .8rem; cursor:pointer; }
.personal-name { color:var(--fg-3); font-size:.9rem; margin:0 0 1.5rem; }
.personal-main h1 { font-size:clamp(1.8rem,5vw,2.8rem); margin:0 0 1rem; }
.personal-intro { max-width:60ch; line-height:1.6; }
.personal-list { list-style:none; padding:0; margin:1.5rem 0 2.5rem; }
.personal-list li { border-bottom:1px solid var(--border-strong,#bbb); }
.personal-list a { display:block; padding:1.1rem 0; color:var(--accent-deep); font-size:1.12rem; text-decoration-thickness:1px; text-underline-offset:.2em; }
.personal-main .personal-prose { max-width:70ch; font-size:1.1rem; line-height:1.75; }
.personal-prose img { max-width:100%; height:auto; }
.personal-prose .first { margin-top:0; }
.personal-cover { width:100%; max-height:380px; object-fit:cover; margin-bottom:2rem; }
.personal-nav { display:flex; justify-content:space-between; gap:1rem; margin-top:2.5rem; padding-top:1.25rem; border-top:1px solid var(--border-strong,#bbb); }
.personal-main :focus-visible, .personal-topbar :focus-visible { outline:3px solid var(--accent); outline-offset:4px; }
@media(max-width:540px) { .personal-topbar > span { display:none; } .personal-main { padding-top:1.25rem; } }
@media print { .personal-topbar, .personal-nav { display:none!important; } .personal-main { max-width:none; padding:0; } .personal-name { color:black; } }
@media screen and (max-width:760px) {
  .personal-main .exercise-sheet table { display:block; width:100%; max-width:100%; overflow-x:auto; }
}
