/* Profile reading pages keep their navigation outside one contained scroller. */
.profile-app{box-sizing:border-box;display:flex!important;flex-direction:column;overflow:hidden!important;min-height:0;height:100dvh;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}
.profile-page.profile-reader{box-sizing:border-box;display:flex;flex-direction:column;gap:12px;width:100%;max-width:940px;height:100%;min-height:0;margin:0 auto;padding:14px 20px}
.profile-reader-header{display:flex;align-items:center;gap:14px;flex:none;min-height:44px}
.profile-reader-header h1{flex:1;min-width:0;font-size:25px;line-height:1.2;margin:0;overflow-wrap:anywhere}
.profile-reader .exp-button{box-sizing:border-box;margin:0;min-height:44px;min-width:44px;font-size:12px;line-height:1.35;white-space:normal;padding:9px 12px}
.profile-reader-header>.exp-button{flex:0 0 auto;max-width:140px}
.profile-scroll{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-width:thin;padding:4px 5px 16px}
.profile-scroll>p:first-child{margin-top:0}.profile-scroll>h2{font-size:19px;margin:22px 0 12px}
.profile-reader .profile-hero-grid{max-height:none;overflow:visible;padding:5px;gap:10px}
.profile-reader .profile-hero-grid button{min-width:0;min-height:44px;gap:5px}
.profile-reader .profile-hero-grid strong{font-size:13px;line-height:1.3;overflow-wrap:anywhere}
.profile-reader .profile-hero-grid small{line-height:1.4}
.profile-reader .profile-label{margin:18px 0 10px}
.profile-reader .profile-label input{min-height:48px;font-size:16px}
.profile-reader input[aria-invalid=true]{border-color:#efaa96;box-shadow:0 0 0 1px #efaa9645}
.profile-reader .profile-progress{margin:20px 0;padding:16px}
.profile-reader .profile-progress h2{font-size:20px;margin:6px 0 12px}
.profile-reader .profile-identity{margin:12px 0 22px;min-width:0}
.profile-reader .profile-identity>div{min-width:0}.profile-reader .profile-identity h2{font-size:clamp(25px,5vw,36px);overflow-wrap:anywhere;margin:12px 0}
.profile-reader .profile-identity img{flex:none;max-width:26%;height:100px}
.profile-reader .profile-ranking{margin:12px 0 0}
.profile-reader .profile-ranking>button{min-width:0;min-height:80px}
.profile-reader .profile-ranking>button>span{min-width:0}.profile-reader .profile-ranking strong{overflow-wrap:anywhere}
.profile-reader .profile-ranking small{line-height:1.5;overflow-wrap:anywhere}
.profile-reader .profile-ranking>button:disabled{opacity:.65;cursor:wait}
.profile-reader .profile-list-status{min-height:22px;font-size:12px;color:#cae1d9}
.profile-reader .profile-saved-note,.profile-private-note{padding:10px 12px;border:1px solid #a7c8cc30;background:#172c35;border-radius:10px;font-size:12px;line-height:1.6}
.profile-reader .profile-error{margin:0 0 14px;padding:12px;font-size:13px;line-height:1.5}
.profile-reader .profile-code{font-size:13px;line-height:1.6}
.profile-reader-footer{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);align-items:stretch;gap:10px;flex:none;padding-top:12px;border-top:1px solid #aac6cc30}
.profile-page-count{display:flex;align-items:center;justify-content:center;font-size:12px;color:#bfced5;font-variant-numeric:tabular-nums}
.profile-reader-header [data-profile-heading]:focus-visible,.profile-scroll:focus-visible{outline:2px solid #b7ecdb;outline-offset:-2px;border-radius:8px}
@media(max-width:450px){
 .profile-page.profile-reader{padding:12px 10px;gap:10px}.profile-reader-header{gap:8px}.profile-reader-header h1{font-size:19px;line-height:1.25}.profile-reader-header>.exp-button{max-width:86px;padding:8px;font-size:11px}.profile-reader .profile-stats b{font-size:20px}.profile-reader .profile-ranking>button{padding:12px 8px;gap:8px}.profile-reader .profile-rank{font-size:17px;min-width:30px}.profile-reader .profile-ranking img{width:32px;height:46px}.profile-reader .profile-ranking strong{font-size:13px}.profile-reader-footer{gap:7px;padding-top:10px}.profile-reader-footer .exp-button{padding:9px 7px;font-size:11px}
}
@media(max-height:500px) and (min-aspect-ratio:4/3){
 .profile-page.profile-reader{padding:8px 16px;gap:7px}.profile-reader-header h1{font-size:21px}.profile-reader-footer{padding-top:7px}.profile-reader .profile-hero-grid img{height:80px}.profile-reader .profile-identity{margin:4px 0 14px}.profile-reader .profile-identity img{height:78px}
}
