/* Shared repairs over the original desktop and mobile layouts. */
[hidden] { display: none !important; }
html { overflow-wrap: break-word; }
body .content { min-width: 0; }
.container { max-width: 1100px; }
.header-left, .header-brand, .article, .article-wrapper, .article-box, .media-text, .sidebar { min-width: 0; }
.header-brand { display: flex; align-items: center; gap: 12px; flex: 0 1 auto; }
.header-brand .brand-title { margin: 0; font-size: 22px; font-weight: 700; line-height: 1.1; }
.header-brand .brand-title a { color: #fff; }
.header-brand:has(.brand-logo) .brand-title,
.header-brand .brand-description { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.header-brand img { max-width: 210px; object-fit: contain; }
.header-top { gap: 12px; }
.header-left { gap: 12px; }
.header-right { flex: 0 0 auto; }
.header .header-search { min-width: 0; }
.header.search-open .satusport-desktop-navigation,
.header.search-open .header-brand { display: none; }
.header-search-icon.close > .btn-close { display: flex; }
.header-mode .mode span { font-size: 25px; line-height: 1; }
.header-navigation nav { min-width: 0; }
.header-navigation .sub-menu li { width: 100%; }
.header-navigation li:focus-within > .sub-menu { display: block; }
.header button:focus-visible, a:focus-visible, input:focus-visible, select:focus-visible, .trigger:focus-visible { outline: 3px solid var(--active); outline-offset: 3px; }
.sidebarmenu .menu, .sidebarmenu .widget.LinkList { list-style: none; padding: 0; }
.sidebarmenu a { color: #fff; display: block; padding: 10px 15px; }
.sidebarmenu .sub-menu { list-style: none; padding-left: 16px; }
.sidebarmenu .widget-title { color: #fff; }
.sidebarmenu .sidebarmenu-content { height: 100%; overflow-y: auto !important; }
.billboard img, .sidebar img, .footer img { max-width: 100%; }
.article-text { overflow-wrap: anywhere; }
.article-text > iframe, .article-text video, .article-text embed { max-width: 100%; }
.article-text table { display: block; max-width: 100%; overflow-x: auto; }
.article-text pre { overflow-x: auto; }
.article-featured img { display: block; width: 100%; height: auto; }
.article-featured figure { margin: 0 0 20px; }
.article-featured figcaption { font-size: 12px; line-height: 1.5; margin-top: 8px; color: #666; }
.media-image img { display: block; }
.ifakta-grid-content { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.ifakta-grid-item { min-width: 0; width: 100%; margin: 0; }
.ifakta-grid-image { position: relative; overflow: hidden; aspect-ratio: 16 / 9; }
.ifakta-grid-image a { display: block; height: 100%; }
.ifakta-grid-image img { display: block; width: 100%; height: 100%; object-fit: cover; }
.ifakta-grid-text { padding-top: 8px; }
.ifakta-grid-title { margin: 0; font-size: 14px; line-height: 1.35; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.ifakta-grid-title a { text-decoration: none; }
.ifakta-news-label { font-weight: 700; color: var(--primary); }
.pagination { display: flex; flex-wrap: wrap; gap: 8px; justify-content: center; margin: 20px 0; }
.pagination a { display: inline-block; padding: 10px 15px; border: 1px solid #ddd; border-radius: 4px; }
.trigger:disabled { opacity: .6; cursor: progress; }
.satusport-home-fallback .article-item { display: flex; align-items: center; gap: 15px; }
.satusport-home-fallback .media-image { width: 150px; aspect-ratio: 16 / 9; height: auto; padding-bottom: 0; flex: 0 0 150px; }
.satusport-status:not(:empty) { position: fixed; bottom: 24px; left: 50%; transform: translateX(-50%); z-index: 10000; padding: 12px 20px; background: #222; color: #fff; border-radius: 4px; max-width: 90vw; }
.satusport-lightbox-dialog { max-width: 95vw; max-height: 95vh; padding: 16px; border: 0; border-radius: 4px; }
.satusport-lightbox-dialog::backdrop { background: rgb(0 0 0 / .85); }
.satusport-lightbox-dialog img { display: block; max-width: 85vw; max-height: 75vh; width: auto; height: auto; margin: auto; }
.satusport-lightbox-dialog button { display: block; margin: 0 0 12px auto; padding: 8px 16px; }
.footer .footer-center { gap: 24px; }
.footer .footer-bottom { text-align: center; }
.satusport-footer-identity { padding: 24px 0; border-top: 1px solid #ddd; }
.satusport-footer-identity p { margin: 4px 0; }
.footer .satusport-footer-menu ul { list-style: none; display: flex; justify-content: center; flex-wrap: wrap; gap: 12px; margin: 12px 0; padding: 0; }
.ads-sticky-bottom { max-width: 100%; }
.ads-sticky-bottom .btn-ads-close { border: 0; }
body.dark-mode .article-featured figcaption { color: #bbb; }
body.dark-mode .sidebarmenu { background: #111; }
body.dark-mode .satusport-lightbox-dialog { background: #222; color: #fff; }
@media (min-width: 1024px) {
    .satusport-only-mobile, .satusport-mobile-navigation, .sidebarmenu, .header .menubar { display: none !important; }
    .content { width: 100%; }
    .header .satusport-desktop-navigation { flex: 1; }
    .header .header-navigation nav > ul { height: auto; min-height: 50px; flex-wrap: nowrap; }
    .header .header-navigation nav > ul > li > a { white-space: nowrap; }
    .article-row { display: flex; gap: 24px; }
    .article-row > .article { width: calc(100% - 324px); flex: 1 1 0; }
    .article-row > .sidebar { width: 300px; flex: 0 0 300px; }
    .article-wrapper { width: 100%; }
    .content-headline { width: calc(100% - 304px); min-width: 0; }
    .content-headline .media:first-child .media-image { width: 65%; padding-bottom: 49%; }
    .content-headline .media:first-child .media-text { max-width: 33%; }
    .content-headline:only-child { width: 100%; }
    body.category .content-headline { width: 100%; }
    .header-brand img { max-width: 190px; }
    .header-navigation nav > ul > li > a { padding-left: 7px; padding-right: 7px; }
}
@media (max-width: 1023px) {
    .satusport-only-desktop, .satusport-desktop-navigation { display: none !important; }
    .content, .container { width: 100%; max-width: 100%; }
    .header { position: sticky; top: 0; z-index: 101; }
    .header .header-top { min-height: 50px; height: 50px; }
    .header-brand img { max-width: min(42vw, 210px); height: 30px; }
    .header .header-right button { width: 40px; height: 44px; }
    .header .satusport-mobile-navigation { height: 40px; display: flex; }
    .header .satusport-mobile-navigation ul { height: 40px; }
    .header .satusport-mobile-navigation nav { width: 100%; }
    .header .satusport-mobile-navigation:before { pointer-events: none; }
    .sidebarmenu { top: 50px; max-width: 100%; overflow-y: auto; z-index: 100; }
    .sidebarmenu.show { display: block; }
    .header.search-open .header-mode, .header.search-open .menubar { display: none; }
    .article-row { flex-direction: column; }
    .article-row > .article, .article-wrapper, .article-box, .sidebar { width: 100%; max-width: 100%; }
    .content-headline, .content-popular { width: 100%; }
    .headline-row { display: block; }
    .content-headline .media:first-child .media-image { width: 100%; height: auto; aspect-ratio: 16 / 9; padding-bottom: 0; }
    .content-headline .media:first-child .media-text { max-width: 100%; }
    .article-header h1 { font-size: clamp(24px, 5vw, 34px); line-height: 1.25; }
    .article-item .media-image { flex-shrink: 0; }
    .sidebar { margin-top: 20px; }
    .satusport-home-fallback .media-image { width: 100px; flex-basis: 100px; }
    .footer .footer-center { flex-wrap: wrap; }
    .footer .footer-center > * { max-width: 100%; width: 100%; }
    .footer-top .on-top { display: flex; }
}
@media (min-width: 783px) { body.admin-bar .header { top: 32px; } body.admin-bar .sidebarmenu { top: 82px; } }
@media (max-width: 782px) { body.admin-bar .header { top: 46px; } body.admin-bar .sidebarmenu { top: 96px; } }
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { transition: none !important; animation: none !important; scroll-behavior: auto !important; } }
.satusport-carousel .ifakta-grid-content { display: grid; grid-auto-flow: column; grid-auto-columns: 70%; grid-template-columns: none; overflow-x: auto; scroll-snap-type: x mandatory; }
.satusport-carousel .ifakta-grid-item { scroll-snap-align: start; }
.satusport-carousel-controls { display: flex; gap: 8px; justify-content: flex-end; margin: 10px 0 20px; }
.satusport-carousel-controls button { width: 44px; height: 40px; border: 1px solid #ddd; background: transparent; color: inherit; cursor: pointer; }
@media (min-width: 1024px) { .container { width: 100%; } }

@media (min-width: 1024px) { .satusport-carousel .ifakta-grid-content { grid-auto-columns: 40%; } }

/* Sidebar widgets share a single readable column inside the 300px rail. */
.sidebar .grid .grid-box { display: block; margin: 0; padding: 0; overflow: visible; }
.sidebar .grid .grid-item { display: flex; width: 100%; gap: 12px; align-items: flex-start; margin: 0 0 16px; padding: 0; }
.sidebar .grid .grid-item:last-child { margin-bottom: 0; }
.sidebar .grid .media-image { width: 100px; min-width: 100px; flex: 0 0 100px; height: 72px; padding: 0; margin: 0; }
.sidebar .grid .media-text { min-width: 0; flex: 1; }
.sidebar .grid .media-title { font-size: 14px; line-height: 1.4; }
.sidebar .grid .widget-content { overflow: visible; }
.sidebar .satusport-widget-empty { border: 1px solid #ddd; padding: 14px; margin-bottom: 24px; }
.sidebar .satusport-widget-empty p { margin: 0; line-height: 1.6; font-size: 13px; }
body.dark-mode .sidebar .satusport-widget-empty { border-color: #444; }
