.home-site-logo { max-width:150px; max-height:65px; }
.mwalib5-top-bar { min-height:40px; display:flex; align-items:center; }
.home-hero-container { z-index:5; }
.mwalib5-hero-desc img { max-width:100%; height:auto; }
.mwalib5-btn-hero-secondary { display:inline-flex; align-items:center; gap:8px; padding:12px 24px; border-radius:10px; background:#ffffff1f; color:white; border:1px solid #ffffff40; font-weight:600; }
.home-cover-placeholder { height:100%; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:25px; padding:25px; background:linear-gradient(145deg,#17647b,#102a45); color:white; text-align:center; font-family:Merriweather,serif; }
.home-cover-placeholder i { font-size:4rem; }
.mwalib5-hero-orbit-icon { background:#ffffff16; }
.mwalib5-hero-orbit-icon.text-teal { color:#14b8a6; background:rgba(20,184,166,.18); }
.mwalib5-footer-license a { display:inline-flex; align-items:center; flex-wrap:wrap; gap:8px; }
.mwalib5-footer-license .fa-brands { font-size:1.35rem; }
.home-custom-footer img,.home-additional-intro img { max-width:100%; height:auto; }
.home-custom-footer p:last-child,.mwalib5-hero-desc p:last-child { margin-bottom:0; }
.home-empty { padding:28px; background:white; border:1px solid var(--mwalib5-border); border-radius:8px; color:var(--mwalib5-text-muted); }
.mwalib5-announcement-feature-excerpt img { display:block; width:100%; height:auto; border-radius:8px; }
.mwalib5-announcement-feature-footer { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:12px; margin-top:24px; padding-top:16px; border-top:1px solid var(--mwalib5-border); font-size:.8rem; }
.mwalib5-current-issue-box { background:white; border:1px solid var(--mwalib5-border); border-radius:10px; padding:24px; }
.mwalib5-current-issue-label { color:var(--mwalib5-secondary); font-size:.75rem; font-weight:700; text-transform:uppercase; margin:4px 0 8px; }
.mwalib5-current-issue-box h2 { font-size:1.5rem; }
.mwalib5-current-issue-box p { color:var(--mwalib5-text-muted); font-size:.8rem; }
/* The sidebar's original flex gap supplies the spacing between blocks. */
.mwalib5-sidebar > .pkp_block { margin:0; background:white; border:1px solid var(--mwalib5-border); border-radius:10px; overflow:hidden; }
.mwalib5-sidebar > .pkp_block > .title { display:block; font-family:Merriweather,serif; font-size:.92rem; padding:13px 16px; background:#f8fafc; border-bottom:1px solid var(--mwalib5-border); margin:0; }
.mwalib5-sidebar > .pkp_block > .content { padding:16px; }
.mwalib5-sidebar img { max-width:100%; height:auto; }
.mwalib5-sidebar .pkp_screen_reader { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0,0,0,0); }
.mwalib5-sidebar .panel-heading { font-family:Merriweather,serif; border-bottom:1px solid var(--mwalib5-border); padding:8px 0; margin-bottom:8px; }
.mwalib5-sidebar .panel-title { font-size:1rem; }
.mwalib5-sidebar .list-group-item { padding:12px 6px; border:0; border-bottom:1px solid var(--mwalib5-border-light); font-size:.84rem; }
.mwalib5-sidebar .content ul { list-style:none; padding:0; margin:0; }
.home-helpdesk { padding:16px; border:1px solid var(--mwalib5-border); border-radius:10px; background:linear-gradient(135deg,#f8fafc,#edf2f7); text-align:center; }
.home-helpdesk-icon { display:inline-flex; align-items:center; justify-content:center; width:46px; height:46px; border-radius:50%; background:var(--mwalib5-primary); color:white; margin-bottom:12px; font-size:1.2rem; }
.home-helpdesk h4 { font-size:1.05rem; }
.home-helpdesk p { font-size:.84rem; color:var(--mwalib5-text-muted); }
.mwalib5-footer-contact a { color:#cbd5e1; }
.mwalib5-latest-item-title { margin:0; }
.mwalib5-announcement-side-title { font-size:.88rem; margin-bottom:4px; line-height:1.35; }
.mwalib5-announcement-side-title a { display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.mwalib5-latest-item .mwalib5-pdf-btn { align-self:flex-start; flex-shrink:0; }
.home-feed-link { display:flex; justify-content:space-between; align-items:center; border:1px solid var(--mwalib5-border); background:#fafbfc; border-radius:6px; padding:10px 14px; margin-top:8px; font-size:.8rem; }
@media(max-width:575px) { .home-site-logo { max-width:85px; } .mwalib5-latest-item { flex-wrap:wrap; } .mwalib5-latest-item .flex-grow-1 { min-width:0; flex-basis:calc(100% - 48px); } }
