.author-profile-page { color:#171b23; background:#fff; }
.author-profile-page *, .author-profile-page *::before, .author-profile-page *::after { box-sizing:border-box; }
.author-frame { max-width:1480px; margin:0 auto; padding-left:80px; padding-right:80px; }
.author-hero { padding:54px 0 64px; background:#f2f5f8; border-bottom:1px solid #e0e6ec; }
.author-breadcrumb { display:flex; flex-wrap:wrap; gap:10px; margin:0 0 42px; font-size:.8rem; color:#596675; }
.author-breadcrumb a { color:inherit; text-decoration:none; }
.author-intro { display:grid; grid-template-columns:180px minmax(0,1fr); gap:42px; align-items:center; max-width:1040px; }
.author-avatar { width:180px; height:180px; object-fit:cover; border-radius:50%; background:#e2e8f0; border:5px solid #fff; box-shadow:0 8px 30px #0f315214; }
.author-kicker { display:block; margin:0 0 12px; color:#165ee8; font-size:.75rem; letter-spacing:.12em; font-weight:700; }
.author-intro h1 { margin:0; font-size:clamp(1.9rem,3.5vw,3.2rem); line-height:1.2; letter-spacing:-.025em; overflow-wrap:anywhere; }
.author-role { margin:14px 0 0; color:#354457; font-size:1rem; font-weight:600; }
.author-publisher { margin:10px 0 0; color:#546171; font-size:.85rem; }
.author-description { margin:18px 0 0; max-width:790px; color:#435162; font-size:.875rem; line-height:1.85; }
.author-context { padding-top:40px; padding-bottom:40px; display:grid; grid-template-columns:1fr 1fr; gap:48px; border-bottom:1px solid #e3e7ec; }
.author-context h2 { margin:0 0 12px; font-size:1.05rem; }
.author-context p { margin:0; color:#5a6471; font-size:.875rem; line-height:1.9; }
.author-links { display:flex; gap:20px; flex-wrap:wrap; margin-top:16px; }
.author-links a { color:#135be5; font-size:.875rem; text-underline-offset:4px; }
.author-library { padding-top:56px; padding-bottom:64px; }
.author-library-heading { display:flex; justify-content:space-between; align-items:end; flex-wrap:wrap; gap:18px; margin-bottom:28px; }
.author-library h2 { margin:0 0 10px; font-size:1.65rem; }
.author-library-heading p, .author-page-status { margin:0; color:#626e7c; font-size:.8rem; }
.author-articles { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:28px; }
.author-article { min-width:0; border:1px solid #e0e6ed; border-radius:5px; overflow:hidden; background:#fff; }
.author-article a { display:block; height:100%; color:inherit; text-decoration:none; }
.author-article a:hover h3 { color:#135be5; }
.author-article img { display:block; width:100%; height:auto; aspect-ratio:16/9; object-fit:cover; background:#edf1f5; }
.author-article-content { padding:24px; }
.author-article time { color:#687587; font-size:.75rem; }
.author-article h3 { margin:12px 0; font-size:1.15rem; line-height:1.65; }
.author-article p { margin:0; color:#5c6876; font-size:.8rem; line-height:1.85; }
.author-empty { padding:45px 28px; text-align:center; background:#f5f7fa; border:1px dashed #ccd5df; color:#526173; font-size:.875rem; line-height:1.9; }
.author-empty a { color:#135be5; }
.author-pagination { display:flex; justify-content:center; align-items:center; flex-wrap:wrap; gap:8px; margin-top:36px; }
.author-pagination a, .author-pagination span { display:inline-flex; align-items:center; justify-content:center; min-height:42px; min-width:42px; padding:8px 13px; border:1px solid #d7e0e9; border-radius:4px; color:#334254; font-size:.85rem; text-decoration:none; }
.author-pagination [aria-current=page] { border-color:#165ee8; background:#165ee8; color:#fff; }
.author-profile-page [hidden] { display:none !important; }
.author-profile-page a:focus-visible { outline:3px solid #165ee8; outline-offset:4px; }
.author-notes { padding:24px 0; background:#f5f7fa; color:#617084; font-size:.8rem; line-height:1.8; }
@media(max-width:1000px) { .author-frame { padding-left:40px; padding-right:40px; } .author-articles { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:600px) { .author-frame { padding-left:20px; padding-right:20px; } .author-hero { padding:28px 0 36px; } .author-breadcrumb { margin-bottom:28px; } .author-intro { grid-template-columns:1fr; gap:22px; } .author-avatar { width:124px; height:124px; } .author-context { grid-template-columns:1fr; gap:28px; padding-top:30px; padding-bottom:30px; } .author-articles { grid-template-columns:1fr; gap:22px; } .author-library { padding-top:36px; padding-bottom:42px; } .author-article-content { padding:20px; } }

@media(max-width:600px) { .author-profile-page #authorProfile { padding-top:48px; } }
