/* Aggregator front-end component styles. Loaded only on Aggregator routes or pages containing Aggregator shortcodes. */

body.nna-aggregator-page,
body.nna-aggregator-header-active,
body.nna-aggregator-page .nna-aggregator-template {
    background-color: var(--nna-homepage-content-background, #fff);
}

body.nna-aggregator-page {
    margin: 0;
    padding-right: 0;
    padding-bottom: 0;
    padding-left: 0;
}

body.nna-aggregator-page:not(.nna-aggregator-header-active) {
    padding-top: 0;
}

body.nna-aggregator-page .nna-aggregator-template,
.nna-aggregator-template {
    box-sizing: border-box;
    margin: 0;
    max-width: none;
    padding-top: var(--nna-content-padding-top, 0px);
    padding-right: var(--nna-content-padding-right, 50px);
    padding-bottom: var(--nna-content-padding-bottom, 0px);
    padding-left: var(--nna-content-padding-left, 50px);
    width: 100%;
}

@media (max-width: 768px) {
    body.nna-aggregator-page .nna-aggregator-template,
    .nna-aggregator-template {
        padding-top: var(--nna-mobile-content-padding-top, 0px);
        padding-right: var(--nna-mobile-content-padding-right, 12px);
        padding-bottom: var(--nna-mobile-content-padding-bottom, 0px);
        padding-left: var(--nna-mobile-content-padding-left, 12px);
    }
}

.nna-feed-audio-strip {
            background: #fff !important;
            color: #000 !important;
            margin: 6px 0 8px;
            max-width: 520px;
        }
        .nna-feed-audio-strip audio {
            display: none !important;
        }
        .nna-feed-audio-strip .nna-audio-control {
            align-items: center;
            background: #fff !important;
            border: 1px solid #aaa !important;
            border-radius: 4px;
            box-shadow: none !important;
            color: #000 !important;
            display: flex;
            gap: 6px;
            min-height: 24px;
            padding: 2px 6px;
            width: 100%;
        }
        .nna-feed-audio-strip .nna-audio-button {
            align-items: center;
            appearance: none;
            background: #fff !important;
            border: 0 !important;
            box-shadow: none !important;
            color: #000 !important;
            cursor: pointer;
            display: inline-flex;
            flex: 0 0 auto;
            height: 18px;
            justify-content: center;
            padding: 0 !important;
            width: 18px;
        }
        .nna-feed-audio-strip .nna-audio-button svg {
            display: block;
            fill: currentColor;
            height: 12px;
            width: 12px;
        }
        .nna-feed-audio-strip .nna-audio-time {
            color: #000 !important;
            flex: 0 0 auto;
            font-size: 12px;
            line-height: 1;
            min-width: 34px;
            text-align: center;
        }
        .nna-feed-audio-strip .nna-audio-progress {
            accent-color: #000;
            background: #fff !important;
            color: #000 !important;
            flex: 1 1 auto;
            height: 4px;
            min-width: 72px;
            width: 100%;
        }
        .nna-feed-audio-strip .nna-audio-progress::-webkit-slider-runnable-track {
            background: #d6d6d6;
            height: 4px;
        }
        .nna-feed-audio-strip .nna-audio-progress::-webkit-slider-thumb {
            background: #000;
            margin-top: -5px;
        }
        .nna-feed-audio-strip .nna-audio-progress::-moz-range-track {
            background: #d6d6d6;
            height: 4px;
        }
        .nna-feed-audio-strip .nna-audio-progress::-moz-range-thumb {
            background: #000;
            border: 0;
        }
        .bd-single-post-item-wrap .nna-feed-audio-strip,
        .bd-archive-feed-wrap .nna-feed-audio-strip,
        .bd-latest-photo-item .nna-feed-audio-strip,
        .item-row .nna-feed-audio-strip {
            background: #fff !important;
        }

.bd-weather-widget {
            color: #111;
            font-family: inherit;
            max-width: 430px;
        }
        .bd-weather-current {
            align-items: center;
            display: grid;
            gap: 12px;
            grid-template-columns: 1fr 58px auto;
            margin-bottom: 16px;
        }
        .bd-weather-place {
            color: var(--nna-homepage-title-color, #0489e8);
            font-family: var(--nna-homepage-title-font, inherit);
            font-size: var(--nna-homepage-title-size, 28px);
            font-weight: bold;
            line-height: 1.05;
        }
        .bd-weather-current-icon {
            display: block;
            height: 58px;
            width: 58px;
        }
        .bd-weather-now {
            min-width: 74px;
        }
        .bd-weather-temp {
            font-size: 24px;
            line-height: 1;
        }
        .bd-weather-desc {
            font-size: 13px;
            line-height: 1.2;
        }
        .bd-weather-days {
            display: grid;
            gap: 10px;
            grid-template-columns: repeat(7, minmax(38px, 1fr));
            text-align: center;
        }
        .bd-weather-day-name {
            font-size: 12px;
            font-weight: 700;
            margin-bottom: 5px;
        }
        .bd-weather-day-icon {
            display: block;
            height: 30px;
            margin: 0 auto;
            width: 30px;
        }
        .bd-weather-hi,
        .bd-weather-lo {
            font-size: 12px;
            font-weight: 700;
            line-height: 1.25;
        }
        .bd-weather-hi {
            color: #b53bc6;
        }
        .bd-weather-lo {
            color: #0872ec;
        }
        .bd-weather-empty {
            border: 1px solid #ddd;
            padding: 10px;
        }

.bd-admin-control-button {
            cursor: pointer !important;
            transition: background-color .15s ease, border-color .15s ease, color .15s ease, transform .15s ease;
        }
        .bd-admin-control-button:hover,
        .bd-admin-control-button:focus {
            background-color: var(--nna-admin-hover-background, rgba(4, 137, 232, .08)) !important;
            border-color: var(--nna-admin-hover-border, #1e73be) !important;
            color: var(--nna-admin-hover-color, #1e73be) !important;
            transform: translateY(-1px);
        }
        .bd-admin-control-button[disabled],
        .bd-admin-control-button[aria-disabled="true"] {
            cursor: default !important;
            transform: none !important;
        }
        .bd-admin-control-button[disabled]:hover,
        .bd-admin-control-button[aria-disabled="true"]:hover {
            background-color: inherit !important;
            color: inherit !important;
        }
        .bd-latest-admin-controls,
        .bd-sidebar-admin-controls,
        .bd-grid-admin-controls {
            align-items: center;
            display: flex;
            flex-wrap: wrap;
            gap: 6px;
        }
        .bd-latest-admin-controls .bd-admin-controls,
        .bd-sidebar-admin-controls .bd-admin-controls,
        .bd-grid-admin-controls .bd-admin-controls {
            display: contents !important;
        }
        .bd-latest-admin-controls .bd-admin-control-button,
        .bd-sidebar-admin-controls .bd-admin-control-button,
        .bd-grid-admin-controls .bd-admin-control-button {
            box-sizing: border-box;
            height: 30px;
            margin: 0 !important;
            vertical-align: middle;
        }
        .bd-admin-control-icon {
            align-items: center;
            justify-content: center;
            min-width: 30px;
            padding-left: 5px !important;
            padding-right: 5px !important;
            text-align: center;
            width: 30px;
        }
        .bd-admin-control-icon svg,
        .bd-admin-control-icon .nna-admin-control-custom-icon {
            display: inline-block;
            fill: currentColor;
            font-size: var(--nna-admin-icon-size, 14px);
            height: var(--nna-admin-icon-size, 14px);
            line-height: 1.4;
            object-fit: contain;
            vertical-align: text-bottom;
            width: var(--nna-admin-icon-size, 14px);
        }

/* Icon-only mode compensates for the invisible button inset above separators. */
body.nna-admin-controls-icon-only .nna-story-card:has(.bd-latest-admin-controls .bd-admin-control-icon, .bd-sidebar-admin-controls .bd-admin-control-icon),
body.nna-admin-controls-icon-only .bd-grid-admin-controls:has(.bd-admin-control-icon) + .news-line-spacer {
    --nna-card-separator-icon-adjustment: 4px;
}
body.nna-admin-controls-icon-only .nna-story-card .bd-latest-admin-controls,
body.nna-admin-controls-icon-only .nna-story-card .bd-sidebar-admin-controls,
body.nna-admin-controls-icon-only #left-area .story-left > .bd-latest-admin-controls,
body.nna-admin-controls-icon-only #left-area .bd-sidebar-admin-controls {
    margin-top: var(--nna-card-description-meta-gap, 6px) !important;
}
