/* Explicit profile and review navigation. */
.account-avatar-control{position:relative;display:block;flex:0 0 84px;width:84px;height:84px;min-height:84px;padding:0;border-radius:50%;color:var(--blue)}
.business-avatar-face{display:grid;place-items:center;width:100%;height:100%;overflow:hidden;border-radius:50%;background:white;color:var(--blue)}
.business-avatar-face>img,.small-business-avatar>img{width:100%;height:100%;object-fit:cover;border-radius:inherit}
.business-avatar-face>svg{width:37px;height:37px}.avatar-camera{position:absolute;right:-2px;bottom:0;width:27px;height:27px;display:grid;place-items:center;background:var(--blue);color:white;border:2px solid white;border-radius:50%}.avatar-camera svg{width:14px;height:14px}
.small-business-avatar{display:grid;place-items:center;width:30px;height:30px;overflow:hidden;border-radius:50%;background:#edf2ff;color:var(--blue)}.small-business-avatar>svg{width:18px;height:18px}
.public-business-identity{display:flex;align-items:center;gap:17px}.public-business-identity>div{flex:1;min-width:0}.public-business-identity .own-public-name{margin:7px 0;font-size:24px;line-height:1.35}
.media-edit-avatar{position:relative;width:106px;height:106px;margin:17px 0}.media-edit-avatar>.media-delete{top:-3px;right:-3px}
.media-editor-section+.media-editor-section{margin-top:30px}.media-editor-section>p{line-height:1.7;margin-bottom:15px}
@media(max-width:600px){.account-avatar-control{flex-basis:64px;width:64px;height:64px;min-height:64px}.business-avatar-face>svg{width:29px;height:29px}.public-business-identity{gap:12px}.public-business-identity .own-public-name{font-size:21px}.avatar-camera{width:24px;height:24px}.avatar-camera svg{width:12px;height:12px}}
.text-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;line-height:1.45}
.text-button>svg{display:block;flex:0 0 auto;width:18px;height:18px}
button svg{vertical-align:middle}
#sheet:has(.public-profile){padding:0}
#sheet:has(.public-profile) #sheet-content{max-height:90dvh;overflow:hidden;scrollbar-gutter:auto;position:relative}
#sheet:not(.wide):has(.public-profile) #sheet-content>.sheet-top{position:absolute;right:14px;top:14px;left:auto;padding:0;background:transparent;z-index:9}
#sheet:has(.public-profile) #sheet-content>.sheet-top h2{display:none}
#sheet:has(.public-profile) #sheet-content>.sheet-top .icon-button{background:white;box-shadow:0 1px 12px #172a4a20;border-radius:50%}
.public-profile{display:flex;flex-direction:column;max-height:90dvh;overflow:hidden}
.public-profile>.business-cover{flex:0 0 230px;width:100%;height:230px;border-radius:0}
.public-profile-pane{min-height:0;overflow-y:auto;overflow-x:hidden;margin:10px 6px 10px 0;scrollbar-gutter:stable;scrollbar-width:thin;overscroll-behavior:contain}
.public-profile-pane>.sheet-body{padding-top:20px;padding-bottom:20px}
.public-profile-pane:focus,.public-profile-pane:focus-visible{outline:none}
.professional-cover>button{width:100%;height:100%;padding:0;display:block}.professional-cover img{width:100%;height:100%;object-fit:cover;object-position:center 38%}
.professional-body>.profile-avatar{position:static;margin:0 0 12px;width:70px;height:70px}
.professional-portfolio{margin:25px 0}.professional-portfolio h3{margin-bottom:15px}
.uploaded-work-strip:has(>p){display:block}
.photo-viewer{padding:0 22px 22px}.gallery-stage{display:flex;align-items:center;justify-content:center;height:min(60dvh,600px);background:#f3f5fa;border-radius:14px;overflow:hidden;touch-action:pan-y;user-select:none}
.gallery-stage>img{width:100%;height:100%;object-fit:contain;pointer-events:none}
.gallery-controls{display:flex;align-items:center;justify-content:center;gap:20px;margin:10px 0;font-size:13px;font-weight:700;color:var(--blue)}
.gallery-controls .icon-button{background:var(--blue-light);border-radius:50%}.gallery-controls button:disabled{opacity:.3;cursor:default}.gallery-prev>svg{transform:rotate(180deg)}
.gallery-thumbs{display:flex;gap:9px;overflow-x:auto;padding:4px 2px 8px}.gallery-thumbs>button{width:55px;height:61px;flex:0 0 55px;padding:3px;border-radius:9px;border:2px solid transparent}.gallery-thumbs>button.active{border-color:var(--blue)}.gallery-thumbs img{height:100%;width:100%;object-fit:cover;border-radius:5px}
@media(max-width:600px){#sheet:has(.public-profile) #sheet-content{max-height:94dvh}.public-profile{max-height:94dvh}.public-profile>.business-cover{flex-basis:165px;height:165px}#sheet:has(.public-profile) .sheet-handle{position:absolute;top:10px;left:calc(50% - 17px);margin:0;background:#ffffffd9;z-index:10}.public-profile-pane>.sheet-body{padding-inline:20px}.photo-viewer{padding:0 16px 18px}.gallery-stage{height:56dvh}.gallery-controls{margin:8px 0}.professional-body>.profile-avatar{width:58px;height:58px}}
#sheet:not(.wide) #sheet-content>.sheet-top{position:sticky;top:0;background:white;z-index:6}
.business-cover{height:230px;border-radius:20px 20px 0 0;overflow:hidden;position:relative;background:var(--blue-light)}
.business-cover>img{width:100%;height:100%;object-fit:cover;object-position:center 43%}
.business-cover+.business-identity{border-radius:0 0 20px 20px;border-top:0}
.cover-edit{position:absolute;right:18px;bottom:17px;display:flex;gap:8px;align-items:center;padding:11px 15px;background:white;border-radius:10px;color:var(--blue);font-size:13px;font-weight:700;box-shadow:0 2px 14px #172a4a1a}
.cover-edit svg{height:18px;width:18px}
.uploaded-work-strip:not(:empty){margin:15px 0 20px}
.uploaded-work-strip button{flex-basis:170px!important}.uploaded-work-strip img{width:170px!important;height:190px!important;object-fit:cover}
.media-editor h3{margin:8px 0 10px}.media-editor>p{line-height:1.7;margin-bottom:15px}
.media-editor h3:not(:first-child){margin-top:30px}
.media-upload{position:relative;cursor:pointer;margin:15px 0;overflow:hidden;width:max-content;max-width:100%;font-size:14px}
.media-upload input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%}.media-upload:focus-within{outline:2px solid var(--blue);outline-offset:3px}.media-upload.uploading{opacity:.55;pointer-events:none}
.media-edit-cover,.media-cover-empty{height:180px;border-radius:13px;position:relative;overflow:hidden;background:var(--blue-light)}
.media-edit-cover img{width:100%;height:100%;object-fit:cover}.media-cover-empty{display:flex;align-items:center;justify-content:center;gap:10px;color:var(--blue);font-size:13px}
.media-edit-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.media-edit-grid>div{position:relative;aspect-ratio:1;min-width:0}.media-edit-grid img{height:100%;width:100%;object-fit:cover;border-radius:10px}
.media-delete{position:absolute;right:7px;top:7px;border-radius:50%;height:34px;width:34px;display:grid;place-items:center;background:white;color:var(--ink);box-shadow:0 1px 10px #172a4a25}.media-delete svg{height:18px;width:18px}
.media-file-hint{font-size:12px!important}.portfolio-photo-view{padding:0 20px 20px}.portfolio-photo-view img{width:100%;height:auto;border-radius:12px}
@media(max-width:600px){.favorites-page .listing-grid{grid-template-columns:minmax(0,1fr)}.favorites-page .card-photo{height:270px}.business-cover{height:165px;border-radius:16px 16px 0 0}.business-cover+.business-identity{border-radius:0 0 16px 16px}.cover-edit{right:12px;bottom:12px;font-size:11px;padding:9px 12px}.media-edit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.media-edit-cover,.media-cover-empty{height:155px}}
.profile-following{border:0;margin:30px 0;padding:0}
.following-person{display:flex;align-items:center;gap:15px;padding:13px 0;margin-bottom:7px}
.following-author{display:flex;align-items:center;gap:13px;flex:1;min-width:0;text-align:left;padding:0}
.following-author>.avatar{width:44px;height:44px}.following-author>span{min-width:0}
.following-author strong{font-size:15px;line-height:1.5}.following-author small{display:block;font-size:12px;color:var(--muted);margin-top:3px}
.following-reviews{display:inline-flex;align-items:center;gap:8px;flex-shrink:0;min-height:44px;padding:5px 0 5px 8px;color:var(--blue);font-size:13px;font-weight:600}
.following-reviews>.rating{font-size:12px}.following-reviews>svg{width:16px;height:16px}
.detail-author{display:flex;align-items:center;gap:14px;padding:14px 0;margin:16px 0;border-block:1px solid var(--line)}
.detail-author .author-profile-link{border:0;margin:0;padding:0;flex:1;min-width:0;text-align:left}
.author-profile-link>span{flex:1;min-width:0}.author-profile-link>svg{width:16px;height:16px;color:var(--blue)}
.detail-review-link{display:flex;align-items:center;gap:7px;min-height:44px;padding:5px 0;color:var(--blue);font-size:13px;white-space:nowrap}
.detail-review-link>.rating{font-size:13px}.detail-review-link>svg{height:16px;width:16px}
.profile-reviews-link{padding:0;align-items:flex-end;color:var(--ink)}
.profile-reviews-link>strong{font-size:30px;line-height:1.2}.profile-reviews-link small{display:flex;gap:6px;align-items:center;color:var(--blue);font-size:12px}.profile-reviews-link small svg{width:14px;height:14px}
.review-stars{margin-left:auto}.review-bottom{align-items:center;gap:10px;flex-wrap:wrap}
.review-visit{display:flex;align-items:center;gap:5px;font-size:11px;color:var(--green)}
.review-actions{display:flex;align-items:center;gap:15px;margin-left:auto}
.review-bottom .review-like{display:flex;align-items:center;gap:7px;min-height:40px;padding:7px 10px;border-radius:9px;background:var(--blue-light);color:var(--blue);font-size:12px;font-weight:600}
.review-like>svg{width:17px;height:17px}.review-like>b{font-size:12px;min-width:9px}.review-bottom .review-like.active{background:var(--blue);color:white}
.review-bottom .review-report{min-height:40px;font-size:11px;color:var(--muted);padding:5px 0}
.reviews-empty{padding:22px 0;color:var(--muted);font-size:14px;line-height:1.8}

/* A full-height photograph touches the outer modal edges. Only the right panel scrolls on desktop. */
#sheet.wide{padding:0}
#sheet.wide #sheet-content{max-height:90dvh;overflow:hidden;scrollbar-gutter:auto}
.detail-grid{height:90dvh;overflow:hidden}
.detail-grid>.detail-photo{height:100%;min-height:0;object-fit:cover}
.detail-content{padding:10px 6px 10px 0;overflow:hidden}
.detail-scroll{height:calc(90dvh - 20px);overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;padding:0 20px 20px 26px}
.detail-scroll:focus,.detail-scroll:focus-visible{outline:none}
.detail-scroll>.sheet-top{position:sticky;top:0;background:white;z-index:3}
.detail-scroll>.button-row{position:sticky;bottom:0;background:white;z-index:2;padding:12px 0 0}

/* Model account: interests, applications and familiar professionals. */
.role-profile{max-width:960px}.role-profile .page-title{align-items:center;gap:15px}
.account-identity{display:flex;align-items:center;gap:22px;background:white;border:1px solid var(--line);padding:27px;border-radius:20px}
.account-avatar{width:94px;height:94px;flex-shrink:0;border-radius:50%;object-position:center 25%}
.account-role{display:inline-flex;font-size:12px;font-weight:700;line-height:1.5;color:var(--blue);margin-bottom:6px}
.account-identity h2{font-size:28px;line-height:1.3;margin-bottom:7px;letter-spacing:-.025em}
.account-identity p{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:14px;line-height:1.7}
.account-identity p svg{height:16px;width:16px}.account-identity .account-about{margin-top:7px;max-width:370px}
.account-reputation{margin-left:auto;display:flex;flex-direction:column;gap:6px;align-items:flex-end;flex-shrink:0;text-align:right;padding:0}
.account-reputation>strong{display:flex;align-items:center;gap:6px;font-size:27px;line-height:1.25}.account-reputation>strong>svg{width:21px;height:21px;fill:var(--pink);stroke:var(--pink)}
.account-reputation>span{font-size:13px;color:var(--blue)}.account-reputation>small{display:flex;align-items:center;gap:5px;font-size:11px;color:var(--muted)}.account-reputation>small>svg{height:13px;width:13px}
.account-shortcuts{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:19px 0 30px}
.account-shortcuts>button{display:flex;align-items:center;gap:13px;padding:20px;background:var(--blue-light);color:var(--blue);border-radius:13px;text-align:left}
.account-shortcuts button>span{flex:1}.account-shortcuts strong{display:block;font-size:16px;font-weight:700}.account-shortcuts small{font-size:12px;color:#53678f;display:block;margin-top:4px}.account-shortcuts button>svg:last-child{height:17px;width:17px}
.account-interests{margin:28px 0}.account-interests>p{font-size:13px;color:var(--muted);line-height:1.8;margin-top:12px}
.profile-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.profile-tags>span{background:var(--blue-light);color:var(--blue);padding:7px 11px;font-size:12px;font-weight:600;border-radius:8px}
.profile-settings{margin-top:27px;display:grid;gap:3px;border:0}
.profile-settings>button{display:flex;align-items:center;gap:13px;width:100%;min-height:58px;text-align:left;padding:10px 12px;border:0;border-radius:10px;font-size:15px}
.profile-settings>button:hover{background:#eef2fa}.profile-settings>button>span:first-child{color:var(--blue)}.profile-settings>button>span:nth-child(2){flex:1}.profile-settings>button>svg{width:16px;height:16px;color:var(--muted)}
.model-reputation-heading{display:flex;align-items:center;gap:15px;margin-bottom:12px}.model-reputation-heading>.avatar{width:53px;height:53px}.model-reputation-heading>div{flex:1}.model-reputation-heading>strong{font-size:27px;color:var(--blue)}

/* Business account: public presentation, listings and incoming applications. */
.business-identity{background:#f0f4ff}.business-identity>div{flex:1;min-width:0}.business-identity>.outline-button{font-size:13px;white-space:nowrap;background:white}
.account-business-mark{width:84px;height:84px;flex-shrink:0;display:grid;place-items:center;background:white;border-radius:20px;color:var(--blue)}
.account-business-mark>svg{width:37px;height:37px}.account-business-mark>svg:first-child[viewBox="0 0 40 40"]{stroke:none;fill:currentColor}
.school-account .business-identity{background:#fbe7f0}.school-account .account-role{color:#9b2862}
.business-profile-actions{display:flex;gap:12px;flex-wrap:wrap;margin:22px 0}
.business-profile-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:30px}
.business-profile-summary>button{display:flex;align-items:center;gap:11px;min-height:77px;padding:17px 18px;background:white;border:1px solid var(--line);border-radius:13px;text-align:left;color:var(--blue)}
.business-profile-summary strong{font-size:27px;min-width:20px}.business-profile-summary span{flex:1;font-size:13px;font-weight:600}.business-profile-summary button>svg:last-child{width:15px;height:15px}
.business-about,.business-portfolio{margin:29px 0}.business-about>p,.business-portfolio>p{font-size:14px;line-height:1.9;color:var(--muted)}
.business-address{display:flex;align-items:center;gap:6px;margin-top:10px}.business-address>svg{width:17px;height:17px}
.portfolio-strip{display:flex;gap:12px;overflow:auto}.portfolio-strip>button{padding:0;flex:0 0 145px}.portfolio-strip img{width:145px;height:160px;border-radius:12px}
.profile-category-fields{padding:0;border:0;margin:22px 0 0}.profile-category-fields legend{font-size:14px;font-weight:700;margin-bottom:7px}.profile-category-fields .check-row{font-size:14px}
[data-type-field][hidden]{display:none!important}
.own-public-name{margin:16px 0 9px}.public-about{font-size:14px;line-height:1.9;margin:20px 0;color:var(--muted)}.own-offers-title{margin:27px 0 5px}
@media(max-width:900px){.business-identity{flex-wrap:wrap}.business-identity>.outline-button{margin-left:106px}.account-identity{padding:23px}.account-identity h2{font-size:25px}}
@media(max-width:600px){
 #sheet.wide{padding:0}#sheet.wide #sheet-content{max-height:94dvh;overflow-y:auto;scrollbar-width:none}
 #sheet.wide #sheet-content::-webkit-scrollbar{display:none}
 #sheet.wide .sheet-handle{position:absolute;z-index:5;top:10px;left:calc(50% - 17px);margin:0;background:#ffffffd9}
 .detail-grid{height:auto;overflow:visible}.detail-grid>.detail-photo{height:245px;width:100%;object-position:center 35%}
 .detail-content{padding:0;overflow:visible}.detail-scroll{height:auto;overflow:visible;padding:0 20px calc(20px + var(--safe))}
 .detail-scroll>.sheet-top{position:static}.detail-author{flex-wrap:wrap;gap:3px}.author-profile-link{flex-basis:100%!important}.detail-review-link{margin-left:54px;padding:0;font-size:12px;min-height:38px}
 .following-person{gap:8px}.following-author{gap:10px}.following-author strong{font-size:13px}.following-author>.avatar{width:36px;height:36px}.following-reviews{font-size:12px;gap:5px}.following-reviews .rating{display:none}.following-reviews>svg{height:14px;width:14px}
 .review-actions{gap:12px;margin-left:0;width:100%;justify-content:space-between}.review-like{min-height:44px!important}.review-visit{font-size:10px}.review-stars .stars svg{width:12px;height:12px}
 .account-identity{padding:19px;gap:15px;flex-wrap:wrap}.account-avatar{width:67px;height:67px}.account-identity h2{font-size:23px}.account-identity p{font-size:12px}.account-role{font-size:11px}
 .model-identity>div{flex:1;min-width:0}.account-reputation{margin-left:82px;text-align:left;align-items:flex-start;gap:5px}.account-reputation>strong{font-size:24px}.account-reputation>span{font-size:12px}
 .account-shortcuts{gap:9px;margin-top:15px}.account-shortcuts>button{gap:9px;padding:15px 12px;flex-wrap:wrap}.account-shortcuts strong{font-size:13px}.account-shortcuts small{font-size:10px}.account-shortcuts>button>svg:first-child{height:19px;width:19px}.account-shortcuts>button>svg:last-child{display:none}
 .role-profile .page-title h1{font-size:29px}.role-profile .page-title .text-button{font-size:12px}.role-profile .section-heading h3{font-size:18px}.role-profile .section-heading .text-button{font-size:12px}
 .profile-settings>button{font-size:14px;padding-inline:5px;min-height:55px}.profile-tags>span{font-size:11px;padding:7px 10px}.account-interests>p{font-size:12px}
 .account-business-mark{width:61px;height:61px;border-radius:15px}.account-business-mark>svg{width:29px;height:29px}.business-identity>.outline-button{margin-left:76px;font-size:11px;min-height:43px;padding:8px 11px;gap:5px}
 .business-profile-actions{gap:9px}.business-profile-actions>button{font-size:12px;min-height:47px;flex:1;padding:10px 12px;gap:7px}.business-profile-actions svg{width:17px;height:17px}
 .business-profile-summary{grid-template-columns:1fr 1fr;gap:9px}.business-profile-summary>button{padding:13px;min-height:70px;gap:8px}.business-profile-summary>button:last-child{grid-column:1/-1}.business-profile-summary span{font-size:12px}.business-profile-summary strong{font-size:25px}
 .business-about>p,.business-portfolio>p{font-size:13px}.portfolio-strip>button{flex-basis:120px}.portfolio-strip img{height:135px;width:120px}
}
