/* Member profiles and directory use the same full-width layout and readable scale. */
.platform:is(.screen-community,.screen-profile) .pfull{width:100%;max-width:none;padding:28px clamp(16px,2vw,36px)}
.platform .member-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 24px}
.platform .member-filter-actions{grid-column:1/-1;display:flex;gap:12px;align-items:center}
.platform .member-count{font-size:16px;font-weight:600;margin:24px 0 18px}
.platform .member-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}
.platform .member-card{display:flex;flex-direction:column;align-items:flex-start;min-width:0;margin:0;padding:24px}
.platform .member-card h2{font-size:21px;margin:8px 0 10px;overflow-wrap:anywhere}
.platform .member-card p{margin:0 0 10px;line-height:1.55;overflow-wrap:anywhere}
.platform .member-card .member-place{font-size:13px;color:var(--color-text-secondary)}
.platform .member-card .member-card-tagline{font-size:13px}
.platform .member-card>.pbtn{margin-top:auto;width:100%}
.platform .member-avatar{width:64px;height:64px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--color-brand-tint),#dcdfff);border:1px solid #d6c9f8;color:#571bb6;font-size:27px;font-weight:700;border-radius:50%;flex-shrink:0;margin-bottom:18px}
.platform .member-eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:1.5px;font-weight:600;color:#715197}
.platform .member-pagination{display:flex;justify-content:center;align-items:center;gap:8px;flex-wrap:wrap;margin:28px 0 4px}
.platform .member-pagination>a,.platform .member-pagination>span{min-width:42px;min-height:42px;display:flex;align-items:center;justify-content:center;border:1px solid #dedfff;border-radius:8px;background:white}
.platform .member-pagination [aria-current=page]{background:var(--color-brand);color:white;border-color:var(--color-brand)}
.platform #member-results,.platform #member-films{scroll-margin-top:90px}
.platform .member-profile-hero{background:linear-gradient(110deg,#0b1537f5,#101a43bf),url('/assets/cinema-hero.webp') center/cover;border-radius:14px;min-height:320px;padding:38px;display:flex;align-items:center;gap:30px;color:var(--color-white);margin-bottom:24px}
.platform .member-avatar.large{width:156px;height:156px;border:3px solid #e0cffc;font-size:66px;margin:0;background:var(--color-brand-tint-2);color:#571bb6}
.platform .member-hero-copy{min-width:0;flex:1}
.platform .member-hero-copy h1{font-size:36px;line-height:1.2;margin:8px 0 12px;overflow-wrap:anywhere}
.platform .member-hero-copy h2{font-size:19px;line-height:1.4;margin:0 0 12px;font-weight:500}
.platform .member-hero-copy p{font-size:14px;line-height:1.6;color:var(--color-line);margin:8px 0;overflow-wrap:anywhere}
.platform .member-hero-copy .member-eyebrow{font-size:11px;color:#d1afff}
.platform .member-social-links{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}
.platform .member-social-links a{display:inline-flex;align-items:center;min-height:38px;border:1px solid #9ba6c5;border-radius:20px;padding:6px 13px;color:white;font-size:12px}
.platform .member-profile-actions{display:flex;flex-direction:column;gap:12px;flex-shrink:0;align-self:flex-start}
.platform .member-profile-actions .pbtn{width:100%;min-width:140px}
.platform .member-profile-actions .outline{background:#ffffff0c;color:var(--color-brand-tint);border-color:#c4b4fa}
.platform .member-profile-content{display:grid;grid-template-columns:minmax(0,2fr) minmax(280px,1fr);gap:0 24px;align-items:start}
.platform .member-bio{white-space:pre-line;font-size:15px;line-height:1.75;overflow-wrap:anywhere}
.platform .member-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}
.platform .member-tags .ptag{font-size:12px;padding:7px 12px;white-space:normal;overflow-wrap:anywhere}
.platform .member-facts dl{display:grid;grid-template-columns:1fr minmax(0,1.4fr);gap:16px;font-size:14px;line-height:1.5}
.platform .member-facts dt{color:var(--color-text-secondary)}
.platform .member-facts dd{margin:0;overflow-wrap:anywhere}
.platform .member-filmography{grid-column:1/-1}
.platform .member-filmography .project-cards{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.platform .profile-settings-extra{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px;border-top:1px solid var(--color-line);margin-top:24px;padding-top:24px}
.platform .profile-settings-extra>h2,.platform .profile-setting-help{grid-column:1/-1}
.platform .profile-setting-help{font-size:12px;line-height:1.5;color:var(--color-text-secondary);margin:0 0 20px!important}
.platform .profile-visibility-note{padding:12px 14px;border-radius:8px;background:var(--color-brand-tint-3);color:#572791;font-size:13px}
.platform :is(.member-profile-hero,.member-grid,.member-filters,.member-pagination) :is(a,button,input,select):focus-visible{outline:3px solid #af86fa;outline-offset:3px}
@media(max-width:1180px){.platform .member-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.platform .member-filmography .project-cards{grid-template-columns:repeat(3,minmax(0,1fr))}.platform .member-avatar.large{width:120px;height:120px;font-size:48px}.platform .member-profile-hero{gap:24px;padding:30px}}
@media(max-width:900px){.platform .member-grid,.platform .member-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.platform .member-profile-content{grid-template-columns:minmax(0,1fr)}.platform .member-profile-hero{flex-wrap:wrap}.platform .member-profile-actions{width:100%;flex-direction:row}.platform .member-profile-actions>*{flex:1}.platform .member-filmography .project-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){
 .platform .member-grid,.platform .member-filters,.platform .profile-settings-extra,.platform .member-filmography .project-cards{grid-template-columns:minmax(0,1fr)}
 .platform .member-filter-actions{flex-direction:column;align-items:stretch}
 .platform .member-profile-hero{padding:24px;gap:20px;flex-direction:column;align-items:flex-start}
 .platform .member-avatar.large{width:98px;height:98px;font-size:40px}
 .platform .member-hero-copy h1{font-size:29px}
 .platform .member-profile-actions .pbtn{min-width:0;font-size:13px}
 .platform .member-facts dl{font-size:13px;gap:14px}
 .platform .member-card{padding:22px}
}

.platform .member-following{grid-column:1/-1}
.platform .member-following-row{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 0;border-bottom:1px solid var(--color-line)}
.platform .member-following-row>a{overflow-wrap:anywhere;font-weight:600}
.platform .member-following-row>form{flex-shrink:0}
/* Uploaded profile photos preserve the existing typography and responsive layout. */
.platform .member-avatar.profile-photo{object-fit:cover;padding:0}
.platform .member-avatar.art-alex{background-image:url('/assets/references/profile.webp');background-size:686.2559% 514.6919%;background-position:4.6079% 11.7714%;background-repeat:no-repeat}
.platform .member-profile-hero{position:relative;isolation:isolate;overflow:hidden}
.platform .member-profile-hero>.member-profile-cover{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.platform .member-profile-hero:has(>.member-profile-cover)::before{content:'';position:absolute;inset:0;background:linear-gradient(100deg,#07142ceb,#101b40b5 64%,#101b406e);z-index:-1}
.platform .profile-photo.crop-center{object-position:center}
.platform .profile-photo.crop-top{object-position:center top}
.platform .profile-photo.crop-bottom{object-position:center bottom}
.platform .profile-photo.crop-left{object-position:left center}
.platform .profile-photo.crop-right{object-position:right center}
.platform .member-avatar.navigation-avatar{width:40px;height:40px;border-width:2px;font-size:18px;margin:0;flex-shrink:0}
.platform .profile-appearance-intro{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:0 0 26px}
.platform .profile-appearance-intro p{font-size:14px;max-width:660px;line-height:1.6}
.platform .profile-appearance-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:24px;align-items:start}
.platform .profile-image-editor{min-width:0;padding:24px}
.platform .profile-image-preview{display:flex;align-items:center;justify-content:center;width:100%;height:220px;background:var(--color-brand-soft);border:1px solid #d9dcf4;border-radius:10px;overflow:hidden;margin-bottom:24px;color:var(--color-text-secondary)}
.platform .profile-image-preview.avatar>.profile-photo{width:184px;height:184px;object-fit:cover;border-radius:50%}
.platform .profile-image-preview.cover>.profile-photo{width:100%;height:100%;object-fit:cover}
.platform .profile-upload-form{border-top:1px solid var(--color-line);margin-top:24px;padding-top:24px}
.platform .profile-upload-form input[type=file]{height:auto;min-height:44px;max-width:100%;padding:8px}
.platform .profile-upload-form input[type=file]::file-selector-button{font:inherit;border:0;background:var(--color-brand-tint);color:#572791;border-radius:5px;padding:7px 10px;margin-right:8px}
.platform .profile-remove-form{margin-top:14px}
.platform .profile-image-history summary{font-size:20px;font-weight:700;cursor:pointer;margin-bottom:20px}
.platform .profile-history-row{display:flex;align-items:center;gap:20px;padding:18px 0;border-bottom:1px solid var(--color-line)}
.platform .profile-history-row>img{width:88px;height:70px;object-fit:cover;border-radius:8px}
.platform .profile-history-row>div{flex:1;min-width:0}
.platform .profile-history-row p{overflow-wrap:anywhere;font-size:13px}
.platform .profile-history-row form{flex-shrink:0}
@media(max-width:900px){.platform .profile-appearance-grid{grid-template-columns:minmax(0,1fr)}.platform .profile-appearance-intro{align-items:flex-start;flex-direction:column}.platform .profile-history-row{gap:12px}}
@media(max-width:600px){.platform .profile-image-editor{padding:18px}.platform .profile-history-row{flex-wrap:wrap}.platform .profile-history-row form{width:100%}.platform .profile-history-row form .pbtn{width:100%}.platform .profile-upload-form input[type=file]{font-size:13px}}
/* Portfolio sections reuse published film and festival results. */
.platform .portfolio-navigation{display:flex;flex-wrap:wrap;gap:8px 24px;border-bottom:1px solid var(--color-line);margin:0 0 24px;padding:0 8px}
.platform .portfolio-navigation a{display:flex;align-items:center;min-height:52px;padding:12px 8px;color:#314572;font-size:14px;border-bottom:3px solid transparent}
.platform .portfolio-navigation a[aria-current=page]{color:#6518ed;border-color:#7825ff;font-weight:700}
.platform .portfolio-navigation a:focus-visible,.platform .portfolio-panel a:focus-visible{outline:3px solid #a574f6;outline-offset:3px}
.platform #portfolio-content{scroll-margin-top:24px}
.platform .portfolio-full{grid-column:1/-1}
.platform .portfolio-panel{min-width:0;padding:24px}
.platform .portfolio-panel-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px}
.platform .portfolio-panel-heading h2{display:flex;align-items:center;gap:12px;font-size:20px;line-height:1.4;margin:0}
.platform .portfolio-panel-heading h2 svg{color:#7625ff;width:24px;height:24px;flex-shrink:0}
.platform .portfolio-count{display:inline-flex;align-items:center;justify-content:center;min-width:32px;height:32px;background:var(--color-brand-tint-3);border-radius:50%;color:#6121c2;font-size:13px;font-weight:700;padding:5px}
.platform .portfolio-help{font-size:13px;line-height:1.6;color:var(--color-text-secondary);margin:0 0 18px}
.platform .portfolio-result{display:flex;align-items:flex-start;gap:16px;padding:20px 0;border-top:1px solid var(--color-line)}
.platform .portfolio-result-icon{display:flex;align-items:center;justify-content:center;width:44px;height:44px;flex-shrink:0;background:var(--color-brand-tint-3);border-radius:10px;color:#6b25ec}
.platform [data-portfolio-kind=awards] .portfolio-result-icon{background:#fff5df;color:#9f6000}
.platform .portfolio-result-icon svg{width:24px;height:24px}
.platform .portfolio-result-copy{min-width:0;flex:1;overflow-wrap:anywhere}
.platform .portfolio-result h3{font-size:16px;line-height:1.45;margin:0 0 8px;color:var(--color-navy-950)}
.platform .portfolio-result a{display:block;width:fit-content;max-width:100%;line-height:1.55;margin-bottom:6px}
.platform .portfolio-festival{font-weight:600;font-size:14px;color:#213866}
.platform .portfolio-film{color:#6121c2;font-size:14px}
.platform .portfolio-location,.platform .portfolio-dates{font-size:12px;line-height:1.6;margin:6px 0;color:var(--color-text-secondary)}
.platform .portfolio-selection{display:inline-block;background:#e4f8ef;color:#087846;border-radius:20px;font-size:12px;padding:5px 10px;margin:4px 0}
.platform .portfolio-empty{padding:22px 0;font-size:14px;color:var(--color-text-secondary)}
.platform .portfolio-view-all{margin-top:16px;min-height:44px}
@media(max-width:600px){.platform .portfolio-navigation{gap:0 12px;padding:0}.platform .portfolio-navigation a{font-size:13px;padding:12px 5px}.platform .portfolio-panel{padding:20px}.platform .portfolio-panel-heading h2{font-size:18px}.platform .portfolio-result{gap:12px}.platform .portfolio-result-icon{width:36px;height:36px}.platform .portfolio-view-all{width:100%}}
