/* Same portrait canvas as the mobile profile, scaled to each surface. */
:is(#dashboard-portrait,.portal-portrait,.calendar-portrait,.bgwind-tv-portrait,#portrait-stage,.management-photo,.career-person-photo){
  box-sizing:border-box!important;position:relative!important;isolation:isolate;
  height:auto!important;aspect-ratio:1.05!important;overflow:hidden!important;
  border:1px solid var(--portrait-accent,#3f9bff66)!important;border-radius:7%!important;
  background:radial-gradient(circle at 50% 18%,color-mix(in srgb,var(--portrait-accent,#2f9bff) 22%,transparent),transparent 85%),linear-gradient(var(--portrait-highlight,#062e78),var(--portrait-panel,#041a44))!important;
}
#portrait-stage{width:100%;border:0!important;border-radius:0!important}
:is(#dashboard-portrait,.portal-portrait,.calendar-portrait,.bgwind-tv-portrait,#portrait-stage,.management-photo,.career-person-photo)::before,
:is(#dashboard-portrait,.portal-portrait,.calendar-portrait,.bgwind-tv-portrait,#portrait-stage,.management-photo,.career-person-photo)::after{
  content:"";position:absolute!important;pointer-events:none;z-index:0!important;
  inset:10%!important;border:1px solid #ffffff1a!important;border-radius:7%!important;background:#ffffff0c!important;
}
:is(#dashboard-portrait,.portal-portrait,.calendar-portrait,.bgwind-tv-portrait,#portrait-stage,.management-photo,.career-person-photo)::after{
  inset:16% 10% 10% 16%!important;border-color:color-mix(in srgb,var(--portrait-accent,#2f9bff) 22%,transparent)!important;background:#ffffff08!important;
}
#dashboard-portrait .portrait-frame,.portal-portrait-frame,.calendar-portrait-photo,.bgwind-tv-portrait .bgwind-tv-portrait-area,#portrait-frame{
  position:absolute!important;inset:8% 8% 0!important;z-index:1!important;transform-origin:50% 100%!important;
}
#dashboard-portrait .portrait-frame img,.portal-portrait-frame img,.calendar-portrait-photo img,
.person .person-name7 .bgwind-tv-portrait img,.row .person-name8 .bgwind-tv-portrait img,#portrait-image{
  display:block;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;
  object-fit:contain!important;object-position:center bottom!important;transform-origin:50% 100%!important;
}
#portrait-placeholder,.portal-portrait>.portrait-fallback{box-sizing:border-box;width:100%;height:100%;padding:8% 8% 0!important;object-fit:contain;object-position:center bottom}
#portrait-image[hidden],#portrait-placeholder[hidden]{display:none!important}

.management-photo,.career-person-photo{width:100%;border:0!important;border-radius:0!important}
.management-photo .frame-secondary,.career-person-frame{display:none!important}
.bgwind-public-photo{inset:8% 8% 0!important;transform-origin:50% 100%!important}
.bgwind-public-photo img{display:block!important;width:100%!important;height:100%!important;object-fit:contain!important;object-position:center bottom!important;filter:none!important;transform:none!important}
.management-photo>img,.career-person-photo>img{box-sizing:border-box;position:absolute!important;inset:0!important;width:100%!important;height:100%!important;padding:8% 8% 0!important;object-fit:contain!important;object-position:center bottom!important;filter:none!important;transform:none!important}
/* Website identity: portrait first, then name, group and personnel number. */
.dashboard-profile-link,.portal-profile,.calendar-organizer{
  display:flex!important;flex-direction:row!important;align-items:center!important;
  justify-content:flex-start!important;gap:20px!important;min-width:0;
}
.portal-profile>.portal-portrait{order:-1}
.dashboard-person-caption,.portal-caption,.calendar-organizer-copy,.portrait-caption{
  min-width:0!important;text-align:center!important;align-items:center!important;flex:1;
  display:flex!important;flex-direction:column!important;gap:6px!important;max-width:none!important;
}
.dashboard-person-caption strong,.portal-caption strong,.portrait-caption strong{color:#dce4ed!important;line-height:1.25!important;overflow-wrap:anywhere;font-size:clamp(20px,2vw,28px)!important}
.portal-group,#dashboard-person-group,.calendar-organizer-group,.portrait-caption>span{color:#f6d365!important;margin-top:0!important}
.personnel-number,.dashboard-person-caption>small,.portrait-caption>small,.calendar-personnel-number{display:block;color:#e5e4e2!important;font-size:14px!important;line-height:1.4;margin-top:0!important}
.top.portal-header .portal-profile{grid-column:1/-1!important;grid-row:2!important;width:100%!important;justify-self:start!important}
.profile-layout{grid-template-columns:minmax(0,1fr)!important}
.profile-layout>.portrait-card{display:grid;grid-template-columns:148px minmax(0,1fr);align-items:center;gap:20px;padding:20px;width:100%!important;max-width:none!important;position:static!important;justify-self:stretch!important}
.profile-layout .portrait-caption{padding:0!important}
.profile-layout #portrait-stage{border-radius:7%!important}
.calendar-organizer-copy>.meta-label{order:4;font-size:.55em;margin-top:4px}
@media(max-width:540px){
 .dashboard-profile-link,.portal-profile,.calendar-organizer{gap:14px!important}
 .profile-layout>.portrait-card{grid-template-columns:100px minmax(0,1fr);gap:14px;padding:14px}
}
.topbar:has(>.portal-profile){flex-wrap:wrap}
.topbar>.portal-profile{order:3;width:100%;flex-basis:100%}
.topbar>.brand{order:1}.topbar>.actions{order:2}

#dashboard-portrait:focus-visible{outline:3px solid #7acbff;outline-offset:5px}
#dashboard-portrait{cursor:pointer;text-decoration:none}
.person-name7>span,.person-name8>span{text-align:center!important}

/* Keep account captions beside the portrait; calendar organizers stay centered. */
.dashboard-person-caption,.portal-caption,.profile-layout .portrait-caption{flex:0 1 auto!important;text-align:left!important;align-items:flex-start!important}

/* Gold group crest: compact, decorative, and independent of the profile photograph. */
.has-group-crest::before{content:"";display:inline-block;width:1.8em;height:1.8em;min-width:1.8em;margin-right:.35em;vertical-align:middle;background:var(--group-crest) center/contain no-repeat;flex-shrink:0;pointer-events:none}
.has-group-crest{overflow-wrap:anywhere}

/* A profile's group has the same visual weight and type size as its name. */
.profile-group-label{font-size:var(--profile-name-size,clamp(20px,2vw,28px))!important;font-weight:700!important;line-height:1.3!important;color:#f6d365!important;white-space:normal!important;overflow:visible!important}
.profile-group-label.has-group-crest::before{width:1.3em;height:1.3em;min-width:1.3em;margin-right:.3em;vertical-align:-.25em}
.profile-group-label[hidden]{display:none!important}

#cafeteria-profile-group.has-group-crest::before{content:none}
#cafeteria-profile-group .cafeteria-group-crest{display:inline-block;width:1.3em;height:1.3em;max-width:none;object-fit:contain;vertical-align:-.25em;margin-right:.3em}

.bg-open-avatar[data-portrait-theme]{background:linear-gradient(var(--portrait-highlight),var(--portrait-panel))!important;border-color:var(--portrait-accent)!important}
