/* Les titres de lecture restent expressifs sans dominer tout l'article. */
.article-detail h1{max-width:30ch;margin:.45em 0 .7em;font-size:clamp(32px,3.25vw,54px);line-height:1.1;letter-spacing:-.045em;overflow-wrap:anywhere;text-wrap:pretty}
#main .cards>.card.action-card h3{font-size:30px;white-space:normal;overflow-wrap:anywhere}
.home-highlights .home-highlight-card{background:linear-gradient(135deg,#c51e3d 0%,#721629 48%,#111 100%);color:#fff;border:1px solid #ffffff40}
.home-highlights .home-highlight-card .home-highlight-copy,.home-highlights .home-highlight-card .home-highlight-copy :where(h1,h2,h3,p,span,time,small,strong,a){color:#fff}
.home-highlights .home-highlight-card .home-highlight-copy .button.outline{color:#fff;border-color:#ffffffb3;background:transparent}
.home-highlights .home-highlight-card .home-highlight-copy .button.black{color:#fff;border-color:#fff;background:#111}
.home-highlights .home-highlight-card .home-highlight-copy .source-link{color:#fff;border-color:#ffffff70}
.home-highlights .home-highlight-card a:hover{color:#fff;background-color:#ffffff18}
#main .game-table tbody tr:nth-child(odd){background:#fff}
#main .game-table tbody tr:nth-child(even){background:linear-gradient(105deg,#f8bdc7 0%,#f2a1af 55%,#ec899b 100%)}
#main .library-filters{background:linear-gradient(115deg,#c51e3d 0%,#74152a 48%,#111 100%);border-color:#9e1b35;color:#fff}
#main .library-filters>.field{color:#fff}
#main .library-filters>.field input,#main .library-filters>.field select{color:#171214;background:#fff}
#main .library-filters .library-reset{color:#171214;background:#fff;border-color:#fff}
#main .game-table thead{background:linear-gradient(105deg,#c51e3d 0%,#74152a 52%,#111 100%)}
#main .game-table thead th{color:#fff;background:transparent}
#main .game-table thead,#main .game-table thead tr,#main .game-table thead th{position:static;inset:auto;z-index:auto}
#main .game-table .game-table-rating-heading{text-align:right;white-space:nowrap}
#main .game-table .game-table-rating-cell{min-width:120px;text-align:right;vertical-align:middle}
#main .game-table .game-table-rating-cell .game-library-rating{align-items:flex-end}
.event-game-interest-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;max-height:min(48vh,440px);overflow:auto;border:1px solid #e7c4cb;border-radius:12px}
.event-game-interest-option{display:grid;grid-template-columns:20px 44px minmax(0,1fr);align-items:center;gap:10px;min-width:0;padding:10px 12px;border-bottom:1px solid #e7c4cb;background:#fff;cursor:pointer}
.event-game-interest-option:nth-child(4n+1),.event-game-interest-option:nth-child(4n+4){background:#f5c5ce!important}
.event-game-interest-option:nth-child(4n+2),.event-game-interest-option:nth-child(4n+3){background:#fff!important}
.event-game-interest-option>input[type=checkbox]{width:18px;height:18px;margin:0;accent-color:#bd1735}
.event-game-interest-option>img,.event-game-interest-no-image{display:grid;width:44px;height:44px;place-items:center;object-fit:cover;border-radius:7px;background:#fff}
.event-game-interest-option>strong{min-width:0;overflow-wrap:anywhere;font-size:14px;line-height:1.3}
.event-game-interest-option:hover{filter:brightness(.97)}
.event-game-actions{display:flex;flex-wrap:wrap;gap:8px!important}
#main .button.danger,#main button.danger{border:1px solid #fff!important;background:#bd1836!important;color:#fff!important}
#main .button.danger:hover,#main .button.danger:focus-visible,#main button.danger:hover,#main button.danger:focus-visible{border-color:#fff!important;background:#97132b!important;color:#fff!important}
@media(max-width:560px){.event-game-interest-options{grid-template-columns:minmax(0,1fr)}.event-game-interest-option:nth-child(4n+1),.event-game-interest-option:nth-child(4n+4){background:#fff!important}.event-game-interest-option:nth-child(odd){background:#f5c5ce!important}}
@media(max-width:760px){.article-detail h1{font-size:clamp(29px,6.4vw,39px);line-height:1.12;letter-spacing:-.035em}}

/* Bandeau des rendez-vous : toutes les actions restent visibles sur tablette et téléphone. */
@media(max-width:1149px){
 #next-event-banner .event-ribbon{box-sizing:border-box;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:"attendance thursday" "event event" "games agenda";align-items:stretch;justify-items:stretch;gap:8px 10px;width:100%;min-width:0;padding:10px clamp(12px,3vw,28px);font-size:12px;line-height:1.35}
 #next-event-banner .event-ribbon-attendance{grid-area:attendance;display:inline-flex;justify-content:center;align-items:center;min-width:0;min-height:44px;padding:7px 10px;white-space:normal;line-height:1.25;text-align:center}
 #next-event-banner .event-ribbon-thursday-link{grid-area:thursday;display:flex;justify-content:center;align-items:center;min-width:0;min-height:44px;padding:6px 8px;border:1px solid #ffffff70;border-radius:12px;text-align:center;white-space:normal;overflow-wrap:anywhere;font-size:12px}
 #next-event-banner .event-ribbon-event{grid-area:event;display:flex;justify-content:center;align-items:center;min-width:0;max-width:none;padding:8px 6px;border-top:1px solid #ffffff45;border-bottom:1px solid #ffffff45;text-align:center;overflow-wrap:anywhere}
 #next-event-banner .event-ribbon-event-details{min-width:0;white-space:normal;overflow-wrap:anywhere}
 #next-event-banner .event-ribbon-event-details strong,#next-event-banner .event-ribbon-event-details>span{font-size:12px!important;line-height:1.35;white-space:normal;overflow-wrap:anywhere}
 #next-event-banner .event-ribbon-label{font-size:10px!important;letter-spacing:.06em}
 #next-event-banner .event-ribbon-game-count{grid-area:games;display:flex;justify-content:center;align-items:center;min-width:0;min-height:44px;padding:7px 8px;white-space:normal;text-align:center;overflow-wrap:anywhere;font-size:12px!important}
 #next-event-banner .event-ribbon-game-count span{display:inline!important}
 #next-event-banner .event-ribbon-agenda-link{grid-area:agenda;display:flex;justify-content:center;align-items:center;min-width:0;min-height:44px;padding:7px 8px;border:1px solid #ffffff70;border-radius:12px;text-align:center;white-space:normal;overflow-wrap:anywhere;font-size:12px!important}
}
@media(max-width:520px){
 #next-event-banner .event-ribbon{grid-template-areas:"attendance attendance" "thursday thursday" "event event" "games agenda";gap:7px;padding:9px 12px}
 #next-event-banner .event-ribbon-attendance,#next-event-banner .event-ribbon-thursday-link{min-height:42px}
 #next-event-banner .event-ribbon-event{padding:7px 3px}
}

/* Le menu responsive utilise la même liste de liens dynamiques que l'ordinateur. */
@media(max-width:1120px){header nav{grid-auto-flow:row;grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch;overflow:visible;white-space:normal}header nav a{box-sizing:border-box;min-width:0;min-height:44px;padding:6px 4px;justify-content:center;text-align:center;white-space:normal;overflow-wrap:anywhere;line-height:1.2}}
@media(max-width:760px){header nav{grid-template-columns:repeat(3,minmax(0,1fr));gap:2px 4px;padding:6px 0 3px}header nav a{font-size:11px;letter-spacing:0;min-height:44px}}
@media(max-width:380px){header nav{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Sous-rubriques gérées depuis l'administration. */
.action-subrubric{scroll-margin-top:calc(var(--next-event-height,0px) + 105px);padding-top:clamp(28px,4vw,54px)!important;padding-bottom:clamp(26px,3.5vw,44px)!important;border-top:1px solid #e7dde0}
#main{scroll-margin-top:calc(var(--next-event-height,0px) + 88px)}
.action-subrubric .eyebrow{margin-bottom:8px}
.action-subrubric h2{max-width:24ch}
.action-subrubric .cards{margin-top:18px}
.action-back-to-top{display:inline-flex;min-height:42px;align-items:center;margin-top:18px;padding:8px 13px;border:1px solid #cfc7c9;border-radius:999px;color:#291c20;font-weight:650;text-decoration:none}
.action-back-to-top:hover,.action-back-to-top:focus-visible{border-color:#b71935;color:#a41430;outline:2px solid #b71935;outline-offset:2px}
.action-group-rows{display:grid;gap:14px}
.action-group-row{display:grid;grid-template-columns:minmax(0,2fr) minmax(140px,1fr) minmax(100px,.7fr);gap:12px;margin:0;padding:16px;border:1px solid #e7dde0;border-radius:14px;background:#fff}
.action-group-row legend{padding:0 7px;font-weight:750}
.action-group-row .field{min-width:0;margin:0}
.action-group-row .field.full{grid-column:1/-1}
.action-group-row .check{align-self:center;margin:0}
.action-group-row .micro{grid-column:1/-1;margin:0}
@media(max-width:700px){.action-group-row{grid-template-columns:minmax(0,1fr)}.action-group-row .field.full,.action-group-row .micro{grid-column:1}}

/* Align all public library content to one centered column. */
#main:has(.library-page)>.wrap{width:65%;max-width:680px;padding-inline:0;margin-inline:auto}
#main .library-page .game-table-wrap{width:100%;max-width:100%;margin-inline:auto}
@media(max-width:760px){#main:has(.library-page)>.wrap{width:calc(100% - 32px);max-width:none}}

/* Red and white treatment for the contact form. */
#main .contact-form-panel{background:radial-gradient(ellipse at 100% 0%,#d33150 0%,#ef9aae 24%,transparent 58%),linear-gradient(135deg,#fff 12%,#fff6f7 52%,#f3bdc9 100%);border:1px solid #df7188;border-top:5px solid #bc1939;border-radius:24px;box-shadow:0 16px 42px #91112e18;color:#29141b}
#main .contact-form-panel h2{color:#29141b}
#main .contact-form-panel .eyebrow{color:#96112d}
#main .contact-form-panel .field,#main .contact-form-panel .micro,#main .contact-form-panel .contact-consent{color:#3c1e28}
#main .contact-form-panel input:not([type=checkbox]),#main .contact-form-panel select,#main .contact-form-panel textarea{background:#ffffffed;border-color:#dba0ae;color:#29141b}
#main .contact-form-panel input:focus,#main .contact-form-panel select:focus,#main .contact-form-panel textarea:focus{outline:2px solid #bd1939;outline-offset:2px}

/* Contact social card: luminous red fading into black. */
#main .contact-aside>.panel{background:radial-gradient(ellipse at 0% 0%,#e12a4c 0%,#a71332 30%,transparent 72%),linear-gradient(145deg,#8e1029 0%,#300b16 52%,#09090b 100%);border:1px solid #c34a64;border-radius:24px;box-shadow:0 18px 42px #4007162b,inset 0 1px 0 #ffffff30;color:#fff}
#main .contact-aside>.panel h3,#main .contact-aside>.panel p,#main .contact-aside>.panel .micro{color:#fff}
#main .contact-social-links .social-icon{color:#fff;background:#ffffff12;border:1px solid #ffffff80;box-shadow:inset 0 1px 0 #ffffff26,0 6px 18px #0003;transition:background .2s,transform .2s}
#main .contact-social-links .social-icon:hover,#main .contact-social-links .social-icon:focus-visible{color:#fff;background:#ffffff2b;transform:translateY(-2px);outline:2px solid #fff;outline-offset:3px}
#main .contact-social-links svg{color:#fff}

/* Compact installation action in the footer. */
.foot .footer-install{padding:10px 0}
.foot #install-app-link{width:auto;min-width:0;min-height:0;padding:6px 10px;font-size:10px;line-height:1.3;font-weight:600;box-shadow:0 2px 8px #bf1e3626}

/* Support four link columns, plus brand and social information. */
@media(min-width:1001px){.foot .footer-grid{grid-template-columns:minmax(150px,1.1fr) repeat(var(--footer-extra-columns,3),minmax(0,1fr))!important;gap:20px!important}}
@media(min-width:761px) and (max-width:1000px){.foot .footer-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}}

.foot .footer-network-copy{color:#d8d1d3;font-size:12px;line-height:1.6;margin:0 0 14px}

#footer-form .check.field{display:flex;flex-direction:row;align-items:center;gap:12px;padding:14px 16px;border:1px solid #ead7dd;border-radius:12px;background:linear-gradient(120deg,#fff,#fff4f6);margin:0;cursor:pointer;min-width:0}
#footer-form .check.field input[type=checkbox]{appearance:auto;accent-color:#bd1939;flex:0 0 18px;width:18px;height:18px;min-height:0;margin:0;padding:0}
#footer-form .check.field span{flex:1;line-height:1.45;font-size:13px;font-weight:600;color:#3c1e28}
#footer-form .footer-admin-toggles{gap:10px;margin-top:18px}
.footer-network-manager{margin:22px 0;padding-top:18px;border-top:1px solid #ead7dd}
.footer-network-manager h4{margin:0 0 8px}.footer-social-editor{padding:16px;margin-top:12px;border:1px solid #e6d5db;border-radius:14px;background:linear-gradient(135deg,#fff,#fff7f8)}
.footer-social-editor-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px}.footer-social-editor-actions .micro{margin:0}
.foot .footer-social{flex-wrap:wrap;gap:10px}.footer-custom-social-logo{display:block;width:21px;height:21px;object-fit:contain}.footer-custom-social-logo.is-white{filter:brightness(0) invert(1)}
@media(max-width:640px){#footer-form .footer-admin-toggles{grid-template-columns:1fr}.footer-social-editor-actions{align-items:flex-start;flex-direction:column}}

.ui-settings-group{border:1px solid #e8d7dd;border-radius:16px;margin:16px 0;background:#fff;overflow:hidden}.ui-settings-group>summary{padding:18px 20px;cursor:pointer;color:#86172e;font-weight:700;background:linear-gradient(110deg,#fff,#fff0f3)}
.ui-settings-form{margin:16px 0;padding:20px;border:1px solid #e8dce0;border-radius:14px;background:#fff}.ui-settings-group>.ui-settings-form{margin:12px}.ui-settings-form h3{margin-top:0}.ui-settings-form .form-grid{gap:16px}.ui-setting-check{display:flex!important;flex-direction:row!important;align-items:center!important;gap:12px;padding:12px;border:1px solid #ead7dd;border-radius:12px;background:#fff6f8;font-size:13px}.ui-setting-check input[type=checkbox]{accent-color:#bd1939;width:18px;height:18px;min-height:0;margin:0;flex:0 0 18px}.ui-setting-check span{line-height:1.4}.ui-settings-form input[type=color]{width:100%;height:44px;padding:4px}.library-filters label[hidden],.library-view-controls[hidden]{display:none!important}
@media(max-width:640px){.ui-settings-form{padding:14px}.ui-settings-form .form-grid{grid-template-columns:1fr}.ui-settings-form .field.full{grid-column:1}}

.admin-dashboard-stats{grid-template-columns:repeat(auto-fit,minmax(130px,1fr))!important;gap:14px}
.admin-dashboard-stats .unread-messages-stat{text-align:left;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:8px;border:0;border-radius:16px;padding:22px;min-height:150px;cursor:pointer;font:inherit;transition:filter .2s,box-shadow .2s}
.admin-dashboard-stats .unread-messages-stat.has-unread{background:#bd1939;color:#fff}
.admin-dashboard-stats .unread-messages-stat.has-unread strong{color:#fff}
.admin-dashboard-stats .unread-messages-stat.no-unread{background:#f3f3f5;color:#56515a}
.admin-dashboard-stats .unread-messages-stat.no-unread strong{color:var(--red,#bf1e36)}
.unread-messages-stat:hover{filter:brightness(.96)}.unread-messages-stat:focus-visible{outline:3px solid #bd1939;outline-offset:4px}
.contact-message.is-unread{border-left:4px solid #bd1939;background:linear-gradient(100deg,#fff7f9,#fff)}
.message-unread-label{display:inline-block;font-size:10px;padding:4px 7px;border-radius:99px;background:#bd1939;color:#fff;vertical-align:middle}
.contact-message-head>.form-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:0}
@media(max-width:640px){.admin-dashboard-stats{grid-template-columns:repeat(2,minmax(0,1fr))!important}.contact-message-head{flex-direction:column;align-items:flex-start;gap:12px}}

/* Membership requests follow the same status colors as unread messages. */
.admin-dashboard-stats .pending-members-stat.has-pending{background:#bd1939;color:#fff}
.admin-dashboard-stats .pending-members-stat.has-pending strong{color:#fff}
.admin-dashboard-stats .pending-members-stat.no-pending{background:#f3f3f5;color:#56515a}
.admin-dashboard-stats .pending-members-stat.no-pending strong{color:var(--red,#bf1e36)}
.admin-dashboard-stats .pending-members-stat:hover{filter:brightness(.96)}

.admin-dashboard-stats .pending-members-stat,.admin-dashboard-stats .unread-messages-stat{font-family:inherit;font-size:12px;line-height:1.65;padding:25px;display:block}

/* Give an announced tournament more room below the navigation. */
.ribbon.tournament-ribbon{min-height:58px;padding-top:14px;padding-bottom:14px;display:flex;align-items:center}
@media(max-width:760px){.ribbon.tournament-ribbon{min-height:54px;padding-top:11px;padding-bottom:11px}}

.contact-inbox>[data-refresh-messages]{margin-bottom:16px}
.contact-inbox .contact-message{padding:18px 16px}
.contact-settings-group{margin-top:20px}

.side button.has-notification-badge{position:relative;padding-right:40px;overflow:visible}
.side button .nav-notification-badge{position:absolute;top:5px;right:6px;display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 5px;border:2px solid #fff;border-radius:999px;background:#bd1939;color:#fff;font:700 11px/1 'DM Sans',Arial,sans-serif;letter-spacing:0;pointer-events:none;box-shadow:0 2px 6px #0002}

/* Game of the moment: white/red fact cards with black text and outline. */
#main .spotlight-facts li{border:1px solid #000;background:linear-gradient(135deg,#fff 0%,#ffe9ee 38%,#ee8ba0 76%,#d94765 100%);color:#000}
#main .spotlight-facts li span,#main .spotlight-facts li strong{color:#000}

/* Home discovery links share the site's red, white and black visual language. */
#main .seo-discovery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:32px;margin-bottom:40px;padding:28px;border:1px solid #ead5da;border-radius:20px;background:linear-gradient(135deg,#fff 45%,#fff0f3)}
#main .seo-discovery h2{grid-column:1/-1;margin:0;font-size:clamp(25px,3vw,38px);line-height:1.2;white-space:normal;overflow-wrap:anywhere}
#main .seo-discovery>p:not(:has(a)){grid-column:1/-1;max-width:68ch;margin:0 0 6px;color:#65545a}
#main .seo-discovery>p:has(a){display:flex;margin:0;min-width:0}
#main .seo-discovery>p>a{display:flex;align-items:center;width:100%;min-height:96px;padding:22px 24px;border:1px solid #bd1939;border-radius:14px;background:#fff;color:#9e1430;font-size:17px;font-weight:700;line-height:1.45;text-decoration:none;white-space:normal;box-shadow:0 4px 12px #65102908;transition:background .18s,color .18s,transform .18s}
#main .seo-discovery>p>a:hover{background:#bd1939;color:#fff;transform:translateY(-2px)}
#main .seo-discovery>p>a:focus-visible{outline:3px solid #111;outline-offset:4px}
#main .seo-discovery[hidden],#main .seo-discovery [hidden]{display:none!important}
.foot .footer-install{padding:12px 0 4px}
.foot .footer-install+.footer-brand-copy{margin-top:14px}
@media(max-width:700px){#main .seo-discovery{grid-template-columns:minmax(0,1fr);padding:22px 18px;gap:12px}#main .seo-discovery>p>a{min-height:80px;padding:18px;font-size:16px}}
@media(prefers-reduced-motion:reduce){#main .seo-discovery>p>a{transition:none}}
.event-session-verification{margin:18px 0;padding:18px;border:1px solid #dba5b1;border-radius:14px;background:linear-gradient(135deg,#fff,#fff0f3);color:#29141b}
.event-session-verification h3{margin:0 0 8px;font-size:19px}.event-session-verification p{margin:8px 0;line-height:1.5}.event-session-verification.is-verified{border-color:#53936a;background:#f2fbf5}
/* Requested games stand out with a soft white-to-red gradient. */
#modal .event-game-public-row.is-wished{background:linear-gradient(115deg,#fff 0%,#fff4f6 42%,#f4beca 100%);border-color:#e1a6b4;color:#24161a}
#modal .event-game-public-row.is-wished .event-game-wish-status{color:#653642}
.declined-game-notifications{margin-top:22px}.declined-game-notifications>p{padding:12px 16px}.declined-game-notifications>ul{list-style:none;padding:0 16px 16px;margin:0;display:grid;gap:12px}
/* Footer height follows its actual content, including when the brand copy is empty. */
.foot{height:auto!important;min-height:0!important;padding-top:12px;padding-bottom:8px!important}
.foot .footer-grid{min-height:0;height:auto;align-items:start;padding-bottom:10px!important}
.foot .footer-install{padding:8px 0 0}.foot .footer-install #install-app-link{margin:0}
.foot .footer-brand-copy{margin:10px 0 0}.foot .footer-line{margin-top:0;padding-top:8px}
/* On phones keep exactly three full-width banner actions, in reading order. */
@media(max-width:760px){
 #next-event-banner .event-ribbon{grid-template-columns:minmax(0,1fr);grid-template-areas:"attendance" "event" "games";width:100%;gap:5px;padding:6px 0;box-sizing:border-box}
 #next-event-banner .event-ribbon-thursday-link,#next-event-banner .event-ribbon-agenda-link{display:none!important}
 #next-event-banner .event-ribbon-attendance,#next-event-banner .event-ribbon-event,#next-event-banner .event-ribbon-game-count{display:flex;justify-content:center;align-items:center;width:100%;min-width:0;min-height:44px;max-width:none;box-sizing:border-box;margin:0;padding:9px 12px;border:1px solid #ffffff60;border-radius:7px;text-align:center;white-space:normal}
 #next-event-banner .event-ribbon-event{flex-direction:column;gap:3px;background:#7e102240}
 #next-event-banner .event-ribbon-event-details{display:flex;justify-content:center;flex-wrap:wrap;gap:2px 7px;width:100%}
 #next-event-banner .event-ribbon-event-details strong{width:100%}
}
/* Make the next event the clearest action in the red banner. */
#next-event-banner .event-ribbon-event{background:linear-gradient(115deg,#fff 0%,#ffe0e7 100%);border:2px solid #650d24;border-radius:10px;padding:7px 12px;box-shadow:0 2px 8px #35061355;color:#521024}
#next-event-banner .event-ribbon-event .event-ribbon-label,#next-event-banner .event-ribbon-event .event-ribbon-event-details,#next-event-banner .event-ribbon-event .event-ribbon-event-details>span,#next-event-banner .event-ribbon-event .event-ribbon-empty{color:#521024}
#next-event-banner .event-ribbon-event .event-ribbon-event-details>strong{color:#92122e}
#next-event-banner a.event-ribbon-event:hover{background:#fff;border-color:#3d0716;box-shadow:0 3px 12px #35061377}
#next-event-banner a.event-ribbon-event:focus-visible{outline:3px solid #fff;outline-offset:2px}
/* Responsive menu layout must never override publication/hidden state. */
header nav a[hidden],header nav [data-core-section-link][hidden],header nav [data-custom-section-link][hidden]{display:none!important}
.request-response-notifications{margin-bottom:24px}.request-response-notifications>ul{list-style:none;padding:0;display:grid;gap:12px}.request-response-notification{background:linear-gradient(115deg,#fff,#fff0f3)}.request-response-notification.is-accepted{border-color:#91b59d;background:linear-gradient(115deg,#fff,#ecf7ee)}.request-response-notification.is-read{opacity:.85}
/* Stack collection actions on phones so the Excel label never overflows. */
@media(max-width:760px){
 .member-layout>.panel,.member-collection-toolbar,.member-collection-top{min-width:0;max-width:100%;box-sizing:border-box}
 .member-collection-top{flex-direction:column;align-items:stretch;gap:14px}
 .member-collection-top h2{white-space:normal;overflow-wrap:anywhere}
 .member-collection-top>.actions{display:grid;grid-template-columns:minmax(0,1fr);width:100%;min-width:0;gap:10px;margin:0}
 .member-collection-top .actions .button{display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:100%;min-width:0;max-width:100%;min-height:44px;margin:0;padding:12px 14px;font-size:14px;line-height:1.35;white-space:normal;overflow-wrap:anywhere;text-align:center}
}
/* Consistent red edging and soft gradients across the administration menu. */
.admin-layout .side button[data-admin-tab],.admin-layout .side #logout{box-sizing:border-box;border:1px solid #b7586e;border-left:3px solid #bd1939;border-radius:9px;background:linear-gradient(115deg,#fff5f7 0%,#f1bdc9 100%);color:#4c1524;padding:12px 14px;margin:4px 0;line-height:1.4;white-space:normal;overflow-wrap:anywhere;text-align:left;transition:background .15s,border-color .15s,color .15s}
.admin-layout .side button[data-admin-tab]:hover,.admin-layout .side #logout:hover{background:linear-gradient(115deg,#ffe8ee,#e995aa);border-color:#bd1939;color:#45111e}
.admin-layout .side button[data-admin-tab].active{background:#bd1939;border-color:#bd1939;border-left-color:#86142b;color:#fff}
.admin-layout .side button[data-admin-tab]:focus-visible,.admin-layout .side #logout:focus-visible{outline:2px solid #fff;outline-offset:2px}
@media(prefers-reduced-motion:reduce){.admin-layout .side button[data-admin-tab],.admin-layout .side #logout{transition:none}}
/* Match the member menu to the administration menu. */
.member-layout .side button[data-member-tab],.member-layout .side #logout{box-sizing:border-box;border:1px solid #b7586e;border-left:3px solid #bd1939;border-radius:9px;background:linear-gradient(115deg,#fff5f7 0%,#f1bdc9 100%);color:#4c1524;padding:12px 14px;margin:4px 0;line-height:1.4;white-space:normal;overflow-wrap:anywhere;text-align:left;transition:background .15s,border-color .15s,color .15s}
.member-layout .side button[data-member-tab]:hover,.member-layout .side #logout:hover{background:linear-gradient(115deg,#ffe8ee,#e995aa);border-color:#bd1939;color:#45111e}
.member-layout .side button[data-member-tab].active{background:#bd1939;border-color:#bd1939;border-left-color:#86142b;color:#fff}
.member-layout .side button[data-member-tab]:focus-visible,.member-layout .side #logout:focus-visible{outline:2px solid #fff;outline-offset:2px}
@media(prefers-reduced-motion:reduce){.member-layout .side button[data-member-tab],.member-layout .side #logout{transition:none}}
.member-layout .side button.has-notification-badge,.admin-layout .side button.has-notification-badge{padding-right:38px}
