/* V5-005: one native avatar/control tree, one content tree, three responsive layouts. */
.fl-cover-v5 {
  --cover-photo-height: 360px; --cover-avatar: 190px; --cover-inset: max(16px, calc(10% - 95px)); --cover-gap: 24px;
  height: auto !important; min-height: 0 !important; position: relative; isolation: isolate;
  background: #fff !important; color: #262421; border-radius: 0; margin: 0; padding: 0;
}
.fl-cover-v5-photo.profile-cover-wrapper { position: relative; min-height: 0 !important; height: var(--cover-photo-height) !important; margin: 0 !important; padding: 0; background: var(--cover-entity-dark,#55524e) center / cover no-repeat; }
.fl-cover-v5-photo::before { content: ''; position: absolute; inset: 0; pointer-events: none;
  background: var(--cover-photo-overlay-background, linear-gradient(90deg, rgba(12,12,12,.85) 0%, rgba(12,12,12,.64) 40%, rgba(12,12,12,.16) 68%, rgba(12,12,12,.07) 100%));
  opacity: var(--cover-photo-overlay-opacity,1); }
/* Narrow covers keep the entire source photo. The shared renderer reduces
 * their height to the image ratio, removing top and bottom letterboxing. */
@media (max-width:1199px) {
  .fl-cover-v5-photo.profile-cover-wrapper { background-size:contain; }
}
.fl-cover-v5 .profile-cover-buttons { position: absolute; top: 15px !important; left: 15px !important; padding: 0 !important; z-index: 4; opacity:1; }
.fl-cover-v5 .profile-cover-buttons > .profile-cover-change,
.fl-cover-v5 .profile-cover-buttons > .js_init-position-picture,
.fl-cover-v5 .profile-cover-buttons > .profile-cover-customize,
.fl-cover-v5 .profile-cover-buttons > .js_delete-cover { background:#34332f; color:#fff; border-radius:50%; }
.fl-cover-v5 .profile-cover-buttons i { color:#fff; }
.fl-cover-v5 .profile-cover-buttons [role=button] { cursor:pointer; }
.fl-cover-v5 .profile-cover-buttons .profile-cover-change > [role=button] { width:100%; min-height:24px; display:flex; align-items:center; justify-content:center; }
.fl-cover-v5-avatar { position: absolute; left: var(--cover-inset); top: calc(var(--cover-photo-height) - var(--cover-avatar) / 2); width: var(--cover-avatar); height: var(--cover-avatar); z-index: 3; }
.fl-cover-v5 .profile-avatar-wrapper { position: relative !important; float: none !important; margin: 0 !important; left: auto !important; top: auto !important; width: var(--cover-avatar) !important; height: var(--cover-avatar) !important; }
.fl-cover-v5 .profile-avatar-wrapper > img { width: 100%; height: 100%; object-fit: cover; }
.fl-cover-v5 .profile-avatar-wrapper :is(.profile-avatar-change4,.profile-avatar-crop4) { background:#34332f; }
.fl-cover-v5 .profile-avatar-wrapper .profile-avatar-delete4 { background:#b51e29; }
.fl-cover-v5 .profile-avatar-wrapper :is(.profile-avatar-change4,.profile-avatar-crop4,.profile-avatar-delete4) > [role="button"] { width:100%; height:100%; display:flex; align-items:center; justify-content:center; }
.fl-cover-v5-name { position: absolute; bottom: 20px; left: calc(var(--cover-inset) + var(--cover-avatar) + var(--cover-gap)); right: 24px; max-width: 760px; color: #fff; }
.fl-cover-v5-name h1 { font-size: 36px; line-height: 1.2; font-weight: 700; margin: 0 0 8px; color: inherit; overflow-wrap: anywhere; text-shadow: 0 1px 4px #000; }
.fl-cover-v5-name h1 { display:flex; align-items:center; justify-content:var(--cover-text-flow,flex-start); gap:8px; }
.fl-cover-v5-name h1 > .fl-cover-readable { min-width:0; }
.fl-cover-v5-name h1 > .badge { flex:0 0 auto; margin:0!important; font-size:12px; line-height:1.3; white-space:nowrap; text-shadow:none; }
.fl-cover-v5-name p { font-size: 15px; line-height: 1.4; margin: 0; color: inherit; text-shadow: 0 1px 4px #000; }
.fl-cover-v5-marker { position: absolute; right: 16px; top: 14px; display: grid; justify-items: end; gap: 8px; max-width: min(48%, 340px); }
.fl-cover-v5-election { display: flex; align-items: center; gap: 10px; padding: 8px 14px; min-height: 40px; background: transparent; --cover-slot-background: #fff; color: #37342f; border-radius: 24px; font-weight: 650; font-size: 14px; line-height: 1.3; }
.fl-cover-v5-election svg { flex: 0 0 24px; fill:var(--cover-slot-text-color,var(--cover-readable-color,#17212d)); background:var(--cover-slot-text-background,var(--cover-readable-background,rgba(255,255,255,.94))); border-radius:3px; }
.fl-cover-v5-labels { position: absolute; right: 16px; top: 64px; max-width: min(48%, 340px); display: flex; flex-wrap: wrap; justify-content: end; gap: 6px; }
.fl-cover-v5-labels > a, .fl-cover-v5-labels > button, .fl-cover-v5-labels > span { display: inline-flex; width: 44px; height: 44px; border: 0; border-radius: 50%; background: #fff; color: var(--cover-font-color,#37342f); align-items: center; justify-content: center; text-decoration: none; font-weight: 700; }
.fl-cover-v5-labels img { border-radius: 50%; object-fit: cover; }
.fl-cover-label-tooltip { position:fixed; z-index:1090; max-width:min(280px,calc(100vw - 24px)); padding:8px 12px; border-radius:6px; background:#17212d; color:#fff; font:500 14px/1.4 Poppins,sans-serif; overflow-wrap:anywhere; box-shadow:0 2px 8px #0003; }
.fl-cover-v5-below { min-height: calc(var(--cover-avatar) / 2 + 24px); padding: 20px 24px 20px calc(var(--cover-inset) + var(--cover-avatar) + var(--cover-gap)); }
.fl-cover-v5-slogan { font-size: 22px; line-height: 1.4; font-weight: 600; margin: 0 0 10px; color: #262421; overflow-wrap: anywhere; }
.fl-cover-v5-keywords { list-style: none; padding: 0; margin: 0; display: flex; flex-wrap: wrap; justify-content:var(--cover-text-flow,flex-start); gap: 8px 16px; font-size: 14px; line-height: 1.5; color: #484540; }
.fl-cover-v5-keywords li { overflow-wrap: anywhere; max-width: 100%; }
.fl-cover-v5-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 12px; padding: 12px 20px; background: #fff; color: #262421; }
.fl-cover-v5-actions .profile-buttons-wrapper { position: static !important; float: none !important; padding: 0 !important; width: auto !important; margin: 0 !important; display: flex; align-items: center; flex-wrap: wrap; gap: 12px; }
.fl-cover-v5-actions .profile-buttons-wrapper > * { margin: 0 !important; float: none !important; }
:is(.fl-cover-v5-actions, .fl-pro-network-inline-request__actions--studio) .btn-offre { max-width:100%; height:auto!important; min-height:32px; white-space:normal; }
.fl-cover-v5-actions :is(.js_lettre,.js_unlettre) { width:max-content!important; padding:4px 12px 4px 4px; gap:8px; }
.fl-cover-v5-actions .profile-buttons-wrapper .d-xxl-inline-block { display: inline-block !important; }
.fl-cover-v5-actions .fl-candidate-editor-actions { margin: 0; }
:is(.fl-cover-v5-actions, .fl-pro-network-inline-request__actions--studio) .btn-offre:not(.btn-delete):not(.js_friend-decline):not(.js_reseau-decline) { background:var(--cover-entity-dark); color:var(--cover-on-entity-dark); text-shadow:none; }
:is(.fl-cover-v5-actions, .fl-pro-network-inline-request__actions--studio) .btn-offre:not(.btn-delete):not(.js_friend-decline):not(.js_reseau-decline):is(:hover,:focus-visible) { background:var(--cover-entity-light); color:var(--cover-on-entity-light); }
:is(.fl-cover-v5-actions, .fl-pro-network-inline-request__actions--studio) .btn-offre .btn-text { color:inherit; min-width:0; white-space:normal; overflow-wrap:anywhere; }
:is(.fl-cover-v5-actions, .fl-pro-network-inline-request__actions--studio) .btn-offre .icon-circle :is(svg,i) { fill:var(--cover-menu-accent)!important; color:var(--cover-menu-accent)!important; }
.fl-cover-v5-followers { margin-right: auto; font-size: 14px; }
.fl-cover-v5-counts { display:flex; flex-wrap:wrap; gap:12px; margin-right:auto; font-size:14px; }
.fl-cover-v5-counts:empty { display:none; }
/* The Studio only contains horizontal overflow. Palette, gradient, tab geometry,
 * active/hover colours and icons belong to the existing profile menu styles. */
.profil-menu[data-cover-native-menu] { overflow-x:auto; }
.profil-menu[data-cover-native-menu] .profile-nav { flex-wrap:nowrap!important; min-width:max-content; margin-bottom:0!important; }
@media(prefers-reduced-motion:reduce) { .profil-menu[data-cover-native-menu] * { transition:none!important; } }
.fl-cover-v5 :focus-visible, .fl-cover-v5-actions :focus-visible { outline: 3px solid #246baf; outline-offset: 3px; }
.fl-cover-v5 [data-cover-slot]:not(.fl-cover-v5-labels) { position: relative; isolation: isolate; padding: var(--cover-slot-space,0); }
.fl-cover-v5 [data-cover-slot]::before { content: ''; position: absolute; inset: 0; z-index: -1; pointer-events: none; border-radius: inherit; background: var(--cover-slot-background,transparent); opacity: var(--cover-slot-opacity,1); }
.fl-cover-v5 [data-cover-slot][hidden] { display: none !important; }
/* Only the private Studio canvas exposes editable targets. */
[data-cover-selection="on"] .fl-cover-v5 [data-cover-slot][role="button"] { cursor:pointer; }
[data-cover-selection="on"] .fl-cover-v5 [data-cover-slot][data-selected="true"],
[data-cover-selection="on"] .fl-cover-v5 [data-cover-slot][role="button"]:focus-visible { outline:2px solid #246baf; outline-offset:3px; }
@media(hover:hover) { [data-cover-selection="on"] .fl-cover-v5 [data-cover-slot][role="button"]:hover:not([data-selected="true"]) { outline:1px dashed #246baf; outline-offset:3px; } }
.fl-cover-v5 .fl-cover-readable { box-decoration-break: clone; -webkit-box-decoration-break: clone; border-radius: 3px; background: var(--cover-slot-text-background,var(--cover-readable-background,rgba(255,255,255,.94))); color: var(--cover-font-color,var(--cover-slot-text-color,var(--cover-readable-color,#17212d))); padding: 1px 3px; text-shadow: none; }
.fl-cover-v5-name { --cover-readable-background:rgba(0,0,0,.72); --cover-readable-color:#fff; }
.fl-cover-v5 .fl-cover-v5-name { isolation:isolate; padding:var(--cover-slot-space,0); }
.fl-cover-v5-name > [data-cover-slot] { --cover-slot-background:transparent; --cover-slot-opacity:1; --cover-slot-space:0; }
.fl-cover-v5-name > h1[data-cover-slot] { padding:0!important; }
.fl-cover-v5-name::before { content:''; position:absolute; inset:0; z-index:-1; border-radius:inherit; background:var(--cover-slot-background,transparent); opacity:var(--cover-slot-opacity,1); pointer-events:none; }
.fl-cover-v5 .fl-cover-v5-name[data-cover-accent="top"] { padding-top:calc(var(--cover-slot-space,0px) + 15px); }
.fl-cover-v5-name[data-cover-accent="top"]::after { content:''; position:absolute; inset-inline-start:0; top:0; width:min(var(--cover-accent-width),100%); height:4px; background:var(--cover-entity-light); pointer-events:none; }
.fl-cover-v5-presentation { display:grid; gap:8px; position:relative; isolation:isolate; padding:var(--cover-slot-space,0); min-width:0; }
.fl-cover-v5-presentation::before { content:''; position:absolute; inset:0; z-index:-1; border-radius:inherit; background:var(--cover-slot-background,transparent); opacity:var(--cover-slot-opacity,1); pointer-events:none; }
.fl-cover-v5-presentation[data-cover-accent]::after { content:''; position:absolute; inset-inline-start:0; top:0; background:var(--cover-entity-light); pointer-events:none; }
.fl-cover-v5-presentation[data-cover-accent="start"] { padding-inline-start:calc(var(--cover-slot-space,0px) + 12px); }
.fl-cover-v5-presentation[data-cover-accent="start"]::after { width:3px; height:100%; }
.fl-cover-v5-presentation[data-cover-accent="top"] { padding-top:calc(var(--cover-slot-space,0px) + 13px); }
.fl-cover-v5-presentation[data-cover-accent="top"]::after { width:min(var(--cover-accent-width),100%); height:1px; }
.fl-cover-v5-presentation[data-cover-accent="corners"] { padding:calc(var(--cover-slot-space,0px) + 12px); }
.fl-cover-v5-presentation[data-cover-accent="corners"]::after { inset:0; background:linear-gradient(#fff,#fff) left top / min(72px,100%) 1px no-repeat,linear-gradient(#fff,#fff) left top / 1px min(56px,100%) no-repeat,linear-gradient(#fff,#fff) right bottom / min(72px,100%) 1px no-repeat; }
.fl-cover-v5-presentation > [data-cover-slot] { --cover-slot-background:transparent; --cover-slot-opacity:1; --cover-slot-space:0; margin:0; }
.fl-cover-v5-presentation > [data-cover-slot="presentation"] { padding:0!important; }
.fl-cover-v5-presentation[hidden] { display:none!important; }
.fl-cover-v5 [data-cover-tone="ink"] { --cover-readable-color:#000; --cover-readable-background:transparent; }
.fl-cover-v5 [data-cover-tone="white"] { --cover-readable-color:#fff; --cover-readable-background:transparent; }
.fl-cover-v5 [data-cover-region="photo"]:not([data-cover-tone]):not(.fl-cover-v5-election) { --cover-readable-color:#fff; --cover-readable-background:rgba(0,0,0,.72); }
.fl-cover-v5 [data-cover-region="below-photo"]:not([data-cover-tone]) { --cover-readable-color:#17212d; }
.fl-cover-v5[data-cover-frame="none"] { background:transparent!important; }
.fl-cover-v5[data-cover-frame="panel"] .fl-cover-v5-name,
.fl-cover-v5[data-cover-frame="panel"] .fl-cover-v5-presentation { outline:1px solid #7778; outline-offset:0; }
.fl-cover-v5 [data-cover-variant="badge"]:not(.fl-cover-v5-election) { border-radius:8px; padding:6px 10px; }
.fl-cover-v5 [data-cover-variant="ribbon"] { padding:8px 20px 8px 12px; border-radius:2px; }
.fl-cover-v5 [data-cover-variant="ribbon"]::after { content:''; position:absolute; right:0; bottom:0; width:8px; height:8px; background:#0002; clip-path:polygon(0 0,100% 100%,0 100%); pointer-events:none; }
@media (max-width: 1199px) and (min-width: 768px) {
  .fl-cover-v5 { --cover-photo-height: 260px; --cover-avatar: 100px; --cover-inset: max(16px, calc(10% - 50px)); }
  .fl-cover-v5-name h1 { font-size: 28px; }
  .fl-cover-v5-name { max-width: 600px; }
  .fl-cover-v5-slogan { font-size: 20px; }
}
@media (max-width: 767px) {
  .fl-cover-v5 { --cover-photo-height: 220px; --cover-avatar: 76px; --cover-inset: max(16px, calc(15% - 38px)); --cover-gap: 28px; }
  .fl-cover-v5-name { right: 16px; bottom: 16px; }
  .fl-cover-v5-name h1 { font-size: 22px; line-height: 1.15; margin-bottom: 6px; }
  .fl-cover-v5-name p { font-size: 12px; line-height: 1.35; }
  .fl-cover-v5-marker { max-width: calc(100% - 160px); right: 12px; top: 12px; gap: 4px; }
  .fl-cover-v5-election { font-size: 12px; gap: 6px; padding: 6px 10px; }
  .fl-cover-v5-election svg { width: 20px; height: 20px; flex-basis: 20px; }
  .fl-cover-v5-below { padding: 14px 16px 16px calc(var(--cover-inset) + var(--cover-avatar) + var(--cover-gap)); min-height: 58px; }
  .fl-cover-v5-slogan { font-size: 18px; }
  .fl-cover-v5-keywords { font-size: 13px; gap: 6px 10px; }
  .fl-cover-v5-actions { padding: 12px; gap: 10px; }
  :is(.fl-cover-v5-actions, .fl-pro-network-inline-request__actions--studio) .btn-offre { min-height:40px; }
}

@media (max-width: 479px) {
  .fl-cover-v5-labels { position: static; max-width: none; justify-content: start; margin-top: 10px; }
}

.fl-cover-v5-detail { font-size: 14px; line-height: 1.5; margin: 0 0 8px; color: #484540; overflow-wrap: anywhere; }
.fl-cover-work { display: inline-flex; align-items: center; gap: 10px; max-width: 100%; }
.fl-cover-work-logo { width: 36px; height: 36px; flex: 0 0 36px; object-fit: cover; border-radius: 50%; }
.fl-cover-work-text { display: flex; flex-direction: column; min-width: 0; }
.fl-cover-work-title { font-weight: 600; }
.fl-cover-work a { color: inherit; text-decoration: underline; text-underline-offset: .15em; }
.fl-cover-work a:focus-visible { outline: 2px solid currentColor; outline-offset: 3px; }
@media (max-width: 767px) {
  .fl-cover-v5:not([data-cover-type="candidat"]) { --cover-avatar: 100px; --cover-inset: max(16px, calc(15% - 50px)); }
}
.fl-cover-v5-more-labels { position: relative; }
.fl-cover-v5-more-labels summary { list-style: none; cursor: pointer; width: 44px; height: 44px; display: grid; place-items: center; border-radius: 50%; background: #fff; color: var(--cover-font-color,#37342f); font-weight: 650; }
.fl-cover-v5-more-labels summary::-webkit-details-marker { display: none; }
.fl-cover-v5-label-list { position: absolute; z-index: 8; right: 0; top: 52px; width: 224px; max-width: 75vw; max-height: 40vh; overflow: auto; display: flex; flex-wrap: wrap; gap: 8px; padding: 12px; background: #fff; border: 1px solid var(--cover-entity-light,#ddd9d3); border-radius: 12px; box-shadow: 0 4px 16px #0002; }
.fl-cover-v5-label-list > a, .fl-cover-v5-label-list > button, .fl-cover-v5-label-list > span { display: inline-flex; width: 44px; height: 44px; border: 1px solid var(--cover-entity-light,#ddd9d3); border-radius: 50%; align-items: center; justify-content: center; background: white; color: var(--cover-font-color,#37342f); }

/* The optional measured layout reuses the native nodes. Tracks are computed from
   semantic anchors and real content sizes; only the accompanying region may grow. */
.fl-cover-v5[data-cover-grid] { display: grid; gap: 0; align-items: start; }
.fl-cover-v5[data-cover-grid] > .fl-cover-grid-item,
.fl-cover-v5 .fl-cover-measure .fl-cover-grid-item { position: relative !important; inset: auto !important; min-width: 0; max-width: none; margin: 0 !important; width: auto; }
.fl-cover-v5[data-cover-grid] > .fl-cover-grid-avatar { position: relative; inset: auto; margin: 0; }
.fl-cover-v5[data-cover-grid] > .fl-cover-grid-photo { width: 100%; }
.fl-cover-v5[data-cover-grid] > .fl-cover-v5-labels { display: flex; flex-wrap: wrap; align-items: start; }
.fl-cover-v5[data-cover-grid] > .fl-cover-grid-item:not(.fl-cover-v5-labels) { align-self: start; }

/* Classic composition: one readable column beside the native avatar. Content,
 * media and individual settings still come from the shared profile adapter. */
.fl-cover-v5[data-cover-composition="classic"] .fl-cover-v5-name { display:flex; flex-direction:column; gap:6px; }
.fl-cover-v5[data-cover-composition="classic"] .fl-cover-v5-name > * { margin:0; min-width:0; max-width:100%; }
.fl-cover-v5[data-cover-composition="classic"] .fl-cover-v5-name > .fl-cover-v5-presentation { width:100%; }
.fl-cover-v5[data-cover-composition="classic"] .fl-cover-work-logo { width:24px; height:24px; flex-basis:24px; }
.fl-cover-v5[data-cover-composition="classic"] .fl-cover-v5-photo::before { background:var(--cover-photo-overlay-background,linear-gradient(90deg,rgba(9,14,19,.88) 0%,rgba(9,14,19,.80) 56%,rgba(9,14,19,.12) 72%,rgba(9,14,19,.06) 100%)); }
.fl-cover-v5[data-cover-composition="classic"] [data-cover-scrim="true"]:not([data-cover-tone]):not(.fl-cover-v5-election) { --cover-readable-background:transparent; }
.fl-cover-v5[data-cover-composition="classic"] [data-cover-classic-companion] { color:inherit; }
@media (max-width:1199px) {
  .fl-cover-v5[data-cover-composition="classic"] .fl-cover-v5-photo::before { background:var(--cover-photo-overlay-background,linear-gradient(90deg,rgba(9,14,19,.88) 0%,rgba(9,14,19,.80) 97%,rgba(9,14,19,.06) 100%)); }
}
@media (max-width:767px) {
  .fl-cover-v5[data-cover-composition="classic"] .fl-cover-v5-labels > :is(a,button,span),
  .fl-cover-v5[data-cover-composition="classic"] .fl-cover-v5-more-labels summary { width:32px; height:32px; }
  .fl-cover-v5[data-cover-composition="classic"] .fl-cover-v5-labels > :is(a,button,span) img { width:32px; height:32px; }
}
/* Optional Photo settings override the model scrim on its own paint layer. */
.fl-cover-v5[data-cover-overlay-custom="true"] .fl-cover-v5-photo::before {
  background:var(--cover-photo-overlay-background);
  opacity:var(--cover-photo-overlay-opacity,1);
}

/* Graphic signature remains inside the photo, independent of every native box. */
.fl-cover-v5 .fl-cover-signature { position:absolute; inset:0; width:100%; height:100%; max-width:none; overflow:hidden; pointer-events:none; user-select:none; display:block; z-index:0; }
.fl-cover-v5 .fl-cover-signature text { text-shadow:none; }
