/* The active catalogue controls public, member, administration and auth pages. */
body.mb28-body{background:var(--color-background);color:var(--color-text);font-size:calc(14px * var(--mb28-font-scale,1));accent-color:var(--color-primary)}
.mb28-body :is(input,select,textarea){font:inherit}.mb28-body :is(a,button,input,select,textarea):focus-visible{outline:3px solid var(--color-accent);outline-offset:3px}
.mb28-body :is(.glass-sidebar,.glass-header,.bg-dynamic-blur,.bg-white,.bg-white\/50,.bg-white\/60,.bg-white\/70,.bg-white\/80,.bg-white\/90){background-color:var(--color-surface)!important;color:var(--color-card-text);border-color:var(--color-border)!important}
.mb28-body main :is(.bg-gray-50,.bg-gray-100,.bg-slate-50,.bg-slate-100,.bg-gray-50\/50,.bg-slate-50\/50){background-color:var(--color-soft)!important}
.mb28-body :is(.text-gray-900,.text-gray-800,.text-gray-700,.text-slate-900,.text-slate-800,.text-slate-700,.text-black){color:var(--color-text)!important}
.mb28-body :is(.text-gray-400,.text-gray-500,.text-gray-600,.text-slate-400,.text-slate-500,.text-slate-600){color:var(--color-muted)!important}
.mb28-body :is(.border-gray-50,.border-gray-100,.border-gray-200,.border-gray-300,.border-slate-100,.border-slate-200){border-color:var(--color-border)!important}
.mb28-body main :is(.bg-white,.rounded-2xl,.rounded-3xl,.rounded-\[2rem\],.rounded-\[2\.5rem\],.rounded-\[3rem\]){border-radius:var(--mb-radius)}
.mb28-body main :is(.shadow,.shadow-lg,.shadow-xl,.shadow-2xl){box-shadow:var(--mb28-shadow)}
.mb28-body :is(form input,form select,form textarea):not([type=checkbox]):not([type=radio]):not([type=color]):not([type=range]):not([type=hidden]){background:var(--color-surface)!important;color:var(--color-card-text)!important;border-color:var(--color-border)!important;border-radius:var(--mb-radius)}
.mb28-body :is(button[type=submit],.mb28-button,.bg-primary,.bg-indigo-600,.bg-blue-600){border-radius:var(--mb-button-radius)}
.mb28-body :is(.bg-primary,.bg-indigo-600,.bg-indigo-500,.bg-blue-600,.bg-blue-500){background-color:var(--color-button)!important;color:var(--color-button-text)!important}
.mb28-body :is(.text-indigo-600,.text-blue-600,.text-primary){color:var(--color-primary)!important}
.mb28-body :is(.bg-primary,.bg-blue-600,.bg-indigo-600) :is(.text-white,.text-gray-900){color:inherit!important}
.mb28-body :is(.bg-gray-900,.bg-slate-900,.bg-slate-800):not(.mb28-page-hero){background-color:var(--color-primary)!important;color:var(--color-on-primary)}
.mb28-body :is(.sidebar-item,.nav-item,.submenu-item){border-radius:var(--mb-radius)}
.mb28-page-hero{padding:clamp(22px,4vw,44px)!important;background:var(--mb28-header-background)!important;color:var(--mb28-header-text)!important;border-radius:var(--mb-radius)!important;box-shadow:var(--mb28-shadow)}
.mb28-page-hero :is(h1,h2,h3,p,.text-white,.text-primary,.text-secondary,.text-gray-900){color:inherit!important}.mb28-page-hero h1{font-size:clamp(25px,4vw,40px)!important;line-height:1.18!important;letter-spacing:normal!important;text-transform:none!important}.mb28-page-hero>p{max-width:720px;opacity:.9;line-height:1.65}.mb28-body[data-mb-style=minimal_impact] .mb28-page-hero{border:1px solid var(--color-border);box-shadow:none}.mb28-body[data-mb-style=minimal_impact] .mb28-page-hero h1{font-weight:650!important}
.mb28-page{max-width:1200px;margin:auto;padding:var(--mb28-padding);color:var(--color-text)}.mb28-page-header{display:flex;gap:18px;align-items:start;justify-content:space-between}.mb28-page-header h1{margin:0 0 12px;font-weight:800}.mb28-page-header p{font-size:14px;margin:0}.mb28-header-actions{display:flex;flex-wrap:wrap;gap:8px;flex:none}
.mb28-catalogue{display:grid;gap:var(--mb28-gap);margin-top:24px}.mb28-catalogue.grid{grid-template-columns:repeat(3,minmax(0,1fr))}.mb28-card{min-width:0;padding:20px;background:var(--color-card);color:var(--color-card-text);border:var(--mb28-border-width) solid var(--color-border);border-radius:var(--mb-radius);box-shadow:var(--mb28-shadow);overflow:hidden}.mb28-catalogue.list .mb28-card{display:grid;grid-template-columns:90px minmax(0,1fr);gap:20px}.mb28-offer-photo{height:160px;width:100%;object-fit:cover;border-radius:var(--mb-radius);background:var(--color-soft)}.mb28-offer-placeholder{height:160px;display:grid;place-items:center;background:var(--color-soft);color:var(--color-primary);border-radius:var(--mb-radius);font-size:38px}.mb28-catalogue.list :is(.mb28-offer-photo,.mb28-offer-placeholder){width:90px;height:90px}.mb28-offer-body{min-width:0}.mb28-offer-body h2{font-size:20px;line-height:1.3;font-weight:750;margin:10px 0}.mb28-offer-body p{font-size:14px;line-height:1.6;color:var(--color-muted);margin:10px 0}.mb28-offer-type{font-size:11px;letter-spacing:.03em;color:var(--color-primary);font-weight:700}.mb28-offer-amount{font-size:18px;font-weight:750;color:var(--color-primary);margin:14px 0}.mb28-offer-amount small{display:block;font-size:11px;font-weight:500;color:var(--color-muted);margin-top:3px}.mb28-button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;gap:7px;padding:11px 18px;background:var(--color-button);color:var(--color-button-text)!important;border:1px solid var(--color-button);font-size:13px;font-weight:700;text-decoration:none;cursor:pointer}.mb28-button.secondary{background:var(--color-card);color:var(--color-card-text)!important;border-color:var(--color-border)}
.mb28-toolbar{display:flex;gap:14px;flex-wrap:wrap;align-items:center;margin:24px 0}.mb28-toolbar input{flex:1;min-width:150px;padding:13px 15px;border:1px solid var(--color-border);border-radius:var(--mb-radius);background:var(--color-surface);color:var(--color-card-text)}.mb28-filters{display:flex;flex-wrap:wrap;gap:8px}.mb28-filters button{min-height:38px;padding:9px 14px;border:1px solid var(--color-border);background:var(--color-soft);color:var(--color-text);border-radius:var(--mb-button-radius);font-size:12px;cursor:pointer}.mb28-filters button.active{background:var(--color-primary);color:var(--color-on-primary);border-color:var(--color-primary)}.mb28-empty{padding:35px;text-align:center;background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--mb-radius);color:var(--color-muted);margin:20px 0}.mb28-card[hidden]{display:none!important}.mb28-body[data-mb-style=communautaire_chaleureux] .mb28-catalogue .mb28-card:nth-child(2n){background:color-mix(in srgb,var(--color-card) 96%,var(--color-accent))}.mb28-body[data-mb-style=communautaire_chaleureux] .mb28-catalogue .mb28-card:nth-child(2n+1){background:color-mix(in srgb,var(--color-card) 96%,var(--color-primary))}
.mb28-body :is(.mb-table-scroll,.mb-table,.mb-row,.mb-panel,.mb-stat,.mb-modal){color:var(--color-card-text)}.mb28-body :is(.mb-panel,.mb-row,.mb-stat,.mb-modal){background:var(--color-card)!important;border-color:var(--color-border)!important;border-radius:var(--mb-radius)}.mb28-body :is(.mb-table th,.mb-table td){border-color:var(--color-border)}.mb28-body .mb-table th{background:var(--color-soft);color:var(--color-muted)}.mb28-body :is(.mb-button,.mb-switch,.mb-pill){border-radius:var(--mb-button-radius)}
@media(max-width:1000px){.mb28-catalogue.grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.mb28-catalogue.grid{grid-template-columns:1fr}.mb28-page-header{flex-direction:column}.mb28-header-actions{flex-wrap:wrap}.mb28-catalogue.list .mb28-card{grid-template-columns:60px minmax(0,1fr);gap:13px;padding:16px}.mb28-catalogue.list :is(.mb28-offer-photo,.mb28-offer-placeholder){width:60px;height:60px}.mb28-page{padding:14px}.mb28-page-header h1{font-size:25px!important}}
/* Readable text on cards, while status badges retain their semantic colors. */
.mb28-body :is(.text-primary,.mb28-offer-type,.mb28-offer-amount){color:var(--color-link)!important}
.mb28-body .mb28-page-hero :is(.text-primary,.text-secondary){color:inherit!important}
.mb28-body main .bg-white{background-color:var(--color-card)!important;color:var(--color-card-text)}
.mb28-body main .bg-white :is(.text-gray-900,.text-gray-800,.text-gray-700,.text-slate-900,.text-slate-800){color:var(--color-card-text)!important}
.mb28-body :is(.bg-red-50,.bg-rose-50) :is(.text-gray-900,.text-gray-800,.text-gray-700){color:#991b1b!important}
.mb28-body :is(.bg-green-50,.bg-emerald-50) :is(.text-gray-900,.text-gray-800,.text-gray-700){color:#166534!important}
.mb28-body :is(.bg-amber-50,.bg-yellow-50) :is(.text-gray-900,.text-gray-800,.text-gray-700){color:#854d0e!important}
