/* Mise à jour v9 : titres, cartes personnalisables et fiches adaptatives. */
.hero-card.real-event-hero { display:flex!important; align-items:center; min-height:280px; padding:clamp(24px,3.5vw,52px)!important; }
.hero-card.real-event-hero .hero-copy { flex:1 1 auto; width:min(78%,1120px)!important; max-width:min(78%,1120px)!important; min-width:0; }
.hero-card.real-event-hero .hero-copy h2 { max-width:none!important; width:auto!important; margin:12px 0!important; font-size:clamp(1.75rem,3vw,3rem)!important; line-height:1.13!important; text-wrap:balance; overflow-wrap:anywhere; }
.hero-card.real-event-hero .hero-copy .fs-hero-subtitle { margin:0 0 16px!important; font-size:clamp(1.125rem,1.8vw,1.5rem)!important; font-weight:500!important; letter-spacing:0!important; text-transform:none!important; line-height:1.35!important; color:#fff!important; }
.hero-card.real-event-hero .hero-copy > p:first-child { font-size:.875rem!important; line-height:1.5; }
.hero-card.real-event-hero .hero-art { flex:0 0 64px; margin-left:auto; align-self:flex-start; }
.hero-card.real-event-hero .hero-copy > span:not(.fs-custom-badge) { display:block; font-size:1rem!important; }
.hero-card.real-event-hero .hero-copy button { margin-top:22px; }
.fs-offer-heading { min-width:0; }
.fs-offer-heading h3,.event-title-button { overflow-wrap:anywhere; text-wrap:pretty; line-height:1.3!important; }
.offer-grid.fs-offer-list .offer-body { min-width:0; }
.offer-grid.fs-offer-list .fs-offer-heading { grid-column:1!important; }
.offer-grid.fs-offer-list .fs-offer-heading h3 { font-size:1.0625rem!important; }
.event-list .event-title-button { font-size:clamp(1.125rem,1.5vw,1.375rem)!important; white-space:normal!important; }
.fs-custom-badge { display:inline-flex!important; align-items:center; align-self:flex-start; width:fit-content; max-width:100%; padding:7px 12px; border-radius:999px; font-size:.875rem!important; font-weight:750; line-height:1.3!important; letter-spacing:.01em!important; white-space:normal!important; overflow-wrap:anywhere; text-transform:none!important; margin:0 0 10px; box-sizing:border-box; }
.offer-grid.fs-offer-list .offer-body > .fs-custom-badge { grid-column:1 / -1; grid-row:auto; }
.offer-grid.fs-offer-list .offer-body:has(> .fs-custom-badge) { display:flex!important; flex-direction:column; align-items:stretch; }
.offer-card .offer-body,.event-card-main,.event-card-main .event-info,.fs-offer-dialog .modal-content { background:var(--fs-card-bg,#fff)!important; }
.offer-card[style*="--fs-card-bg"] .offer-body :is(h3,p,span,small,strong):not(.fs-custom-badge):not(.fs-availability-badge),
.event-card-main[style*="--fs-card-bg"] .event-info :is(p,span,button):not(.fs-custom-badge):not(.fs-availability-badge),
.fs-offer-dialog[style*="--fs-card-bg"] .modal-content > :is(p,h2),
.fs-offer-dialog[style*="--fs-card-bg"] .fs-offer-heading h2 { color:var(--fs-card-text)!important; }
.fs-card-appearance { border:1px solid #d4e0e8; border-radius:16px; padding:18px; margin:8px 0; min-width:0; }
.fs-card-appearance legend { padding:0 8px; font-size:1rem; font-weight:700; }
.fs-appearance-fields { display:grid; grid-template-columns:minmax(120px,1fr) minmax(160px,1fr); gap:16px; align-items:end; }
.fs-card-appearance label { display:flex; flex-direction:column; gap:7px; font-size:.875rem!important; min-width:0; }
.fs-card-appearance input[type="color"] { width:100%; height:44px; padding:4px; cursor:pointer; }
.fs-card-appearance input[type="text"] { width:100%; min-width:0; box-sizing:border-box; font-size:1rem; }
.fs-badge-label-field { grid-column:1 / -1; }
.fs-card-appearance small { font-size:.875rem; line-height:1.4; }
.fs-appearance-reset { min-height:44px; border:1px solid #bbcdd8; background:white; border-radius:10px; color:#08233f; font:inherit; cursor:pointer; }
.fs-appearance-preview { display:flex; flex-direction:column; align-items:flex-start; gap:10px; padding:20px; border:1px solid #b9cbd8; border-radius:14px; margin-top:18px; }
.fs-appearance-preview strong { font-size:1.25rem; overflow-wrap:anywhere; }
.fs-appearance-preview .fs-custom-badge { margin:0; }
/* Content scrolls inside the window. Close control stays outside the scroller. */
.modal-backdrop:has(> .fs-offer-dialog) { display:flex!important; align-items:center!important; justify-content:center!important; padding:clamp(8px,2vw,24px)!important; box-sizing:border-box; }
.modal-backdrop > .offer-modal.fs-offer-dialog { position:relative; display:grid!important; grid-template-columns:minmax(220px,27%) minmax(0,1fr)!important; width:min(1440px,100%)!important; max-width:1440px!important; height:calc(100dvh - 48px)!important; max-height:1000px!important; margin:0!important; overflow:hidden!important; border-radius:22px; min-height:0!important; }
.fs-offer-dialog > .modal-visual { width:auto!important; min-width:0!important; min-height:0!important; height:100%!important; background-position:center!important; background-size:cover!important; }
.fs-offer-dialog > .modal-visual.fit-contain { background-size:contain!important; background-repeat:no-repeat!important; background-color:#fff!important; }
.fs-offer-dialog > .modal-content { min-width:0; min-height:0; overflow-y:auto!important; overflow-x:hidden; overscroll-behavior:contain; scrollbar-gutter:stable; padding:48px clamp(20px,3vw,44px) 28px!important; }
.fs-offer-dialog > .modal-close { position:absolute!important; z-index:5!important; top:10px!important; right:12px!important; width:40px!important; height:40px!important; min-height:40px; display:grid; place-items:center; border-radius:50%; background:#fff!important; color:#071b36!important; box-shadow:0 2px 10px #071b3620; }
.fs-offer-dialog .fs-offer-heading h2 { font-size:clamp(1.5rem,2.2vw,2.25rem)!important; line-height:1.2!important; overflow-wrap:anywhere; }
.fs-offer-dialog .modal-content p,.fs-offer-dialog .fs-offer-conditions li { font-size:1rem!important; line-height:1.55!important; }
.fs-offer-dialog .fs-offer-summary { margin:14px 0 6px; }
.fs-offer-dialog .fs-offer-reserved { font-size:.875rem!important; margin:0 0 20px; }
.fs-offer-dialog .offer-options { display:grid!important; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.fs-offer-dialog .offer-options > strong { grid-column:1 / -1; font-size:1rem; }
.fs-offer-dialog .offer-options > button { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:14px!important; margin:0!important; min-width:0; }
.fs-offer-dialog .offer-options > button > span { min-width:0; }
.fs-offer-dialog .offer-options b { font-size:1rem!important; overflow-wrap:anywhere; }
.fs-offer-dialog .offer-options small { font-size:.875rem!important; }
.fs-offer-dialog .offer-options em { flex-shrink:0; font-size:1rem!important; }
.fs-offer-dialog .fs-offer-conditions { margin:20px 0!important; padding:20px!important; background:#f3f7fa!important; color:#132f47!important; border-radius:14px; }
.fs-offer-dialog .fs-offer-conditions ul { margin:12px 0 0; padding-left:20px; }
.fs-offer-dialog .fs-offer-conditions li + li { margin-top:8px; }
.fs-offer-dialog .modal-content > .primary-button { position:sticky; bottom:0; width:100%; min-height:48px; margin-top:18px; z-index:2; box-shadow:0 -6px 18px #071b3612; font-size:1rem!important; }
.fs-offer-dialog .offer-quantity-selector small,.fs-offer-dialog dl { font-size:.875rem!important; }
@media(max-width:1000px) {
 .fs-offer-dialog .offer-options { grid-template-columns:1fr; }
 .hero-card.real-event-hero .hero-copy { width:85%!important; max-width:85%!important; }
}
@media(max-width:700px) {
 .hero-card.real-event-hero { min-height:260px; padding:24px!important; }
 .hero-card.real-event-hero .hero-copy { width:100%!important; max-width:100%!important; padding-right:0!important; }
 .hero-card.real-event-hero .hero-copy > p:first-child { max-width:calc(100% - 52px); }
 .hero-card.real-event-hero .hero-art { position:absolute; top:18px; right:18px; width:44px; }
 .hero-card.real-event-hero .hero-copy h2 { font-size:clamp(1.75rem,6.5vw,2.5rem)!important; }
 .modal-backdrop > .offer-modal.fs-offer-dialog { grid-template-columns:1fr!important; grid-template-rows:clamp(100px,20dvh,170px) minmax(0,1fr)!important; height:calc(100dvh - 16px)!important; max-height:calc(100dvh - 16px)!important; border-radius:16px; }
 .fs-offer-dialog > .modal-content { padding:22px 16px 20px!important; }
 .fs-offer-dialog > .modal-visual { background-position:center 40%!important; }
 .fs-offer-dialog .modal-visual > b { max-width:calc(100% - 75px); font-size:.875rem!important; }
 .fs-appearance-fields { grid-template-columns:1fr; }
 .fs-badge-label-field { grid-column:1; }
}
@media(max-height:500px) and (min-width:701px) {
 .modal-backdrop > .offer-modal.fs-offer-dialog { height:calc(100dvh - 16px)!important; }
}

/* Availability is independent from a promotional badge or price. */
.fs-availability-badge { display:block; width:fit-content; max-width:100%; margin:0 0 10px; padding:8px 12px; border-radius:10px; background:#e8edf1!important; color:#334155!important; font-size:.875rem!important; font-weight:700; line-height:1.4; overflow-wrap:anywhere; }
.fs-unavailable { --fs-card-bg:#f1f3f5!important; --fs-card-text:#334155!important; cursor:default!important; box-shadow:none!important; }
.fs-unavailable .offer-visual,.fs-unavailable .event-thumb { filter:grayscale(1); opacity:.65; }
.fs-unavailable .offer-footer button,.fs-unavailable .event-title-button { cursor:not-allowed!important; }
.fs-unavailable .inline-edit { cursor:pointer!important; opacity:1; }
.fs-unavailable .offer-visual:has(.inline-edit),.fs-unavailable .event-thumb:has(.inline-edit) { opacity:1; }
.fs-card-appearance select { min-height:44px; padding:8px; font:inherit; max-width:100%; }

.event-popup .event-popup-copy {background:var(--fs-card-bg,#fff)!important;}
.event-popup[style*="--fs-card-bg"] .event-popup-copy > :is(h2,p) {color:var(--fs-card-text)!important;}
.hero-card.real-event-hero[style*="--fs-card-bg"] {background-blend-mode:multiply;}

/* v10 — badge intégré à la photo, prix masqués avant disponibilité. */
.offer-visual,.event-thumb,.modal-visual,.event-popup-visual { position:relative; }
.offer-visual > .fs-custom-badge,
.event-thumb > .fs-custom-badge,
.modal-visual > .fs-custom-badge,
.event-popup-visual > .fs-custom-badge {
  position:absolute!important; left:14px!important; bottom:14px!important; top:auto!important; right:auto!important;
  display:inline-flex!important; z-index:4; max-width:calc(100% - 28px); margin:0!important;
  padding:8px 12px!important; font-size:.875rem!important; line-height:1.3!important; font-style:normal!important;
  transform:none!important; box-shadow:0 2px 10px #0003; text-shadow:none!important;
}
.event-thumb:has(> .fs-custom-badge) > em,
.event-popup-visual:has(> .fs-custom-badge) > em { bottom:auto!important; top:16px!important; right:16px!important; max-width:calc(100% - 170px); }
.offer-grid.fs-offer-list .offer-visual > .fs-custom-badge { left:8px!important; bottom:8px!important; max-width:calc(100% - 16px); padding:6px 8px!important; }
/* Une carte indisponible est neutre dans son intégralité, y compris les badges. */
.offer-card.fs-unavailable,.event-card-main.fs-unavailable,.event-card.fs-unavailable {
 filter:grayscale(1)!important; background:#eeeeee!important; border-color:#d4d4d4!important;
 --fs-card-bg:#eeeeee!important; --fs-card-text:#414141!important;
}
.fs-unavailable .fs-availability-badge {background:#dedede!important;color:#303030!important;border:1px solid #c8c8c8;}
.fs-unavailable :is(.offer-footer button,.event-title-button,.primary-button) {background:#dedede!important;color:#555!important;box-shadow:none!important;}
.fs-unavailable:hover {transform:none!important;box-shadow:none!important;}
/* Éditeur partenaire : rubriques pliables et champs conservés. */
.content-editor.fs-partner-editor {width:min(1060px,calc(100vw - 24px))!important;max-width:1060px!important;padding:clamp(20px,3vw,40px)!important;}
.fs-editor-sections {display:grid;gap:12px;margin:22px 0;}
.fs-editor-expand-actions {display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:.875rem;color:#536576;}
.fs-editor-expand-actions > span {flex:1 1 240px;}
.fs-editor-expand-actions button {padding:9px 12px;border:1px solid #ccd8e1;border-radius:9px;background:#fff;color:#17374e;font:inherit;cursor:pointer;}
.fs-editor-section {border:1px solid #d9e2e9;border-radius:14px;background:#fff;overflow:clip;}
.fs-editor-section > summary {display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 20px;cursor:pointer;list-style:none;background:#f5f8fa;}
.fs-editor-section > summary::-webkit-details-marker {display:none;}
.fs-editor-section > summary strong {display:block;font-size:1.0625rem;line-height:1.4;color:#14354e;}
.fs-editor-section > summary small {display:block;font-size:.875rem;line-height:1.5;color:#607282;margin-top:3px;}
.fs-editor-chevron {font-size:1.5rem;transition:transform .15s;}
.fs-editor-section[open] > summary .fs-editor-chevron {transform:rotate(180deg);}
.fs-editor-section[open] > summary {border-bottom:1px solid #d9e2e9;}
.fs-editor-section .fs-editor-section-body {padding:20px;margin:0!important;gap:18px!important;}
.fs-editor-section-body > :is(.action-mode-editor,.eligibility-editor,.fs-card-appearance,.fs-availability-editor) {grid-column:1/-1;min-width:0;}
.fs-editor-section-body label {font-size:.9375rem!important;line-height:1.45;min-width:0;}
.fs-editor-section-body :is(input,textarea,select) {max-width:100%;box-sizing:border-box;font-size:1rem!important;}
.fs-partner-editor > .primary-button {position:sticky;bottom:0;z-index:5;width:100%;min-height:50px;margin-top:16px;box-shadow:0 -8px 20px #fff;}
.fs-appearance-disclosure {padding:0!important;overflow:clip;}
.fs-appearance-disclosure > summary {cursor:pointer;padding:16px 18px;font-size:1rem;font-weight:700;background:#f5f8fa;color:#14354e;}
.fs-appearance-disclosure > .fs-appearance-fields {padding:18px;}
.fs-appearance-disclosure > .fs-appearance-preview {margin:0 18px 18px;}
.fs-appearance-disclosure > small {display:block;margin:0 18px 18px;}
.fs-voucher-payment-note {padding:14px 18px;border:1px solid #d4e0e8;border-radius:12px;background:#f2f7fa;color:#234357;font-size:.9375rem;line-height:1.6;}
@media(max-width:700px) {
 .fs-editor-section .fs-editor-section-body {grid-template-columns:minmax(0,1fr)!important;padding:16px;}
 .fs-editor-section-body > * {grid-column:1!important;}
 .fs-editor-section > summary {padding:15px;}
}
/* Cartes fluides : une largeur utile, prix lisibles et bas de carte alignés. */
.offer-grid:not(.fs-offer-list) {grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr))!important;gap:22px!important;align-items:stretch;}
.offer-grid:not(.fs-offer-list) > .offer-card {display:flex!important;flex-direction:column!important;min-width:0;width:100%;height:auto!important;border-radius:22px!important;overflow:hidden;}
.offer-grid:not(.fs-offer-list) .offer-visual {height:200px!important;min-height:200px!important;flex:none;}
.offer-grid:not(.fs-offer-list) .offer-body {display:flex!important;flex-direction:column!important;flex:1;gap:0;height:auto!important;padding:22px!important;min-width:0;}
.offer-grid:not(.fs-offer-list) .offer-body > p {font-size:.75rem!important;line-height:1.4!important;margin-bottom:14px!important;}
.offer-grid:not(.fs-offer-list) .fs-offer-heading {border:0!important;padding:0!important;margin:0 0 10px!important;min-height:0!important;align-items:flex-start!important;gap:10px!important;}
.offer-grid:not(.fs-offer-list) .fs-offer-heading h3 {font-size:1.375rem!important;line-height:1.25!important;letter-spacing:-.025em!important;margin:0!important;}
.offer-grid:not(.fs-offer-list) .fs-offer-logo {width:36px!important;height:36px!important;flex:0 0 36px;}
.offer-grid:not(.fs-offer-list) .offer-body > span:not(.fs-availability-badge) {font-size:.9375rem!important;line-height:1.55!important;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;}
.offer-grid:not(.fs-offer-list) .offer-commercial {display:flex!important;flex-wrap:wrap;align-items:center!important;gap:12px!important;margin:18px 0 12px!important;padding:15px 0!important;}
.offer-grid:not(.fs-offer-list) .offer-commercial > div {flex:1 1 140px;min-width:0;}
.offer-commercial > div small {font-size:.6875rem!important;line-height:1.5!important;letter-spacing:.05em!important;}
.offer-commercial .fs-card-price {font-size:1.5rem!important;line-height:1.3!important;letter-spacing:-.03em!important;}
.fs-price-prefix {display:block;font-size:.875rem;letter-spacing:0;font-weight:550;line-height:1.4;}
.fs-price-amount {display:block;white-space:nowrap;}
.offer-grid:not(.fs-offer-list) .offer-commercial > span {flex:0 1 auto;max-width:100%;font-size:.75rem!important;line-height:1.4!important;white-space:normal!important;text-align:center;}
.offer-card .registration-tag {width:fit-content!important;max-width:100%!important;box-sizing:border-box;white-space:normal!important;overflow-wrap:anywhere;font-size:.75rem!important;line-height:1.5!important;letter-spacing:.025em!important;padding:8px 11px!important;}
.offer-grid:not(.fs-offer-list) .option-count {font-size:.8125rem!important;line-height:1.5!important;margin:0 0 3px;}
.offer-grid:not(.fs-offer-list) .offer-partner-bottom {display:flex!important;flex-wrap:wrap;gap:8px!important;margin:16px 0!important;padding:12px 0 0!important;font-size:.8125rem!important;}
.offer-grid:not(.fs-offer-list) .offer-partner-bottom > strong {font-size:.8125rem!important;min-width:0;overflow-wrap:anywhere;}
.offer-grid:not(.fs-offer-list) .offer-body > .offer-footer {display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:12px!important;margin-top:auto!important;padding-top:14px!important;}
.offer-grid:not(.fs-offer-list) .offer-footer > small {font-size:.8125rem!important;line-height:1.5!important;}
.offer-grid:not(.fs-offer-list) .offer-footer > button {display:flex!important;align-items:center;justify-content:space-between;width:100%!important;height:auto!important;min-height:46px!important;margin:0!important;padding:12px 16px!important;font-size:.9375rem!important;line-height:1.4!important;border-radius:12px!important;white-space:normal!important;text-align:left;}
.offer-grid:not(.fs-offer-list) .offer-footer > button i {flex-shrink:0;}
@media(min-width:1800px){.offer-grid:not(.fs-offer-list){grid-template-columns:repeat(auto-fit,minmax(330px,1fr))!important;}}
@media(max-width:700px){
 .offer-grid:not(.fs-offer-list){grid-template-columns:minmax(0,1fr)!important;gap:18px!important;}
 .offer-grid:not(.fs-offer-list) .offer-body{padding:20px!important;}
 .offer-grid:not(.fs-offer-list) .offer-visual{height:190px!important;min-height:190px!important;}
 .offer-grid.fs-offer-list .offer-card{grid-template-columns:110px minmax(0,1fr)!important;}
 .offer-grid.fs-offer-list .offer-body{display:flex!important;flex-direction:column;align-items:stretch!important;gap:6px!important;padding:14px!important;}
 .offer-grid.fs-offer-list .offer-commercial{flex-wrap:wrap!important;min-width:0!important;}
 .offer-grid.fs-offer-list .offer-footer{width:100%;}
 .offer-grid.fs-offer-list .offer-footer button{white-space:normal!important;width:100%;min-height:44px;}
 .offer-grid.fs-offer-list .inline-edit{font-size:.6875rem!important;top:8px!important;left:5px!important;padding:7px!important;}
 .offer-grid.fs-offer-list .favorite-button{top:48px!important;right:8px!important;}
}
/* Messagerie privée, adaptée au téléphone et au bureau. */
.fs-messaging{display:grid;grid-template-columns:minmax(0,1fr);gap:20px;margin:24px 0;min-width:0;}
.fs-messaging.with-inbox{grid-template-columns:minmax(230px,30%) minmax(0,1fr);}
.fs-message-inbox,.fs-conversation{border:1px solid #dce5ea;border-radius:20px;background:#fff;min-width:0;overflow:hidden;}
.fs-message-inbox{padding:20px;align-self:start;}
.fs-message-inbox label{display:block;font-size:.875rem;font-weight:700;color:#234357;margin-bottom:8px;}
.fs-message-inbox select,.fs-message-inbox input{width:100%;min-width:0;min-height:44px;padding:10px;border:1px solid #cbd9e1;border-radius:10px;font:inherit;font-size:.875rem;margin-bottom:22px;box-sizing:border-box;}
.fs-thread-list{display:grid;gap:8px;max-height:55dvh;overflow:auto;}
.fs-thread-list button{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px;text-align:left;border:1px solid transparent;border-radius:12px;background:#f5f8fa;padding:14px;color:#1b394f;cursor:pointer;}
.fs-thread-list button.selected{background:#eaf4fa;border-color:#5d9cbe;}
.fs-thread-list button strong{font-size:.9375rem;overflow-wrap:anywhere;}
.fs-thread-list button span,.fs-thread-list button small{grid-column:1/-1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.8125rem;color:#617483;}
.fs-thread-list button b,.fs-message-unread{border-radius:999px;background:#0b577d!important;color:#fff!important;min-width:22px;padding:3px 6px;font-size:.75rem!important;text-align:center;}
.fs-conversation{display:flex;flex-direction:column;min-height:520px;}
.fs-conversation>header{display:flex;flex-direction:column;gap:6px;padding:22px;border-bottom:1px solid #e1e8ed;}
.fs-conversation>header strong{font-size:1.125rem;color:#15384f;}
.fs-conversation>header small{font-size:.875rem;color:#637888;line-height:1.5;}
.fs-message-history{height:clamp(260px,45dvh,580px);overflow-y:auto;overscroll-behavior:contain;display:flex;flex-direction:column;align-items:flex-start;gap:14px;padding:22px;background:#f5f8fa;}
.fs-message-bubble{max-width:86%;box-sizing:border-box;border:1px solid #dbe4e9;border-radius:16px 16px 16px 4px;padding:14px 16px;background:#fff;color:#203e54;flex-shrink:0;}
.fs-message-bubble.mine{align-self:flex-end;background:#e7f2f8;border-color:#c4dce9;border-radius:16px 16px 4px 16px;}
.fs-message-bubble>strong{display:block;font-size:.75rem;color:#41667d;}
.fs-message-bubble>p{white-space:pre-wrap;overflow-wrap:anywhere;font-size:.9375rem;line-height:1.6;margin:8px 0!important;}
.fs-message-bubble>time{font-size:.6875rem;color:#647988;display:block;text-align:right;}
.fs-message-compose{padding:20px;border-top:1px solid #dce5ea;margin-top:auto;}
.fs-message-compose>label{display:block;font-size:.875rem;font-weight:700;margin-bottom:8px;color:#234357;}
.fs-message-compose textarea{display:block;width:100%;box-sizing:border-box;resize:vertical;min-height:85px;max-height:220px;border:1px solid #bdced9;border-radius:12px;padding:12px;font:inherit;font-size:1rem;line-height:1.5;}
.fs-message-compose>div{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:12px;}
.fs-message-compose small{font-size:.75rem;color:#647988;}
.fs-message-compose .primary-button{width:auto;min-height:44px;padding:12px 18px;font-size:.9375rem;}
.fs-message-compose button:disabled{opacity:.55;cursor:default;}
.fs-message-empty{padding:28px;color:#647988;font-size:1rem;line-height:1.6;text-align:center;align-self:center;}
.fs-message-error{color:#8f2626;background:#fff0f0;border:1px solid #ebc3c3;border-radius:10px;padding:14px;font-size:.9375rem;line-height:1.5;}
.fs-conversation>.fs-message-error{margin:12px 20px;}
.fs-message-older{align-self:center;border:1px solid #cad9e2;background:#fff;border-radius:9px;color:#24526f;padding:10px 14px;font:inherit;font-size:.8125rem;cursor:pointer;}
@media(max-width:850px){.fs-messaging.with-inbox{grid-template-columns:minmax(0,1fr);}.fs-thread-list{max-height:220px;}.fs-message-inbox{padding:16px;}.fs-conversation{min-height:480px;}}
@media(max-width:500px){.fs-message-history{padding:14px;}.fs-message-bubble{max-width:94%;}.fs-message-compose{padding:14px;}.fs-message-compose>div{align-items:stretch;flex-direction:column;}.fs-message-compose .primary-button{width:100%;}.fs-conversation>header{padding:18px;}}
.offer-visual.fit-contain{background-size:contain!important;background-color:#edf1f3!important;}
:is(.offer-visual,.modal-visual)[style*="riviera-saint-cassien-aventures"]{background-position:50% 70%!important;}
:is(.offer-visual,.modal-visual)[style*="riviera-l-olympia-cannes"]{background-position:50% 38%!important;}
:is(.offer-visual,.modal-visual)[style*="riviera-cinema-experienz"]{background-position:55% 50%!important;}

/* Respecter la casse du libellé de voucher, sans capitales forcées. */
.registration-tag.preapproval { text-transform:none!important; letter-spacing:normal!important; }

/* Même composant et mêmes dimensions que « Offre proposée par ». */
.offer-modal-partner { flex-wrap:wrap; min-width:0; }
.offer-modal-partner.offer-official-website { background:#edf5eb; border:0; }
.offer-modal-partner.offer-official-website > span { color:#647963; }
.offer-modal-partner.offer-official-website > a { color:#285632!important; text-decoration:none; overflow-wrap:anywhere; }

/* Grille stable pour toutes les catégories et sous-catégories. */
.offer-grid:not(.fs-offer-list) { grid-template-columns:repeat(4,minmax(0,1fr))!important; }
@media(max-width:1200px) { .offer-grid:not(.fs-offer-list) { grid-template-columns:repeat(2,minmax(0,1fr))!important; } }
@media(max-width:700px) { .offer-grid:not(.fs-offer-list) { grid-template-columns:minmax(0,1fr)!important; } }

/* Administration v13 : une rubrique par tâche, comptes accessibles directement. */
.fs-admin-v13{--admin-ink:#102941;--admin-blue:#16658b;display:block;min-width:0;color:var(--admin-ink)}
.fs-admin-v13 *{box-sizing:border-box}
.fs-admin-v13 .fs-admin-page-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0 0 22px;padding:0}
.fs-admin-v13 h1{font-size:clamp(25px,2.4vw,36px);line-height:1.15;letter-spacing:-.035em;margin:6px 0 10px}
.fs-admin-v13 h2{font-size:22px;line-height:1.25;margin:0 0 6px;letter-spacing:-.025em}
.fs-admin-v13 h3{font-size:20px;line-height:1.3;margin:0 0 6px}
.fs-admin-page-heading p,.fs-admin-section-header p{color:#677582;font-size:14px;line-height:1.55;margin:0}
.fs-admin-page-heading .eyebrow{font-size:11px;color:#946321;letter-spacing:.12em}
.fs-admin-v13 button,.fs-admin-v13 input,.fs-admin-v13 select{font:inherit}
.fs-admin-v13 button{cursor:pointer}
.fs-admin-v13 button:disabled{cursor:default;opacity:.55}
.fs-admin-v13 :is(a,button,input,select,textarea,summary):focus-visible{outline:3px solid #2288b6;outline-offset:3px}
.fs-admin-page-heading>button,.fs-admin-section-header>button,.fs-account-filters>button,.fs-account-actions button,.fs-account-pagination button,.fs-admin-form-actions button,.fs-admin-danger{border:1px solid #dae3e9;background:#fff;color:#173d58;border-radius:11px;min-height:42px;padding:10px 16px;font-size:13px;font-weight:700}
.fs-admin-v13 .fs-admin-primary{background:#102d48;color:#fff;border-color:#102d48}
.fs-admin-navigation{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 24px;padding:8px;background:#e9eef2;border:1px solid #e0e6ec;border-radius:16px}
.fs-admin-navigation a{display:flex;align-items:center;gap:8px;padding:10px 12px;color:#475c6c;text-decoration:none;font-size:12px;line-height:1.35;font-weight:600;border-radius:10px;min-height:42px}
.fs-admin-navigation a.active{color:#fff;background:#102d48;box-shadow:0 3px 9px #102d481a}
.fs-admin-navigation a:hover:not(.active){background:#fff}
.fs-admin-navigation a>b{font-size:10px;border-radius:20px;background:#d6a75c;color:#162c3e;min-width:20px;text-align:center;padding:3px}
.fs-admin-content,.fs-admin-stack{display:grid;gap:22px;min-width:0}
.fs-admin-task-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));gap:14px}
.fs-admin-v13 .fs-admin-task{display:flex;align-items:center;justify-content:space-between;gap:18px;min-width:0;width:100%;text-align:left;background:#fff;border:1px solid #dfe6eb;border-radius:16px;padding:22px;color:#143650;text-decoration:none;box-shadow:0 5px 18px #172e4405}
.fs-admin-task:hover{border-color:#85a8bf!important;background:#f8fbfd!important}
.fs-admin-task span{min-width:0}.fs-admin-task strong{display:block;font-size:16px;line-height:1.4}.fs-admin-task small{display:block;font-size:12px;color:#677782;line-height:1.6;margin-top:6px}.fs-admin-task>b{font-size:23px}
.fs-admin-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.fs-admin-metrics article{padding:20px;border-radius:16px;background:#eef4f7;min-width:0}
.fs-admin-metrics small{display:block;font-size:12px;color:#5c7381}.fs-admin-metrics strong{display:block;font-size:clamp(22px,2.4vw,32px);margin-top:10px;overflow-wrap:anywhere}
.fs-admin-fold{border:1px solid #e0e7ec;border-radius:16px;background:#fff;overflow:hidden;margin:0}
.fs-admin-fold>summary{display:flex;align-items:center;justify-content:space-between;gap:18px;list-style:none;cursor:pointer;padding:20px 22px}
.fs-admin-fold>summary::-webkit-details-marker{display:none}.fs-admin-fold>summary:after{content:'+';font-size:22px;color:#4f738a;flex:none}.fs-admin-fold[open]>summary:after{content:'−'}
.fs-admin-fold>summary strong{font-size:16px;line-height:1.4;display:block}.fs-admin-fold>summary small{font-size:12px;line-height:1.6;display:block;color:#71808b;margin-top:4px}
.fs-admin-fold[open]>summary{border-bottom:1px solid #e8edf0;background:#f8fafb}
.fs-admin-fold-body{padding:20px;min-width:0}.fs-admin-fold-body>.approval-panel,.fs-admin-operations>.approval-panel{margin:0!important;box-shadow:none!important}
.fs-admin-operations{min-width:0}.fs-admin-operations .panel-title{flex-wrap:wrap;gap:12px}.fs-admin-operations :is(input,textarea,select){max-width:100%}
.fs-admin-v13 .fs-admin-success,.fs-admin-v13 .fs-admin-error{padding:13px 16px;border-radius:12px;font-size:14px;line-height:1.55;margin:0 0 16px}
.fs-admin-success{background:#eaf5ed;color:#285c3c;border:1px solid #cee5d5}.fs-admin-error{background:#fff0ee;color:#952d25;border:1px solid #f0d0cb}
.fs-admin-section-header{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:22px}
.fs-accounts{background:#fff;border:1px solid #e0e7ec;border-radius:20px;padding:24px;min-width:0}
.fs-account-filters{display:grid;grid-template-columns:minmax(200px,2fr) minmax(120px,1fr) minmax(120px,1fr) auto;gap:12px;align-items:end;margin:20px 0}
.fs-admin-v13 :is(.fs-account-filters,.fs-admin-form-grid) label{display:grid;gap:7px;min-width:0;font-size:12px;font-weight:600;color:#526673}
.fs-admin-v13 :is(.fs-account-filters,.fs-admin-form-grid) :is(input,select){width:100%;min-width:0;min-height:44px;padding:10px 12px;border:1px solid #d6e0e8;border-radius:10px;background:#fff;color:#17354b;font-size:14px;box-shadow:none}
.fs-admin-v13 :is(.fs-account-filters,.fs-admin-form-grid) input:disabled,.fs-admin-v13 .fs-admin-form-grid select:disabled{background:#eef2f4}
.fs-account-row{display:grid;grid-template-columns:minmax(180px,1.6fr) minmax(110px,1fr) minmax(70px,.5fr) auto;align-items:center;gap:18px;padding:18px 0;border-top:1px solid #e9edf0}
.fs-account-person{display:flex;align-items:center;gap:12px;min-width:0}.fs-account-person>div{min-width:0}
.fs-account-person strong{display:block;font-size:14px;line-height:1.4;overflow-wrap:anywhere}.fs-account-person small{display:block;font-size:12px;color:#687a88;line-height:1.5;margin-top:3px;overflow-wrap:anywhere}
.fs-account-avatar{display:grid;place-items:center;flex:none;width:40px;height:40px;border-radius:12px;background:#eaf2f7;font-size:13px;font-weight:700;color:#275b7b}
.fs-account-meta{min-width:0;font-size:12px;line-height:1.5;overflow-wrap:anywhere}.fs-account-meta small{display:block;color:#73838f;margin-top:3px}
.fs-account-status{justify-self:start;border-radius:30px;padding:6px 10px;background:#eef1f3;color:#54646e;font-size:11px;font-weight:700;white-space:nowrap}
.fs-account-status.active{background:#e5f4eb;color:#26634c}.fs-account-status.pending{background:#fff1da;color:#8b5c20}.fs-account-status.rejected{background:#fce9e7;color:#983c34}
.fs-account-actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.fs-account-actions button{font-size:12px;padding:8px 12px;min-height:38px}
.fs-account-actions button:first-child{background:#edf4f8;border-color:#d8e7f0}
.fs-account-pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid #e8edf0;padding-top:18px;font-size:12px;color:#627481}
.fs-account-pagination>div{display:flex;align-items:center;gap:12px}.fs-account-pagination button{min-width:42px;padding:8px}
.fs-account-editor{padding:22px;background:#f5f8fa;border:1px solid #d8e4ec;border-radius:16px;scroll-margin-top:100px;margin:0 0 24px}
.fs-admin-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.fs-account-editor>.fs-admin-fold{margin-top:18px}.fs-admin-note{font-size:12px;color:#5c7180;line-height:1.6;margin:16px 0}
.fs-admin-form-actions{display:flex;justify-content:flex-end;gap:12px;flex-wrap:wrap;padding-top:22px}
.fs-admin-v13 .fs-admin-danger{background:#fff1ef;color:#96392f;border-color:#edc7c2}
.fs-admin-journal{display:grid;gap:0;max-height:550px;overflow:auto}.fs-admin-journal article{display:flex;justify-content:space-between;gap:18px;padding:15px 0;border-bottom:1px solid #e8edf0}.fs-admin-journal strong{font-size:13px;line-height:1.5}.fs-admin-journal small{display:block;font-size:11px;color:#687b88;margin-top:4px}.fs-admin-journal time{font-size:11px;color:#687b88;flex:none}
@media(max-width:1250px){.fs-account-row{grid-template-columns:minmax(160px,1.4fr) minmax(110px,1fr) auto}.fs-account-actions{grid-column:1/-1;justify-content:flex-start}.fs-account-filters{grid-template-columns:2fr 1fr 1fr}.fs-account-filters>button{justify-self:start}.fs-admin-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.fs-admin-page-heading{align-items:flex-start!important;gap:12px!important}.fs-admin-page-heading>button{font-size:11px;padding:8px 10px;min-height:38px}.fs-admin-navigation{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));padding:6px}.fs-admin-navigation a{font-size:11px;padding:9px 8px}.fs-admin-section-header{align-items:stretch;flex-direction:column}.fs-admin-section-header>button{align-self:flex-start}.fs-accounts{padding:16px;border-radius:16px}.fs-account-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.fs-account-filters>label:first-child{grid-column:1/-1}.fs-account-filters>button{grid-column:1/-1}.fs-account-row{grid-template-columns:minmax(0,1fr) auto;gap:12px}.fs-account-person{grid-column:1/-1}.fs-account-meta{grid-column:1}.fs-account-status{grid-column:2}.fs-account-actions{grid-column:1/-1}.fs-account-actions>button{flex:1}.fs-account-editor{padding:15px}.fs-admin-form-grid{grid-template-columns:1fr}.fs-admin-fold>summary{padding:16px}.fs-admin-fold-body{padding:14px}.fs-admin-metrics article{padding:16px}.fs-admin-task{padding:18px!important}.fs-admin-journal article{display:block}.fs-admin-journal time{display:block;margin-top:7px}.fs-admin-form-actions button{flex:1}.fs-admin-v13 .fs-admin-operations .approval-panel{padding:14px}.fs-admin-v13 .urgent-admin form>div{flex-wrap:wrap}.fs-admin-v13 .notification-email-settings form>div{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){.fs-admin-v13{scroll-behavior:auto}}

.fs-trash-row{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 0;border-top:1px solid #e6edf1}.fs-trash-row>div:first-child{min-width:0}.fs-trash-row strong{font-size:14px;overflow-wrap:anywhere}.fs-trash-row small{display:block;font-size:12px;color:#637988;margin-top:5px}.fs-admin-trash>button{margin-top:16px;padding:10px 14px;border:1px solid #dce5eb;border-radius:10px;color:#31566f;background:white}@media(max-width:700px){.fs-trash-row{flex-direction:column;align-items:stretch}.fs-trash-row .fs-account-actions{justify-content:flex-start}}

/* V14 : tarif sur une ligne et bloc commercial plus compact. */
.offer-card .offer-commercial .fs-card-price {
  display:inline-flex!important;
  flex-flow:row nowrap!important;
  align-items:baseline;
  gap:6px;
  white-space:nowrap!important;
  font-size:1.25rem!important;
  line-height:1.25!important;
  margin-top:3px!important;
}
.offer-card .offer-commercial .fs-price-prefix {
  display:inline!important;
  flex:none;
  font-size:.8125rem;
  line-height:inherit;
}
.offer-card .offer-commercial .fs-price-amount {
  display:inline!important;
  flex:none;
  line-height:inherit;
}
.offer-grid:not(.fs-offer-list) .offer-commercial {
  gap:8px 12px!important;
  margin:8px 0!important;
  padding:9px 0!important;
  min-height:0!important;
}
.offer-grid:not(.fs-offer-list) .offer-commercial > div {
  flex:1 1 max-content;
}
.offer-grid.fs-offer-list .offer-commercial {
  gap:8px!important;
  padding-block:9px!important;
  min-height:0!important;
}
/* V15 : menus et sous-menus de l’administration. */
.fs-admin-nav-levels{margin-bottom:22px;min-width:0}
.fs-admin-v15 .fs-admin-main-nav{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));margin-bottom:0;gap:6px}
.fs-admin-v15 .fs-admin-main-nav a{justify-content:center;padding:10px 8px;min-width:0;text-align:center}
.fs-admin-subnav{display:flex;flex-wrap:wrap;gap:8px;padding:14px 0 0}
.fs-admin-subnav a{display:flex;align-items:center;min-height:40px;padding:9px 15px;border-radius:10px;background:#fff;border:1px solid #dce5eb;color:#546c7e;text-decoration:none;font-size:13px;line-height:1.35;font-weight:600}
.fs-admin-subnav a.active{background:#e8f2f8;color:#16496c;border-color:#95bacf;box-shadow:inset 0 -2px #2476a1}
.fs-admin-subnav a:hover{background:#f3f8fb}
.fs-admin-sidebar-groups{display:contents}
.fs-admin-mobile-groups{display:grid;gap:8px;width:100%}
.fs-admin-mobile-groups details{background:#f4f7f9;border:1px solid #e0e7ed;border-radius:12px;overflow:hidden}
.fs-admin-mobile-groups summary{display:flex;align-items:center;gap:12px;padding:15px;cursor:pointer;list-style:none;font-weight:700;font-size:14px;color:#203f57}
.fs-admin-mobile-groups summary::-webkit-details-marker{display:none}.fs-admin-mobile-groups summary:after{content:'+';margin-left:auto;font-size:20px}.fs-admin-mobile-groups details[open]>summary:after{content:'−'}
.fs-admin-mobile-groups details>button{padding-left:42px!important;border-radius:0!important;background:transparent!important;border-top:1px solid #e0e7ed!important;margin:0!important}
.fs-admin-mobile-groups details>button.active{color:#14567a!important;background:#e2eef5!important}
.fs-admin-paged{min-width:0}.fs-admin-paged>.fs-account-pagination{margin-top:16px;padding:14px 16px;display:flex;justify-content:space-between}
.fs-admin-journal-search{display:grid;gap:8px;margin-bottom:16px;font-size:13px;font-weight:600;color:#526673}.fs-admin-journal-search input{padding:12px 14px;border-radius:11px;border:1px solid #d6e0e8;min-width:0;width:100%;background:white;color:#17354b;font:inherit}
.fs-admin-v15 .fs-admin-journal-page,.fs-admin-v15 .fs-admin-trash{padding:22px;border:1px solid #e0e7ec;border-radius:16px;background:#fff}
@media(max-width:1100px){.fs-admin-v15 .fs-admin-main-nav{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.fs-admin-v15 .fs-admin-main-nav{grid-template-columns:repeat(2,minmax(0,1fr))}.fs-admin-subnav{gap:6px}.fs-admin-subnav a{font-size:12px;padding:9px 11px;flex:1 1 auto;justify-content:center}.fs-admin-v15 .fs-admin-journal-page,.fs-admin-v15 .fs-admin-trash{padding:16px}.fs-admin-mobile-groups summary:focus-visible{outline:3px solid #2288b6;outline-offset:-3px}}

/* Éditeur d’offre : index de rubriques et formulaires courts. */
.content-editor.fs-partner-editor{width:min(1180px,calc(100vw - 24px))!important;max-width:1180px!important;max-height:calc(100dvh - 32px)!important;padding:28px!important;background:#f5f8fa!important;overflow-y:auto;overscroll-behavior:contain}
.fs-partner-editor>h2{font-size:clamp(22px,2.3vw,30px)!important;line-height:1.2!important;margin:5px 40px 10px 0!important;letter-spacing:-.035em!important}
.fs-partner-editor>.registration-intro{font-size:14px!important;line-height:1.5;color:#687e8e!important;margin-bottom:0!important}
.fs-partner-editor .fs-editor-v15{gap:18px;margin:22px 0}
.fs-editor-context{display:grid;gap:6px;border-left:3px solid #3084ac;padding:12px 16px;background:#eaf2f7;border-radius:0 12px 12px 0;min-width:0}
.fs-editor-context-label{font-size:11px;font-weight:600;color:#698293;letter-spacing:.04em}.fs-editor-context>strong{font-size:17px;font-weight:650;line-height:1.4;color:#173d56;overflow-wrap:anywhere}
.fs-editor-workspace{display:grid;grid-template-columns:215px minmax(0,1fr);gap:22px;align-items:start;min-width:0}
.fs-editor-index{position:sticky;top:0;padding:12px 0;min-width:0;background:#f5f8fa}
.fs-editor-index>p{font-size:11px;text-transform:uppercase;letter-spacing:.09em;font-weight:700;color:#768998;margin:0 10px 12px}
.fs-editor-index nav{display:grid;gap:6px}.fs-editor-index nav button{display:flex;align-items:center;gap:10px;width:100%;min-height:43px;padding:10px 12px;border:1px solid transparent;border-radius:11px;background:transparent;color:#587083;font-size:12px;font-weight:650;text-align:left;line-height:1.4;cursor:pointer}.fs-editor-index nav button svg{flex:none}.fs-editor-index nav button.active{background:#153d58;border-color:#153d58;color:#fff}.fs-editor-index nav button:hover:not(.active){background:#e7eff5}
.fs-editor-index .fs-editor-expand-actions{display:grid;grid-template-columns:1fr 1fr;margin-top:15px;padding-top:15px;border-top:1px solid #dbe5ec;gap:6px}.fs-editor-index .fs-editor-expand-actions button{font-size:11px;padding:9px 5px}
.fs-editor-panels{display:grid;gap:12px;min-width:0}.fs-editor-v15 .fs-editor-section{scroll-margin-top:16px;border-color:#dce6ed;box-shadow:0 3px 10px #19344b04;border-radius:15px}
.fs-editor-v15 .fs-editor-section>summary{justify-content:flex-start;gap:12px;padding:17px 18px;background:#fff}
.fs-editor-section-icon{display:grid;place-items:center;flex:none;width:38px;height:38px;border-radius:11px;background:#eaf2f7;color:#286c90}
.fs-editor-section-title{flex:1;min-width:0}.fs-editor-v15 .fs-editor-section>summary strong{font-size:15px;line-height:1.4}.fs-editor-v15 .fs-editor-section>summary small{font-size:12px;line-height:1.45;margin-top:3px}.fs-editor-v15 .fs-editor-chevron{margin-left:auto;font-size:20px;color:#55748a}
.fs-editor-v15 .fs-editor-section[open]>summary{background:#f0f6fa}.fs-editor-v15 .fs-editor-section[open]{border-color:#b6cede}
.fs-editor-v15 .fs-editor-section-body{grid-template-columns:repeat(2,minmax(0,1fr))!important;padding:20px!important;gap:18px 16px!important}
.fs-editor-v15 .fs-editor-section-body>label{font-size:13px!important;font-weight:600!important;color:#3e586c!important}
.fs-editor-v15 .fs-editor-section-body :is(input:not([type=checkbox]):not([type=color]),select,textarea){padding:11px 12px!important;border:1px solid #d5e0e8!important;border-radius:10px!important;background:#fff!important;min-height:44px;font-size:14px!important;box-shadow:none!important;color:#17374f}
.fs-editor-v15 .fs-editor-section-body textarea{min-height:115px;resize:vertical;line-height:1.6}.fs-editor-v15 .fs-field-hint{font-size:11px!important;font-weight:400!important;line-height:1.55;color:#758999}
.fs-editor-v15 .options-editor{border:1px solid #dce6ed;border-radius:13px;padding:16px!important;background:#f7fafc}.fs-editor-v15 .options-editor>header{gap:12px;flex-wrap:wrap;margin-bottom:14px}.fs-editor-v15 .options-editor>header strong{font-size:15px}.fs-editor-v15 .options-editor>header small{font-size:12px}.fs-editor-v15 .option-editor-row{display:grid!important;grid-template-columns:minmax(0,1.4fr) minmax(80px,.8fr) minmax(80px,.8fr) 32px!important;gap:12px!important;padding:15px!important;border:1px solid #dce6ed!important;border-radius:12px!important;background:#fff!important;margin-top:12px!important}.fs-editor-v15 .option-editor-row>label:first-child{grid-column:1;grid-row:1}.fs-editor-v15 .option-editor-row>label:nth-child(2){grid-column:2;grid-row:1}.fs-editor-v15 .option-editor-row>label:nth-child(4){grid-column:3;grid-row:1}.fs-editor-v15 .option-editor-row>.option-detail{grid-column:1/-1!important;grid-row:2}.fs-editor-v15 .option-editor-row>.remove-option{grid-column:4;grid-row:1;align-self:end;min-height:40px;width:32px;margin:0}
.fs-editor-v15 .fs-card-appearance{margin:0}.fs-editor-v15 .fs-appearance-disclosure>summary{font-size:14px;padding:14px 16px}.fs-editor-v15 .fs-card-appearance label{font-size:13px!important}
.fs-offer-editor-footer{position:sticky;bottom:-28px;z-index:6;display:flex;align-items:center;justify-content:space-between;gap:14px;background:#fff;border-top:1px solid #dbe5ec;margin:0 -28px -28px;padding:16px 28px;box-shadow:0 -10px 20px #17344a07}
.fs-offer-save-actions{display:flex;gap:10px;align-items:center}.fs-offer-save-actions .primary-button{width:auto!important;margin:0!important;padding:13px 20px!important;min-height:46px;font-size:13px!important;border-radius:11px!important;white-space:normal;background:#153d58!important;color:#fff!important}.fs-editor-cancel{background:#fff;border:1px solid #d8e3ea;color:#546d7f;border-radius:10px;padding:12px 16px;font-size:13px;cursor:pointer}
.fs-offer-extra-actions{position:relative}.fs-offer-extra-actions>summary{font-size:12px;font-weight:600;color:#607789;cursor:pointer;list-style:none;padding:12px 0}.fs-offer-extra-actions>summary::-webkit-details-marker{display:none}.fs-offer-extra-actions>summary:after{content:' ⌃'}.fs-offer-extra-actions>div{position:absolute;bottom:100%;left:0;width:210px;background:#fff;border:1px solid #d5e1ea;border-radius:12px;padding:6px;box-shadow:0 12px 36px #16344b29}.fs-offer-extra-actions button{display:block;width:100%;padding:12px 10px;text-align:left;background:#fff;border:0;border-radius:8px;color:#395971;font-size:13px;cursor:pointer}.fs-offer-extra-actions button:hover{background:#f0f5f8}.fs-offer-extra-actions button.danger{color:#a4483d}
.fs-partner-editor :is(button,summary,input,select,textarea):focus-visible{outline:3px solid #2e91bd;outline-offset:2px}
@media(max-width:850px){.fs-editor-workspace{grid-template-columns:1fr;gap:15px}.fs-editor-index{position:static;padding:0}.fs-editor-index>p{display:none}.fs-editor-index nav{display:flex;overflow-x:auto;gap:6px;padding-bottom:6px}.fs-editor-index nav button{width:auto;flex:0 0 auto;white-space:nowrap;font-size:12px;padding:10px}.fs-editor-index .fs-editor-expand-actions{display:flex;justify-content:flex-end;border:0;margin:5px 0 0;padding:0}.fs-editor-index .fs-editor-expand-actions button{padding:7px 12px}}
@media(max-width:700px){.content-editor.fs-partner-editor{padding:18px!important;max-height:calc(100dvh - 16px)!important}.fs-editor-v15 .fs-editor-section-body{grid-template-columns:minmax(0,1fr)!important;padding:16px!important}.fs-offer-editor-footer{bottom:-18px;margin:0 -18px -18px;padding:12px 18px;flex-wrap:wrap}.fs-offer-save-actions{flex:1 1 100%;justify-content:space-between}.fs-offer-save-actions .primary-button{flex:1;padding:12px!important}.fs-offer-extra-actions>summary{padding:5px 0}.fs-editor-v15 .option-editor-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 32px!important}.fs-editor-v15 .option-editor-row>label:first-child{grid-column:1/3;grid-row:1}.fs-editor-v15 .option-editor-row>label:nth-child(2){grid-column:1;grid-row:2}.fs-editor-v15 .option-editor-row>label:nth-child(4){grid-column:2/4;grid-row:2}.fs-editor-v15 .option-editor-row>.option-detail{grid-row:3}.fs-editor-v15 .option-editor-row>.remove-option{grid-column:3;grid-row:1}}
@media(max-height:600px){.fs-editor-index{position:static}}

/* Correctifs des contraintes héritées : toutes les pages admin restent dans leur colonne. */
.fs-admin-v15{width:100%;min-width:0;max-width:100%}
.fs-admin-v15 .fs-admin-content,.fs-admin-v15 .fs-admin-stack{grid-template-columns:minmax(0,1fr);min-width:0;width:100%}
.fs-admin-v15 .fs-admin-content>*{min-width:0;max-width:100%;box-sizing:border-box}
.fs-admin-v15 .fs-admin-main-nav{grid-template-columns:repeat(5,minmax(0,1fr))}
.fs-admin-v15 :is(.fs-accounts,.enrollment-manager,.annual-archives,.server-backups,.fs-category-admin,.notification-email-settings){width:100%;max-width:100%;min-width:0;background:#fff!important;border:1px solid #dfe7ed!important;border-radius:18px!important;box-shadow:0 5px 20px #203e5506!important;box-sizing:border-box}
.fs-admin-v15 :is(.panel-title,.admin-section-heading){min-width:0;gap:14px;flex-wrap:wrap}
.fs-admin-v15 :is(.panel-title,.admin-section-heading)>div{min-width:0;flex:1 1 220px}
.fs-admin-v15 :is(.panel-title,.admin-section-heading) h2{font-size:21px!important;line-height:1.3!important;overflow-wrap:anywhere}
.fs-admin-v15 :is(.panel-title,.admin-section-heading) p{color:#4a738c!important}
.fs-admin-v15 .fs-admin-operations{min-width:0;width:100%}
.fs-admin-v15 .notification-email-settings{padding:22px}
.fs-admin-v15 .notification-email-settings form{display:grid;gap:12px}
.fs-admin-v15 .notification-email-settings form>div{display:flex;gap:10px;flex-wrap:wrap;min-width:0}
.fs-admin-v15 .notification-email-settings input{flex:1 1 220px;min-width:0;max-width:100%;min-height:44px;border:1px solid #d5e1e9;border-radius:10px;padding:10px 12px;font-size:14px}
.fs-admin-v15 .notification-email-settings form button{flex:0 1 auto;min-height:42px;padding:10px 16px;white-space:normal}
.fs-admin-v15 .annual-archives>.fs-admin-paged{display:block!important;width:100%;min-width:0}
.fs-admin-v15 .annual-archives .archive-items{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;min-width:0}
.fs-admin-v15 .annual-archives .archive-items.empty{display:block}
.fs-admin-v15 .annual-archives .archive-items article{display:grid;grid-template-columns:36px minmax(0,1fr)!important;gap:12px;padding:16px;border:1px solid #dfe8ee;border-radius:13px;min-width:0}
.fs-admin-v15 .annual-archives article strong{font-size:14px;line-height:1.45;overflow-wrap:anywhere}
.fs-admin-v15 .annual-archives article small{font-size:12px;line-height:1.5}
.fs-admin-v15 .annual-archives .fs-archive-actions{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:8px}
.fs-admin-v15 .annual-archives .fs-archive-actions button{width:auto!important;flex:1 1 120px;font-size:12px;min-height:40px;white-space:normal}
.fs-admin-v15 .server-backups .backup-list{grid-template-columns:repeat(2,minmax(0,1fr));padding:20px;min-width:0}
.fs-admin-v15 .server-backups .backup-list article{min-width:0;grid-template-columns:42px minmax(0,1fr);padding:16px}
.fs-admin-v15 .backup-actions{grid-template-columns:repeat(3,minmax(0,1fr));grid-column:1/-1;min-width:0}
.fs-admin-v15 .server-backups .backup-actions :is(a,button){font-size:11px;line-height:1.4;padding:9px 7px;white-space:normal;overflow-wrap:anywhere;min-width:0}
.fs-admin-v15 .fs-category-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:14px;min-width:0}
.fs-admin-v15 .fs-category-head,.fs-admin-v15 .fs-category-tools,.fs-admin-v15 .fs-category-footer{flex-wrap:wrap;gap:9px;min-width:0}
.fs-admin-v15 .fs-category-card{min-width:0;max-width:100%}
.fs-admin-v15 .fs-category-identity{min-width:0;overflow-wrap:anywhere}
.fs-admin-v15 .enrollment-manager{overflow:visible}
.fs-admin-v15 .participants-table{max-width:100%;min-width:0;overflow-x:auto}
.fs-admin-v15 .enrollment-filter-grid{width:100%;min-width:0;gap:10px!important}
.fs-admin-v15 .enrollment-filter-grid>label{flex:1 1 180px;min-width:0!important}
.fs-admin-v15 .enrollment-filter-grid :is(input,select){min-width:0!important;max-width:100%}
.fs-admin-v15 .bulk-action-bar{flex-wrap:wrap;gap:10px;min-width:0}
.fs-admin-v15 .bulk-action-bar>div{flex-wrap:wrap;min-width:0;max-width:100%}
.fs-admin-v15 .enrollment-status-tabs{display:flex;flex-wrap:wrap;gap:6px;min-width:0;max-width:100%}
.fs-admin-v15 .enrollment-pagination{flex-wrap:wrap;gap:12px}
@media(max-width:1100px){.fs-admin-v15 .fs-admin-main-nav{grid-template-columns:repeat(3,minmax(0,1fr))}.fs-admin-v15 .annual-archives .archive-items,.fs-admin-v15 .server-backups .backup-list{grid-template-columns:1fr}}
@media(max-width:700px){.fs-admin-v15 .fs-admin-main-nav{grid-template-columns:repeat(2,minmax(0,1fr))}.fs-admin-v15 .notification-email-settings{padding:16px}.fs-admin-v15 .fs-admin-page-heading{flex-wrap:wrap}.fs-admin-v15 .enrollment-filter-grid>label{flex-basis:100%}.fs-admin-v15 .fs-category-grid{grid-template-columns:1fr}.fs-admin-v15 .server-backups .backup-list{padding:14px}.fs-admin-v15 .backup-actions{grid-template-columns:1fr}.fs-admin-v15 .notification-email-settings form button{width:100%}.fs-admin-v15 .fs-account-pagination{flex-wrap:wrap}}

/* Équipe : dix représentants sur deux lignes de cinq à grande largeur. */
.representatives-grid{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:18px!important;width:100%;min-width:0}
.representatives-grid>article{min-width:0!important;width:auto!important;max-width:100%;display:flex;flex-direction:column}
.representatives-grid .representative-copy{min-width:0;flex:1}
.representatives-grid .representative-copy h2{overflow-wrap:anywhere;line-height:1.35!important}
.representatives-grid .representative-photo{flex:none;max-width:calc(100% - 28px)}
.representative-photo .fs-team-custom-photo{display:block;position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:inherit}
.representatives-grid .representative-photo{position:relative;overflow:hidden}
@media(max-width:1200px){.representatives-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media(max-width:800px){.representatives-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:520px){.representatives-grid{grid-template-columns:minmax(0,1fr)!important}}

/* Actions groupées : mêmes contrôles en grille et en liste. */
.fs-bulk-tools{border:1px solid #d6e2eb;background:#f4f8fb;border-radius:18px;margin:8px 0 24px;padding:20px;color:#173a53;min-width:0}
.fs-bulk-bar,.fs-bulk-buttons,.fs-bulk-form footer{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.fs-bulk-bar>div:first-child{flex:1 1 250px}.fs-bulk-bar strong{font-size:17px}.fs-bulk-bar p,.fs-bulk-form header p{font-size:13px;line-height:1.55;color:#607688;margin:5px 0 0}
.fs-bulk-tools button,.fs-signup-settings button{font:inherit;font-size:13px;font-weight:600;border:1px solid #ccdae5;background:#fff;color:#254d69;border-radius:10px;min-height:42px;padding:10px 15px;cursor:pointer;white-space:normal}
.fs-bulk-tools button.fs-bulk-primary,.fs-signup-settings button.fs-bulk-primary{background:#113750;color:#fff;border-color:#113750}
.fs-bulk-tools button:disabled,.fs-signup-settings button:disabled{opacity:.5;cursor:not-allowed}
.fs-bulk-form{margin-top:20px;padding-top:20px;border-top:1px solid #d6e2eb}.fs-bulk-form h3{font-size:20px;margin:0 0 6px}.fs-bulk-form fieldset{padding:0;margin:18px 0;border:0;min-width:0}
.fs-bulk-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.fs-bulk-field{padding:15px;background:#fff;border:1px solid #dce6ed;border-radius:12px;min-width:0}.fs-bulk-field.is-enabled{border-color:#80acc7}
.fs-bulk-tools .fs-bulk-enable,.fs-bulk-tools .fs-bulk-check{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:600;cursor:pointer}
.fs-bulk-tools input[type=checkbox],.fs-offer-select input{width:19px;height:19px;min-height:0;flex:none;accent-color:#186b97}
.fs-bulk-field-body{display:grid;gap:12px;padding:14px 0 0}.fs-bulk-field-body label{display:grid;gap:7px;font-size:13px;color:#476377}.fs-bulk-field-body input:not([type=checkbox]),.fs-bulk-field-body select{width:100%;min-width:0;box-sizing:border-box;border:1px solid #cbdce8;border-radius:9px;padding:10px;font:inherit;min-height:43px;background:#fff;color:#173a53}.fs-bulk-field-body input[type=color]{width:80px;padding:5px}.fs-bulk-field-body small{font-size:12px;color:#6e8190;line-height:1.5}
.fs-bulk-review{background:#eaf2f7;border-radius:12px;padding:16px;margin:16px 0;color:#32516a;font-size:13px}.fs-bulk-review>ul{padding-left:20px;line-height:1.7}.fs-bulk-review summary{cursor:pointer;font-weight:600}.fs-bulk-picked{max-height:160px;overflow:auto;padding-left:22px;line-height:1.7}
.fs-bulk-success{color:#226748;background:#e7f4ed;padding:12px 15px;border-radius:10px;font-size:14px}.fs-bulk-error{color:#9c3634;background:#fceeed;padding:12px 15px;border-radius:10px;font-size:14px}
.fs-offer-select{display:flex!important;align-items:center;justify-content:flex-start;gap:9px;padding:12px 16px;background:#eef4f8;color:#2f5169;border-bottom:1px solid #dce6ed;font-size:13px;font-weight:650;cursor:pointer;grid-column:1/-1;min-height:45px;box-sizing:border-box}.fs-offer-select.is-selected{background:#d7eaf6;color:#123d59;box-shadow:inset 4px 0 #1579aa}.offer-card:has(.fs-offer-select.is-selected){outline:2px solid #26779e;outline-offset:2px}.offer-card:has(.fs-offer-select) .offer-visual{border-radius:0}.fs-offer-list>.offer-card:has(.fs-offer-select){grid-template-rows:auto 1fr}.fs-offer-list>.offer-card>.fs-offer-select{grid-row:1}
.fs-bulk-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.fs-signup-settings{max-width:820px;border:1px solid #dce6ee;border-radius:18px;padding:28px;background:#fff;color:#173a53}.fs-signup-settings h2{font-size:23px;margin:0 0 12px}.fs-signup-settings p{font-size:14px;line-height:1.65;color:#597184}.fs-signup-settings .fs-signup-state{padding:14px;background:#edf4f8;border-radius:11px}.fs-signup-settings form{display:grid;gap:13px;margin-top:23px}.fs-signup-settings form>label{font-weight:650;font-size:14px}.fs-signup-input{display:flex;gap:9px}.fs-signup-input input{flex:1;min-width:0;padding:12px;border:1px solid #cbdce7;border-radius:10px;font-size:16px;letter-spacing:.04em}.fs-signup-settings small{font-size:12px;line-height:1.5;color:#738795}.fs-signup-settings form>button{justify-self:start}
.register-panel select{width:100%;box-sizing:border-box;border:1px solid #cedde8;border-radius:12px;padding:13px 14px;background:#fff;color:#17364e;min-height:48px;font:inherit;font-size:15px}
.fs-bulk-tools :is(button,input,select,summary):focus-visible,.fs-signup-settings :is(button,input):focus-visible,.fs-offer-select input:focus-visible{outline:3px solid #438bb1;outline-offset:3px}
/* Navigation avec rubrique dédiée aux inscriptions. */
.fs-admin-v15 .fs-admin-main-nav{grid-template-columns:repeat(6,minmax(0,1fr))}
/* Catégories : titres, état et actions dans trois zones lisibles. */
.fs-admin-v15 .fs-category-admin{padding:24px!important;background:#fff!important}
.fs-admin-v15 .fs-category-admin>.admin-section-heading{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;align-items:start;padding:0 0 20px!important;margin:0 0 20px!important}
.fs-admin-v15 .fs-category-admin>.admin-section-heading>small{font-size:14px;line-height:1.6;max-width:850px;color:#647c8e}
.fs-admin-v15 .fs-category-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.fs-admin-v15 .fs-category-card{background:#fff;border:1px solid #dce6ed;border-radius:15px;padding:18px;box-shadow:0 3px 12px #183e5406;display:flex;flex-direction:column;gap:17px;opacity:1!important}
.fs-admin-v15 .fs-category-card.is-off{background:#f5f7f9;border-style:dashed;border-color:#cdd7df}.fs-admin-v15 .fs-category-card.is-editing{border-color:#5898bd;box-shadow:0 0 0 2px #5898bd18}
.fs-admin-v15 .fs-category-head{display:grid;grid-template-columns:44px minmax(0,1fr);gap:12px;align-items:center}
.fs-admin-v15 .fs-category-icon{width:44px;height:44px;border:1px solid #dce7ed;border-radius:12px;background:#eef5fa;font-size:23px}
.fs-admin-v15 .fs-category-identity strong{font-size:17px;line-height:1.35;color:#173a53}.fs-admin-v15 .fs-category-identity small{display:block;font-size:12px;line-height:1.5;margin-top:4px;color:#6a7f8e}
.fs-admin-v15 .fs-category-toggle{grid-column:1/-1;display:flex;align-items:center;gap:9px;flex-direction:row!important;width:100%;justify-content:flex-start;margin:0;border:0;background:transparent;padding:0;min-height:30px}.fs-admin-v15 .fs-category-toggle em{font-size:11px;font-weight:650;letter-spacing:.02em;color:#33725f}.fs-admin-v15 .fs-category-toggle.off em{color:#788691}
.fs-admin-v15 .fs-category-tools{display:grid;grid-template-columns:36px 36px minmax(0,1fr);gap:8px;margin-top:auto;padding-top:14px;border-top:1px solid #e5edf2}
.fs-admin-v15 .fs-category-tools .fs-cat-tool{min-height:38px;padding:8px 10px;font-size:13px;border-radius:9px;border:1px solid #dbe6ee;background:#fff;color:#48697f;white-space:normal}.fs-admin-v15 .fs-category-tools .fs-cat-tool:nth-child(3){background:#eaf3f8;color:#205779;font-weight:650}.fs-admin-v15 .fs-category-tools .danger{grid-column:1/-1;border:0;background:transparent;justify-self:end;min-height:30px;padding:5px 0;color:#ab514b;font-size:12px}.fs-admin-v15 .fs-category-tools button:disabled{opacity:.35;cursor:not-allowed}
.fs-admin-v15 .fs-category-editor{padding-top:16px;margin:0;border-top:1px solid #dce6ee;display:grid;gap:12px}.fs-admin-v15 .fs-category-editor label{font-size:13px;display:grid;gap:6px}.fs-admin-v15 .fs-category-editor input{min-width:0;width:100%;box-sizing:border-box;font:inherit;padding:10px;border:1px solid #cadce7;border-radius:9px}.fs-admin-v15 .fs-icon-picker{display:flex;flex-wrap:wrap;gap:6px}.fs-admin-v15 .fs-icon-picker button{width:34px;height:34px}
.fs-admin-v15 .fs-category-footer{margin-top:24px;padding-top:20px;border-top:1px solid #e1e9ef}.fs-admin-v15 .fs-category-footer>button{font-size:14px!important;padding:12px 18px!important;min-height:44px!important;border-radius:11px!important;margin:0!important;width:auto!important}.fs-admin-v15 .fs-category-footer .fs-category-feedback{font-size:13px}
.fs-category-summary{display:flex;flex-wrap:wrap;gap:9px;margin:0 0 20px}.fs-category-summary>span{font-size:12px;font-weight:600;background:#edf4f8;border:1px solid #deebf2;color:#45687e;padding:7px 12px;border-radius:20px}
/* Inscriptions : hiérarchie, filtres et états vides. */
.fs-admin-v15 .enrollment-manager{border-radius:20px!important;padding:0!important;overflow:hidden!important}
.fs-admin-v15 .enrollment-manager>.panel-title{padding:24px!important;border-bottom:1px solid #e3ebf1;margin:0!important;background:#fff}.fs-admin-v15 .enrollment-manager .panel-title h2{font-size:24px!important}.fs-admin-v15 .enrollment-manager .security-badge{font-size:11px;padding:9px 12px;white-space:normal}
.fs-admin-v15 .enrollment-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:20px 24px!important;margin:0!important}.fs-admin-v15 .enrollment-kpis>div{padding:17px 20px!important;border-radius:13px;background:#f4f8fa;border:1px solid #e0e9ef;min-width:0}.fs-admin-v15 .enrollment-kpis span{font-size:11px!important;letter-spacing:.045em}.fs-admin-v15 .enrollment-kpis strong{font-size:29px!important;line-height:1.3}
.fs-admin-v15 .enrollment-toolbar{display:grid!important;grid-template-columns:minmax(240px,1fr) auto minmax(180px,260px);padding:18px!important;margin:0 24px 18px!important;width:auto!important;gap:12px!important;border-radius:14px;background:#f2f6f9}.fs-admin-v15 .enrollment-search{width:100%;min-width:0!important;margin:0!important}.fs-admin-v15 .enrollment-search input{width:100%;font-size:15px!important;padding:12px!important}.fs-admin-v15 .enrollment-toolbar>select,.fs-admin-v15 .fs-archive-toggle{font-size:13px!important;padding:12px!important;min-height:45px;min-width:0!important;border-radius:10px}
.fs-admin-v15 .advanced-enrollment-filters{grid-column:1/-1;width:100%;margin:0!important;border-radius:11px}.fs-admin-v15 .advanced-enrollment-filters>summary{padding:13px!important;font-size:13px!important}.fs-admin-v15 .advanced-filter-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.fs-admin-v15 .advanced-filter-fields label{font-size:12px}.fs-admin-v15 .advanced-filter-fields select{width:100%;min-width:0;font-size:13px}
.fs-admin-v15 .enrollment-status-tabs{padding:0 24px 18px!important;margin:0!important;gap:7px}.fs-admin-v15 .enrollment-status-tabs button{font-size:13px!important;padding:9px 13px!important;min-height:39px;border-radius:10px}.fs-admin-v15 .enrollment-status-tabs button.active{background:#163e58;color:#fff}.fs-admin-v15 .enrollment-status-tabs b{font-size:11px!important}
.fs-admin-v15 .participants-table .participant-head{padding-top:13px;padding-bottom:13px;font-size:11px!important;letter-spacing:.04em;background:#eef3f7}.fs-admin-v15 .participants-table>article{padding-top:17px;padding-bottom:17px;border-bottom:1px solid #e4ecf1}.fs-admin-v15 .participants-table>article.selected{background:#edf7fc}.fs-admin-v15 .participant-identity strong,.fs-admin-v15 .fs-person-link{font-size:14px!important}.fs-admin-v15 .participant-identity small,.fs-admin-v15 .participant-event small{font-size:12px!important;line-height:1.5}.fs-admin-v15 .participant-event strong{font-size:14px!important;line-height:1.45}.fs-admin-v15 .participant-actions button{min-height:35px;font-size:12px!important}
.fs-admin-v15 .fs-enrollment-empty{display:grid;justify-items:center;gap:10px;padding:42px 20px!important;text-align:center;background:#fff;min-height:150px}.fs-enrollment-empty>span{font-size:27px;background:#edf4f8;border-radius:13px;width:54px;height:54px;display:grid;place-items:center;color:#4c7c98}.fs-enrollment-empty strong{font-size:17px;color:#274a62}.fs-enrollment-empty p{font-size:13px;line-height:1.5;color:#748897;margin:0}.fs-enrollment-empty button{padding:10px 16px;border:1px solid #cfe0eb;border-radius:10px;background:#eef6fb;color:#235b7b;font-weight:600;font-size:13px}
@media(max-width:1550px){.fs-admin-v15 .fs-category-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1150px){.fs-admin-v15 .fs-admin-main-nav{grid-template-columns:repeat(3,minmax(0,1fr))}.fs-admin-v15 .fs-category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.fs-admin-v15 .enrollment-toolbar{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.fs-admin-v15 .enrollment-search{grid-column:1/-1}.fs-admin-v15 .enrollment-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.fs-bulk-tools{padding:15px}.fs-bulk-fields{grid-template-columns:1fr}.fs-bulk-buttons,.fs-bulk-form footer{width:100%}.fs-bulk-buttons>button,.fs-bulk-form footer>button{flex:1 1 150px}.fs-signup-settings{padding:20px}.fs-admin-v15 .fs-admin-main-nav{grid-template-columns:repeat(2,minmax(0,1fr))}.fs-admin-v15 .fs-category-grid{grid-template-columns:1fr}.fs-admin-v15 .fs-category-admin{padding:17px!important}.fs-admin-v15 .enrollment-toolbar{grid-template-columns:minmax(0,1fr);margin:0 14px 16px!important;padding:12px!important}.fs-admin-v15 .enrollment-manager>.panel-title{padding:18px!important}.fs-admin-v15 .enrollment-kpis{padding:15px!important;gap:9px}.fs-admin-v15 .enrollment-kpis>div{padding:12px!important}.fs-admin-v15 .enrollment-status-tabs{padding:0 14px 16px!important}.fs-admin-v15 .advanced-filter-fields{grid-template-columns:minmax(0,1fr)}.fs-admin-v15 .fs-category-footer>button{width:100%!important}}

.fs-admin-v15 .fs-archives-v16{padding:24px!important;width:100%;max-width:none}
.fs-admin-v15 .fs-archives-v16 .archive-items{display:grid;grid-template-columns:minmax(0,1fr)!important;gap:12px}
.fs-admin-v15 .fs-archives-v16 .archive-items article.fs-archive-row{grid-template-columns:44px minmax(180px,1fr) auto!important;align-items:center;gap:16px;padding:20px!important;border:1px solid #dbe6ee;border-radius:14px;background:#fff}
.fs-archive-toolbar{display:flex;align-items:end;gap:14px;margin:0 0 20px;flex-wrap:wrap}.fs-archive-toolbar label{display:grid;gap:7px;font-size:12px;color:#5d7688}.fs-archive-toolbar label:first-child{flex:1 1 250px}.fs-archive-toolbar input,.fs-archive-toolbar select{font:inherit;font-size:14px;min-height:44px;padding:11px 13px;border:1px solid #d2e1eb;background:#f8fafc;border-radius:10px;min-width:0}.fs-archive-toolbar>span{align-self:center;font-size:13px;color:#6c8292}
.fs-admin-v15 .fs-archives-v16 .fs-archive-icon{display:grid;place-items:center;width:44px;height:44px;background:#eaf3f8;color:#357ca4;border-radius:12px;font-size:22px}.fs-admin-v15 .fs-archives-v16 .fs-archive-identity strong{font-size:16px;line-height:1.45}.fs-admin-v15 .fs-archives-v16 .fs-archive-identity small{display:block;margin-top:5px;font-size:12px;color:#708697}
.fs-admin-v15 .fs-archives-v16 .fs-archive-actions{grid-column:auto;display:flex;gap:8px;flex-wrap:wrap;max-width:620px;justify-content:flex-end}
.fs-admin-v15 .fs-archives-v16 .fs-archive-actions button{flex:0 1 auto;min-width:0;width:auto!important;min-height:40px;padding:10px 13px;border:1px solid #d5e4ef;border-radius:9px;background:#edf5f9;color:#315d78;font:inherit;font-size:12px;font-weight:650}.fs-admin-v15 .fs-archives-v16 .fs-archive-actions .fs-archive-copy{background:#fff7ea;border-color:#eddcba;color:#90601f}.fs-admin-v15 .fs-archives-v16 .fs-archive-actions .danger{background:#fff;color:#a7514a;border-color:#efd8d5}
.fs-admin-v15 .fs-archives-v16 button:disabled{opacity:.5;cursor:not-allowed}
.fs-archive-confirm{grid-column:1/-1;border:1px solid #ecd7d3;border-radius:10px;background:#fff5f3;padding:14px;display:flex;gap:10px;align-items:center;flex-wrap:wrap}.fs-archive-confirm p{flex:1 1 240px;font-size:13px;margin:0}.fs-archive-confirm button{border:1px solid #e5c7c2;border-radius:8px;background:#fff;color:#94443b;font-size:12px;padding:9px 12px}
.fs-archive-details{grid-column:1/-1;display:grid;grid-template-columns:minmax(180px,280px) minmax(0,1fr);gap:22px;padding:22px 0 0;border-top:1px solid #e0eaf1}.fs-archive-details>img{width:100%;max-height:230px;object-fit:cover;border-radius:12px}.fs-archive-details>div:only-child{grid-column:1/-1}.fs-archive-details dl{margin:0;display:grid;gap:15px}.fs-archive-details dt{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:#728695;font-weight:650}.fs-archive-details dd{font-size:14px;line-height:1.65;color:#34556c;margin:5px 0 0;white-space:pre-wrap}.fs-archive-details h4{font-size:14px}.fs-archive-details ul{padding-left:20px;font-size:13px;line-height:1.7}.fs-archive-loading{padding:20px;font-size:14px;color:#718492}
.topbar .topbar-shortcuts{display:flex;align-items:center;gap:10px;flex-wrap:nowrap;padding:0 4px}
.topbar .topbar-shortcuts .top-action{display:inline-flex!important;align-items:center;justify-content:center;gap:8px;width:auto!important;min-width:44px!important;height:44px!important;padding:0 13px!important;border:1px solid #dbe5ee!important;border-radius:12px!important;background:#fff!important;color:#43667f!important;box-shadow:0 2px 5px #17384e04!important;font-size:13px!important;line-height:1!important;overflow:visible;white-space:nowrap}
.topbar .topbar-shortcuts .top-action.active{background:#eaf4fa!important;color:#145d86!important;border-color:#82b1cc!important;box-shadow:none!important}
.topbar .topbar-shortcuts .top-action>i{position:static!important;font-size:21px!important;line-height:1!important;margin:0!important}.topbar .topbar-shortcuts .top-action>svg{flex:none}
.topbar .topbar-shortcuts .top-action>b{position:static!important;inset:auto!important;transform:none!important;display:inline-flex!important;align-items:center;justify-content:center;min-width:21px!important;width:auto!important;height:21px!important;padding:0 5px!important;margin:0 0 0 2px!important;border:0!important;border-radius:7px!important;background:#da655c!important;color:#fff!important;font-size:11px!important;line-height:1!important;box-shadow:none!important}
.topbar .topbar-shortcuts .top-action:not(.bell)>b{background:#e6f0f6!important;color:#246485!important}.topbar .topbar-shortcuts .top-action:focus-visible{outline:3px solid #97c5df!important;outline-offset:3px!important}
@media(max-width:1350px){.fs-admin-v15 .fs-archives-v16 .archive-items article.fs-archive-row{grid-template-columns:44px minmax(0,1fr)!important}.fs-admin-v15 .fs-archives-v16 .fs-archive-actions{grid-column:1/-1;max-width:none;justify-content:flex-start}}
@media(max-width:950px){.topbar .topbar-shortcuts .top-action .top-action-label{display:none!important}.topbar .topbar-shortcuts .top-action{padding:0 10px!important}}
@media(max-width:700px){.fs-admin-v15 .fs-archives-v16{padding:17px!important}.fs-admin-v15 .fs-archives-v16 .archive-items article.fs-archive-row{padding:15px!important;gap:12px}.fs-admin-v15 .fs-archives-v16 .fs-archive-actions button{flex:1 1 140px}.fs-archive-details{grid-template-columns:minmax(0,1fr)}.fs-archive-toolbar label{flex:1 1 100%}.topbar .topbar-shortcuts{gap:6px;padding:0}}

.fs-community{color:#18394f;min-width:0}.fs-community-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;margin:6px 0 24px}.fs-community-heading>div{flex:1 1 300px}.fs-community-heading p:not(.eyebrow){font-size:15px;color:#6e8291;line-height:1.6;max-width:800px}
.fs-community button{font:inherit;font-size:13px;font-weight:600;border:1px solid #d2e0e9;border-radius:10px;background:#fff;color:#315b76;padding:10px 15px;min-height:42px;cursor:pointer}.fs-community button.fs-bulk-primary{background:#183f58;color:#fff;border-color:#183f58}.fs-community button:disabled{opacity:.5;cursor:not-allowed}
.fs-community-tools{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin:24px 0}.fs-community-tools nav{display:flex;gap:7px;flex-wrap:wrap}.fs-community-tools nav button.active{background:#e6f2f9;color:#135f89;border-color:#9cc0d4}.fs-community-tools>div{display:flex;gap:10px;flex-wrap:wrap;flex:1 1 300px;justify-content:flex-end}.fs-community-tools input,.fs-community-tools select{font:inherit;font-size:14px;padding:11px 13px;border:1px solid #d3e1e9;border-radius:10px;background:#fff;color:#31546b;min-height:44px;min-width:0}.fs-community-tools input{flex:1 1 180px;max-width:380px}
.fs-community-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.fs-community-card{border:1px solid #dce6ed;border-radius:19px;background:#fff;overflow:hidden;min-width:0;box-shadow:0 6px 22px #244a6208;display:flex;flex-direction:column}.fs-community-card>img{width:100%;height:200px;object-fit:cover}.fs-community-placeholder{display:grid;place-items:center;height:150px;background:linear-gradient(130deg,#e4f0f7,#f4f8fb);color:#79a9c4;font-size:48px}.fs-community-card-body{display:flex;flex-direction:column;gap:12px;padding:21px;flex:1;min-width:0}.fs-community-meta{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;align-items:center}.fs-community-meta>span{font-size:11px;font-weight:650;background:#eaf3f8;color:#36749a;border-radius:20px;padding:6px 10px}.fs-community-meta small{font-size:11px;color:#81919d}.fs-community-card h2{font-size:21px;line-height:1.3;letter-spacing:-.025em;margin:0;color:#1b3c54;overflow-wrap:anywhere}.fs-community-price{font-size:17px;color:#29759f}.fs-community-location{font-size:12px;color:#7c8e9b;margin:0}.fs-community-description{font-size:14px;line-height:1.65;color:#5e7586;margin:0 0 9px;white-space:pre-wrap;overflow-wrap:anywhere}.fs-community-description summary{cursor:pointer}.fs-community-description>p{margin:10px 0 0}
.fs-community-contact{margin-top:auto;border-top:1px solid #e3ebf1;padding-top:16px;display:grid;gap:7px}.fs-community-contact small{font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:#8295a1}.fs-community-contact strong{font-size:14px}.fs-community-contact>div{display:flex;flex-wrap:wrap;gap:8px 15px}.fs-community-contact a{font-size:13px;color:#28769f;overflow-wrap:anywhere;text-decoration:none}.fs-community-contact a:hover{text-decoration:underline}.fs-community-manage{display:flex;gap:8px;border-top:1px solid #e5edf2;padding-top:12px;margin-top:6px}.fs-community-manage button{font-size:12px;min-height:36px;padding:8px 12px}.fs-community-card.is-archived{background:#f6f7f8}.fs-community-card.is-archived>img{filter:grayscale(1);opacity:.7}.fs-community-confirm{padding:12px;border:1px solid #edd7d2;border-radius:10px;background:#fff4f1}.fs-community-confirm p{font-size:13px;margin:0 0 9px}.fs-community-confirm button{font-size:12px;margin-right:6px}
.fs-community-editor{padding:25px;background:#fff;border:1px solid #c4dbe9;border-radius:18px;box-shadow:0 10px 30px #274e6208;margin:22px 0}.fs-community-editor>header{display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid #e2ebf1;padding-bottom:18px;margin-bottom:20px}.fs-community-editor header p{font-size:11px;letter-spacing:.08em;color:#61849c;text-transform:uppercase;margin:0 0 5px}.fs-community-editor h2{font-size:24px;margin:0}.fs-community-editor fieldset{padding:0;border:0;margin:0;min-width:0}.fs-community-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.fs-community-form-grid .full{grid-column:1/-1}.fs-community-form-grid label{display:grid;gap:8px;font-size:13px;font-weight:600;color:#3e6077}.fs-community-form-grid input:not([type=checkbox]),.fs-community-form-grid textarea,.fs-community-form-grid select{width:100%;box-sizing:border-box;min-width:0;border:1px solid #cfdee8;border-radius:10px;font:inherit;font-size:14px;font-weight:400;padding:11px 12px;min-height:45px;background:#fff;color:#2c4e65}.fs-community-form-grid textarea{resize:vertical}.fs-community-duration p,.fs-community-duration small{font-size:12px;line-height:1.5;color:#6e8595}.fs-community-form-grid .fs-community-check{display:flex;gap:8px;align-items:center;font-size:12px}.fs-community-check input{accent-color:#286e98}.fs-community-upload{display:flex;gap:16px;flex-wrap:wrap;align-items:center;background:#f4f8fa;padding:16px;border-radius:12px}.fs-community-upload small{width:100%;font-size:11px;color:#748b9b}.fs-community-upload>div{display:flex;align-items:center;gap:12px}.fs-community-upload img{width:85px;height:65px;border-radius:9px;object-fit:cover}.fs-community-contact-intro{padding-top:18px;border-top:1px solid #e2eaf0}.fs-community-contact-intro h3{font-size:16px;margin:0 0 7px}.fs-community-contact-intro p{font-size:13px;line-height:1.5;color:#6d8596;margin:0}.fs-community-editor>footer{display:flex;gap:18px;align-items:center;justify-content:space-between;margin-top:24px;padding-top:18px;border-top:1px solid #e3ebf1}.fs-community-editor>footer small{font-size:12px;line-height:1.5;max-width:440px;color:#738795}.fs-community-empty{padding:45px 25px;text-align:center;border:1px dashed #cbdce7;border-radius:18px;background:#f8fbfc}.fs-community-empty>span{font-size:38px;color:#76a4bf}.fs-community-empty h2{font-size:21px}.fs-community-empty p{font-size:14px;color:#778e9e}
.fs-community :is(button,input,textarea,select,summary,a):focus-visible{outline:3px solid #77b1d2;outline-offset:3px}
@media(max-width:1200px){.fs-community-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.fs-community-grid{grid-template-columns:minmax(0,1fr)}.fs-community-form-grid{grid-template-columns:minmax(0,1fr)}.fs-community-editor{padding:18px}.fs-community-editor>footer{align-items:stretch;flex-direction:column}.fs-community-tools>div{width:100%;justify-content:stretch}.fs-community-tools input{max-width:none}.fs-community-tools select{flex:1 1 100%}.fs-community-heading>button{width:100%}.fs-community-card>img{height:210px}}

.fs-icom-calendar{background:#fff;border:1px solid #dce6ee;border-radius:20px;padding:26px;min-width:0;color:#17394f}
.fs-icom-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:24px}.fs-icom-heading h2{font-size:26px;margin:6px 0 10px}.fs-icom-heading p:not(.eyebrow){font-size:14px;color:#6c8292;line-height:1.6;margin:0;max-width:740px}
.fs-icom-calendar button,.fs-icom-calendar input{font:inherit;font-size:13px;min-height:42px;padding:10px 14px;border:1px solid #d3e1ea;border-radius:10px;background:#fff;color:#345c77}.fs-icom-calendar button{cursor:pointer}.fs-icom-calendar button:disabled{opacity:.45;cursor:not-allowed}
.fs-icom-month-nav{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:16px;background:#f3f7fa;border-radius:14px}.fs-icom-month-nav h3{margin:0 8px;font-size:20px;text-transform:capitalize;min-width:175px}.fs-icom-month-nav .fs-icom-today{margin-left:auto}
.fs-icom-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:20px 0}.fs-icom-summary>span{padding:15px 18px;border:1px solid #e1e9ef;border-radius:12px;color:#6c8291;font-size:13px}.fs-icom-summary b{display:block;font-size:27px;color:#214e6b;margin-bottom:4px}
.fs-icom-legend{display:flex;gap:18px;flex-wrap:wrap;margin:19px 0;font-size:12px;color:#647f91}.fs-icom-legend span{display:flex;align-items:center;gap:7px}.fs-icom-legend i{width:10px;height:10px;border-radius:3px;background:#cbd5de}.fs-icom-legend .free i{background:#4c997b}.fs-icom-legend .partial i{background:#dcac4d}.fs-icom-legend .full i{background:#c76f68}
.fs-icom-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:22px;align-items:start}.fs-icom-month{min-width:0}.fs-icom-weekdays,.fs-icom-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px}.fs-icom-weekdays{padding:9px 0 12px;color:#8596a2;text-align:center;font-size:12px;font-weight:650}
.fs-icom-calendar .fs-icom-day{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:8px;text-align:left;padding:12px 9px;min-width:0;min-height:103px;border-radius:11px;overflow-wrap:anywhere;border:1px solid #cce3d8;background:#f0f8f4;color:#36745b;box-shadow:none}.fs-icom-day .fs-icom-day-number{font-size:16px;font-weight:700;color:#314f65}.fs-icom-day strong{font-size:11px;line-height:1.35;font-weight:650}.fs-icom-day small{font-size:10px;line-height:1.4;color:inherit}
.fs-icom-calendar .fs-icom-day.partial{background:#fff8e9;border-color:#eddba9;color:#966c24}.fs-icom-calendar .fs-icom-day.full{background:#fff0ed;border-color:#edc7c1;color:#ab5c53}.fs-icom-calendar .fs-icom-day.outside,.fs-icom-calendar .fs-icom-day.closed{background:#f2f4f6;border-color:#e1e7ec;color:#8998a4}.fs-icom-calendar .fs-icom-day.review{background:#fff3e7;border-color:#dca867;color:#9b6523}.fs-icom-calendar .fs-icom-day.selected{outline:2px solid #276d97;outline-offset:1px}.fs-icom-day.today .fs-icom-day-number{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:4px}.fs-icom-blank{min-height:80px}
.fs-icom-detail{padding:21px;border:1px solid #dce8ef;border-radius:15px;background:#f8fbfd;min-width:0}.fs-icom-detail h3{font-size:19px;line-height:1.45;text-transform:capitalize;margin:9px 0 14px}.fs-icom-status{display:inline-block;font-size:11px;padding:7px 11px;border-radius:20px;font-weight:650;background:#e5f2eb;color:#3b7b62}.fs-icom-status.full{background:#f9e2de;color:#ad5950}.fs-icom-status.partial,.fs-icom-status.review{background:#fff0d4;color:#9e722a}.fs-icom-status.closed,.fs-icom-status.outside{background:#e9eef2;color:#7f919f}
.fs-icom-day-totals{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:20px 0 10px}.fs-icom-day-totals>div{padding:13px;background:#fff;border:1px solid #e2ebf1;border-radius:10px}.fs-icom-day-totals b{display:block;font-size:25px;color:#2e5977}.fs-icom-day-totals span{font-size:11px;line-height:1.4;color:#6e8798}.fs-icom-breakdown,.fs-icom-note{font-size:12px;line-height:1.65;color:#718999}.fs-icom-bookings{list-style:none;margin:18px 0;padding:0;display:grid;gap:10px}.fs-icom-bookings li{background:#fff;border:1px solid #dee9f1;border-radius:11px;padding:13px;display:grid;gap:6px;min-width:0}.fs-icom-bookings li>div{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.fs-icom-bookings strong{font-size:13px;overflow-wrap:anywhere}.fs-icom-bookings b{font-size:11px;white-space:nowrap;color:#4f7690}.fs-icom-bookings small{font-size:11px;color:#8196a5;line-height:1.5}.fs-icom-bookings a{font-size:12px;color:#247aa4;overflow-wrap:anywhere}.fs-icom-booking-status{font-size:11px;color:#547892}.fs-icom-manage{display:block;text-align:center;padding:12px;background:#e9f2f8;border-radius:10px;color:#2c6588;font-size:12px;text-decoration:none;font-weight:650}.fs-icom-planning-note{font-size:12px;color:#8497a5;line-height:1.65;margin:20px 0 0}.fs-icom-loading{padding:40px;text-align:center;font-size:14px;color:#6d8a9e}
.fs-icom-calendar :is(button,input,a):focus-visible{outline:3px solid #6aa3c6;outline-offset:3px}
.fs-community-example-disclosure{margin:16px 0;border:1px dashed #bfd5e2;border-radius:15px;background:#f8fbfd;overflow:hidden}.fs-community-example-disclosure>summary{padding:15px 18px;font-size:13px;color:#52778f;cursor:pointer;font-weight:600}.fs-community-example{display:grid;grid-template-columns:minmax(170px,.65fr) minmax(0,1fr);gap:25px;padding:22px;text-align:left}.fs-community-example-visual{display:grid;place-items:center;background:#e5f1f7;color:#5c8ba8;border-radius:14px;min-height:220px}.fs-community-example-visual svg{width:90%;max-width:320px}.fs-community-example-copy{display:grid;gap:11px;align-content:center}.fs-community-example-badge{font-size:11px;letter-spacing:.025em;color:#8a713e}.fs-community-example h3{font-size:22px;margin:0}.fs-community-example-copy>strong{font-size:16px;color:#356681}.fs-community-example-copy p{font-size:14px;line-height:1.6;color:#6b8596;margin:0}.fs-community-example-copy small{font-size:12px;color:#7b94a4}.fs-community-example-contact{display:grid;gap:5px;border-top:1px solid #dce7ee;padding-top:12px;font-size:12px;color:#6e8899}.fs-community-example-contact b{color:#42677f}.fs-community-example button{justify-self:start}
@media(max-width:1300px){.fs-icom-layout{grid-template-columns:minmax(0,1fr)}.fs-icom-detail{display:block}.fs-icom-bookings{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.fs-icom-calendar{padding:15px}.fs-icom-month-nav{padding:11px;gap:6px}.fs-icom-month-nav h3{font-size:17px;min-width:0;flex:1;text-align:center}.fs-icom-month-nav .fs-icom-today{margin-left:0}.fs-icom-summary{gap:7px}.fs-icom-summary>span{font-size:11px;padding:10px}.fs-icom-summary b{font-size:23px}.fs-icom-weekdays,.fs-icom-days{gap:4px}.fs-icom-calendar .fs-icom-day{padding:8px 4px;min-height:89px;gap:6px;border-radius:7px}.fs-icom-day strong{font-size:9px}.fs-icom-day small{font-size:9px}.fs-icom-day .fs-icom-day-number{font-size:14px}.fs-icom-weekdays{font-size:10px}.fs-icom-bookings{grid-template-columns:1fr}.fs-icom-legend{gap:10px;font-size:11px}.fs-community-example{grid-template-columns:1fr;padding:16px;gap:18px}.fs-community-example-visual{min-height:160px}.fs-community-example-visual svg{max-width:230px}}

/* V18 — Retour de la liste de foire : joindre, vérifier, envoyer. */
.fs-foire-card .fs-foire-form { grid-template-columns: minmax(0, 1fr); gap: 14px; }
.fs-foire-card .fs-foire-upload {
  display: grid; grid-template-columns: 48px minmax(0, 1fr) auto; align-items: center;
  gap: 16px; padding: 22px; border: 2px solid #83c7e4; border-radius: 18px;
  background: #edf8fe; color: #123d59; transition: border-color .15s, background .15s;
}
.fs-foire-card .fs-foire-upload span {
  padding: 0; border: 0; border-radius: 0; background: transparent; color: inherit;
  font-size: inherit; font-weight: inherit; text-align: left; white-space: normal;
  overflow: visible; text-overflow: clip; min-width: 0;
}
.fs-foire-card .fs-foire-upload:hover { background: #e3f4fd; border-color: #2083ae; }
.fs-foire-card .fs-foire-upload:focus-within { outline: 3px solid #086b9b; outline-offset: 4px; }
.fs-foire-card .fs-foire-upload .fs-foire-upload-icon {
  display: grid; place-items: center; width: 48px; height: 48px; border-radius: 14px;
  background: #d1edf9; color: #08628d; font-size: 30px; font-weight: 800;
}
.fs-foire-card .fs-foire-upload-copy { display: grid; gap: 6px; }
.fs-foire-card .fs-foire-upload-copy strong { font-size: 17px; line-height: 1.35; }
.fs-foire-card .fs-foire-upload .fs-foire-upload-hint { font-size: 13px; line-height: 1.5; color: #39586b; }
.fs-foire-card .fs-foire-upload-copy small { font-size: 11px; line-height: 1.5; color: #4b6473; }
.fs-foire-card .fs-foire-upload .fs-foire-upload-name { font-size: 13px; font-weight: 700; overflow-wrap: anywhere; }
.fs-foire-card .fs-foire-upload .fs-foire-upload-choose {
  padding: 12px 18px; border-radius: 11px; background: #086b9b; color: #fff;
  text-align: center; font-size: 13px; font-weight: 700; line-height: 1.4;
}
.fs-foire-card .fs-foire-upload.is-ready { background: #eff9f3; border-color: #91c6aa; }
.fs-foire-card .fs-foire-upload.is-ready .fs-foire-upload-icon { background: #d3eddf; color: #216443; }
.fs-foire-card .fs-foire-form > .primary-button { justify-self: end; max-width: 100%; white-space: normal; }
@media (max-width: 700px) {
  .fs-foire-card .fs-foire-upload { grid-template-columns: 40px minmax(0, 1fr); padding: 16px; gap: 12px; }
  .fs-foire-card .fs-foire-upload .fs-foire-upload-icon { width: 40px; height: 40px; font-size: 26px; }
  .fs-foire-card .fs-foire-upload-copy strong { font-size: 16px; }
  .fs-foire-card .fs-foire-upload .fs-foire-upload-choose { grid-column: 1 / -1; }
  .fs-foire-card .fs-foire-form > .primary-button { width: 100%; }
}

/* V18 — ICOM : administration du planning et filtre des réservations. */
.fs-icom-planning-editor { margin: 18px 0; border: 1px solid #bddbe8; border-radius: 16px; background: #f0f8fc; overflow: hidden; }
.fs-icom-planning-editor summary { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 18px 20px; cursor: pointer; color: #124767; font-size: 16px; font-weight: 700; }
.fs-icom-planning-editor summary::after { content: '+'; font-size: 24px; }
.fs-icom-planning-editor[open] summary::after { content: '−'; }
.fs-icom-planning-editor summary small { margin-left: auto; font-size: 12px; font-weight: 500; }
.fs-icom-planning-editor form { padding: 0 20px 20px; }
.fs-icom-planning-editor form > p { color: #4a6576; font-size: 13px; line-height: 1.6; }
.fs-icom-planning-editor fieldset { padding: 0; margin: 0; min-width: 0; border: 0; }
.fs-icom-editor-fields { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 14px; }
.fs-icom-editor-fields label { display: grid; gap: 8px; font-size: 13px; font-weight: 700; }
.fs-icom-editor-fields input,.fs-icom-editor-fields select { width: 100%; min-width: 0; min-height: 46px; padding: 10px 12px; border: 1px solid #c6d7e3; border-radius: 10px; background: #fff; color: #163b54; font: inherit; }
.fs-icom-editor-review { display: grid; gap: 6px; padding: 14px 16px; margin: 16px 0; background: #fff; border-radius: 12px; line-height: 1.5; font-size: 13px; }
.fs-icom-editor-review strong { color: #16445d; }
.fs-icom-save-success { color: #246748; font-weight: 700; font-size: 13px; }
.fs-icom-booking-filters { display: flex; flex-wrap: wrap; gap: 6px; margin: 16px 0; }
.fs-icom-booking-filters button { padding: 8px 10px; border: 1px solid #cedce5; background: #fff; color: #36586e; border-radius: 9px; font-size: 12px; cursor: pointer; }
.fs-icom-booking-filters button[aria-pressed=true] { background: #123d59; color: #fff; border-color: #123d59; }
@media(max-width: 950px) { .fs-icom-editor-fields { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media(max-width: 540px) { .fs-icom-editor-fields { grid-template-columns: minmax(0,1fr); } .fs-icom-planning-editor summary small { display: none; } .fs-icom-planning-editor .primary-button { width: 100%; } }

/* V18 — Suivi Foire Monaco. */
.fs-foire-admin { width: 100%; min-width: 0; padding: clamp(16px,2vw,28px); background: #fff; border: 1px solid #dce6ee; border-radius: 20px; }
.fs-foire-admin .fs-admin-section-header { flex-wrap: wrap; }
.fs-foire-admin-metrics { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: 12px; margin: 22px 0 12px; }
.fs-foire-admin-metrics article { display: grid; gap: 8px; padding: 18px; border: 1px solid #dce6ee; border-radius: 14px; background: #f3f8fb; }
.fs-foire-admin-metrics small { color: #4c687b; font-size: 12px; }.fs-foire-admin-metrics strong { color: #143e57; font-size: 24px; }
.fs-foire-admin-note { font-size: 12px; line-height: 1.6; color: #536a7a; }
.fs-foire-admin-toolbar { display: flex; flex-wrap: wrap; gap: 12px; margin: 20px 0; }.fs-foire-admin-toolbar label { flex: 1 1 220px; }
.fs-foire-admin input,.fs-foire-admin select { min-height: 42px; max-width: 100%; padding: 10px 12px; border-radius: 9px; border: 1px solid #cbdce7; font: inherit; background: white; color: #193e56; }
.fs-foire-admin-toolbar input { width: 100%; }.fs-foire-admin button { padding: 10px 14px; border-radius: 9px; border: 1px solid #bdd7e5; background: #edf7fc; color: #15577b; font: inherit; font-size: 12px; cursor: pointer; }.fs-foire-admin button:disabled { opacity: .55; cursor: default; }
.fs-foire-table-wrap { overflow-x: auto; margin-top: 16px; border: 1px solid #dce6ee; border-radius: 13px; }.fs-foire-table-wrap table { width: 100%; border-collapse: collapse; min-width: 880px; text-align: left; font-size: 13px; }.fs-foire-table-wrap th { padding: 14px; background: #edf4f8; color: #476678; font-size: 12px; }.fs-foire-table-wrap td { padding: 16px 14px; border-top: 1px solid #e0e9ef; vertical-align: top; max-width: 270px; overflow-wrap: anywhere; }.fs-foire-table-wrap td small { display: block; color: #607181; font-size: 11px; line-height: 1.5; margin-top: 6px; }.fs-foire-table-wrap td > button,.fs-foire-table-wrap td > a { display: block; margin-top: 10px; }
.fs-foire-admin a { color: #096b9a; }.fs-foire-admin .fs-foire-download-link { display: inline-block; padding: 10px 12px; background: #eaf6f0; color: #216849; border-radius: 9px; font-weight: 700; overflow-wrap: anywhere; }
.fs-foire-admin details { margin-top: 12px; }.fs-foire-admin summary { cursor: pointer; font-weight: 700; line-height: 1.5; }.fs-foire-admin details label { display: grid; gap: 6px; margin: 10px 0; font-size: 12px; }
.fs-foire-request-status { display: inline-block; background: #fff3db; padding: 7px 10px; border-radius: 8px; color: #86581b; font-size: 12px; font-weight: 700; }
.fs-foire-table-wrap td .fs-foire-amount-warning { color: #8a570d; font-weight: 700; }
.fs-foire-admin-pagination { display: flex; align-items: center; justify-content: flex-end; gap: 12px; margin: 16px 0; font-size: 12px; }.fs-foire-admin-pagination > span:first-child { margin-right: auto; }
.fs-foire-admin-fold { padding: 16px; border: 1px solid #dce6ee; background: #f7fafc; border-radius: 12px; }.fs-foire-admin-fold p { font-size: 12px; color: #536a7a; }.fs-foire-admin-fold ul { padding: 0; list-style: none; }.fs-foire-admin-fold li { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 10px; padding: 10px 0; border-bottom: 1px solid #e0e9ef; font-size: 13px; }
.fs-admin-subnav { flex-wrap: wrap; }.fs-admin-subnav a { display: inline-flex; align-items: center; gap: 8px; }.fs-admin-subnav a b { display: inline-grid; place-items: center; min-width: 22px; height: 22px; padding: 0 5px; border-radius: 8px; background: #e3edf4; font-size: 11px; color: #194e6c; }
@media(max-width:1000px){.fs-foire-admin-metrics{grid-template-columns:repeat(3,minmax(0,1fr));}}
@media(max-width:600px){.fs-foire-admin-metrics{grid-template-columns:repeat(2,minmax(0,1fr));}.fs-foire-admin-metrics article{padding:12px;}.fs-foire-admin-metrics strong{font-size:21px;}.fs-foire-admin-toolbar button{width:100%;}}
.fs-foire-template-editor fieldset { border: 0; padding: 0; margin: 16px 0; min-width: 0; }
.fs-foire-template-editor fieldset > label { max-width: 600px; }
.fs-foire-template-editor fieldset > button { margin-top: 14px; }
.fs-foire-template-preview { padding: 16px; border: 1px solid #abd4c4; border-radius: 12px; background: #f0f9f4; }
.fs-foire-template-lines { max-height: 340px; overflow: auto; margin: 14px 0; background: white; border-radius: 10px; }
.fs-foire-template-lines > div { display: flex; gap: 14px; justify-content: space-between; padding: 12px; border-bottom: 1px solid #e3ebe7; font-size: 13px; }
.fs-foire-template-lines strong { white-space: nowrap; }
.fs-community-demo-visual { position: relative; display: grid; place-items: center; min-height: 210px; background: linear-gradient(135deg,#e3f4ed,#dbeaf7); color: #1a5670; }
.fs-community-demo-visual svg { width: 75%; max-width: 300px; height: 180px; }
.fs-community-demo-badge { position: absolute; top: 14px; left: 14px; padding: 7px 12px; border-radius: 9px; background: #fff; color: #205c73; font-size: 12px; font-weight: 700; box-shadow: 0 3px 12px #0c344014; }
.fs-community-demo .fs-community-contact > span { font-size: 12px; line-height: 1.5; color: #617181; }

/* V20 — Créneaux ICOM repliés à l’ouverture de l’éditeur. */
.fs-icom-slots-fold { margin: 18px 0; border: 1px solid #cddfe9; border-radius: 15px; background: #f1f8fc; overflow: hidden; }
.fs-icom-slots-fold > summary { display: flex; align-items: center; gap: 14px; padding: 18px 20px; cursor: pointer; color: #174965; list-style: none; }
.fs-icom-slots-fold > summary::-webkit-details-marker { display: none; }
.fs-icom-slots-fold > summary::after { content: '+'; flex: 0 0 auto; font-size: 24px; line-height: 1; }
.fs-icom-slots-fold[open] > summary::after { content: '−'; }
.fs-icom-slots-fold > summary:focus-visible { outline: 3px solid #1677a2; outline-offset: -4px; border-radius: 14px; }
.fs-icom-slots-fold-title { display: flex; align-items: center; gap: 10px; min-width: 0; flex: 1; font-size: 15px; line-height: 1.4; }
.fs-icom-slots-count { flex-shrink: 0; border-radius: 8px; padding: 6px 9px; background: #dfedf5; font-size: 11px; font-weight: 700; }
.fs-icom-slots-fold-content { padding: 0 14px 14px; }
.fs-icom-slots-fold-content .event-slots-editor { margin: 0; }
.fs-icom-slots-fold-content .event-slot-editor-list { max-height: min(480px,60vh); overflow: auto; overscroll-behavior: contain; }
@media(max-width:600px){.fs-icom-slots-fold > summary{padding:14px;gap:10px;flex-wrap:wrap;}.fs-icom-slots-fold-title{flex-basis:calc(100% - 34px);font-size:14px;}.fs-icom-slots-fold > summary::after{position:relative;margin-left:auto;}.fs-icom-slots-count{font-size:10px;}}

/* V21 — Même espace d’édition pour événements et offres. */
.fs-event-editor .fs-editor-section-body > :is(.event-slots-editor,.blocked-dates-editor) { grid-column: 1 / -1; min-width: 0; width: 100%; margin: 0; }
.fs-event-editor .event-slot-editor-list { max-height: min(480px,60vh); overflow: auto; overscroll-behavior: contain; }
.fs-event-editor .event-slots-editor > header,.fs-event-editor .blocked-dates-editor > header { gap: 12px; flex-wrap: wrap; }
.fs-event-editor .event-slots-editor > header strong { font-size: 15px; }
.fs-event-editor .event-slots-editor > header small { font-size: 12px; line-height: 1.5; }
.fs-event-editor .event-slot-editor-list > article { display: grid; grid-template-columns: 28px repeat(2,minmax(0,1fr)) 32px; gap: 12px; padding: 15px; border: 1px solid #dce6ed; border-radius: 12px; background: #fff; }
.fs-event-editor .event-slot-editor-list > article > .slot-number { grid-column: 1; grid-row: 1 / 3; }
.fs-event-editor .event-slot-editor-list > article > label:nth-of-type(1) { grid-column: 2; grid-row: 1; }
.fs-event-editor .event-slot-editor-list > article > label:nth-of-type(2) { grid-column: 3; grid-row: 1; }
.fs-event-editor .event-slot-editor-list > article > label:nth-of-type(3) { grid-column: 2; grid-row: 2; }
.fs-event-editor .event-slot-editor-list > article > label:nth-of-type(4) { grid-column: 3; grid-row: 2; }
.fs-event-editor .event-slot-editor-list > article > .remove-slot { grid-column: 4; grid-row: 1; width: 32px; min-height: 40px; margin: 0; align-self: end; }
@media(max-width:600px){
 .fs-event-editor .event-slot-editor-list > article { grid-template-columns: minmax(0,1fr) 32px; }
 .fs-event-editor .event-slot-editor-list > article > .slot-number { grid-column: 1; grid-row: 1; }
 .fs-event-editor .event-slot-editor-list > article > label:nth-of-type(n) { grid-column: 1 / -1; grid-row: auto; }
 .fs-event-editor .event-slot-editor-list > article > .remove-slot { grid-column: 2; grid-row: 1; }
}

/* V21 — Agenda annuel plus lisible. */
.agenda-switch { padding: 6px!important; gap: 6px!important; border-radius: 14px!important; }
.agenda-switch button { min-height: 46px; padding: 12px 20px!important; font-size: 15px!important; line-height: 1.4; }
.agenda-switch button small { font-size: 12px!important; min-width: 24px; }
.year-view { padding: clamp(18px,2.5vw,34px)!important; }
.year-view .year-title { margin-bottom: 24px; gap: 16px; align-items: center; }
.year-view .year-title p { font-size: 12px!important; letter-spacing: .1em; }
.year-view .year-title h2 { font-size: clamp(28px,2.5vw,36px)!important; line-height: 1.2; }
.year-view .year-title > button { width: 46px!important; height: 46px!important; min-width: 46px; font-size: 22px!important; }
.year-view .year-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr))!important; gap: 18px!important; }
.year-view .year-grid > article { min-width: 0; min-height: 210px!important; height: auto!important; padding: 20px!important; border-radius: 16px; }
.year-view .year-grid > article > div { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; justify-content: space-between; padding-bottom: 15px; }
.year-view .year-grid h3 { font-size: 23px!important; line-height: 1.3; margin: 0; }
.year-view .year-grid > article > div > span { font-size: 13px!important; line-height: 1.4; color: #607181; }
.year-view .year-grid > article > button { display: grid!important; grid-template-columns: 42px minmax(0,1fr) 22px; align-items: center; gap: 12px; width: 100%; min-height: 64px; padding: 12px 0!important; text-align: left; }
.year-view .year-grid > article > button > b { display: grid; place-items: center; width: 42px!important; height: 42px!important; border-radius: 10px; font-size: 16px!important; }
.year-view .year-grid > article > button > span { font-size: 16px!important; line-height: 1.5!important; white-space: normal!important; overflow: visible!important; text-overflow: clip!important; overflow-wrap: anywhere; }
.year-view .year-grid > article > button > i { font-size: 21px!important; }
@media(max-width:1100px){.year-view .year-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}}
@media(max-width:650px){.year-view .year-grid{grid-template-columns:minmax(0,1fr)!important;gap:14px!important;}.year-view .year-grid > article{min-height:150px!important;padding:16px!important;}.agenda-switch{display:flex;flex-wrap:wrap;}.agenda-switch button{flex:1;padding:10px 12px!important;}}

/* V22 — fenêtres détaillées, gestion des demandes et galeries */
.fs-detail-dialog{position:fixed;inset:0;box-sizing:border-box;width:min(1120px,calc(100vw - 32px));max-width:none;max-height:calc(100dvh - 32px);margin:auto;padding:0;border:1px solid #d9e6ef;border-radius:24px;background:#fff;color:#112f47;box-shadow:0 24px 100px #061b3b55;overflow:auto;overscroll-behavior:contain;text-align:left;font-size:16px;line-height:1.5}
.fs-detail-dialog::backdrop{background:#091b36a6;backdrop-filter:blur(5px)}
.fs-detail-dialog-head{position:sticky;top:0;z-index:2;display:flex;align-items:center;gap:20px;justify-content:space-between;padding:20px 28px;background:#fff;border-bottom:1px solid #e2eaf1}
.fs-detail-dialog-head h2{margin:0;font-size:clamp(20px,2vw,28px);line-height:1.25;overflow-wrap:anywhere}
.fs-detail-dialog-head>button{flex:0 0 44px;width:44px;height:44px;border:1px solid #d8e3ed;border-radius:50%;background:#f0f6fa;color:#113850;font-size:26px;cursor:pointer}
.fs-detail-dialog button:focus-visible,.fs-community button:focus-visible{outline:3px solid #1984aa;outline-offset:3px}
.fs-announcement-detail{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:32px;padding:28px}
.fs-announcement-gallery{min-width:0}
.fs-announcement-main{display:block;width:100%;height:clamp(240px,48vh,520px);object-fit:contain;background:#f0f4f7;border-radius:16px}
.fs-gallery-navigation{display:flex;align-items:center;justify-content:space-between;margin:12px 0;color:#456075}
.fs-gallery-navigation button{min-width:44px;min-height:44px;background:#eaf4f9;border:1px solid #d5e5ee;border-radius:12px;color:#0a526e;cursor:pointer}
.fs-gallery-thumbnails{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}
.fs-gallery-thumbnails button{padding:3px;border:2px solid transparent;border-radius:10px;background:#eef3f6;cursor:pointer}
.fs-gallery-thumbnails button[aria-pressed=true]{border-color:#0b7b9e;background:#dbf2fa}
.fs-gallery-thumbnails img{display:block;width:100%;height:60px;object-fit:cover;border-radius:6px}
.fs-announcement-info{min-width:0;display:flex;flex-direction:column;gap:16px}
.fs-announcement-info p{margin:0}.fs-announcement-info .fs-community-contact{margin-top:auto;display:flex;flex-direction:column;gap:10px;background:#edf7f4;border:1px solid #d6e9df;border-radius:16px;padding:20px;overflow-wrap:anywhere}
.fs-detail-description{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.65}
.fs-announcement-no-photo{display:grid;place-content:center;min-height:240px;text-align:center;background:#eef4f7;border-radius:16px;color:#577383;font-size:24px}
.fs-announcement-no-photo p{font-size:16px}
.fs-community-card .fs-community-open-image{position:relative;display:block;width:100%;border:0;padding:0;border-radius:0;background:#eaf2f7;cursor:pointer;color:#164a64}
.fs-community-open-image>img{display:block;width:100%;height:220px;object-fit:cover}
.fs-community-photo-count{position:absolute;right:14px;bottom:14px;background:#fff;color:#112f47;padding:5px 10px;border-radius:20px;font-size:13px;font-weight:700;box-shadow:0 2px 12px #0002}
.fs-community-card .fs-community-open-title{padding:0;border:0;background:none;color:inherit;font:inherit;line-height:inherit;text-align:left;cursor:pointer}
.fs-community-card .fs-community-view{display:flex;align-items:center;justify-content:space-between;min-height:44px;border:1px solid #d4e7ef;background:#edf7fb;border-radius:12px;padding:10px 14px;color:#085e80;font-size:15px;font-weight:700;margin:0 0 16px;cursor:pointer}
.fs-upload-gallery{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px!important}
.fs-upload-gallery figure{margin:0;display:flex;flex-direction:column;gap:8px;padding:10px;background:#fff;border:1px solid #dae6ee;border-radius:14px;min-width:0}
.fs-upload-gallery figure img{width:100%!important;height:140px!important;object-fit:cover;border-radius:8px}
.fs-upload-gallery figcaption{font-size:13px;font-weight:700;color:#28536b}
.fs-upload-gallery figure button{min-height:36px;font-size:13px;padding:7px 9px}
.fs-multi-upload>label{display:flex;flex-direction:column;gap:10px}.fs-multi-upload>small{display:block;margin:12px 0}
.fs-request-edit-form{padding:28px}.fs-request-edit-form>p{margin:0 0 20px}.fs-request-edit-form fieldset{border:0;padding:0;margin:24px 0}.fs-request-edit-form legend{font-size:18px;font-weight:700;margin-bottom:16px}
.fs-detail-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.fs-request-edit-form label,.fs-foire-deadline label{display:flex;flex-direction:column;gap:8px;font-size:14px;font-weight:650;color:#31516b;margin-bottom:16px}
.fs-request-edit-form input,.fs-request-edit-form select,.fs-request-edit-form textarea,.fs-foire-deadline input{box-sizing:border-box;width:100%;min-height:48px;padding:12px 14px;border:1px solid #cedee9;background:#fff;border-radius:12px;font:inherit;color:#102e49}
.fs-request-edit-form small,.fs-detail-hint{font-size:13px;font-weight:400;color:#607485;line-height:1.5}
.fs-request-edit-form footer{display:flex;justify-content:flex-end;padding-top:18px;border-top:1px solid #e0eaf1}
.fs-request-locked{display:block;color:#677787;font-size:13px;padding:10px;background:#f1f4f7;border-radius:10px}
.fs-foire-deadline{display:flex;align-items:center;flex-wrap:wrap;gap:20px;padding:20px 24px;background:#edf7fb;border:1px solid #cfe5ef;border-radius:16px;margin:20px 0}
.fs-foire-deadline>div{flex:1 1 300px}.fs-foire-deadline p{font-size:14px;color:#456477;margin:6px 0}.fs-foire-deadline label{margin:0;min-width:180px}
.fs-foire-deadline button{min-height:46px;padding:10px 18px;background:#0b6181;color:white;border:0;border-radius:12px;font-weight:700;cursor:pointer}
.fs-detail-dialog .fs-foire-card{padding:24px}.fs-foire-policy{padding:16px;background:#edf6fb;border:1px solid #d1e5f0;border-radius:14px;color:#2a536c;font-size:14px}
.fs-foire-table-wrap td>button{margin-top:10px;white-space:normal;min-height:42px}.fs-detail-dialog button:disabled{opacity:.55;cursor:wait}
@media(max-width:760px){.fs-detail-dialog{width:calc(100vw - 16px);max-height:calc(100dvh - 16px);border-radius:18px}.fs-detail-dialog-head{padding:16px}.fs-announcement-detail{grid-template-columns:1fr;padding:16px;gap:22px}.fs-announcement-main{height:300px;max-height:45dvh}.fs-detail-form-grid{grid-template-columns:1fr;gap:4px}.fs-request-edit-form{padding:18px}.fs-upload-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.fs-foire-deadline{padding:16px}.fs-foire-deadline label,.fs-foire-deadline button{flex:1 1 100%}.fs-detail-dialog .fs-foire-card{padding:16px}.fs-gallery-thumbnails img{height:48px}}
/* Tableau des formules sous les raccourcis de gestion */
.fs-formula-panel{width:100%;min-width:0;box-sizing:border-box;margin-top:24px;border:1px solid #dce7ef;border-radius:22px;background:white;overflow:hidden;box-shadow:0 8px 32px #17354b06}
.fs-formula-panel>header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:26px 28px;border-bottom:1px solid #e3edf3}.fs-formula-panel h2{font-size:24px;letter-spacing:-.03em;line-height:1.25;margin:5px 0 8px}.fs-formula-panel header p:not(.eyebrow){font-size:14px;color:#60788b;margin:0}.fs-formula-count{white-space:nowrap;background:#eaf6f3;color:#216d58;font-size:14px;padding:9px 14px;border-radius:22px;font-weight:700}
.fs-formula-tools{display:grid;grid-template-columns:minmax(240px,2fr) repeat(4,minmax(140px,1fr)) auto;gap:14px;padding:20px 24px;background:#f5f9fb;align-items:end}.fs-formula-tools label,.fs-formula-pagination label{display:flex;flex-direction:column;gap:7px;color:#466379;font-size:12px;font-weight:650}
.fs-formula-tools input,.fs-formula-tools select,.fs-formula-pagination select{box-sizing:border-box;width:100%;min-width:0;min-height:44px;border:1px solid #d4e1eb;border-radius:10px;background:#fff;padding:10px 12px;font-size:14px;color:#193e57;font-family:inherit}
.fs-formula-reset{border:1px solid #d4e1eb;border-radius:10px;padding:10px 14px;min-height:44px;background:white;color:#365b72;cursor:pointer;font-weight:600}
.fs-formula-table-scroll{overflow:auto;max-height:680px;overscroll-behavior:contain}.fs-formula-table-scroll table{width:100%;min-width:1050px;border-collapse:separate;border-spacing:0;text-align:left;font-size:14px;color:#355066;table-layout:auto}.fs-formula-table-scroll thead th{position:sticky;top:0;z-index:1;background:#edf4f8;color:#4c687d;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.045em;padding:15px 16px;border-block:1px solid #d9e6ee;white-space:nowrap}
.fs-formula-table-scroll td{padding:15px 16px;border-bottom:1px solid #e6edf2;vertical-align:middle;line-height:1.45;max-width:250px;overflow-wrap:anywhere}.fs-formula-table-scroll tbody tr:nth-child(even){background:#f9fbfd}.fs-formula-table-scroll tbody tr:hover{background:#eff8fc}.fs-formula-table-scroll strong{font-weight:650;color:#16384f}.fs-formula-table-scroll small{display:block;color:#7b8c9a;font-size:12px;margin-top:5px}.fs-formula-description{color:#6c8090;font-size:13px}.fs-formula-money{font-weight:700;white-space:nowrap;color:#085e80}.fs-formula-status{display:inline-block;border-radius:8px;background:#e9f5ef;color:#287155;font-size:11px;font-weight:700;padding:6px 9px;max-width:150px}.fs-formula-status.coming_soon,.fs-formula-status.unavailable{background:#eef1f4;color:#69798a}.fs-formula-status.disabled,.fs-formula-status.expired{background:#fff3e7;color:#9e641d}.fs-formula-action{position:sticky;right:0;background:inherit;text-align:center;box-shadow:-1px 0 #e3edf4}.fs-formula-table-scroll thead th:last-child{right:0;z-index:2}.fs-formula-edit{display:inline-grid;place-content:center;width:42px;height:42px;border:1px solid #bcdde9;border-radius:11px;background:#e7f4fa;color:#075a7c;cursor:pointer}.fs-formula-edit:hover{background:#d5ecf6}.fs-formula-edit:focus-visible{outline:3px solid #2588ab;outline-offset:2px}.fs-formula-empty{text-align:center;padding:40px!important;color:#718597}
.fs-formula-pagination{display:flex;align-items:center;flex-wrap:wrap;gap:20px;padding:18px 24px;background:#fbfcfd;color:#647d8f;font-size:13px}.fs-formula-pagination label{flex-direction:row;align-items:center}.fs-formula-pagination select{width:auto;min-height:38px;font-size:13px}.fs-formula-pagination nav{display:flex;align-items:center;gap:14px;margin-left:auto}.fs-formula-pagination button{width:40px;height:40px;border:1px solid #d5e1eb;border-radius:10px;background:white;color:#1f607e;cursor:pointer}.fs-formula-pagination button:disabled{opacity:.35;cursor:default}.option-editor-row:focus-within{outline:2px solid #62b9d8;outline-offset:3px}
@media(max-width:1500px){.fs-formula-tools{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:800px){.fs-formula-tools{grid-template-columns:repeat(2,minmax(0,1fr));padding:16px}.fs-formula-search{grid-column:1/-1}.fs-formula-panel>header{flex-direction:column;align-items:flex-start;padding:20px}.fs-formula-pagination{padding:16px;gap:12px}.fs-formula-pagination nav{margin-left:0}.fs-formula-pagination label{flex-direction:column;align-items:flex-start}.fs-formula-table-scroll{max-height:65dvh}}@media(max-width:430px){.fs-formula-tools{grid-template-columns:1fr}.fs-formula-search{grid-column:auto}}
.fs-formula-heading-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:12px}.fs-formula-heading-actions button{min-height:44px;padding:11px 16px;border-radius:11px;border:0;background:#0b617f;color:white;font:inherit;font-size:14px;font-weight:700;cursor:pointer}.fs-formula-action{min-width:105px;white-space:nowrap;background-color:#fff}.fs-formula-action button{vertical-align:middle}.fs-formula-delete{display:inline-grid;place-content:center;width:40px;height:42px;margin-left:6px;border:1px solid #ecd5d5;border-radius:11px;background:#fff8f7;color:#a6443d;cursor:pointer}.fs-formula-delete:hover{background:#ffefed}.fs-formula-delete-confirm{min-height:44px;padding:10px 16px;border:0;border-radius:11px;background:#ac3d35;color:white;font-weight:700;cursor:pointer}.fs-request-edit-form footer{gap:12px}.fs-formula-delete:focus-visible{outline:3px solid #a6443d;outline-offset:2px}
.fs-bulk-tools.is-compact{padding:14px 18px!important;margin:8px 0 20px!important;border-radius:14px!important;background:#edf6fb!important;min-height:0!important;height:auto!important}.fs-bulk-tools .fs-bulk-bar{min-height:0!important;height:auto!important;align-items:center!important}.fs-bulk-tools .fs-bulk-intro{display:block!important;visibility:visible!important;opacity:1!important;flex:1 1 280px!important;margin:0!important;padding:0!important}.fs-bulk-tools .fs-bulk-intro strong{display:block!important;font-size:15px!important;line-height:1.35!important;color:#183f59!important;margin:0!important}.fs-bulk-tools .fs-bulk-intro p{display:block!important;font-size:13px!important;line-height:1.4!important;color:#587387!important;margin:4px 0 0!important}.fs-bulk-tools .fs-bulk-buttons{flex:0 1 auto!important;gap:8px!important;margin:0!important;padding:0!important}.fs-bulk-tools .fs-bulk-buttons button{min-height:42px!important;padding:10px 14px!important;border-radius:10px!important;font-size:13px!important;line-height:1.3!important}.fs-bulk-tools.is-selecting{padding:18px!important;background:#f0f7fb!important;border-color:#b6d8e8!important}
.fs-offer-dialog .modal-content>dl{margin:24px 0!important;padding:0!important}.fs-offer-dialog .modal-content>dl>div{display:grid!important;grid-template-columns:minmax(160px,.8fr) minmax(0,1.8fr)!important;gap:20px!important;align-items:start!important;padding:18px 0!important;border-bottom:1px solid #e3eaf0!important}.fs-offer-dialog .modal-content>dl dt{font-size:17px!important;line-height:1.45!important;color:#5b7083!important;font-weight:500!important}.fs-offer-dialog .modal-content>dl dd{font-size:18px!important;line-height:1.45!important;color:#17394f!important;font-weight:650!important;margin:0!important;text-align:right!important;overflow-wrap:anywhere}
.fs-offer-dialog .fs-offer-conditions{padding:20px 24px!important;margin:22px 0!important;background:#f2f7fa!important;border:1px solid #dce7ee!important;border-radius:16px!important}.fs-offer-dialog .fs-offer-conditions>strong{display:block!important;font-size:13px!important;line-height:1.4!important;letter-spacing:.06em!important;color:#31546e!important;margin:0 0 12px!important}.fs-offer-dialog .fs-offer-conditions ul{padding-left:18px!important;margin:0!important}.fs-offer-dialog .fs-offer-conditions :is(li,p){font-size:15px!important;line-height:1.55!important;color:#466176!important;font-weight:400!important;margin:5px 0!important}.fs-offer-dialog .fs-offer-conditions li::marker{color:#7b9daf}
.fs-mobile-five{display:none}
@media(max-width:900px){
 .sidebar,.sidebar.has-admin,.sidebar.is-employee{display:none!important}
 .main-area{margin-left:0!important;width:100%!important;padding-bottom:calc(84px + env(safe-area-inset-bottom,0px))!important}
 .fs-mobile-five{position:fixed;inset:auto 0 0;z-index:90;display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;align-items:stretch;padding:7px 8px calc(7px + env(safe-area-inset-bottom,0px));box-sizing:border-box;width:100%;background:#f7fbff;border-top:1px solid #d4e3ef;box-shadow:0 -4px 20px #092d4a0d}
 .fs-mobile-five>button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;min-width:0;min-height:58px;margin:0;padding:5px 1px;border:0;border-radius:12px;background:transparent;color:#536d83;font:inherit;font-size:11px;font-weight:600;line-height:1.2;cursor:pointer}
 .fs-mobile-five>button.active{color:#075a82;background:#dceef9;font-weight:750}.fs-mobile-five svg{display:block;flex:none;width:24px;height:24px}.fs-mobile-five span{max-width:100%;white-space:nowrap}.fs-mobile-five>button:focus-visible{outline:2px solid #257da3;outline-offset:-2px}
 .mobile-drawer-backdrop{z-index:1500!important}.mobile-drawer{padding-bottom:calc(25px + env(safe-area-inset-bottom,0px))!important}
 .fs-category-filters button,.fs-subfilters button{background:#edf6ff!important;color:#234c6c!important;border:1px solid #cfdfec!important;box-shadow:none!important}.fs-category-filters button.active,.fs-subfilters button.active{background:#d9edfc!important;color:#103f60!important;border-color:#85b7d5!important;box-shadow:inset 0 -2px #448db6!important}.fs-category-filters .fs-chip-count,.fs-subfilters button b{background:#cce3f3!important;color:#174967!important;opacity:1!important}.fs-category-filters .fs-chip-icon{color:#275d80!important}.fs-category-filters button.is-off{opacity:1!important;color:#687b8a!important;background:#f0f4f8!important}.fs-category-select{background:#e7f3fd!important;color:#244e6d!important;border-color:#b5d6eb!important}
}
@media(max-width:600px){.fs-bulk-tools .fs-bulk-intro{flex-basis:100%!important}.fs-bulk-tools .fs-bulk-buttons{width:100%!important}.fs-bulk-tools.is-compact .fs-bulk-buttons button{width:100%!important}.fs-offer-dialog .modal-content>dl>div{grid-template-columns:1fr!important;gap:5px!important;padding:14px 0!important}.fs-offer-dialog .modal-content>dl dt{font-size:15px!important}.fs-offer-dialog .modal-content>dl dd{font-size:17px!important;text-align:left!important}.fs-offer-dialog .fs-offer-conditions{padding:16px!important}.fs-offer-dialog .fs-offer-conditions :is(li,p){font-size:14px!important;line-height:1.55!important}}
.pwa-install-button .pwa-install-icon{width:42px;height:42px;object-fit:contain;flex:0 0 42px;border-radius:11px;background:#fff;border:1px solid #d8e5ee}
@media(max-width:900px){
 .mobile-drawer .mobile-admin-group{padding:14px!important;border:1px solid #d5e3ee!important;border-radius:16px!important;background:#f1f7fc!important;margin-top:18px!important}.mobile-drawer .mobile-admin-group>p{color:#4b718e!important;font-size:11px!important;letter-spacing:.09em!important;margin:0 0 12px!important}
 .mobile-drawer .fs-admin-mobile-groups{gap:8px!important}.mobile-drawer .fs-admin-mobile-groups>button,.mobile-drawer .fs-admin-mobile-groups summary{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:flex-start!important;gap:12px!important;min-height:54px!important;padding:11px 13px!important;margin:0!important;border:1px solid #dce7ef!important;border-radius:12px!important;background:white!important;text-align:left!important;width:100%!important;box-sizing:border-box!important;line-height:1.3!important}
 .mobile-drawer .fs-admin-mobile-groups .fs-admin-menu-icon{display:grid!important;place-items:center!important;flex:0 0 32px!important;width:32px!important;height:32px!important;border-radius:9px!important;background:#e7f2fa!important;color:#216384!important}.fs-admin-menu-icon svg{width:19px!important;height:19px!important}.mobile-drawer .fs-admin-mobile-groups strong{font-size:14px!important;color:#24465f!important;font-weight:650!important;line-height:1.35!important}.mobile-drawer .fs-admin-mobile-groups>button>i{margin-left:auto!important;font-style:normal!important;font-size:22px!important;color:#7593a9!important}.mobile-drawer .fs-admin-mobile-groups details{border:0!important;background:transparent!important}.mobile-drawer .fs-admin-mobile-groups details[open]>summary,.mobile-drawer .fs-admin-mobile-groups>button.active{background:#e0effa!important;border-color:#9bc7df!important}.mobile-drawer .fs-admin-mobile-groups summary:after{font-size:18px!important;font-weight:500!important;color:#4c7792!important}.mobile-drawer .fs-admin-mobile-groups details>button{display:flex!important;flex-direction:row!important;align-items:center!important;min-height:44px!important;padding:10px 14px 10px 26px!important;margin:4px 0 0 18px!important;width:calc(100% - 18px)!important;background:#fff!important;border:0!important;border-left:2px solid #d3e5f0!important;border-radius:0 9px 9px 0!important;text-align:left!important}.mobile-drawer .fs-admin-mobile-groups details>button.active{background:#dfeff9!important;border-left-color:#3f91b9!important}
}
@media(max-width:600px){
 .my-enrollments.compact-requests>article{padding:18px!important;border-radius:18px!important}.my-enrollments.compact-requests .request-select{position:static!important;display:flex!important;justify-content:flex-end!important;gap:7px!important;width:100%!important;margin:0 0 12px!important;font-size:12px!important;color:#607b90!important}.my-enrollments.compact-requests .request-select input{width:18px!important;height:18px!important}.my-enrollments.compact-requests .request-card-head{display:grid!important;grid-template-columns:42px minmax(0,1fr)!important;gap:10px 12px!important;align-items:start!important}.my-enrollments.compact-requests .request-symbol{width:42px!important;height:42px!important;font-size:20px!important;border-radius:12px!important}.my-enrollments.compact-requests .request-main strong{font-size:18px!important;line-height:1.3!important;display:block!important}.my-enrollments.compact-requests .request-main small,.my-enrollments.compact-requests .request-main time{font-size:12px!important;line-height:1.5!important;white-space:normal!important}.my-enrollments.compact-requests .request-card-head>.status-chip{grid-column:2!important;justify-self:start!important;max-width:100%!important;margin:2px 0 0!important;font-size:11px!important;padding:6px 10px!important;position:static!important}
 .my-enrollments .fs-progress-6{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:9px!important;padding:12px!important;background:#f1f6fa!important;border-radius:14px!important;margin-top:18px!important}.my-enrollments .fs-progress-6:before,.my-enrollments .fs-progress-6:after,.my-enrollments .fs-progress-6>div:before,.my-enrollments .fs-progress-6>div:after{display:none!important}.my-enrollments .fs-progress-6>div{position:relative!important;display:flex!important;flex-direction:column!important;align-items:center!important;gap:7px!important;padding:10px 4px!important;border-radius:11px!important;background:#fff!important;border:1px solid #e0e9f0!important;min-width:0!important}.my-enrollments .fs-progress-6 i{position:static!important;display:grid!important;place-items:center!important;width:30px!important;height:30px!important;margin:0!important;font-size:15px!important;box-shadow:none!important;background:#edf1f5!important;color:#90a0ad!important;border:0!important}.my-enrollments .fs-progress-6 span{font-size:11px!important;line-height:1.35!important;color:#738495!important;max-width:none!important}.my-enrollments .fs-progress-6 .done i{background:#e1f4ec!important;color:#258064!important}.my-enrollments .fs-progress-6 .done span{color:#315568!important}.my-enrollments .fs-progress-6 .current{border-color:#85bdd8!important;background:#eaf5fc!important}.my-enrollments .fs-progress-6 .current i{background:#1b799f!important;color:#fff!important}.my-enrollments .fs-progress-6 .current span{font-weight:750!important;color:#165371!important}.my-enrollments .fs-progress-6.terminal .current{background:#fff1ee!important;border-color:#e7b2a9!important}.my-enrollments .fs-progress-6.terminal .current i{background:#aa4a3e!important}
 .my-enrollments.compact-requests .request-card-footer{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:12px!important;margin-top:16px!important}.my-enrollments.compact-requests .request-card-actions{display:flex!important;flex-wrap:wrap!important;gap:8px!important;width:100%!important}.my-enrollments.compact-requests .request-card-actions button{flex:1 1 140px!important;min-height:44px!important;font-size:13px!important;white-space:normal!important}.my-enrollments.compact-requests .fs-request-locked{width:100%!important}
}
@media(max-width:600px){
 .fs-notice-board,.fs-info-docs{padding:18px 14px!important;border-radius:18px!important}.fs-notice-board>header,.fs-info-docs>header{display:flex!important;flex-wrap:wrap!important;align-items:center!important;gap:12px!important;margin-bottom:18px!important}.fs-notice-board>header h2,.fs-info-docs>header h2{font-size:23px!important;line-height:1.2!important}.fs-info-add{min-height:42px!important;padding:10px 12px!important;font-size:13px!important;border-radius:10px!important}
 .fs-notice-list{gap:12px!important}.fs-notice{display:grid!important;grid-template-columns:34px minmax(0,1fr)!important;gap:12px!important;padding:16px!important;border-radius:14px!important;border-left-width:3px!important;align-items:start!important}.fs-notice .fs-notice-icon{width:34px!important;height:34px!important;display:grid!important;place-content:center!important;font-size:17px!important;border-radius:10px!important;align-self:start!important;margin:0!important}.fs-notice-copy{min-width:0!important}.fs-notice-copy>small{display:block!important;font-size:10px!important;letter-spacing:.08em!important;margin-bottom:5px!important}.fs-notice-copy>strong{display:block!important;font-size:16px!important;line-height:1.35!important;margin-bottom:8px!important;color:#153d58!important}.fs-notice-copy>p{font-size:14px!important;line-height:1.6!important;margin:0!important;color:#4a6579!important}.fs-notice-tools{grid-column:1/-1!important;display:flex!important;justify-content:flex-end!important;align-items:center!important;gap:8px!important;margin:0!important;padding-top:10px!important;border-top:1px solid #e0ebf2!important}.fs-notice-action{margin-right:auto!important;font-size:13px!important}
 .fs-info-grid{display:grid!important;grid-template-columns:1fr!important;gap:14px!important}.fs-info-grid>article{display:grid!important;grid-template-columns:40px minmax(0,1fr)!important;gap:5px 12px!important;padding:18px!important;border-radius:16px!important;align-items:start!important;min-width:0!important}.fs-info-grid>article>.fs-info-icon{grid-row:1/3!important;grid-column:1!important;width:40px!important;height:40px!important;border-radius:11px!important;font-size:21px!important;margin:0!important;align-self:start!important}.fs-info-grid>article>div:not(.fs-info-actions){display:contents!important}.fs-info-grid>article>div:not(.fs-info-actions)>p{grid-column:2!important;font-size:10px!important;line-height:1.4!important;letter-spacing:.08em!important;margin:0!important}.fs-info-grid>article>div:not(.fs-info-actions)>h3{grid-column:2!important;font-size:17px!important;line-height:1.4!important;margin:0 0 9px!important;font-weight:650!important}.fs-info-grid>article>div:not(.fs-info-actions)>span{grid-column:1/-1!important;display:block!important;font-size:14px!important;line-height:1.6!important;color:#4d697e!important;margin:0!important}.fs-info-grid>article>div:not(.fs-info-actions)>small{grid-column:1/-1!important;font-size:12px!important;margin:5px 0!important;color:#7b8d9b!important}
 .fs-info-actions{grid-column:1/-1!important;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;align-items:stretch!important;gap:10px!important;margin-top:13px!important;padding:0!important;width:100%!important}.fs-info-actions>.primary-button,.fs-info-actions>a{position:static!important;display:flex!important;justify-content:center!important;align-items:center!important;min-width:0!important;width:auto!important;min-height:44px!important;height:auto!important;padding:11px 8px!important;font-size:13px!important;line-height:1.3!important;border-radius:11px!important;margin:0!important;box-shadow:none!important}.fs-info-actions>a:not(.primary-button){border:1px solid #cfe2ee!important;background:#edf6fc!important;color:#1c6288!important;font-weight:650!important;text-decoration:none!important}.fs-info-admin{grid-column:1/-1!important;display:flex!important;justify-content:flex-end!important;gap:8px!important;margin:0!important}.fs-info-tool{width:40px!important;height:40px!important;min-height:40px!important;border-radius:10px!important;font-size:15px!important;padding:8px!important}.fs-info-actions>.primary-button:only-child{grid-column:1/-1!important}
}
.fs-documents-empty{grid-column:1/-1;padding:24px;border:1px dashed #c9dce9;border-radius:14px;background:#f5f9fc;color:#5e7b90;font-size:14px;line-height:1.5}
@media(max-width:600px){.document-grid{grid-template-columns:1fr!important;gap:14px!important}.document-grid>article{display:grid!important;grid-template-columns:38px minmax(0,1fr)!important;gap:12px!important;padding:18px!important;border-radius:16px!important}.document-grid .document-icon{width:38px!important;height:44px!important;font-size:10px!important;flex:none!important;border-radius:10px!important}.document-grid>article h3{font-size:17px!important;line-height:1.35!important}.document-grid>article>div>span{font-size:14px!important;line-height:1.5!important}.document-grid .resource-card-actions{grid-column:1/-1!important;display:flex!important;align-items:center!important;gap:8px!important;flex-wrap:wrap!important;justify-content:flex-start!important}.document-grid .resource-card-actions :is(a,button){min-height:42px!important;padding:10px 12px!important;border-radius:10px!important;font-size:12px!important}.fs-library-heading h2{font-size:22px!important}.fs-library-heading small{font-size:13px!important;line-height:1.5!important;display:block!important}}
.topbar .topbar-shortcuts .top-action{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:center!important;gap:8px!important;width:auto!important;min-width:0!important;height:44px!important;padding:8px 12px!important;border:1px solid #dce7f0!important;border-radius:12px!important;background:#fff!important;box-shadow:none!important}.topbar .topbar-shortcuts .top-action.active{background:#edf6fc!important;border-color:#9ac6de!important}.topbar .topbar-shortcuts .top-action>i,.topbar .topbar-shortcuts .top-action>svg{position:static!important;display:block!important;flex:0 0 20px!important;width:20px!important;height:20px!important;font-size:21px!important;line-height:20px!important;margin:0!important;background:transparent!important;padding:0!important;color:#216185!important}.topbar .topbar-shortcuts .top-action>b{position:static!important;inset:auto!important;transform:none!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;flex:0 0 auto!important;min-width:23px!important;height:23px!important;width:auto!important;padding:0 6px!important;margin:0!important;border:0!important;border-radius:8px!important;background:#e4f0f8!important;color:#215775!important;font-size:12px!important;font-weight:750!important;line-height:1!important;box-shadow:none!important}.topbar .topbar-shortcuts .bell>b{background:#e75f57!important;color:#fff!important}.topbar .topbar-shortcuts .top-action-label{font-size:13px!important;line-height:1.2!important}
@media(max-width:600px){.topbar{display:flex!important;flex-wrap:nowrap!important;gap:8px!important;padding:12px!important}.topbar>.search{flex:1 1 0!important;min-width:0!important;width:auto!important;margin:0!important}.topbar>.search input{min-width:0!important;width:100%!important;font-size:14px!important}.topbar>.profile{display:none!important}.topbar>.mobile-menu{flex:0 0 32px!important;width:32px!important;min-width:32px!important;padding:3px!important}.topbar .topbar-shortcuts{display:flex!important;flex:0 0 auto!important;gap:6px!important}.topbar .topbar-shortcuts .top-action{min-width:61px!important;padding:8px!important;gap:6px!important}.topbar .topbar-shortcuts .top-action-label{display:none!important}.topbar>.search>button{display:none!important}}
/* V23 — Resource cards keep reading and actions together at every width. */
.fs-info-docs .fs-info-grid{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr))!important;gap:20px!important;align-items:stretch!important}
.fs-info-docs .fs-info-grid>article{display:grid!important;grid-template-columns:52px minmax(0,1fr)!important;grid-template-rows:auto auto!important;gap:16px!important;align-items:start!important;align-content:start!important;padding:24px!important;border:1px solid #dce8ef!important;border-radius:20px!important;background:linear-gradient(135deg,#f4faff,#fff 60%)!important;max-width:840px!important;box-shadow:0 5px 18px #102e4710!important}
.fs-info-docs .fs-info-grid>article>.fs-info-icon{grid-area:1/1!important;width:52px!important;height:52px!important;border-radius:15px!important;align-self:start!important;margin:0!important}
.fs-info-docs .fs-info-grid>article>div:not(.fs-info-actions){grid-area:1/2!important;min-width:0!important}
.fs-info-docs .fs-info-grid article h3{font-size:21px!important;line-height:1.3!important;margin:6px 0 10px!important;color:#102e47!important;font-weight:700!important}
.fs-info-docs .fs-info-grid article p{font-size:11px!important;letter-spacing:.08em!important;color:#0875a6!important}
.fs-info-docs .fs-info-grid article>div>span:not(.fs-info-admin){font-size:15px!important;line-height:1.6!important;color:#526b7d!important}
.fs-info-docs .fs-info-grid article small{font-size:12px!important;margin-top:12px!important}
.fs-info-docs .fs-info-grid .fs-info-actions{grid-column:1/-1!important;grid-row:2!important;display:flex!important;flex-wrap:wrap!important;align-items:center!important;gap:10px!important;border-top:1px solid #dce8ef!important;padding-top:16px!important;margin-top:2px!important;width:100%!important}
.fs-info-docs .fs-info-actions>.primary-button{width:auto!important;min-height:44px!important;padding:11px 20px!important;font-size:14px!important;border-radius:11px!important;box-shadow:none!important;margin:0!important}
.fs-info-docs .fs-info-actions>a:not(.primary-button){display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:44px!important;padding:10px 14px!important;border:1px solid #dce8ef!important;background:#fff!important;border-radius:11px!important;font-size:13px!important;color:#214c65!important;text-decoration:none!important}
.fs-info-docs .fs-info-actions .fs-info-admin{display:flex!important;gap:8px!important;margin-left:auto!important;align-items:center!important}
.fs-info-docs .fs-info-tool{width:40px!important;height:40px!important;margin:0!important;border-radius:10px!important}
.fs-foire-retry{background:#e5f5fc;border:1px solid #8ac8e4;border-radius:10px;padding:12px 18px;color:#0c526f;font-weight:700;min-height:44px}
@media(max-width:600px){.fs-info-docs .fs-info-grid>article{padding:18px!important;gap:14px!important;grid-template-columns:42px minmax(0,1fr)!important}.fs-info-docs .fs-info-grid>article>.fs-info-icon{width:42px!important;height:42px!important;border-radius:12px!important}.fs-info-docs .fs-info-grid article h3{font-size:19px!important}.fs-info-docs .fs-info-actions .fs-info-admin{margin-left:0!important}.fs-info-docs .fs-info-grid article>div>span:not(.fs-info-admin){font-size:14px!important}}
.login-quote{font-size:clamp(24px,2.8vw,40px)!important;line-height:1.25!important;font-weight:650!important;max-width:650px!important;letter-spacing:-.025em!important}
.login-panel select.fs-contract-select{font-size:16px!important;line-height:1.4!important;font-weight:500!important;min-height:48px!important;padding:12px 34px 12px 16px!important}
.fs-excel-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:16px;padding:20px 28px;background:#edf8f5;border-block:1px solid #d2e7e1;color:#184c43}.fs-excel-copy{flex:1 1 260px}.fs-excel-copy strong,.fs-excel-copy small{display:block}.fs-excel-copy strong{font-size:16px}.fs-excel-copy small{font-size:13px;margin-top:4px}.fs-excel-buttons{display:flex;gap:8px;flex-wrap:wrap}.fs-excel-toolbar button,.fs-excel-dialog button{padding:11px 14px;min-height:44px;border-radius:10px;border:1px solid #badbd2;background:#fff;color:#195747;font-size:13px;font-weight:700;cursor:pointer}.fs-excel-toolbar button:disabled,.fs-excel-dialog button:disabled{opacity:.5;cursor:default}.fs-excel-import{background:#176650!important;color:#fff!important;border-color:#176650!important}.fs-excel-message{flex-basis:100%;margin:0;font-size:14px}.fs-excel-dialog{padding:22px;display:grid;gap:16px;font-size:15px}.fs-excel-dialog p{margin:0;line-height:1.6}.fs-excel-help{color:#577080;font-size:13px}.fs-excel-file{display:grid;gap:12px;padding:18px;background:#edf8f5;border:1px dashed #6cae99;border-radius:12px}.fs-excel-summary{color:#176650}.fs-excel-preview{overflow:auto;max-height:48vh;border:1px solid #dce8ef;border-radius:12px}.fs-excel-preview table{border-collapse:collapse;width:100%;min-width:670px;font-size:13px}.fs-excel-preview th,.fs-excel-preview td{padding:12px;text-align:left;border-bottom:1px solid #e1eaf0;vertical-align:top}.fs-excel-preview th{position:sticky;top:0;background:#eaf2f7}.fs-excel-preview td small{display:block;margin-top:4px;color:#678090}.fs-excel-preview td:last-child{background:#f0faf5;color:#176650}.fs-excel-dialog footer{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap}
@media(max-width:600px){.fs-excel-toolbar{padding:16px}.fs-excel-buttons{display:grid;grid-template-columns:1fr 1fr;width:100%}.fs-excel-buttons>button:last-child{grid-column:1/-1}.fs-excel-dialog{padding:16px}.login-quote{font-size:26px!important}}
.fs-admin-members{margin-bottom:18px}.fs-admin-members>button{background:#edf6fc;border:1px solid #bad8e9;border-radius:11px;color:#164b68;min-height:44px;padding:11px 16px;font-weight:700;cursor:pointer}.fs-admin-members label{display:grid;gap:8px;font-size:14px;font-weight:600}.fs-admin-members input{width:100%;border:1px solid #cadce7;border-radius:10px;padding:12px;font-size:16px}.fs-admin-members small{font-size:13px;font-weight:400;color:#637c8f;line-height:1.6}

/* V24 — Measured widths and consistent typography for personal pages. */
.fs-favorites-page,.fs-notifications-page{width:100%;max-width:1240px;min-width:0;margin:0 auto}
:is(.fs-favorites-page,.fs-notifications-page) .page-title{margin:0 0 24px!important;padding:0!important;max-width:900px!important}
:is(.fs-favorites-page,.fs-notifications-page) .page-title h1{font-size:clamp(28px,3vw,40px)!important;line-height:1.15!important;letter-spacing:-.035em!important;margin:6px 0 12px!important}
:is(.fs-favorites-page,.fs-notifications-page) .page-title>p:not(.eyebrow){font-size:16px!important;line-height:1.6!important;max-width:760px!important;margin:0!important}
.fs-favorites-page .favorites-empty{box-sizing:border-box!important;display:grid!important;grid-template-columns:64px minmax(0,1fr)!important;gap:8px 22px!important;align-items:start!important;width:min(100%,720px)!important;max-width:720px!important;min-height:0!important;margin:32px auto!important;padding:32px!important;border:1px solid #e0eaf1!important;border-radius:22px!important;background:#fff!important;box-shadow:0 8px 28px #102c4510!important;text-align:left!important}
.fs-favorites-page .favorites-empty>span{grid-column:1!important;grid-row:1/4!important;display:grid!important;place-items:center!important;width:64px!important;height:64px!important;min-width:0!important;margin:0!important;border-radius:18px!important;font-size:30px!important;color:#d95359!important;background:#fff0f1!important}
.fs-favorites-page .favorites-empty>h2{grid-area:1/2!important;margin:2px 0 0!important;font-size:24px!important;line-height:1.3!important;font-weight:650!important;color:#12354e!important;overflow-wrap:anywhere}
.fs-favorites-page .favorites-empty>p{grid-area:2/2!important;margin:0!important;font-size:15px!important;line-height:1.6!important;color:#62788a!important;max-width:470px!important}
.fs-favorites-page .favorites-empty>button{grid-area:3/2!important;justify-self:start!important;width:auto!important;max-width:100%!important;min-height:44px!important;margin:10px 0 0!important;padding:12px 18px!important;border:0!important;border-radius:11px!important;font-size:14px!important;line-height:1.4!important;background:#12354e!important;color:white!important;box-shadow:none!important;white-space:normal!important}
.fs-notifications-page .notifications-heading{display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:20px!important;flex-wrap:wrap!important;margin-bottom:20px!important}
.fs-notifications-page .notifications-heading .page-title{margin-bottom:0!important;flex:1 1 440px!important}
.fs-notifications-page .notification-heading-actions{display:flex!important;flex-wrap:wrap!important;gap:8px!important;margin:0!important;align-items:center!important}
.fs-notifications-page .notification-heading-actions>button{min-height:44px!important;padding:10px 14px!important;font-size:13px!important;line-height:1.4!important;border-radius:10px!important;white-space:normal!important}
.fs-notifications-page .notification-summary{box-sizing:border-box!important;display:flex!important;flex-wrap:wrap!important;align-items:center!important;gap:12px!important;width:100%!important;max-width:none!important;padding:16px 20px!important;margin:0 0 18px!important;min-height:0!important;border:1px solid #d9e7ef!important;border-radius:16px!important;background:#eff7fc!important;box-shadow:none!important}
.fs-notifications-page .notification-summary>span{display:grid!important;place-items:center!important;width:40px!important;height:40px!important;flex:0 0 40px!important;margin:0!important;border-radius:11px!important;background:#dceef8!important;color:#127097!important;font-size:23px!important}
.fs-notifications-page .notification-summary>div{display:flex!important;align-items:baseline!important;gap:8px!important;min-width:0!important}
.fs-notifications-page .notification-summary strong{font-size:24px!important;line-height:1.2!important}.fs-notifications-page .notification-summary small{font-size:14px!important;line-height:1.4!important}
.fs-notifications-page .notification-summary>p{margin:0 0 0 auto!important;font-size:13px!important;line-height:1.5!important;color:#607c90!important}
.fs-notifications-page .notification-list{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:12px!important;width:100%!important;max-width:none!important}
.fs-notifications-page .notification-list>article{box-sizing:border-box!important;display:grid!important;grid-template-columns:44px minmax(0,1fr) 125px 96px!important;align-items:center!important;gap:16px!important;width:100%!important;max-width:none!important;min-height:0!important;margin:0!important;padding:20px!important;border:1px solid #e1eaf0!important;border-radius:16px!important;background:#fff!important;box-shadow:0 3px 12px #102c4506!important}
.fs-notifications-page .notification-list>article.unread{border-left:3px solid #2287ae!important;background:#fafdff!important}.fs-notifications-page .notification-list>article.read{opacity:1!important}
.fs-notifications-page .notification-icon{display:grid!important;place-items:center!important;width:44px!important;height:44px!important;margin:0!important;border-radius:12px!important;font-size:20px!important;align-self:start!important}
.fs-notifications-page .notification-copy{min-width:0!important}.fs-notifications-page .notification-copy h3{font-size:16px!important;line-height:1.4!important;font-weight:650!important;color:#16394f!important;margin:0 0 5px!important;overflow-wrap:anywhere}
.fs-notifications-page .notification-copy p{font-size:14px!important;line-height:1.6!important;color:#5d7487!important;margin:0!important;white-space:pre-line!important;overflow-wrap:anywhere}
.fs-notifications-page article>time{font-size:13px!important;font-weight:400!important;line-height:1.45!important;color:#748897!important;text-align:right!important;margin:0!important;white-space:normal!important}
.fs-notifications-page .notification-item-actions{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:flex-end!important;gap:8px!important;width:96px!important;min-width:96px!important;margin:0!important}
.fs-notifications-page .notification-item-actions>button,.fs-notifications-page .notification-item-actions>i{box-sizing:border-box!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;flex:0 0 44px!important;width:44px!important;min-width:44px!important;max-width:44px!important;height:44px!important;min-height:44px!important;padding:0!important;margin:0!important;border:1px solid #c8e7dc!important;border-radius:11px!important;background:#edf8f3!important;color:#298264!important;font-size:20px!important;line-height:1!important;box-shadow:none!important}
.fs-notifications-page .notification-item-actions>.delete-notification{background:#fff2f2!important;border-color:#f0d7d7!important;color:#b44e4e!important}.fs-notifications-page .notification-item-actions>i{font-size:12px!important;font-style:normal!important;border-color:transparent!important;background:#f0f4f7!important;color:#627b8d!important}
.fs-notifications-page .notification-empty{box-sizing:border-box!important;width:min(100%,720px)!important;max-width:720px!important;margin:14px auto!important;padding:32px!important;border-radius:20px!important;border:1px solid #e0eaf1!important;min-height:0!important;text-align:center!important;background:white!important;box-shadow:none!important}
.fs-notifications-page .notification-empty>span{display:grid!important;place-items:center!important;width:56px!important;height:56px!important;margin:0 auto 16px!important;border-radius:16px!important;background:#edf8f3!important;color:#298264!important;font-size:26px!important}
.fs-notifications-page .notification-empty h2{font-size:24px!important;margin:0 0 8px!important}.fs-notifications-page .notification-empty p{font-size:15px!important;line-height:1.6!important;margin:0!important}
:is(.fs-favorites-page,.fs-notifications-page) button:focus-visible{outline:3px solid #73b9d9!important;outline-offset:3px!important}
/* Detail rows use the same 15px scale as surrounding practical information. */
.fs-offer-dialog .modal-content>dl{margin:20px 0!important}
.fs-offer-dialog .modal-content>dl>div{grid-template-columns:minmax(140px,.8fr) minmax(0,1.8fr)!important;gap:16px!important;padding:14px 0!important}
.fs-offer-dialog .modal-content>dl dt,.fs-offer-dialog .modal-content>dl dd{font-size:15px!important;line-height:1.5!important}
.fs-offer-dialog .modal-content>dl dt{font-weight:500!important}.fs-offer-dialog .modal-content>dl dd{font-weight:600!important}
@media(max-width:760px){
 .fs-notifications-page .notification-list>article{grid-template-columns:40px minmax(0,1fr) 96px!important;gap:12px!important;padding:16px!important}
 .fs-notifications-page .notification-icon{grid-column:1!important;grid-row:1!important;width:40px!important;height:40px!important}
 .fs-notifications-page .notification-copy{grid-column:2/-1!important;grid-row:1!important}
 .fs-notifications-page article>time{grid-column:2!important;grid-row:2!important;text-align:left!important}
 .fs-notifications-page .notification-item-actions{grid-column:3!important;grid-row:2!important}
 .fs-notifications-page .notification-summary>p{flex-basis:100%!important;margin:0!important}
 .fs-notifications-page .notification-heading-actions{width:100%!important}
}
@media(max-width:600px){
 :is(.fs-favorites-page,.fs-notifications-page) .page-title>p:not(.eyebrow){font-size:14px!important}
 .fs-favorites-page .favorites-empty{grid-template-columns:minmax(0,1fr)!important;padding:24px!important;margin:24px auto!important;gap:12px!important;text-align:center!important;border-radius:18px!important}
 .fs-favorites-page .favorites-empty>span{grid-area:auto!important;width:56px!important;height:56px!important;justify-self:center!important}
 .fs-favorites-page .favorites-empty>h2,.fs-favorites-page .favorites-empty>p,.fs-favorites-page .favorites-empty>button{grid-area:auto!important;justify-self:center!important}
 .fs-favorites-page .favorites-empty>h2,.fs-notifications-page .notification-empty h2{font-size:22px!important}.fs-favorites-page .favorites-empty>p{font-size:14px!important}
 .fs-offer-dialog .modal-content>dl>div{grid-template-columns:minmax(0,1fr)!important;gap:4px!important;padding:12px 0!important}
 .fs-offer-dialog .modal-content>dl dt,.fs-offer-dialog .modal-content>dl dd{font-size:14px!important}.fs-offer-dialog .modal-content>dl dd{text-align:left!important}
}
/* Profile: personal information and account security sit side by side. */
.fs-profile-page{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:24px;align-items:start;width:100%;max-width:none;margin:0;min-width:0}
.fs-profile-page>.page-title{grid-column:1/-1;margin:0!important;padding:0!important}.fs-profile-page>.page-title h1{font-size:clamp(28px,3vw,40px)!important;line-height:1.2!important;margin:6px 0 12px!important}.fs-profile-page>.page-title>p:not(.eyebrow){font-size:16px!important;line-height:1.6!important;max-width:850px!important}
.fs-profile-page>.profile-card{box-sizing:border-box!important;width:100%!important;min-width:0!important;max-width:none!important;margin:0!important;padding:24px!important;border:1px solid #e0eaf1!important;border-radius:20px!important;box-shadow:0 5px 22px #102c450a!important}
.fs-profile-page .profile-card>header{margin:0 0 20px!important;padding:0 0 18px!important;gap:14px!important}.fs-profile-page .profile-card>header>span{width:52px!important;height:52px!important;font-size:20px!important;border-radius:15px!important}.fs-profile-page .profile-card>header strong{font-size:19px!important;line-height:1.3!important}.fs-profile-page .profile-card>header small{font-size:13px!important;line-height:1.5!important}
.fs-profile-page .editor-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:16px!important}.fs-profile-page .editor-grid>label{display:flex!important;flex-direction:column!important;gap:8px!important;min-width:0!important;font-size:13px!important;line-height:1.4!important;font-weight:600!important}
.fs-profile-page .editor-grid :is(input,select){box-sizing:border-box!important;display:block!important;width:100%!important;min-width:0!important;max-width:100%!important;height:46px!important;min-height:46px!important;padding:11px 12px!important;font-size:16px!important;line-height:1.4!important;font-weight:500!important;color:#17394f!important;background:#f6f9fb!important;border:1px solid #dce5eb!important;border-radius:10px!important}
.fs-profile-page .editor-grid select{padding-right:30px!important}.fs-profile-page .preference-box{padding:18px!important;margin:20px 0!important;border-radius:14px!important}.fs-profile-page .preference-box h2{font-size:18px!important;margin:0 0 12px!important}.fs-profile-page .preference-box label{display:flex!important;align-items:center!important;gap:10px!important;font-size:14px!important;line-height:1.5!important;margin:10px 0!important}
.fs-profile-page .consent-field{display:flex!important;align-items:flex-start!important;gap:12px!important;margin:18px 0!important;padding:16px!important;border-radius:14px!important;font-size:13px!important;line-height:1.6!important}.fs-profile-page :is(.consent-field,.preference-box) input[type=checkbox]{flex:0 0 18px!important;width:18px!important;height:18px!important;margin:2px 0 0!important}
.fs-profile-page .profile-card>.primary-button{width:100%!important;min-height:46px!important;margin-top:18px!important;padding:12px 16px!important;font-size:14px!important;line-height:1.4!important;border-radius:11px!important;box-shadow:none!important}
.fs-profile-page .password-card>.panel-title{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:14px!important;margin-bottom:20px!important}.fs-profile-page .password-card .panel-title h2{font-size:24px!important;line-height:1.3!important;margin:6px 0 0!important}.fs-profile-page .password-title-actions{display:flex!important;flex-wrap:wrap!important;gap:10px!important;width:100%!important;align-items:center!important}.fs-profile-page .password-title-actions>button{font-size:12px!important;min-height:40px!important;white-space:normal!important}.fs-profile-page .password-card .editor-grid{grid-template-columns:minmax(0,1fr)!important}
@media(max-width:1050px){.fs-profile-page{grid-template-columns:minmax(0,1fr);gap:20px}}
@media(max-width:600px){.fs-profile-page>.profile-card{padding:18px!important;border-radius:17px!important}.fs-profile-page .editor-grid{grid-template-columns:minmax(0,1fr)!important}.fs-profile-page .password-card .panel-title h2{font-size:22px!important}}
/* ICOM: month navigation remains grouped and aligned. */
.fs-icom-calendar .fs-icom-month-nav{display:grid!important;grid-template-columns:44px minmax(160px,230px) 44px minmax(12px,1fr) auto auto!important;align-items:center!important;gap:10px!important;padding:14px 16px!important;border:1px solid #d9e7f0!important;border-radius:16px!important;background:#eff7fc!important}
.fs-icom-calendar .fs-icom-month-nav>h3{min-width:0!important;margin:0!important;text-align:center!important;font-size:19px!important;font-weight:650!important;line-height:1.3!important;color:#163e58!important}
.fs-icom-calendar .fs-icom-month-nav>button{box-sizing:border-box!important;width:44px!important;min-width:44px!important;height:44px!important;min-height:44px!important;padding:0!important;border:1px solid #cee1ec!important;border-radius:11px!important;background:#fff!important;color:#17597c!important;font-size:19px!important;box-shadow:none!important}
.fs-icom-calendar .fs-icom-month-nav>.fs-icom-today{grid-column:5!important;width:auto!important;margin:0!important;padding:10px 16px!important;font-size:13px!important;font-weight:650!important;white-space:nowrap!important}
.fs-icom-calendar .fs-icom-month-nav>label{grid-column:6!important;min-width:0!important;margin:0!important}
.fs-icom-calendar .fs-icom-month-nav input[type=month]{box-sizing:border-box!important;width:190px!important;max-width:100%!important;height:44px!important;min-height:44px!important;padding:10px 12px!important;border:1px solid #cee1ec!important;border-radius:11px!important;background:#fff!important;color:#17597c!important;font-size:14px!important;font-weight:500!important}
@media(max-width:850px){.fs-icom-calendar .fs-icom-month-nav{grid-template-columns:44px minmax(0,1fr) 44px!important;gap:10px!important;padding:12px!important}.fs-icom-calendar .fs-icom-month-nav>.fs-icom-today{grid-column:1/2!important;grid-row:2!important;width:auto!important;min-width:0!important;padding:8px 10px!important;font-size:12px!important;grid-column:1/3!important;justify-self:start!important}.fs-icom-calendar .fs-icom-month-nav>label{grid-column:2/4!important;grid-row:2!important;justify-self:end!important;width:min(190px,100%)!important;margin-left:100px!important}.fs-icom-calendar .fs-icom-month-nav>h3{font-size:17px!important}}
@media(max-width:390px){.fs-icom-calendar .fs-icom-month-nav>.fs-icom-today{grid-column:1/-1!important;grid-row:2!important;justify-self:stretch!important}.fs-icom-calendar .fs-icom-month-nav>label{grid-column:1/-1!important;grid-row:3!important;justify-self:stretch!important;width:100%!important;margin-left:0!important}.fs-icom-calendar .fs-icom-month-nav input[type=month]{width:100%!important}}
@media(min-width:391px) and (max-width:850px){.fs-icom-calendar .fs-icom-month-nav{grid-template-columns:44px minmax(0,1fr) minmax(0,1fr) 44px!important}.fs-icom-calendar .fs-icom-month-nav>h3{grid-column:2/4!important;grid-row:1!important}.fs-icom-calendar .fs-icom-month-nav>button:nth-child(1){grid-column:1!important;grid-row:1!important}.fs-icom-calendar .fs-icom-month-nav>button:nth-child(3){grid-column:4!important;grid-row:1!important}.fs-icom-calendar .fs-icom-month-nav>.fs-icom-today{grid-column:1/3!important;grid-row:2!important;justify-self:stretch!important}.fs-icom-calendar .fs-icom-month-nav>label{grid-column:3/5!important;grid-row:2!important;width:100%!important;max-width:none!important;margin-left:0!important}.fs-icom-calendar .fs-icom-month-nav input[type=month]{width:100%!important;min-width:0!important}}
.fs-accounts .fs-account-filters>.fs-admin-only-filter{display:flex!important;flex-direction:row!important;align-items:center!important;gap:10px!important;align-self:end!important;box-sizing:border-box!important;min-height:46px!important;padding:11px 14px!important;border:1px solid #d6e6f0!important;border-radius:11px!important;background:#eff7fc!important;cursor:pointer!important}
.fs-accounts .fs-admin-only-filter>input[type=checkbox]{flex:0 0 18px!important;width:18px!important;min-width:18px!important;height:18px!important;min-height:18px!important;margin:0!important;padding:0!important;accent-color:#16779e!important}.fs-accounts .fs-admin-only-filter>span{font-size:13px!important;line-height:1.4!important;margin:0!important;color:#17465e!important}
.fs-profile-page .profile-card>header{display:flex!important;align-items:center!important;min-width:0!important}.fs-profile-page .profile-card>header>.fs-profile-avatar{display:inline-flex!important;flex-direction:row!important;align-items:center!important;justify-content:center!important;flex:0 0 52px!important;white-space:nowrap!important;word-break:keep-all!important;line-height:1!important;letter-spacing:.01em!important}.fs-profile-page .profile-card>header>div{min-width:0!important;flex:1!important}.fs-profile-page .profile-card>header strong,.fs-profile-page .profile-card>header small{display:block!important;overflow-wrap:anywhere!important}
@media(max-width:600px){.fs-profile-page .profile-card>header{gap:12px!important}.fs-profile-page .profile-card>header strong{font-size:18px!important}.fs-profile-page .profile-card>header small{font-size:12px!important;margin-top:5px!important}.fs-profile-page .profile-card .editor-grid{gap:14px!important}.fs-profile-page .profile-card{overflow-wrap:anywhere!important}.fs-profile-page .editor-grid input{box-sizing:border-box!important;max-width:100%!important}.fs-profile-page .profile-card>header>.fs-profile-avatar{flex-basis:48px!important;width:48px!important;height:48px!important;font-size:18px!important}}
@media(max-width:700px){
 .hero-card.real-event-hero{box-sizing:border-box!important;position:relative!important;isolation:isolate!important;display:flex!important;flex-direction:column!important;justify-content:flex-end!important;align-items:stretch!important;width:100%!important;max-width:100%!important;height:auto!important;min-height:390px!important;margin:22px 0!important;padding:24px!important;border-radius:22px!important;overflow:hidden!important;background-image:linear-gradient(180deg,rgba(5,20,43,.1) 0%,rgba(5,20,43,.22) 30%,rgba(5,20,43,.88) 65%,rgba(5,20,43,.98) 100%),var(--fs-hero-image)!important;background-size:cover!important;background-position:center!important}
 .hero-card.real-event-hero .hero-copy{box-sizing:border-box!important;position:relative!important;z-index:2!important;width:100%!important;max-width:none!important;margin:150px 0 0!important;padding:0!important;min-width:0!important}
 .hero-card.real-event-hero .hero-copy>p:first-child{font-size:10px!important;line-height:1.6!important;font-weight:650!important;letter-spacing:.09em!important;margin:0 0 10px!important;color:#c1e2f0!important;max-width:100%!important}
 .hero-card.real-event-hero .hero-copy h2{font-size:clamp(25px,6vw,32px)!important;line-height:1.14!important;font-weight:750!important;letter-spacing:-.025em!important;color:#fff!important;margin:0 0 8px!important;max-width:100%!important;overflow-wrap:normal!important;text-wrap:balance}
 .hero-card.real-event-hero .hero-copy>.fs-hero-subtitle{font-size:18px!important;font-weight:500!important;line-height:1.4!important;color:#edf0ff!important;margin:0 0 14px!important;letter-spacing:0!important;text-transform:none!important}
 .hero-card.real-event-hero .hero-copy>span{display:block!important;font-size:13px!important;line-height:1.5!important;color:#c5d8e5!important;margin:0 0 16px!important}
 .hero-card.real-event-hero .hero-copy>button{box-sizing:border-box!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;width:100%!important;max-width:340px!important;min-height:46px!important;margin:0!important;padding:12px 16px!important;border-radius:12px!important;font-size:14px!important;line-height:1.4!important;color:#143852!important;background:#fff!important;border:1px solid #ffffff80!important;box-shadow:none!important}
 .hero-card.real-event-hero .hero-art{position:absolute!important;inset:16px 16px auto auto!important;transform:none!important;width:54px!important;height:64px!important;min-width:0!important;min-height:0!important;margin:0!important;padding:0!important;z-index:3!important;display:block!important}
 .hero-card.real-event-hero .hero-art em{box-sizing:border-box!important;position:static!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:3px!important;width:54px!important;height:64px!important;margin:0!important;padding:8px!important;border-radius:13px!important;background:#f4f8fc!important;color:#102e47!important;font-style:normal!important;font-size:24px!important;line-height:1!important;font-weight:750!important;transform:none!important;box-shadow:0 4px 16px #06152830!important}
 .hero-card.real-event-hero .hero-art em br{display:none!important}.hero-card.real-event-hero .hero-art em small{font-size:10px!important;font-weight:700!important;line-height:1.2!important;letter-spacing:.03em!important}
}
@media(max-width:390px){.hero-card.real-event-hero{padding:20px!important;border-radius:19px!important}.hero-card.real-event-hero .hero-copy h2{font-size:27px!important}}
/* Information/resource headings align with the content beneath them. */
.fs-notice-board>header,.fs-info-docs>header{display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;justify-content:space-between!important;align-items:center!important;gap:14px!important;width:100%!important;margin:0 0 20px!important;text-align:left!important}
.fs-notice-board>header>div,.fs-info-docs>header>div{flex:1 1 230px!important;min-width:0!important;margin:0!important;text-align:left!important}
.fs-notice-board>header .eyebrow,.fs-info-docs>header .eyebrow{display:block!important;text-align:left!important;margin:0 0 6px!important;font-size:11px!important;line-height:1.4!important;letter-spacing:.09em!important}
.fs-notice-board>header h2,.fs-info-docs>header h2{text-align:left!important;font-size:26px!important;line-height:1.2!important;margin:0!important;color:#14354d!important}
.fs-notice-board>header>.fs-info-add,.fs-info-docs>header>.fs-info-add{display:inline-flex!important;align-items:center!important;justify-content:center!important;flex:0 1 auto!important;width:auto!important;max-width:100%!important;min-height:44px!important;margin:0!important;padding:11px 15px!important;border-radius:11px!important;font-size:13px!important;line-height:1.4!important;text-align:left!important}
@media(max-width:600px){
 .fs-notice-board,.fs-info-docs{box-sizing:border-box!important;padding:20px 16px!important;margin-left:0!important;margin-right:0!important;min-width:0!important;max-width:100%!important;border-radius:19px!important}
 .fs-notice-board>header,.fs-info-docs>header{flex-direction:column!important;align-items:flex-start!important;justify-content:flex-start!important;gap:12px!important;margin-bottom:18px!important}
 .fs-notice-board>header>div,.fs-info-docs>header>div{flex:0 1 auto!important;width:100%!important}
 .fs-notice-board>header h2,.fs-info-docs>header h2{font-size:24px!important}
 .fs-notice-board>header>.fs-info-add,.fs-info-docs>header>.fs-info-add{align-self:flex-start!important;flex:none!important}
 .fs-notice-board .fs-notice-grid,.fs-info-docs .fs-info-grid{min-width:0!important;width:100%!important;margin:0!important}
 .fs-info-docs .fs-info-grid>article{width:100%!important;box-sizing:border-box!important}
}
@media(max-width:900px){.topbar>.mobile-menu{box-sizing:border-box!important;flex:0 0 54px!important;width:54px!important;min-width:54px!important;max-width:54px!important;min-height:48px!important;padding:10px 14px!important;border-radius:13px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;font-size:23px!important;line-height:1!important}.topbar>.search{min-width:0!important}}
.fs-foire-card .fs-foire-policy{box-sizing:border-box!important;margin:0 0 16px!important;padding:14px 18px!important;border:1px solid #cfe6f3!important;border-radius:13px!important;background:#eff8fd!important;color:#426981!important;font-size:14px!important;line-height:1.55!important}.fs-foire-card .fs-foire-policy strong{display:block!important;margin-top:3px!important;font-size:14px!important;font-weight:600!important}
.fs-foire-current-document{display:flex;align-items:center;gap:14px;padding:16px 18px;margin:0 0 18px;border:1px solid #dce8ef;border-radius:14px;background:#fff;min-width:0}.fs-foire-document-icon{display:grid;place-items:center;width:40px;height:44px;flex:0 0 40px;border-radius:11px;background:#eaf5f1;color:#247861;font-size:24px}.fs-foire-current-document>div{flex:1;min-width:0}.fs-foire-current-document strong{display:block;font-size:14px;line-height:1.4;color:#183e55}.fs-foire-document-name{display:block;margin-top:4px;font-size:13px;line-height:1.5;color:#6b8293;overflow-wrap:anywhere}.fs-foire-current-document>.fs-foire-download-link{display:inline-flex!important;align-items:center!important;justify-content:center!important;flex:0 0 auto!important;min-height:42px!important;margin:0!important;padding:10px 14px!important;border:1px solid #c8dfeb!important;border-radius:10px!important;background:#edf7fc!important;color:#136183!important;font-size:13px!important;font-weight:650!important;text-decoration:none!important;line-height:1.4!important}
.fs-foire-card .fs-foire-steps{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important;margin:0 0 20px!important;padding:0!important;list-style:none!important}.fs-foire-card .fs-foire-steps>li{display:flex!important;align-items:flex-start!important;gap:12px!important;padding:18px!important;min-height:130px!important;border:1px solid #e0e9f0!important;border-radius:15px!important;background:#f7fafc!important;min-width:0!important}.fs-foire-card .fs-foire-steps>li>b{display:grid!important;place-items:center!important;flex:0 0 32px!important;width:32px!important;height:32px!important;min-width:32px!important;font-size:15px!important;line-height:1!important;border-radius:10px!important;background:#123a53!important;color:white!important;margin:0!important}.fs-foire-card .fs-foire-steps>li>div{min-width:0!important}.fs-foire-card .fs-foire-steps strong{display:block!important;font-size:15px!important;font-weight:650!important;line-height:1.4!important;margin:2px 0 8px!important}.fs-foire-card .fs-foire-steps small{display:block!important;font-size:13px!important;line-height:1.6!important;color:#6d8293!important;margin:0!important}.fs-foire-card .fs-foire-steps .fs-foire-download{display:inline-block!important;font-size:13px!important;line-height:1.5!important;margin:0!important;padding:0 0 4px!important;font-weight:600!important;overflow-wrap:anywhere!important}
.fs-foire-card .fs-foire-upload{padding:22px!important;gap:16px!important;border-radius:18px!important}.fs-foire-card .fs-foire-upload-copy>strong{font-size:20px!important;line-height:1.3!important}.fs-foire-card .fs-foire-upload-hint{font-size:14px!important;line-height:1.6!important}.fs-foire-card .fs-foire-upload-copy>small{font-size:12px!important;line-height:1.5!important}.fs-foire-card .fs-foire-upload-choose{font-size:14px!important;min-height:44px!important;padding:12px 16px!important;border-radius:11px!important}.fs-foire-card .fs-foire-form>.primary-button{font-size:14px!important;min-height:46px!important;padding:12px 18px!important;border-radius:12px!important}
@media(max-width:700px){.fs-foire-card .fs-foire-steps{grid-template-columns:minmax(0,1fr)!important;gap:10px!important}.fs-foire-card .fs-foire-steps>li{min-height:0!important;padding:15px!important}.fs-foire-current-document{flex-wrap:wrap;padding:15px;gap:12px}.fs-foire-current-document>div{flex-basis:calc(100% - 64px)}.fs-foire-current-document>.fs-foire-download-link{margin-left:52px!important}.fs-foire-card .fs-foire-upload{padding:18px!important}.fs-foire-card .fs-foire-upload-copy>strong{font-size:18px!important}.fs-foire-card .fs-foire-policy{padding:13px 15px!important}}

/* Resource cards use their own layout; legacy card/action rules no longer apply. */
.fs-info-docs .fs-resource-list{container-type:inline-size;display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:12px!important;width:100%!important;margin:0!important;padding:0!important}
.fs-info-docs .fs-resource-card{box-sizing:border-box!important;display:grid!important;grid-template-columns:48px minmax(0,1fr) auto!important;gap:18px!important;align-items:center!important;width:100%!important;max-width:none!important;min-width:0!important;min-height:0!important;padding:24px!important;margin:0!important;border:1px solid #dce6ed!important;border-radius:14px!important;background:#fff!important;box-shadow:none!important;text-align:left!important;transform:none!important}
.fs-info-docs .fs-resource-symbol{display:inline-flex!important;align-items:center!important;justify-content:center!important;align-self:start!important;width:48px!important;height:52px!important;border:1px solid #dceaf2!important;border-radius:12px!important;background:#eff7fb!important;color:#1b6487!important;flex-shrink:0!important;margin:0!important}
.fs-info-docs .fs-resource-copy{min-width:0!important;padding:0!important;margin:0!important}
.fs-info-docs .fs-resource-category{margin:0 0 6px!important;font-size:10px!important;line-height:1.4!important;font-weight:700!important;text-transform:uppercase!important;letter-spacing:.075em!important;color:#156c92!important}
.fs-info-docs .fs-resource-copy h3{margin:0!important;font-size:18px!important;line-height:1.4!important;font-weight:650!important;letter-spacing:-.015em!important;color:#18364b!important;overflow-wrap:anywhere!important}
.fs-info-docs .fs-resource-description{max-width:76ch!important;margin:7px 0 0!important;font-size:14px!important;line-height:1.65!important;font-weight:400!important;color:#647789!important;letter-spacing:0!important;text-transform:none!important;overflow-wrap:anywhere!important}
.fs-info-docs .fs-resource-meta{display:inline-block!important;margin:10px 0 0!important;font-size:12px!important;line-height:1.4!important;font-weight:500!important;color:#748594!important}
.fs-info-docs .fs-resource-actions{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;align-items:center!important;justify-content:flex-start!important;gap:14px!important;width:auto!important;min-width:0!important;margin:0!important;padding:0!important;border:0!important}
.fs-info-docs :is(.fs-resource-reader-actions,.fs-resource-admin-actions){display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;align-items:center!important;justify-content:flex-start!important;gap:8px!important;width:auto!important;margin:0!important;padding:0!important}
.fs-info-docs .fs-resource-admin-actions{border-left:1px solid #e0e8ee!important;padding-left:14px!important;gap:6px!important}
.fs-info-docs .fs-resource-actions :is(button,a){box-sizing:border-box!important;display:inline-flex!important;flex-direction:row!important;align-items:center!important;justify-content:center!important;gap:8px!important;flex:0 0 auto!important;width:auto!important;min-width:0!important;max-width:none!important;height:42px!important;min-height:42px!important;margin:0!important;padding:10px 14px!important;border:1px solid #d7e3eb!important;border-radius:9px!important;background:#fff!important;color:#315b74!important;font-family:inherit!important;font-size:13px!important;line-height:1.3!important;font-weight:600!important;text-decoration:none!important;white-space:nowrap!important;box-shadow:none!important;cursor:pointer!important;letter-spacing:0!important}
.fs-info-docs .fs-resource-actions .fs-resource-open{background:#14364e!important;border-color:#14364e!important;color:#fff!important}
.fs-info-docs .fs-resource-actions svg{display:block!important;flex-shrink:0!important}
.fs-info-docs .fs-resource-admin-actions>button{width:38px!important;height:38px!important;min-height:38px!important;padding:8px!important;border-color:transparent!important;color:#718696!important;background:transparent!important}
.fs-info-docs .fs-resource-admin-actions>.fs-resource-remove{color:#a45656!important}
.fs-info-docs .fs-resource-actions :is(button,a):hover{border-color:#97b7ca!important;background:#f2f7fa!important}.fs-info-docs .fs-resource-actions .fs-resource-open:hover{background:#21526f!important;color:#fff!important}
.fs-info-docs .fs-resource-actions :is(button,a):focus-visible{outline:3px solid #77b6d3!important;outline-offset:3px!important}
@container(max-width:1000px){.fs-info-docs .fs-resource-card{grid-template-columns:48px minmax(0,1fr)!important;gap:14px 18px!important}.fs-info-docs .fs-resource-actions{grid-column:2!important;justify-content:space-between!important;padding-top:14px!important;border-top:1px solid #e5ecf1!important}.fs-info-docs .fs-resource-admin-actions{border-left:0!important;padding-left:0!important}}
@container(max-width:520px){.fs-info-docs .fs-resource-card{grid-template-columns:40px minmax(0,1fr)!important;gap:14px!important;padding:18px!important;border-radius:12px!important}.fs-info-docs .fs-resource-symbol{width:40px!important;height:44px!important;border-radius:10px!important}.fs-info-docs .fs-resource-copy h3{font-size:17px!important}.fs-info-docs .fs-resource-description{font-size:13px!important;line-height:1.65!important}.fs-info-docs .fs-resource-actions{grid-column:1/-1!important;flex-wrap:wrap!important;gap:12px!important}.fs-info-docs .fs-resource-reader-actions{flex:1 1 auto!important;flex-wrap:wrap!important}.fs-info-docs .fs-resource-actions :is(button,a){height:44px!important;min-height:44px!important;font-size:12px!important;padding:10px 12px!important}.fs-info-docs .fs-resource-admin-actions>button{width:40px!important;padding:8px!important}.fs-info-docs .fs-resource-category{font-size:9px!important}}
/* V25 — full-width filters, consistent headings, compact category management. */
.fs-admin-v15 .enrollment-toolbar.enrollment-filter-grid{width:100%!important;max-width:none!important;box-sizing:border-box!important;grid-template-columns:minmax(0,1fr) auto minmax(180px,260px)!important}
.fs-admin-v15 .enrollment-filter-grid .advanced-enrollment-filters{display:block!important;grid-column:1/-1!important;flex:1 0 100%!important;width:100%!important;max-width:none!important;min-width:0!important}
.fs-admin-v15 .advanced-filter-panel{width:100%!important;max-width:none!important;box-sizing:border-box!important;position:static!important}
.fs-admin-v15 .advanced-filter-panel .advanced-filter-fields{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:14px!important;width:100%!important;max-width:none!important}
.fs-admin-v15 .advanced-filter-fields>label{display:flex!important;flex-direction:column!important;grid-column:auto!important;min-width:0!important;width:100%!important;gap:7px!important;margin:0!important}
.fs-admin-v15 .advanced-filter-fields select{height:44px!important;min-width:0!important;width:100%!important}
.fs-admin-v15 .advanced-filter-panel>footer{display:flex!important;flex-wrap:wrap!important;justify-content:flex-end!important;align-items:center!important;gap:12px!important}
.fs-admin-v15 .advanced-filter-panel .reset-enrollment-filters{width:auto!important;flex:0 0 auto!important;margin-right:auto!important}
.fs-admin-v15 .advanced-filter-panel .filter-export-actions{display:flex!important;gap:8px!important}
.fs-admin-v15 .fs-section-heading-v25{display:flex!important;flex-wrap:wrap!important;align-items:center!important;gap:14px!important;text-align:left!important;margin-bottom:24px!important}
.fs-admin-v15 .fs-section-heading-v25>div:first-child{flex:1 1 500px!important;min-width:0!important}
.fs-admin-v15 .fs-section-heading-v25 h2{font-size:clamp(24px,2vw,32px)!important;line-height:1.25!important;font-weight:600!important;letter-spacing:-.025em!important;margin:6px 0 10px!important;color:#15374e!important}
.fs-admin-v15 .fs-section-heading-v25 p{font-size:14px!important;line-height:1.6!important;letter-spacing:0!important;margin:0!important;font-weight:400!important;color:#64798c!important;text-transform:none!important}
.fs-admin-v15 .fs-section-heading-v25 p.eyebrow{font-size:11px!important;line-height:1.4!important;font-weight:700!important;letter-spacing:.1em!important;text-transform:uppercase!important;color:#14668d!important}
.fs-admin-v15 .fs-category-admin-v25 .admin-section-heading{padding-bottom:18px!important;margin-bottom:0!important}
.fs-admin-v15 .fs-category-admin-v25 .admin-section-heading small{max-width:85ch;font-size:14px;line-height:1.6}
.fs-admin-v15 .fs-category-admin-v25 .fs-category-summary{margin:16px 0!important;gap:8px!important}
.fs-admin-v15 .fs-category-admin-v25 .fs-category-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}
.fs-admin-v15 .fs-category-admin-v25 .fs-category-card{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:14px!important;padding:18px!important;border:1px solid #dfe7ed!important;border-radius:12px!important;box-shadow:none!important;background:#fff!important}
.fs-admin-v15 .fs-category-admin-v25 .fs-category-card.is-off{background:#f7f9fa!important;border-style:solid!important}
.fs-admin-v15 .fs-category-admin-v25 .fs-category-head{display:grid!important;grid-template-columns:40px minmax(0,1fr) auto!important;align-items:center!important;gap:12px!important}
.fs-admin-v15 .fs-category-admin-v25 .fs-category-icon{width:40px!important;height:40px!important;font-size:21px!important;border-radius:10px!important;display:flex!important;align-items:center!important;justify-content:center!important}
.fs-admin-v15 .fs-category-admin-v25 .fs-category-identity strong{font-size:16px!important;line-height:1.4!important}
.fs-admin-v15 .fs-category-admin-v25 .fs-category-identity small{font-size:12px!important;line-height:1.5!important;margin-top:3px!important}
.fs-admin-v15 .fs-category-admin-v25 .fs-category-toggle{grid-column:auto!important;margin:0!important;width:auto!important;font-size:10px!important;white-space:nowrap!important}
.fs-admin-v15 .fs-category-admin-v25 .fs-category-tools{display:flex!important;flex-wrap:wrap!important;justify-content:flex-start!important;align-items:center!important;gap:8px!important;padding:12px 0 0!important;margin:0!important;border-top:1px solid #edf1f4!important}
.fs-admin-v15 .fs-category-admin-v25 .fs-cat-tool{display:inline-flex!important;align-items:center!important;justify-content:center!important;flex:0 0 auto!important;width:auto!important;min-height:38px!important;min-width:38px!important;margin:0!important;padding:8px 12px!important;border-radius:8px!important;font-size:12px!important;line-height:1.4!important}
.fs-admin-v15 .fs-category-admin-v25 .fs-category-tools .danger{margin-left:auto!important;border:1px solid transparent!important;padding:8px!important;grid-column:auto!important;color:#9c5656!important}
.fs-admin-v15 .fs-category-admin-v25 .fs-category-editor{grid-column:1/-1!important;min-width:0!important}
.fs-admin-v15 .fs-category-admin-v25 .fs-category-footer{margin-top:18px!important;padding-top:16px!important}
.fs-signup-multiple .fs-signup-list{display:grid;gap:8px;margin:20px 0}
.fs-signup-multiple .fs-signup-list>article,.fs-temporary-list>article{display:flex;align-items:center;gap:12px;padding:14px;border:1px solid #dfe8ef;border-radius:10px;background:#fff;min-width:0}
.fs-signup-list article>div,.fs-temporary-list article>div{flex:1;min-width:0}
.fs-signup-list strong,.fs-temporary-list strong{display:block;font-size:14px;overflow-wrap:anywhere}
.fs-signup-list small,.fs-temporary-list small{display:block;font-size:12px;color:#687c8a;margin-top:4px}
.fs-signup-badge{background:#e8f5ee;color:#25765c;font-size:11px;padding:5px 9px;border-radius:20px;white-space:nowrap}
.is-disabled .fs-signup-badge{background:#eef1f4;color:#697a88}
.fs-signup-multiple form{border-top:1px solid #e2eaf0;padding-top:18px}
.fs-signup-new-fields,.fs-temporary-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.fs-signup-multiple label,.fs-temporary-access label{display:flex;flex-direction:column;gap:7px;font-size:13px;font-weight:600;min-width:0}
.fs-signup-multiple input,.fs-temporary-access :is(input,select){box-sizing:border-box;width:100%;min-width:0;height:44px;border:1px solid #d7e4ed;border-radius:8px;padding:10px 12px;background:#fff;color:#18394e;font-family:inherit;font-size:16px}
.fs-signup-multiple .fs-signup-input{display:flex;gap:8px}
.fs-signup-multiple .fs-signup-input input{flex:1;min-width:0}
.fs-signup-multiple button,.fs-temporary-access button{width:auto!important;min-height:40px;border:1px solid #d7e4ed;border-radius:8px;padding:9px 12px;background:#eff6fa;color:#22516d;font-size:12px;font-weight:600;cursor:pointer}
.fs-signup-multiple form>small,.fs-temporary-access form>small{display:block;font-size:12px;color:#6b7f8c;line-height:1.5;margin:10px 0}
.fs-signup-multiple header h2{font-size:26px;margin:5px 0 10px}
.fs-signup-multiple header p{font-size:14px;line-height:1.6;color:#647989}
.fs-temporary-access{width:100%;box-sizing:border-box;border:1px solid #dbe6ee;border-radius:10px;background:#f7fafc;margin:0 0 20px;padding:0!important}
.fs-temporary-access>summary{cursor:pointer;padding:14px 16px;font-size:14px;font-weight:650;color:#234e67}
.fs-temporary-access>summary>small{margin-left:12px;font-weight:400;color:#6a7d8c;font-size:12px}
.fs-temporary-body{padding:0 16px 16px}
.fs-temporary-body>p{font-size:13px;line-height:1.6}
.fs-temporary-list{display:grid;gap:8px;margin:12px 0}
.fs-temporary-list article>span{font-size:11px;color:#37715e}
.fs-temporary-access form{margin-top:14px;padding-top:16px;border-top:1px solid #e1e9ef}
.fs-temporary-form-actions{display:flex;gap:8px;justify-content:flex-end}
@media(max-width:1050px){.fs-admin-v15 .advanced-filter-panel .advanced-filter-fields{grid-template-columns:repeat(3,minmax(0,1fr))!important}.fs-admin-v15 .fs-category-admin-v25 .fs-category-grid{grid-template-columns:minmax(0,1fr)!important}}
@media(max-width:700px){.fs-admin-v15 .enrollment-toolbar.enrollment-filter-grid{grid-template-columns:minmax(0,1fr)!important;width:auto!important}.fs-admin-v15 .advanced-filter-panel .advanced-filter-fields{grid-template-columns:repeat(2,minmax(0,1fr))!important}.fs-admin-v15 .fs-section-heading-v25 h2{font-size:24px!important}.fs-admin-v15 .fs-category-admin-v25 .fs-category-head{grid-template-columns:40px minmax(0,1fr)!important}.fs-admin-v15 .fs-category-admin-v25 .fs-category-toggle{grid-column:2!important;justify-self:start!important}.fs-admin-v15 .fs-category-admin-v25 .fs-category-tools .fs-cat-tool{min-height:44px!important}.fs-signup-new-fields,.fs-temporary-fields{grid-template-columns:minmax(0,1fr)}.fs-signup-list article,.fs-temporary-list article{flex-wrap:wrap}.fs-signup-list article>div,.fs-temporary-list article>div{flex-basis:100%}.fs-temporary-access>summary>small{display:block;margin:5px 0 0 16px}.fs-temporary-access button{min-height:44px}}
@media(max-width:420px){.fs-admin-v15 .advanced-filter-panel .advanced-filter-fields{grid-template-columns:minmax(0,1fr)!important}}
/* Keep mobile notice content before its management actions. */
.fs-notice-board .fs-notice{box-sizing:border-box!important;display:grid!important;grid-template-columns:40px minmax(0,1fr) auto!important;gap:16px!important;min-width:0!important;width:100%!important;padding:20px!important;border-radius:12px!important;box-shadow:none!important}
.fs-notice-board .fs-notice-icon{width:40px!important;height:40px!important;grid-column:1!important;grid-row:1!important;margin:0!important;display:flex!important;align-items:center!important;justify-content:center!important}
.fs-notice-board .fs-notice-copy{grid-column:2!important;grid-row:1!important;min-width:0!important;text-align:left!important;margin:0!important;padding:0!important}
.fs-notice-board .fs-notice-copy strong{font-size:17px!important;line-height:1.4!important;display:block!important;margin:5px 0 0!important}
.fs-notice-board .fs-notice-copy p{font-size:14px!important;line-height:1.65!important;margin:8px 0 0!important;max-width:80ch!important;overflow-wrap:anywhere!important}
.fs-notice-board .fs-notice-tools{grid-column:3!important;grid-row:1!important;display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;align-items:center!important;gap:8px!important;margin:0!important;padding:0!important;width:auto!important}
.fs-notice-board .fs-notice-tools .fs-info-tool{width:auto!important;height:40px!important;min-height:40px!important;padding:8px 12px!important;font-size:12px!important;display:inline-flex!important;justify-content:center!important;align-items:center!important;white-space:nowrap!important}
@media(max-width:700px){.fs-notice-board,.fs-info-docs{min-width:0!important;max-width:100%!important;box-sizing:border-box!important}.fs-notice-board .fs-notice{grid-template-columns:36px minmax(0,1fr)!important;gap:12px!important;padding:16px!important}.fs-notice-board .fs-notice-icon{width:36px!important;height:36px!important}.fs-notice-board .fs-notice-tools{grid-row:2!important;grid-column:1/-1!important;border-top:1px solid #e1eaf1!important;padding-top:12px!important;justify-content:flex-end!important}.fs-notice-board .fs-notice-tools .fs-info-tool{min-height:44px!important}.fs-notice-board .fs-notice-copy strong{font-size:16px!important}.fs-notice-board .fs-notice-copy p{font-size:13px!important}.fs-info-docs .fs-resource-admin-actions{width:100%!important;justify-content:flex-end!important}.fs-info-docs .fs-resource-admin-actions>button{width:auto!important;padding:8px 10px!important}.fs-info-docs .fs-resource-description{max-width:none!important}}

.fs-info-docs .fs-resource-admin-actions>button{width:auto!important;padding:8px 10px!important}.fs-info-docs .fs-resource-admin-actions>button>span{font-size:11px!important}
.fs-admin-v15 .enrollment-toolbar.enrollment-filter-grid{margin-left:0!important;margin-right:0!important}
/* V26 — explicit announcement management on cards and in the reader. */
.fs-community .fs-community-manage,.fs-community-detail-manage{display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;gap:10px!important;border-top:1px solid #e1e9ef!important;padding-top:14px!important;margin-top:16px!important}
.fs-community-manage>button,.fs-community-confirm button{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:44px!important;padding:10px 16px!important;width:auto!important;border:1px solid #d5e3ed!important;border-radius:9px!important;background:#eef6fa!important;color:#215c7b!important;font-size:13px!important;font-weight:600!important;cursor:pointer}
.fs-community-manage>button.danger,.fs-community-confirm button.danger{background:#fff5f4!important;border-color:#efd6d2!important;color:#a34c45!important}
.fs-community-confirm{padding:20px!important}.fs-community-confirm>div{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:10px;margin-top:20px}
.fs-community-detail-manage{grid-column:1/-1!important;margin:0!important}
@media(max-width:600px){.fs-community-manage>button{flex:1 1 120px!important}.fs-community-confirm>div>button{flex:1 1 120px!important}}

/* V27: codes consultables, logo plus aéré. */
.side-brand .brand-mark{background-size:76%!important;background-position:center!important;background-repeat:no-repeat!important;flex-shrink:0!important}
.fs-stored-code{margin-top:8px;max-width:100%;min-width:0}
.fs-stored-code .fs-stored-code-line{display:flex;align-items:center;gap:10px;min-width:0;max-width:100%}
.fs-stored-code code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace!important;font-size:15px;line-height:1.5;letter-spacing:.04em;color:#153c53;overflow-wrap:anywhere;min-width:0;user-select:text}
.fs-stored-code button.fs-code-eye{display:inline-flex!important;align-items:center!important;justify-content:center!important;flex:0 0 44px!important;width:44px!important;min-width:44px!important;height:44px!important;min-height:44px!important;padding:0!important;background:#f2f7fa!important;border:1px solid #dbe7ee!important;border-radius:10px!important;color:#146184!important}
.fs-stored-code button.fs-code-eye svg{width:20px;height:20px;flex-shrink:0}
.fs-stored-code button:focus-visible{outline:3px solid #278ec1;outline-offset:3px}
.fs-stored-code button:disabled{opacity:.45;cursor:not-allowed}
.fs-stored-code>small{display:block;font-size:12px;margin-top:4px;color:#617889}
.fs-stored-code>p{font-size:13px;line-height:1.5;color:#9c433c;margin:6px 0;max-width:50ch}
.fs-stored-code .fs-code-recover{display:grid;gap:8px;padding:12px;margin-top:10px;background:#f5f8fa;border:1px solid #dde7ec;border-radius:10px;max-width:420px}
.fs-stored-code .fs-code-recover label{display:grid;gap:5px;font-size:13px}
.fs-stored-code .fs-code-recover input{width:100%;min-width:0;min-height:44px;font-size:16px;padding:8px 10px;background:white;border:1px solid #cbdce6;border-radius:8px}
.fs-stored-code .fs-code-recover>div{display:flex;flex-wrap:wrap;gap:8px}
.fs-signup-multiple .fs-signup-list>article,.fs-temporary-list>article{align-items:center;min-width:0}
@media(max-width:600px){
 .fs-signup-multiple .fs-signup-list>article,.fs-temporary-list>article{display:flex!important;flex-wrap:wrap!important;gap:10px!important;padding:14px!important}
 .fs-signup-multiple .fs-signup-list>article>div,.fs-temporary-list>article>div{flex:1 1 100%!important;min-width:0!important}
 .fs-signup-multiple .fs-signup-list>article>button,.fs-temporary-list>article>button{margin-left:auto;min-height:44px}
 .fs-stored-code code{font-size:14px}
}

/* V28 — Zone de dépôt de la liste plus compacte. */
.fs-foire-card .fs-foire-upload{grid-template-columns:40px minmax(0,1fr) auto!important;min-height:0!important;padding:16px!important;gap:12px!important;border-width:1px!important;border-radius:14px!important}
.fs-foire-card .fs-foire-upload .fs-foire-upload-icon{width:40px!important;height:40px!important;font-size:25px!important;border-radius:11px!important}
.fs-foire-card .fs-foire-upload-copy{gap:4px!important}
.fs-foire-card .fs-foire-upload-copy>strong{font-size:17px!important;line-height:1.3!important}
.fs-foire-card .fs-foire-upload .fs-foire-upload-hint{font-size:13px!important;line-height:1.4!important}
.fs-foire-card .fs-foire-upload-copy>small{font-size:11px!important;line-height:1.4!important}
.fs-foire-card .fs-foire-upload .fs-foire-upload-choose{display:flex!important;align-items:center!important;justify-content:center!important;min-height:44px!important;font-size:13px!important;line-height:1.3!important;padding:10px 14px!important;border-radius:10px!important}
@media(max-width:700px){
 .fs-foire-card .fs-foire-upload{grid-template-columns:32px minmax(0,1fr)!important;padding:14px!important;gap:10px!important}
 .fs-foire-card .fs-foire-upload .fs-foire-upload-icon{width:32px!important;height:32px!important;font-size:22px!important;border-radius:9px!important}
 .fs-foire-card .fs-foire-upload-copy>strong{font-size:16px!important}
 .fs-foire-card .fs-foire-upload .fs-foire-upload-choose{grid-column:1/-1!important;width:100%!important}
}
.fs-signup-multiple button.fs-signup-delete,.fs-signup-delete-confirm button.fs-signup-delete{color:#a23d39!important;background:#fff5f4!important;border:1px solid #f1d7d5!important;min-height:44px;padding:10px 14px;border-radius:10px}
.fs-signup-delete-confirm{padding:22px;display:grid;gap:16px;color:#355a70}
.fs-signup-delete-confirm p{font-size:15px;line-height:1.6;margin:0}
.fs-signup-delete-confirm>div{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px}
.fs-signup-delete-confirm button{min-height:44px;padding:10px 16px;border:1px solid #dbe7ee;border-radius:10px}
.fs-signup-delete-confirm [role=alert]{color:#a23d39}
@media(max-width:600px){.fs-signup-multiple .fs-signup-list>article>button{margin-left:0}.fs-signup-delete-confirm{padding:16px}.fs-signup-delete-confirm>div>button{flex:1}}

/* V28 — Compteurs d’inscription alignés sur les petits écrans. */
@media(max-width:600px){
 .event-card-main .attendees{flex-direction:column!important;align-items:stretch!important;justify-content:flex-start!important;gap:8px!important;width:100%;min-width:0}
 .event-card-main .attendees>span{align-self:flex-start!important;margin:0!important}
 .event-card-main .attendees>span:empty{display:none!important}
 .event-card-main .attendees>small{display:grid!important;grid-template-columns:3ch minmax(0,1fr)!important;align-items:baseline!important;gap:6px!important;width:100%!important;margin:0!important;padding:0!important;text-align:left!important;font-size:12px!important;line-height:1.4!important;white-space:normal!important}
 .event-card-main .attendees>small>strong{display:block!important;margin:0!important;text-align:left!important;font-size:16px!important;line-height:1.2!important;font-variant-numeric:tabular-nums}
}

/* V28 — Le menu ne recouvre plus les fenêtres ni leurs validations. */
@media(max-width:900px){
 body:has(.modal-backdrop,.admin-account-backdrop,dialog[open]) .fs-mobile-five{display:none!important}
 .modal-backdrop,.admin-account-backdrop{z-index:2000!important;box-sizing:border-box!important;inset:0!important;width:100%!important;height:100vh!important;height:100dvh!important;padding:calc(8px + env(safe-area-inset-top,0px)) 8px calc(8px + env(safe-area-inset-bottom,0px))!important;align-items:center!important;justify-content:center!important;overscroll-behavior:contain;overflow-x:hidden!important;overflow-y:auto!important}
 .modal-backdrop.fs-confirm-backdrop{z-index:2010!important}
 .modal-backdrop.fs-doc-backdrop{z-index:2020!important}
 .modal-backdrop>*{min-width:0!important;max-width:100%!important;box-sizing:border-box!important}
 .modal-backdrop>:not(.fs-offer-dialog),.admin-account-backdrop>form{max-height:calc(100vh - 16px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px))!important;max-height:calc(100dvh - 16px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px))!important;min-height:0!important;overflow-y:auto!important;overscroll-behavior:contain;scroll-padding-block:64px 28px;-webkit-overflow-scrolling:touch}
 .modal-backdrop>.offer-modal.fs-offer-dialog{height:calc(100dvh - 16px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px))!important;max-height:calc(100dvh - 16px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px))!important}
 .event-popup-copy{padding:20px 18px 28px!important}
 .modal-backdrop>.registration-modal{padding:24px 18px 28px!important;margin:0!important;border-radius:18px!important}
 .modal-backdrop>.participant-drawer{padding-bottom:28px!important}
 .fs-detail-dialog{max-height:calc(100dvh - 16px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px))!important;scroll-padding-bottom:28px;padding-bottom:env(safe-area-inset-bottom,0px)}
 .fs-offer-editor-footer{bottom:0!important;margin-bottom:0!important;padding-bottom:14px!important}
 .modal-backdrop :is(button.primary-button,button[type=submit],.event-popup-actions>a){min-height:44px!important;white-space:normal!important;overflow-wrap:anywhere}
 .main-area{padding-bottom:calc(100px + env(safe-area-inset-bottom,0px))!important}
}

/* V29 — Carte à la une compacte, sans hauteur vide héritée. */
@media(max-width:700px){
 .hero-card.real-event-hero{height:auto!important;min-height:320px!important;padding:18px!important;margin:18px 0!important}
 .hero-card.real-event-hero .hero-copy{min-height:0!important;height:auto!important;margin:64px 0 0!important;padding:0!important;background:transparent!important}
 .hero-card.real-event-hero .hero-copy>p:first-child{margin-bottom:8px!important;line-height:1.4!important}
 .hero-card.real-event-hero .hero-copy h2{font-size:26px!important;line-height:1.15!important;margin-bottom:8px!important}
 .hero-card.real-event-hero .hero-copy>.fs-hero-subtitle{font-size:16px!important;line-height:1.3!important;margin-bottom:10px!important}
 .hero-card.real-event-hero .hero-copy>span{font-size:13px!important;line-height:1.4!important;margin-bottom:12px!important}
 .hero-card.real-event-hero .hero-copy>button{min-height:44px!important;padding:10px 14px!important;max-width:none!important}
 .hero-card.real-event-hero .hero-art{inset:14px 14px auto auto!important;width:46px!important;height:56px!important}
 .hero-card.real-event-hero .hero-art em{width:46px!important;height:56px!important;font-size:22px!important;border-radius:11px!important}
}

/* V30 — Navigation administrative homogène et lisible. */
.fs-admin-v15 .fs-admin-main-nav{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px!important;padding:0!important;margin:0 0 12px!important;background:transparent!important;border:0!important;border-radius:0!important}
.fs-admin-v15 .fs-admin-main-nav>a{display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:10px!important;min-width:0;min-height:58px;box-sizing:border-box;padding:11px 13px!important;border:1px solid #dce7ee!important;border-radius:12px!important;background:#fff!important;color:#35556b!important;font-size:13px!important;line-height:1.35!important;font-weight:600!important;text-align:left!important;box-shadow:none!important;text-decoration:none}
.fs-admin-v15 .fs-admin-main-nav>a.active{background:#102f48!important;border-color:#102f48!important;color:#fff!important;box-shadow:0 3px 9px #102f4814!important}
.fs-admin-v15 .fs-admin-main-nav .fs-admin-nav-icon{display:grid!important;place-items:center!important;flex:0 0 28px!important;width:28px!important;height:28px!important;margin:0!important;padding:0!important;border-radius:8px!important;background:#edf5fa!important;color:#176587!important}
.fs-admin-v15 .fs-admin-main-nav>a.active .fs-admin-nav-icon{color:#fff!important;background:#ffffff1a!important}
.fs-admin-v15 .fs-admin-main-nav .fs-admin-nav-label{flex:1!important;min-width:0;white-space:normal!important;overflow-wrap:normal;word-break:normal}
.fs-admin-main-nav .fs-admin-nav-icon svg{display:block;width:18px;height:18px}
.fs-admin-v15 .fs-admin-main-nav>a>b{flex:none;margin-left:auto;min-width:21px;border-radius:20px;padding:2px 5px;font-size:11px;background:#e4f0f7;color:#17465d}
.fs-admin-main-nav>a:focus-visible{outline:3px solid #53a2ca;outline-offset:3px}
@media(hover:hover){.fs-admin-v15 .fs-admin-main-nav>a:hover:not(.active){background:#f4f9fc!important;border-color:#91bad0!important}}

/* Hauteur naturelle des en-têtes : les bases flex en pixels étaient verticales sur mobile. */
@media(max-width:900px){
 .fs-admin-v15 :is(.panel-title,.admin-section-heading,.fs-admin-section-header,.fs-section-heading-v25){height:auto!important;min-height:0!important;max-height:none!important;flex-direction:column!important;align-items:stretch!important;justify-content:flex-start!important;gap:12px!important;flex:0 1 auto!important}
 .fs-admin-v15 :is(.panel-title,.admin-section-heading,.fs-admin-section-header,.fs-section-heading-v25)>div{flex:0 1 auto!important;flex-basis:auto!important;height:auto!important;min-height:0!important;width:100%!important;margin-block:0!important}
 .fs-admin-v15 :is(.panel-title,.admin-section-heading,.fs-admin-section-header,.fs-section-heading-v25)>:is(button,a,span){flex:0 1 auto!important;align-self:flex-start}
 .fs-admin-v15 :is(.fs-admin-section-header,.fs-section-heading-v25){margin-bottom:18px!important}
 .fs-admin-v15 .enrollment-manager>.panel-title{padding:18px!important;margin:0!important}
 .fs-admin-v15 .notification-email-settings>.panel-title{padding:0!important;margin:0 0 16px!important}
 .fs-admin-v15 .notification-email-settings form{padding:0!important;gap:12px!important}
 .fs-admin-v15 .notification-email-settings form>div{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:10px!important}
 .fs-admin-v15 .notification-email-settings input{flex:0 1 auto!important;width:100%!important;min-width:0!important;font-size:16px!important;min-height:46px!important}
 .fs-admin-v15 .notification-email-settings form button{width:100%!important;min-height:44px!important;font-size:14px!important;padding:11px 14px!important}
 .fs-admin-v15 .fs-accounts{padding:18px!important}
 .fs-admin-v15 .fs-accounts>.fs-admin-section-header{margin:0 0 18px!important;padding:0!important;text-align:left!important}
 .fs-admin-v15 :is(.panel-title,.fs-admin-section-header,.fs-section-heading-v25) h2{font-size:24px!important;line-height:1.25!important;margin:4px 0 8px!important;overflow-wrap:anywhere}
 .fs-admin-v15 .enrollment-manager .panel-title h2 b{white-space:nowrap}
 .fs-admin-v15 .fs-admin-main-nav{grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-auto-rows:1fr!important;gap:8px!important}
 .fs-admin-v15 .fs-admin-main-nav>a{min-height:60px!important;padding:10px!important;gap:8px!important}
}
@media(max-width:360px){.fs-admin-v15 .fs-admin-main-nav>a{font-size:12px!important;padding:9px 8px!important;gap:6px!important}.fs-admin-v15 .fs-admin-main-nav .fs-admin-nav-icon{flex-basis:24px!important;width:24px!important;height:26px!important}}

/* Mes demandes : résumé compact ; suivi, informations et actions au clic. */
.my-enrollments.redesigned.compact-requests>article.fs-request-compact{display:grid!important;grid-template-columns:minmax(0,1fr) 24px!important;gap:0 12px!important;align-items:start!important;padding:18px!important;min-height:0!important;background:#fff!important;border:1px solid #dce7ee!important;border-radius:16px!important;box-shadow:0 3px 12px #183c5205!important;position:relative}
.my-enrollments.redesigned.compact-requests>article.fs-request-compact>.request-select{position:static!important;grid-column:2!important;grid-row:1!important;align-self:start!important;width:24px!important;min-width:0!important;margin:4px 0 0!important;padding:0!important;background:transparent!important;border:0!important}
.fs-request-compact>.request-select>input{width:20px!important;height:20px!important;min-width:20px!important;min-height:20px!important;margin:0!important}
.fs-request-compact>.request-select>span{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip-path:inset(50%)!important;white-space:nowrap!important}
.fs-request-compact>.fs-request-summary{grid-column:1!important;grid-row:1!important;display:block!important;width:100%!important;min-width:0!important;margin:0!important;padding:0!important;background:transparent!important;border:0!important;color:#173c54!important;text-align:left!important;cursor:pointer;border-radius:8px}
.fs-request-compact>.fs-request-summary:focus-visible{outline:3px solid #4094be;outline-offset:5px}
.fs-request-compact .fs-request-summary .request-card-head{display:grid!important;grid-template-columns:38px minmax(0,1fr)!important;align-items:start!important;gap:7px 11px!important;padding:0!important;margin:0!important;min-width:0!important}
.fs-request-summary .request-symbol{grid-column:1!important;grid-row:1/3!important;width:38px!important;height:38px!important;border-radius:10px!important;margin:0!important;font-size:19px!important;display:grid!important;place-items:center!important}
.fs-request-summary .request-main{grid-column:2!important;min-width:0!important;margin:0!important;padding:0!important}
.fs-request-summary .request-main>p,.fs-request-summary .request-main>small{display:none!important}
.fs-request-summary .request-main>strong{display:block!important;margin:0 0 5px!important;font-size:16px!important;line-height:1.35!important;overflow-wrap:anywhere;white-space:normal!important}
.fs-request-summary .request-main>time{display:block!important;font-size:12px!important;line-height:1.4!important;margin:0!important;color:#647b8b!important}
.fs-request-summary .request-card-head>.status-chip{grid-column:2!important;justify-self:start!important;margin:0!important;padding:5px 9px!important;font-size:10px!important;line-height:1.4!important;white-space:normal!important;max-width:100%}
.fs-request-summary-link{display:flex!important;align-items:center;gap:8px;margin:10px 0 0 49px;font-size:12px;line-height:1.4;font-weight:600;color:#176b90}
.fs-request-summary-link>span{font-size:18px;line-height:1}
.fs-request-compact .fs-request-expanded{grid-column:1/-1!important;min-width:0;border-top:1px solid #e2ebf1;margin-top:16px;padding-top:16px;display:grid;gap:16px}
.fs-request-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 18px;margin:0}
.fs-request-facts>div{min-width:0}
.fs-request-facts dt{font-size:11px;color:#6b8191;margin-bottom:3px}
.fs-request-facts dd{font-size:13px;line-height:1.5;color:#24475f;margin:0;overflow-wrap:anywhere}
.fs-request-expanded>.request-card-footer{margin:0!important;padding-top:12px!important;min-width:0!important}
.fs-request-expanded .request-card-actions{display:flex!important;flex-wrap:wrap!important;gap:8px!important;min-width:0!important}
.fs-request-expanded .request-card-actions>button{min-height:44px!important;white-space:normal!important;font-size:13px!important}
@media(max-width:600px){
 .my-enrollments.redesigned.compact-requests>article.fs-request-compact{padding:15px!important;gap:0 8px!important}
 .fs-request-facts{grid-template-columns:minmax(0,1fr)}
 .request-management-bar{padding:16px!important;gap:12px!important}
 .request-management-bar :is(button,select){min-height:44px!important;font-size:13px!important}
 .request-management-bar>div:empty{display:none!important}
}

/* Boutons d’activité : même gabarit tactile que les autres actions. */
.events-header>.event-create{font-family:inherit!important;font-size:14px!important;line-height:1.4!important;font-weight:650!important;min-height:46px!important;padding:11px 16px!important;border-radius:12px!important;white-space:normal!important;max-width:100%!important;display:inline-flex!important;align-items:center;justify-content:center;gap:8px}
@media(max-width:700px){.events-header{align-items:flex-start!important;gap:16px!important}.events-header>.event-create{align-self:flex-start!important;width:auto!important;margin:0!important}}

/* La messagerie reste lisible et le formulaire d’envoi accessible. */
@media(max-width:600px){.fs-message-compose textarea{font-size:16px!important}.fs-message-compose button{font-size:14px!important;min-height:44px!important}.fs-conversation{min-width:0!important}.fs-message-bubble{overflow-wrap:anywhere}.fs-message-history{min-width:0!important}.fs-request-expanded .fund-message{min-width:0;overflow-wrap:anywhere}}
/* V30 — Relances ciblées, préférences de réception et types de demandes. */
.fs-promotions{width:100%;min-width:0;display:grid;gap:20px;color:#173c54}
.fs-promotions :is(header,fieldset,section,article,form,div){min-width:0;box-sizing:border-box}
.fs-promotions :is(h2,h3,h4,p){height:auto!important;min-height:0!important;overflow-wrap:anywhere}
.fs-promotions h2{font-size:26px!important;line-height:1.25!important;margin:5px 0 12px!important}
.fs-promotions h3{font-size:19px!important;line-height:1.35!important;margin:0 0 12px!important}
.fs-promotions h4{font-size:15px!important;line-height:1.4!important;margin:0 0 6px!important}
.fs-promotions p{font-size:14px;line-height:1.6;margin:8px 0;color:#5c7485}
.fs-promo-header{display:flex!important;align-items:flex-start;justify-content:space-between;gap:18px;min-height:0!important;height:auto!important;padding:0!important;margin:0!important;background:none!important}
.fs-promo-header>div{flex:1 1 auto!important;height:auto!important;min-height:0!important}
.fs-promo-header>button{flex:none!important}
.fs-promotions :is(button,input,select,textarea){font-family:inherit!important;box-sizing:border-box;max-width:100%;min-width:0}
.fs-promotions button{min-height:44px!important;padding:10px 14px!important;border-radius:10px!important;font-size:13px!important;line-height:1.4!important;font-weight:600!important;white-space:normal!important;border:1px solid #d4e3ed;background:#fff;color:#1d5976;cursor:pointer}
.fs-promotions button.primary-button{background:#0c648b!important;color:#fff!important;border-color:#0c648b!important}
.fs-promotions button:disabled{opacity:.5;cursor:default}
.fs-promotions :is(button,input,select,textarea,summary):focus-visible,.fs-request-type-filters button:focus-visible{outline:3px solid #5dabc9;outline-offset:3px}
.fs-promo-editor,.fs-promo-panel{border:1px solid #dce7ee!important;border-radius:16px!important;background:#fff!important;padding:22px!important;margin:0!important;box-shadow:0 4px 16px #14364c05}
.fs-promo-editor{display:grid!important;gap:22px!important}
.fs-promo-editor-title{display:flex!important;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px}
.fs-promo-editor-title h3,.fs-promo-editor-title h4{margin:0!important}
.fs-promotions fieldset{border:0!important;padding:0!important;margin:0!important;min-width:0!important;display:grid!important;gap:14px!important;width:100%!important}
.fs-promotions legend{float:none!important;width:100%;padding:0 0 12px!important;margin:0!important;font-size:16px!important;font-weight:700;color:#173c54;border-bottom:1px solid #e4ecf1}
.fs-promotions .fs-promo-field{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:7px!important;margin:0!important;align-items:start!important;font-size:13px!important;color:#36586f}
.fs-promotions .fs-promo-field>span{font-weight:600}
.fs-promotions .fs-promo-field :is(input,select,textarea){display:block;width:100%!important;min-height:44px!important;margin:0!important;padding:11px 12px!important;border:1px solid #cfdee8!important;background:#fff!important;border-radius:10px!important;font-size:14px!important;color:#173c54}
.fs-promotions .fs-promo-field textarea{min-height:128px!important;resize:vertical;line-height:1.6}
.fs-promo-options{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:0!important;max-height:260px;overflow-y:auto;overscroll-behavior:contain;border:1px solid #dce7ee;border-radius:10px;padding:6px!important;margin:0!important;list-style:none}
.fs-promotions .fs-promo-check{display:flex!important;flex-direction:row!important;align-items:flex-start!important;justify-content:flex-start!important;gap:10px!important;margin:0!important;padding:9px 6px!important;min-height:44px!important;line-height:1.45;font-size:13px!important;cursor:pointer}
.fs-promotions .fs-promo-check input{flex:0 0 20px!important;width:20px!important;height:20px!important;min-height:20px!important;padding:0!important;margin:0!important;accent-color:#08688f}
.fs-promotions .fs-promo-check>span{flex:1;min-width:0}
.fs-promotions .fs-promo-check small{display:block;font-size:11px;color:#738998;margin-top:3px;overflow-wrap:anywhere}
.fs-promo-two{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px 20px!important}
.fs-promotions .fs-promo-help{font-size:12px!important;line-height:1.6!important;color:#607889!important;margin:4px 0!important}
.fs-promotions details{min-width:0}
.fs-promotions summary{font-weight:600;font-size:14px;cursor:pointer;padding:10px 0;min-height:44px;line-height:1.5}
.fs-promotions .fs-promo-actions{display:flex!important;flex-wrap:wrap!important;align-items:center;gap:8px!important;min-width:0!important}
.fs-promotions .fs-promo-actions button{flex:0 1 auto!important;width:auto!important;margin:0!important}
.fs-promo-preview{display:grid;gap:12px;padding:18px!important;background:#f0f8fb!important;border:1px solid #a9d2e4!important;border-radius:12px!important}
.fs-promo-copy{white-space:pre-wrap;overflow-wrap:anywhere}
.fs-promo-list{display:grid;gap:12px}
.fs-promo-list>article{display:flex!important;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px;min-height:0!important;height:auto!important;padding:16px!important;border:1px solid #e0e9ef!important;border-radius:12px!important;background:#fafcfd!important}
.fs-promo-list>article>div:first-child{flex:1 1 260px;min-width:0}
.fs-promo-list time{font-size:12px;color:#607889}
.fs-promo-report{margin-top:18px;padding:16px;border-top:1px solid #d8e6ef}
.fs-promo-report ul{list-style:none;margin:0;padding:0;max-height:440px;overflow-y:auto}
.fs-promo-report li{display:grid;gap:5px;border-bottom:1px solid #e3edf2;padding:12px 0;font-size:13px;overflow-wrap:anywhere}
.fs-promo-report small{color:#687f8e}
.fs-promotion-preferences{border:1px solid #dbe7ee!important;border-radius:12px;padding:18px!important;margin:18px 0!important;min-width:0;display:grid!important;gap:12px}
.fs-promotion-preferences legend{font-size:17px;font-weight:700;padding:0 6px;color:#173c54}
.fs-promotion-preferences label{display:flex!important;align-items:flex-start!important;gap:10px!important;margin:0!important;min-height:38px;line-height:1.5}
.fs-promotion-preferences input{flex:none;width:20px!important;height:20px!important;min-height:20px!important;padding:0!important;margin:1px 0 0!important;accent-color:#08688f}
.fs-promotion-preferences :is(p,small){font-size:12px;line-height:1.6;margin:0;color:#627b8c}
.fs-request-type-filters{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 18px;min-width:0}
.fs-request-type-filters button{min-height:44px;padding:10px 15px;border:1px solid #d5e4ed;border-radius:11px;background:#fff;color:#375d76;font-family:inherit;font-size:13px;line-height:1.4;cursor:pointer;white-space:normal}
.fs-request-type-filters button.active{background:#123c56;border-color:#123c56;color:#fff;font-weight:650}
@media(max-width:700px){
 .fs-promo-header{flex-direction:column!important;gap:10px!important}
 .fs-promo-header>div{flex:0 1 auto!important;width:100%!important}
 .fs-promo-header>button{align-self:flex-start}
 .fs-promo-editor,.fs-promo-panel{padding:16px!important;border-radius:12px!important}
 .fs-promotions h2{font-size:24px!important}
 .fs-promo-two{grid-template-columns:minmax(0,1fr)!important}
 .fs-promotions .fs-promo-field :is(input,select,textarea){font-size:16px!important}
 .fs-promo-list>article{padding:13px!important;flex-direction:column!important;align-items:stretch!important}
 .fs-promo-list>article>div:first-child{flex:0 1 auto!important}
 .fs-promotions .fs-promo-actions button{flex:1 1 140px!important}
 .fs-promo-options{max-height:220px}
 .fs-promo-editor-title{align-items:flex-start}
 .fs-request-type-filters{gap:7px}
 .fs-request-type-filters button{flex:1 1 100px;padding:10px 9px;font-size:12px}
 .request-filter-controls{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;width:100%!important}
 .request-filter-controls>.archive-view{grid-column:1/-1}
 .request-filter-controls>select{width:100%!important;min-width:0!important}
}
/* Priorité explicite sur les anciennes bases flex et les grilles des cartes. */
@media(max-width:900px){.fs-admin-v15 .fs-section-heading-v25>div:first-child{flex:0 1 auto!important;flex-basis:auto!important;height:auto!important;min-height:0!important}}
.my-enrollments.compact-requests .fs-request-summary .request-symbol{width:38px!important;height:38px!important;font-size:19px!important;border-radius:10px!important}
.my-enrollments.compact-requests .fs-request-summary .request-main>strong{font-size:16px!important;line-height:1.35!important}
.my-enrollments.compact-requests .fs-request-summary .request-card-head>.status-chip{font-size:10px!important;margin:0!important;padding:5px 9px!important;grid-column:2!important;max-width:100%!important;width:auto!important}
.my-enrollments.compact-requests .fs-request-compact>.request-select input{width:20px!important;height:20px!important}
.my-enrollments.compact-requests .fs-request-expanded{grid-template-columns:minmax(0,1fr)!important}
.my-enrollments.compact-requests .fs-request-expanded>*{grid-area:auto!important;grid-column:auto!important;grid-row:auto!important;min-width:0!important;max-width:100%!important}
.my-enrollments.compact-requests .fs-request-expanded>.request-card-footer{margin:0!important;display:flex!important}
.my-enrollments.compact-requests .fs-request-expanded :is(.payment-progress,.fund-message){min-width:0!important;width:100%!important;box-sizing:border-box}
@media(max-width:700px){.events-header{display:flex!important;flex-direction:column!important}.events-header>.event-create{position:static!important;transform:none!important}}
/* Catégories des partenaires : même pastille photo que les offres YCM. */
.offer-visual>.fs-offer-category-pill{position:absolute!important;top:14px!important;left:14px!important;right:auto!important;bottom:auto!important;z-index:3;display:inline-flex;align-items:center;width:fit-content;max-width:calc(100% - 78px);box-sizing:border-box;border-radius:999px;padding:9px 14px;background:rgba(255,255,255,.94);color:#102b43;font-size:11px;font-weight:750;line-height:1.4;letter-spacing:.07em;text-transform:uppercase;white-space:normal;overflow-wrap:anywhere;box-shadow:0 3px 12px #0b20351a}
.offer-card .offer-footer{flex-wrap:wrap;gap:8px}
.offer-card .offer-footer .fs-offer-card-edit{position:static!important;display:inline-flex!important;align-items:center;justify-content:center;min-height:40px;padding:9px 12px!important;font-size:12px!important;line-height:1.35!important;border:1px solid #cbdfe9!important;border-radius:10px!important;background:#fff!important;color:#20546f!important;box-shadow:none!important;white-space:normal!important}
.offer-grid.fs-offer-list .offer-visual>.fs-offer-category-pill{top:9px!important;left:8px!important;max-width:calc(100% - 16px);font-size:10px;padding:7px 9px}
.offer-grid.fs-offer-list .offer-visual>.favorite-button{top:auto!important;bottom:10px!important;right:8px!important}
.offer-grid.fs-offer-list .offer-visual>.fs-custom-badge{bottom:58px!important}

/* V32 — Isoler les dimensions des boutons des relances du bouton global. */
.fs-promotions button.primary-button,
.fs-promotions button.secondary-button {
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:auto!important;
  min-width:0!important;
  max-width:100%!important;
  height:auto!important;
  min-height:44px!important;
  margin:0!important;
  box-sizing:border-box!important;
  position:static!important;
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:break-word!important;
  box-shadow:none!important;
  transform:none!important;
}
.fs-promotions>.fs-promo-header {
  display:flex!important;
  flex-direction:row!important;
  flex-wrap:wrap!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:16px!important;
  width:100%!important;
  min-width:0!important;
  height:auto!important;
}
.fs-promotions>.fs-promo-header>div {
  flex:1 1 320px!important;
  width:auto!important;
  min-width:0!important;
  max-width:100%!important;
  height:auto!important;
}
.fs-promotions>.fs-promo-header>button {
  flex:0 1 auto!important;
  width:auto!important;
  align-self:flex-start!important;
  margin:0!important;
}
.fs-promotions>.fs-promo-header :is(h2,p) {
  width:auto!important;
  max-width:100%!important;
  word-break:normal!important;
  overflow-wrap:break-word!important;
  white-space:normal!important;
  writing-mode:horizontal-tb!important;
}
.fs-promotions .fs-promo-editor-title {
  flex-wrap:wrap!important;
}
.fs-promotions .fs-promo-editor-title>:is(h3,h4) {
  flex:1 1 200px!important;
  min-width:0!important;
}
.fs-promotions .fs-promo-editor-title>button {
  flex:0 1 auto!important;
}
.fs-promotions .fs-promo-preview>button {
  justify-self:start!important;
}
@media(max-width:700px) {
  .fs-promotions>.fs-promo-header {
    flex-direction:column!important;
    align-items:stretch!important;
    gap:12px!important;
  }
  .fs-promotions>.fs-promo-header>div {
    flex:0 1 auto!important;
    width:100%!important;
  }
  .fs-promotions>.fs-promo-header>button {
    flex:0 1 auto!important;
    align-self:flex-start!important;
    width:auto!important;
  }
  .fs-promotions .fs-promo-editor-title>:is(h3,h4) {
    flex:1 1 180px!important;
  }
}

/* V35 — Amener le formulaire dans la zone visible après ouverture. */
.fs-promotions .fs-promo-editor{scroll-margin-top:100px;min-width:0!important;max-width:100%!important}
.fs-promotions .fs-promo-editor:focus-visible{outline:2px solid #4094be;outline-offset:4px}

/* V35 — Même échelle typographique pour les deux groupes de préférences. */
.fs-profile-page :is(.preference-box,.fs-promotion-preferences) {
  font-family:inherit!important;
  font-size:14px!important;
  line-height:1.5!important;
  min-width:0!important;
  max-width:100%!important;
  box-sizing:border-box!important;
}
.fs-profile-page .preference-box h2,
.fs-profile-page .fs-promotion-preferences legend {
  font-family:inherit!important;
  font-size:18px!important;
  font-weight:650!important;
  line-height:1.4!important;
  color:#173c54!important;
}
.fs-profile-page :is(.preference-box,.fs-promotion-preferences) label {
  display:flex!important;
  align-items:flex-start!important;
  gap:10px!important;
  min-height:40px!important;
  margin:0!important;
  padding:8px 0!important;
  box-sizing:border-box!important;
  font-size:14px!important;
  font-weight:400!important;
  line-height:1.5!important;
}
.fs-profile-page :is(.preference-box,.fs-promotion-preferences) label>span {
  font-size:inherit!important;
  font-weight:inherit!important;
  line-height:inherit!important;
  min-width:0!important;
  overflow-wrap:break-word;
}
.fs-profile-page :is(.preference-box,.fs-promotion-preferences) input[type=checkbox] {
  flex:0 0 18px!important;
  width:18px!important;
  height:18px!important;
  min-width:18px!important;
  min-height:18px!important;
  padding:0!important;
  margin:2px 0 0!important;
  accent-color:#08688f;
}
.fs-profile-page .fs-promotion-preferences :is(p,small) {
  font-size:13px!important;
  line-height:1.6!important;
  font-weight:400!important;
  margin:0!important;
  color:#627b8c!important;
}

/* V36 — Cartes d’annonces : catégorie sur l’image, date sous le titre. */
.fs-community-card .fs-community-open-image>.fs-community-category-badge {
  position:absolute;
  top:14px;
  left:14px;
  z-index:1;
  display:block;
  max-width:calc(100% - 28px);
  box-sizing:border-box;
  padding:7px 12px;
  border:1px solid #dce7ee;
  border-radius:999px;
  background:#fff;
  color:#173c54;
  font-size:12px;
  font-weight:700;
  line-height:1.4;
  letter-spacing:.03em;
  text-align:left;
  white-space:normal;
  overflow-wrap:anywhere;
  pointer-events:none;
  box-shadow:0 2px 8px #173c5410;
}
.fs-community-card .fs-community-card-body>.fs-community-card-date {
  display:block;
  margin:-4px 0 2px;
  color:#718697;
  font-size:12px;
  font-weight:400;
  line-height:1.5;
}

/* Les photos remplissent les cartes, y compris celles configurées en contain. */
.offer-card .offer-visual.has-image {
  background-size:cover!important;
  background-position:center center!important;
  background-repeat:no-repeat!important;
  overflow:hidden;
}
.fs-community-card .fs-community-open-image>img {
  width:100%!important;
  object-fit:cover!important;
  object-position:center center!important;
}

/* V37 — Embellir l’identité existante, sans changer les couleurs ni la structure. */
:root {--fs-ink:#13364e;--fs-muted:#526d80;--fs-line:#dce6ed;--fs-focus:#14769d}
/* Relief discret : les couleurs personnalisées des cartes sont conservées. */
#root :is(.offer-card,.fs-community-card,.fs-resource-card) {
  box-shadow:0 4px 18px rgba(7,27,54,.045),inset 0 1px 0 rgba(255,255,255,.45)!important;
  transition:box-shadow .2s ease,transform .2s ease,border-color .2s ease;
}
#root :is(.hero-card.real-event-hero,.fs-admin-main-nav>a.active) {
  box-shadow:0 6px 22px rgba(7,27,54,.12),inset 0 1px 0 rgba(255,255,255,.14)!important;
}
#root :is(.fs-community-open-image,.offer-visual.has-image) {overflow:hidden}
#root .fs-community-open-image>img {transition:transform .35s ease}
#root :is(.fs-community-category-badge,.fs-offer-category-pill) {
  box-shadow:0 3px 14px rgba(7,27,54,.10),inset 0 1px 0 rgba(255,255,255,.7)!important;
}
#root :is(button.primary-button,.fs-bulk-primary,.event-create,.fs-community-view,.fs-admin-main-nav>a,.fs-admin-subnav>a) {
  transition:box-shadow .18s ease,transform .18s ease,border-color .18s ease;
}
@media(hover:hover) and (pointer:fine) {
  #root :is(.offer-card:not(.fs-unavailable),.fs-community-card):hover {
    transform:translateY(-2px);
    box-shadow:0 10px 28px rgba(7,27,54,.09),inset 0 1px 0 rgba(255,255,255,.6)!important;
  }
  #root .fs-resource-card:hover {box-shadow:0 7px 22px rgba(7,27,54,.075)!important}
  #root .fs-community-open-image:hover>img {transform:scale(1.025)}
  #root :is(button.primary-button,.fs-bulk-primary,.event-create,.fs-community-view):not(:disabled):hover {
    box-shadow:0 5px 14px rgba(7,27,54,.14)!important;
    transform:translateY(-1px);
  }
  #root :is(.fs-admin-main-nav>a,.fs-admin-subnav>a):hover {box-shadow:0 3px 12px rgba(7,27,54,.07)!important}
}
#root :is(button.primary-button,.fs-bulk-primary,.event-create,.fs-community-view):not(:disabled):active {transform:translateY(0)}
#root :is(button,a,input,select,textarea,summary,[tabindex]):focus-visible {outline:3px solid var(--fs-focus)!important;outline-offset:3px!important}
#root :is(.fs-community-contact,.fs-message-body,.fs-account-person,.fs-promo-copy) {overflow-wrap:anywhere;min-width:0}
#root .fs-admin-sidebar-groups>button>span:first-child {display:inline-flex;align-items:center;justify-content:center}
#root .fs-admin-sidebar-groups svg {width:20px;height:20px;flex:none}
/* Conserver la catégorie et le badge commercial lisibles simultanément. */
#root .offer-visual:has(>.fs-offer-category-pill)>.fs-custom-badge {top:auto!important;bottom:14px!important;left:14px!important;right:auto!important;max-width:calc(100% - 28px)!important}
#root .fs-community-card .fs-community-open-image {flex-shrink:0}
#root :is(.fs-community-tools,.request-filter-controls,.fs-account-filters,.fs-promo-editor) :is(input,select,textarea) {min-width:0!important;max-width:100%!important;box-sizing:border-box!important}
#root :is(.fs-community-tools,.request-filter-controls)>div {min-width:0!important}
@media(max-width:700px) {
  #root :is(.fs-community-tools,.fs-promo-editor,.fs-admin-form-grid,.fs-account-filters,.request-filter-controls,.fs-message-compose,.fs-detail-form-grid) :is(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]),select,textarea) {font-size:16px!important}
  #root .fs-community-tools>div {flex:1 1 100%!important;width:100%!important}
  #root .fs-community-tools :is(input,select) {width:100%!important;max-width:none!important;flex:1 1 100%!important}
  #root .fs-admin-subnav {flex-wrap:wrap!important;gap:8px!important}
  #root .fs-admin-subnav>a {min-width:0!important;min-height:44px!important;white-space:normal!important}
  #root .fs-message-compose {min-width:0!important;flex-wrap:wrap!important}
  #root .fs-message-compose textarea {min-width:0!important;max-width:100%!important}
}
@media(prefers-reduced-motion:reduce) {
  html {scroll-behavior:auto!important}
  #root *,#root *::before,#root *::after {scroll-behavior:auto!important;animation:none!important;transition:none!important}
  #root :is(.offer-card,.fs-community-card,.fs-community-open-image>img,button.primary-button,.fs-bulk-primary,.event-create,.fs-community-view) {transform:none!important}
}

/* Reprise après une erreur d’affichage, sans message technique ni page vide. */
.fs-interface-recovery,.fs-startup-status {
  box-sizing:border-box;
  width:calc(100% - 32px);
  max-width:580px;
  margin:48px auto;
  padding:28px;
  border:1px solid #dce6ed;
  border-radius:18px;
  background:#fff;
  color:#13364e;
  font-family:inherit;
  line-height:1.6;
}
.fs-interface-recovery h1,.fs-startup-status h1 {font-size:24px;line-height:1.3;margin:0 0 12px}
.fs-interface-recovery p,.fs-startup-status p {font-size:15px;margin:0 0 18px}
.fs-interface-recovery button,.fs-startup-status button {font:inherit;font-weight:600;min-height:44px;padding:11px 18px;background:#13364e;color:white;border:0;border-radius:10px;cursor:pointer}
.fs-startup-status[hidden] {display:none!important}
#root .event-create,.fs-proposal-form button {font-family:inherit!important;font-size:14px!important;line-height:1.4!important;min-height:44px!important;padding:11px 16px!important;border-radius:11px!important;white-space:normal!important;max-width:100%!important}
#root .fs-proposal-action {flex:0 1 auto;max-width:400px;min-width:0}
#root .fs-proposal-action p,#root .fs-proposal-action small {font-size:13px;line-height:1.5;color:var(--fs-muted);margin:10px 0 0}
.fs-proposal-form {padding:24px;min-width:0}
.fs-proposal-form p {font-size:14px;line-height:1.6;color:#526d80}
.fs-proposal-form fieldset {display:grid;gap:16px;border:0;padding:0;margin:20px 0;min-width:0}
.fs-proposal-form label {display:grid;gap:8px;font-size:14px;font-weight:600}
.fs-proposal-form :is(input,textarea) {box-sizing:border-box;width:100%;min-width:0;border:1px solid #cbdce7;border-radius:10px;padding:12px;font:inherit;font-size:16px;line-height:1.5}
.fs-proposal-form textarea {resize:vertical}
.fs-proposal-form footer {display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}
.fs-visually-hidden-v37 {position:absolute!important;width:1px!important;height:1px!important;padding:0!important;overflow:hidden!important;clip-path:inset(50%)!important;white-space:nowrap!important}
@media(max-width:700px){#root .events-header{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:16px!important}#root .events-header>*{flex:0 1 auto!important;min-width:0!important;max-width:100%!important}.fs-proposal-form{padding:18px}}
#root .fs-agenda-month-v37 {display:grid;grid-template-columns:minmax(280px,.9fr) minmax(0,1.3fr);gap:24px;align-items:start}
#root .fs-agenda-month-v37 .month-calendar {min-width:0;padding:20px;border:1px solid var(--fs-line);border-radius:18px;background:#fff}
#root .fs-agenda-month-v37 .month-calendar>header,#root .fs-agenda-year-v37 .year-title {display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;min-height:0!important;height:auto!important;margin:0 0 18px!important}
#root .fs-agenda-month-v37 .month-calendar>header h2,#root .fs-agenda-year-v37 .year-title h2 {font-size:22px!important;line-height:1.3!important;text-align:center;margin:0;text-transform:capitalize}
#root :is(.fs-agenda-month-v37 .month-calendar>header,.fs-agenda-year-v37 .year-title)>button {width:44px!important;height:44px!important;min-width:44px!important;flex:0 0 44px!important;margin:0!important;padding:8px!important;border:1px solid var(--fs-line);background:white;color:var(--fs-ink);border-radius:10px;cursor:pointer}
#root .fs-agenda-month-v37 .calendar-grid {display:grid!important;grid-template-columns:repeat(7,minmax(0,1fr))!important;gap:5px!important}
#root .fs-agenda-month-v37 .calendar-grid>button {display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:3px!important;min-width:0!important;min-height:52px!important;height:auto!important;padding:6px 2px!important;font-size:14px!important;border-radius:9px!important;overflow:hidden}
#root .fs-agenda-month-v37 .calendar-grid>button small {font-size:10px!important;line-height:1.3!important;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#root .fs-agenda-selection-v37 {min-width:0}
#root .fs-agenda-selection-v37>.section-heading {display:flex;flex-wrap:wrap;gap:12px;margin:0 0 18px}
#root .fs-agenda-selection-v37>.section-heading h2 {font-size:20px!important;line-height:1.35;margin:0}
#root .fs-agenda-selection-v37>.section-heading button {min-height:44px;font-size:14px}
#root .fs-agenda-year-v37 .year-grid {display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important}
#root .fs-agenda-year-v37 .year-grid>button {display:flex;flex-direction:column;gap:8px;padding:20px;min-height:100px;background:white;border:1px solid var(--fs-line);border-radius:14px;text-align:left;color:var(--fs-ink);cursor:pointer;font:inherit}
#root .fs-agenda-year-v37 .year-grid>button.has-events {border-color:#9bc4d7;background:#f1f8fc}
#root .fs-agenda-year-v37 .year-grid>button strong {font-size:16px}
#root .fs-agenda-year-v37 .year-grid>button span {font-size:13px;color:var(--fs-muted)}
@media(max-width:1000px){#root .fs-agenda-month-v37{grid-template-columns:minmax(0,1fr)!important}}
@media(max-width:700px){#root .fs-agenda-year-v37 .year-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}#root .fs-agenda-month-v37 .month-calendar{padding:14px!important}#root .fs-agenda-month-v37 .calendar-grid{gap:3px!important}#root .fs-agenda-month-v37 .calendar-grid>button small{font-size:9px!important}}

/* V38: coordinated personal pages, notification preferences and message actions. */
.fs-favorites-page,.fs-notifications-page{width:100%;max-width:none!important;margin:0!important;min-width:0}
:is(.fs-favorites-page,.fs-notifications-page) .page-title{margin:0 0 24px!important;padding:0!important;max-width:none}
:is(.fs-favorites-page,.fs-notifications-page) .page-title h1{font-size:clamp(28px,3vw,40px)!important;line-height:1.15!important}
.fs-favorites-page .favorites-empty{width:100%!important;max-width:none!important;margin:0!important;padding:28px!important;border:1px solid #dce7ed;border-radius:22px;box-shadow:0 10px 30px #0c294508;grid-template-columns:64px minmax(0,1fr);text-align:left}
.fs-favorites-page .favorites-empty>span{background:#e8f3f8!important;color:#126c94!important}
.fs-favorites-page .favorites-empty h2,.fs-notifications-page .notification-empty h2{font-size:22px!important;line-height:1.3}
.fs-notifications-page .notifications-heading{display:flex;flex-wrap:wrap;align-items:flex-start;gap:16px;min-height:0;height:auto}
.fs-notifications-page .notifications-heading .page-title{flex:1 1 380px;min-width:0}
.fs-notifications-page .notification-heading-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.fs-notifications-page .notification-heading-actions button{min-height:44px;font-size:14px!important;padding:10px 16px!important;width:auto!important}
.fs-notifications-page .real-notifications article{border-radius:18px;box-shadow:0 4px 18px #0c294504;min-width:0}
.fs-notifications-page .notification-copy{min-width:0;overflow-wrap:anywhere}
.fs-notifications-page .notification-copy h3{font-size:16px!important;line-height:1.4}
.fs-notifications-page .notification-copy p{font-size:14px!important;line-height:1.6}
.fs-notifications-page .notification-summary{border-radius:18px;margin:0 0 18px;gap:12px;flex-wrap:wrap}
.fs-notification-preferences,.fs-item-notification-rules{padding:24px;border:1px solid #dce7ed;border-radius:20px;background:#f8fafb;margin:24px 0;min-width:0;grid-column:1/-1}
.fs-notification-preferences h2{font-size:22px!important;line-height:1.3;margin:0 0 10px}
.fs-notification-preferences :is(p,small),.fs-item-notification-rules :is(p,small){font-size:14px!important;line-height:1.6;color:#5e778a}
.fs-notification-preferences .fs-preference-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:14px;margin:20px 0}
.fs-notification-preferences fieldset{margin:0;padding:16px;border:1px solid #dce7ed;border-radius:14px;min-width:0;background:#fff}
.fs-notification-preferences legend{font-family:inherit;font-size:15px!important;font-weight:700;padding:0 6px;color:#143951}
.fs-notification-preferences label.fs-preference-check{display:flex!important;align-items:flex-start;gap:10px;margin:10px 0!important;font-size:14px!important;line-height:1.5;font-weight:400!important;color:#143951}
.fs-notification-preferences label.fs-preference-check input{appearance:auto!important;flex:0 0 20px!important;width:20px!important;height:20px!important;min-height:20px!important;margin:1px 0 0!important;padding:0!important;accent-color:#086f98}
.fs-notification-preferences .fs-preference-master{padding:14px;background:#e9f4f9;border-radius:12px}
.fs-preference-topic-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:0 16px;max-height:260px;overflow-y:auto;overscroll-behavior:contain}
.fs-item-notification-rules h3{margin:0 0 12px;font-size:20px}
.fs-item-notification-rules ul{padding-left:20px}
.fs-item-notification-rules li{padding:12px 0;border-bottom:1px solid #dce7ed}
.fs-item-notification-rules a{display:inline-block;margin-top:14px;font-size:14px;font-weight:700;color:#087099}
.fs-message-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}
.fs-message-actions button{width:auto!important;min-height:36px!important;height:auto!important;padding:6px 10px!important;margin:0!important;border:1px solid #cbdfe9;border-radius:9px;background:#fff;color:#176386;font-family:inherit;font-weight:600;line-height:1.4;font-size:12px!important;cursor:pointer}
.fs-message-actions button.danger{color:#b94642;border-color:#f0d4d1;background:#fff8f7}
.fs-message-edited{display:block;font-size:11px;opacity:.75;margin-top:3px}
.fs-message-bubble.is-deleted .fs-message-body,.fs-message-bubble.is-deleted>p{font-style:italic;opacity:.75}
.fs-message-action-form{padding:20px;min-width:0}
.fs-message-action-form label{display:grid;gap:10px;font-size:14px}
.fs-message-action-form textarea{width:100%;box-sizing:border-box;padding:12px;border:1px solid #cddfe9;border-radius:12px;resize:vertical;font:inherit;min-height:140px;max-height:45dvh}
.fs-message-action-form footer{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end;margin-top:20px}
.fs-message-action-form footer button{width:auto;min-height:44px;padding:10px 16px;border:1px solid #cbdfe9;border-radius:11px;background:#edf5f9;color:#124563}
.fs-message-action-form footer button.danger{background:#fff0ef;color:#b94642;border-color:#f0d4d1}
/* Scoped layout avoids inherited header and primary-button dimensions. */
.fs-promotions>.fs-promo-header{display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;position:static!important;width:100%!important;max-width:100%!important;height:auto!important;min-height:0!important;padding:0!important;gap:20px!important;align-items:flex-start!important;box-sizing:border-box!important}
.fs-promotions>.fs-promo-header>div{flex:1 1 320px!important;min-width:0!important;width:auto!important;max-width:100%!important}
.fs-promotions>.fs-promo-header>button.fs-promo-create{flex:0 0 auto!important;width:auto!important;max-width:100%!important;height:auto!important;min-height:44px!important;margin:0!important;padding:12px 18px!important;border:0!important;border-radius:12px!important;background:#0c6b91!important;color:#fff!important;font-family:inherit;font-weight:700;line-height:1.5;font-size:14px!important;white-space:normal!important;overflow-wrap:normal!important;cursor:pointer}
.fs-promo-email-consent{display:flex;align-items:flex-start;gap:10px;padding:12px;background:#f0f7fa;border-radius:12px;font-size:14px}
.fs-promo-email-consent input{width:20px!important;height:20px!important;min-height:20px!important;flex:0 0 20px!important;accent-color:#0c6b91;margin:0}
@media(max-width:700px){
 .fs-promotions>.fs-promo-header{flex-direction:column!important;gap:14px!important}
 .fs-promotions>.fs-promo-header>div{flex:0 1 auto!important;width:100%!important}
 .fs-notifications-page .notifications-heading .page-title{flex:0 1 auto;width:100%}
 .fs-notification-preferences,.fs-item-notification-rules{padding:16px}
 .fs-message-actions button{min-height:44px!important}
 .fs-message-action-form{padding:16px}
 .fs-message-action-form footer button{flex:1 1 130px}
}
@media(max-width:600px){
 .fs-favorites-page .favorites-empty{padding:22px!important;grid-template-columns:1fr!important;text-align:left!important;gap:12px!important}
 .fs-favorites-page .favorites-empty>*{grid-column:1!important;grid-row:auto!important;justify-self:start!important}
 .fs-notifications-page .notification-heading-actions{width:100%}
 .fs-notifications-page .notification-summary>p{width:100%;margin:0}
}
.fs-usage-panel{padding:24px;min-width:0}
.fs-usage-panel h2{font-size:24px;margin:0 0 8px}
.fs-usage-panel p,.fs-usage-panel small{font-size:14px;line-height:1.6;color:#5e778a}
.fs-usage-filters{display:flex;flex-wrap:wrap;gap:12px;margin:20px 0}
.fs-usage-filters label{display:grid;gap:6px;font-size:13px;flex:1 1 180px;min-width:0}
.fs-usage-filters :is(input,select){width:100%;min-height:44px;padding:10px;border:1px solid #dce7ed;border-radius:10px;font:inherit}
.fs-usage-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}
.fs-usage-metrics article{padding:16px;border-radius:14px;background:#f0f6f9}
.fs-usage-metrics strong{display:block;font-size:28px;color:#102f49}
.fs-usage-months{display:grid;grid-template-columns:repeat(auto-fit,minmax(135px,1fr));gap:8px;margin:18px 0}
.fs-usage-months button{display:grid;gap:5px;text-align:left;padding:12px;background:#fff;border:1px solid #dce7ed;border-radius:12px;min-width:0;cursor:pointer;font:inherit}
.fs-usage-months button[aria-pressed=true]{background:#e8f4fa;border-color:#5ba6c7}
.fs-usage-months strong{font-size:15px}.fs-usage-months small{font-size:12px}
.fs-usage-accounts{display:grid;gap:8px}
.fs-usage-accounts button{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:16px;text-align:left;border:1px solid #dce7ed;border-radius:12px;background:#fff;font:inherit;color:#17384e;cursor:pointer;min-width:0}
.fs-usage-accounts button>span:first-child{flex:1 1 180px}.fs-usage-accounts small{display:block}
.fs-usage-pagination{display:flex;justify-content:center;align-items:center;gap:12px;margin-top:18px}
.fs-usage-pagination button{min-height:44px;padding:8px 16px;border:1px solid #dce7ed;border-radius:10px;background:#eef6fa;color:#17384e}
.fs-usage-detail{padding:20px;overflow-wrap:anywhere}.fs-usage-detail li{padding:8px 0}
.fs-message-compose .fs-message-context{display:block!important;margin:0 0 16px!important}
.fs-message-subject-fields{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:12px}
.fs-message-context label{display:grid;gap:8px;font-size:14px}
.fs-message-context :is(select,input:not([type=file])){width:100%;padding:10px;min-height:44px;box-sizing:border-box;border:1px solid #cddfe9;border-radius:10px;font:inherit}
.fs-message-file-picker{margin:12px 0 6px}.fs-message-file-picker input{max-width:100%;font:inherit;font-size:14px}
.fs-message-file-list{padding:0;list-style:none}.fs-message-file-list li{display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;align-items:center;overflow-wrap:anywhere;padding:8px 0}
.fs-message-file-list button,.fs-message-meta button{width:auto!important;min-height:36px!important;height:auto!important;margin:0!important;padding:6px 10px!important;border:1px solid #cddfe9!important;border-radius:9px;background:#fff!important;color:#176386!important;font-size:12px!important}
.fs-message-meta{margin:10px 0}.fs-message-meta>small{display:block;font-size:12px;color:#516f80;overflow-wrap:anywhere}.fs-message-meta ul{padding:0;list-style:none}.fs-message-meta li{display:grid;gap:3px;padding:8px;background:#ffffffa8;border:1px solid #cddfe9;border-radius:10px;margin:6px 0;overflow-wrap:anywhere}.fs-message-meta a{font-size:14px;color:#086f98}
@media(max-width:700px){.fs-usage-panel{padding:16px}.fs-usage-filters :is(input,select),.fs-message-context :is(input,select){font-size:16px!important}.fs-message-file-list button,.fs-message-meta button{min-height:44px!important}}
/* Annonces entre collaborateurs: titres plus présents, sans tronquer leur texte. */
#root .fs-community-card h2{font-size:clamp(25px,2.2vw,30px)!important;line-height:1.22!important;font-weight:700!important;letter-spacing:-.025em;overflow-wrap:anywhere}
#root .fs-community-card h2 .fs-community-open-title{font-size:inherit!important;line-height:inherit!important;font-weight:inherit!important}
@media(max-width:700px){#root .fs-community-card h2{font-size:25px!important;line-height:1.25!important}}

.fs-account-record-info{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:12px;margin:16px 0 24px}.fs-account-record-info>div{padding:12px;background:#f1f6f9;border-radius:12px;min-width:0}.fs-account-record-info dt{font-size:12px;color:#5e778a;margin:0 0 5px}.fs-account-record-info dd{margin:0;font-size:14px;color:#17384e;overflow-wrap:anywhere}.fs-account-record h3{font-size:20px;margin:8px 0 12px}.fs-account-record button{min-height:44px}

/* V39 — Harmonisation ciblée, structure des contenus conservée. */
#root .agenda-switch{display:inline-flex!important;flex-wrap:wrap!important;gap:6px!important;padding:5px!important;border-radius:16px!important;max-width:100%;box-sizing:border-box}
#root .agenda-switch button{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;min-height:40px!important;padding:9px 14px 9px 11px!important;font-size:11px!important;font-weight:650!important;line-height:1.4!important;border-radius:12px!important;white-space:nowrap}
#root .agenda-switch .fs-ui-icon{width:14px;height:14px;flex:0 0 14px}
#root .fs-community-card h2{font-size:20px!important;font-weight:700!important;line-height:1.15!important;letter-spacing:-.035em!important}
#root .fs-community-heading{align-items:center;gap:24px;margin:0 0 24px}
#root .fs-community-heading>.page-title{flex:1 1 300px;min-width:0;margin:0!important;padding:0!important}
/* Use the same page-title element and font metrics as the catalogue. */

#root .fs-profile-page{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch}
#root .fs-profile-page>.fs-profile-preferences{grid-column:1/-1}
#root .fs-profile-page .fs-profile-preferences .fs-notification-preferences{margin:0!important;padding:0!important;background:transparent!important;border:0!important}
#root .fs-profile-page .fs-preference-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
#root .fs-profile-page .fs-profile-preferences>.primary-button{width:auto!important;min-width:220px}
#root .fs-profile-information .editor-grid{margin-bottom:0!important}
/* Compose area: subject and attachments form a small toolbar. */
#root .fs-message-compose{padding:20px!important;background:#fff!important}
#root .fs-message-compose .fs-message-context{display:grid!important;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px 16px;margin:0 0 18px!important;padding:16px!important;background:#f6f9fb;border:1px solid #e2ebf1;border-radius:14px;min-width:0}
#root .fs-message-subject-fields{display:flex!important;flex-wrap:wrap;gap:12px;min-width:0}
#root .fs-message-subject-fields>label{flex:1 1 210px;min-width:0;max-width:100%;margin:0!important;display:flex;flex-direction:column;gap:7px;font-size:12px!important;font-weight:650!important}
#root .fs-message-subject-fields :is(select,input){width:100%;min-width:0;box-sizing:border-box;height:44px!important;min-height:44px!important;padding:10px 12px!important;font-size:14px!important;background:#fff!important;border:1px solid #ccdde8!important;border-radius:10px!important;margin:0!important}
#root .fs-message-compose .fs-message-file-picker{position:relative;display:inline-flex!important;align-items:center;justify-content:center;gap:8px;margin:0!important;min-height:44px;box-sizing:border-box;padding:10px 14px!important;border:1px solid #bbd6e7;border-radius:10px;background:#eaf4fa;color:#155573;font-size:13px!important;font-weight:650!important;cursor:pointer;overflow:hidden}
#root .fs-message-file-picker input[type=file]{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;min-height:0!important;margin:0!important;padding:0!important;opacity:0;cursor:pointer;font-size:16px}
#root .fs-message-file-picker:focus-within{outline:3px solid #3789b5;outline-offset:3px}
#root .fs-message-file-picker.is-disabled{opacity:.55;cursor:wait}
#root .fs-message-context>small,#root .fs-message-context>p,#root .fs-message-context>.fs-message-file-list{grid-column:1/-1;min-width:0;margin:0!important}
#root .fs-message-context>small{font-size:11px!important;line-height:1.5!important;color:#647d8d}
#root .fs-message-file-list{display:flex!important;flex-wrap:wrap;gap:8px;padding:0!important;list-style:none}
#root .fs-message-file-list li{display:flex;align-items:center;gap:8px;max-width:100%;min-width:0;padding:4px 8px 4px 12px!important;background:white!important;border:1px solid #d6e5ee;border-radius:10px;font-size:12px!important}
#root .fs-message-file-list li>span{min-width:0;overflow-wrap:anywhere}
#root .fs-message-file-list button{flex-shrink:0;min-height:36px!important;font-size:11px!important;padding:6px 8px!important;border:0!important;background:transparent!important}
#root .fs-message-compose>label{font-size:13px!important;margin:0 0 8px!important}
#root .fs-message-compose>textarea{box-sizing:border-box;width:100%;min-height:130px!important;font-size:15px!important;line-height:1.6!important;padding:14px!important;border-radius:12px!important;margin:0!important}
#root .fs-message-compose>.fs-message-compose-footer{display:flex!important;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;padding:14px 0 0!important;margin:0!important}
#root .fs-message-compose-footer>small{font-size:11px!important;color:#6b8293}
#root .fs-message-compose-footer>.primary-button{width:auto!important;min-height:44px!important;padding:12px 18px!important;font-size:13px!important;margin:0!important;border-radius:11px!important;box-shadow:0 4px 12px #12344b10!important}
/* Inbox: a compact directory, clear selection, readable unread counts. */
#root .fs-message-inbox{padding:18px!important;border-color:#dce7ef!important;border-radius:18px!important;box-shadow:0 4px 18px #163b5006}
#root .fs-message-inbox>label{font-size:13px!important;line-height:1.4!important;margin-bottom:8px!important}
#root .fs-message-inbox>select,#root .fs-message-inbox>input{height:44px!important;min-height:44px!important;padding:10px 12px!important;font-size:14px!important;border-color:#d4e2ec!important;background:#f8fafc!important;margin-bottom:18px!important}
#root .fs-thread-list{gap:6px!important;padding:2px!important}
#root .fs-thread-list>button{position:relative;display:grid!important;grid-template-columns:38px minmax(0,1fr) auto!important;grid-template-rows:auto auto auto;gap:4px 10px!important;align-items:center!important;min-width:0;min-height:86px;padding:12px!important;background:#f7f9fb!important;border:1px solid transparent!important;border-radius:12px!important;text-align:left!important}
#root .fs-thread-list>button>.fs-thread-avatar{grid-column:1!important;grid-row:1/4!important;display:flex!important;align-items:center;justify-content:center;width:38px;height:38px;border-radius:12px;background:#e4eef5;color:#215473;font-size:13px!important;font-weight:700;line-height:1;white-space:nowrap}
#root .fs-thread-list>button>strong{grid-column:2;grid-row:1;min-width:0;font-size:14px!important;line-height:1.35!important;font-weight:650!important}
#root .fs-thread-list>button>b{grid-column:3;grid-row:1;min-width:20px;box-sizing:border-box}
#root .fs-thread-list>button>span:not(.fs-thread-avatar){grid-column:2/-1!important;grid-row:2;font-size:12px!important;line-height:1.4!important}
#root .fs-thread-list>button>small{grid-column:2/-1!important;grid-row:3;font-size:10px!important;line-height:1.4!important;color:#8193a0!important}
#root .fs-thread-list>button.selected{background:#eaf4fb!important;border-color:#a6cde3!important;box-shadow:inset 3px 0 #1a739e!important}
#root .fs-thread-list>button.selected>.fs-thread-avatar{color:#fff;background:#1b6d93}
#root .fs-thread-list>button:focus-visible{outline:3px solid #3e8bad;outline-offset:-3px}
/* Information and resource body starts underneath the icon, at the left edge. */
#root .fs-notice-board .fs-notice,#root .fs-info-docs .fs-resource-card{display:grid!important;grid-template-columns:44px minmax(0,1fr)!important;align-items:start!important;gap:14px 16px!important}
#root .fs-notice-board .fs-notice-icon,#root .fs-info-docs .fs-resource-symbol{grid-column:1!important;grid-row:1!important;align-self:center!important;width:44px!important;height:44px!important;margin:0!important}
#root .fs-notice-board .fs-notice-copy,#root .fs-info-docs .fs-resource-copy{grid-column:2!important;grid-row:1!important;min-width:0!important}
#root .fs-notice-board .fs-notice-body,#root .fs-info-docs .fs-resource-body{grid-column:1/-1!important;grid-row:2!important;min-width:0!important;width:100%;margin:0!important;padding:0!important}
#root .fs-notice-board .fs-notice-body{font-size:14px!important;line-height:1.65!important;font-weight:400!important;color:#4a6579;overflow-wrap:anywhere}
#root .fs-info-docs .fs-resource-body .fs-resource-description{margin:0!important;max-width:none!important}
#root .fs-info-docs .fs-resource-body .fs-resource-meta{display:block!important;margin:12px 0 0!important;font-size:12px!important}
#root .fs-notice-board .fs-notice-tools,#root .fs-info-docs .fs-resource-actions{grid-column:1/-1!important;grid-row:3!important;display:flex!important;flex-wrap:wrap!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;border-top:1px solid #e1eaf1!important;padding:12px 0 0!important;margin:0!important}
#root .fs-notice-board .fs-notice-tools:empty{display:none!important}
@media(hover:hover){#root .fs-thread-list>button:not(.selected):hover{background:#edf3f7!important;border-color:#d4e2eb!important}}
@media(max-width:900px){#root .fs-profile-page{grid-template-columns:minmax(0,1fr)}#root .fs-profile-page .fs-preference-grid{grid-template-columns:minmax(0,1fr)!important}}
@media(max-width:650px){
 #root .agenda-switch{display:flex!important;width:100%}#root .agenda-switch button{flex:1;min-height:44px!important;padding:9px 11px!important}
 
 #root .fs-message-compose{padding:16px!important}#root .fs-message-compose .fs-message-context{grid-template-columns:minmax(0,1fr);padding:12px!important}
 #root .fs-message-compose .fs-message-file-picker{justify-self:start}
 #root .fs-message-compose-footer>.primary-button{width:100%!important}
 #root .fs-message-file-list button{min-height:44px!important}
 #root .fs-profile-page .fs-profile-preferences>.primary-button{width:100%!important;min-width:0}
 #root .fs-notice-board .fs-notice,#root .fs-info-docs .fs-resource-card{grid-template-columns:38px minmax(0,1fr)!important;gap:12px!important}
 #root .fs-notice-board .fs-notice-icon,#root .fs-info-docs .fs-resource-symbol{width:38px!important;height:38px!important}
}

/* V40 — Fiche collaborateur, dans la palette du Fonds Social. */
.fs-detail-dialog.fs-account-dialog{width:min(1180px,calc(100vw - 40px))!important;max-width:1180px!important;max-height:calc(100dvh - 40px)!important;border-radius:22px!important;background:#f6f9fb!important}
.fs-account-dialog>.fs-detail-dialog-head{padding:22px 26px!important;gap:20px!important;background:linear-gradient(115deg,#eaf3f9,#fff)!important;border-bottom:1px solid #dce7ef!important}
.fs-account-dialog>.fs-detail-dialog-head h2{font-size:clamp(20px,2vw,26px)!important;font-weight:700!important;line-height:1.3!important;letter-spacing:-.025em!important;margin:0!important;overflow-wrap:anywhere}
.fs-account-dialog>.fs-detail-dialog-head>button{width:42px!important;height:42px!important;min-width:42px!important;min-height:42px!important;border:1px solid #d7e5ef!important;background:#fff!important;font-size:24px!important;border-radius:50%!important}
.fs-account-dialog .fs-account-record{padding:22px!important;font-size:14px!important;line-height:1.5!important;color:#234357}
.fs-account-dialog .fs-account-overview{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin:0 0 20px;padding:0 4px}
.fs-account-dialog .fs-account-avatar{display:flex;align-items:center;justify-content:center;flex:0 0 46px;width:46px;height:46px;border-radius:14px;background:linear-gradient(135deg,#146491,#309cb5);color:white;font-size:18px;font-weight:700}
.fs-account-dialog .fs-account-overview>div{flex:1;min-width:120px}
.fs-account-dialog .fs-account-overview strong{display:block;font-size:15px;line-height:1.4}
.fs-account-dialog .fs-account-overview>div>span{display:block;font-size:12px;color:#738999;margin-top:3px}
.fs-account-dialog .fs-account-status{padding:6px 12px;border-radius:999px;background:#e9eef3;color:#465d71;font-size:12px;font-weight:650}
.fs-account-dialog .fs-account-status.is-active{background:#e3f3ec;color:#287253}
.fs-account-dialog .fs-account-columns{display:grid;grid-template-columns:minmax(260px,.85fr) minmax(0,1.65fr);gap:18px;align-items:start}
.fs-account-dialog .fs-account-columns>section{min-width:0;padding:20px;border:1px solid #e0e8ef;background:#fff;border-radius:16px;box-shadow:0 3px 12px #14354d04}
.fs-account-dialog .fs-account-record h3{font-size:16px!important;font-weight:700!important;line-height:1.4!important;letter-spacing:-.015em!important;margin:0 0 16px!important}
.fs-account-dialog .fs-account-record-info{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:0 18px!important;margin:0!important}
.fs-account-dialog .fs-account-record-info>div{padding:13px 0!important;min-width:0;border-bottom:1px solid #edf1f5!important;border-radius:0!important;background:transparent!important}
.fs-account-dialog .fs-account-record-info>.fs-account-email{grid-column:1/-1}
.fs-account-dialog .fs-account-record-info dt{font-size:11px!important;line-height:1.4!important;color:#728797!important;margin:0 0 5px!important}
.fs-account-dialog .fs-account-record-info dd{font-size:13px!important;line-height:1.55!important;font-weight:550!important;margin:0!important;color:#234357;overflow-wrap:anywhere}
.fs-account-dialog .fs-account-activity-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 16px;margin-bottom:16px}
.fs-account-dialog .fs-account-activity-head h3{margin:0!important}
.fs-account-dialog .fs-usage-filters{display:flex!important;flex-wrap:wrap!important;gap:10px!important;margin:0!important;width:auto!important}
.fs-account-dialog .fs-usage-filters label{display:flex!important;flex-direction:column;gap:5px!important;font-size:11px!important;color:#6f8494;font-weight:600!important;width:auto!important;min-width:0!important}
.fs-account-dialog .fs-usage-filters :is(input,select){box-sizing:border-box;height:40px!important;min-height:40px!important;padding:9px 10px!important;font-size:13px!important;border:1px solid #d7e3ec!important;border-radius:9px!important;background:#f8fafc!important;color:#234357!important;margin:0!important}
.fs-account-dialog .fs-usage-filters input{width:88px!important}
.fs-account-dialog .fs-usage-filters select{width:156px!important}
.fs-account-dialog .fs-usage-metrics{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important;margin:0 0 16px!important}
.fs-account-dialog .fs-usage-metrics article{min-width:0;padding:14px!important;min-height:0!important;background:#eff6fb!important;border:1px solid #e1edf4;border-radius:12px!important}
.fs-account-dialog .fs-usage-metrics small{font-size:11px!important;line-height:1.4!important;color:#617d90!important}
.fs-account-dialog .fs-usage-metrics strong{display:block;font-size:28px!important;line-height:1.2!important;font-weight:700!important;margin-top:6px!important;color:#153d56!important}
.fs-account-dialog .fs-account-dates{display:flex;flex-wrap:wrap;gap:10px 24px;margin-bottom:18px}
.fs-account-dialog .fs-account-dates p{margin:0!important;font-size:11px!important;line-height:1.5!important}
.fs-account-dialog .fs-account-dates span{display:block;color:#7b8f9d}
.fs-account-dialog .fs-account-dates strong{font-size:12px;font-weight:500;color:#4e6b7e}
.fs-account-dialog .fs-account-history{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.fs-account-dialog .fs-account-history>section{min-width:0;border:1px solid #e4ebf1;border-radius:12px;overflow:hidden}
.fs-account-dialog .fs-account-history h4{padding:12px 14px!important;margin:0!important;font-size:13px!important;font-weight:650!important;line-height:1.4!important;background:#f7fafc;border-bottom:1px solid #e4ebf1;color:#234357}
.fs-account-dialog .fs-account-history ul{list-style:none!important;padding:0!important;margin:0!important;max-height:300px;overflow:auto}
.fs-account-dialog .fs-account-history li{padding:12px 14px!important;margin:0!important;border:0!important;border-bottom:1px solid #eaf0f4!important;border-radius:0!important;font-size:12px!important;line-height:1.5!important;overflow-wrap:anywhere}
.fs-account-dialog .fs-account-history li:last-child{border-bottom:0!important}
.fs-account-dialog .fs-account-history li>strong{display:block;font-size:13px!important;font-weight:650!important;margin-bottom:6px}
.fs-account-dialog .fs-account-history li>p{margin:6px 0 2px!important;font-size:11px!important;color:#738a99}
.fs-account-dialog .fs-account-history li>small{font-size:10px!important;color:#7d919f}
.fs-account-dialog .fs-account-request-status{display:inline-block;padding:3px 7px;border-radius:6px;background:#edf4f9;color:#416883;font-size:10px;font-weight:600}
.fs-account-dialog .fs-account-connection-list li{display:flex;align-items:center;gap:8px}
.fs-account-dialog .fs-account-connection-list li>span{color:#237594}
.fs-account-dialog .fs-account-empty{padding:22px 14px!important;margin:0!important;font-size:12px!important;line-height:1.6!important;color:#7b8e9d!important}
.fs-account-dialog .fs-account-tracking-note{display:block;margin:14px 0 0;font-size:10px!important;line-height:1.6!important;color:#8293a0}
.fs-account-dialog .fs-usage-pagination{display:flex;align-items:center;justify-content:center;gap:12px;margin:16px 0 0!important;padding:0!important;font-size:12px!important}
.fs-account-dialog .fs-usage-pagination button,.fs-account-dialog .fs-account-state button{min-height:40px!important;font-size:12px!important;padding:8px 12px!important;border-radius:9px!important}
.fs-account-dialog .fs-account-state{padding:20px;background:#f5f9fc;border-radius:12px;font-size:13px}
@media(max-width:900px){.fs-account-dialog .fs-account-columns{grid-template-columns:minmax(0,1fr)}.fs-account-dialog .fs-account-record-info{grid-template-columns:repeat(3,minmax(0,1fr))!important}.fs-account-dialog .fs-account-record-info>.fs-account-email{grid-column:1/-1}}
@media(max-width:600px){
 .fs-detail-dialog.fs-account-dialog{width:calc(100vw - 20px)!important;max-width:calc(100vw - 20px)!important;max-height:calc(100dvh - 20px)!important;border-radius:17px!important}
 .fs-account-dialog>.fs-detail-dialog-head{padding:16px!important;gap:12px!important}.fs-account-dialog>.fs-detail-dialog-head h2{font-size:20px!important}
 .fs-account-dialog>.fs-detail-dialog-head>button{min-width:44px!important;min-height:44px!important;width:44px!important;height:44px!important}
 .fs-account-dialog .fs-account-record{padding:14px!important}.fs-account-dialog .fs-account-columns>section{padding:16px}
 .fs-account-dialog .fs-account-record-info{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 .fs-account-dialog .fs-account-history{grid-template-columns:minmax(0,1fr)}
 .fs-account-dialog .fs-usage-filters{width:100%!important}.fs-account-dialog .fs-usage-filters label:last-child{flex:1}.fs-account-dialog .fs-usage-filters select{width:100%!important}
 .fs-account-dialog .fs-usage-filters :is(input,select){min-height:44px!important;height:44px!important;font-size:16px!important}
 .fs-account-dialog .fs-usage-metrics{gap:7px!important}.fs-account-dialog .fs-usage-metrics article{padding:11px 8px!important}.fs-account-dialog .fs-usage-metrics small{font-size:10px!important}.fs-account-dialog .fs-usage-metrics strong{font-size:25px!important}
 .fs-account-dialog .fs-usage-pagination button{min-height:44px!important}
}

/* V40 — Global, tickets ouverts et archives, dans les deux espaces. */
#root .fs-ticket-workspace{min-width:0;max-width:100%;border:1px solid #dce7ef;border-radius:20px;background:#fff;overflow:hidden}
#root .fs-ticket-workspace-head{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;padding:22px 24px;border-bottom:1px solid #e5edf3;background:linear-gradient(115deg,#f0f7fb,#fff)}
#root .fs-ticket-workspace-head>div{min-width:0;flex:1 1 220px}
#root .fs-ticket-workspace-head .eyebrow{font-size:10px!important;line-height:1.4;margin:0 0 5px!important;letter-spacing:.08em}
#root .fs-ticket-workspace-head h2{font-size:22px!important;line-height:1.3!important;font-weight:700!important;margin:0!important;overflow-wrap:anywhere}
#root .fs-ticket-create{flex:none;width:auto!important;min-height:44px!important;padding:11px 15px!important;border:0!important;border-radius:11px!important;background:#123d56!important;color:white!important;font-size:13px!important;font-weight:650!important}
#root .fs-ticket-tabs{display:flex;flex-wrap:wrap;gap:6px;padding:14px 20px;border-bottom:1px solid #e6edf3}
#root .fs-ticket-tabs button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;width:auto;padding:9px 13px;background:#f5f8fa;border:1px solid transparent;border-radius:10px;font-size:12px;font-weight:650;color:#587489}
#root .fs-ticket-tabs button[aria-pressed=true]{background:#e6f2f9;border-color:#b7d8eb;color:#145579;box-shadow:inset 0 -2px #1d789f}
#root .fs-ticket-tabs button>span{padding:1px 6px;border-radius:6px;background:#fff;font-size:10px}
#root .fs-ticket-directory{padding:20px}
#root .fs-ticket-search{display:block;font-size:12px;font-weight:600;color:#557184;margin-bottom:18px}
#root .fs-ticket-search>span{display:block;margin-bottom:7px}
#root .fs-ticket-search input{box-sizing:border-box;min-height:44px;width:100%;border:1px solid #d6e3ec;border-radius:10px;background:#f8fafc;padding:11px 13px;font-size:14px;color:#234357}
#root .fs-ticket-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),1fr));gap:12px}
#root .fs-ticket-card{display:flex;flex-direction:column;gap:9px;box-sizing:border-box;min-width:0;width:100%;padding:16px;border:1px solid #dbe7ef;border-radius:14px;background:#fff;text-align:left;color:#234357;box-shadow:0 3px 12px #163b5005}
#root .fs-ticket-card-top,#root .fs-ticket-card-bottom{display:flex;flex-wrap:wrap;align-items:center;gap:8px;justify-content:space-between;width:100%;min-width:0}
#root .fs-ticket-card-top>small{font-size:10px;letter-spacing:.04em;color:#7590a2}
#root .fs-ticket-card>strong{font-size:16px;line-height:1.4;overflow-wrap:anywhere}
#root .fs-ticket-preview{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:12px;color:#788d9c;font-weight:400}
#root .fs-ticket-card-bottom{margin-top:auto;padding-top:9px;border-top:1px solid #edf2f6;font-size:11px;color:#7c919f}
#root .fs-ticket-card-bottom>b{font-size:10px;color:#14698d;background:#e6f3f9;padding:3px 7px;border-radius:6px}
#root .fs-ticket-badge{display:inline-flex;align-items:center;max-width:100%;box-sizing:border-box;padding:5px 9px;border-radius:999px;font-size:10px!important;line-height:1.4!important;font-weight:650!important;background:#e7f3ec;color:#287b5d;white-space:normal;text-align:left}
#root .fs-ticket-badge.status-waiting{background:#fff1db;color:#93621c}
#root .fs-ticket-badge.status-resolved{background:#edf1f5;color:#697f90}
#root .fs-ticket-empty{padding:32px 20px!important;margin:0!important;text-align:center;background:#f7fafc;border:1px dashed #d6e4ed;border-radius:13px;font-size:13px;color:#71899a}
#root .fs-ticket-empty strong{display:block;font-size:16px;color:#345970;margin-bottom:7px}
#root .fs-ticket-empty p{font-size:13px;line-height:1.6;max-width:480px;margin:0 auto}
#root .fs-ticket-workspace>.fs-conversation{border:0;border-radius:0}
#root .fs-ticket-conversation-head{display:flex!important;align-items:center!important;justify-content:space-between!important;flex-wrap:wrap;gap:14px;padding:18px 22px!important}
#root .fs-ticket-conversation-head>div:first-child{flex:1 1 220px;min-width:0}
#root .fs-ticket-conversation-head strong{display:block;font-size:17px!important;line-height:1.4!important;overflow-wrap:anywhere}
#root .fs-ticket-conversation-head small{display:block;margin-top:5px;font-size:11px!important;color:#788e9c}
#root .fs-ticket-back{display:block;width:auto!important;min-height:36px!important;padding:4px 0!important;margin:0 0 7px!important;border:0!important;background:transparent!important;color:#216d94!important;font-size:11px!important;font-weight:600!important}
#root .fs-ticket-status-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
#root .fs-ticket-status-actions button{width:auto!important;min-height:40px;padding:9px 12px;font-size:12px;font-weight:600;border:1px solid #cbdfea;border-radius:10px;background:#f1f7fb;color:#2b627f}
#root .fs-ticket-workspace .fs-message-history{height:clamp(240px,40dvh,440px)!important;min-height:0!important;padding:20px!important;background:#f5f8fb}
#root .fs-ticket-workspace .fs-message-bubble{max-width:min(85%,620px)!important;min-width:0;padding:14px 16px!important}
#root .fs-ticket-workspace .fs-message-bubble>strong{font-size:11px!important}
#root .fs-ticket-workspace .fs-message-bubble>p{font-size:14px!important;line-height:1.6!important}
#root .fs-ticket-workspace .fs-message-bubble time{font-size:10px!important}
#root .fs-ticket-subject{display:flex;flex-direction:column;gap:5px;min-width:0}
#root .fs-ticket-subject small{font-size:10px;color:#78909f;letter-spacing:.04em}
#root .fs-ticket-subject strong{font-size:13px;line-height:1.4;color:#2a526b;overflow-wrap:anywhere}
#root .fs-ticket-archived-note{padding:18px 22px;margin:0;background:#eef4f8;border-top:1px solid #dde8ef;font-size:13px;line-height:1.6;color:#607c8e}
#root .fs-ticket-workspace button:focus-visible{outline:3px solid #3a8ab0;outline-offset:2px}
@media(hover:hover){#root .fs-ticket-card:hover{border-color:#8fbdd5;background:#f8fcff;box-shadow:0 5px 18px #18485e0a}}
@media(max-width:700px){
 #root .fs-ticket-workspace-head{padding:18px 16px}#root .fs-ticket-workspace-head h2{font-size:20px!important}
 #root .fs-ticket-tabs{padding:12px;gap:5px}#root .fs-ticket-tabs button{flex:1;min-height:44px;padding:9px 8px;font-size:11px}
 #root .fs-ticket-directory{padding:14px}#root .fs-ticket-list{grid-template-columns:minmax(0,1fr)}#root .fs-ticket-search input{font-size:16px}
 #root .fs-ticket-conversation-head{padding:16px!important}#root .fs-ticket-status-actions button{min-height:44px}
 #root .fs-ticket-workspace .fs-message-history{height:clamp(220px,38dvh,360px)!important;padding:14px!important}
 #root .fs-ticket-workspace .fs-message-bubble{max-width:92%!important;padding:12px!important}
 #root .fs-ticket-back{min-height:44px!important}
}

/* V40 — Three stable corners: labels, favorite, administrator editing. */
#root .offer-visual,#root .event-thumb{position:relative!important;isolation:isolate}
#root .fs-photo-badges{position:absolute!important;top:12px!important;left:12px!important;right:64px!important;bottom:auto!important;display:flex!important;align-items:flex-start!important;flex-direction:column!important;gap:6px!important;z-index:3;min-width:0;max-width:calc(100% - 76px);pointer-events:none}
#root .fs-photo-badges>.fs-offer-category-pill,#root .fs-photo-badges>.fs-custom-badge{position:static!important;inset:auto!important;display:block!important;transform:none!important;box-sizing:border-box;width:fit-content!important;height:auto!important;min-height:0!important;max-width:100%!important;padding:7px 11px!important;margin:0!important;border-radius:999px!important;font-size:10px!important;line-height:1.35!important;font-style:normal!important;font-weight:700!important;letter-spacing:.055em!important;white-space:normal!important;overflow-wrap:anywhere;text-align:left!important}
#root .fs-photo-badges>.fs-offer-category-pill{background:#fffffff2!important;color:#163950!important;box-shadow:0 3px 12px #0d2b4220}
#root .fs-photo-badges>.fs-custom-badge{letter-spacing:.02em!important;box-shadow:0 3px 12px #0d2b4215}
#root .offer-visual>.favorite-button,#root .event-thumb>.favorite-button{position:absolute!important;top:12px!important;right:12px!important;left:auto!important;bottom:auto!important;display:flex!important;align-items:center!important;justify-content:center!important;z-index:4;width:40px!important;height:40px!important;min-width:40px!important;min-height:40px!important;padding:0!important;margin:0!important;background:#fffffff2!important;border:1px solid #ffffffb3!important;border-radius:50%!important;color:#173c55!important;box-shadow:0 3px 14px #09283c20;font-size:24px!important;line-height:1!important}
#root .offer-visual>.favorite-button.active,#root .event-thumb>.favorite-button.active{color:#b43d57!important;background:#fff4f7!important}
#root .offer-visual>.fs-photo-edit,#root .event-thumb>.fs-photo-edit{position:absolute!important;right:12px!important;bottom:12px!important;top:auto!important;left:auto!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:6px!important;z-index:4;width:auto!important;height:38px!important;min-height:38px!important;padding:8px 12px!important;margin:0!important;border:1px solid #ffffffb3!important;border-radius:10px!important;background:#fffffff0!important;color:#154660!important;box-shadow:0 3px 14px #09283c26!important;font-size:12px!important;font-weight:650!important;line-height:1.2!important;transform:none!important}
#root .fs-photo-edit>svg{width:15px;height:15px;flex:0 0 15px}
#root .fs-photo-edit>span{display:inline!important;position:static!important;width:auto!important;height:auto!important;margin:0!important;padding:0!important;transform:none!important;font:inherit!important;color:inherit!important;background:none!important}
#root .fs-photo-edit:focus-visible,#root .favorite-button:focus-visible{outline:3px solid #3e96bf!important;outline-offset:2px}
@media(max-width:700px){#root .offer-visual>.favorite-button,#root .event-thumb>.favorite-button{width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important}#root .offer-visual>.fs-photo-edit,#root .event-thumb>.fs-photo-edit{min-height:44px!important;height:44px!important}}

/* Keep all three photo corners usable in the compact list view too. */
#root .offer-grid.fs-offer-list .offer-card{grid-template-columns:240px minmax(0,1fr)!important}
#root .offer-grid.fs-offer-list .offer-visual{min-height:180px!important}
@media(max-width:700px){#root .offer-grid.fs-offer-list .offer-card{grid-template-columns:minmax(0,1fr)!important}#root .offer-grid.fs-offer-list .offer-visual{height:190px!important;min-height:190px!important}}

/* V41 — Event/YCM photos: cancel the legacy negative top margin that
   clipped the first 12px of the image and its category/favorite controls. */
#root .event-list article .event-card-main{padding:0 12px 12px!important;box-sizing:border-box!important;min-width:0}
#root .event-list article .event-card-main>.event-thumb{box-sizing:border-box!important;display:flex!important;flex-shrink:0!important;width:calc(100% + 24px)!important;max-width:none!important;margin:0 -12px 4px!important;padding:0!important;border-radius:0!important;background-size:cover!important;background-position:center!important}
#root .event-list article .event-card-main>.event-thumb>.fs-photo-badges{top:12px!important;left:12px!important;right:64px!important}
#root .event-list article .event-card-main>.event-thumb>.favorite-button{top:12px!important;right:12px!important}

/* V41 — Offer calls to action mirror the event registration hover. */
#root .offer-card:not(.fs-unavailable) .offer-footer>button{transition:background-color .18s ease,color .18s ease,transform .18s ease,box-shadow .18s ease!important}
@media(hover:hover) and (pointer:fine){
 #root .offer-card:not(.fs-unavailable) .offer-footer>button:not(:disabled):hover{background:var(--blue)!important;color:#fff!important;border-color:var(--blue)!important;transform:translateY(-1px)!important;box-shadow:0 5px 14px rgba(7,27,54,.14)!important}
 #root .offer-card:not(.fs-unavailable) .offer-footer>button:not(:disabled):hover i{color:inherit!important}
}
#root .offer-card:not(.fs-unavailable) .offer-footer>button:not(:disabled):focus-visible{background:var(--blue)!important;color:#fff!important;border-color:var(--blue)!important;outline:3px solid var(--blue)!important;outline-offset:3px!important;box-shadow:0 5px 14px rgba(7,27,54,.14)!important}
#root .offer-card:not(.fs-unavailable) .offer-footer>button:not(:disabled):focus-visible i{color:inherit!important}
@media(prefers-reduced-motion:reduce){#root .offer-card:not(.fs-unavailable) .offer-footer>button{transition:none!important}#root .offer-card:not(.fs-unavailable) .offer-footer>button:not(:disabled):hover{transform:none!important}}

/* V42 — Mes demandes: consistent filter typography and mobile space. */
#root .request-management-bar .request-filter-controls :is(button,select){font-family:inherit!important;font-size:14px!important;line-height:1.4!important;font-weight:600!important;min-height:44px!important;min-width:0!important;max-width:100%!important}
@media(max-width:700px){
 #root .fs-ticket-workspace>.fs-conversation{min-height:0!important}
 #root .fs-ticket-workspace .fs-ticket-conversation-head{flex-direction:row!important;align-items:flex-start!important;min-height:0!important;height:auto!important;flex:0 0 auto!important;padding:16px!important;gap:10px!important}
 #root .fs-ticket-workspace .fs-ticket-conversation-head>div:first-child{flex:1 1 100%!important;min-height:0!important}
 #root .fs-ticket-workspace .fs-ticket-conversation-head strong{font-size:16px!important;line-height:1.4!important}
 #root .fs-ticket-workspace .fs-ticket-conversation-head small{font-size:12px!important;line-height:1.5!important}
 #root .fs-ticket-workspace .fs-message-history{height:auto!important;min-height:160px!important;max-height:52dvh!important;flex:0 1 auto!important;padding:16px!important;box-sizing:border-box!important;scroll-padding-block:16px;gap:12px!important}
 #root .fs-ticket-workspace .fs-message-bubble{box-sizing:border-box!important;max-width:90%!important;flex:0 0 auto!important;padding:12px 14px!important;border-radius:16px!important;overflow-wrap:anywhere}
 #root .fs-ticket-workspace .fs-message-bubble>p{margin:7px 0!important;font-size:14px!important;line-height:1.6!important}
 #root .fs-ticket-workspace .fs-message-bubble time{display:block;margin-top:8px!important;font-size:10px!important}
 #root .fs-ticket-workspace .fs-message-compose{padding:16px!important;gap:12px!important}
 #root .fs-ticket-workspace .fs-message-compose .fs-message-context{padding:12px!important}
 #root .fs-ticket-workspace .fs-message-compose textarea{min-height:100px!important;max-height:240px;font-size:16px!important;box-sizing:border-box!important}
 #root .fs-ticket-workspace .fs-ticket-status-actions{width:100%;gap:8px}
 #root .my-enrollments.compact-requests .fs-request-summary .request-symbol{display:none!important}
 #root .my-enrollments.compact-requests .fs-request-summary .request-card-head{grid-template-columns:minmax(0,1fr)!important}
 #root .my-enrollments.compact-requests .fs-request-summary .request-main,
 #root .my-enrollments.compact-requests .fs-request-summary .request-card-head>.status-chip{grid-column:1!important}
 #root .my-enrollments.compact-requests .fs-request-summary-link{margin-left:0!important}
}

/* V42 — Utilisation de la plateforme, same blue/white visual language. */
#root .fs-usage-panel{padding:24px!important;border:1px solid #dfe9f0;border-radius:20px;background:#fff;min-width:0;max-width:100%;box-sizing:border-box}
#root .fs-usage-heading{display:block!important;min-height:0!important;padding:0 0 20px!important;margin:0!important;border-bottom:1px solid #e7eef3}
#root .fs-usage-heading .eyebrow{display:block;font-size:10px!important;font-weight:700;letter-spacing:.1em;color:#167399;margin:0 0 7px!important}
#root .fs-usage-heading h2{font-size:24px!important;line-height:1.3!important;font-weight:700!important;margin:0 0 8px!important;color:#153c54}
#root .fs-usage-heading p{font-size:13px!important;line-height:1.6!important;margin:0!important;color:#698295}
#root .fs-usage-panel .fs-usage-filters{display:grid;grid-template-columns:minmax(100px,.65fr) minmax(150px,1fr) minmax(200px,1.6fr) minmax(150px,1fr);gap:12px;padding:16px;margin:20px 0!important;background:#f6f9fb;border:1px solid #e8eef3;border-radius:14px}
#root .fs-usage-panel .fs-usage-filters label{font-size:11px!important;font-weight:650;line-height:1.5;color:#58758a}
#root .fs-usage-panel .fs-usage-filters :is(input,select){box-sizing:border-box;width:100%;min-width:0!important;min-height:44px;font-size:13px!important;color:#234a62;background:#fff;margin:0;border-radius:10px;border:1px solid #d6e3ec;padding:10px 12px}
#root .fs-usage-panel .fs-usage-metrics{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
#root .fs-usage-panel .fs-usage-metrics article{position:relative;min-width:0;padding:20px 16px!important;border:1px solid #deebf3;border-radius:14px;background:linear-gradient(135deg,#f1f8fc,#fff)}
#root .fs-usage-panel .fs-usage-metrics article:first-child{background:linear-gradient(135deg,#123d56,#1e6788);border-color:#164c68}
#root .fs-usage-panel .fs-usage-metrics article small{font-size:11px!important;line-height:1.5!important;display:block;min-height:33px;color:#607e91}
#root .fs-usage-panel .fs-usage-metrics article strong{font-size:32px!important;line-height:1.2!important;margin-top:8px;font-weight:700!important;letter-spacing:-.035em;font-variant-numeric:tabular-nums;color:#153d56}
#root .fs-usage-panel .fs-usage-metrics article:first-child small{color:#d6e7f1}
#root .fs-usage-panel .fs-usage-metrics article:first-child strong{color:#fff}
#root .fs-usage-panel .fs-usage-help{padding:12px 15px!important;margin:14px 0 24px!important;background:#f7fafc;border-left:3px solid #9fcbdc;border-radius:0 10px 10px 0;font-size:11px!important;line-height:1.7!important;color:#6d8394}
#root .fs-usage-panel .fs-usage-section-title{font-size:16px!important;font-weight:700;line-height:1.4;color:#234a62;margin:24px 0 12px}
#root .fs-usage-panel .fs-usage-months{grid-template-columns:repeat(6,minmax(0,1fr));gap:9px;margin:0 0 24px}
#root .fs-usage-panel .fs-usage-months button{min-height:96px;gap:6px;padding:12px;border:1px solid #dfebf2;background:#fff;box-shadow:0 2px 5px #133a4e03;color:#254d65}
#root .fs-usage-panel .fs-usage-months button>span{font-size:10px;letter-spacing:.06em;text-transform:uppercase;font-weight:650;color:#6e8797}
#root .fs-usage-panel .fs-usage-months button>strong{font-size:15px;line-height:1.4;font-variant-numeric:tabular-nums}
#root .fs-usage-panel .fs-usage-months button>small{font-size:10px!important;line-height:1.5!important}
#root .fs-usage-panel .fs-usage-months button[aria-pressed=true]{background:#eaf5fb;border-color:#6aa9c8;box-shadow:inset 0 3px #2681a7}
#root .fs-usage-panel .fs-usage-accounts button{display:grid!important;grid-template-columns:minmax(0,1fr) auto auto;gap:20px;padding:15px 16px;background:#fff;border:1px solid #e0eaf1;border-radius:12px}
#root .fs-usage-panel .fs-usage-identity{display:flex;align-items:center;gap:12px;min-width:0}
#root .fs-usage-panel .fs-usage-avatar{width:40px;height:40px;flex:none;display:grid;place-items:center;border-radius:12px;background:#eaf4fa;color:#216c91;font-size:12px;font-weight:700}
#root .fs-usage-panel .fs-usage-identity>span:last-child{min-width:0;overflow-wrap:anywhere}
#root .fs-usage-panel .fs-usage-identity strong{display:block;font-size:13px!important;line-height:1.4!important}
#root .fs-usage-panel .fs-usage-identity small{font-size:11px!important;line-height:1.5!important;margin-top:3px}
#root .fs-usage-panel .fs-usage-account-numbers{font-size:12px;color:#617f93;font-variant-numeric:tabular-nums}
#root .fs-usage-panel .fs-usage-account-link{font-size:11px;color:#1d7195;font-weight:650;white-space:nowrap}
#root .fs-usage-panel .fs-usage-pagination{padding-top:18px;border-top:1px solid #e7eef4;font-size:12px;gap:12px;flex-wrap:wrap}
#root .fs-usage-panel .fs-usage-pagination button{font-size:12px;font-weight:600;background:#f3f8fb}
#root .fs-usage-panel .fs-usage-pagination button:disabled{opacity:.45;cursor:default}
#root .fs-usage-panel :is(button,input,select):focus-visible{outline:3px solid #4c9abd;outline-offset:3px}
@media(hover:hover) and (pointer:fine){#root .fs-usage-panel :is(.fs-usage-months,.fs-usage-accounts) button:hover{background:#f0f8fc;border-color:#8bbbd3}}
@media(max-width:1100px){#root .fs-usage-panel .fs-usage-filters{grid-template-columns:repeat(2,minmax(0,1fr))}#root .fs-usage-panel .fs-usage-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}#root .fs-usage-panel .fs-usage-months{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:700px){
 #root .fs-usage-panel{padding:16px!important;border-radius:16px}
 #root .fs-usage-heading h2{font-size:21px!important}
 #root .fs-usage-panel .fs-usage-filters{padding:12px;gap:12px 10px}
 #root .fs-usage-panel .fs-usage-filters label:nth-child(3){grid-column:1/-1;grid-row:2}
 #root .fs-usage-panel .fs-usage-filters label:nth-child(4){grid-column:1/-1}
 #root .fs-usage-panel .fs-usage-filters :is(input,select){font-size:16px!important}
 #root .fs-usage-panel .fs-usage-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
 #root .fs-usage-panel .fs-usage-metrics article:first-child{grid-column:1/-1}
 #root .fs-usage-panel .fs-usage-metrics article{padding:15px!important}
 #root .fs-usage-panel .fs-usage-metrics article:first-child small{min-height:0}
 #root .fs-usage-panel .fs-usage-metrics article strong{font-size:28px!important}
 #root .fs-usage-panel .fs-usage-months{grid-template-columns:repeat(2,minmax(0,1fr))}
 #root .fs-usage-panel .fs-usage-accounts button{grid-template-columns:minmax(0,1fr) auto;gap:10px 8px;padding:13px}
 #root .fs-usage-panel .fs-usage-identity{grid-column:1/-1}
 #root .fs-usage-panel .fs-usage-account-numbers{font-size:11px}
 #root .fs-usage-panel .fs-usage-account-link{font-size:11px}
}

/* V43 — Ticket header uses a real two-column layout, without a vertical flex basis. */
#root .fs-ticket-workspace>.fs-conversation{min-height:0!important}
#root .fs-ticket-workspace .fs-ticket-conversation-head{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important;justify-content:stretch!important;min-height:0!important;height:auto!important;flex:0 0 auto!important;padding:20px 24px!important;gap:16px 24px!important;background:#fff;text-align:left!important}
#root .fs-ticket-workspace .fs-ticket-conversation-head>div:first-child{min-width:0!important;min-height:0!important;width:auto!important;flex:0 1 auto!important;justify-self:stretch!important}
#root .fs-ticket-workspace .fs-ticket-conversation-head strong{font-size:19px!important;line-height:1.35!important;margin:0!important;color:#163d56}
#root .fs-ticket-workspace .fs-ticket-conversation-head small{font-size:12px!important;line-height:1.5!important;margin-top:6px!important;color:#728b9c}
#root .fs-ticket-workspace .fs-ticket-back{display:inline-flex!important;align-items:center!important;min-height:36px!important;padding:4px 0!important;margin:0 0 8px!important;font-size:12px!important;border-radius:6px!important}
#root .fs-ticket-workspace .fs-ticket-status-actions{width:auto!important;max-width:320px;justify-self:end;justify-content:flex-end;gap:10px;min-width:0}
#root .fs-ticket-workspace .fs-ticket-status-actions button{box-sizing:border-box;min-height:42px!important;padding:10px 14px!important;font-size:12px!important;line-height:1.4;font-weight:650;border:1px solid #cbdfea;border-radius:11px;background:#f1f7fb;color:#245c79;white-space:normal}
#root .fs-ticket-workspace .fs-ticket-badge{padding:6px 10px!important;font-size:11px!important}
#root .fs-ticket-workspace .fs-ticket-tabs{padding:14px 20px;gap:7px;background:#fbfdfe}
#root .fs-ticket-workspace .fs-ticket-tabs button{min-height:42px;padding:10px 15px;font-size:12px;line-height:1.4;border:1px solid #e1ebf2;border-radius:11px;background:#f2f6f9;box-shadow:none;color:#607c8e}
#root .fs-ticket-workspace .fs-ticket-tabs button[aria-pressed=true]{background:#e7f3fa;border-color:#a5cce1;box-shadow:0 2px 5px #194e6608;color:#155b7e}
#root .fs-ticket-workspace .fs-ticket-tabs button>span{min-width:18px;padding:2px 5px;border-radius:6px;background:#fff;font-size:10px;line-height:1.4;text-align:center}
#root .fs-ticket-workspace .fs-message-history{box-sizing:border-box!important;height:auto!important;min-height:200px!important;max-height:54dvh!important;flex:0 1 auto!important;padding:24px!important;gap:16px!important;background:#f4f8fb;scroll-padding-block:24px;scrollbar-width:thin;scrollbar-color:#b8ccd9 transparent}
#root .fs-ticket-workspace .fs-message-bubble{box-sizing:border-box!important;max-width:min(85%,620px)!important;padding:14px 16px!important;flex:0 0 auto!important;border:1px solid #dce8ef;border-radius:16px 16px 16px 5px!important;box-shadow:0 2px 6px #1a405305;overflow-wrap:anywhere}
#root .fs-ticket-workspace .fs-message-bubble.mine{border-radius:16px 16px 5px 16px!important;background:#e8f4fb;border-color:#c9e2ef}
#root .fs-ticket-workspace .fs-message-bubble>p{font-size:14px!important;line-height:1.6!important;margin:8px 0!important}
#root .fs-ticket-workspace .fs-message-bubble time{font-size:10px!important;margin-top:9px!important}
#root .fs-ticket-workspace .fs-message-actions{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px;padding-top:9px;border-top:1px solid #e5edf2}
#root .fs-ticket-workspace .fs-message-actions button{width:auto!important;min-height:34px!important;padding:6px 10px!important;border:1px solid #d6e5ee!important;border-radius:8px!important;background:#fff!important;color:#276788!important;font-size:11px!important;line-height:1.4!important}
#root .fs-ticket-workspace .fs-message-actions button.danger{color:#a94444!important;border-color:#efdada!important;background:#fffafa!important}
#root .fs-ticket-workspace .fs-message-compose{margin-top:0!important;padding:20px 24px!important;background:#fff}
@media(hover:hover) and (pointer:fine){
 #root .fs-ticket-workspace .fs-ticket-tabs button:hover{border-color:#9ec7dc;color:#175b7e}
 #root .fs-ticket-workspace .fs-ticket-status-actions button:hover{background:#e2f0f8;border-color:#91bdd5}
 #root .fs-ticket-workspace .fs-message-actions button:not(:disabled):hover{background:#edf7fc!important}
 #root .fs-ticket-workspace .fs-message-actions button.danger:not(:disabled):hover{background:#ffeded!important}
}
@media(max-width:700px){
 #root .fs-ticket-workspace .fs-ticket-conversation-head{grid-template-columns:minmax(0,1fr)!important;padding:16px!important;gap:14px!important}
 #root .fs-ticket-workspace .fs-ticket-conversation-head strong{font-size:17px!important}
 #root .fs-ticket-workspace .fs-ticket-status-actions{width:100%!important;max-width:none;justify-self:stretch;justify-content:space-between;padding-top:12px;border-top:1px solid #e6eef4}
 #root .fs-ticket-workspace .fs-ticket-status-actions button{min-height:44px!important}
 #root .fs-ticket-workspace .fs-ticket-back{min-height:44px!important;margin-bottom:4px!important}
 #root .fs-ticket-workspace .fs-ticket-tabs{padding:12px;gap:6px}
 #root .fs-ticket-workspace .fs-ticket-tabs button{flex:1 1 auto;min-height:44px;padding:9px 8px;font-size:11px}
 #root .fs-ticket-workspace .fs-message-history{min-height:160px!important;max-height:52dvh!important;padding:16px!important;gap:12px!important}
 #root .fs-ticket-workspace .fs-message-bubble{max-width:92%!important;padding:12px 14px!important}
 #root .fs-ticket-workspace .fs-message-actions button{min-height:44px!important}
 #root .fs-ticket-workspace .fs-message-compose{padding:16px!important}
}

/* V44 — Two equal message lanes on desktop, chronological reading order. */
#root .fs-ticket-workspace .fs-message-history>.fs-message-bubble{align-self:flex-start!important;width:calc(50% - 8px)!important;max-width:calc(50% - 8px)!important;min-width:0!important;box-sizing:border-box!important}
#root .fs-ticket-workspace .fs-message-history>.fs-message-bubble.mine{align-self:flex-end!important}
#root .fs-ticket-workspace .fs-message-history>.fs-message-bubble{background:#fff!important;border-color:#dce8ef!important;color:#203e54!important}
#root .fs-ticket-workspace .fs-message-history>.fs-message-bubble.mine{background:#185674!important;border-color:#185674!important;color:#fff!important}
#root .fs-ticket-workspace .fs-message-bubble.mine>strong,
#root .fs-ticket-workspace .fs-message-bubble.mine>p{color:#fff!important}
#root .fs-ticket-workspace .fs-message-bubble.mine>time,
#root .fs-ticket-workspace .fs-message-bubble.mine>.fs-message-edited,
#root .fs-ticket-workspace .fs-message-bubble.mine .fs-message-meta>small{color:#d7eaf5!important;opacity:1!important}
#root .fs-ticket-workspace .fs-message-bubble.mine .fs-message-meta li{background:#fff!important;border-color:#dce8ef!important;color:#203e54!important}
#root .fs-ticket-workspace .fs-message-bubble.mine .fs-message-meta li a{color:#176386!important}
#root .fs-ticket-workspace .fs-message-bubble.mine .fs-message-meta li small{color:#516f80!important}
#root .fs-ticket-workspace .fs-message-bubble.mine .fs-message-actions{border-top-color:#ffffff40!important}
@media(max-width:700px){
 #root .fs-ticket-workspace .fs-message-history>.fs-message-bubble{width:auto!important;max-width:92%!important}
}

/* V45 — operational monitoring, scoped to the admin dashboard */
#root .fs-technical-health{color:#203e54;min-width:0}
#root .fs-technical-health .fs-health-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:22px}
#root .fs-technical-health h2{font-size:28px;margin:4px 0 8px;font-weight:750}
#root .fs-technical-health h3{font-size:19px;font-weight:700;margin:0}
#root .fs-technical-health p{line-height:1.6}
#root .fs-health-eyebrow{font-size:11px;font-weight:750;letter-spacing:.12em;color:#176384;margin:0}
#root .fs-health-toolbar button{width:auto;flex-shrink:0;min-height:44px;padding:10px 20px;border-radius:12px;background:#185674;color:#fff;border:0;font-weight:700}
#root .fs-health-toolbar button:disabled{opacity:.65;cursor:wait}
#root .fs-health-summary{display:flex;align-items:center;gap:14px;flex-wrap:wrap;background:#f0f6fa;padding:16px;border:1px solid #dce8ef;border-radius:16px;margin-bottom:20px;font-size:13px}
#root .fs-health-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
#root .fs-health-card{display:flex;flex-direction:column;min-width:0;padding:24px;background:white;border:1px solid #dce8ef;border-radius:20px;box-shadow:0 8px 25px #203e5406}
#root .fs-health-card>header{display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:10px;margin-bottom:22px;min-height:0;height:auto}
#root .fs-health-badge{display:inline-flex;align-items:center;border-radius:20px;background:#edf1f4;color:#526573;font-size:12px;font-weight:700;padding:5px 10px;white-space:nowrap}
#root .fs-health-badge.ok,#root .fs-health-badge.success{background:#e3f3ed;color:#21694c}
#root .fs-health-badge.warning,#root .fs-health-badge.stale,#root .fs-health-badge.uncertain{background:#fff1d9;color:#8b570b}
#root .fs-health-badge.error,#root .fs-health-badge.failed,#root .fs-health-badge.interrupted{background:#ffebeb;color:#a52c2c}
#root .fs-health-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:12px}
#root .fs-health-metrics>div{background:#f3f7fa;border-radius:12px;padding:12px 8px;display:flex;flex-direction:column;gap:5px}
#root .fs-health-metrics strong{font-size:26px;color:#143d54}
#root .fs-health-metrics span{font-size:12px}
#root .fs-health-card dl{margin:0}
#root .fs-health-card dl>div{padding:12px 0;border-bottom:1px solid #edf2f5}
#root .fs-health-card dt{font-size:12px;color:#566e7d;margin-bottom:5px}
#root .fs-health-card dd{font-size:14px;font-weight:600;margin:0;overflow-wrap:anywhere;line-height:1.7}
#root .fs-technical-health .fs-health-note{font-size:12px;color:#566e7d;margin:16px 0;line-height:1.6}
#root .fs-health-link{margin-top:auto;padding-top:16px;min-height:44px;display:flex;align-items:center;color:#185674;font-weight:700;font-size:14px}
#root .fs-health-incidents{background:white;border:1px solid #dce8ef;border-radius:20px;padding:24px;margin-top:22px}
#root .fs-health-incidents>p{font-size:14px;color:#566e7d}
#root .fs-health-incidents ul{list-style:none;padding:0;margin:16px 0 0;display:grid;gap:10px}
#root .fs-health-incidents li{background:#f6f9fb;border-radius:12px;padding:16px;overflow-wrap:anywhere}
#root .fs-health-incidents li>div{display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap}
#root .fs-health-incidents li p{font-size:14px;margin:8px 0}
#root .fs-health-incidents small{color:#566e7d;font-size:12px}
#root .fs-health-error{background:#ffebeb;color:#a52c2c;border-radius:12px;padding:16px}
#root .fs-technical-health :is(button,a):focus-visible{outline:3px solid #1582b0;outline-offset:4px}
@media(max-width:1100px){#root .fs-health-grid{grid-template-columns:1fr}}
@media(max-width:600px){#root .fs-technical-health .fs-health-toolbar{align-items:flex-start;flex-direction:column;gap:12px}#root .fs-health-card,#root .fs-health-incidents{padding:18px}#root .fs-technical-health h2{font-size:24px}}

/* Compact list: the complete text block shares the vertical centre with price and action. */
#root .fs-offer-copy{display:contents}
#root .offer-grid:not(.fs-offer-list) .fs-offer-copy>.fs-offer-summary{font-size:.9375rem!important;line-height:1.55!important;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
@media(min-width:701px){
 #root .offer-grid.fs-offer-list .offer-card{grid-template-columns:220px minmax(0,1fr)!important;min-height:140px!important;height:auto!important}
 #root .offer-grid.fs-offer-list .offer-visual{height:100%!important;min-height:140px!important}
 #root .offer-grid.fs-offer-list .offer-body{display:grid!important;grid-template-columns:minmax(0,1fr) 170px 125px!important;align-content:center!important;align-items:center!important;gap:10px 20px!important;padding:16px 20px!important;min-height:0!important}
 #root .offer-grid.fs-offer-list .fs-offer-copy{display:flex;flex-direction:column;justify-content:center;align-self:center;grid-column:1!important;grid-row:1!important;min-width:0;gap:6px}
 #root .offer-grid.fs-offer-list .fs-offer-heading{display:flex;align-items:center!important;min-height:0!important;margin:0!important;padding:0!important;border:0!important}
 #root .offer-grid.fs-offer-list .fs-offer-heading h3{margin:0!important;line-height:1.3!important}
 #root .offer-grid.fs-offer-list .fs-offer-summary{font-size:12px!important;line-height:1.5!important;margin:0!important}
 #root .offer-grid.fs-offer-list .offer-commercial{grid-column:2!important;grid-row:1!important;align-self:center!important;margin:0!important;padding:0!important;border:0!important;min-height:0!important}
 #root .offer-grid.fs-offer-list .offer-footer{grid-column:3!important;grid-row:1!important;align-self:center!important;margin:0!important;padding:0!important;border:0!important}
 #root .offer-grid.fs-offer-list .offer-footer button{min-height:44px!important;display:flex;align-items:center;justify-content:center;gap:10px}
 #root .offer-grid.fs-offer-list .offer-body>.fs-availability-badge,#root .offer-grid.fs-offer-list .eligibility-badge{grid-column:1/-1!important;grid-row:auto!important}
 #root .offer-grid.fs-offer-list .offer-visual:has(.fs-custom-badge){min-height:180px!important}
}
@media(min-width:701px) and (max-width:1000px){
 #root .offer-grid.fs-offer-list .offer-card{grid-template-columns:190px minmax(0,1fr)!important}
 #root .offer-grid.fs-offer-list .offer-body{grid-template-columns:minmax(0,1fr) 130px!important;gap:10px 14px!important}
 #root .offer-grid.fs-offer-list .offer-footer{grid-column:2!important;grid-row:2!important}
}
@media(max-width:700px){#root .offer-grid.fs-offer-list .fs-offer-copy{display:flex;flex-direction:column;gap:6px}#root .offer-grid.fs-offer-list .fs-offer-heading{align-items:center!important;margin:0!important;padding:0!important;border:0!important}#root .offer-grid.fs-offer-list .fs-offer-summary{font-size:14px;line-height:1.5}}

/* V46: attachments belong to the message being composed. */
#root .fs-message-compose .fs-message-attachments{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;margin:0;padding:12px 0 0;min-width:0;background:transparent;border:0}
#root .fs-message-attachments>.fs-message-file-picker{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:8px;width:auto;min-height:44px;box-sizing:border-box;padding:10px 14px!important;margin:0!important;border:1px solid #c6dce9;border-radius:10px;background:#eef6fb;color:#185674;font-size:13px!important;font-weight:650;cursor:pointer}
#root .fs-message-attachments>.fs-message-file-picker:focus-within{outline:3px solid #2982ae;outline-offset:2px}
#root .fs-message-attachments>.fs-message-file-picker.is-disabled{opacity:.65;cursor:wait}
#root .fs-message-attachments>.fs-message-file-picker input{position:absolute;width:100%;height:100%;inset:0;opacity:0;cursor:pointer}
#root .fs-message-attachments>.fs-message-file-picker svg{width:18px;height:18px;flex-shrink:0}
#root .fs-message-attachments>small{flex:1 1 260px;font-size:12px!important;line-height:1.5;color:#516f80}
#root .fs-message-attachments>.fs-message-file-list,#root .fs-message-attachments>p{flex-basis:100%;margin:0!important}
#root .fs-message-attachments>.fs-message-file-list li{background:#f1f7fb!important}
/* Two distinct, readable participant colours. Keep both sides in chronological order. */
#root .fs-ticket-workspace .fs-message-history>.fs-message-bubble{background:#eaf3f8!important;color:#203e54!important;border-color:#cfdfeb!important}
#root .fs-ticket-workspace .fs-message-history>.fs-message-bubble>strong,#root .fs-ticket-workspace .fs-message-history>.fs-message-bubble>p{color:#203e54!important}
#root .fs-ticket-workspace .fs-message-history>.fs-message-bubble>time,#root .fs-ticket-workspace .fs-message-history>.fs-message-bubble>.fs-message-edited{color:#486477!important;opacity:1!important}
#root .fs-ticket-workspace .fs-message-history>.fs-message-bubble.mine{background:#185674!important;color:#fff!important;border-color:#185674!important}
#root .fs-ticket-workspace .fs-message-history>.fs-message-bubble.mine>strong,#root .fs-ticket-workspace .fs-message-history>.fs-message-bubble.mine>p{color:#fff!important}
#root .fs-ticket-workspace .fs-message-history>.fs-message-bubble.mine>time,#root .fs-ticket-workspace .fs-message-history>.fs-message-bubble.mine>.fs-message-edited{color:#d7eaf5!important;opacity:1!important}
#root .annual-comparison>header>label{font-size:13px;font-weight:650;color:#203e54}
@media(max-width:700px){#root .fs-message-attachments>small{flex-basis:100%}#root .fs-message-attachments>.fs-message-file-list li{width:100%;justify-content:space-between;box-sizing:border-box}}

/* V48 — compact message actions, with accessible names and touch targets. */
#root .fs-ticket-workspace .fs-message-actions{justify-content:flex-end;gap:4px;margin-top:6px;padding-top:0;border-top:0!important}
#root .fs-ticket-workspace .fs-message-actions button.fs-message-icon-action{display:inline-flex;align-items:center;justify-content:center;width:44px!important;height:44px!important;min-height:44px!important;flex:0 0 44px;box-sizing:border-box;padding:0!important;border:0!important;border-radius:10px!important;background:transparent!important;color:#185674!important;box-shadow:none;transition:background .15s ease}
#root .fs-ticket-workspace .fs-message-actions button.fs-message-icon-action svg{display:block;width:18px;height:18px;pointer-events:none}
#root .fs-ticket-workspace .fs-message-actions button.fs-message-icon-action.danger{color:#9d2c3e!important;background:transparent!important}
#root .fs-ticket-workspace .fs-message-bubble.mine .fs-message-actions button.fs-message-icon-action{color:#fff!important}
#root .fs-ticket-workspace .fs-message-bubble.mine .fs-message-actions button.fs-message-icon-action.danger{color:#ffd9df!important}
#root .fs-ticket-workspace .fs-message-actions button.fs-message-icon-action:focus-visible{outline:2px solid currentColor;outline-offset:2px}
#root .fs-ticket-workspace .fs-message-actions button.fs-message-icon-action:disabled{opacity:.45;cursor:not-allowed}
@media(hover:hover) and (pointer:fine){
 #root .fs-ticket-workspace .fs-message-actions button.fs-message-icon-action{width:34px!important;height:34px!important;min-height:34px!important;flex-basis:34px}
 #root .fs-ticket-workspace .fs-message-actions button.fs-message-icon-action:not(:disabled):hover{background:#d4e6f1!important}
 #root .fs-ticket-workspace .fs-message-actions button.fs-message-icon-action.danger:not(:disabled):hover{background:#fbe4e7!important}
 #root .fs-ticket-workspace .fs-message-bubble.mine .fs-message-actions button.fs-message-icon-action:not(:disabled):hover{background:#ffffff24!important}
}
/* Slightly lighter blue; white text 6.11:1, timestamps 4.94:1. */
#root .fs-ticket-workspace .fs-message-history>.fs-message-bubble.mine{background:#246985!important;border-color:#246985!important}

/* V49 — administrator-only edit switch in the top bar. */
#root .fs-admin-edit-toggle{position:relative;flex:0 0 auto;min-width:0}
#root .fs-admin-edit-toggle>button{display:flex;align-items:center;justify-content:center;gap:9px;min-height:44px;width:auto;margin:0;padding:9px 12px;border:1px solid #d1e1ec;border-radius:12px;background:#f7fafc;color:#203e54;font:inherit;font-size:12px;font-weight:650;cursor:pointer;box-sizing:border-box}
#root .fs-admin-edit-toggle>button[aria-checked=true]{background:#eef7fc;border-color:#95bdd3}
#root .fs-admin-edit-toggle>button:focus-visible{outline:3px solid #4389ac;outline-offset:2px}
#root .fs-admin-edit-toggle>button:disabled{opacity:.6;cursor:default}
#root .fs-admin-edit-track{display:inline-flex;align-items:center;box-sizing:border-box;flex:0 0 34px;width:34px;height:20px;padding:3px;border-radius:999px;background:#728694}
#root .fs-admin-edit-track>span{width:14px;height:14px;border-radius:50%;background:#fff;transform:translateX(0);transition:transform .15s ease}
#root .fs-admin-edit-toggle>button[aria-checked=true] .fs-admin-edit-track{background:#246985}
#root .fs-admin-edit-toggle>button[aria-checked=true] .fs-admin-edit-track>span{transform:translateX(14px)}
#root .fs-admin-edit-state{min-width:24px;font-size:10px;text-align:center}
#root .fs-admin-edit-error{position:absolute;top:calc(100% + 8px);left:0;z-index:30;width:250px;max-width:calc(100vw - 32px);box-sizing:border-box;padding:10px 12px;border:1px solid #e4bbc2;border-radius:10px;background:#fff4f5;color:#92263b;font-size:12px;line-height:1.5;box-shadow:0 6px 20px #173f541a}
@media(max-width:1100px) and (min-width:601px){#root .fs-admin-edit-label{display:none}}
@media(max-width:600px){
 #root .topbar.fs-has-edit-toggle{flex-wrap:wrap!important}
 #root .topbar.fs-has-edit-toggle>.topbar-shortcuts{flex:1 1 100%!important;justify-content:flex-end!important}
 #root .topbar.fs-has-edit-toggle .fs-admin-edit-toggle{margin-right:auto}
 #root .fs-admin-edit-toggle>button{gap:6px;padding:8px;font-size:11px}
}
@media(prefers-reduced-motion:reduce){#root .fs-admin-edit-track>span{transition:none}}
/* One measured gap between the messaging introduction and the conversations. */
#root .fs-messages-page{min-width:0}
#root .fs-messages-page>.page-title{margin:0 0 24px!important;padding:0!important;min-height:0!important;border:0!important}
#root .fs-messages-page>.fs-messaging{margin:0!important}
@media(max-width:700px){#root .fs-messages-page>.page-title{margin-bottom:20px!important}}

/* V50 — expandable mobile search; desktop search stays in place. */
#root .topbar>.fs-mobile-search-toggle{display:none}
@media(max-width:600px){
 #root .topbar,#root .topbar.fs-has-edit-toggle{display:flex!important;flex-wrap:wrap!important;align-items:center!important;gap:6px!important;padding:10px 8px!important}
 #root .topbar>.mobile-menu,#root .topbar>.fs-mobile-search-toggle{display:inline-flex!important;align-items:center!important;justify-content:center!important;flex:0 0 44px!important;width:44px!important;min-width:44px!important;height:44px!important;min-height:44px!important;margin:0!important;padding:0!important;box-sizing:border-box;border:1px solid #d7e5ef;border-radius:12px;background:#f1f7fb;color:#185674}
 #root .topbar>.fs-mobile-search-toggle[aria-expanded=true]{background:#dcecf6;border-color:#9bbfd5}
 #root .topbar>.fs-mobile-search-toggle:focus-visible{outline:3px solid #4389ac;outline-offset:2px}
 #root .topbar>.topbar-shortcuts,#root .topbar.fs-has-edit-toggle>.topbar-shortcuts{flex:1 1 0!important;min-width:0!important;justify-content:flex-end!important;gap:4px!important;margin:0!important;padding:0!important}
 #root .topbar .topbar-shortcuts .top-action{height:44px!important;min-height:44px!important;min-width:48px!important;padding:6px 5px!important;gap:3px!important;flex-shrink:0!important}
 #root .topbar .topbar-shortcuts .top-action>i,#root .topbar .topbar-shortcuts .top-action>svg{width:18px!important;height:18px!important;flex-basis:18px!important;font-size:18px!important}
 #root .topbar .topbar-shortcuts .top-action>b{min-width:19px!important;height:21px!important;padding:0 3px!important;font-size:11px!important}
 #root .topbar.fs-has-edit-toggle .fs-admin-edit-toggle{margin-right:auto}
 #root .topbar .fs-admin-edit-toggle>button{gap:4px;padding:5px;min-height:44px;border-radius:10px}
 #root .topbar .fs-admin-edit-label{display:block;width:34px;font-size:10px;line-height:1.15;white-space:normal;text-align:left}
 #root .topbar .fs-admin-edit-state{display:none}
 #root .topbar>.search{display:none!important;order:5!important;flex:0 0 100%!important;width:100%!important;min-width:0!important;box-sizing:border-box;margin:4px 0 0!important}
 #root .topbar>.search.is-mobile-open{display:flex!important;align-items:center;gap:8px;padding:8px 10px!important;min-height:48px!important;border:1px solid #b8d3e4;border-radius:12px!important;background:#f4f8fb}
 #root .topbar>.search>input{flex:1 1 0!important;min-width:0!important;width:100%!important;font-size:16px!important;line-height:1.4!important;padding:6px 0!important}
 #root .topbar>.search>button{display:inline-flex!important;align-items:center;justify-content:center;flex:0 0 40px;width:40px;min-height:40px;margin:0!important;padding:0!important;color:#185674;border-radius:9px}
 #root .topbar>.search>.instant-results{box-sizing:border-box;left:0!important;right:0!important;width:100%!important;max-height:50dvh;overflow-y:auto;overscroll-behavior:contain}
}

/* V51 — keep the mobile edit-mode label on a single line. */
@media(max-width:600px){
 #root .topbar .fs-admin-edit-label{width:auto;white-space:nowrap;line-height:1.2}
 #root .topbar .fs-admin-edit-toggle>button{gap:6px}
}
/* On very narrow screens, allow shortcuts to wrap instead of overflowing. */
@media(max-width:360px){
 #root .topbar>.topbar-shortcuts,#root .topbar.fs-has-edit-toggle>.topbar-shortcuts{flex-wrap:wrap!important}
}
@media(max-width:600px){
 #root .fs-partner-section-title{display:flex!important;flex-wrap:wrap!important;gap:12px!important;align-items:center!important}
 #root .fs-partner-section-title>div{flex:1 1 100%!important;min-width:0!important;width:100%!important}
 #root .fs-partner-section-title>div>h2,#root .fs-partner-page-title>h1{font-size:clamp(18px,5vw,24px)!important;line-height:1.25!important;font-weight:750!important;white-space:nowrap!important;letter-spacing:-.025em!important}
 #root .fs-partner-section-title>button{flex:0 1 auto!important;margin:0!important}
}
@media(max-width:600px){#root .fs-upcoming-section-title>div>h2{font-weight:750!important}}

/* V52 — reinforce touch targets without enlarging the visible icons. */
@media(max-width:700px){
 #root .fs-ticket-workspace .fs-ticket-back{min-height:44px!important;min-width:44px!important}
 #root .fs-message-meta li a{display:flex;align-items:center;min-height:44px;min-width:44px}
 #root .fs-message-file-list button{min-height:44px!important;min-width:44px!important}
 #root .my-enrollments.redesigned.compact-requests>article.fs-request-compact{grid-template-columns:minmax(0,1fr) 44px!important}
 #root .my-enrollments.redesigned.compact-requests>article.fs-request-compact>.request-select{display:flex!important;align-items:center!important;justify-content:center!important;width:44px!important;min-width:44px!important;min-height:44px!important;margin:0!important;box-sizing:border-box;cursor:pointer}
 #root .fs-ticket-workspace .fs-message-actions{gap:8px!important}
}
@media(max-width:600px){#root .topbar>.search>button{flex-basis:44px!important;width:44px!important;min-width:44px!important;min-height:44px!important}}

/* V53 — installed-app update action at the bottom of the mobile menu. */
#root .mobile-drawer .fs-pwa-update{margin:18px 0 8px;padding:0;min-width:0}
#root .mobile-drawer .fs-pwa-update-button{display:flex!important;align-items:center!important;gap:12px;width:100%!important;min-height:64px!important;box-sizing:border-box;margin:0!important;padding:14px!important;border:1px solid #bed8e7!important;border-radius:14px!important;background:#eef6fb!important;color:#185674!important;text-align:left!important}
#root .mobile-drawer .fs-pwa-update-button>svg{flex:0 0 24px}
#root .mobile-drawer .fs-pwa-update-button>span:not(.fs-pwa-update-dot){display:block;flex:1;min-width:0}
#root .mobile-drawer .fs-pwa-update-button strong{display:block;font-size:14px;line-height:1.4;font-weight:700}
#root .mobile-drawer .fs-pwa-update-button small{display:block;margin-top:3px;color:#516f80;font-size:12px;line-height:1.4}
#root .mobile-drawer .fs-pwa-update-button:focus-visible{outline:3px solid #4389ac;outline-offset:2px}
#root .mobile-drawer .fs-pwa-update-button:disabled{opacity:.65;cursor:wait}
#root .fs-pwa-update-dot{flex:0 0 9px;width:9px;height:9px;border-radius:50%;background:#16846d}
#root .mobile-drawer .fs-pwa-update>p{margin:8px 4px 0;color:#516f80;font-size:12px;line-height:1.5}
#root .mobile-drawer .fs-pwa-update>p:empty{display:none}
#root .mobile-drawer .fs-pwa-update>.fs-pwa-update-error{color:#a13746}

/* V54 — clear update states in one compact, full-width menu action. */
#root .mobile-drawer .fs-pwa-update{margin:16px 0 8px}
#root .mobile-drawer .fs-pwa-update-button{display:grid!important;grid-template-columns:38px minmax(0,1fr) auto!important;gap:11px!important;align-items:center!important;min-height:68px!important;padding:12px!important;border:1px solid #d7e5ed!important;border-radius:16px!important;background:#fff!important;color:#183e55!important;box-shadow:0 3px 12px #173e5407;transition:background .15s ease,border-color .15s ease}
#root .mobile-drawer .fs-pwa-update-button>.fs-pwa-update-icon{display:flex!important;align-items:center;justify-content:center;flex:none!important;width:38px;height:38px;border-radius:12px;background:#edf5fa;color:#246985}
#root .mobile-drawer .fs-pwa-update-button>.fs-pwa-update-copy{display:block!important;min-width:0}
#root .mobile-drawer .fs-pwa-update-button strong{font-size:13px!important;line-height:1.35!important;font-weight:750!important;letter-spacing:-.01em}
#root .mobile-drawer .fs-pwa-update-button small{font-size:11px!important;line-height:1.4!important;margin-top:3px!important;color:#567080!important}
#root .mobile-drawer .fs-pwa-update-button>.fs-pwa-update-end{display:flex!important;align-items:center;justify-content:center;flex:none!important;color:#567080;font-size:9px;font-weight:750}
#root .mobile-drawer .fs-pwa-update.state-current .fs-pwa-update-icon{background:#e7f5ef;color:#187552}
#root .mobile-drawer .fs-pwa-update.state-available .fs-pwa-update-button{background:#246985!important;border-color:#246985!important;color:#fff!important;box-shadow:0 4px 14px #24698520}
#root .mobile-drawer .fs-pwa-update.state-available .fs-pwa-update-icon{background:#ffffff20;color:#fff}
#root .mobile-drawer .fs-pwa-update.state-available small{color:#e3f0f7!important}
#root .mobile-drawer .fs-pwa-update.state-available .fs-pwa-update-end{padding:5px 7px;border-radius:7px;background:#fff;color:#246985;white-space:nowrap}
#root .mobile-drawer .fs-pwa-update-button:disabled{opacity:1;cursor:wait}
#root .mobile-drawer .fs-pwa-update.state-checking .fs-pwa-update-icon svg,#root .mobile-drawer .fs-pwa-update.state-updating .fs-pwa-update-icon svg{animation:fs-pwa-refresh 1.2s linear infinite}
#root .mobile-drawer .fs-pwa-update>.fs-pwa-update-hint{font-size:11px;color:#567080;margin:8px 5px 0;line-height:1.5}
#root .mobile-drawer .fs-pwa-update>.fs-pwa-update-error{padding:9px 11px;margin-top:8px;border-radius:10px;background:#fff0f2;color:#9d2c3e;font-size:12px}
#root .mobile-drawer .fs-pwa-update-button:focus-visible{outline:3px solid #4389ac;outline-offset:3px}
@media(hover:hover){#root .mobile-drawer .fs-pwa-update:not(.state-available) .fs-pwa-update-button:not(:disabled):hover{background:#f4f9fc!important;border-color:#a9ccdf!important}}
@keyframes fs-pwa-refresh{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){#root .mobile-drawer .fs-pwa-update .fs-pwa-update-icon svg{animation:none!important}#root .mobile-drawer .fs-pwa-update-button{transition:none}}
/* Mobile administration: a distinct, soft lavender panel. */
@media(max-width:900px){
 #root .mobile-drawer .mobile-admin-group{background:#f2eef9!important;border-color:#ded5ed!important}
 #root .mobile-drawer .mobile-admin-group>p{color:#625078!important;font-weight:750!important}
 #root .mobile-drawer .mobile-admin-group .fs-admin-menu-icon{background:#eee6f7!important;color:#655080!important}
 #root .mobile-drawer .mobile-admin-group .fs-admin-mobile-groups>button,#root .mobile-drawer .mobile-admin-group .fs-admin-mobile-groups summary{border-color:#e1d9ec!important}
 #root .mobile-drawer .mobile-admin-group .fs-admin-mobile-groups details[open]>summary,#root .mobile-drawer .mobile-admin-group .fs-admin-mobile-groups>button.active{background:#e8def5!important;border-color:#b6a1d1!important}
 #root .mobile-drawer .mobile-admin-group .fs-admin-mobile-groups details>button{border-left-color:#d9c9eb!important}
 #root .mobile-drawer .mobile-admin-group .fs-admin-mobile-groups details>button.active{background:#e8def5!important;border-left-color:#81649f!important}
 #root .mobile-drawer .mobile-admin-group button:focus-visible,#root .mobile-drawer .mobile-admin-group summary:focus-visible{outline:3px solid #81649f;outline-offset:2px}
}

/* V55 — remove request pictograms and align all card content on every viewport. */
#root .my-enrollments .request-symbol{display:none!important}
#root .my-enrollments .request-card-head{grid-template-columns:minmax(0,1fr)!important;align-items:center!important}
#root .my-enrollments .request-card-head>.request-main,#root .my-enrollments .request-card-head>.status-chip{grid-column:1!important}
