/* Structure indispensable aux composants Stellumni.
   Cette feuille ne fixe volontairement ni police, ni palette, ni style de
   bouton : en mode « Styles WordPress », le thème du site les fournit. */
.stellumni-widget { margin-bottom: 2rem; }
.stellumni-widget, .stellumni-widget * { box-sizing: border-box; }
.stellumni-search-header { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:.5rem; margin-bottom:1.5rem; }
.stellumni-search-header h3 { margin:0; }
.stellumni-job-member-status { margin:.75rem 0 1.5rem; }
.stellumni-form-row { display:flex; gap:1rem; flex-wrap:wrap; align-items:flex-end; }
.stellumni-form-group { display:flex; flex-direction:column; gap:.4rem; }
.stellumni-form > .stellumni-form-group, .stellumni-form > .stellumni-form-row, .stellumni-sender-section { margin-bottom:1rem; }
.flex-1 { flex:1; min-width:160px; }
.flex-2 { flex:2; min-width:220px; }
.stellumni-search-primary-row, .stellumni-search-query, .stellumni-search-input-wrap { width:100%; }
.stellumni-search-input-wrap { display:flex; gap:.6rem; align-items:stretch; }
.stellumni-search-input-wrap .stellumni-input { flex:1 1 auto; min-width:0; }
.stellumni-search-submit { width:100%; justify-content:center; margin-top:1rem; }
.stellumni-sender-section { min-width:0; }
.stellumni-sender-section .stellumni-form-row + .stellumni-form-row { margin-top:1rem; }
.stellumni-editor-group .wp-editor-wrap { width:100%; }
.stellumni-results-box { margin-top:1.5rem; }
.stellumni-results-count { margin:0 0 .9rem; }
.stellumni-card { display:flex; gap:1rem; margin-bottom:1rem; }
.stellumni-avatar { flex:0 0 auto; display:flex; align-items:center; justify-content:center; }
.stellumni-bio-modal, .stellumni-job-modal { position:fixed; inset:0; z-index:100000; display:flex; align-items:center; justify-content:center; padding:1.25rem; background:rgb(0 0 0 / .55); }
.stellumni-bio-dialog, .stellumni-job-modal-dialog { position:relative; width:min(920px,100%); max-height:calc(100vh - 2.5rem); overflow:auto; padding:1.5rem; background:Canvas; color:CanvasText; border-radius:.5rem; }
.stellumni-job-launcher-wrap { width:max-content; max-width:100%; }
.stellumni-job-launcher { display:inline-flex; align-items:center; gap:.5rem; }
.stellumni-job-launcher-message { margin-top:.8rem; }
.stellumni-job-modal { visibility:hidden; opacity:0; pointer-events:none; }
.stellumni-job-modal.is-open { visibility:visible; opacity:1; pointer-events:auto; }
.stellumni-job-modal-close, .stellumni-bio-close { position:sticky; z-index:2; top:0; float:right; }
.stellumni-embed-full-page { position:fixed; z-index:9999; inset:0; width:auto; max-width:none; height:auto; min-height:0; margin:0; padding:0; overflow:hidden; box-sizing:border-box; }
body.admin-bar .stellumni-embed-full-page { top:32px; }
.stellumni-embed-iframe { display:block; width:100%; height:100%; border:0; box-sizing:border-box; }
.stellumni-profile-embed { width:100%; height:760px; min-height:0; overflow:hidden; box-sizing:border-box; transition:height .12s ease-out; }
.stellumni-member-jobboard-embed { display:block; width:100%; max-width:100%; min-width:0; height:900px; min-height:0; overflow:hidden; box-sizing:border-box; transition:height .12s ease-out; }
.stellumni-member-jobboard-embed > .stellumni-member-jobboard-iframe { display:block; width:100% !important; max-width:100% !important; min-width:0 !important; margin:0; }
.stellumni-profile-launcher-wrap { display:inline-flex; width:max-content; max-width:100%; }
.stellumni-profile-modal { position:fixed; inset:0; z-index:100000; display:flex; visibility:hidden; opacity:0; pointer-events:none; align-items:center; justify-content:center; padding:1.25rem; background:rgb(0 0 0 / .55); }
.stellumni-profile-modal.is-open { visibility:visible; opacity:1; pointer-events:auto; }
.stellumni-profile-modal-dialog { position:relative; width:min(1000px,100%); height:calc(100vh - 2.5rem); overflow:hidden; background:Canvas; color:CanvasText; border-radius:.5rem; }
.stellumni-profile-modal-close { position:absolute; z-index:3; top:.5rem; right:.75rem; width:36px; height:36px; padding:0; border-radius:50%; font-size:24px; line-height:1; }
.stellumni-profile-modal-frame { width:100%; height:100%; overflow:auto; }
.stellumni-profile-modal-frame > iframe { display:block; width:100%; height:100%; border:0; }
.stellumni-profile-modal-loading { padding:2rem; text-align:center; }
html.stellumni-admin-embed-active, body.stellumni-admin-embed-active, body.stellumni-job-modal-open, body.stellumni-profile-modal-open { overflow:hidden; }
@media (max-width:782px) { body.admin-bar .stellumni-embed-full-page { top:46px; } }
@media (max-width:782px) { .stellumni-profile-embed { height:680px; } }
@media (max-width:782px) { .stellumni-member-jobboard-embed { height:760px; } }
